Skip to main content

Custom Designs

You can add new gravestone designs by dropping a JSON file into the custom-items/ folder. No coding or JAR modification required.


How It Works

  1. Create a JSON file in mods/kyuubisoft_graveyard/custom-items/
  2. Set the Parent to any vanilla furniture item
  3. Restart the server twice (first generates the designs JAR, second loads it)
  4. The design appears automatically in the Designs menu

Template

A _template.json is automatically created in the custom-items/ folder. Copy it, remove the _ prefix, and customize:

custom-items/EmeraldStatue.json
{
"Parent": "Furniture_Temple_Emerald_Statue",
"TranslationProperties": {
"Name": "Emerald Statue Gravestone",
"Description": "A radiant emerald statue honoring the fallen."
},
"Premium": true,
"Price": 500,
"Currency": "coins"
}

Fields

FieldRequiredDescription
ParentYesAny vanilla furniture item ID. The gravestone uses that item's 3D model
TranslationProperties.NameNoDisplay name in-game. Defaults to filename
TranslationProperties.DescriptionNoItem description
PremiumNotrue = players must buy it. Default: false
PriceNoCost. Default: 0
CurrencyNoCurrency type. Default: coins
BlockType.LightNoCustom light settings (Color, Radius)

Example Parents

Parent IDModel
Furniture_Village_TombstoneVillage tombstone
Furniture_Village_StatueVillage statue
Furniture_Temple_Emerald_StatueEmerald temple statue
Furniture_Temple_Scarak_StatueScarak temple statue
Furniture_Ancient_CoffinAncient coffin
Furniture_Village_CoffinVillage coffin
Furniture_Village_BenchVillage bench

Any vanilla furniture item ID works as a parent.


Generated Item

The system automatically creates Furniture_KS_Gravestone_<FileName> with:

  • The parent's 3D model and appearance
  • IsUsable: true (F-key prompt)
  • Custom interactions (loot + break protection)
  • Design auto-registered in config

Updating Designs

If you change a JSON file after the first generation:

  1. Edit the JSON
  2. Restart the server (the designs JAR is rebuilt automatically if files changed)
  3. Restart once more to load the updated JAR

With Custom Light

custom-items/GlowingTomb.json
{
"Parent": "Furniture_Village_Tombstone",
"TranslationProperties": {
"Name": "Glowing Tombstone",
"Description": "A tombstone that glows in the dark."
},
"BlockType": {
"Light": {
"Color": "#ff4400",
"Radius": 5
}
},
"Premium": true,
"Price": 1000,
"Currency": "coins"
}
tip

The filename (without .json) becomes the design name in the menu. Use descriptive names like EmeraldStatue, GlowingTomb, etc.