Textures are the image files used to display items, ores, equipment, and enemies in the game UI. They appear on item cards in the shop, inventory, admin panel, and dungeon UI elements.

Where Textures Live

Store textures inside your datapack folder under <your_pack_id>/assets/textures/. You can organize them into sub-folders however you like.

Recommended organization:

assets/textures/
β”œβ”€β”€ materials/
β”‚   β”œβ”€β”€ ore/
β”‚   └── ingot/
β”œβ”€β”€ equipment/
β”‚   β”œβ”€β”€ personal/
β”‚   β”‚   β”œβ”€β”€ suit/
β”‚   β”‚   └── boots/
β”‚   └── ship/
β”‚       β”œβ”€β”€ hulls/
β”‚       └── engines/
└── enemies/
    └── drones/

Referencing Textures in JSON

In item and enemy JSON files, the texture field contains the full path from the datapack root:

"texture": "stellar_forge/assets/textures/materials/ore/uranium.png"
The path always starts with your pack ID as the first folder, followed by the rest of the path inside your pack. It is relative to the datapack root β€” not relative to the JSON file you are editing.

Supported Formats

FormatExtensionNotes
PNG.pngRecommended for all static images
GIF.gifSupports animation β€” useful for special or rare items

Recommended Sizes

Use CaseRecommended Size
Ore / ingot / alloy materials64Γ—64 px
Personal equipment items64Γ—64 px
Ship equipment items64Γ—64 px
Enemy icons64Γ—64 px
Animated items (GIF)64Γ—64 px frames

Larger images will be scaled down; smaller images may appear blurry.

Full Path Example

{
  "materials": {
    "id": "stellar_forge:ore_uranium",
    "texture": "stellar_forge/assets/textures/materials/ore/uranium.png",
    "displayName": "items.materials.stellar_forge.ores.uranium",
    "description": "items.materials.stellar_forge.ores.uranium.desc",
    "meta": { "storeCategory": "stellar_forge:materials" }
  }
}

Tips

  • Keep textures small. The game renders many icons at once. Large images slow loading unnecessarily.
  • Use PNGs with transparency. Items look best on a transparent background so the game can place them on any UI background.
  • Consistent sizing across your pack. If all your ores are 64Γ—64, mismatched sizes will stand out.
  • Animated GIFs for special items. Use sparingly β€” animated items draw the eye and can signal rarity.