In this update, we bring you more bug fixes and a bunch of modder support changes!

Bugfixes and Improvements

  • Fixed a bug where stockpiles could not be placed where building fixtures used to be located.
  • Fixed rows getting duplicated in the citizens menu when a new citizen joins after you’ve just sorted the rows.
  • Fixed travelers leaving their gifts at unreachable locations when the bed they slept on was in a building.
  • Reduced volume of combat music a bit
  • Localized “Weapons” category title in the Weaver workshop menu.
  • Fixed cursor not being stylized when hovering over radio buttons.
  • Converted remaining weapons iconics into 10x10x10 voxels so they match others.
  • Tweaked offset of Long and Two Handed Swords so that they are centered.
  • Fixed extra minus ‘-‘ sign showing up for buffs with negative modifiers
  • Fixed max citizen notification showing up when you embark with re-embarkation citizens.
  • Updated various logs so that they each have unique pictures. Update stack size of pine log to be consistent with other logs

Modder Support

  • Changed the values for “roles” and “material tags” in our json files from strings to arrays.
  • Allow modders to provide a custom “base_job” inside the jobs index file instead of the default “stonehearth:jobs:worker”
  • Add a descriptive log instead of throwing an exception when a json value’s type doesn’t match the one for the mixin/mixinto’s value.
  • Allow modders to easily create their own services in their server/client_init_script(s), using the service_creator library. See the code stonehearth_tests_server/client.lua for an example of how to this.
  • Move the list of stonehearth server/client services to constants.json so that it is easier to modify.
  • Added the ability to specify a different eat animation in the food serving files (e.g. a drinking animation).
  • Added css classes to the loadout_screen, select_roster, select_settlement screens based on biome and kingdom selected. Makes it easier to customize the look of the starting screens through mods.
  • Made changes that allows custom colors and custom names for the minimap tiles, set from the biome json.
  • Allow modders to specify a custom starter firepits (hearth) from the population json file
  • Allows, through the biome.json, to set the water level to something different than the default 1.5 blocks down from the margin
  • Moved settlement radius to constants.json
  • Made tree color on the map selector page customizable through mods.
  • Allow evolve component to take a table as input and randomly select a uri to evolve to
  • Added the modding guide (only essentials and basic) to the docs folder of the stonehearth mod.
  • Shipped microworld, stonehearth_tests, stonehearth_autotest, and autotest_framework with the game. You can use these mods to run small tests and autotests. See microworld for a description of how to run a micro world.

⚠️ Note to modders: We’ve changed material_tags and roles from strings to arrays, so you may need to update your mod to use arrays for compatibility. See the full list of changed files here.

Another special thanks to BrunoSupremo for helping us implement several of the modding changes!

Have fun!
Team Stonehearth