JSON validator

Validation

Oops, found some issues with your JSON. See format documentation for more info.

Line Field Error
1 Missing required fields: Format.

Content

You can change JSON format () or edit this file.
{
  "$schema": "https://smapi.io/schemas/content-patcher.json",
  "Changes": [
    /*==============================================================================================*/
    /*==== SPACECORE ANIMATIONS ====================================================================*/
    /*==============================================================================================*/
    {
      "Action": "EditData",
      "Target": "spacechase0.SpaceCore/ScheduleAnimationExtensionData",
      "Entries": {
        "{{ModID}}_TheFishmonger_fish": {
          "SourceRectSize": "16, 64",
          "DrawOffset": "0, 96",
          "AppearanceOverride": null,
          "OnStart": {
            "Emote": null,
            "PlaySound": "slosh"
          },
          "OnEnd": {
            "Emote": null,
            "PlaySound": null
          }
        }
      }
    }
    /*==============================================================================================*/
    /*==== SPACECORE WARP TOTEM ====================================================================*/
    /*==============================================================================================*/,
    {
      "Action": "EditData",
      "Target": "spacechase0.SpaceCore/ObjectExtensionData",
      "Entries": {
        "{{ModId}}_LostIslandTotem": {
          "TotemWarp": {
            "Location": "{{ModId}}_LostIsland",
            "Position": "30, 16"
          }
        }
      },
      "When": {
        "HasMod": "spacechase0.SpaceCore"
      }
    }
    /*==============================================================================================*/
    /*==== FORAGEABLES =============================================================================*/
    /*==============================================================================================*/
    /*Trigger a spawn group.*/,
    {
      "Action": "EditData",
      "Target": "Data/TriggerActions",
      "Entries": {
        "{{ModId}}_SpawnFerretFurForage": {
          "Id": "{{ModId}}_SpawnFerretFurForage",
          "Trigger": "DayStarted",
          "MarkActionApplied": false,
          "Actions": [
            "spacechase0.SpaceCore_TriggerSpawnGroup {{ModId}}_FerretFurballSpawn {{ModId}}_Fishmonger_GI_Inside_LowerDeck 6,7,3,6/9,10,4,3/11,7,4,4"
          ]
        },
        "{{ModId}}_SpawnCustomNodes": {
          "Id": "{{ModId}}_SpawnCustomNodes",
          "Trigger": "DayStarted",
          "MarkActionApplied": false,
          "Actions": [
            "spacechase0.SpaceCore_TriggerSpawnGroup {{ModId}}_QuarryGroup {{ModId}}_LostIsland_NorthEastQuarry 12,43,26,25"
          ]
        },
        "{{ModId}}_SpawnDigSpotForage": {
          "Id": "{{ModId}}_SpawnDigSpotForage",
          "Trigger": "DayStarted",
          "MarkActionApplied": false,
          "Actions": [
            "spacechase0.SpaceCore_TriggerSpawnGroup {{ModId}}_DigSpotGroup {{ModId}}_LostIsland 29,48,28,46"
          ]
        }
      }
    }
    /*The spawns themselves. It's a dictionary with the key being the ID (referred to in spawn groups), and the value consisting of a Type field, with more fields depending on the type.*/,
    {
      "Action": "EditData",
      "Target": "spacechase0.SpaceCore/SpawnableDefinitions",
      "Entries": {
        "{{ModId}}_FerretFurball": {
          "Type": "Forageable",
          "ForageableItemData": [
            {
              "Weight": 1,
              "Value": {
                "ItemId": "{{ModID}}_FerretFurball"
              }
            }
          ]
        },
        "{{ModId}}_PainiteSpawn": {
          "Type": "Minable",
          "MinableExperienceGranted": 100,
          "MinableHealth": 18,
          "MinableObjectId": "{{ModID}}_Painite_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_Painite"
                }
              }
            ]
          ]
        },
        "{{ModId}}_LushForestineSpawn": {
          "Type": "Minable",
          "MinableHealth": 16,
          "MinableObjectId": "{{ModID}}_LushForestine_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_LushForestine"
                }
              }
            ]
          ]
        },
        "{{ModId}}_ChalcanthiteSpawn": {
          "Type": "Minable",
          "MinableHealth": 16,
          "MinableObjectId": "{{ModID}}_Chalcanthite_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_Chalcanthite"
                }
              }
            ]
          ]
        },
        "{{ModId}}_DichromaticTaaffeiteSpawn": {
          "Type": "Minable",
          "MinableHealth": 12,
          "MinableObjectId": "{{ModID}}_DichromaticTaaffeite_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_DichromaticTaaffeite"
                }
              }
            ]
          ]
        },
        "{{ModId}}_OpalizedAmmoniteSpawn": {
          "Type": "Minable",
          "MinableHealth": 8,
          "MinableObjectId": "{{ModID}}_OpalizedAmmonite_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_OpalizedAmmonite"
                }
              }
            ]
          ]
        },
        "{{ModId}}_TaintedSeaShardsSpawn": {
          "Type": "Minable",
          "MinableHealth": 6,
          "MinableObjectId": "{{ModID}}_TaintedSeaShards_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_TaintedSeaShards"
                }
              }
            ]
          ]
        },
        "{{ModId}}_DeepseaDiamondSpawn": {
          "Type": "Minable",
          "MinableHealth": 25,
          "MinableObjectId": "{{ModID}}_DeepseaDiamond_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_DeepseaDiamond"
                }
              }
            ]
          ]
        },
        "{{ModId}}_CrystallizedIchorGeodeSpawn": {
          "Type": "Minable",
          "MinableHealth": 12,
          "MinableObjectId": "{{ModID}}_CrystallizedIchorGeode_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_CrystallizedIchorGeode"
                }
              }
            ]
          ]
        },
        "{{ModId}}_RealgarSpawn": {
          "Type": "Minable",
          "MinableHealth": 14,
          "MinableObjectId": "{{ModID}}_Realgar_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_Realgar"
                }
              }
            ]
          ]
        },
        "{{ModId}}_GrandidieriteSpawn": {
          "Type": "Minable",
          "MinableHealth": 16,
          "MinableObjectId": "{{ModID}}_Grandidierite_Node",
          "MinableDrops": [
            [
              {
                "Weight": 1.0,
                "Value": {
                  "ItemId": "{{ModID}}_Grandidierite"
                }
              }
            ]
          ]
        },
        "{{ModId}}_WarpTotemSpawn": {
          "Type": "Forageable",
          "ForageableItemData": [
            {
              "Weight": 1,
              "Value": {
                "ItemId": "{{ModID}}_LostIslandTotem"
              }
            }
          ],
          "ForageableIsTillSpot": true
        }
      }
    }
    /* A group of spawn definitions that are spawned together, specified with a trigger action. This is a dictionary with the key being the ID (referred to from trigger actions), and the value being an object.*/,
    {
      "Action": "EditData",
      "Target": "spacechase0.SpaceCore/SpawningGroups",
      "Entries": {
        "{{ModId}}_FerretFurballSpawn": {
          "SpawnablesToSpawn": [
            {
              "SpawnableIds": [
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_FerretFurball"
                }
              ],
              "Minimum": 0,
              "Maximum": 1
            }
          ]
        },
        "{{ModId}}_QuarryGroup": {
          "SpawnablesToSpawn": [
            {
              "SpawnableIds": [
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_PainiteSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_LushForestineSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_ChalcanthiteSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_DichromaticTaaffeiteSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_OpalizedAmmoniteSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_TaintedSeaShardsSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_DeepseaDiamondSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_CrystallizedIchorGeodeSpawn"
                },
                {
                  "Weight": 1,
                  "Value": "{{ModID}}_GrandidieriteSpawn"
                }
              ],
              "Minimum": 0,
              "Maximum": 3
            }
          ]
        },
        "{{ModId}}_DigSpotGroup": {
          "SpawnablesToSpawn": [
            {
              "SpawnableIds": [
                {
                  "Weight": 1,
                  "Value": "{{ModId}}_WarpTotemSpawn"
                }
              ],
              "Minimum": 0,
              "Maximum": 2
            }
          ]
        }
      }
    }
    /*==============================================================================================*/
    /*==== FURNITURE DESCRIPTIONS ==================================================================*/
    /*==============================================================================================*/,
    {
      "Action": "EditData",
      "Target": "spacechase0.SpaceCore/FurnitureExtensionData",
      "Entries": {
        "{{ModId}}_MermaidBed": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidBed}}"
        },
        "{{ModId}}_MermaidChair": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidChair}}"
        },
        "{{ModId}}_MermaidTeaTable": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidTeaTable}}"
        },
        "{{ModId}}_MermaidTeaTable2": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidTeaTable2}}"
        },
        "{{ModId}}_PileOfMermaidWood": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.PileOfMermaidWood}}"
        },
        "{{ModId}}_PileOfMermaidWood2": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.PileOfMermaidWood2}}"
        },
        "{{ModId}}_MermaidEndTable": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidEndTable}}"
        },
        "{{ModId}}_MermaidEndTable2": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidEndTable2}}"
        },
        "{{ModId}}_PiratePlushie": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.PiratePlushie}}]"
        },
        "{{ModId}}_SeaDudePlushie": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.SeaDudePlushie}}"
        },
        "{{ModId}}_PottedMermaidBush": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.PottedMermaidBush}}"
        },
        "{{ModId}}_FishLamp": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.FishLamp}}"
        },
        "{{ModId}}_MermaidCoffeeTable": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidCoffeeTable}}"
        },
        "{{ModId}}_MermaidCoffeeTable2": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidCoffeeTable2}}"
        },
        "{{ModId}}_MermaidFireplace": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidFireplace}}"
        },
        "{{ModId}}_SharkFireplace": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.SharkFireplace}}"
        },
        "{{ModId}}_DepictionOfHer": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.DepictionOfHer}}"
        },
        "{{ModId}}_JellyfishRug": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.JellyfishRug}}"
        },
        "{{ModId}}_MyHeartProfound": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MyHeartProfound}}"
        },
        "{{ModId}}_JellyfishBanner": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.JellyfishBanner}}"
        },
        "{{ModId}}_PirateBanner": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.PirateBanner}}"
        },
        "{{ModId}}_MermaidDoor": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.MermaidDoor}}"
        },
        "{{ModId}}_FloralCart": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.FloralCart}}"
        },
        "{{ModId}}_PirateGalSpousePortrait": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.PirateGalSpousePortrait}}"
        },
        "{{ModId}}_SeaDudeSpousePortrait": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.SeaDudeSpousePortrait}}"
        },
        "{{ModId}}_FloralRug": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.FloralRug}}"
        },
        "{{ModId}}_LibraryRug": {
          "DescriptionOverride": "{{i18n:VoidWitchCult.CP.TheFishmongerNPC.Furniture.Description.LibraryRug}}"
        }
      }
    }
  ]
}