Backpack is an inventory system fully build in C# for the Flax Engine. It's designed to be modular, editor-integrated and to be immediatly usable.
The core idea is simple:
- You open the Flax Editor
- You drag & drop an item into the scene
- It just works
No fancy setup or custom spawn logic that you have to wire up first.
Backpack deals with the ugly details in the background, while you decide if your players can stack healing potions or carry 100 pounds of cast iron pans around.
Backpack is a solid, production ready system, that stays out of your way. Doesn't matter if you're making a grid-based inventory a la Resident Evil or a list-based inventory or something inbetween. It's all possible without rewriting the core.
- Plug & Play You can get your first item in the game in less than a minute
- Editor-integrated Drag & drop items directly from the content window directly into the viewport
- Property-based items Items are composed of reusable properties and writing your own is straighforward
- UI agnostic Works with grid, list or other ui layouts and behaviours
- Modular architecture Clean separation between data, logic and ui
- Event based logic Inventories and ui react to change instead of polling
- Examples Ready-to-use examples to serve as a starting point
The following examples are included and reusable:
- Grid UI
- List UI
- Custom item properies
The documentation contains everything from quickstart guides to API documentation, with focus on practical usage rather than theory.
- FlaxEngine
v. 1.11or above
- In the Flax Editor, go to
Tools > Plugins > Clone Project - Paste this repo link
https://github.com/Myterian/Backpack.gitinto theGit Path - Click
Clone - Restart the Editor
- Done
- Close the Editor
- Clone this repo into
<your-game-project-folder>\Plugins\Backpack\ - Add a reference to FlaxEvent to your game, by modifying the
<your-game>.flaxprojfile
...
"References": [
{
"Name": "$(EnginePath)/Flax.flaxproj"
},
{
"Name": "$(ProjectPath)/Plugins/Backpack/Backpack.flaxproj"
}
]
...
- Restart the Editor
- Done
- None
