[DataField("seedless")] public bool Seedless = false;
/// <summary>
- /// If true, rapidly decrease health while growing. Used to kill off
+ /// If false, rapidly decrease health while growing. Used to kill off
/// plants with "bad" mutations.
/// </summary>
[DataField("viable")] public bool Viable = true;
#endregion
+ /// <summary>
+ /// The seed prototypes this seed may mutate into when prompted to.
+ /// </summary>
+ [DataField("mutationPrototypes", customTypeSerializer: typeof(PrototypeIdListSerializer<SeedPrototype>))]
+ public List<string> MutationPrototypes = new();
+
public SeedData Clone()
{
DebugTools.Assert(!Immutable, "There should be no need to clone an immutable seed.");
PacketPrototype = PacketPrototype,
ProductPrototypes = new List<string>(ProductPrototypes),
+ MutationPrototypes = new List<string>(MutationPrototypes),
Chemicals = new Dictionary<string, SeedChemQuantity>(Chemicals),
ConsumeGasses = new Dictionary<Gas, float>(ConsumeGasses),
ExudeGasses = new Dictionary<Gas, float>(ExudeGasses),
///
/// You MUST clone() seed before mutating it!
/// </summary>
- public void MutateSeed(SeedData seed, float severity)
+ public void MutateSeed(ref SeedData seed, float severity)
{
if (!seed.Unique)
{
MutateBool(ref seed.Sentient , true , 10 , totalbits , severity);
MutateBool(ref seed.Ligneous , true , 10 , totalbits , severity);
MutateBool(ref seed.Bioluminescent , true , 10 , totalbits , severity);
- MutateBool(ref seed.TurnIntoKudzu , true , 10 , totalbits , severity);
+ MutateBool(ref seed.TurnIntoKudzu , true , 5 , totalbits , severity);
MutateBool(ref seed.CanScream , true , 10 , totalbits , severity);
seed.BioluminescentColor = RandomColor(seed.BioluminescentColor, 10, totalbits, severity);
// ConstantUpgade (10)
// Chems (20)
MutateChemicals(ref seed.Chemicals, 5, 20, totalbits, severity);
+
+ // Species (5)
+ MutateSpecies(ref seed, 5, totalbits, severity);
}
public SeedData Cross(SeedData a, SeedData b)
}
}
+ private void MutateSpecies(ref SeedData seed, int bits, int totalbits, float mult)
+ {
+ float p = mult * bits / totalbits;
+ p = Math.Clamp(p, 0, 1);
+ if (!Random(p))
+ return;
+
+ if (seed.MutationPrototypes.Count == 0)
+ return;
+
+ var targetProto = _robustRandom.Pick(seed.MutationPrototypes);
+ _prototypeManager.TryIndex(targetProto, out SeedPrototype? protoSeed);
+
+ if (protoSeed == null)
+ {
+ Log.Error($"Seed prototype could not be found: {targetProto}!");
+ return;
+ }
+
+ var oldSeed = seed.Clone();
+ seed = protoSeed.Clone();
+ seed.Potency = oldSeed.Potency;
+ seed.Yield = oldSeed.Yield;
+ }
+
private Color RandomColor(Color color, int bits, int totalbits, float mult)
{
float p = mult*bits/totalbits;
if (component.MutationLevel > 0)
{
Mutate(uid, Math.Min(component.MutationLevel, 25), component);
+ component.UpdateSpriteAfterUpdate = true;
component.MutationLevel = 0;
}
if (component.Seed != null)
{
EnsureUniqueSeed(uid, component);
- _mutation.MutateSeed(component.Seed, severity);
+ _mutation.MutateSeed(ref component.Seed, severity);
}
}
seeds-oat-display-name = oat stalks
seeds-banana-name = banana
seeds-banana-display-name = banana plant
+seeds-mimana-name = mimana
+seeds-mimana-display-name = mimana plant
seeds-carrots-name = carrot
seeds-carrots-display-name = carrots
seeds-cabbage-name = cabbage
seeds-sugarcane-display-name = sugarcanes
seeds-towercap-name = tower cap
seeds-towercap-display-name = tower caps
+seeds-steelcap-name = steel cap
+seeds-steelcap-display-name = steel caps
seeds-tomato-name = tomato
seeds-tomato-display-name = tomato plant
+seeds-bluetomato-name = blue tomato
+seeds-bluetomato-display-name = blue tomato plant
+seeds-bloodtomato-name = blood tomato
+seeds-bloodtomato-display-name = blood tomato plant
seeds-eggplant-name = eggplant
seeds-eggplant-display-name = eggplants
seeds-apple-name = apple
seeds-tobacco-display-name = tobacco plant
seeds-nettle-name = nettle
seeds-nettle-display-name = nettles
+seeds-deathnettle-name = death nettle
+seeds-deathnettle-display-name = death nettles
seeds-chili-name = chili
seeds-chili-display-name = chilis
+seeds-chilly-name = chilly
+seeds-chilly-display-name = chilly peppers
seeds-poppy-name = poppy
seeds-poppy-display-name = poppies
seeds-aloe-name = aloe
seeds-lingzhi-display-name = lingzhi
seeds-ambrosiavulgaris-name = ambrosia vulgaris
seeds-ambrosiavulgaris-display-name = ambrosia vulgaris
+seeds-ambrosiadeus-name = ambrosia deus
+seeds-ambrosiadeus-display-name = ambrosia deus
seeds-galaxythistle-name = galaxythistle
seeds-galaxythistle-display-name = galaxythistle
seeds-flyamanita-name = fly amanita
seeds-rice-display-name = rice stalks
seeds-soybeans-name = soybeans
seeds-soybeans-display-name = soy plant
+seeds-koibean-name = koibeans
+seeds-koibean-display-name = koibean plant
seeds-watermelon-name = watermelon
seeds-watermelon-display-name = watermelon plant
seeds-grape-name = grape
seedId: towercap
- type: Log
+- type: entity
+ name: steel-cap log
+ description: Steel doesn't grow on trees! It grows on mushrooms, of course.
+ id: SteelLog
+ parent: ProduceBase
+ components:
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/steelcap.rsi
+ - type: SolutionContainerManager
+ - type: MeleeWeapon
+ damage:
+ types:
+ Blunt: 12
+ - type: Produce
+ seedId: steelcap
+ - type: Log
+ spawnedPrototype: SheetSteel1
+ spawnCount: 1
+
- type: entity
name: nettle
description: Stingy little prick.
- type: Extractable
grindableSolutionName: food
+- type: entity
+ name: death nettle
+ description: This nettle's out for blood.
+ id: DeathNettle
+ parent: ProduceBase
+ components:
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/death_nettle.rsi
+ - type: Item
+ size: 10
+ sprite: Objects/Specific/Hydroponics/death_nettle.rsi
+ - type: MeleeWeapon
+ damage:
+ types:
+ Heat: 6
+ Caustic: 6
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ reagents:
+ - ReagentId: SulfuricAcid
+ Quantity: 15
+ - ReagentId: FluorosulfuricAcid
+ Quantity: 15
+ - type: Produce
+ seedId: deathNettle
+ - type: MeleeChemicalInjector
+ transferAmount: 6
+ solution: food
+ pierceArmor: true # We do a little trolling
+ - type: Extractable
+ grindableSolutionName: food
+
- type: entity
name: banana
parent: FoodProduceBase
- ReagentId: JuiceBanana
Quantity: 10
+- type: entity
+ name: mimana
+ parent: FoodProduceBase
+ id: FoodMimana
+ description: Mime's favorite.
+ components:
+ - type: FlavorProfile
+ flavors:
+ - banana
+ - nothing
+ - type: Food
+ trash: TrashMimanaPeel
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 7
+ reagents:
+ - ReagentId: MuteToxin
+ Quantity: 5
+ - ReagentId: Vitamin
+ Quantity: 2
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/mimana.rsi
+ - type: Produce
+ seedId: mimana
+ - type: Extractable
+ juiceSolution:
+ reagents:
+ - ReagentId: Nothing
+ Quantity: 5
+
- type: entity
name: banana peel
parent: BaseItem
grindableSolutionName: food
- type: SpaceGarbage
+- type: entity
+ name: mimana peel
+ parent: TrashBananaPeel
+ id: TrashMimanaPeel
+ components:
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/mimana.rsi
+ state: peel
+ - type: Item
+ sprite: Objects/Specific/Hydroponics/mimana.rsi
+ heldPrefix: peel
+ - type: Slippery
+ slipSound:
+ path: /Audio/Effects/slip.ogg
+ params:
+ volume: -100
+ launchForwardsMultiplier: 1.6
+
- type: entity
name: bananium peel
parent: TrashBananaPeel
- !type:DoActsBehavior
acts: [ "Destruction" ]
+- type: entity
+ name: blue tomato
+ parent: FoodTomato
+ id: FoodBlueTomato
+ description: This one is blue.
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 19
+ reagents:
+ - ReagentId: Nutriment
+ Quantity: 5
+ - ReagentId: SpaceLube
+ Quantity: 10
+ - ReagentId: Vitamin
+ Quantity: 4
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/blue_tomato.rsi
+ - type: Produce
+ seedId: blueTomato
+ - type: Extractable
+ grindableSolutionName: food
+ juiceSolution:
+ reagents:
+ - ReagentId: SpaceLube
+ Quantity: 10
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 1
+ behaviors:
+ - !type:PlaySoundBehavior
+ sound:
+ collection: desecration
+ - !type:SpillBehavior
+ solution: food
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+
+- type: entity
+ name: blood tomato
+ parent: FoodTomato
+ id: FoodBloodTomato
+ description: Wait, that's not ketchup...
+ components:
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 14
+ reagents:
+ - ReagentId: Blood
+ Quantity: 10
+ - ReagentId: Vitamin
+ Quantity: 4
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/blood_tomato.rsi
+ - type: Produce
+ seedId: bloodTomato
+ - type: Extractable
+ grindableSolutionName: food
+ juiceSolution:
+ reagents:
+ - ReagentId: Blood
+ Quantity: 10
+ - type: Destructible
+ thresholds:
+ - trigger:
+ !type:DamageTrigger
+ damage: 1
+ behaviors:
+ - !type:PlaySoundBehavior
+ sound:
+ collection: desecration
+ - !type:SpillBehavior
+ solution: food
+ - !type:DoActsBehavior
+ acts: [ "Destruction" ]
+
- type: entity
name: eggplant
parent: FoodProduceBase
- type: Produce
seedId: chili
+- type: entity
+ name: chilly pepper
+ parent: FoodProduceBase
+ id: FoodChilly
+ description: Icy hot.
+ components:
+ - type: FlavorProfile
+ flavors:
+ - spicy
+ - cold
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 18
+ reagents:
+ - ReagentId: Nutriment
+ Quantity: 4
+ - ReagentId: Frostoil
+ Quantity: 10
+ - ReagentId: Vitamin
+ Quantity: 4
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/chilly.rsi
+ - type: Produce
+ seedId: chilly
+
- type: entity
name: aloe
parent: FoodProduceBase
tags:
- Ambrosia
+- type: entity
+ name: ambrosia deus
+ parent: FoodProduceBase
+ id: FoodAmbrosiaDeus
+ description: An extremely sought-after medicinal plant. May have some funky side effects.
+ components:
+ - type: FlavorProfile
+ flavors:
+ - leafy
+ - medicine
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 22
+ reagents:
+ - ReagentId: Omnizine
+ Quantity: 5
+ - ReagentId: SpaceDrugs
+ Quantity: 5
+ - ReagentId: Nutriment
+ Quantity: 2
+ - ReagentId: Desoxyephedrine
+ Quantity: 10
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/ambrosia_deus.rsi
+ - type: Produce
+ seedId: ambrosiaDeus
+ - type: Extractable
+ grindableSolutionName: food
+ - type: Clothing
+ sprite: Objects/Specific/Hydroponics/ambrosia_deus.rsi
+ slots:
+ - HEAD
+ - type: Tag
+ tags:
+ - Ambrosia
+
- type: entity
name: galaxythistle
parent: FoodProduceBase
- ReagentId: MilkSoy
Quantity: 5
+- type: entity
+ name: koibean
+ description: These beans seem a little bit fishy.
+ id: FoodKoibean
+ parent: ProduceBase
+ components:
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/koibean.rsi
+ - type: SolutionContainerManager
+ solutions:
+ food:
+ maxVol: 9
+ reagents:
+ - ReagentId: Nutriment
+ Quantity: 5
+ - ReagentId: CarpoToxin
+ Quantity: 4
+ - type: Produce
+ seedId: koibean
+ - type: Extractable
+ juiceSolution:
+ reagents:
+ - ReagentId: CarpoToxin
+ Quantity: 4
+
- type: entity
name: watermelon
parent: FoodProduceBase
- type: Sprite
sprite: Objects/Specific/Hydroponics/banana.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of mimana seeds
+ id: MimanaSeeds
+ components:
+ - type: Seed
+ seedId: mimana
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/mimana.rsi
+
- type: entity
parent: SeedBase
name: packet of carrot seeds
- type: Sprite
sprite: Objects/Specific/Hydroponics/towercap.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of steel cap spores
+ id: SteelcapSeeds
+ components:
+ - type: Seed
+ seedId: steelcap
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/steelcap.rsi
+
- type: entity
parent: SeedBase
name: packet of tomato seeds
- type: Sprite
sprite: Objects/Specific/Hydroponics/tomato.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of blue tomato seeds
+ id: BlueTomatoSeeds
+ components:
+ - type: Seed
+ seedId: blueTomato
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/blue_tomato.rsi
+
+- type: entity
+ parent: SeedBase
+ name: packet of blood tomato seeds
+ id: BloodTomatoSeeds
+ components:
+ - type: Seed
+ seedId: bloodTomato
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/blood_tomato.rsi
+
- type: entity
parent: SeedBase
name: packet of eggplant seeds
- type: Sprite
sprite: Objects/Specific/Hydroponics/nettle.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of death nettle seeds
+ description: "Handle with very thick gloves."
+ id: DeathNettleSeeds
+ components:
+ - type: Seed
+ seedId: deathNettle
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/death_nettle.rsi
+
- type: entity
parent: SeedBase
name: packet of chili seeds
- type: Sprite
sprite: Objects/Specific/Hydroponics/chili.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of chilly seeds
+ description: "Frostburn."
+ id: ChillySeeds
+ components:
+ - type: Seed
+ seedId: chilly
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/chilly.rsi
+
- type: entity
parent: SeedBase
name: packet of aloe seeds
- type: Sprite
sprite: Objects/Specific/Hydroponics/ambrosia_vulgaris.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of ambrosia deus seeds
+ description: "A medicinal plant for the gods themselves."
+ id: AmbrosiaDeusSeeds
+ components:
+ - type: Seed
+ seedId: ambrosiaDeus
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/ambrosia_deus.rsi
+
- type: entity
parent: SeedBase
name: packet of galaxythistle seeds
- type: Sprite
sprite: Objects/Specific/Hydroponics/soybeans.rsi
+- type: entity
+ parent: SeedBase
+ name: packet of koibean seeds
+ id: KoibeanSeeds
+ components:
+ - type: Seed
+ seedId: koibean
+ - type: Sprite
+ sprite: Objects/Specific/Hydroponics/koibean.rsi
+
- type: entity
parent: SeedBase
name: packet of red onion seeds
packetPrototype: BananaSeeds
productPrototypes:
- FoodBanana
+ mutationPrototypes:
+ - mimana
harvestRepeat: Repeat
lifespan: 50
maturation: 6
Max: 2
PotencyDivisor: 50
+- type: seed
+ id: mimana
+ name: seeds-mimana-name
+ noun: seeds-noun-seeds
+ displayName: seeds-mimana-display-name
+ plantRsi: Objects/Specific/Hydroponics/mimana.rsi
+ packetPrototype: MimanaSeeds
+ productPrototypes:
+ - FoodMimana
+ harvestRepeat: Repeat
+ lifespan: 50
+ maturation: 6
+ production: 6
+ yield: 2
+ idealLight: 9
+ waterConsumption: 0.60
+ idealHeat: 298
+ chemicals:
+ MuteToxin:
+ Min: 1
+ Max: 5
+ PotencyDivisor: 20
+ Nutriment:
+ Min: 1
+ Max: 2
+ PotencyDivisor: 50
+
- type: seed
id: carrots
name: seeds-carrots-name
packetPrototype: TowercapSeeds
productPrototypes:
- Log
+ mutationPrototypes:
+ - steelcap
lifespan: 80
maturation: 15
ligneous: true
lightTolerance: 6
idealHeat: 288
+- type: seed
+ id: steelcap
+ name: seeds-steelcap-name
+ noun: seeds-noun-spores
+ displayName: seeds-steelcap-display-name
+ plantRsi: Objects/Specific/Hydroponics/steelcap.rsi
+ packetPrototype: SteelcapSeeds
+ productPrototypes:
+ - SteelLog
+ lifespan: 80
+ maturation: 15
+ ligneous: true
+ production: 3
+ yield: 3
+ potency: 1
+ growthStages: 3
+ waterConsumption: 0.60
+ nutrientConsumption: 0.80
+ lightTolerance: 6
+ idealHeat: 288
+
- type: seed
id: tomato
name: seeds-tomato-name
packetPrototype: TomatoSeeds
productPrototypes:
- FoodTomato
+ mutationPrototypes:
+ - blueTomato
+ - bloodTomato
harvestRepeat: Repeat
lifespan: 25
maturation: 8
Max: 4
PotencyDivisor: 25
+- type: seed
+ id: blueTomato
+ name: seeds-bluetomato-name
+ noun: seeds-noun-seeds
+ displayName: seeds-bluetomato-display-name
+ plantRsi: Objects/Specific/Hydroponics/blue_tomato.rsi
+ packetPrototype: BlueTomatoSeeds
+ productPrototypes:
+ - FoodBlueTomato
+ harvestRepeat: Repeat
+ lifespan: 25
+ maturation: 8
+ production: 6
+ yield: 2
+ potency: 10
+ waterConsumption: 0.60
+ nutrientConsumption: 0.70
+ idealLight: 8
+ idealHeat: 298
+ juicy: true
+ splatPrototype: PuddleSplatter
+ chemicals:
+ Nutriment:
+ Min: 1
+ Max: 5
+ PotencyDivisor: 20
+ SpaceLube:
+ Min: 1
+ Max: 10
+ PotencyDivisor: 10
+ Vitamin:
+ Min: 1
+ Max: 4
+ PotencyDivisor: 25
+
+- type: seed
+ id: bloodTomato
+ name: seeds-bloodtomato-name
+ noun: seeds-noun-seeds
+ displayName: seeds-bloodtomato-display-name
+ plantRsi: Objects/Specific/Hydroponics/blood_tomato.rsi
+ packetPrototype: BloodTomatoSeeds
+ productPrototypes:
+ - FoodBloodTomato
+ harvestRepeat: Repeat
+ lifespan: 25
+ maturation: 8
+ production: 6
+ yield: 2
+ potency: 10
+ waterConsumption: 0.60
+ nutrientConsumption: 0.70
+ idealLight: 8
+ idealHeat: 298
+ juicy: true
+ splatPrototype: PuddleSplatter
+ chemicals:
+ Blood:
+ Min: 1
+ Max: 10
+ PotencyDivisor: 10
+ Vitamin:
+ Min: 1
+ Max: 4
+ PotencyDivisor: 25
+
- type: seed
id: eggplant
name: seeds-eggplant-name
packetPrototype: EggplantSeeds
productPrototypes:
- FoodEggplant
+ mutationPrototypes:
+ - eggy
harvestRepeat: Repeat
lifespan: 25
maturation: 6
packetPrototype: OnionSeeds
productPrototypes:
- FoodOnion
+ mutationPrototypes:
+ - onionred
lifespan: 25
maturation: 8
production: 6
packetPrototype: NettleSeeds
productPrototypes:
- Nettle
+ mutationPrototypes:
+ - deathNettle
lifespan: 25
maturation: 8
production: 6
Max: 25
PotencyDivisor: 4
+- type: seed
+ id: deathNettle
+ name: seeds-deathnettle-name
+ noun: seeds-noun-seeds
+ displayName: seeds-deathnettle-display-name
+ plantRsi: Objects/Specific/Hydroponics/death_nettle.rsi
+ packetPrototype: DeathNettleSeeds
+ productPrototypes:
+ - DeathNettle
+ lifespan: 25
+ maturation: 8
+ production: 6
+ yield: 2
+ potency: 20
+ growthStages: 5
+ idealLight: 8
+ waterConsumption: 0.70
+ nutrientConsumption: 0.80
+ idealHeat: 298
+ chemicals:
+ SulfuricAcid:
+ Min: 1
+ Max: 15
+ PotencyDivisor: 6
+ FluorosulfuricAcid:
+ Min: 1
+ Max: 15
+ PotencyDivisor: 6
+
- type: seed
id: chili
name: seeds-chili-name
packetPrototype: ChiliSeeds
productPrototypes:
- FoodChili
+ mutationPrototypes:
+ - chilly
harvestRepeat: Repeat
lifespan: 25
maturation: 6
Max: 4
PotencyDivisor: 25
+- type: seed
+ id: chilly
+ name: seeds-chilly-name
+ noun: seeds-noun-seeds
+ displayName: seeds-chilly-display-name
+ plantRsi: Objects/Specific/Hydroponics/chilly.rsi
+ packetPrototype: ChillySeeds
+ productPrototypes:
+ - FoodChilly
+ harvestRepeat: Repeat
+ lifespan: 25
+ maturation: 6
+ production: 6
+ yield: 2
+ potency: 20
+ idealLight: 9
+ idealHeat: 298
+ chemicals:
+ Frostoil:
+ Min: 1
+ Max: 10
+ PotencyDivisor: 10
+ Nutriment:
+ Min: 1
+ Max: 4
+ PotencyDivisor: 25
+ Vitamin:
+ Min: 1
+ Max: 4
+ PotencyDivisor: 25
+
- type: seed
id: poppy
name: seeds-poppy-name
packetPrototype: AmbrosiaVulgarisSeeds
productPrototypes:
- FoodAmbrosiaVulgaris
+ mutationPrototypes:
+ - ambrosiaDeus
lifespan: 25
maturation: 10
production: 3
Max: 2
Potencydivisor: 50
+- type: seed
+ id: ambrosiaDeus
+ name: seeds-ambrosiadeus-name
+ noun: seeds-noun-seeds
+ displayName: seeds-ambrosiadeus-display-name
+ plantRsi: Objects/Specific/Hydroponics/ambrosia_deus.rsi
+ packetPrototype: AmbrosiaDeusSeeds
+ productPrototypes:
+ - FoodAmbrosiaDeus
+ lifespan: 25
+ maturation: 10
+ production: 3
+ yield: 3
+ potency: 10
+ growthStages: 6
+ waterConsumption: 0.60
+ chemicals:
+ Nutriment:
+ Min: 1
+ Max: 2
+ PotencyDivisor: 10
+ Omnizine: # Don't kill me
+ Min: 1
+ Max: 5
+ PotencyDivisor: 20
+ SpaceDrugs:
+ Min: 1
+ Max: 5
+ PotencyDivisor: 20
+ Desoxyephedrine:
+ Min: 1
+ Max: 10
+ PotencyDivisor: 10
+
- type: seed
id: galaxythistle
name: seeds-galaxythistle-name
packetPrototype: SoybeanSeeds
productPrototypes:
- FoodSoybeans
+ mutationPrototypes:
+ - koibean
+ growthStages: 4
+ lifespan: 25
+ maturation: 6
+ production: 6
+ yield: 3
+ potency: 5
+ idealLight: 7
+ nutrientConsumption: 0.40
+ chemicals:
+ Nutriment:
+ Min: 1
+ Max: 3
+ PotencyDivisor: 25
+
+- type: seed
+ id: koibean
+ name: seeds-koibean-name
+ noun: seeds-noun-seeds
+ displayName: seeds-koibean-display-name
+ plantRsi: Objects/Specific/Hydroponics/koibean.rsi
+ packetPrototype: KoibeanSeeds
+ productPrototypes:
+ - FoodKoibean
growthStages: 4
lifespan: 25
maturation: 6
Min: 1
Max: 5
PotencyDivisor: 20
+ CarpoToxin:
+ Min: 1
+ Max: 4
+ PotencyDivisor: 30
- type: seed
id: grape
result: FoodBreadMimana
time: 15
reagents:
- MilkSoy: 5
- Nothing: 5 #replace with mimana
+ Nothing: 5
solids:
FoodDough: 1
- FoodTofu: 1
+ FoodMimana: 1
- type: microwaveMealRecipe
id: RecipeBread
Blood: 10
solids:
FoodBowlBig: 1
- FoodTomato: 2
- #todo Replace with blood tomato
+ FoodBloodTomato: 2
- type: microwaveMealRecipe
id: RecipeWingFangChuSoup
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from https://github.com/tgstation/tgstation/commit/bd870d649cc8ac9d8af2fbc046af4a79afb5ab28",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ },
+ {
+ "name": "stage-5"
+ },
+ {
+ "name": "stage-6"
+ },
+ {
+ "name": "equipped-HELMET",
+ "directions": 4
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ },
+ {
+ "name": "stage-5"
+ },
+ {
+ "name": "stage-6"
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13 at 1dbcf389b0ec6b2c51b002df5fef8dd1519f8068",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ },
+ {
+ "name": "stage-5"
+ },
+ {
+ "name": "stage-6"
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from https://github.com/vgstation-coders/vgstation13/commit/b459ea3fdee965bdc3e93e7983ad7fa610d05c12",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ },
+ {
+ "name": "stage-5"
+ },
+ {
+ "name": "stage-6"
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/40d89d11ea4a5cb81d61dc1018b46f4e7d32c62a",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ },
+ {
+ "name": "stage-5"
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from https://github.com/tgstation/tgstation/commit/696dfcc59c9e65e7bbe3923d1f7e880ea384783f",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/6be7633abca9f1a51cab1020500cf0776ce78e5c",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "peel"
+ },
+ {
+ "name": "peel2"
+ },
+ {
+ "name": "peel3"
+ },
+ {
+ "name": "peel-inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "peel-inhand-right",
+ "directions": 4
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ },
+ {
+ "name": "stage-4"
+ },
+ {
+ "name": "stage-5"
+ },
+ {
+ "name": "stage-6"
+ },
+ {
+ "name": "primed",
+ "delays": [
+ [
+ 4.9,
+ 0.1
+ ]
+ ]
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from https://github.com/tgstation/tgstation/commit/dccc1e60a3c151e2b7fac26da7b3087757f1e116",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "dead"
+ },
+ {
+ "name": "harvest"
+ },
+ {
+ "name": "produce"
+ },
+ {
+ "name": "seed"
+ },
+ {
+ "name": "stage-1"
+ },
+ {
+ "name": "stage-2"
+ },
+ {
+ "name": "stage-3"
+ }
+ ]
+}