Pawel's Mod Corner: Autoharvest, Biome Crops, LostEms & others


#1
Readme: for new visitors

To fully and possibly buglessly experience most changes between vanilla and modded game or earlier and more recent mod version you’ll most likely need to start a new game. I am not able to keep track of all inter-version bugs as all .json entities generated in-game prior to upgrading .smod files are not changed.

As the academic year in Poland started in October and I’m getting two bachelor’s degrees this year mod updates will be less frequent (getting my mad chemist licence requires spending countless hours in the lab)



for Stonehearth 1.0
Current version: 1.0
lostems.smod (436.9 KB)
also available at Steam Workshop

This successor of Finetems mod adds several items which seem logical to be added along vanilla ones: comfy stone furniture, tall clay windows in all colours, stone windows and doors etc.


This modpack aims at making interacting with in-game flora more consistent, rewarding and enjoyable.


for Stonehearth 1.0
Current version: 1.1
autoharvest_mod.smod (26.7 KB)
also available at Steam Workshop

Autoharvest mod adds an option to automatically mark a renewable resource node for harvest when it is renewed. Adds autoharvest button to silkweed, herbs, berry bushes and prickly pear cacti. Enabling autoharvest for an object requires just a simple mixinto if it is an already existing object or a single additional entry in renewable resource node component if it is a completely new object.


for Stonehearth 1.0
Current version: 1.0a
biome_crops_mod.smod (3.2 KB)

Biome Crops mod allows specifying initial crop list based on biome alias in addition to player’s kingdom. Makes herb and tree sapling crops depend on biome rather than kingdom. Biome Crops mod uses its own initial_crops.json, adding support for this mod requires mixing into the mod’s .json, not the vanilla one.

Detailed Flowers

for Stonehearth A23 & uA24r789
Current version: alpha 1.0
detailed_flowers.smod (71.5 KB)


*obsolete fine planters added for comparison and not featured in the mod

Replaces some plant models with more detailed versions. Currently features Brightbell and Frostsnap replacements.


OUTDATED | DISCONTINUED

These mods are no longer supported and will be removed from this list completely when their A23 counterparts are ready.

Pawel API

Pawel API

for Stonehearth A22+
Current version: alpha 1.0b
pawel_API.smod (54.5 KB)

Required by all my mods. Fixes various vanilla bugs and offers new functionality like autoharvesting renewable resource nodes. For details and changelog see docs/readme.txt

Margin removal note: the game will try to prevent you from breaking continuity of a wall. You may not be able to place windows/doors next to columns if the result would remove all vertical tiles adjacent to a column. The find bug is fixed in 1.0b.

Finetems


for Stonehearth A22+
Current version: alpha 1.4a
finetems.smod (2.1 MB)

requires Pawel API

Finetems mod focuses on adding vanilla-like construction elements, furniture and decorations and attempts to solve some issues with vanilla items like lack of fine versions and model_origin misplacement. It also removes door and window margins from all vanilla doors and windows.

Among added objects are comfy stone furniture pieces, Comfy Clay Bed, empty Stone Doorways, Stone-Wooden Doors, Stone Window Frames, Cathedral-Arch, Diamond and Latticed Windows (Wooden and Stone), Tall and Tall Latticed Clay windows in all clay colours, some wooden furniture pieces and narrow fence pieces.

alpha 1.0 ‘Initial Update’:

  • added lacking fine items for Mason, Weaver and Potter,
  • added missing double door variants for Carpenter,
  • added new items: wooden and stone furniture, comfy stone furniture, wall-mounted standard, wooden door and window equivalents to Mason,
  • added stone doorways, which can be used to craft stone-wooden doors by Carpenter,
  • added Tall and Wide Diamond Windows, Cathedral-Arch Window Frames and Shuttered Window Frames (default, blue, green and purchase-only red),
  • bugfix for misplaced model_origin values for Curtains, Wall-Mounted Banners and Gargoyle,
  • replaced two vanilla models: Writing Desk (needed shrinking by one voxel in depth to allow for proper alignment with chairs) and Dresser (made the vanilla dresser fully occupy the three tiles it takes and added two-tile wide dresser as Narrow Dresser, which takes 2 tiles instead of three).

alpha 1.1 ‘Fixtems Update’:

  • fixed misspelled .qb filenames from alpha 1.0,
  • removed margins for all vanilla and Finetems doors and windows,
  • replaced clay windows with symmetrical odd-depth models,
  • fixed stone doorway placement bug,
  • fixed iconic shelves placement bug,
  • added Narrow Picket Fence and Narrow Cobblestone Fence,
  • added Wooden Stool and Comfy Stool.

alpha 1.2 ‘Latticed Update’:

  • added support for [MOD] [18-21] Stonehearth Doorways 2.0,
  • added Tall Clay Windows and Tall Latticed Clay Windows in all colours,
  • added Comfy Clay Bed,
  • altered Tile Wall Mosaic so the decoration is in the middle instead of being 1 voxel below the center,
  • added Double Ironclad Door and Double Ironclad Doorway,
  • added Latticed Wooden and Stone Windows.
  • 6th Sep 2017 hotfix: fixed tower_brazier_effect bug.

alpha 1.3 ‘Vertically Adjacent Update’:

  • enabled moving already placed objects on top of Shelves (placing objects on top of other objects straight from inventory is bugged even in vanilla),
  • disabled moving existing objects on top of window flower boxes,
  • added transparent water to Bird Baths,
  • added Stone Pond based on Firepit model,
  • changed fixture margin removal method to less invasive.

alpha 1.4 ‘Migration Update’:

  • NOT BACKWARD COMPATIBLE
  • moved margin removal and bugfixes to Pawel API,
  • clarified the code.
  • release 1.4a: separated locale files, fixed margin removal bug (saved games not backward compatible because locale paths changed).
Plant Lore


for Stonehearth A22+
Current version: alpha 1.1d
plant_lore.smod (590.4 KB)
requires Pawel API

Plant Lore mod ultimate goal is to make reproducing every plant in the game possible but with initial choice limited to plants specific to current biome rather than kingdom. The way seeds are obtained (thus the way new crops are enabled) is changed, the current Travelling Crop Merchant is no more. Plants can be undeployed and used in recipes by Herbalist. Fiber plant, herb and fruit bush seeds are crafted by Herbalist from 8 specimens of corresponding plant. Herbalist can also reproduce smaller plants in plant beds. Tree and food crop seeds can be bought from new Tier 2 Herbalist merchant, so can be plant specimens (including the ones unavailable in current biome) but in limited quantity, so in order to get the seeds one has to reproduce plants. This means automating fiber and herb production by farming them requires levelling up the Herbalist first. In addition, all floral decorations are crafted exclusively by Herbalist.

alpha 1.0:

  • made the Herbalist the only class capable of harvesting herbs,
  • moved all floral decoration recipes to Herbalist,
  • enabled undeploy UI for non-tree plants,
  • added new material tag groups for plant objects (compatible with Better Stockpiles),
  • added Juniper, Pine and Tree Cactus saplings as crops,
  • added Tumbleweed as a fiber crop,
  • added Berry Bush and Prickle Pear saplings as crops,
  • changed Prickly Pear and Watermelon food category from vegetable to fruit,
  • with special thanks to RepeatPan: added an option to enable crops based on starting biome rather than kingdom,
  • replaced Travelling Crop Merchant with new Tier 2 Herbalist merchant selling potion, bandages, plant specimen and random seeds (note: bugs are expected, I had no time to fully test it),
  • added renewable plant beds as decoration and source of plant specimen,
  • added potted plants,
  • basic support for Archipelago and Swamp biomes featured (lacking: Swamp plant decorations and crops, for now Ferns can be harvested by any class unlike Giant Flowers, which are Herbalist-only),
  • 24th Sep 2017 critical hotfix: fixed the plant_lore_server.lua error.

alpha 1.1 ‘Migration Update’:

  • NOT BACKWARD COMPATIBLE
  • rewritten Herbalist’s XP gain from harvests (can harvest everything Workers can again, but only herbs give XP),
  • fixed bugs with trees like harvest overlay not shown and evolving bugs,
  • enabled autoharvest for fruit bushes, fiber plants, herbs and plant beds,
  • clarified the code,
  • 1.1a: separated locales, fixed herbalist’s shop and various smaller bugs.
  • 1.1b: changed Herbalist talisman recipe ingredients from Plant Specimen to Plant Fiber.
  • 1.1c: fixed pine sapling crop referring to finetems instead of plant_lore.
  • 1.1d: sprout.png no longer missing.

NOTE: This mod is being split into a modpack for A23.


WORK IN PROGRESS

These mods are in the making and will be released in more or less distant future.

  • (Unnamed Yet) Porting items added in Finetems to A23 mod
  • (Unnamed Yet) Splitting Plant Lore into smaller, modular mods
Archmod


for Stonehearth A23+
Current status: W.I.P

Previously planned as a part of Finetems, Archmod became a separate mod because it adds items which do not necessarily fit Stonehearth style due to their very detailed look. The mod adds stucco as a refined resource which is used by Mason to craft elaborate architectonic ornaments in real-life styles like Classical and Gothic.

Plans for alpha 1.0:

  • add stucco as a resource crafted from clay and stone by Mason or Potter, used by Mason to craft some artistic elements (done!),
  • add Classical, Gothic and Arabic architectonic elements,
  • add sculptures and fountains to Mason.

Recommended mods by other authors

Being a modder myself I like to play with mods made by others. Below is a list of mods I use - this means they should be supported by my mods. Despite some of the mods being buggy at their current stage I can still recommend them because in my opinion they add more value than their bugs cause problems.

Functionality improvement mods
Town Monitor by Gruffus
Better Stockpiles by Shinsaka
Smart Crafter by Drotten
Never Furrow Fields by Wharp
Edge of Screen Panning by Wharp
Follow Cam Remembers by Wharp
Tree Stump Mod by BrunoSupremo
Obsolete from A23: Unit Frame Activity Mod by illdred
Obsolete from A23: Unit Frame Health Mod by illdred

Biome mods
Archipelago Biome by BrunoSupremo
Canyon by BrunoSupremo
Swamp Biome by BrunoSupremo
Desert/Temperate Transition Biome by BrunoSupremo
Rivers Mod by BrunoSupremo

New items
Outdated: Doorways by jomaxro


Mod ideas

These are some of ideas that came to my mind. They may become mods in the end but they may be forgotten and abandoned as well.

Yet Another Cooking Mod

Exactly what the name says: new recipes for your cook. I was also thinking about making Hearthlings’ diet affect their stats either by splitting the hunger into nutritional categories (proteins, carbs, fats and vitamins) or by making the last food eaten provide small (+1 to +5) buff to selected stats.

The Cartesians

Current status: considering whether the mod wouldn’t unbalance the game too much

Adds new faction, the Cartesians, who do not believe in magic and focus on personal development instead: through performing specific tasks, Cartesian Hearthlings can improve their Body, Mind and Spirit stats up to level 5 (level 6 stats require personal predispositions, sorry). Heathlings who reach stats of 5/5/5 or higher get a special Cartesian promotion.

this is not how I would implement it now, after doing some math - the mechanics need to be way simpler than ideas proposed below

Improving Body stats

Body improvement bar is filled by performing physical activities. With every next level the least demanding activities from the last level cease to fill the bar as the Hearthling’s stamina improves.

Improving Mind stats

Mind improvement bar is filled by reading books (disabled after Mind 3 is reached), participating in lectures (enabled after Mind 2 is reached, disabled after Mind 4) and discussing theoretical problems (enabled after Mind 3 is reached). The new Scholar class (requires level 2 Herbalist, talisman crafted by Herbalist) gets three working items: writing desk, where can craft various books and study them, a podium to give lectures and blackboard to discuss theoretical problems with individual Heathlings. Bookshelves to store completed books are also added. Crafting books is different than crafting other items: books take some time to be crafted and one Scholar can only craft one book at a time. Books cover various topics and each class fills their Mind bar a bit faster when reading books, listening to lectures and discussing about a discipline which is useful to them. Each discipline fills the bar slower for a Hearthling over time, so it is important to keep the topics varied. The Scholar can give lectures on a topic they have written a book about. The books can also be bought from the travelling merchants (for horrendous price) and studied by the Scholar what is significantly faster than crafting a book. Hearthlings also have personal interests and won’t necessarily be willing to participate in lectures which would be the most beneficial to them.

Improving Spirit stats

Spirit stat is improved when Hearthlings interact with art. Two new classes: Artist (requires level 3 Potter or Mason, talisman crafted by Carpenter) and Bard (promoted from Worker, talisman crafted by Engineer) can make art. Art commissions work just like book commissions: when needed resources are available a lengthy process of crafting begins. Artists can craft various architectonic decorations and take commissions for paintings and sculptures. Bards give performances on a stage and take commissions for poetry and musical compositions. The difference between commissioning art and books is that new works of art are chosen randomly from a list of available works (the recipe shows the number of works left to discover and few new works are available with each level up) and making a copy of an already discovered work is just like regular crafting. Like books, works of art can also be bought and studied by Artists and Bards what is faster but super expensive.


Dredged from the Depths: The Isola Experiment
[Mod] Settlement Decor Mod [Download available]
[Alpha23+] BreweryMod
[Mod] Better Storage v1.4
Widget Error adjoining roofs
Distant Shores (A Hearthling Challenge/Story)
Deutsche Übersetzung 1.0 + sehr viele Modübersetzungen
Deutsche Übersetzung 1.0 + sehr viele Modübersetzungen
Wharp's Corner of the Cube -- New Mod, Check it out! Updated May 26th!
Unable to load game from menu, but can load it from ingame
Is there a way to add a mod to a saved game that did have the mod before
[Alpha23+] BreweryMod
How to add crop based on biome, not on kingdom
Dredged from the Depths: The Isola Experiment
#2

Lots of cool stuff in here. Even it this is just planning some stuff out, I am excited to see where you take it.


#3

This is such a cool idea! I’ll definitely be keeping tabs on this :smiley:


#6

As the Finetems alpha is getting very close to release I need some help.

Question 1: the mod adds fine items for the Mason. However, the devs didn’t add a single fine stone item so I have no idea what kind of ornamentation would be used for stone items. The first release will have golden ornaments copied from wooden items, but it will likely change later because it doesn’t fit the style. If you have any ideas please share them.

Question 2: what is the least invasive method of adding a fine item to a recipe? Using a mixinto with "produces": [ {"fine": "item_fine"} ] doesn’t work but I’d prefer not to use overrides in case something is added to the recipes in the next alphas (this significantly reduces the amount of time needed to provide mod support for new release).


#7

Some cool ideas in here - keep at it!

1] May I suggest perhaps using cloth or similar instead of gold? I feel like stone furniture could use a bit of a softer material instead of gold ^^ Just think of the poor buttocks of the Hearthlings as they are to sit on cold stone, haha!
(ergo, add a splish-splash of e.g. blue or red colour instead)

2] I’ve never tried to add any fine items, but this would be my guess:
In your recipe-file, use

"produces": [
      {
         "item": "mod-name:furniture:regular-entity",
         "fine": "mod-name:furniture:fine-entity"
      }
   ]

Above, both regular-entity and fine-entity are called via their respective alias in your mods’ manifest.

Edit: I just realize that what I wrote for 2] is what you have stated do not work.
Just to make sure, you are calling the “fine:” via an existing alias in your manifest, yes?


#8

1] Finetems actually adds comfy stone furniture. I need to decide what kind of ornaments can be added to stone. I was thinking about light or dark grey patterns but light grey didn’t look very well. I have to try the dark ones yet. There is a mod adding blue ornamentation to stone items what makes them look extremely unrealistic.

2] Yes, aliases are done correctly as I can spawn the objects through Item Stamper. I tried two ways of adding the recipe via mixinto: listing it in jobs/[class name]/recipes.json and mixinto /stonehearth/jobs/[class name]/recipes/[item name]_recipe.json. The former breaks all the recipes, the latter prevents the UI from loading because it cannot load any data from [item name]_recipe.json and fails to build crafter workshop UI.

I’ve tried "mixintypes": { "produces": "override" } as a mixinto directly into [item_name]_recipe.json and it works, so problem no. 2 is solved.


#9

I think the reason for a common mixinto to not work is because the “produces” is an array, and as such there is no way to target the objects inside it.
When you add a mixinto with a {“key”:“value”} it is just adding another table in that array, so in the end the result would look like this:

"produces":[
	{
		"item":"item:url"
	},
	{
		"fine":"your_item:url"
	}
]

#10

That’s exactly what I concluded from my trial and error testing. This means the only way to add values to nested arrays is to override the whole array. I think this should be reported to the devs.

I think I’ll just number problems and questions for easier reference.

3] I’m thinking of adding some taller furniture because covering walls with tapestries while there are no wardrobes makes little sense. As 3x1x3 wardrobe is quite big I consider making it a 12 items container. The problem is it would be extremely difficult to furnish the interiors because containers cannot be moved to inventory without prior emptying.

4] It seems I had item ideas overlapping with some other mods (columns, potted plants etc.), but I decided to add them anyway as I plan on implementing various thematic sets in the future. I hope other modders don’t mind me including stuff similar to theirs.


#11

Double post, but alpha 1.0 of Finetems is finally released. I’ll continue to expand it and begin analysing how the Ecosystem mod ideas could be implemented.

I had no time to make proper screenshots, so if you build something using the Finetems stuff don’t hesitate to share screenies. Bug reports are also welcome.


#12

As there seems to be no activity in this thread despite over 50 downloads of alpha 1.1 I’ll just bump the thread with every update, what I do now because:

Finetems alpha 1.2 ‘Latticed’ is released! :merry:
Enjoy latticed windows in every possible variant, Wooden and Stone included. Also adds Tall Clay windows (with latticed variants added) in all colours.

From now on I’ll upload the mods using forum upload instead of Dropbox. Initial release of Plant Lore should be ready soon, together with some Finetems and Plant Lore screenshots. Then I’ll focus on preparing Archmod for initial release.


#13

this all sounds amazing and great and i fully support it!


#14

Excellent work so far Pawel!

Getting an error from the fine tower brazier though, looks like its trying to call

“stonehearth:lamp”: {
“light_effect”: “stonehearth:effects:tower_brazier_fine_effect”,

instead of:

“stonehearth:lamp”: {
“light_effect”: “stonehearth:effects:tower_brazier_effect”,


#15

Thanks for the report, hotfixed .smod uploaded.


#16

Great work!
I just finished the translations of Traditional Chinese yesterday, now I’ve got more to do.


#17

Hmm, I’m getting an interesting error that I’m fairly certain is caused by the margin_removal.json but I can’t figure out why:

std::logic_error: 'Calling iterator method on non-iteratable: find’
stack traceback: [C]: ? [C]: in function ‘load’ stonehearth/components/fixture/fixture_component.lua:10: in function <stonehearth/components/fixture/fixture_component.lua:6>

Removing the Finetems mod from a game already using it results in this instead:

release-761 (x64)[M]
stonehearth/components/fixture/fixture_component.lua:10: attempt to index field ‘_json’ (a nil value)
stack traceback:
[C]: ?
stonehearth/components/fixture/fixture_component.lua:10: in function <stonehearth/components/fixture/fixture_component.lua:6>

The related lines in the fixture_component.lua are:

function FixtureComponent:initialize()
self._json = radiant.entities.get_json(self)

self._bounds = Rect2()
self._bounds:load(self._json.bounds)

Any ideas?


#18

Hm. I’m not able to reproduce it, but I get some strange blinking behaviour when I try to place too many windows next to each other. I cannot place a window when there are too many windows in the same row, but dragging it from somewhere else is possible.

Originally I took an invasive approach by firing "mixintypes": {"margin": "remove"} which is a bit dangerous as it may expose some LUA scripts to nil values in places where they are not expected to be, here it may be the Rect2() having nil’s as dimensions. Less invasive way to achieve the same result is to override the "margin" with zeros: margin_removal.zip (259 Bytes)

Try repacing margin_removal.json with the version from ZIP archive. Whether it helps or not I’ll keep it the less invasive way from now on so bugs are less likely to occur in the future.


#19

5] Guys, is it possible to make a crop available from the beginning based on starting biome rather than kingdom? I think it is because I don’t see Coconut Palms available in my recent Desert start with Rayya’s.

EDIT: I’m confused now. In main manifest.json I added a mixinto pointing file(data/biome/desert/manifest.json) to be mixed into /stonehearth/data/biome/desert/manifest.json, which has a “stonehearth:farmer:initial_crops” listed as a mixinto target, but the mixinto seems to have no effect.

For now I think the best immersion would be achieved if crops used for cooking (vegetables and grains) depended on the kingdom, so each kingdom starts with their own cuisine, but herbs, fiber, fruit and tree saplings should match the starting biome.

6] I’m thinking about disabling silkweed from desert biome generation. This would mean no renewable fiber plant would be present in the desert, but I have working tumbleweed crop which doesn’t rot in the field like silkweed to compensate the nerf. Desert shouldn’t be a friendly place, after all.

7] Super advanced: would it be possible to make a crop which has to be farmed in the water like rice or seaweed (I consider making a biome mod which could utilise that for immersion, I think the Archipelago, Swamp and Cafe mods could also benefit from that)?


#20

I cant wait for the Cartesians, honestly this is a good way to improve stats.


#21

Thanks for the mod, I appreciate all the new decorative elements!!! One suggestion/critique If ya notice the fine items for potters don’t get fancy gold, they get an appropriate decorative element that suits the craft. I’d recommend the same for the fine items for other crafts. Perhaps the fine stone items get silver instead of gold if you’re gonna keep it simple with just adding an additional color. That being said, I’m not complaining I love love love that you’ve added more decorative elements to the game and some may actually find the gold suited to their cities so carry on with the great work!!!


#22

Well, I think if any of my mod ideas is abandoned it will be the Cartesians. After doing some math I noticed stat improvement would have to be very slow to keep the game balanced. So slow that it would be barely noticeable, what questions the purpose of the whole mod. Not to mention the fact I’d have to find enough time to dive deep into Stonehearth’s Lua code.

Neither they do in Finetems, turquoise-ish geometrical patterns are used instead. As I wrote above I haven’t decided what to do with fine stone items yet. Golden ornaments would suit Dwarven-like buildings and if you want to have more realistic stone elements then you should wait for Archmod.