You are viewing a potentially older version of this package. View all versions.
ATS_API_Devs-JSONLoader-0.4.0 icon

JSONLoader

Add/Change ATS without code. Use json files instead.

Date uploaded 2 months ago
Version 0.4.0
Download link ATS_API_Devs-JSONLoader-0.4.0.zip
Downloads 52
Dependency string ATS_API_Devs-JSONLoader-0.4.0

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
ATS_API_Devs-API-2.3.0 icon
ATS_API_Devs-API

Simplifies adding/changing ATS and adds fixes/QOL changes.

Preferred version: 2.3.0

README

JSONLoader

This is a simple mod for Against the Storm that allows you to load JSON files from your computer into the game. These files can add new content or change existing content.

NO CODE REQUIRED

Currently only supports Goods

Importing

To load a JSON file into the game you need to place the file in the plugins folder of BepInEx.

  • Using Thunderstore: %appdata%\Thunderstore Mod Manager\DataFolder\AgainstTheStorm\profiles\Default\BepInEx\plugins
  • Manual Install: AgainstTheStorm\BepInEx\plugins

When you start the game the files will be loaded and any errors will show in console.

To reload while in game press F5 and the game will reload the files.

Exporting

JSONLoader allows you to export all of the game data to your computer so you can compare or edit as you need.

To Export using Thunderstore go into the configs tab and change Export to true then restart the game.

Goods

Goods are items that can be traded, sold, eaten or burned. (Wood, planks, coal... etc).

To create new goods use the below as an example and name the file *_good.json. Example: pizza_good.json

{
    "guid": "MyMod",
    "name": "Pizza",
    "icon": "pizza.png",
    "displayName": "Pizza",
    "description": "Delicious New York style pizza",
    "shortDescription": "Delicious New York style pizza",
    "category": "Food",
    "eatable": true,
    "canBeBurned": false,
    "burningTime": 1,
    "eatingFullness": 2.5,
    "tradingBuyValue": 2.3,
    "tradingSellValue": 10,
    "allTradersSellingThisGood": true,
    "allTradersBuyThisGood": true
}

To replace existing goods just use the GUID and name of the good you want to change. If you're changing a vanilla good you can use the GUID ``.

Go to https://hoodedhorse.com/wiki/Against_the_Storm/Resources for a list of all goods in the game. and use the ID of the good as the name in the .json file.

{
    "name": "[Mat Processed] Planks",
    "icon": "planks.png",
    "burningTime": 10
}

Races

Ids: Beaver, Foxes, Harpy, Human, Lizard

Creating new races not yet supported.

To edit an existing Race use the below as an example with the name using the id of the Race.

The sounds are optional. Remove them if you don't want them.

{
  "name": "Beaver",
  "icon": "Beaver.png",
  "roundIcon": "BeaverRound.png",
  "widePortrait": "BeaverWide.png",
  "tag": "[Tag] Beaver",
  "isEssential": true,
  "order": 1,
  "baseSpeed": 1.8,
  "initialResolve": 10,
  "minResolve": 0,
  "maxResolve": 50,
  "resolvePositveChangePerSec": 0.15,
  "resolveNegativeChangePerSec": 0.12,
  "resolveNegativeChangeDiffFactor": 0.1,
  "reputationPerSec": 0.00013,
  "minPopulationToGainReputation": 1,
  "maxReputationFromResolvePerSec": 0.025,
  "minResolveForReputationTreshold": 30,
  "maxResolveForReputationTreshold": 50,
  "reputationTresholdIncreasePerReputation": 2,
  "resolveToReputationRatio": 0.1,
  "populationToReputationRatio": 0.7,
  "hungerTolerance": 6,
  "racialHousingNeed": "Beaver Housing",
  "needsInterval": 120,
  "needs": [
    "Any Housing",
    "Beaver Housing",
    "Biscuits",
    "Pickled Goods",
    "Clothes",
    "Leasiure",
    "Education",
    "Luxury"
  ],
  "characteristics": [
    {
      "buildingTag": "Wood",
      "villagerPerkEffect": "Proficiency",
      "globalEffect": "",
      "buildingPerk": ""
    },
    {
      "buildingTag": "Tech",
      "villagerPerkEffect": "Comfortable Job",
      "globalEffect": "",
      "buildingPerk": ""
    },
    {
      "buildingTag": "Hearth_Beavers",
      "villagerPerkEffect": "",
      "globalEffect": "FuelConsumption_HearthEffect_Beaver",
      "buildingPerk": ""
    }
  ],
  "avatarClickSounds": {
    "PositiveSounds": {
      "sounds": [
        {
          "soundPath": "PeasantWhat1.wav"
        }
      ]
    },
    "NegativeSounds": {
      "sounds": [
        {
          "soundPath": "PeasantWhat1.wav"
        }
      ]
    },
    "NeutralSounds": {
      "sounds": [
        {
          "soundPath": "PeasantWhat1.wav"
        }
      ]
    }
  },
  "femalePickSounds": {},
  "malePickSounds": {},
  "femaleChangeProfessionSounds": {},
  "maleChangeProfessionSounds": {},
  "maleNames": [
    "Sir James",
    "Dr James"
  ],
  "femaleNames": [
    "Lady Jane",
    "Dr Jane"
  ]
}

CHANGELOG

0.5.0

  • Added custom difficulty support
  • Added custom embark support for goods and effects
  • Fixed excluding icon from good.json causing the file to not load
  • Fixed localization not working
  • Changed export path to %userprofile%\AppData\LocalLow\Eremite Games\Against the Storm\JSONLoader\Exported

0.4.0

  • Updated to ATS 1.4.4R
  • Hotkeys now show in the Keybindings tab in the options menu
    • Removed hotkeys from configs since they are saved and shown in the options menu now
  • Fixed not including sounds for races causing them to break
  • Fixed error spam when not including effects for race characteristic

0.3.0

  • Added lots more fields to change races
    • Resolve
    • Characteristics
    • Needs
    • +More

0.2.0

  • Added support to modify existing races
  • Added support to load/export audio
  • Fixed overriding existing goods not replacing the images in descriptions

0.1.0

  • Added custom goods support