[A17] Rainbeau's Fertile Fields

Started by dburgdorf, May 29, 2017, 05:36:38 PM

Previous topic - Next topic

dburgdorf



Last update: 8/22/2017

"Fertile Fields" is a terraforming mod that lets you fertilize and plow your soil, create farmland on solid rock so you can grow crops in inhospitable environs or inside of mountains, and eventually even restructure the landscape.

Create raw compost with food waste at a butcher's table, then put it in a compost bin or barrel so in time it can become fertilizer. Fertilizer can be used to convert any soil to rich soil. Further improve your farm's fertility by researching farming and plowing your soil. Or learn the fine art of terraforming, and redesign your environment to your heart's content.

- Rainbeau Flambe (dburgdorf)


Steam Workshop Link

Dropbox Link

New Research and Terrain Improvement Options:

Without researching anything, "Fertile Fields" allows you to do basic terrain modification, essentially just digging up dirt from one spot and moving it to another. You can also create raw compost and turn it into fertilizer, which can be used to upgrade your soil, even turning regular soil into rich soil.

Researching "Farming" opens up the ability to plow soil, which lets you further increase the fertility of rich soil. As well, it allows you to lay topsoil over smooth stone. Create a garden inside a mountain if you're so inclined. Topsoil can be further improved by fertilizing it, but can't be plowed.

Finally, "Terraforming" represents an understanding of advanced irrigation and drainage techniques, and opens up a wide variety of terrain-altering options. It allows you to turn marsh, mud, sand or shallow water tiles into farmable soil, or to turn fertile land into sand or marsh. It lets you create shallow water tiles from marsh, so you can create decorative (or defensive) moats. It opens up the ability to dump dirt into deep water to create shallow water, or to remove dirt from shallow water to produce deep water. It also allows you to break solid rock into rocky soil, which can be further improved into regular soil, letting you create mountain farms that can actually be plowed for maximum fertility. Conversely, you can turn rocky dirt back into rough stone. Finally, it also allows you to create a rock mill at which you can create crushed rocks, sand and clay from stone chunks, which you can use to create dirt, so you'll no longer have to remove dirt from one tile in order to add it to another.

Using the Mod:

Most of what's added by "Fertile Fields" can be found on the new "Terraform" and "Farming" tabs of the Architect menu.

A few things, however, are less obvious.

Fertilizer is made from compost in either a compost bin or a compost barrel. Compost can be created at a butcher's table from vegetable matter and meat. It can also be obtained by burning corpses.

Dirt can be created by mixing sand, clay and fertilizer at a crafting spot. Conversely, piles of dirt can be separated at crafting spots into sand and clay. Clay can be "fired" at a smithy to create bricks.

Initially, if you need dirt, sand, clay or crushed rocks, you'll need to obtain them by digging up terrain somewhere on the map or by purchasing them from traders. Once you've researched "Terraforming" and built a rock mill, though, stone chunks can be turned to crushed rocks, which can be further ground into sand and then into clay. Sand and clay, as already noted, can be used to create dirt.

For a more detailed overview of everything the mod has to offer, you can consult the "Getting Started with Fertile Fields" text file located in the mod's "About" folder.

Compatibility:

"Fertile Fields" should be compatible with most any other mods. If you run into specific issues, please let me know. You should be able to add "Fertile Fields" to an existing saved game without trouble, but removing the mod from a game in progress will, of course, likely cause problems or even make the game unplayable.

Night soil from Dub's "Hygiene" mod can be terraformed with any conversion that works from marshy soil. Wasteland from the "Crashlanding" mod can be terraformed as sand. Reclaimed soil from CuproPanda's "Quarry" mod can be terraformed as if it was gravel. And decrystallized sand and soil from "Tiberium Rim" can be terraformed as vanilla sand and gravel, respectively. (Note, though, that the various tiberium terrains introduced by that mod cannot be altered by anything in "Fertile Fields." To get rid of tiberium, you'll still need to utilize the mechanisms actually provided by "Tiberium Rim.")

Special note regarding "Vegetable Garden": I've tried to ensure that "Fertile Fields" and "Vegetable Garden" are compatible with each other. Make sure that "Fertile Fields" appears *after* "Vegetable Garden" in your mod load order. The fertilizing and terraforming options from "Fertile Fields" should cleanly overwrite those from "Vegetable Garden," while leaving the plants, recipes, and everything else that that mod adds to the game readily available to you.

Credits:

German language translation files were generously provided by Ryder32x.

The C# code related to compost bins derives from Dismarzero's "Vegetable Garden." The C# code related to compost barrels draws from Sulusdacor's "[sd] Luciferium Production" mod, which in turn borrows heavily from the default code for fermentation barrels.

The mod utilizes Pardeike's "Harmony Patch Library." (No additional download is required, as the library is included with the mod.)

License:

If you're a modpack maker and want to include "Fertile Fields" in your pack, or if you're a modder and want to use "Fertile Fields" as the basis of a derivative mod, please feel free to do so. I ask only that you let me know about it.

If you have any (helpful) suggestions for improvement, please let me know!
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

dburgdorf

At long last, I've finished rewriting and updating "Fertile Fields" for a17.  :D

- Updated to RimWorld alpha 17.

- It is now possible to convert bodies to compost in a crematorium.

- Crushing rocks, creating dirt, and similar activities are now done at a rock mill rather than at a stonecutting table. Rock mills can be built once "Terraforming" has been researched, and require electricity.

- The new packed dirt "road" terrain can be broken up to form soil.

- Added "pile of sand" as a resource. Sand can be obtained from beaches or deserts, or by further crushing crushed rocks.

- Digging up gravel now yields both crushed rocks and dirt.

- Creating dirt now requires both crushed rocks and sand, in addition to fertilizer.

- Added "bulk" recipes for dirt, sand and crushed rock creation.

- Added the ability to convert between sand and shallow water at beaches.

- Piles of dirt, sand, compost or fertilizer will now deteriorate if left outside.

- Building hydroponics basins now requires fertilizer as well as steel and components.

- Simplified the research tree to just two research projects: "Farming" (which allows plowing and laying topsoil) and "Terraforming" (which, of course, allows bulk terrain restructuring).

- Split the "Terraform" tab of the architect menu into two tabs, "Terraform" and "Farming."

- Redesigned the UI icons for terrain changes.

- Some defNames have been changed, primarily to allow RFF terraforming to cleanly replace "Vegetable Garden" terraforming, if the two mods are used together.

- Compost barrels finally actually require power as they were supposed to from the beginning. Without power, they will still function, but less efficiently than compost bins.

- Traders may still buy or sell fertilizer, but they'll no longer fill up their wagons or cargo holds with huge quantities of dirt, compost, and the like.

- Overrides of vanilla terrain defs now utilize XML patches, which should reduce incompatibility issues with other mods.

- Got rid of mid-depth water, as it really served no purpose.

- Got rid of the mod's distinction between fresh and salt water, since the vanilla game now defines fresh water, river water and ocean water separately, anyway.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

XeoNovaDan

Thank you for updating this fine mod to Alpha 17! Judging by the list of changes you've made, this is well-worth the relatively brief wait; quality over quantity!

Dr_Zhivago

Looking forward to testing... Eventually  ;D

Draegon

Is there a way to have the normal colored Rimworld soil? I love this mod but the soil color bugs me for some reason.

notfood


SpaceDorf

Maxim 1   : Pillage, then burn
Maxim 37 : There is no overkill. There is only open fire and reload.
Rule 34 of Rimworld :There is a mod for that.
Avatar Made by Chickenplucker

Dr_Zhivago

So I just downloaded your mod from the Dropbox link, and used it in conjunction with "Vegetable Garden v5.4 build 4". It looks like it's functioning well and I like the changes in art that you've made. It has a cleaner look. Aside from that here's what I've got for ya:

1) You have no workgiver for the rock mill... So it's currently unusable. Linked is a quick edit I made to your workgiver xml. Just remove the ".DrZedit" and check it out. (I know you know how to, but for anyone else reading.)

2) Rename the single dirt recipe at the rock mill to "Make dirt x2". It's currently showing ingame as "Dig soil", and it also produces two dirt piles. That being said, I also noticed that you used the same defname for the recipe as Vegetable Garden; "VG_DigSoil". Not sure the reasoning behind this, but that's probably why the recipe name is showing up as "Dig soil" ingame instead of "Make dirt".

3)"Make dirt x5" recipe name is misleading as it produces 10 dirt piles.

4)Personally I'd keep all terraforming options within the terraforming tab. I understand why you'd put those four options (topsoils, rich soil, and plowed soil) under the "gardening tools" tab, but it messes with my mental consistency.

That's about all I've got to say at a quick glance. I'm not currently playing on A17, but if I encounter anything in the future I will let you know! Great work you've done.

[attachment deleted by admin due to age]

dburgdorf

Quote from: Dr_Zhivago on May 30, 2017, 04:52:51 PM1) You have no workgiver for the rock mill....

Ugh. It's always the simple things that I forget to test. :P

Quote from: Dr_Zhivago on May 30, 2017, 04:52:51 PM2) Rename the single dirt recipe at the rock mill to "Make dirt x2". It's currently showing ingame as "Dig soil", and it also produces two dirt piles. That being said, I also noticed that you used the same defname for the recipe as Vegetable Garden; "VG_DigSoil". Not sure the reasoning behind this, but that's probably why the recipe name is showing up as "Dig soil" ingame instead of "Make dirt".

If you're loading FF after VG, the game should be displaying the name defined in FF. But I'll check into it. (It's one of several cases where I reused a VG defName in order to overwrite VG terraforming-related stuff.)

Quote from: Dr_Zhivago on May 30, 2017, 04:52:51 PM3)"Make dirt x5" recipe name is misleading as it produces 10 dirt piles.

Fair point. I was thinking "5x normal recipe production," not considering that since normal production of that recipe is 2, not 1, well....

Quote from: Dr_Zhivago on May 30, 2017, 04:52:51 PM4)Personally I'd keep all terraforming options within the terraforming tab. I understand why you'd put those four options (topsoils, rich soil, and plowed soil) under the "gardening tools" tab, but it messes with my mental consistency.

The tab should be named "Farming," not "Gardening Tools." (Another spot where I overwrote a VG defName.) But I'll check and make sure it really is working correctly.

As to your point, yeah, I'm kind of torn on where to put them. They're farming- rather than terraforming-related, not least because the three of them that aren't available from the beginning are unlocked via the "Farming" research rather than the "Terraforming" research. But on the other hand, the  "terrain transformation" icons would arguably look better all on the same menu. But on yet another hand (quick - somebody lend me a third hand!), without VG loaded, that would leave the "Farming" menu with nothing but the compost bin and compost barrel....
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

Dr_Zhivago

Quote from: dburgdorf on May 30, 2017, 06:00:55 PM
If you're loading FF after VG, the game should be displaying the name defined in FF. But I'll check into it. (It's one of several cases where I reused a VG defName in order to overwrite VG terraforming-related stuff.)

Load order:
Core
VG
FF

Quote from: dburgdorf on May 30, 2017, 06:00:55 PM
The tab should be named "Farming," not "Gardening Tools."

As to your point, yeah, I'm kind of torn on where to put them....

Maybe the names being mixed up has something to do with the VG assembly? I really don't have much of a clue about those though.

As for the other stuff, I forgot about the new research you've included. I just dev-mode tested everything really quick. If it makes sense for compatibility, tech-tree, and ulterior asthetic reasons... Then I think it'll be easy enough to get used to.  ;)

Anyway, I'm off to bed. Good luck testing.

dburgdorf

Quote from: Dr_Zhivago on May 30, 2017, 07:49:04 PMLoad order....

It's not your load order. I've discovered the cause of the trouble; now I'm working on how to fix it. ;)
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

dburgdorf

Update:

- Rock mills can actually be used now.

- The "make dirt" recipe is now named "make dirt x2," as it actually produces two piles of dirt. Similarly, the "make dirt x5" recipe has been renamed "make dirt x10."

- Cleaned up the patch XML a bit.

- Cleaned up a few spots where the interface with "Vegetable Garden" wasn't as neat as it should have been, and got rid of a few annoying (but inconsequential) error messages that were being generated.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

dburgdorf

Quote from: Draegon on May 29, 2017, 08:26:10 PMIs there a way to have the normal colored Rimworld soil? I love this mod but the soil color bugs me for some reason.

I'm afraid I didn't do anything about this in the "bug-oriented" update I just finished, but I haven't forgotten your request. :)
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

deathstar

I'd love to use this mod as an addition/enhancement to Vegetable Garden, from what I gather there is already some compatibility tweaks implemented in FF? Are there any actual conflicts left, or things from either mod that are made obsolete?

dburgdorf

Quote from: deathstar on May 31, 2017, 05:05:22 AMI'd love to use this mod as an addition/enhancement to Vegetable Garden, from what I gather there is already some compatibility tweaks implemented in FF? Are there any actual conflicts left, or things from either mod that are made obsolete?

As of last night's update, you shouldn't see any problems. As is noted in the mod's description, above, make sure that "Fertile Fields" loads *after* "Vegetable Garden." Where the two mods overlap -- production of fertilizer, plowing fields, etc. -- the items and abilities provided by "Fertile Fields" will cleanly overwrite those provided by "Vegetable Garden." But all of the unique capabilities provided by both mods will be available to you.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?