bag-shoppingInventory

Overview

All Out provides a player inventory API that allows you to create items, give them to players, and for players to arrange, use, and drop items in your game.

There are three core concepts:

  • Item definitions (Item_Definition): what an item is (name/icon/stacking + your own fields)

  • Item instances (Item_Instance): an actual stack in the world/in an inventory

  • Inventories (Inventory): a container of slots that holds item instances

Every player has a built-in inventory at player.default_inventory.

Persistence

If you'd like player inventories to be automatically saved across game sessions, enable the "Auto Save Player Inventory" box in the Edit -> Game Settings section of the editor

Inventory API reference

Quick start (register + give an item)

Register item definitions once in ao_before_scene_load, then create instances and move them into a player’s inventory.

Custom Inventories

You can create inventories that aren’t tied to a player, for things like:

  • Chests / storage containers

  • Fish/mob teams

To access items:

Dropped Items

If you want players to drop items into the world (and let other players pick them up), use the dropped items system:

Spawning a dropped item

Drop animation + snapping to navmesh

Handling drag-drop from the hotbar UI

If you use Items.draw_hotbar, players can drag an item out of the UI to drop it. Dropped_Item.handle_dropped_item removes it from the inventory and spawns a dropped item entity.

circle-info

Dropped items automatically despawn over time (with a warning bar). Holding the interact button on an item resets its despawn timer.

circle-info

You can make a dropped item exclusive (only visible/pickable by one player) using dropped->set_exclusive(player).

Last updated