Inventory Quest
Learn Resources, clean data, and modular inventory systems.
Learn the difference between Nodes (things in your game) and Resources (data templates).
0
of 100 DMG
An InventoryUI.gd coordinator that spawns slot UI, listens toinventory_changed, and refreshes the grid.
Grid settings
Data → UI refresh
Live preview
Finish these and you’ll know when to use Resources (data) vs Nodes (things in the scene).
Sort game elements into Nodes vs Resources
Key concept: Resources are reusable data assets — not scene Nodes.
Quick example: @export and @export_multiline
@export exposes a variable in the Inspector so each Resource instance can have different values.
extends Resource class_name ItemData @export var item_name: String = "Health Potion" @export var max_stack: int = 5 @export var icon: Texture2D
@export_multiline is perfect for long text (like item descriptions), giving you a bigger multi-line text box in the Inspector.
@export_multiline var description: String = """Restores 25 HP. Tastes suspiciously like blueberries. """
Click each item to discover if it's a Node or Resource.
Sort, visualize, and code with Resources
Create a custom Resource that can store item data. Resources are reusable data containers that live in .tres files!
All custom resources extend the Resource class
Resources are data containers that can be saved as .tres files. Unlike Nodes (which live in scenes), Resources are pure data - perfect for items, spells, stats, and more!
Build ItemData.gd step by step