Oxygen Not Included

Oxygen Not Included

346 ratings
Customize Plants
4
4
4
3
2
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
971.052 KB
Jul 28, 2019 @ 10:40am
Jul 25 @ 8:03am
50 Change Notes ( view )

Subscribe to download
Customize Plants

Description
Now all plants and compatible with other mods! Remove or add as many irrigation/fertilizer as you like. Change illumination requirements, temperature, atmosphere, harvest rate and amount.

Settings found here (after running mod)
Windows: %userprofile%\documents\Klei\OxygenNotIncluded\mods\CustomizePlants.json
Mac: ~Library/Application Support/unity.Klei.Oxygen Not Included/mods/CustomizePlants.json
Ubuntu: ~/.config/unity3d/Klei/Oxygen Not Included/mods/CustomizePlants.json

Base changes
Changeable in json file above!
- Mealwood 5kg dirt per cycle (original 10)
- Mushroom grows in 6 cycles, doesn't take slime but consumes CO2 to grow
- Bristle Blossom 5kg water per cycle (original 20kg)
- Waterweed 5kg salt water per cycle (original +500g bleach)
- Nosh Sprout 5kg ethanol (original 20kg +5kg dirt)
- Pincha Pepper 15kg polluted water per cycle (original 35kg)
- Arbor Tree 62.5kg polluted water (original 70kg)
- Mirth Leaf drop Algae and Clay, but take water to irrigate
- Bluff Briar filter chlorine from their surrounding up to 10g/s
- Jumping Joya filter natural gas from their surrounding up to 10g/s and convert it into CO2
- Sporechid exhale chlorine
- Gas Grass grows when in 100 Lux or more (instead of 20000 Lux)
- Wheezewort custom temperature delta of -20 Kelvin (normally -5 Kelvin)
- hanging flower vases and wall flower vase can be used for farming
- Oxyfern oxygen output changeable (default off)

These changes are primarily to demonstrate the possibilies. You can easily remove any change you don't like and add new ones.

List of Settings
- PlantSettings
-- id: Required. Defines which plant is affected. See ID in readme file.
-- fruitId: Must be valid Tag or listed in SpecialCropSettings.
-- fruit_grow_time: Time for the crop to grow in seconds.
-- fruit_amount: Number of objects or amount in kg, depends on Tag.
-- irrigation: List of irrigation needed. May be any liquid or solid element. Amount in kg per cycle
-- illumination: If equal 0 removes existing component. If less than 0 requires darkness. Otherwise number is light threshold required.
-- safe_elements: List of gas elements plant has to be in. If empty all elements are suitable.
-- temperatures: Array of temperatures in Kelvin. 1) death if lower 2) wilt if lower 3) wilt if higher 4) death if higher; entries after 4 are ignored; may have less than 4 entries
-- pressures: Array of pressures in kg. 1) death if lower 2) wilt if lower 3) wilt if higher 4) death if higher; entries after 4 are ignored; may have less than 4 entries
-- decor_value: Decor score.
-- decor_radius: Range at which the decor score is applied to.
-- submerged_threshold: If equal 0 ignores water. If less than 0 hates water. If higher than 0 needs water. Plant will wilt in bad conditions.
-- can_tinker: Whenever plant can be interacted with farming station.
-- require_solid_tile: Not sure...
-- max_age: If 0 or less, will never auto-harvest itself. Otherwise time in seconds for the plant to auto-harvest and plays bristled animation when at 50%+.
-- disease: Type of disease the plant spreads around it. May be: FoodPoisoning, SlimeLung, PollenGerms, or ZombieSpores.
-- disease_amount: How much disease is spread around it.
-- disease_once: How much disease is spawned on generation (only once).
-- input_element: Type of gas or liquid plant absorbs from environment. Not compatible with Wheezewort or Oxyfern.
-- input_rate: Amount absorbed per second.
-- output_element: Type of gas or liquid plant expels per second. Not compatible with Wheezewort or Oxyfern.
-- output_rate: Amount expelled per second.
-- radiation_threshold_min: Minimum radiation threshold.
-- radiation_threshold_max: Maximum radiation threshold.
- SpecialCropSettings: Defines a placeholder name and a list of recourses. When a plant tries to spawn a matching fruitId it will instead use the list provided. Note that this is only necessary when dealing with more than one recourse at once.
- SeedsGoIntoAnyFlowerPots: Whenever or not all seeds go into any flower pots / farm plots.
- WheezewortTempDelta: How much cooling wheezeworts do. Default is -5 Kelvin.
- OxyfernOxygenPerSecond: Amount of oxygen released by oxyferns.
- CheatFlowerVase: When true, the basic Flower Pot for decoration plants does not need any irrigation at all, no matter which plant is in it.
- AutomaticallyAddModPlants: When true, will automatically add any plant to the mod, that registers as a plant via ExtendEntityToBasicPlant function. Might require restart after plant was found.
- ModPlants: List of classes to patch besides the default plants. This may be extended manually or by enabling AutomaticallyAddModPlants.

Compatibility
- Wild Planter Mod: put Customize Plants first in load order

GitHub
If Steam Download does not work or you need an older version, you find the files also here: GitHub[github.com]
Popular Discussions View All (18)
12
Jul 24 @ 12:15pm
Crash when modifying fruit amount of Ovagro Vines
Gariba
2
Jun 7 @ 11:04am
Try to yield from decor plants. Not working tho.
Kindatami
1
Jun 17 @ 10:48am
[INSTRUCTIONS] How to find ID of plants (in particular of new DLC plants)
Gariba
1,126 Comments
Kaedys Jul 25 @ 11:25am 
Much appreciated!
Fumihiko  [author] Jul 25 @ 10:33am 
That's weird. I specifically tested that the plant wouldn't cause a crash. I think it should work now.
Kaedys Jul 24 @ 5:53pm 
[00:40:33.266] [1] [ERROR] ButterflyPlantSeed ~~~!System.NullReferenceException: Object reference not set to an instance of an object
at MutantPlant.UpdateNameAndTags () [0x0002f] in <3b73c925114143c5bad31ccbc5facdf1>:0
at MutantPlant.OnSpawn () [0x00052] in <3b73c925114143c5bad31ccbc5facdf1>:0
at KMonoBehaviour.Spawn () [0x0005d] in <7becb3f73037484c93dc2b548fe42a58>:0 !~~~Error in ButterflyPlantSeed.MutantPlant.OnSpawn at (95.50, 136.51, -23.50)
~~~!System.NullReferenceException: Object reference not set to an instance of an object
at MutantPlant.UpdateNameAndTags () [0x0002f] in <3b73c925114143c5bad31ccbc5facdf1>:0
at MutantPlant.OnSpawn () [0x00052] in <3b73c925114143c5bad31ccbc5facdf1>:0
at KMonoBehaviour.Spawn () [0x0005d] in <7becb3f73037484c93dc2b548fe42a58>:0 !~~~Error in ButterflyPlantSeed.MutantPlant.OnSpawn at (95.50, 136.51, -23.50)
Kaedys Jul 24 @ 5:53pm 
Hmm. Still getting the same crash as @Kinoko. I've confirmed I'm on 1.0.49.0. Crash reliably occurs when I dig out the tile under a butterfly plant when I'm modifying the growth time on it in this mod, and does not occur when I remove that block from the mod config. Similar crash log, except it's complaining about the seed this time. Crash log in separate post because Steam and 1000 char limits >.>
Kaedys Jul 24 @ 4:49pm 
Excellent, much appreciated
Fumihiko  [author] Jul 24 @ 1:53pm 
I just use the newtonsoft lib that is already shipped with the game. It does not support comments.
Nothing I will do about that. Keep your comments in a separate file. You can have any extra field you like. json does not care about unused fields. My mods are no exception. Just keep in mind that the file is overwritten, whenever I bump the version number.
Kaedys Jul 24 @ 1:08pm 
Hey Fumihiko, do you know if the JSON parser for your various Customize mods will ignore unknown fields? JSON doesn't have a concept of a comment, but they can be added by using a throw-away field like `_comment` or similar. My JSON for many of the mods (this one especially, actually) is getting rather long, and I'd like to be able to make notes to myself in it about what I'm changing and why, and I'm hoping your mods would just ignore the addition of a new field it doesn't recognize, like the `_comment` one above.
Fumihiko  [author] Jul 24 @ 11:00am 
Fixed. This slightly changes how fruit changes are applied. Maybe affects other plants too.
Kinoko Jul 24 @ 6:08am 
Why did I only add one ButterflyPlant cycle? As long as I dig out this plant, the game will crash.
{
"id": "ButterflyPlant",
"fruit_grow_time": 2400.0
},
[ERROR] ButterflyPlant (ButterflyPlant_Original) Exception in: (ButterflyPlant).StandardCropPlant+States.root.dead.Enter
System.NullReferenceException: Object reference not set to an instance of an object
at MutantPlant.CopyMutationsTo (MutantPlant target) [0x00000] in <3b73c925114143c5bad31ccbc5facdf1>:0
at (wrapper dynamic-method) SeedProducer.SeedProducer.ProduceSeed_Patch0(SeedProducer,string,int,bool)
at SeedProducer.DropSeed (System.Object data) [0x00018] in <3b73c925114143c5bad31ccbc5facdf1>:0
at SeedProducer+<>c.<.cctor>b__17_0 (SeedProducer component, System.Object data) [0x0000e] in <3b73c925114143c5bad31ccbc5facdf1>:0
Fumihiko  [author] Jul 19 @ 11:33pm 
Download [github.com] the mod and overwrite the files here C:\Users\%username%\Documents\Klei\OxygenNotIncluded\mods\Steam\1818145851