From 13a15247894728988e078956bacbdc4067d24a2a Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Thu, 14 Mar 2024 09:11:12 +0100 Subject: [PATCH 01/24] Added 1.5 --- 1.5/Defs/AnimalClassDefs/AnimalClasses.xml | 316 ++++ 1.5/Defs/Aspects/Aspects_Coloration.xml | 95 + 1.5/Defs/Aspects/Aspects_FormerHuman.xml | 28 + 1.5/Defs/Aspects/Aspects_Merged.xml | 14 + 1.5/Defs/Aspects/Aspects_Misc.xml | 194 ++ 1.5/Defs/Aspects/Aspects_Prideful.xml | 16 + 1.5/Defs/Aspects/Aspects_Production.xml | 56 + .../BackstoryDefs/Backstories_FormerHuman.xml | 141 ++ .../BackstoryDefs/Backstories_General.xml | 287 +++ .../BackstoryDefs/Backstories_Special.xml | 25 + 1.5/Defs/BodyPartDefs/CustomTailDef.xml | 7 + 1.5/Defs/CategoryDefs.xml | 39 + 1.5/Defs/ComboRules.xml | 62 + 1.5/Defs/ConceptDefs/Concepts.xml | 57 + 1.5/Defs/DamageDefs/Damages_Mutagenic.xml | 151 ++ .../DamageDefs/Damages_MutagenicArrow.xml | 24 + 1.5/Defs/DamageDefs/Damages_Special.xml | 44 + 1.5/Defs/Designations/DesignationDefs.xml | 8 + 1.5/Defs/Drugs/AspectInjectors.xml | 49 + 1.5/Defs/Drugs/Drugs.xml | 36 + 1.5/Defs/Drugs/Drugs_Antigen.xml | 154 ++ 1.5/Defs/Drugs/Drugs_Bases.xml | 110 ++ 1.5/Defs/Drugs/Drugs_Depricated.xml | 122 ++ 1.5/Defs/Drugs/Drugs_Genekits.xml | 30 + 1.5/Defs/Drugs/Drugs_Injectors.xml | 72 + 1.5/Defs/Drugs/Drugs_MechaniteSlurry.xml | 49 + 1.5/Defs/Drugs/Drugs_Pills.xml | 451 +++++ 1.5/Defs/Drugs/Drugs_Reverter.xml | 44 + 1.5/Defs/Drugs/Drugs_TransformerSerums.xml | 384 ++++ 1.5/Defs/Drugs_MutagenicMechSerums.xml | 106 ++ 1.5/Defs/Factions/FactionDefs.xml | 155 ++ 1.5/Defs/Factions/Factions_Player.xml | 185 ++ 1.5/Defs/Factions/Factions_Test.xml | 390 ++++ 1.5/Defs/Groups/Groups_Core.xml | 14 + 1.5/Defs/Groups/Groups_Herd.xml | 59 + 1.5/Defs/Groups/Groups_Pack.xml | 59 + .../Deprecated/Depreciated_Diseases.xml | 542 ++++++ 1.5/Defs/Hediffs/Hediffs_Abilities.xml | 31 + 1.5/Defs/Hediffs/Hediffs_Bases.xml | 59 + 1.5/Defs/Hediffs/Hediffs_Drug.xml | 33 + .../Hediffs/Hediffs_ExperimentalInjector.xml | 16 + 1.5/Defs/Hediffs/Hediffs_FormerHuman.xml | 411 +++++ 1.5/Defs/Hediffs/Hediffs_Misc.xml | 55 + 1.5/Defs/Hediffs/Hediffs_MutaGunTf.xml | 39 + .../Hediffs/Hediffs_MutagenicBuildups.xml | 340 ++++ 1.5/Defs/Hediffs/Hediffs_SapiostoreMesh.xml | 67 + .../Hediffs_TransformationParalysis.xml | 47 + 1.5/Defs/Hediffs/Hediffs_UnknownStatus.xml | 47 + 1.5/Defs/Hediffs/MutagenicDiseases.xml | 143 ++ 1.5/Defs/Hediffs/MutagenicInfection.xml | 109 ++ .../HistoryEventDefs/HistoryEventDefs.xml | 91 + .../Incidents/MutagenicDiseasesIncidents.xml | 27 + 1.5/Defs/Incidents/MutagenicLeak.xml | 14 + 1.5/Defs/Incidents/MutagenicShipPartcrash.xml | 27 + 1.5/Defs/Incidents/MutagenicStorm.xml | 41 + 1.5/Defs/Incidents/SheepChefJoins.xml | 12 + 1.5/Defs/Interactions/AnimalNoises_Bark.xml | 585 ++++++ 1.5/Defs/Interactions/AnimalNoises_Base.xml | 100 ++ .../Interactions/AnimalNoises_BeaverGrunt.xml | 510 ++++++ 1.5/Defs/Interactions/AnimalNoises_Bleat.xml | 507 ++++++ 1.5/Defs/Interactions/AnimalNoises_Bok.xml | 502 ++++++ 1.5/Defs/Interactions/AnimalNoises_Boom.xml | 503 ++++++ 1.5/Defs/Interactions/AnimalNoises_Chao.xml | 661 +++++++ .../Interactions/AnimalNoises_Chitter.xml | 497 +++++ .../Interactions/AnimalNoises_CommonBleat.xml | 563 ++++++ .../Interactions/AnimalNoises_GoatBleat.xml | 515 ++++++ 1.5/Defs/Interactions/AnimalNoises_Hiss.xml | 543 ++++++ 1.5/Defs/Interactions/AnimalNoises_Meow.xml | 611 +++++++ 1.5/Defs/Interactions/AnimalNoises_Moo.xml | 499 +++++ 1.5/Defs/Interactions/AnimalNoises_Oink.xml | 480 +++++ .../Interactions/AnimalNoises_Reptile.xml | 508 ++++++ 1.5/Defs/Interactions/AnimalNoises_Squawk.xml | 574 ++++++ 1.5/Defs/Interactions/AnimalNoises_Squeak.xml | 526 ++++++ .../Interactions/AnimalNoises_Tortoise.xml | 486 +++++ 1.5/Defs/Interactions/AnimalNoises_Yip.xml | 531 ++++++ 1.5/Defs/Interactions/FH_Chat.xml | 79 + .../Interactions/FH_TrainInteractions.xml | 60 + .../Interactions/Interaction_Headpats.xml | 193 ++ .../RulePacks_MorphInteractions.xml | 150 ++ 1.5/Defs/JobDefs/MiscJobs.xml | 21 + 1.5/Defs/JobDefs/MutaPlantJobs.xml | 14 + 1.5/Defs/JobDefs/MutagenChamberJobs.xml | 24 + 1.5/Defs/JobDefs/PawnInteractionJobs.xml | 16 + 1.5/Defs/JobDefs/PawnProductionJobs.xml | 41 + 1.5/Defs/Joy/JoyGivers.xml | 20 + 1.5/Defs/LetterDefs/FormerHumanJoins.xml | 8 + 1.5/Defs/MainButtonDefs.xml | 12 + 1.5/Defs/ManeuverDef.xml | 56 + .../MentalBreakDefs/FormerHumanBreaks.xml | 54 + .../AbstractMorphDefs.xml | 23 + .../Animal/Animal_MorphDef.xml | 5 + .../Animal/Animal_Parts.xml | 228 +++ .../Anseriform/Anseriform_MorphDef.xml | 5 + .../Anseriform/Anseriform_Parts.xml | 10 + .../Chicken/Chicken_Backstories.xml | 23 + .../Anseriform/Chicken/Chicken_Full.xml | 78 + .../Anseriform/Chicken/Chicken_Memories.xml | 55 + .../Anseriform/Chicken/Chicken_MorphDef.xml | 23 + .../Anseriform/Chicken/Chicken_Partial.xml | 34 + .../Anseriform/Chicken/Chicken_Parts.xml | 106 ++ .../Anseriform/Chicken/Chicken_Tales.xml | 79 + .../Anseriform/Turkey/Turkey_Backstories.xml | 23 + .../Anseriform/Turkey/Turkey_Full.xml | 78 + .../Anseriform/Turkey/Turkey_Memories.xml | 55 + .../Anseriform/Turkey/Turkey_MorphDef.xml | 26 + .../Anseriform/Turkey/Turkey_Partial.xml | 34 + .../Anseriform/Turkey/Turkey_Parts.xml | 40 + .../Anserigalliform_MorphDef.xml | 8 + .../Anserigalliform/Anserigalliform_Parts.xml | 69 + .../Galliform/Duck/Duck_Backstories.xml | 23 + .../Galliform/Duck/Duck_Full.xml | 78 + .../Galliform/Duck/Duck_Memories.xml | 55 + .../Galliform/Duck/Duck_MorphDef.xml | 25 + .../Galliform/Duck/Duck_Partial.xml | 34 + .../Galliform/Duck/Duck_Parts.xml | 97 + .../Galliform/Duck/Duck_Tales.xml | 19 + .../Galliform/Galliform_MorphDef.xml | 5 + .../Galliform/Galliform_Parts.xml | 10 + .../Galliform/Goose/Goose_Backstories.xml | 23 + .../Galliform/Goose/Goose_Full.xml | 78 + .../Galliform/Goose/Goose_Memories.xml | 53 + .../Galliform/Goose/Goose_MorphDef.xml | 23 + .../Galliform/Goose/Goose_Partial.xml | 34 + .../Galliform/Goose/Goose_Parts.xml | 97 + .../Galliform/Goose/Goose_Tales.xml | 19 + .../Animal/Avian/Avian_Memories.xml | 53 + .../Animal/Avian/Avian_MorphDef.xml | 6 + .../Animal/Avian/Avian_Parts.xml | 110 ++ .../Ratite/Cassowary/Cassowary_Backstory.xml | 23 + .../Avian/Ratite/Cassowary/Cassowary_Full.xml | 78 + .../Ratite/Cassowary/Cassowary_Memories.xml | 55 + .../Ratite/Cassowary/Cassowary_MorphDef.xml | 25 + .../Ratite/Cassowary/Cassowary_Partial.xml | 34 + .../Ratite/Cassowary/Cassowary_Parts.xml | 46 + .../Animal/Avian/Ratite/Emu/Emu_Backstory.xml | 23 + .../Animal/Avian/Ratite/Emu/Emu_Full.xml | 78 + .../Animal/Avian/Ratite/Emu/Emu_Memories.xml | 55 + .../Animal/Avian/Ratite/Emu/Emu_MorphDef.xml | 25 + .../Animal/Avian/Ratite/Emu/Emu_Partial.xml | 34 + .../Animal/Avian/Ratite/Emu/Emu_Parts.xml | 45 + .../Ratite/Ostrich/Ostrich_Backstory.xml | 23 + .../Avian/Ratite/Ostrich/Ostrich_Full.xml | 78 + .../Avian/Ratite/Ostrich/Ostrich_Memories.xml | 55 + .../Avian/Ratite/Ostrich/Ostrich_MorphDef.xml | 23 + .../Avian/Ratite/Ostrich/Ostrich_Partial.xml | 34 + .../Avian/Ratite/Ostrich/Ostrich_Parts.xml | 45 + .../Animal/Avian/Ratite/Ratite_MorphDef.xml | 8 + .../Animal/Avian/Ratite/Ratite_Parts.xml | 84 + .../Animal/Megafauna/Megafauna_MorphDef.xml | 8 + .../Animal/Megafauna/Megafauna_Parts.xml | 50 + .../ThickFur/Megasloth/Megasloth_Full.xml | 80 + .../ThickFur/Megasloth/Megasloth_Injector.xml | 15 + .../ThickFur/Megasloth/Megasloth_Memories.xml | 129 ++ .../ThickFur/Megasloth/Megasloth_MorphDef.xml | 20 + .../ThickFur/Megasloth/Megasloth_Partial.xml | 35 + .../ThickFur/Megasloth/Megasloth_Parts.xml | 177 ++ .../ThickFur/Megasloth/Megasloth_Tales.xml | 67 + .../Megafauna/ThickFur/ThickFur_MorphDef.xml | 5 + .../Megafauna/ThickFur/ThickFur_Parts.xml | 11 + .../Elephantidae/Elephant/Elephant_Full.xml | 80 + .../Elephant/Elephant_Injector.xml | 15 + .../Elephant/Elephant_MorphDef.xml | 16 + .../Elephant/Elephant_Partial.xml | 35 + .../Elephantidae/Elephant/Elephant_Parts.xml | 48 + .../Elephantidae/Elephant/Elephant_Tales.xml | 59 + .../Elephantidae/Elephantidae_Memories.xml | 155 ++ .../Elephantidae/Elephantidae_MorphDef.xml | 9 + .../Elephantidae/Elephantidae_Parts.xml | 192 ++ .../Rhinoceros/Rhinoceros_Full.xml | 80 + .../Rhinoceros/Rhinoceros_Injector.xml | 15 + .../Rhinoceros/Rhinoceros_MorphDef.xml | 16 + .../Rhinoceros/Rhinoceros_Partial.xml | 35 + .../Rhinoceros/Rhinoceros_Parts.xml | 46 + .../Rhinocerotidae_Memories.xml | 128 ++ .../Rhinocerotidae_MorphDef.xml | 9 + .../Rhinocerotidae/Rhinocerotidae_Parts.xml | 170 ++ .../ThickHide/ThickHide_MorphDef.xml | 5 + .../Megafauna/ThickHide/ThickHide_Parts.xml | 11 + .../Animal/Megafauna/Thrumbo/Thrumbo_Full.xml | 80 + .../Megafauna/Thrumbo/Thrumbo_Hairstyle.xml | 7 + .../Megafauna/Thrumbo/Thrumbo_Injector.xml | 15 + .../Megafauna/Thrumbo/Thrumbo_Memories.xml | 154 ++ .../Megafauna/Thrumbo/Thrumbo_MorphDef.xml | 24 + .../Megafauna/Thrumbo/Thrumbo_Partial.xml | 35 + .../Megafauna/Thrumbo/Thrumbo_Parts.xml | 180 ++ .../Megafauna/Thrumbo/Thrumbo_Tales.xml | 34 + .../Carnivora/Canid/Canid_Memories.xml | 78 + .../Carnivora/Canid/Canid_MorphDef.xml | 6 + .../PawFooted/Carnivora/Canid/Canid_Parts.xml | 57 + .../Canid/Familiaris/Familiaris_Memories.xml | 129 ++ .../Canid/Familiaris/Familiaris_MorphDef.xml | 14 + .../Canid/Familiaris/Familiaris_Parts.xml | 103 ++ .../Canid/Familiaris/Husky/Husky_Full.xml | 78 + .../Canid/Familiaris/Husky/Husky_MorphDef.xml | 14 + .../Canid/Familiaris/Husky/Husky_Partial.xml | 34 + .../Canid/Familiaris/Husky/Husky_Parts.xml | 36 + .../LabradorRetriever_Full.xml | 78 + .../LabradorRetriever_MorphDef.xml | 14 + .../LabradorRetriever_Partial.xml | 34 + .../LabradorRetriever_Parts.xml | 31 + .../Canid/Familiaris/Terrier/Terrier_Full.xml | 78 + .../Familiaris/Terrier/Terrier_MorphDef.xml | 14 + .../Familiaris/Terrier/Terrier_Partial.xml | 34 + .../Familiaris/Terrier/Terrier_Parts.xml | 36 + .../Lupine/Arctic Wolf/ArcticWolf_Full.xml | 78 + .../Arctic Wolf/ArcticWolf_MorphDef.xml | 17 + .../Lupine/Arctic Wolf/ArcticWolf_Partial.xml | 34 + .../Lupine/Arctic Wolf/ArcticWolf_Parts.xml | 37 + .../Canid/Lupine/Lupine_Backstories.xml | 75 + .../Canid/Lupine/Lupine_Memories.xml | 54 + .../Canid/Lupine/Lupine_MorphDef.xml | 19 + .../Carnivora/Canid/Lupine/Lupine_Parts.xml | 110 ++ .../Lupine/Timber Wolf/TimberWolf_Full.xml | 78 + .../Timber Wolf/TimberWolf_MorphDef.xml | 19 + .../Lupine/Timber Wolf/TimberWolf_Partial.xml | 34 + .../Lupine/Timber Wolf/TimberWolf_Parts.xml | 37 + .../Scavenger/Hellhound/Hellhound_Full.xml | 78 + .../Hellhound/Hellhound_Memories.xml | 53 + .../Hellhound/Hellhound_MorphDef.xml | 23 + .../Scavenger/Hellhound/Hellhound_Partial.xml | 34 + .../Scavenger/Hellhound/Hellhound_Parts.xml | 301 ++++ .../Canid/Scavenger/Scavenger_MorphDef.xml | 26 + .../Canid/Scavenger/Scavenger_Parts.xml | 119 ++ .../Canid/Scavenger/Warg/Warg_Full.xml | 78 + .../Canid/Scavenger/Warg/Warg_Memories.xml | 129 ++ .../Canid/Scavenger/Warg/Warg_MorphDef.xml | 23 + .../Canid/Scavenger/Warg/Warg_Partial.xml | 34 + .../Canid/Scavenger/Warg/Warg_Parts.xml | 71 + .../PawFooted/Carnivora/Carnivora_Aspects.xml | 17 + .../Carnivora/Carnivora_MorphDef.xml | 5 + .../PawFooted/Carnivora/Carnivora_Parts.xml | 100 ++ .../Feline/BigFelis/BigFelis_MorphDef.xml | 14 + .../Feline/BigFelis/BigFelis_Parts.xml | 69 + .../Feline/BigFelis/Cougar/Cougar_Full.xml | 78 + .../BigFelis/Cougar/Cougar_Memories.xml | 54 + .../BigFelis/Cougar/Cougar_MorphDef.xml | 23 + .../Feline/BigFelis/Cougar/Cougar_Partial.xml | 34 + .../Feline/BigFelis/Cougar/Cougar_Parts.xml | 52 + .../Feline/BigFelis/Lynx/Lynx_Full.xml | 78 + .../Feline/BigFelis/Lynx/Lynx_Memories.xml | 54 + .../Feline/BigFelis/Lynx/Lynx_MorphDef.xml | 23 + .../Feline/BigFelis/Lynx/Lynx_Partial.xml | 34 + .../Feline/BigFelis/Lynx/Lynx_Parts.xml | 47 + .../Carnivora/Feline/Feline_Memories.xml | 128 ++ .../Carnivora/Feline/Feline_MorphDef.xml | 5 + .../Carnivora/Feline/Feline_Parts.xml | 52 + .../Carnivora/Feline/Felis/Cat/Cat_Full.xml | 78 + .../Feline/Felis/Cat/Cat_MorphDef.xml | 14 + .../Feline/Felis/Cat/Cat_Partial.xml | 34 + .../Carnivora/Feline/Felis/Cat/Cat_Parts.xml | 31 + .../Carnivora/Feline/Felis/Cat/Cat_Tales.xml | 31 + .../Carnivora/Feline/Felis/Felis_Memories.xml | 79 + .../Carnivora/Feline/Felis/Felis_MorphDef.xml | 14 + .../Carnivora/Feline/Felis/Felis_Parts.xml | 73 + .../Pantherine/Leopard/Leopard_Memories.xml | 78 + .../Leopard/Snowleopard_Memories.xml | 78 + .../Pantherine/Panther/Panther_Aspects.xml | 32 + .../Pantherine/Panther/Panther_Full.xml | 78 + .../Pantherine/Panther/Panther_Memories.xml | 54 + .../Pantherine/Panther/Panther_MorphDef.xml | 28 + .../Pantherine/Panther/Panther_Partial.xml | 34 + .../Pantherine/Panther/Panther_Parts.xml | 52 + .../Feline/Pantherine/Pantherine_MorphDef.xml | 18 + .../Feline/Pantherine/Pantherine_Parts.xml | 69 + .../Vulpine/Arctic Fox/ArcticFox_Full.xml | 78 + .../Vulpine/Arctic Fox/ArcticFox_MorphDef.xml | 18 + .../Vulpine/Arctic Fox/ArcticFox_Partial.xml | 34 + .../Vulpine/Arctic Fox/ArcticFox_Parts.xml | 35 + .../Vulpine/Fennec Fox/FennecFox_Full.xml | 78 + .../Vulpine/Fennec Fox/FennecFox_MorphDef.xml | 18 + .../Vulpine/Fennec Fox/FennecFox_Partial.xml | 34 + .../Vulpine/Fennec Fox/FennecFox_Parts.xml | 34 + .../Carnivora/Vulpine/Red Fox/RedFox_Full.xml | 78 + .../Vulpine/Red Fox/RedFox_MorphDef.xml | 18 + .../Vulpine/Red Fox/RedFox_Partial.xml | 34 + .../Vulpine/Red Fox/RedFox_Parts.xml | 34 + .../Carnivora/Vulpine/Vulpine_Backstories.xml | 35 + .../Carnivora/Vulpine/Vulpine_Memories.xml | 154 ++ .../Carnivora/Vulpine/Vulpine_MorphDef.xml | 13 + .../Carnivora/Vulpine/Vulpine_Parts.xml | 130 ++ .../Carnivora/Vulpine/Vulpine_Tales.xml | 16 + .../PawFooted/Exotic/Exotic_MorphDef.xml | 8 + .../Animal/PawFooted/Exotic/Exotic_Parts.xml | 10 + .../PawFooted/Exotic/Raccoon/Raccoon_Full.xml | 78 + .../Exotic/Raccoon/Raccoon_Memories.xml | 129 ++ .../Exotic/Raccoon/Raccoon_MorphDef.xml | 23 + .../Exotic/Raccoon/Raccoon_Partial.xml | 34 + .../Exotic/Raccoon/Raccoon_Parts.xml | 79 + .../PawFooted/Leporid/Hare/Hare_Full.xml | 78 + .../PawFooted/Leporid/Hare/Hare_MorphDef.xml | 19 + .../PawFooted/Leporid/Hare/Hare_Partial.xml | 34 + .../PawFooted/Leporid/Hare/Hare_Parts.xml | 31 + .../PawFooted/Leporid/Leporid_Memories.xml | 154 ++ .../PawFooted/Leporid/Leporid_MorphDef.xml | 13 + .../PawFooted/Leporid/Leporid_Parts.xml | 124 ++ .../Leporid/Snowhare/Snowhare_Full.xml | 78 + .../Leporid/Snowhare/Snowhare_MorphDef.xml | 18 + .../Leporid/Snowhare/Snowhare_Partial.xml | 34 + .../Leporid/Snowhare/Snowhare_Parts.xml | 32 + .../Animal/PawFooted/PawFooted_MorphDef.xml | 6 + .../Animal/PawFooted/PawFooted_Parts.xml | 28 + .../Arboreal/AlphaBeaver/Alphabeaver_Full.xml | 78 + .../AlphaBeaver/Alphabeaver_Memories.xml | 126 ++ .../AlphaBeaver/Alphabeaver_MorphDef.xml | 22 + .../AlphaBeaver/Alphabeaver_Partial.xml | 34 + .../AlphaBeaver/Alphabeaver_Parts.xml | 82 + .../Rodent/Arboreal/Arboreal_MorphDef.xml | 8 + .../Rodent/Arboreal/Arboreal_Parts.xml | 57 + .../Arboreal/Capybara/Capybara_Full.xml | 78 + .../Arboreal/Capybara/Capybara_Memories.xml | 54 + .../Arboreal/Capybara/Capybara_MorphDef.xml | 22 + .../Arboreal/Capybara/Capybara_Partial.xml | 34 + .../Arboreal/Capybara/Capybara_Parts.xml | 30 + .../Arboreal/Squirrel/Squirrel_Backstory.xml | 19 + .../Arboreal/Squirrel/Squirrel_Full.xml | 78 + .../Arboreal/Squirrel/Squirrel_Memories.xml | 133 ++ .../Arboreal/Squirrel/Squirrel_MorphDef.xml | 22 + .../Arboreal/Squirrel/Squirrel_Partial.xml | 34 + .../Arboreal/Squirrel/Squirrel_Parts.xml | 51 + .../PawFooted/Rodent/Boomrat/Boomrat_Full.xml | 78 + .../Rodent/Boomrat/Boomrat_Memories.xml | 128 ++ .../Rodent/Boomrat/Boomrat_MorphDef.xml | 23 + .../Rodent/Boomrat/Boomrat_Partial.xml | 34 + .../Rodent/Boomrat/Boomrat_Parts.xml | 72 + .../Rodent/Cerebral/Cerebral_MorphDef.xml | 8 + .../Rodent/Cerebral/Cerebral_Parts.xml | 34 + .../Cerebral/Chinchilla/Chinchilla_Full.xml | 78 + .../Chinchilla/Chinchilla_Memories.xml | 118 ++ .../Chinchilla/Chinchilla_MorphDef.xml | 22 + .../Chinchilla/Chinchilla_Partial.xml | 34 + .../Cerebral/Chinchilla/Chinchilla_Parts.xml | 71 + .../Cerebral/GunneaPig/GuineaPig_Full.xml | 78 + .../Cerebral/GunneaPig/GuineaPig_Memories.xml | 152 ++ .../Cerebral/GunneaPig/GuineaPig_MorphDef.xml | 24 + .../Cerebral/GunneaPig/GuineaPig_Partial.xml | 34 + .../Cerebral/GunneaPig/GuineaPig_Parts.xml | 54 + .../Cerebral/GunneaPig/GuineaPig_Tales.xml | 60 + .../Rodent/Cerebral/Rat/Rat_Full.xml | 78 + .../Rodent/Cerebral/Rat/Rat_Memories.xml | 127 ++ .../Rodent/Cerebral/Rat/Rat_MorphDef.xml | 23 + .../Rodent/Cerebral/Rat/Rat_Partial.xml | 34 + .../Rodent/Cerebral/Rat/Rat_Parts.xml | 70 + .../Rodent/Cerebral/Rat/Rat_Tales.xml | 60 + .../PawFooted/Rodent/Rodent_Memories.xml | 128 ++ .../PawFooted/Rodent/Rodent_MorphDef.xml | 8 + .../Animal/PawFooted/Rodent/Rodent_Parts.xml | 45 + .../Ursine/Grizzly Bear/GrizzlyBear_Full.xml | 78 + .../Grizzly Bear/GrizzlyBear_MorphDef.xml | 18 + .../Grizzly Bear/GrizzlyBear_Partial.xml | 34 + .../Ursine/Grizzly Bear/GrizzlyBear_Parts.xml | 31 + .../Ursine/Polar Bear/PolarBear_Full.xml | 78 + .../Ursine/Polar Bear/PolarBear_Memories.xml | 27 + .../Ursine/Polar Bear/PolarBear_MorphDef.xml | 17 + .../Ursine/Polar Bear/PolarBear_Partial.xml | 34 + .../Ursine/Polar Bear/PolarBear_Parts.xml | 32 + .../PawFooted/Ursine/Ursine_Memories.xml | 155 ++ .../PawFooted/Ursine/Ursine_MorphDef.xml | 13 + .../Animal/PawFooted/Ursine/Ursine_Parts.xml | 153 ++ .../Animal/PawFooted/Ursine/Ursine_Tales.xml | 31 + .../Reptile/Lacertilia/Iguana/Iguana_Full.xml | 78 + .../Lacertilia/Iguana/Iguana_Memories.xml | 79 + .../Lacertilia/Iguana/Iguana_MorphDef.xml | 23 + .../Lacertilia/Iguana/Iguana_Partial.xml | 34 + .../Lacertilia/Iguana/Iguana_Parts.xml | 63 + .../Lacertilia/Iguana/Iguana_Tales.xml | 3 + .../Lacertilia/Lacertilia_Memories.xml | 53 + .../Lacertilia/Lacertilia_MorphDef.xml | 5 + .../Reptile/Lacertilia/Lacertilia_Parts.xml | 58 + .../Reptile/Ophidia/Cobra/Cobra_Full.xml | 78 + .../Reptile/Ophidia/Cobra/Cobra_Hybrid.xml | 623 +++++++ .../Reptile/Ophidia/Cobra/Cobra_Memories.xml | 54 + .../Reptile/Ophidia/Cobra/Cobra_MorphDef.xml | 28 + .../Reptile/Ophidia/Cobra/Cobra_Partial.xml | 34 + .../Reptile/Ophidia/Cobra/Cobra_Parts.xml | 177 ++ .../Reptile/Ophidia/Cobra/Cobra_Tales.xml | 3 + .../Reptile/Ophidia/Ophidia_Memories.xml | 78 + .../Reptile/Ophidia/Orphidia_MorphDef.xml | 5 + .../Animal/Reptile/Ophidia/Orphidia_Parts.xml | 64 + .../Animal/Reptile/Reptile_MorphDef.xml | 14 + .../Animal/Reptile/Reptile_Parts.xml | 60 + .../Testudinidae/Testudinidae_Memories.xml | 78 + .../Testudinidae/Testudinidae_MorphDef.xml | 5 + .../Testudinidae/Testudinidae_Parts.xml | 131 ++ .../Testudinidae/Tortoise/Tortoise_Full.xml | 78 + .../Tortoise/Tortoise_MorphDef.xml | 23 + .../Tortoise/Tortoise_Partial.xml | 34 + .../Testudinidae/Tortoise/Tortoise_Parts.xml | 28 + .../Tortoise/Turtoise_Memories.xml | 54 + .../Simian/Monkeys/Monkey/Monkey_Full.xml | 78 + .../Simian/Monkeys/Monkey/Monkey_Memories.xml | 54 + .../Simian/Monkeys/Monkey/Monkey_MorphDef.xml | 22 + .../Simian/Monkeys/Monkey/Monkey_Partial.xml | 34 + .../Simian/Monkeys/Monkey/Monkey_Parts.xml | 69 + .../Simian/Monkeys/Monkeys_MorphDef.xml | 5 + .../Animal/Simian/Monkeys/Monkeys_Parts.xml | 10 + .../Animal/Simian/Simian_Memories.xml | 128 ++ .../Animal/Simian/Simian_MorphDef.xml | 9 + .../Animal/Simian/Simian_Parts.xml | 75 + .../EvenToedUngulate/Bovid/Bovid_Memories.xml | 84 + .../EvenToedUngulate/Bovid/Bovid_MorphDef.xml | 6 + .../EvenToedUngulate/Bovid/Bovid_Parts.xml | 127 ++ .../DomesticatedBovid/Cow/Cow_Backstories.xml | 23 + .../Bovid/DomesticatedBovid/Cow/Cow_Full.xml | 78 + .../DomesticatedBovid/Cow/Cow_Memories.xml | 141 ++ .../DomesticatedBovid/Cow/Cow_MorphDef.xml | 23 + .../DomesticatedBovid/Cow/Cow_Partial.xml | 34 + .../Bovid/DomesticatedBovid/Cow/Cow_Parts.xml | 76 + .../Bovid/DomesticatedBovid/Cow/Cow_Tales.xml | 46 + .../DomesticatedBovid_MorphDef.xml | 8 + .../DomesticatedBovid_Parts.xml | 39 + .../Muffalo/Muffalo_Full.xml | 78 + .../Muffalo/Muffalo_Memories.xml | 79 + .../Muffalo/Muffalo_MorphDef.xml | 25 + .../Muffalo/Muffalo_Partial.xml | 34 + .../Muffalo/Muffalo_Parts.xml | 132 ++ .../Muffalo/Muffalo_Tales.xml | 14 + .../Bovid/DomesticatedBovid/Yak/Yak_Full.xml | 78 + .../DomesticatedBovid/Yak/Yak_Memories.xml | 53 + .../DomesticatedBovid/Yak/Yak_MorphDef.xml | 24 + .../DomesticatedBovid/Yak/Yak_Partial.xml | 34 + .../Bovid/DomesticatedBovid/Yak/Yak_Parts.xml | 79 + .../Bovid/DomesticatedBovid/Yak/Yak_Tales.xml | 14 + .../Bovid/WildBovid/Bison/Bison_Full.xml | 78 + .../Bovid/WildBovid/Bison/Bison_Memories.xml | 53 + .../Bovid/WildBovid/Bison/Bison_MorphDef.xml | 23 + .../Bovid/WildBovid/Bison/Bison_Partial.xml | 34 + .../Bovid/WildBovid/Bison/Bison_Parts.xml | 148 ++ .../Bovid/WildBovid/Bison/Bison_Tales.xml | 14 + .../Bovid/WildBovid/WildBovid_MorphDef.xml | 8 + .../Bovid/WildBovid/WildBovid_Parts.xml | 62 + .../Camelid/Alpaca/Alpaca_Full.xml | 78 + .../Camelid/Alpaca/Alpaca_Memories.xml | 127 ++ .../Camelid/Alpaca/Alpaca_MorphDef.xml | 25 + .../Camelid/Alpaca/Alpaca_Partial.xml | 34 + .../Camelid/Alpaca/Alpaca_Parts.xml | 229 +++ .../Camelid/Alpaca/Alpaca_Spit.xml | 140 ++ .../Camelid/Alpaca/Alpaca_Tales.xml | 30 + .../Camelid/Camelid_Memories.xml | 78 + .../Camelid/Camelid_MorphDef.xml | 9 + .../Camelid/Camelid_Parts.xml | 61 + .../Camelid/Dromedary/Dromedary_Full.xml | 78 + .../Camelid/Dromedary/Dromedary_Memories.xml | 44 + .../Camelid/Dromedary/Dromedary_MorphDef.xml | 23 + .../Camelid/Dromedary/Dromedary_Partial.xml | 34 + .../Camelid/Dromedary/Dromedary_Parts.xml | 47 + .../Caprid/Caprid_MorphDef.xml | 9 + .../EvenToedUngulate/Caprid/Caprid_Parts.xml | 143 ++ .../Caprid/Goat/Goat_Backstories.xml | 44 + .../Caprid/Goat/Goat_Full.xml | 78 + .../Caprid/Goat/Goat_Memories.xml | 53 + .../Caprid/Goat/Goat_MorphDef.xml | 23 + .../Caprid/Goat/Goat_Partial.xml | 34 + .../Caprid/Goat/Goat_Parts.xml | 84 + .../Caprid/Goat/Goat_Tales.xml | 30 + .../Caprid/Ibex/Ibex_Full.xml | 78 + .../Caprid/Ibex/Ibex_Memories.xml | 119 ++ .../Caprid/Ibex/Ibex_MorphDef.xml | 26 + .../Caprid/Ibex/Ibex_Partial.xml | 34 + .../Caprid/Ibex/Ibex_Parts.xml | 85 + .../Caprid/Sheep/Sheep_Backstories.xml | 23 + .../Caprid/Sheep/Sheep_Full.xml | 78 + .../Caprid/Sheep/Sheep_Memories.xml | 160 ++ .../Caprid/Sheep/Sheep_MorphDef.xml | 22 + .../Caprid/Sheep/Sheep_Partial.xml | 34 + .../Caprid/Sheep/Sheep_Parts.xml | 192 ++ .../Caprid/Sheep/Sheep_Tales.xml | 46 + .../Cervid/BigCervid/BigCervid_MorphDef.xml | 8 + .../Cervid/BigCervid/BigCervid_Parts.xml | 41 + .../Cervid/BigCervid/Caribou/Caribou_Full.xml | 78 + .../BigCervid/Caribou/Caribou_Memories.xml | 144 ++ .../BigCervid/Caribou/Caribou_MorphDef.xml | 22 + .../BigCervid/Caribou/Caribou_Partial.xml | 34 + .../BigCervid/Caribou/Caribou_Parts.xml | 104 ++ .../Cervid/BigCervid/Elk/Elk_Full.xml | 78 + .../Cervid/BigCervid/Elk/Elk_Memories.xml | 159 ++ .../Cervid/BigCervid/Elk/Elk_MorphDef.xml | 22 + .../Cervid/BigCervid/Elk/Elk_Partial.xml | 34 + .../Cervid/BigCervid/Elk/Elk_Parts.xml | 100 ++ .../Cervid/Boomalope/Boomalope_Full.xml | 78 + .../Cervid/Boomalope/Boomalope_Memories.xml | 134 ++ .../Cervid/Boomalope/Boomalope_MorphDef.xml | 25 + .../Cervid/Boomalope/Boomalope_Partial.xml | 34 + .../Cervid/Boomalope/Boomalope_Parts.xml | 108 ++ .../Cervid/Boomalope/Boomalope_Tales.xml | 29 + .../Cervid/Cervid_MorphDef.xml | 6 + .../EvenToedUngulate/Cervid/Cervid_Parts.xml | 84 + .../Cervid/SmallCervid/Deer/Deer_Full.xml | 78 + .../Cervid/SmallCervid/Deer/Deer_Memories.xml | 160 ++ .../Cervid/SmallCervid/Deer/Deer_MorphDef.xml | 23 + .../Cervid/SmallCervid/Deer/Deer_Partial.xml | 34 + .../Cervid/SmallCervid/Deer/Deer_Parts.xml | 113 ++ .../Cervid/SmallCervid/Deer/Deer_Tales.xml | 31 + .../SmallCervid/Gazelle/Gazelle_Full.xml | 78 + .../SmallCervid/Gazelle/Gazelle_Memories.xml | 144 ++ .../SmallCervid/Gazelle/Gazelle_MorphDef.xml | 23 + .../SmallCervid/Gazelle/Gazelle_Partial.xml | 34 + .../SmallCervid/Gazelle/Gazelle_Parts.xml | 101 ++ .../SmallCervid/SmallCervid_MorphDef.xml | 8 + .../Cervid/SmallCervid/SmallCervid_Parts.xml | 73 + .../EvenToedUngulate_MorphDef.xml | 5 + .../EvenToedUngulate_Parts.xml | 13 + .../Suid/Boar/Boar_Backstories.xml | 23 + .../EvenToedUngulate/Suid/Boar/Boar_Full.xml | 78 + .../Suid/Boar/Boar_Memories.xml | 53 + .../Suid/Boar/Boar_MorphDef.xml | 25 + .../Suid/Boar/Boar_Partial.xml | 34 + .../EvenToedUngulate/Suid/Boar/Boar_Parts.xml | 47 + .../EvenToedUngulate/Suid/Boar/Boar_Tales.xml | 18 + .../Suid/Pig/Pig_Backstories.xml | 23 + .../EvenToedUngulate/Suid/Pig/Pig_Full.xml | 78 + .../Suid/Pig/Pig_Memories.xml | 53 + .../Suid/Pig/Pig_MorphDef.xml | 22 + .../EvenToedUngulate/Suid/Pig/Pig_Partial.xml | 34 + .../EvenToedUngulate/Suid/Pig/Pig_Parts.xml | 47 + .../EvenToedUngulate/Suid/Pig/Pig_Tales.xml | 14 + .../EvenToedUngulate/Suid/Suid_MorphDef.xml | 8 + .../EvenToedUngulate/Suid/Suid_Parts.xml | 125 ++ .../Equine/Donkey/Donkey_Backstories.xml | 23 + .../Equine/Donkey/Donkey_Full.xml | 78 + .../Equine/Donkey/Donkey_Memories.xml | 53 + .../Equine/Donkey/Donkey_MorphDef.xml | 24 + .../Equine/Donkey/Donkey_Partial.xml | 34 + .../Equine/Donkey/Donkey_Parts.xml | 47 + .../Equine/Equine_Memories.xml | 96 + .../Equine/Equine_MorphDef.xml | 9 + .../OddToedUngulate/Equine/Equine_Parts.xml | 58 + .../Equine/Horse/Horse_Backstories.xml | 23 + .../Equine/Horse/Horse_Full.xml | 78 + .../Equine/Horse/Horse_Memories.xml | 54 + .../Equine/Horse/Horse_MorphDef.xml | 23 + .../Equine/Horse/Horse_Partial.xml | 34 + .../Equine/Horse/Horse_Parts.xml | 52 + .../OddToedUngulate_MorphDef.xml | 5 + .../OddToedUngulate/OddToedUngulate_Parts.xml | 10 + .../Animal/Ungulate/Ungulate_MorphDef.xml | 6 + .../Animal/Ungulate/Ungulate_Parts.xml | 39 + .../COMBINATIONS/Combination_Parts.xml | 123 ++ .../MorphsAndMutationDefs/Chao/Chao_Full.xml | 83 + .../Chao/Chao_MorphDefs.xml | 32 + .../Chao/Chao_Partial.xml | 32 + .../Chao/Chao_Reaction.xml | 18 + .../DefCategories/MorphCategories.xml | 72 + .../DefCategories/MutationCategories.xml | 65 + .../MorphsAndMutationDefs/MutationBase.xml | 36 + .../ObsoleteCompatibilityAbstracts.xml | 29 + .../Shared/ArmMutations.xml | 254 +++ .../Shared/EyeMutations.xml | 195 ++ .../Shared/FootMutations.xml | 1025 +++++++++++ .../Shared/GenericMutations.xml | 514 ++++++ .../Shared/HandMutations.xml | 1058 +++++++++++ .../Shared/HornMutations.xml | 40 + .../Shared/LegMutations.xml | 418 +++++ .../Shared/MiscMutations.xml | 174 ++ .../Shared/OrganMutations.xml | 198 ++ .../Shared/SkinMutations.xml | 697 +++++++ .../Shared/SpineMutations.xml | 202 +++ .../Shared/TorsoMutations.xml | 186 ++ 1.5/Defs/MutagenDealer.xml | 320 ++++ 1.5/Defs/Mutagens/Bases.xml | 51 + 1.5/Defs/Mutagens/ChaoticMutagens.xml | 119 ++ 1.5/Defs/Mutagens/defaultMutagen.xml | 51 + 1.5/Defs/Needs/SapientAnimals.xml | 19 + 1.5/Defs/PawnColumnDefs.xml | 11 + 1.5/Defs/PawnKinds/Example.xml | 39 + 1.5/Defs/PawnKinds/Pawnkinds_Raiders.xml | 239 +++ 1.5/Defs/Pawnmorpher_Research.xml | 268 +++ 1.5/Defs/PrisonerInteractionModes.xml | 8 + 1.5/Defs/Races/Chaocombo.xml | 193 ++ 1.5/Defs/Races/Chaocreatures/Bases.xml | 128 ++ 1.5/Defs/Races/Chaocreatures/Chaoboar.xml | 195 ++ 1.5/Defs/Races/Chaocreatures/Chaoboom.xml | 194 ++ 1.5/Defs/Races/Chaocreatures/Chaocow.xml | 202 +++ 1.5/Defs/Races/Chaocreatures/Chaodino.xml | 190 ++ 1.5/Defs/Races/Chaocreatures/Chaofox.xml | 180 ++ .../Races/Chaocreatures/ChaofusionRhino.xml | 215 +++ 1.5/Defs/Races/Chaocreatures/ChaomeldCow.xml | 170 ++ 1.5/Defs/Races/Chaocreatures/ChaomeldDog.xml | 163 ++ .../Races/Chaocreatures/ChaomeldDragon.xml | 215 +++ .../Races/Chaocreatures/Chaomorph Passes.xml | 13 + 1.5/Defs/Races/Chaocreatures/Chaothrumbo.xml | 154 ++ .../Chaocreatures/Corpse CategoryDef.xml | 7 + 1.5/Defs/Races/Chaocreatures/FleshTypeDef.xml | 115 ++ 1.5/Defs/Races/Chaocreatures/LeatherDef.xml | 23 + 1.5/Defs/Races/ChaomorphBodies.xml | 1599 +++++++++++++++++ 1.5/Defs/RecipeDefs/Misc.xml | 18 + 1.5/Defs/Recipes/AspectInjector.xml | 50 + 1.5/Defs/Recipes/Recipes_Genekits.xml | 35 + 1.5/Defs/Recipes/Recipes_SlurryCrafting.xml | 324 ++++ 1.5/Defs/Recipes/Recipes_Surgery.xml | 32 + 1.5/Defs/Recipes/Silk.xml | 177 ++ 1.5/Defs/Recipes/Surgeries.xml | 54 + 1.5/Defs/Research/Tabs.xml | 6 + .../RulePacks/CoveringMutationLogPacks.xml | 53 + .../RulePacks/FormerHumans/FH_AnimalChats.xml | 75 + .../FormerHumans/FH_RecruitAttempts.xml | 46 + .../RulePacks/FormerHumans/FH_Training.xml | 31 + 1.5/Defs/RulePacks/MutationCauseRulePacks.xml | 16 + 1.5/Defs/RulePacks/MutationPackBases.xml | 100 ++ 1.5/Defs/SapienceStates/FormerHumans.xml | 28 + 1.5/Defs/ScenParts_Pawnmorpher.xml | 20 + 1.5/Defs/StatDefs/Categories.xml | 15 + 1.5/Defs/StatDefs/Combat.xml | 29 + 1.5/Defs/StatDefs/FoodStats.xml | 27 + 1.5/Defs/StatDefs/MutagenStats.xml | 121 ++ 1.5/Defs/StatDefs/SapientAnimals.xml | 56 + 1.5/Defs/StatDefs/Utils.xml | 35 + 1.5/Defs/StyleDefs/BeardDefs.xml | 8 + 1.5/Defs/StyleDefs/HairDefs.xml | 9 + .../Mutations/TaleDefs_ArmMutation.xml | 17 + .../Mutations/TaleDefs_EarMutations.xml | 46 + .../Mutations/TaleDefs_FootMutations.xml | 85 + .../Mutations/TaleDefs_HandMutations.xml | 43 + .../Mutations/TaleDefs_LegMutations.xml | 35 + .../Mutations/TaleDefs_MutationBase.xml | 17 + .../Mutations/TaleDefs_MuzzleMutations.xml | 51 + .../Mutations/TaleDefs_SkinMutations.xml | 33 + .../Mutations/TaleDefs_TailMutations.xml | 36 + 1.5/Defs/TaleDefs/TaleDefs_Feralization.xml | 172 ++ 1.5/Defs/TaleDefs/TaleDefs_Incidents.xml | 34 + 1.5/Defs/Terrain/Mutagenics.xml | 269 +++ 1.5/Defs/ThingDefs_Buildings/Genebank.xml | 46 + .../ThingDefs_Buildings/GenebankAdvanced.xml | 46 + 1.5/Defs/ThingDefs_Buildings/InjectorLab.xml | 77 + .../ThingDefs_Buildings/MutagenCentrifuge.xml | 79 + .../ThingDefs_Buildings/MutagenChamberNew.xml | 134 ++ 1.5/Defs/ThingDefs_Buildings/MutagenLab.xml | 95 + 1.5/Defs/ThingDefs_Buildings/MutagenTank.xml | 74 + .../ThingDefs_Buildings/MutagenicShip.xml | 71 + .../ThingDefs_Buildings/MutationSequencer.xml | 69 + 1.5/Defs/ThingDefs_Buildings/PipenetDef.xml | 29 + 1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml | 80 + .../ThingDefs_Buildings/SlurryDecanner.xml | 80 + 1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml | 83 + 1.5/Defs/ThingDefs_Misc/Filth_Slurry.xml | 30 + .../MutagenicPlantsDecorative.xml | 321 ++++ .../MutagenicPlantsProducing.xml | 190 ++ .../ThingDefs_Plants/MutantPlantProducts.xml | 134 ++ 1.5/Defs/Things/AnimalGenome.xml | 67 + 1.5/Defs/Things/ExperimentalWeapons.xml | 17 + 1.5/Defs/Things/Morph Products.xml | 123 ++ 1.5/Defs/Things/Motes.xml | 14 + 1.5/Defs/Things/Mutagenic_Projectiles.xml | 24 + 1.5/Defs/Things/Silk.xml | 84 + 1.5/Defs/Things/Skyfallers.xml | 31 + 1.5/Defs/Things/TFWeapons.xml | 525 ++++++ 1.5/Defs/Things/TFWeapons_Melee.xml | 113 ++ 1.5/Defs/Things/TFWeapons_Special.xml | 116 ++ 1.5/Defs/Things/TransformerIED.xml | 32 + 1.5/Defs/ThinkTrees/AnimalisticPawns.xml | 198 ++ 1.5/Defs/ThinkTrees/SapientAnimals.xml | 95 + .../Thoughts/AnimalisticThoughts/Bases.xml | 6 + .../Thoughts/AnimalisticThoughts/Food.xml | 112 ++ .../AnimalisticThoughts/NakedThoughts.xml | 61 + .../AnimalisticThoughts/Naked_Nudist.xml | 35 + .../AnimalisticThoughts/Persistant.xml | 231 +++ 1.5/Defs/Thoughts/ChaothrumboThoughts.xml | 65 + 1.5/Defs/Thoughts/FormerHumanJoinThoughts.xml | 121 ++ 1.5/Defs/Thoughts/GeneralMutationThoughts.xml | 184 ++ .../Thoughts/GroupThoughts/HerdThoughts.xml | 166 ++ .../Thoughts/GroupThoughts/PackThoughts.xml | 166 ++ 1.5/Defs/Thoughts/JealousThought.xml | 17 + 1.5/Defs/Thoughts/Memories_MutationBase.xml | 99 + .../Thoughts/MergedPawns/FH_Persistent.xml | 180 ++ 1.5/Defs/Thoughts/MiscMutationMemories.xml | 285 +++ .../DefaultMorphReactions.xml | 23 + .../RevertToHumanThoughts.xml | 19 + .../Thoughts/MutationTraitsSocialThoughts.xml | 63 + .../Thoughts/Pawnmorpher_DefaultReactions.xml | 149 ++ .../Thoughts/Pawnmorpher_Merge_Thoughts.xml | 28 + .../Pawnmorpher_Perm_feral_Thoughts.xml | 29 + .../Pawnmorpher_Reversion_Thoughts.xml | 25 + .../Thoughts/Pawnmorpher_TF_Reactions.xml | 174 ++ 1.5/Defs/Thoughts/PreceptThoughts.xml | 320 ++++ .../SapientAnimalThoughts/AspectRelated.xml | 32 + .../SapientAnimalThoughts/FH_Bases.xml | 6 + .../SapientAnimalThoughts/FH_BondedMaster.xml | 32 + .../FH_BondedNonMaster.xml | 31 + .../SapientAnimalThoughts/FH_FeralPills.xml | 159 ++ .../SapientAnimalThoughts/FH_Food.xml | 112 ++ .../SapientAnimalThoughts/FH_FoodThoughts.xml | 140 ++ .../FH_HuntingThoughts.xml | 99 + .../SapientAnimalThoughts/FH_Interactions.xml | 81 + .../FH_NakedThoughts.xml | 146 ++ .../SapientAnimalThoughts/FH_Naked_Nudist.xml | 134 ++ .../SapientAnimalThoughts/FH_Pals.xml | 59 + .../SapientAnimalThoughts/FH_Persistent.xml | 180 ++ .../SapientAnimalThoughts/MiscThoughts.xml | 50 + 1.5/Defs/Thoughts/TfWitnessThoughts.xml | 148 ++ 1.5/Defs/Thoughts/Thoughts_Bases.xml | 31 + 1.5/Defs/Thoughts/Thoughts_BodyPurist.xml | 43 + .../Thoughts_EtherStates_Examples.xml | 31 + 1.5/Defs/Thoughts/Thoughts_ExAnimal.xml | 69 + 1.5/Defs/Thoughts/Thoughts_ExMerged.xml | 170 ++ .../Thoughts/Thoughts_ExoticProduction.xml | 40 + 1.5/Defs/Thoughts/Thoughts_Food.xml | 83 + 1.5/Defs/Thoughts/Thoughts_MorphGroups.xml | 5 + .../Thoughts/Thoughts_MutationAffinity.xml | 59 + 1.5/Defs/Thoughts/Thoughts_Production.xml | 197 ++ 1.5/Defs/Thoughts/VeneratedAnimal.xml | 187 ++ 1.5/Defs/ToolCapacityDefs.xml | 16 + 1.5/Defs/Traits/HybridTraits.xml | 22 + 1.5/Defs/Traits/MutationTraits.xml | 19 + 1.5/Defs/Traits/Prideful(MaybeUnused).xml | 13 + 1.5/Defs/UpdateFeatures.xml.hidden | 19 + .../WorkGiversMachineOperation.xml | 47 + .../WorkGiversPawnInteraction.xml | 29 + .../Patches/AddToMorphs.xml | 68 + .../Defs/Ammo/40x46mmGrenade.xml | 75 + .../CombatExtended/Defs/Ammo/68Mutagel.xml | 107 ++ 1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml | 85 + .../CombatExtended/Defs/Ammo/GreatArrows.xml | 69 + .../Defs/AmmoCategories_Mutagenic.xml | 22 + .../Patches/Addon_CombatExtendedAnimals.xml | 1216 +++++++++++++ .../Patches/Addon_CombatExtendedFactions.xml | 12 + .../Patches/Addon_CombatExtendedMutations.xml | 1117 ++++++++++++ .../Patches/Addon_CombatExtendedPawnKinds.xml | 445 +++++ .../Patches/Addon_CombatExtendedRaces.xml | 61 + .../Patches/Addon_CombatExtendedResources.xml | 58 + .../Patches/Addon_CombatExtendedScenarios.xml | 29 + .../Addon_CombatExtendedWeaponsMelee.xml | 267 +++ .../Addon_CombatExtendedWeaponsRanged.xml | 642 +++++++ .../Patches/Saddles_Chaocreatures.xml | 137 ++ 1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml | 161 ++ 1.5/Mods/Ideology/Defs/Issues.xml | 32 + .../Ideology/Defs/Precepts_FormerHumans.xml | 129 ++ 1.5/Mods/Ideology/Defs/Precepts_Mutation.xml | 133 ++ 1.5/Mods/Ideology/Defs/Precepts_Reversion.xml | 62 + 1.5/Mods/Ideology/Defs/Precepts_Sapience.xml | 53 + .../Ideology/Defs/Precepts_Transformation.xml | 90 + .../Defs/Rituals/AttachableOutcomeEffects.xml | 20 + .../Thoughts/FH_OthersTfdPreceptThoughts.xml | 188 ++ .../Defs/Thoughts/FH_PreceptThoughts.xml | 342 ++++ .../Thoughts/Social/SocialPreceptThoughts.xml | 122 ++ 1.5/Mods/Ideology/Patches/AddPlantComps.xml | 26 + .../Patches/BanDryadsFromMutations.xml | 10 + 1.5/Mods/Ideology/Patches/PreceptPatches.xml | 58 + 1.5/Mods/Martens/Defs/Aspects.xml | 21 + 1.5/Mods/Martens/Defs/Marten/Marten_Full.xml | 88 + .../Martens/Defs/Marten/Marten_Memories.xml | 57 + .../Martens/Defs/Marten/Marten_MorphDef.xml | 42 + .../Martens/Defs/Marten/Marten_Partial.xml | 34 + 1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml | 168 ++ 1.5/Mods/Martens/Defs/Races.xml | 168 ++ 1.5/Mods/Martens/Patches/Addpaws.xml | 8 + 1.5/Mods/RemoteTech/Defs/Things.xml | 106 ++ .../RimCuisine2/Patches/Addon_RimCuisine2.xml | 29 + 1.5/Mods/Royalty/Patches/TransferPsychic.xml | 14 + 1.5/Mods/VBE/Defs/Backgrounds.xml | 9 + 1.5/Mods/VCE/Defs/Recipes.xml | 54 + 1.5/Mods/VCE/Defs/Things.xml | 58 + 1.5/Mods/VCE/Defs/Thoughts.xml | 31 + 1.5/Mods/VCE/Patches/Patch.xml | 10 + 1.5/Mods/VEF/Defs/ModDef.xml | 13 + .../Defs/Leopardine/Leopard/Leopard_Full.xml | 78 + .../Leopardine/Leopard/Leopard_Memories.xml | 30 + .../Leopardine/Leopard/Leopard_MorphDef.xml | 17 + .../Leopardine/Leopard/Leopard_Partial.xml | 34 + .../Defs/Leopardine/Leopard/Leopard_Parts.xml | 19 + .../Defs/Leopardine/Leopardine_Memories.xml | 29 + .../Defs/Leopardine/Leopardine_MorphDef.xml | 10 + .../Defs/Leopardine/Leopardine_Parts.xml | 41 + .../SnowLeopard/SnowLeopard_Full.xml | 78 + .../SnowLeopard/SnowLeopard_Memories.xml | 28 + .../SnowLeopard/SnowLeopard_MorphDef.xml | 20 + .../SnowLeopard/SnowLeopard_Partial.xml | 34 + .../SnowLeopard/SnowLeopard_Parts.xml | 19 + .../Patches/zLoadLast_Addon_Leopard.xml | 40 + .../Addon_FixVanillaGeneticsExpanded.xml | 19 + 1.5/Patches/Addon_GasTrapsAndShells.xml | 147 ++ 1.5/Patches/Core/Core_AddSurgeries.xml | 15 + 1.5/Patches/Core/Core_AnimalThinkTree.xml | 150 ++ 1.5/Patches/Core/Core_FactionPatches.xml | 35 + .../Core/Core_FixHarmonizerThought.xml | 13 + 1.5/Patches/Core/Core_FormerHumanAddon.xml | 21 + 1.5/Patches/Core/Core_KillNarrowHeads.xml | 20 + 1.5/Patches/Core/Core_MutagenicInfections.xml | 8 + 1.5/Patches/Core/Core_StatWorkerPatches.xml | 8 + 1.5/Patches/Core_FixEmpireHostility.xml | 14 + 1.5/Patches/Core_HumanColorChannels.xml | 16 + 1.5/Patches/Core_HumanHedifGraphics.xml | 841 +++++++++ 1.5/Patches/ModAddons/LeeniTest.xml | 31 + About/About.xml | 1 + 782 files changed, 70757 insertions(+) create mode 100644 1.5/Defs/AnimalClassDefs/AnimalClasses.xml create mode 100644 1.5/Defs/Aspects/Aspects_Coloration.xml create mode 100644 1.5/Defs/Aspects/Aspects_FormerHuman.xml create mode 100644 1.5/Defs/Aspects/Aspects_Merged.xml create mode 100644 1.5/Defs/Aspects/Aspects_Misc.xml create mode 100644 1.5/Defs/Aspects/Aspects_Prideful.xml create mode 100644 1.5/Defs/Aspects/Aspects_Production.xml create mode 100644 1.5/Defs/BackstoryDefs/Backstories_FormerHuman.xml create mode 100644 1.5/Defs/BackstoryDefs/Backstories_General.xml create mode 100644 1.5/Defs/BackstoryDefs/Backstories_Special.xml create mode 100644 1.5/Defs/BodyPartDefs/CustomTailDef.xml create mode 100644 1.5/Defs/CategoryDefs.xml create mode 100644 1.5/Defs/ComboRules.xml create mode 100644 1.5/Defs/ConceptDefs/Concepts.xml create mode 100644 1.5/Defs/DamageDefs/Damages_Mutagenic.xml create mode 100644 1.5/Defs/DamageDefs/Damages_MutagenicArrow.xml create mode 100644 1.5/Defs/DamageDefs/Damages_Special.xml create mode 100644 1.5/Defs/Designations/DesignationDefs.xml create mode 100644 1.5/Defs/Drugs/AspectInjectors.xml create mode 100644 1.5/Defs/Drugs/Drugs.xml create mode 100644 1.5/Defs/Drugs/Drugs_Antigen.xml create mode 100644 1.5/Defs/Drugs/Drugs_Bases.xml create mode 100644 1.5/Defs/Drugs/Drugs_Depricated.xml create mode 100644 1.5/Defs/Drugs/Drugs_Genekits.xml create mode 100644 1.5/Defs/Drugs/Drugs_Injectors.xml create mode 100644 1.5/Defs/Drugs/Drugs_MechaniteSlurry.xml create mode 100644 1.5/Defs/Drugs/Drugs_Pills.xml create mode 100644 1.5/Defs/Drugs/Drugs_Reverter.xml create mode 100644 1.5/Defs/Drugs/Drugs_TransformerSerums.xml create mode 100644 1.5/Defs/Drugs_MutagenicMechSerums.xml create mode 100644 1.5/Defs/Factions/FactionDefs.xml create mode 100644 1.5/Defs/Factions/Factions_Player.xml create mode 100644 1.5/Defs/Factions/Factions_Test.xml create mode 100644 1.5/Defs/Groups/Groups_Core.xml create mode 100644 1.5/Defs/Groups/Groups_Herd.xml create mode 100644 1.5/Defs/Groups/Groups_Pack.xml create mode 100644 1.5/Defs/Hediffs/Deprecated/Depreciated_Diseases.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_Abilities.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_Bases.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_Drug.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_ExperimentalInjector.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_FormerHuman.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_Misc.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_MutaGunTf.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_MutagenicBuildups.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_SapiostoreMesh.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_TransformationParalysis.xml create mode 100644 1.5/Defs/Hediffs/Hediffs_UnknownStatus.xml create mode 100644 1.5/Defs/Hediffs/MutagenicDiseases.xml create mode 100644 1.5/Defs/Hediffs/MutagenicInfection.xml create mode 100644 1.5/Defs/HistoryEventDefs/HistoryEventDefs.xml create mode 100644 1.5/Defs/Incidents/MutagenicDiseasesIncidents.xml create mode 100644 1.5/Defs/Incidents/MutagenicLeak.xml create mode 100644 1.5/Defs/Incidents/MutagenicShipPartcrash.xml create mode 100644 1.5/Defs/Incidents/MutagenicStorm.xml create mode 100644 1.5/Defs/Incidents/SheepChefJoins.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Bark.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Base.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_BeaverGrunt.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Bleat.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Bok.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Boom.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Chao.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Chitter.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_CommonBleat.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_GoatBleat.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Hiss.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Meow.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Moo.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Oink.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Reptile.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Squawk.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Squeak.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Tortoise.xml create mode 100644 1.5/Defs/Interactions/AnimalNoises_Yip.xml create mode 100644 1.5/Defs/Interactions/FH_Chat.xml create mode 100644 1.5/Defs/Interactions/FH_TrainInteractions.xml create mode 100644 1.5/Defs/Interactions/Interaction_Headpats.xml create mode 100644 1.5/Defs/Interactions/RulePacks_MorphInteractions.xml create mode 100644 1.5/Defs/JobDefs/MiscJobs.xml create mode 100644 1.5/Defs/JobDefs/MutaPlantJobs.xml create mode 100644 1.5/Defs/JobDefs/MutagenChamberJobs.xml create mode 100644 1.5/Defs/JobDefs/PawnInteractionJobs.xml create mode 100644 1.5/Defs/JobDefs/PawnProductionJobs.xml create mode 100644 1.5/Defs/Joy/JoyGivers.xml create mode 100644 1.5/Defs/LetterDefs/FormerHumanJoins.xml create mode 100644 1.5/Defs/MainButtonDefs.xml create mode 100644 1.5/Defs/ManeuverDef.xml create mode 100644 1.5/Defs/MentalBreakDefs/FormerHumanBreaks.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/AbstractMorphDefs.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Animal_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Animal_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Backstory.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Backstory.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Backstory.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Injector.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Injector.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Injector.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Hairstyle.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Injector.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Aspects.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Leopard_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Snowleopard_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Aspects.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Backstory.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Ophidia_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Turtoise_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Spit.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Tales.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Backstories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Memories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_MorphDef.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/COMBINATIONS/Combination_Parts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Full.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Chao/Chao_MorphDefs.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Partial.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Reaction.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/DefCategories/MorphCategories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/DefCategories/MutationCategories.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/MutationBase.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/ObsoleteCompatibilityAbstracts.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/EyeMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/FootMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/GenericMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/HandMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/HornMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/MiscMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/SkinMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/SpineMutations.xml create mode 100644 1.5/Defs/MorphsAndMutationDefs/Shared/TorsoMutations.xml create mode 100644 1.5/Defs/MutagenDealer.xml create mode 100644 1.5/Defs/Mutagens/Bases.xml create mode 100644 1.5/Defs/Mutagens/ChaoticMutagens.xml create mode 100644 1.5/Defs/Mutagens/defaultMutagen.xml create mode 100644 1.5/Defs/Needs/SapientAnimals.xml create mode 100644 1.5/Defs/PawnColumnDefs.xml create mode 100644 1.5/Defs/PawnKinds/Example.xml create mode 100644 1.5/Defs/PawnKinds/Pawnkinds_Raiders.xml create mode 100644 1.5/Defs/Pawnmorpher_Research.xml create mode 100644 1.5/Defs/PrisonerInteractionModes.xml create mode 100644 1.5/Defs/Races/Chaocombo.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Bases.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaoboar.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaoboom.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaocow.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaodino.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaofox.xml create mode 100644 1.5/Defs/Races/Chaocreatures/ChaofusionRhino.xml create mode 100644 1.5/Defs/Races/Chaocreatures/ChaomeldCow.xml create mode 100644 1.5/Defs/Races/Chaocreatures/ChaomeldDog.xml create mode 100644 1.5/Defs/Races/Chaocreatures/ChaomeldDragon.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaomorph Passes.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Chaothrumbo.xml create mode 100644 1.5/Defs/Races/Chaocreatures/Corpse CategoryDef.xml create mode 100644 1.5/Defs/Races/Chaocreatures/FleshTypeDef.xml create mode 100644 1.5/Defs/Races/Chaocreatures/LeatherDef.xml create mode 100644 1.5/Defs/Races/ChaomorphBodies.xml create mode 100644 1.5/Defs/RecipeDefs/Misc.xml create mode 100644 1.5/Defs/Recipes/AspectInjector.xml create mode 100644 1.5/Defs/Recipes/Recipes_Genekits.xml create mode 100644 1.5/Defs/Recipes/Recipes_SlurryCrafting.xml create mode 100644 1.5/Defs/Recipes/Recipes_Surgery.xml create mode 100644 1.5/Defs/Recipes/Silk.xml create mode 100644 1.5/Defs/Recipes/Surgeries.xml create mode 100644 1.5/Defs/Research/Tabs.xml create mode 100644 1.5/Defs/RulePacks/CoveringMutationLogPacks.xml create mode 100644 1.5/Defs/RulePacks/FormerHumans/FH_AnimalChats.xml create mode 100644 1.5/Defs/RulePacks/FormerHumans/FH_RecruitAttempts.xml create mode 100644 1.5/Defs/RulePacks/FormerHumans/FH_Training.xml create mode 100644 1.5/Defs/RulePacks/MutationCauseRulePacks.xml create mode 100644 1.5/Defs/RulePacks/MutationPackBases.xml create mode 100644 1.5/Defs/SapienceStates/FormerHumans.xml create mode 100644 1.5/Defs/ScenParts_Pawnmorpher.xml create mode 100644 1.5/Defs/StatDefs/Categories.xml create mode 100644 1.5/Defs/StatDefs/Combat.xml create mode 100644 1.5/Defs/StatDefs/FoodStats.xml create mode 100644 1.5/Defs/StatDefs/MutagenStats.xml create mode 100644 1.5/Defs/StatDefs/SapientAnimals.xml create mode 100644 1.5/Defs/StatDefs/Utils.xml create mode 100644 1.5/Defs/StyleDefs/BeardDefs.xml create mode 100644 1.5/Defs/StyleDefs/HairDefs.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_ArmMutation.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_EarMutations.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_FootMutations.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_HandMutations.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_MutationBase.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_MuzzleMutations.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_SkinMutations.xml create mode 100644 1.5/Defs/TaleDefs/Mutations/TaleDefs_TailMutations.xml create mode 100644 1.5/Defs/TaleDefs/TaleDefs_Feralization.xml create mode 100644 1.5/Defs/TaleDefs/TaleDefs_Incidents.xml create mode 100644 1.5/Defs/Terrain/Mutagenics.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/Genebank.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/InjectorLab.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/MutagenLab.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/MutagenTank.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/MutagenicShip.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/MutationSequencer.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/PipenetDef.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/SlurryDecanner.xml create mode 100644 1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml create mode 100644 1.5/Defs/ThingDefs_Misc/Filth_Slurry.xml create mode 100644 1.5/Defs/ThingDefs_Plants/MutagenicPlantsDecorative.xml create mode 100644 1.5/Defs/ThingDefs_Plants/MutagenicPlantsProducing.xml create mode 100644 1.5/Defs/ThingDefs_Plants/MutantPlantProducts.xml create mode 100644 1.5/Defs/Things/AnimalGenome.xml create mode 100644 1.5/Defs/Things/ExperimentalWeapons.xml create mode 100644 1.5/Defs/Things/Morph Products.xml create mode 100644 1.5/Defs/Things/Motes.xml create mode 100644 1.5/Defs/Things/Mutagenic_Projectiles.xml create mode 100644 1.5/Defs/Things/Silk.xml create mode 100644 1.5/Defs/Things/Skyfallers.xml create mode 100644 1.5/Defs/Things/TFWeapons.xml create mode 100644 1.5/Defs/Things/TFWeapons_Melee.xml create mode 100644 1.5/Defs/Things/TFWeapons_Special.xml create mode 100644 1.5/Defs/Things/TransformerIED.xml create mode 100644 1.5/Defs/ThinkTrees/AnimalisticPawns.xml create mode 100644 1.5/Defs/ThinkTrees/SapientAnimals.xml create mode 100644 1.5/Defs/Thoughts/AnimalisticThoughts/Bases.xml create mode 100644 1.5/Defs/Thoughts/AnimalisticThoughts/Food.xml create mode 100644 1.5/Defs/Thoughts/AnimalisticThoughts/NakedThoughts.xml create mode 100644 1.5/Defs/Thoughts/AnimalisticThoughts/Naked_Nudist.xml create mode 100644 1.5/Defs/Thoughts/AnimalisticThoughts/Persistant.xml create mode 100644 1.5/Defs/Thoughts/ChaothrumboThoughts.xml create mode 100644 1.5/Defs/Thoughts/FormerHumanJoinThoughts.xml create mode 100644 1.5/Defs/Thoughts/GeneralMutationThoughts.xml create mode 100644 1.5/Defs/Thoughts/GroupThoughts/HerdThoughts.xml create mode 100644 1.5/Defs/Thoughts/GroupThoughts/PackThoughts.xml create mode 100644 1.5/Defs/Thoughts/JealousThought.xml create mode 100644 1.5/Defs/Thoughts/Memories_MutationBase.xml create mode 100644 1.5/Defs/Thoughts/MergedPawns/FH_Persistent.xml create mode 100644 1.5/Defs/Thoughts/MiscMutationMemories.xml create mode 100644 1.5/Defs/Thoughts/MutationThoughts/DefaultMorphReactions.xml create mode 100644 1.5/Defs/Thoughts/MutationThoughts/RevertToHumanThoughts.xml create mode 100644 1.5/Defs/Thoughts/MutationTraitsSocialThoughts.xml create mode 100644 1.5/Defs/Thoughts/Pawnmorpher_DefaultReactions.xml create mode 100644 1.5/Defs/Thoughts/Pawnmorpher_Merge_Thoughts.xml create mode 100644 1.5/Defs/Thoughts/Pawnmorpher_Perm_feral_Thoughts.xml create mode 100644 1.5/Defs/Thoughts/Pawnmorpher_Reversion_Thoughts.xml create mode 100644 1.5/Defs/Thoughts/Pawnmorpher_TF_Reactions.xml create mode 100644 1.5/Defs/Thoughts/PreceptThoughts.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/AspectRelated.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Bases.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedMaster.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedNonMaster.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FeralPills.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Food.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FoodThoughts.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_HuntingThoughts.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Interactions.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_NakedThoughts.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Naked_Nudist.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Pals.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Persistent.xml create mode 100644 1.5/Defs/Thoughts/SapientAnimalThoughts/MiscThoughts.xml create mode 100644 1.5/Defs/Thoughts/TfWitnessThoughts.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_Bases.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_BodyPurist.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_EtherStates_Examples.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_ExAnimal.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_ExMerged.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_ExoticProduction.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_Food.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_MorphGroups.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_MutationAffinity.xml create mode 100644 1.5/Defs/Thoughts/Thoughts_Production.xml create mode 100644 1.5/Defs/Thoughts/VeneratedAnimal.xml create mode 100644 1.5/Defs/ToolCapacityDefs.xml create mode 100644 1.5/Defs/Traits/HybridTraits.xml create mode 100644 1.5/Defs/Traits/MutationTraits.xml create mode 100644 1.5/Defs/Traits/Prideful(MaybeUnused).xml create mode 100644 1.5/Defs/UpdateFeatures.xml.hidden create mode 100644 1.5/Defs/WorkGiverDefs/WorkGiversMachineOperation.xml create mode 100644 1.5/Defs/WorkGiverDefs/WorkGiversPawnInteraction.xml create mode 100644 1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml create mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml create mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml create mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml create mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml create mode 100644 1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml create mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml create mode 100644 1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml create mode 100644 1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml create mode 100644 1.5/Mods/Ideology/Defs/Issues.xml create mode 100644 1.5/Mods/Ideology/Defs/Precepts_FormerHumans.xml create mode 100644 1.5/Mods/Ideology/Defs/Precepts_Mutation.xml create mode 100644 1.5/Mods/Ideology/Defs/Precepts_Reversion.xml create mode 100644 1.5/Mods/Ideology/Defs/Precepts_Sapience.xml create mode 100644 1.5/Mods/Ideology/Defs/Precepts_Transformation.xml create mode 100644 1.5/Mods/Ideology/Defs/Rituals/AttachableOutcomeEffects.xml create mode 100644 1.5/Mods/Ideology/Defs/Thoughts/FH_OthersTfdPreceptThoughts.xml create mode 100644 1.5/Mods/Ideology/Defs/Thoughts/FH_PreceptThoughts.xml create mode 100644 1.5/Mods/Ideology/Defs/Thoughts/Social/SocialPreceptThoughts.xml create mode 100644 1.5/Mods/Ideology/Patches/AddPlantComps.xml create mode 100644 1.5/Mods/Ideology/Patches/BanDryadsFromMutations.xml create mode 100644 1.5/Mods/Ideology/Patches/PreceptPatches.xml create mode 100644 1.5/Mods/Martens/Defs/Aspects.xml create mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Full.xml create mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml create mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml create mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml create mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml create mode 100644 1.5/Mods/Martens/Defs/Races.xml create mode 100644 1.5/Mods/Martens/Patches/Addpaws.xml create mode 100644 1.5/Mods/RemoteTech/Defs/Things.xml create mode 100644 1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml create mode 100644 1.5/Mods/Royalty/Patches/TransferPsychic.xml create mode 100644 1.5/Mods/VBE/Defs/Backgrounds.xml create mode 100644 1.5/Mods/VCE/Defs/Recipes.xml create mode 100644 1.5/Mods/VCE/Defs/Things.xml create mode 100644 1.5/Mods/VCE/Defs/Thoughts.xml create mode 100644 1.5/Mods/VCE/Patches/Patch.xml create mode 100644 1.5/Mods/VEF/Defs/ModDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml create mode 100644 1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml create mode 100644 1.5/Patches/Addon_FixVanillaGeneticsExpanded.xml create mode 100644 1.5/Patches/Addon_GasTrapsAndShells.xml create mode 100644 1.5/Patches/Core/Core_AddSurgeries.xml create mode 100644 1.5/Patches/Core/Core_AnimalThinkTree.xml create mode 100644 1.5/Patches/Core/Core_FactionPatches.xml create mode 100644 1.5/Patches/Core/Core_FixHarmonizerThought.xml create mode 100644 1.5/Patches/Core/Core_FormerHumanAddon.xml create mode 100644 1.5/Patches/Core/Core_KillNarrowHeads.xml create mode 100644 1.5/Patches/Core/Core_MutagenicInfections.xml create mode 100644 1.5/Patches/Core/Core_StatWorkerPatches.xml create mode 100644 1.5/Patches/Core_FixEmpireHostility.xml create mode 100644 1.5/Patches/Core_HumanColorChannels.xml create mode 100644 1.5/Patches/Core_HumanHedifGraphics.xml create mode 100644 1.5/Patches/ModAddons/LeeniTest.xml diff --git a/1.5/Defs/AnimalClassDefs/AnimalClasses.xml b/1.5/Defs/AnimalClassDefs/AnimalClasses.xml new file mode 100644 index 000000000..ce889ae4b --- /dev/null +++ b/1.5/Defs/AnimalClassDefs/AnimalClasses.xml @@ -0,0 +1,316 @@ + + + + Animal + + + + + + + Avian + + Animal + + + + Anserigalliform + + Avian + + + + Anseriform + + Anserigalliform + + + + Galliform + + Anserigalliform + + + + Ratite + + Avian + + + + + + Powerful + + Animal + + + + ThickFur + + Powerful + + + + ThickHide + + Powerful + + + + Elephantidae + + ThickHide + + + + Rhinocerotidae + + ThickHide + + + + + + PawFooted + + Animal + + + + + + Carnivora + + PawFooted + + + + Canid + + Carnivora + + + + Familiaris + + Canid + + + + Wolf + + Canid + + + + Scavenger + + Canid + + + + Feline + + Carnivora + + + + BigFelis + + Feline + + + + Felis + + Feline + + + + Pantherine + + Feline + + + + Fox + + Carnivora + + + + + + Exotic + + PawFooted + + + + + + Leporid + + PawFooted + + + + + + Rodent + + PawFooted + + + + Arboreal + + Rodent + + + + Cerebral + + Rodent + + + + + + Ursine + + PawFooted + + + + + + Reptile + + Animal + + + + Lacertilia + + Reptile + + + + Ophidia + + Reptile + + + + Testudinidae + + Reptile + + + + + + Simian + + Animal + + + + Monkeys + + Simian + + + + + + Ungulate + + Animal + + + + EvenToedUngulate + + Ungulate + + + + + + Bovid + + EvenToedUngulate + + + + DomesticatedBovid + + Bovid + + + + WildBovid + + Bovid + + + + + + Camelid + + EvenToedUngulate + + + + + + Caprid + + EvenToedUngulate + + + + + + Cervid + + EvenToedUngulate + + + + BigCervid + + Cervid + + + + SmallCervid + + Cervid + + + + + + Suid + + EvenToedUngulate + + + + OddToedUngulate + + Ungulate + + + + Equine + + OddToedUngulate + + + diff --git a/1.5/Defs/Aspects/Aspects_Coloration.xml b/1.5/Defs/Aspects/Aspects_Coloration.xml new file mode 100644 index 000000000..adbdfa5d5 --- /dev/null +++ b/1.5/Defs/Aspects/Aspects_Coloration.xml @@ -0,0 +1,95 @@ + + + Pawnmorph.Aspects.ColorationAspect + true + + + ColorationNatural + + This pawn's coloration has shifted to those not typically seen in the base species. + (200,200,145) + true + +
  • ColorationAlbinism
  • +
  • ColorationMelanism
  • +
  • ColorationUnnatural
  • +
  • ColorationPlayerPicked
  • +
    + +
  • + + [PAWN_nameDef]'s coloration has shifted to those not typically seen in the base species. +
  • +
    +
    + + ColorationAlbinism + + This pawn has lost most of their pigmentation. + (245,245,245) + true + +
  • ColorationNatural
  • +
  • ColorationMelanism
  • +
  • ColorationUnnatural
  • +
  • ColorationPlayerPicked
  • +
    + +
  • + + [PAWN_nameDef] has lost most of their pigmentation. +
  • +
    +
    + + ColorationMelanism + + This pawn has an excessive amount of melanin, leading to a dark coloration. + (100,100,100) + true + +
  • ColorationNatural
  • +
  • ColorationAlbinism
  • +
  • ColorationUnnatural
  • +
  • ColorationPlayerPicked
  • +
    + +
  • + + [PAWN_nameDef] has an excessive amount of melanin, leading to a dark coloration. +
  • +
    +
    + + ColorationUnnatural + + This pawn's coloration has shifted to one not typically seen in nature (except in highly poisonous frogs). + (0,255,145) + true + +
  • ColorationNatural
  • +
  • ColorationAlbinism
  • +
  • ColorationMelanism
  • +
  • ColorationPlayerPicked
  • +
    + +
  • + + [PAWN_nameDef]'s coloration has shifted to one not typically seen in nature (except in highly poisonous frogs). +
  • +
    +
    + + ColorationPlayerPicked + + This pawn's coloration has been artifically shifted to a personalised set. + (120,255,205) + false + +
  • + + [PAWN_nameDef]'s coloration has been artifically shifted to a personalised set. +
  • +
    +
    +
    diff --git a/1.5/Defs/Aspects/Aspects_FormerHuman.xml b/1.5/Defs/Aspects/Aspects_FormerHuman.xml new file mode 100644 index 000000000..e2bc8574d --- /dev/null +++ b/1.5/Defs/Aspects/Aspects_FormerHuman.xml @@ -0,0 +1,28 @@ + + + PrimalWish + + This pawn desires a simple life. So simple, some might comment, that it is suited more for an animal than a human. Indeed, this pawn does envy animals, and would rather be one than human. + true + true + +
  • + + [PAWN_nameDef] desires a simple life. So simple, some might comment, that it is suited more for an animal than a human. Indeed, [PAWN_nameDef] does envy animals, and would rather be one than human. + Upon becoming a morph, [PAWN_nameDef] has gained a 'primal wish'. [PAWN_pronoun] might want to go even further with their mutations... +
  • +
    +
    + + Beastmaster + + This pawn likes the company of animals who were once people, and feels more at ease being around them. + true + +
  • + + [PAWN_nameDef] likes the company of animals who were once people, and feels more at ease being around them. +
  • +
    +
    +
    diff --git a/1.5/Defs/Aspects/Aspects_Merged.xml b/1.5/Defs/Aspects/Aspects_Merged.xml new file mode 100644 index 000000000..674c3d14c --- /dev/null +++ b/1.5/Defs/Aspects/Aspects_Merged.xml @@ -0,0 +1,14 @@ + + + SplitMind + + TODO + Pawnmorph.Aspects.SplitMind + +
  • + + TODO +
  • +
    +
    +
    diff --git a/1.5/Defs/Aspects/Aspects_Misc.xml b/1.5/Defs/Aspects/Aspects_Misc.xml new file mode 100644 index 000000000..d97db99bf --- /dev/null +++ b/1.5/Defs/Aspects/Aspects_Misc.xml @@ -0,0 +1,194 @@ + + + EtherState + + This pawn has produced constantly, leaving them numb or happily broken. + 0 + (121,55,145) + true + true + Pawnmorph.Aspects.SapienceHit + +
  • + + Constant production has caused [PAWN_nameDef] to become numb and submit to their fate. + + -0.4 + +
  • +
  • + + Constant production has caused [PAWN_nameDef] to accept change, and for some reason will now enjoy producing. + + -0.2 + +
  • +
    +
    + + SapienceCapped + + This pawn has had their sapience limited to a certain level. + 0 + (121,55,145) + true + true + Pawnmorph.Aspects.SapienceHit + +
  • + + The sapience of this pawn has been capped to feral levels. + + -1 + +
  • +
  • + + The sapience of this pawn has been capped to mostly feral levels. + + -0.9 + +
  • +
  • + + The sapience of this pawn has been capped to almost feral levels. + + -0.7 + +
  • +
  • + + The sapience of this pawn has been capped to conflicted levels. + + -0.5 + +
  • +
  • + + The sapience of this pawn has been capped to mostly sapient levels. + + -0.3 + +
  • +
    +
    + + MutagenInfused + + This pawn has taken mutagen-infused medication that modified their mutation's biological outputs. + true + true + +
  • + + Will only produce rare resources. +
  • +
  • + + Will never produce rare resources. + true +
  • +
  • + + [PAWN_nameDef] will never produce resources. + true +
  • +
    +
    + + AnimalAffinity + + This pawn has a greater apriciation for animals. + true + +
  • + + [PAWN_nameDef]'s new form has given [PAWN_objective] a greater apriciation for what [PAWN_pronoun] now sees as [PAWN_possessive] fellow animals. It doesn't hurt that [PAWN_pronoun] now speaks their (body) language, either. + +
  • + Animals + 1500 + 2 +
  • + + +
    +
    + + PlantAffinity + + This pawn cares deeply for plants. + true + +
  • + + Because [PAWN_nameDef]'s new form has brought [PAWN_objective] closer to nature (too close some might say), [PAWN_pronoun] now better understands how plants fit into the circle of life and is much more careful when tending them. + +
  • + Plants + 1500 + 2 +
  • + + +
    +
    + + RareMutant + + TODO + +
  • + + TODO +
  • +
    +
    + + Paragon + + This pawn adapts quickly to new mutations, and can sometimes get better, more powerful mutations than normal morphs. + true + true + +
  • + + [PAWN_nameDef] adapts quickly to new mutations, and can sometimes get better, more powerful mutations than normal morphs. + + 3 + + Some of [PAWN_nameDef]'s mutations seem to be adapting faster and becoming more powerful. +
  • +
    + +
  • Afflicted
  • +
    + +
  • BodyPurist
  • +
    +
    + + Afflicted + + This pawn not only never adapts to new mutations, their mutations sometimes degrade into worse versions. + true + true + +
  • + + [PAWN_nameDef] not only never adapts to new mutations, their mutations sometimes degrade into worse versions. + + -1.5 + + true + Some of [PAWN_nameDef]'s mutations seem to be degrading into worse forms. +
  • +
    + +
  • Paragon
  • +
    + +
  • MutationAffinity
  • +
    +
    +
    diff --git a/1.5/Defs/Aspects/Aspects_Prideful.xml b/1.5/Defs/Aspects/Aspects_Prideful.xml new file mode 100644 index 000000000..287410627 --- /dev/null +++ b/1.5/Defs/Aspects/Aspects_Prideful.xml @@ -0,0 +1,16 @@ + + + PridefulAspect + + This pawn is extremely vain and easily insulted. + (140,98,196) + false + Pawnmorph.Aspects.Prideful + +
  • + + [PAWN_nameDef]'s sees [PAWN_objective]self as the natural leader of [PAWN_possessive] pride and as a consequence looks down on others and is easily offended. +
  • +
    +
    +
    diff --git a/1.5/Defs/Aspects/Aspects_Production.xml b/1.5/Defs/Aspects/Aspects_Production.xml new file mode 100644 index 000000000..e7c8ed272 --- /dev/null +++ b/1.5/Defs/Aspects/Aspects_Production.xml @@ -0,0 +1,56 @@ + + + (245,232,49) + Pawnmorph.Aspects.SapienceHit + true + + + Productive + + This pawn's biochemistry has been modified such that their mutations output rate has been increased. This has caused them to become increasingly hungry, so be sure to keep them fed. + +
  • + + [PAWN_nameDef]'s productive mutations output rate has been increased. This has caused them to become increasingly hungry, so be sure to keep them fed. + +
  • + 0.301 + + true + +
  • + + +
  • + + [PAWN_nameDef]'s production output and caloric intake have been further increased. Take care, as their body may not be able to handle further productive increases. + +
  • + 0.601 + + true + +
  • + + + -0.2 + + +
  • + + [PAWN_nameDef]'s productive mutations have achieved maximum productive output. The constant production has left their body and mind weakened, and they may occasionally fall into a catatonic state as a result. + +
  • + 0.901 + + true + +
  • + + + -0.7 + + +
    +
    +
    diff --git a/1.5/Defs/BackstoryDefs/Backstories_FormerHuman.xml b/1.5/Defs/BackstoryDefs/Backstories_FormerHuman.xml new file mode 100644 index 000000000..4ff752c19 --- /dev/null +++ b/1.5/Defs/BackstoryDefs/Backstories_FormerHuman.xml @@ -0,0 +1,141 @@ + + + Adulthood + +
  • FormerHumans
  • +
    + +
  • Violent
  • +
  • ManualDumb
  • +
  • Hauling
  • +
  • Firefighting
  • +
  • Cleaning
  • +
  • Commoner
  • +
  • Social
  • +
  • Animals
  • +
  • Intellectual
  • +
    + Female + Male +
    + + + Adulthood + +
  • FormerHumans
  • +
    + +
  • Violent
  • +
  • ManualDumb
  • +
  • Firefighting
  • +
  • Cleaning
  • +
  • Commoner
  • +
  • Social
  • +
  • Animals
  • +
  • Intellectual
  • +
    + Female + Male +
    + + + FormerHumanNormal + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + + + + + FormerHumanNormalNoHauling + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + + + + FormerHumanChaomorph + former human + former human + A colony turned [PAWN_nameDef] into a dangerous chimera, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + + + + FormerHumanChaoboar + former human + former human + A colony turned [PAWN_nameDef] into a dangerous chimera, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + +
  • ManualSkilled
  • +
  • Crafting
  • +
  • Caring
  • +
  • Artistic
  • +
    +
    + + + FormerHumanCrafter + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + +
  • ManualSkilled
  • +
  • Crafting
  • +
  • Caring
  • +
  • Artistic
  • +
    +
    + + + FormerHumanConstructor + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + +
  • ManualSkilled
  • +
  • Crafting
  • +
    +
    + + + + + + PM_FormerHumanPlantWorker + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, fell trees thanks to their strength, tend to plants, have limited social interactions and will need to be kept happy to resist instinct creeping in. + +
  • ManualSkilled
  • +
  • PlantWork
  • +
    +
    + + + + PM_FormerHumanMiner + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, mine thanks to their new body parts, have limited social interactions and will need to be kept happy to resist instinct creeping in. + +
  • ManualSkilled
  • +
  • Mining
  • +
    +
    + + + + PM_FormerHumanSkilled + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and, thanks to [PAWN_pronoun] innate strength and dextrerous paws, is able to perform most tasks. [PAWN_nameDef] will need to be kept happy to resist instinct creeping in. + +
  • ManualSkilled
  • +
  • Crafting
  • +
  • Caring
  • +
  • Artistic
  • +
  • PlantWork
  • +
    +
    + +
    diff --git a/1.5/Defs/BackstoryDefs/Backstories_General.xml b/1.5/Defs/BackstoryDefs/Backstories_General.xml new file mode 100644 index 000000000..92bdbf956 --- /dev/null +++ b/1.5/Defs/BackstoryDefs/Backstories_General.xml @@ -0,0 +1,287 @@ + + + ExposureVictim + Exposure victim + exposed + [PAWN_nameDef] found [PAWN_objective]self too close to a mutanite meteorite and soon found [PAWN_possessive] life changed forever. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 2~8 + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • PigMorph
  • +
  • DeerMorph
  • +
  • BearMorph
  • +
  • MonkeyMorph
  • +
  • WargMorph
  • +
  • AlpacaMorph
  • +
  • WolfMorph
  • + + +
    +
    + + + MutagenJunkie + Mutagen junkie + junkie + [PAWN_nameDef] got addicted to the feeling of change and morphed [PAWN_objective]self repeatedly. [PAWN_pronoun] got clean, but the damage was permanent. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 4~8 + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • PigMorph
  • +
  • DeerMorph
  • +
  • BearMorph
  • +
  • MonkeyMorph
  • +
  • WargMorph
  • +
  • AlpacaMorph
  • +
  • WolfMorph
  • + + +
    +
    + + + VolunteerMorph + Volunteer morph + volunteer + [PAWN_nameDef] signed up for a gene therapy programme, specifically designed to mutate him. It ended up working, but the results were slightly different to what he first expected. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 2~8 + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • PigMorph
  • +
  • DeerMorph
  • +
  • BearMorph
  • +
  • MonkeyMorph
  • +
  • WargMorph
  • +
  • AlpacaMorph
  • +
  • WolfMorph
  • + + +
    +
    + + + WishFulfilment + Wishful morph + volunteer + [PAWN_nameDef] found a lab willing to give [PAWN_objective] mutations [PAWN_pronoun] wanted. Whether the ones [PAWN_pronoun] got were them is another story. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 2~8 + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • PigMorph
  • +
  • DeerMorph
  • +
  • BearMorph
  • +
  • MonkeyMorph
  • +
  • WargMorph
  • +
  • AlpacaMorph
  • +
  • WolfMorph
  • + + +
    +
    + + + TestSubject + Test subject + subject + [PAWN_nameDef] was captured by a rogue research organisation and mutated against [PAWN_possessive] will, changed into monstrosities and reverted many times over. The fragments of change still remain. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 2~8 + +
  • Combat
  • +
  • Domestic
  • +
  • Social
  • +
  • Crafter
  • + + true + +
    +
    + + + CombatMorph + Combat morph + combatmorph + [PAWN_nameDef] was mutated to fight on the front lines of a faction war. During a ceasefire, [PAWN_pronoun] deserted to start [PAWN_possessive] own life. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + Shooting + 3 +
  • +
  • + Melee + 3 +
  • +
    + +
  • + 2~8 + +
  • Combat
  • + + +
    +
    + + + ProductionMorph + Production morph + productionmorph + [PAWN_nameDef] was kept in a barn, forced to produce all manner of foodstuffs before [PAWN_pronoun] escaped by feeding the guards [PAWN_possessive] own brand of mutagens. This isolation has stymied [PAWN_possessive] social development, but [PAWN_pronoun] was sometimes called in to help with other...inmates. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + Social + -2 +
  • +
  • + Animals + 2 +
  • +
    + +
  • + 2~8 + +
  • Production
  • + + +
    +
    + + + CultEscapee + Cult escapee + escapee + [PAWN_nameDef] managed to escape the grip of an oppressive mutation cult, and still has the scars to show for it. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 5~8 + +
  • Production
  • +
  • Chimera
  • +
  • Combat
  • + + +
  • Productive
  • +
  • Exotic
  • +
  • Combat
  • +
    + +
    +
    + + + CultEscapeeFarm + Cult farm escapee + escapee + [PAWN_nameDef] managed to escape the grip of an oppressive mutation cult, and still has the scars to show for it. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 5~8 + +
  • Production
  • +
  • Chimera
  • + + +
  • Productive
  • +
  • Exotic
  • +
    + +
    +
    +
    diff --git a/1.5/Defs/BackstoryDefs/Backstories_Special.xml b/1.5/Defs/BackstoryDefs/Backstories_Special.xml new file mode 100644 index 000000000..bd302a446 --- /dev/null +++ b/1.5/Defs/BackstoryDefs/Backstories_Special.xml @@ -0,0 +1,25 @@ + + + PM_SheepChef + former celebrity chef + celebrity chef + [PAWN_nameDef] used to own his own 5-star restaurant until he a fateful event in which he yelled at an apprentice chef over lamb sauce. + In response, the apprentice slipped some ovine mutagen into the dish he was served, leading to the sudden transformation of chef into ram. [PAWN_nameDef] was then shoved into a cryptosleep pod and set adrift into the galaxy. + Eventually, he landed on a distant rimworld, and sought to begin his new life. + +
  • Cooking
  • +
  • ManualSkilled
  • +
    +
    + + + PM_ChaothrumboBackstory + chaothrumbo + chaothrumbo + [PAWN_nameDef] was transformed into a titanic chaomorph known as a chaothrumbo. + +
  • PlantWork
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/BodyPartDefs/CustomTailDef.xml b/1.5/Defs/BodyPartDefs/CustomTailDef.xml new file mode 100644 index 000000000..a1d62841f --- /dev/null +++ b/1.5/Defs/BodyPartDefs/CustomTailDef.xml @@ -0,0 +1,7 @@ + + + MorphTail + + true + + diff --git a/1.5/Defs/CategoryDefs.xml b/1.5/Defs/CategoryDefs.xml new file mode 100644 index 000000000..d0852dcaa --- /dev/null +++ b/1.5/Defs/CategoryDefs.xml @@ -0,0 +1,39 @@ + + + Injector + + Medicine + true + UI/Icons/ThingCategories/Medicine + + + + Mutapill + + Medicine + true + UI/Icons/ThingCategories/Medicine + + + + Serum + + Medicine + true + UI/Icons/ThingCategories/Medicine + + + + RawMutagen + + ResourcesRaw + true + UI/Icons/ThingCategories/ResourcesRaw + + + + PM_MutationGenome + + Items + + \ No newline at end of file diff --git a/1.5/Defs/ComboRules.xml b/1.5/Defs/ComboRules.xml new file mode 100644 index 000000000..6a7f56933 --- /dev/null +++ b/1.5/Defs/ComboRules.xml @@ -0,0 +1,62 @@ + + + + HornbillRule + 10 + 0 + +
  • + +
  • EtherChickenBeak
  • + + Jaw + +
  • + +
  • EtherHorns
  • + + Skull + +
    + +
  • + EtherComboHornbill + Skull +
  • +
    +
    + + + WolfSpikeRule + 10 + 0 + +
  • + +
  • EtherWolfMuzzle
  • +
  • EtherArcticWolfJaw
  • + + Jaw + +
  • + +
  • EtherIguanaHorns
  • + + Skull + +
    + +
  • + EtherComboWolfSpike + Skull +
  • +
    +
    + + + PM_HellhoundCombo + 10 + 0 + Pawnmorph.MutationRules.Worker_Hellhound + +
    \ No newline at end of file diff --git a/1.5/Defs/ConceptDefs/Concepts.xml b/1.5/Defs/ConceptDefs/Concepts.xml new file mode 100644 index 000000000..c789e6d1b --- /dev/null +++ b/1.5/Defs/ConceptDefs/Concepts.xml @@ -0,0 +1,57 @@ + + + SerumExtraction + + 11 + true + Find, buy or loot two chookmorph eggs and five cowmorph milk, or find some chaobulbs. At a drug lab, you'll be able to create mutagenic slurry, which can then be made into specific mutagen types. + + + + MergingPawns + + 11 + true + Once you have two chambers linked to a modulator, send two pawns inside them. On the modulator, select the newly unlocked option 'merge chambers' (which can still be picked if the two pawns are already mutating) and wait. This option won't show up if there aren't pawns in the chambers. + + + + Chaomorphs + + 11 + false + Slurries should never be fed to pawns. Please don't do this, they're very genetically unstable and you may end up with a CHAOMORPH, a terrifying creature with a high production capacity. + + + + Tagging + + 11 + true + In order to get started with creating Injectors and using Chambers, you'll need to acquire genomes. This can be done via the Tagging Rifle. With a drafted pawn and tagging rifle equipped, select the 'tag animal' widget, and then select the animal you wish to tag. You must have enough Genebank storage to log them. Tagging animals allows you to set them as the end result of a Chamber. You can also obtain genomes by buing Genecards from traders or from completing quests - these must be used at a Genebank to add them to your total storage. + + + + PM_Injectors + + true + 11 + To craft injectors, you will need to have the correct genome in your Genebank database. This can be done by collecting animal DNA with the Tagging Rifle's 'Tag' widget (NOT by shooting them with it). Once you have the genome, you will be able to create a bill for the animal at the Injector Workbench. + + + + PM_Genebanks + + true + 11 + Genebanks are needed to store tagged animals and mutations for use in the Mutagenic chambers. Each Genebank building supplies a fixed amount of storage that is distributed across the whole system so long as it is installed. Genebanks can be safely removed or moved so long as you have at least one bank’s worth of free space, otherwise you will lose some tagged information. + + + PM_PartPicker + + true + 11 + You can use a muta chamber to specify exactly what mutations you want a pawn to have. In order to use a mutation in the part picker it must be first analyzed by either tagging the related animal or by using a genome acquired rarely from traders or as quest rewards. Once you select the mutations you want the pawn to have and hit ‘Accept’ the muta chamber will slowly add them over time, consuming slurry and power + + + diff --git a/1.5/Defs/DamageDefs/Damages_Mutagenic.xml b/1.5/Defs/DamageDefs/Damages_Mutagenic.xml new file mode 100644 index 000000000..c6853b6d2 --- /dev/null +++ b/1.5/Defs/DamageDefs/Damages_Mutagenic.xml @@ -0,0 +1,151 @@ + + + MutagenicBulletDamage + + Pawnmorph.Damage.Worker_MutagenicInjury + true + {0} has been shot to death. + Gunshot + true + Bullet + Sharp + 0~0.7 + true + true + +
  • + MutagenicBuildup_Weapon + 0.07 + PM_WeaponChaoticMutagen +
  • +
    +
    + + + BlastExtinguisher + (0.3, 1, 0.4, 0.05) + + + + MutagenCloud_Tiny + + Pawnmorph.Damage.Worker_MutagenicInjury + true + false + Shredded + Crack + true + 3 + BlastExtinguisher + (0, 1, 0, 0.05) + false + Explosion_Smoke + Damage_Smoke + +
  • + MutagenicBuildup_SmallExplosion + 0.105 + PM_WeaponChaoticMutagen +
  • +
    +
    + + + MutagenCloud + + Pawnmorph.Damage.Worker_MutagenicInjury + true + false + Shredded + Crack + true + 5 + BlastExtinguisher + (0, 1, 0, 0.05) + false + Explosion_Smoke + Damage_Smoke + +
  • + MutagenicBuildup_SmallExplosion + 0.105 + PM_WeaponChaoticMutagen +
  • +
    +
    + + + MutagenCloud_Large + + Pawnmorph.Damage.Worker_MutagenicInjury + true + false + Shredded + Crack + true + 9 + BlastExtinguisher + (0, 1, 0, 0.05) + false + Explosion_Smoke + Damage_Smoke + +
  • + MutagenicBuildup_LargeExplosion + 0.105 + PM_WeaponChaoticMutagen +
  • +
    +
    + + + MutagenicCut + + Pawnmorph.Damage.Worker_MutagenicCut + +
  • + 0.02 + MutagenicBuildup_Weapon + 0.25 + PM_WeaponChaoticMutagen +
  • +
    +
    + + + MutagenicPoke + + Pawnmorph.Damage.Worker_MutagenicStab + 0.4 + +
  • + 0.01 + MutagenicBuildup_Weapon + 0.25 + PM_WeaponChaoticMutagen +
  • +
    +
    + + + MutagenicStab + + Pawnmorph.Damage.Worker_MutagenicStab + true + {0} has been stabbed to death. + Stab + Crack + Slice + Sharp + 0.6 + 0.7~1.5 + +
  • + 0.03 + MutagenicBuildup_Weapon + 0.25 + PM_WeaponChaoticMutagen +
  • +
    +
    +
    diff --git a/1.5/Defs/DamageDefs/Damages_MutagenicArrow.xml b/1.5/Defs/DamageDefs/Damages_MutagenicArrow.xml new file mode 100644 index 000000000..0279a02bb --- /dev/null +++ b/1.5/Defs/DamageDefs/Damages_MutagenicArrow.xml @@ -0,0 +1,24 @@ + + + MutagenicArrowDamage + + Pawnmorph.Damage.Worker_MutagenicInjury + true + {0} has been shot to death by an arrow. + Cut + Crack + true + Bullet + Sharp + 0~0.7 + true + true + +
  • + MutagenicBuildup_Weapon + 0.01 + PM_WeaponChaoticMutagen +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/DamageDefs/Damages_Special.xml b/1.5/Defs/DamageDefs/Damages_Special.xml new file mode 100644 index 000000000..56350716f --- /dev/null +++ b/1.5/Defs/DamageDefs/Damages_Special.xml @@ -0,0 +1,44 @@ + + + MutagenicStun + + Pawnmorph.Damage.Worker_MutagenicBlunt + true + {0} has been beaten to death. + Crush + Bruise + Crack + true + Blunt + Blunt + 0.4~1.0 + 1.5 + 2.0 + 0.4 + 0.1~0.2 + 0.2~0.35 + + +
  • (0.04, 0.40)
  • +
  • (0.5, 1)
  • +
    +
    + + +
  • (0.01,0.05)
  • +
  • (0.1,0.3)
  • +
  • (0.2,0.4)
  • +
  • (0.4, 0.7)
  • +
  • (0.6, 1)
  • +
    +
    + +
  • + 0.025 + 0.4 + MutagenicBuildup_Weapon + PM_WeaponChaoticMutagen +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Designations/DesignationDefs.xml b/1.5/Defs/Designations/DesignationDefs.xml new file mode 100644 index 000000000..65016fb95 --- /dev/null +++ b/1.5/Defs/Designations/DesignationDefs.xml @@ -0,0 +1,8 @@ + + + RecruitSapientFormerHuman + Designations/Tame + Thing + + + \ No newline at end of file diff --git a/1.5/Defs/Drugs/AspectInjectors.xml b/1.5/Defs/Drugs/AspectInjectors.xml new file mode 100644 index 000000000..5af620d3c --- /dev/null +++ b/1.5/Defs/Drugs/AspectInjectors.xml @@ -0,0 +1,49 @@ + + + PM_ParagonInjector + + Things/Item/Special/MechSerumHealer + Graphic_Single + + 10 + +
  • Injector
  • +
    + + 1500 + + +
  • RewardStandardLowFreq
  • +
    + Spacer + +
  • + HealerMutagen +
  • +
    +
    + + + + PM_ParagonInjector + + A special injector that tunes the mechanites within the user's body, causing their existing mutations to adapt much better then normal. "Paragon" mutations, as they're known, often combine the best aspects of human and animal anatomy to increase their benefits and minimize their downsides. + +Paragon injectors are more powerful than adaption cream, and so can produce even more powerful adapations than what adaption cream can. + + Things/Item/Drug/ParagonSerum + Graphic_Single + + +
  • + UseItem + Use a paragon injector + 600 +
  • +
  • + Paragon +
  • +
  • + + + diff --git a/1.5/Defs/Drugs/Drugs.xml b/1.5/Defs/Drugs/Drugs.xml new file mode 100644 index 000000000..805377d75 --- /dev/null +++ b/1.5/Defs/Drugs/Drugs.xml @@ -0,0 +1,36 @@ + + + + Things/Item/Drug/Specific + Graphic_Single + + false + + 4000 + 400 + 0.01 + + Ultra + + None + + +
  • ExoticMisc
  • + + + Injectors + +
  • PM_InjectorLab
  • +
    +
    + + 3 + 4 + + +
  • + 1000 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Drugs/Drugs_Antigen.xml b/1.5/Defs/Drugs/Drugs_Antigen.xml new file mode 100644 index 000000000..6a61f34ed --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Antigen.xml @@ -0,0 +1,154 @@ + + + Antigen + + A concentration of antigenic mechanites that have been distilled from glowvine seedpods. When injected, it can neutralize any active mutagenic mechanites in the body, but it offers no long term protection against future exposure. Also used in the production of many mutagen-neutralising or reversing agents. + +Raw antigen is often used as an emergency treatment for mutagenic diseases and mutagenic buildup. Those who intentionally inject themselves with morph serums also find it a cheap and reliable way to halt the effects of the serum before they fully transform. + + Graphic_StackCount + Things/Item/Drug/Antigen + + + 400 + 100 + 0 + + +
  • RawMutagen
  • +
    + + +
  • + AntigenEffective + 0.10 +
  • +
    +
    + + Cook + Recipe_Brewing + DrugSynthesisSpeed + Intellectual + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 4 + MutagenExtraction +
    + + 5 + + Normal + +
  • + 1000 +
  • +
    +
    + + + AntigenEffective + Antigenic. + HediffWithComps + + (179,86,132) + true + 1 + false + +
  • + -4 +
  • +
  • + +
  • Pawnmorph.Hediffs.MorphTf
  • +
  • Pawnmorph.Hediffs.Hediff_MutagenicBase
  • + + +
    + +
  • + + -1.5 + -1.5 + 1 + +
  • +
    +
    + + + + PM_HaltCream + + A balm of concentrated antigen that, when applied to a mutation, has a chance to halt its progression. It can't remove mutations, but if applied immediately after an unwanted mutation is gained it can prevent it from getting worse. Higher medical skill increases the chances of success. + +Halting cream is often used by industrial nations that lack the technology to produce reverter to prevent mutagen exposure victims from losing use of their hands. + + Things/Item/Drug/HaltingCream + Graphic_Single + 0.85 + + Neolithic + + 35 + 0.35 + 1.3 + 6 + + + 1 + 1 + + + DrugSynthesisSpeed + Intellectual + 3 + 600 + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + MutagenExtraction +
    +
    + + + PM_AdaptionCream + + An advanced balm of antigen and slurry that, when applied to a mutation, stimulates the mutation to begin adapting to a more morph-friendly state. Adapted mutations are more beneficial or less hindering than normal mutations, though not all kinds of mutations can adapt. Paragon morphs are already adapted beyond the limits of adaption cream and so will not benefit further from its effects. + +Adaption cream is often used to partially restore manipulation to unlucky morphs that lose their fingers to mutations. + + Things/Item/Drug/AdaptionCream + Graphic_Single + 0.85 + + Industrial + + 50 + 0.35 + 1.3 + 6 + + + 1 + 1 + 1 + + + DrugSynthesisSpeed + Intellectual + 3 + 600 + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + LozengeProduction +
    +
    + +
    diff --git a/1.5/Defs/Drugs/Drugs_Bases.xml b/1.5/Defs/Drugs/Drugs_Bases.xml new file mode 100644 index 000000000..367358e86 --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Bases.xml @@ -0,0 +1,110 @@ + + + + + DrugSynthesisSpeed + Intellectual + Cook + Recipe_CookMeal + + +
  • + + + + + + None + Processed + 120 + 0 + Ingest_Pill + false + Take {0} + Taking {0}. + + +
  • Mutapill
  • +
    + false + Ultra + + Graphic_Single + + + 0.01 + +
    + + + + Processed + None + 120 + 0 + Ingest_Inject + false + Inject {0} + Injecting {0}. + + true + +
  • + + + + + false + Ultra + + Graphic_Single + + + 0.01 + + +
  • ExoticMisc
  • + +
    + + + + 1000 + 6000 + + +
  • Injector
  • +
    + + PowerfulInjectors + +
  • PM_InjectorLab
  • +
    + +
    + + 6 + 2 + 10 + + +
  • + InjectorCauseLogPack +
  • +
    +
    + + + + + 50 + 0.2 + 2.0 + 0.2 + + Ultra + +
  • ExoticMisc
  • +
    +
    +
    diff --git a/1.5/Defs/Drugs/Drugs_Depricated.xml b/1.5/Defs/Drugs/Drugs_Depricated.xml new file mode 100644 index 000000000..38d8f444a --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Depricated.xml @@ -0,0 +1,122 @@ + + + + ProductionPillUdderEffect + HediffWithComps + (121, 55, 145) + + You should not have this hediff, if you do, feel free to ignore it or remove it with dev mode. + +
  • + + 6000 + 6000 + +
  • +
  • + EtherUdder + 0.3 + 0.2 +
  • +
    + +
  • +
    +
    + + + ProductionPillChemfuelUdderEffect + HediffWithComps + (121, 55, 145) + + You should not have this hediff, if you do, feel free to ignore it or remove it with dev mode. + +
  • + + 6000 + 6000 + +
  • +
  • + EtherChemfuelUdder + 0.3 + 0.2 +
  • +
    + +
  • +
    +
    + + + ProductionPillEggEffect + HediffWithComps + (121, 55, 145) + + You should not have this hediff, if you do, feel free to ignore it or remove it with dev mode. + +
  • + + 6000 + 6000 + +
  • +
  • + EtherEggLayer + 0.3 + 0.2 +
  • +
    + +
  • +
    +
    + + + ProductionPillWoolEffect + HediffWithComps + (121, 55, 145) + + You should not have this hediff, if you do, feel free to ignore it or remove it with dev mode. + +
  • + + 6000 + 6000 + +
  • +
  • + EtherWooly + 0.3 + 0.2 +
  • +
    + +
  • +
    +
    + + + ProductionPillMegawoolEffect + HediffWithComps + (121, 55, 145) + + You should not have this hediff, if you do, feel free to ignore it or remove it with dev mode. + +
  • + + 6000 + 6000 + +
  • + +
    + +
  • +
    +
    +
    diff --git a/1.5/Defs/Drugs/Drugs_Genekits.xml b/1.5/Defs/Drugs/Drugs_Genekits.xml new file mode 100644 index 000000000..0e04a3cca --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Genekits.xml @@ -0,0 +1,30 @@ + + + GenekitColorPicker + + Dermal repigmentation genekits are a favorite of party crowds on some glitterworlds. With a simple push of a button, a person's skin and hair color can be nearly instaneously and permanently altered on the genetic level. Another kit can be used afterward to either revert the effect, or change the color selection. + + Things/Item/Drug/Genekit_rgb + Graphic_Single + + 25 + + 110 + + +
  • ItemsMisc
  • +
    + Sellable + +
  • + UseItem + Apply kit + 60 +
  • +
  • + Pawnmorph.Comp_PlayerPickedRecoloration +
  • +
  • + + + diff --git a/1.5/Defs/Drugs/Drugs_Injectors.xml b/1.5/Defs/Drugs/Drugs_Injectors.xml new file mode 100644 index 000000000..6cef5df44 --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Injectors.xml @@ -0,0 +1,72 @@ + + + PM_ExperimentalInjector + + A slightly more stable alternative to raw mechanite slurry, the experimental injector is used to give random mutations to pawns in a slightly less risky fashion. As an added feature, each injector comes equipped with a temporary genebank uplink microchip that logs and stores any and all mutations gained while under the effect of this serum. + + Graphic_Single + Things/Item/Drug/Experimental + + + 200 + 80 + 0.07 + + +
  • Injector
  • + + + +
  • + +
  • PM_ExperimentalInjector
  • + + 1.00 + +
    +
    + + Cook + Recipe_Brewing + DrugSynthesisSpeed + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 4 + Injectors +
    + + + 5 + + + +
  • + 1010 +
  • +
    +
    + + PM_ChaoThrumboGenome + + A strange and corrupted genome. Having this interact with regular data storage would fry the system, but a new option has become available in the chamber under animals. Warning: Due to the extremely cryptic genome data contained within, the resulting animal may be far larger than the chambers can safely handle. Prepare accordingly. + 1 + true + + 1700 + + + Graphic_Single + Things/Item/GenecardCorrupted + + +
  • +
  • + false + PM_Chaothrumbo + This data is too corrupted to even attempt to scan. +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Drugs/Drugs_MechaniteSlurry.xml b/1.5/Defs/Drugs/Drugs_MechaniteSlurry.xml new file mode 100644 index 000000000..52b782a80 --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_MechaniteSlurry.xml @@ -0,0 +1,49 @@ + + + MechaniteSlurry + + Mechanites suspended in an organic binding agent composes this pseudofluid. It is strongly recommended not to ingest raw slurry, as it will cause constant, rapid, and uncontrolled mutation. With further processing, it can be refined into safer and more controlled forms. + +Although it induces rapid and uncontrollable mutations, some desperate individuals are known to injest it in the hopes it may provide them useful mutations, or simply because they enjoy the transformation process. Some rimworld warlords are known to feed prisoners slurry to make them into production slaves, or simply as a form of sadistic entertainment. + + Graphic_StackCount + Things/Item/Drug/Slurry + + + 55 + 0.07 + + +
  • RawMutagen
  • +
    + + None + +
  • + FullRandomTFAnyOutcome + 1.00 +
  • +
    +
    + + Normal + +
  • + 0.5 + MutagenCloud + 0.4 + 0.7 + PM_Filth_Slurry + 1 + + 30 + 60 + +
  • +
  • + 1000 +
  • +
    + +
    +
    diff --git a/1.5/Defs/Drugs/Drugs_Pills.xml b/1.5/Defs/Drugs/Drugs_Pills.xml new file mode 100644 index 000000000..6ff4e2fa3 --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Pills.xml @@ -0,0 +1,451 @@ + + + + UdderPill + + A pill containing reconfigured mechanites tuned specifically to boost production mutations. Taking them will cause a morph to produce resources more rapidly, at a cost of increased hunger. Taking multiple doses will further improve production rates, but is not recommended. Side effects may include increased discomfort, hair growth, hunger, coma, and in rare cases, fiery explosions. + +Booster pills are illegal throughout civilized space, but are a staple for certain unethical farms to increase the yield of their "alternative livestock". + + Things/Item/Drug/Pills1 + + + 400 + 30 + + + +
  • + Productive + true +
  • +
    +
    + + LozengeProduction + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 1 + 1 + + +
  • + 1010 +
  • +
    +
    + + + + ColorsPill + + A pill that induces a random change in genes affecting pigmentation that accompanies other mutations. In short, they give the user a random new fur, feather, or scale color. + +RGB pills are a common party drug in some mutation-positive societies. Pranksters also find great amusement in hiding RGB pills in unsuspecting victims' meals. + + Things/Item/Drug/Pills3 + + + 400 + 30 + + + +
  • + +
  • + ColorationNatural + 0.0015 +
  • +
  • + ColorationAlbinism + 0.00075 +
  • +
  • + ColorationMelanism + 0.00075 +
  • +
  • + ColorationUnnatural + 0.0005 +
  • + + +
    +
    + + LozengeProduction + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 2 + + +
  • + 1010 +
  • +
    +
    + + + + FeralPill + + A pill to tip the scales on morphs that are reeling, but did not change fully. A single dose will kickstart the mechanites once more, guaranteeing a full transformation into an animal. Use this if you really, really want a pawn to be an animal instead of a human. + +When ingested by someone not currently mutating, feral pills have a side effect of gradually destabilizing higher brain functions associated with sapience. In humans and morphs this can cause them to temporarily succumb to their base instincts, while in former human animals it will cause a permanant loss of sapience as the mechanites which maintain their human consciousness are damaged. + +Feral pills are highly illegal in civilized space. At least one exotic animal trader has been found guilty of kidnapping, transforming, and selling former human victims drugged with feral pills until they act no differently than any other animal. Unethical farmers are also known to use them to keep their "alternative livestock" passive and easier to manage. + + Things/Item/Drug/Pillbox_1 + + + 400 + 30 + + + +
  • + true +
  • +
    +
    + + LozengeProduction + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 2 + + +
  • + 1010 +
  • +
    +
    + + + + DryPills + + A pill containing targeted mechanites that permanantly suppresses certain unwanted biological processes. It will permanantly disable all production mutations on a pawn, preventing them from producing any resources. + +Dry pills are often used to make mutagen exposure victims more comfortable until they can be reverted. It also works as a preventative measure against becoming etherbroken/bonded for production morphs who prefer to keep their forms but don't wish to produce. + + Things/Item/Drug/pills-26 + + + 400 + 30 + + + +
  • + MutagenInfused + 2 + + true + +
  • +
    +
    + + LozengeProduction + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 2 + + +
  • + 1010 +
  • +
    +
    + + + + AspectReverterPills + + A pill that triggers a soft mechanite "reboot" within a pawn's body, restoring it to a base state. This has the effect of removing all aspects from a mutated pawn, but does not remove any mutations. It will cure etherbonded and etherbroken pawns, allow dry pawns to produce resources again, and restore boosted pawns to normal production levels once more. + +It will not cure certain species-specific aspects, such as pack or herd mentalties. Warning: Paragon morphs will lose their paragon status if given X-aspect. + +X-aspect is most commonly used to restore human-level sapience to etherbroken and etherbonded pawns when reverter is not an option. It does not prevent a pawn from becoming etherbroken a second time, however, so it is usually followed up with a course of dry pills. However, certain unethical farmers are known to exploit this property to ensure their "alternative livestock" become etherbonded. + + Things/Item/Drug/pills-28 + + + 400 + 30 + + + +
  • +
    +
    + + LozengeProduction + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 2 + + +
  • + 1010 +
  • +
    +
    + + + + MutagenStabiliser + + These pills contain a refined form of antigen in a slow-release capsule. When taken, they will neutralize any active mutagenic mechanites in the body after a short duration while preventing further mutations for five days. + +Stabilizer is commonly used as a prophylaxis to protect the user from mutagenic diseases and mutagenic buildup when working in highly contaminated areas. It's also officially prescribed alongside mutagen injectors to halt the transformation process when finished, though most mutagen junkies prefer raw antigen as a cheaper and equally-effective alternative. + + Things/Item/Drug/pills2 + Graphic_Single + + false + false + + 400 + 50 + 0.005 + 0.7 + + Industrial + + Medical + +
  • + StabiliserHigh + 1.0 +
  • +
    +
    + + Stabilisation + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + Intellectual + 2 +
    + + 1 + 2 + + +
  • + 1000 + + 0.08 + 0.14 + +
  • +
    +
    + + + MutagenAccelerator + + These pills contain booster mechanites, which will link up with any mutagenic mechanites in the body and allow them to work faster. This greatly increases the rate of gaining and adapting to mutations for five days. It also increases the likelihood of a pawn fully transforming into an animal. + +Accelerators are commonly used by mutagen junkies looking to quickly get their transformation fix. More than a few have misjudged their stabilizer dose and accidentally ended up on all fours. + + Things/Item/Drug/pills-27 + Graphic_Single + + false + false + + 400 + 30 + 0.005 + 0.7 + + Industrial + + +
  • + AcceleratorHigh + 1.0 +
  • +
    +
    + + Stabilisation + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 2 + + +
  • + 1000 +
  • +
    +
    + + + + SapiencePill + + An advanced form of pill that contains a cocktail of repair mechanites and sapience-boosting drugs. When given to a former human, the pills will stimulate the regrowth of their higher-order consciousness while also repairing the mechanite support network that maintainas it, allowing them to gradually regain sapience. + +Intelliboost is unable to restore the consciousness of permanantly feral humans, as the mechanite network within them has been damaged beyond repair. + + Things/Item/Drug/intelliboost + + + 400 + 50 + + + +
  • + SapiencePillSapienceIncrease + 1.0 +
  • +
    +
    + + Reversion + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + 2 +
    + + 1 + 2 + + +
  • + 1010 +
  • +
    +
    + + + StabiliserHigh + This pawn has been stabilised against further mutations. This lasts for five days, and the pawn cannot receive additional mutations in this timeframe. + HediffWithComps + + (179,86,132) + true + 1.0 + false + True + True + +
  • + -0.18 + true +
  • +
  • + +
  • Pawnmorph.Hediffs.MorphTf
  • +
  • Pawnmorph.Hediffs.Hediff_MutagenicBase
  • + + + +
    + +
  • + + -1.5 + -1.5 + 1 + +
  • +
    +
    + + + AcceleratorHigh + HediffWithComps + + This pawn's mutations are appearing at an accelerated rate. + (179,86,132) + true + 1.0 + false + +
  • + -0.18 +
  • +
  • + Pawnmorph.Hediffs.Comp_RestartMutationProgression +
  • +
    + +
  • + + 2 + 0.2 + -1 + +
  • +
    +
    + + + SapiencePillSapienceIncrease + + This pawn's sapience is slowly increasing to a human level, thanks to the administration of intelliboost pills. + Pawnmorph.Hediffs.Hediff_Descriptive + 0 + 1 + +
  • + + 0.2 + +
  • +
    + +
  • + -0.07 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Drugs/Drugs_Reverter.xml b/1.5/Defs/Drugs/Drugs_Reverter.xml new file mode 100644 index 000000000..b8fd5224d --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_Reverter.xml @@ -0,0 +1,44 @@ + + + ReversionSyringe + + A powerful dose of specially-tuned mutagenic mechanites, stabilized and kept in check by antigen. When administered to a mutated human or former human, it will use the data stored within the mechanites in their body to reconstruct their original form, and then initiate a controlled mutation back towards that form. It can restore a former-human animal to a humanoid form, or gradually remove all mutations from a humanoid pawn. + +Because reverter relies on the data stored within the mutagenic mechanites to revert an animal back to human form, it will reconstruct their body exactly as it was when they first transformed, bionics and health conditions included. It cannot revert permanantly feral pawns, as the mechanites within them have degraded to the point that the data on their original form has been permanantly lost. + + Things/Item/Drug/Reversal + + + 600 + 300 + + +
  • Medicine
  • +
    + + +
  • + StabiliserHigh + 1.00 +
  • +
  • +
    +
    + + Reversion + +
  • MutagenLab
  • +
    +
    + + 1 + 1 + 2 + + +
  • + 1000 +
  • +
    +
    +
    diff --git a/1.5/Defs/Drugs/Drugs_TransformerSerums.xml b/1.5/Defs/Drugs/Drugs_TransformerSerums.xml new file mode 100644 index 000000000..47e11a8c4 --- /dev/null +++ b/1.5/Defs/Drugs/Drugs_TransformerSerums.xml @@ -0,0 +1,384 @@ + + + + 600 + 100 + + +
  • Serum
  • +
    + + SerumSynthesis + +
  • MutagenLab
  • +
    +
    + + 2 + + +
  • + 1010 +
  • +
    +
    + + + RandomTransformer + + A serum filled with mechanites and animal DNA that causes random mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + Things/Item/Drug/SerumGreen + + + +
  • + Animal + + 1.00 +
  • +
    +
    +
    + + + + 800 + 120 + + +
  • Serum
  • +
    + + AdvancedSerumSynthesis + +
  • MutagenLab
  • +
    +
    + + 2 + + +
  • + 1010 +
  • +
    +
    + + + + + + Things/Item/Drug/SerumYellow + + + + + RandomAridTransformer + + A serum filled with mechanites and animal DNA that causes mutations suited for arid environments. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + 1.00 + true + Arid +
  • +
    +
    +
    + + + RandomColdTransformer + + A serum filled with mechanites and animal DNA that causes mutations suited for cold environments. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Cold + 1.00 +
  • +
    +
    +
    + + + RandomTemperateTransformer + + A serum filled with mechanites and animal DNA that causes mutations suited for temperate environments. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Temperate + 1.00 +
  • +
    +
    +
    + + + RandomTropicalTransformer + + A serum filled with mechanites and animal DNA that causes mutations suited for tropical environments. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Tropical + 1.00 +
  • +
    +
    +
    + + + + + + Things/Item/Drug/SerumRed + + + + + RandomCombatTransformer + + A serum filled with mechanites and animal DNA that causes combat-oriented mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Combat + 1.00 +
  • +
    +
    +
    + + + RandomProductionTransformer + + A serum filled with mechanites and animal DNA that causes production-oriented mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Production + 1.00 +
  • +
    +
    +
    + + + RandomCrafterTransformer + + A serum filled with mechanites and animal DNA that causes crafting-oriented mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Crafter + 1.00 +
  • +
    +
    +
    + + + RandomSocialTransformer + + A serum filled with mechanites and animal DNA that causes socially-inclined mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Social + 1.00 +
  • +
    +
    +
    + + + + + + Things/Item/Drug/SerumBlue + + + + + RandomPowerfulTransformer + + An unidentified serum with powerful effects dissimilar to anything else. These ones take longer, and consume more hunger than other types of serums...but provide very powerful creatures. + + Things/Item/Drug/SerumPowerful + + + 2000 + 400 + + + PowerfulSerumSynthesis + + + 3 + 1 + 5 + + + +
  • + Powerful + true + 1.00 + true +
  • +
    +
    +
    + + + RandomDomesticTransformer + + A serum filled with mechanites and animal DNA that causes domestic animal mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + true + Domestic + 1.00 +
  • +
    +
    +
    + + + RandomAvianTransformer + + A serum filled with mechanites and animal DNA that causes avian mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Avian + 1.00 +
  • +
    +
    +
    + + + RandomBovidTransformer + + A serum filled with mechanites and animal DNA that causes bovid mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Bovid + 1.00 +
  • +
    +
    +
    + + + RandomCanineTransformer + + A serum filled with mechanites and animal DNA that causes canid mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Canid + 1.00 +
  • +
    +
    +
    + + + RandomCervidTransformer + + A serum filled with mechanites and animal DNA that causes cervid mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Cervid + 1.00 +
  • +
    +
    +
    + + + RandomEquineTransformer + + A serum filled with mechanites and animal DNA that causes equine mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Equine + 1.00 +
  • +
    +
    +
    + + + RandomFelineTransformer + + A serum filled with mechanites and animal DNA that causes feline mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Feline + 1.00 +
  • +
    +
    +
    + + + RandomRodentTransformer + + A serum filled with mechanites and animal DNA that causes rodent mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Rodent + 1.00 +
  • +
    +
    +
    + + + RandomReptileTransformer + + A serum filled with mechanites and animal DNA that causes reptilian mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Reptile + 1.00 +
  • +
    +
    +
    + + + RandomUrsineTransformer + + A serum filled with mechanites and animal DNA that causes ursine mutations. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + Ursine + 1.00 +
  • +
    +
    +
    + +
    diff --git a/1.5/Defs/Drugs_MutagenicMechSerums.xml b/1.5/Defs/Drugs_MutagenicMechSerums.xml new file mode 100644 index 000000000..ccd98becd --- /dev/null +++ b/1.5/Defs/Drugs_MutagenicMechSerums.xml @@ -0,0 +1,106 @@ + + + MechSerumMutagenicHealer + + A lesser version of the healer mech serum made from reprogrammed mutagenic mechanites. The mechanites will target and heal the single worst health condition affecting someone at any given time. Works even on health conditions that would otherwise be incurable, including reconstructing lost tissue and limbs. \n\nBecause some of the mechanites have leftover mutagenic programming, there is a high risk that the restored body part will end up mutated, regardless of any anti-mutagenic agent in the user's body. + + Things/Item/Special/MechSerumHealer + Graphic_Single + + 10 + +
  • ItemsMisc
  • +
    + + 700 + + Sellable + +
  • + UseItem + Use mutagenic healer mech serum + 600 +
  • +
  • + Pawnmorph.Comp_MutagenicFixWorstCondition +
  • +
  • + + +
  • RewardStandardLowFreq
  • + + +
  • + HealerMutagen +
  • +
    +
    + + + MechSerumResurrectorTf + + Death is irrelevant. + + Things/Item/Special/MechSerumResurrector + Graphic_Single + + 10 + +
  • ItemsMisc
  • +
    + + 1200 + + Sellable + +
  • + UseItem + Use resurrector mech serum + 0 +
  • +
  • + true + true +
  • +
  • +
  • + + + + true + +
  • Thrumbo
  • + + + + + + + Allowed + + + false + + + + + true + +
  • Powerful
  • +
    +
    + +
    + +
  • RewardStandardLowFreq
  • +
    +
    +
    diff --git a/1.5/Defs/Factions/FactionDefs.xml b/1.5/Defs/Factions/FactionDefs.xml new file mode 100644 index 000000000..bd1810671 --- /dev/null +++ b/1.5/Defs/Factions/FactionDefs.xml @@ -0,0 +1,155 @@ + + + PawnmorpherPlayerColony + + A colony of recently-escaped morphs. + true + Morph + morph + morphs + Industrial +
  • Astropolitan
  • + +
  • + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
  • Outlander
  • + + +
    + World/WorldObjects/Expanding/Town + NamerInitialSettlementColony + NamerFactionOutlander + NamerSettlementOutlander + +
  • ClassicStart
  • +
    + + +
  • Synthread
  • +
  • Cloth
  • +
  • Morphsilk
  • +
    +
    + +
  • HumanPrimacy
  • +
  • FleshPurity
  • +
    +
    + + + + morph + morphs + 30 + 0.2 + 1 + true + true + true + magistrate + UI/Icons/FreeMorphs + NamerFactionOutlander + NamerSettlementOutlander + Industrial + +
  • + + +
  • MutantWanderer
  • +
  • FreeMutant
  • + +
  • Offworld
  • + + 0.95 + +
  • + +
  • Outlander
  • +
  • Offworld
  • + + 0.05 + +
    + +
  • Visitor_Outlander_Standard
  • +
    + +
  • Base_Outlander_Standard
  • +
    + -40~45 + + +
  • (0,35)
  • +
  • (70,50)
  • +
  • (700,100)
  • +
  • (1300,150)
  • +
  • (100000,10000)
  • +
    +
    + +
  • + Combat + + 5 + 10 + 10 + 15 + 10 + 10 + +
  • +
  • + Peaceful + + 20 + 10 + 10 + +
  • +
  • + Trader + + 1 + + + 6 + 5 + 2 + 1 + + + 3 + 10 + +
  • +
  • + Settlement + + 10 + 10 + 10 + +
  • +
    + World/WorldObjects/DefaultSettlement + +
  • HumanPrimacy
  • +
  • FleshPurity
  • +
    +
    + + + PawnmorpherEnclave + + These people are outcasts, mutation victims and cult escapees who have banded together to be a safe haven for morphs and mutants worldwide. + +
  • (0.35,0.30,0.60)
  • +
  • (0.45,0.40,0.90)
  • +
    + 9999 + 100 +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Factions/Factions_Player.xml b/1.5/Defs/Factions/Factions_Player.xml new file mode 100644 index 000000000..375e6d0d8 --- /dev/null +++ b/1.5/Defs/Factions/Factions_Player.xml @@ -0,0 +1,185 @@ + + + + + PawnmorpherPlayerFaction + + Fixed + ScenPart_PlayerFaction + 1000 + + + + Escaped Morphs + + The four of you have escaped from the genetics lab as it burned to the ground, carrying only what you could grab on the way out. You're all changed, but finally free. How you'll survive now is up to you. + + Four escaped mutants - a twist on the usual Rimworld experience -- your starting mutations matter! + + PawnmorpherPlayerFaction + PawnmorpherPlayerColony + + + + +
  • + ConfigPage_ConfigureStartingPawns + 4 + 8 +
  • + + +
  • + PlayerPawnsArriveMethod + Standing +
  • + + + +
  • + SetNeedLevel + false + PlayerStarter + 1.0 + Food + + 0.3 + 0.8 + +
  • + + +
  • + StartingThing_Defined + Silver + 500 +
  • +
  • + StartingThing_Defined + MealSurvivalPack + 20 +
  • +
  • + StartingThing_Defined + MedicineIndustrial + 20 +
  • +
  • + StartingThing_Defined + ComponentIndustrial + 30 +
  • +
  • + StartingThing_Defined + Gun_BoltActionRifle +
  • +
  • + StartingThing_Defined + Mutarifle +
  • +
  • + StartingThing_Defined + Gun_Revolver +
  • +
  • + StartingThing_Defined + MeleeWeapon_MutaniteSpear + Plasteel +
  • +
  • + StartingThing_Defined + Apparel_AdvancedHelmet + Plasteel +
  • +
  • + StartingThing_Defined + Apparel_SimpleHelmet + Steel +
  • +
  • + StartingAnimal + 2 + 1.0 +
  • + +
  • + ScatterThingsNearPlayerStart + WoodLog + 500 +
  • + + +
  • + GameStartDialog + None of you dared to look behind to the plumes of ash and biomatter rising from the genetics lab. All of you were free, but not everyone could be saved. Now, changed for better or worse, how are you going to cope with a new life in an unknown land? + GameStartSting +
  • + +
    +
    +
    + + + + + Human + 30 + false + true + true + 0~1 + 10~17 + + + + Morph + + PawnmorpherPlayerColony + 0.06 + +
  • IndustrialBasic
  • +
    + 0.3 + + 350 + 600 + + 1 + 0.03 + + 50 + 800 + + +
  • Poor
  • +
  • Simple
  • +
    + + +
  • + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • SheepMorph
  • +
  • BoomalopeMorph
  • +
  • DeerMorph
  • +
  • PigMorph
  • +
  • IguanaMorph
  • +
  • SnakeMorph
  • +
  • BearMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • MonkeyMorph
  • +
  • HareMorph
  • +
  • SquirrelMorph
  • +
  • WolfMorph
  • + + 0~10 + +
    +
    + +
    diff --git a/1.5/Defs/Factions/Factions_Test.xml b/1.5/Defs/Factions/Factions_Test.xml new file mode 100644 index 000000000..1c8a8c461 --- /dev/null +++ b/1.5/Defs/Factions/Factions_Test.xml @@ -0,0 +1,390 @@ + + + + + + Human + PawnmorpherEnclave + 0.05 + 0.05 + 2.55 + +
  • IndustrialBasic
  • +
  • IndustrialAdvanced
  • +
    + + 0.70 + +
  • + 90 + Silver + + 30 + 100 + +
  • +
    +
    + 0~1 + 10~17 + +
  • + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • PigMorph
  • +
  • DeerMorph
  • +
  • BearMorph
  • +
  • MonkeyMorph
  • +
  • WargMorph
  • +
  • AlpacaMorph
  • +
  • WolfMorph
  • +
  • SheepMorph
  • + + 0~10 + +
    + +
    + + + + PawnmorpherSlave + + 30 + Human + PawnmorpherEnclave + Poor + 0.10 + false + 0.05 + + 0.2 + 0.8 + + +
  • IndustrialBasic
  • +
    + + 0 + 350 + + 0 + 0.03 + + 50 + 800 + + +
  • Poor
  • +
    + true + 1 + Pemmican + 0~1 + 10~17 + +
  • + +
  • BoarMorph
  • +
  • CatMorph
  • +
  • FoxMorph
  • +
  • CowMorph
  • +
  • HuskyMorph
  • +
  • ChookMorph
  • +
  • RatMorph
  • +
  • PigMorph
  • +
  • DeerMorph
  • +
  • BearMorph
  • +
  • MonkeyMorph
  • +
  • WargMorph
  • +
  • AlpacaMorph
  • +
  • WolfMorph
  • + + 0~10 + +
    +
    + + + PMEnclaveVillager + + 35 + Poor + false + + 0.2 + 2.0 + + +
  • Gun
  • +
  • MedievalMeleeBasic
  • +
    + + 65 + 250 + + + 200 + 400 + + 0.4 + 0.06 + + 50 + 600 + + +
  • Poor
  • +
  • Simple
  • +
    + +
    + + + PMEnclaveTown_Guard + + 55 + true + + 0.6 + 2 + + +
  • IndustrialMilitaryBasic
  • +
  • BeltDefensePop
  • +
    + + 400 + 600 + + 0.4 + +
  • Gun
  • +
    + + 250 + 400 + + 0.04 + + 200 + 700 + + +
  • Poor
  • +
  • Simple
  • +
    +
    + + + PMEnclaveTown_Trader + + true + 40 + false + + 1 + 1 + + Normal + +
  • Gun
  • +
    + + 200 + 200 + + + 400 + 600 + + +
  • IndustrialMilitaryBasic
  • +
  • IndustrialMilitaryAdvanced
  • +
  • BeltDefensePop
  • +
    + +
  • Apparel_BowlerHat
  • +
    + 0.15 + + 600 + 1500 + + +
  • Poor
  • +
  • Simple
  • +
  • Advanced
  • +
    +
    + + + PMEnclaveTown_Councilman + + enclave councilmen + 60 + true + 30 + false + + 1 + 1 + + Good + + 200 + 200 + + +
  • Gun
  • +
    + + 700 + 1200 + + +
  • IndustrialMilitaryBasic
  • +
  • BeltDefensePop
  • +
    + +
  • Apparel_BowlerHat
  • +
    + 0.15 + + 600 + 1500 + + +
  • Simple
  • +
  • Advanced
  • +
    +
    + + + PMEnclaveMercenary + + enclave freedom fighters + 90 + Normal + + 0.6 + 2 + + + 350 + 650 + + +
  • Gun
  • +
  • SniperRifle
  • +
    + + 1000 + 1500 + + +
  • IndustrialBasic
  • +
  • IndustrialAdvanced
  • +
  • IndustrialMilitaryBasic
  • +
  • IndustrialMilitaryAdvanced
  • +
  • BeltDefensePop
  • +
    + 0.05 + 0~2 + 0.15 + + 600 + 1500 + + +
  • Simple
  • +
  • Advanced
  • +
    +
    + + + PMEnclaveHeavyMercenary + + enclave guerillas + 150 + Normal + + 0.6 + 2 + + + 350 + 650 + + +
  • GunHeavy
  • +
  • GunSingleUse
  • +
  • GrenadeDestructive
  • +
  • GrenadeEMP
  • +
  • GrenadeSmoke
  • +
    + + 300 + 400 + + +
  • IndustrialBasic
  • +
  • IndustrialAdvanced
  • +
  • IndustrialMilitaryBasic
  • +
  • IndustrialMilitaryAdvanced
  • +
  • BeltDefensePop
  • +
    + 0.05 + 0~2 + 0.15 + + 600 + 1500 + + +
  • Simple
  • +
  • Advanced
  • +
    +
    + + + PMEnclaveEliteMercenary + + enclave enforcers + 150 + + 1 + 1 + + 500~1400 + +
  • IndustrialGunAdvanced
  • +
    + 2500~3500 + 0.9 + +
  • IndustrialBasic
  • +
  • IndustrialAdvanced
  • +
  • IndustrialMilitaryBasic
  • +
  • IndustrialMilitaryAdvanced
  • +
  • SpacerMilitary
  • +
  • BeltDefensePop
  • +
    + 1000~1200 + +
  • Advanced
  • +
  • ImplantEmpireCommon
  • +
    + 0.35 + 0.80 + 1~2 + 0.3 +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Groups/Groups_Core.xml b/1.5/Defs/Groups/Groups_Core.xml new file mode 100644 index 000000000..3ecd3fce5 --- /dev/null +++ b/1.5/Defs/Groups/Groups_Core.xml @@ -0,0 +1,14 @@ + + + + Humans + + + + (171,106,217) + + + + ThoughtWorker_Hediff + + \ No newline at end of file diff --git a/1.5/Defs/Groups/Groups_Herd.xml b/1.5/Defs/Groups/Groups_Herd.xml new file mode 100644 index 000000000..a2f5ae849 --- /dev/null +++ b/1.5/Defs/Groups/Groups_Herd.xml @@ -0,0 +1,59 @@ + + + HerbivoreHerding + + HerdMind + PM_HerdMindedBarrack + PM_HerdMindedBedroom + PM_HerdMindedAscetic + + + + HerdMind + + +
  • + alone + I'm the only one of my kind. I feel so unsafe being all alone. +
  • +
  • + lonely + There's another like me, but we're still only a small herd. I still don't feel very safe. +
  • +
  • + comfortable + There's a decent number of people in my herd. Safety in numbers! +
  • +
  • + happy + There's plenty of people in my herd. There's nothing to fear! +
  • +
    +
    + + + HerdMinded + +
  • + + I'm the only one of my kind. I feel so unsafe being all alone. + -2 +
  • +
  • + + There's another like me, but we're still only a small herd. I still don't feel very safe. + -1 +
  • +
  • + + There's a decent number of people in my herd. Safety in numbers! + 1 +
  • +
  • + + There's plenty of people in my herd. There's nothing to fear! + 5 +
  • +
    +
    +
    diff --git a/1.5/Defs/Groups/Groups_Pack.xml b/1.5/Defs/Groups/Groups_Pack.xml new file mode 100644 index 000000000..2412daea3 --- /dev/null +++ b/1.5/Defs/Groups/Groups_Pack.xml @@ -0,0 +1,59 @@ + + + Canines + + CanidMind + PM_PackMindedBarrack + PM_PackMindedBedroom + PM_PackMindedAscetic + + + + CanidMind + + +
  • + alone + I'm the only one of my kind. I feel so alone without a proper pack. +
  • +
  • + lonely + There's another like me, but we're still only a small pack. It's a bit lonely. +
  • +
  • + comfortable + There's a decent number people in my pack. I'm glad to have them. +
  • +
  • + happy + There's plenty of people in my pack. This is great! +
  • +
    +
    + + + PackMinded + +
  • + + I'm the only one of my kind. I feel so alone without a proper pack. + -2 +
  • +
  • + + There's another like me, but we're still only a small pack. It's a bit lonely. + -1 +
  • +
  • + + There's a decent number people in my pack. I'm glad to have them. + 1 +
  • +
  • + + There's plenty of people in my pack. This is great! + 5 +
  • +
    +
    +
    diff --git a/1.5/Defs/Hediffs/Deprecated/Depreciated_Diseases.xml b/1.5/Defs/Hediffs/Deprecated/Depreciated_Diseases.xml new file mode 100644 index 000000000..b8c308c71 --- /dev/null +++ b/1.5/Defs/Hediffs/Deprecated/Depreciated_Diseases.xml @@ -0,0 +1,542 @@ + + + Pawnmorph.Hediffs.MorphDisease + true + true + true + true + 1.001 + +
  • + 12 + -0.133 +
  • +
  • + 0.3288 + 0.2708 + -0.2947 + -0.06 +
  • +
    +
    + + + FoxFlu + + This pawn has contracted a mutagenic disease that makes them feel much more...foxy. + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + FoxMorph + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + FoxMorph + 3 + 1 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + FoxMorph + 6 + 1 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + +
  • + 0.999 + + +
  • Fox_Red
  • +
  • Fox_Arctic
  • +
  • Fox_Fennec
  • + + TransformationCanid + 100 + +
    +
    + + + Chookflu + + This pawn has contracted a mutagenic disease that seems to be making them cluck and strut. + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + ChookMorph + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + ChookMorph + 3 + 1 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + ChookMorph + 6 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + 1 + +
  • + 0.999 + + +
  • Chicken
  • + + TransformationChicken + Female + 70 + 100 + +
    +
    + + + Swineflu + + This pawn has contracted a mutagenic disease that seems to make them want to roll in mud and root at the ground. + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + PigMorph + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + PigMorph + 3 + 1 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + PigMorph + 6 + 1 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + +
  • + 0.999 + + +
  • Pig
  • + + TransformationMisc + 100 + +
    +
    + + + Cowflu + + This pawn his contracted a mutagenic disease that seems to make them want to let out a loud moo. + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + CowMorph + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + CowMorph + 1 + 3 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + CowMorph + 6 + 1 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + +
  • + 0.999 + + +
  • Cow
  • + + TransformationCow + Female + 70 + 100 + +
    +
    + + + + Chaoflu + + This pawn has contracted a mutagenic disease that seems to be very random and chaotic, due to the high level of conflicting mutagenic mechanites in their system. + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + Animal + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + Animal + 3 + 1 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + Animal + 6 + 1 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + +
  • + 0.999 + + Switch + 25 + +
  • Chaocow
  • +
  • Chaofox
  • +
  • Chaodino
  • + + TransformationMisc + 100 + +
    +
    + + + HuskyFlu + + This pawn has contracted a mutagenic disease that seems to be making them bark and wag their tail. + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + HuskyMorph + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + HuskyMorph + 3 + 1 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + HuskyMorph + 6 + 1 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + +
  • + 0.999 + + +
  • Husky
  • + + TransformationMisc + 100 + +
    +
    +
    diff --git a/1.5/Defs/Hediffs/Hediffs_Abilities.xml b/1.5/Defs/Hediffs/Hediffs_Abilities.xml new file mode 100644 index 000000000..1f187c526 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_Abilities.xml @@ -0,0 +1,31 @@ + + + Bullrush + Pawnmorph.Hediffs.Hediff_Bullrush + This pawn is currently under the affect of bullrush. + + (255,0,255) + false + 1.0 + false + +
  • + -24 + true +
  • +
    + +
  • + +
  • + Moving + 0.2 +
  • + + + -0.25 + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Hediffs/Hediffs_Bases.xml b/1.5/Defs/Hediffs/Hediffs_Bases.xml new file mode 100644 index 000000000..5ae1fd4c7 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_Bases.xml @@ -0,0 +1,59 @@ + + + Pawnmorph.Hediffs.Hediff_MutagenicBase + (77,68,179) + true + false + 1 + 1 + +
  • + -0.1 +
  • +
  • + 1 + +
  • +
  • +
  • + + + + + + +
  • + AspectGivingMutagen +
  • + + +
  • + + 0.5 +
  • +
    +
    + + + Pawnmorph.Hediffs.Hediff_MutagenicBase + +
  • + + + + + +
  • + +
  • + PlantAffinity + Plants + 5 + + 0.07 +
  • + + + +
    +
    diff --git a/1.5/Defs/Hediffs/Hediffs_Drug.xml b/1.5/Defs/Hediffs/Hediffs_Drug.xml new file mode 100644 index 000000000..414d77af1 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_Drug.xml @@ -0,0 +1,33 @@ + + + PM_Reverting + This pawn is slowly reverting to human. + HediffWithComps + + (179,86,132) + true + 1.0 + false + +
  • + -0.4 +
  • +
  • + +
  • Pawnmorph.Hediffs.MorphTf
  • +
  • Pawnmorph.Hediffs.Hediff_MutagenicBase
  • + + + +
    + +
  • + + -1.5 + -1.5 + 1 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Hediffs/Hediffs_ExperimentalInjector.xml b/1.5/Defs/Hediffs/Hediffs_ExperimentalInjector.xml new file mode 100644 index 000000000..5706bb4a1 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_ExperimentalInjector.xml @@ -0,0 +1,16 @@ + + + PM_ExperimentalInjector + + Pawnmorph.Hediffs.TaggingInjector + This pawn has received a dose of an experimental injector, which creates random mutations, but tag any mutations given. + +
  • +
    + +
  • + Pawnmorph.Hediffs.Comp_MutationTagger +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Hediffs/Hediffs_FormerHuman.xml b/1.5/Defs/Hediffs/Hediffs_FormerHuman.xml new file mode 100644 index 000000000..db3133e2c --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_FormerHuman.xml @@ -0,0 +1,411 @@ + + + (131, 65, 155) + false + + + + TransformedHuman + + [PAWN_nameDef] used to be a human, but by whatever means has now been transformed into this current form. In this state, [PAWN_pronoun] can be reverted. + Pawnmorph.Hediffs.FormerHuman + true + +
  • + +
  • +
  • + + 0.4 + + 0.05 + 0.05 + -0.25 + +
  • +
  • + + 0.6 + + 0.1 + 0.1 + -0.5 + +
  • +
  • + + 0.8 + + 0.2 + 0.2 + -1 + +
  • +
  • + + 1 + + 0.2 + 0.2 + -1 + +
  • +
    +
    + + + Animalistic + + Due to certain mutations or having spent time as an animal, this pawn is struggling to maintain their sapience + Pawnmorph.Hediffs.FormerHuman + 2 + +
  • + +
  • +
  • + + 0.4 + + 0.05 + 0.05 + -0.25 + 1 + +
  • +
  • + + 0.6 + + 0.1 + 0.1 + -0.5 + 1 + +
  • +
  • + + 0.8 + + 0.2 + 0.2 + -1 + 1 + +
  • +
  • + + 1 + + 0.2 + 0.2 + -1 + 1 + +
  • +
    +
    + + + 2xMergedHuman + + true + [PAWN_nameDef] is a creature that should never have been, a fusion of two beings which mutated to become one animalistic monstrosity. + Pawnmorph.Hediffs.FormerHuman + +
  • + +
  • +
  • + + 0.4 + + 0.05 + 0.05 + -0.25 + +
  • +
  • + + 0.6 + + 0.1 + 0.1 + -0.5 + +
  • +
  • + + 0.8 + + 0.2 + 0.2 + -1 + +
  • +
  • + + 1 + + 0.2 + 0.2 + -1 + +
  • +
    +
    + + + PermanentlyFeral + + [PAWN_nameDef] used to be a human, but the mechanites in [PAWN_possessive] system have forgotten his prior form — [PAWN_pronoun] is now sealed in this form for the rest of [PAWN_possessive] life. Reversion serums will not work. + HediffWithComps + + + + WasAnimal + + [PAWN_nameDef] was turned into an animal, but [PAWN_pronoun] got better. However, [PAWN_pronoun] is not too happy about it. + HediffWithComps + +
  • + + 90000 + 150000 + +
  • +
    + +
  • + 0 + + +
  • + Consciousness + -1 +
  • + + +
  • + 0.01 + + +
  • + Consciousness + -0.1 +
  • + + +
  • + WanderConfused + 5 +
  • +
    + +
  • + 0.80 + + +
  • + WanderConfused + 5 +
  • + + +
  • + 0.99 + + +
  • + Consciousness + -0.2 +
  • + + +
    +
    + + + WasMergedRelieved + + [PAWN_nameDef] was joined with another person in a chaotic mash of flesh and flesh, but finds the insight valuable. + HediffWithComps + +
  • + + 90000 + 150000 + +
  • +
    + +
  • + 0 + + +
  • + Consciousness + -1 +
  • + + +
  • + 0.01 + + +
  • + Consciousness + 0.2 +
  • + + +
  • + WanderConfused + 10 +
  • +
    + +
  • + 0.80 + + +
  • + Consciousness + 0.5 +
  • + + +
  • + WanderConfused + 5 +
  • +
    + +
  • + 0.99 + + +
  • + Consciousness + 0.1 +
  • + + +
    +
    + + + WasMerged + + [PAWN_nameDef] was joined with another person in a chaotic mash of flesh and flesh, and is scarred from the experience. + HediffWithComps + +
  • + + 90000 + 150000 + +
  • +
    + +
  • + 0 + + +
  • + Consciousness + -1 +
  • + + +
  • + 0.01 + + +
  • + Consciousness + 0.2 +
  • + + +
  • + WanderConfused + 5 +
  • +
    + +
  • + 0.80 + + +
  • + Consciousness + 0.5 +
  • + + + +
  • + 0.99 + + +
  • + Consciousness + 0.1 +
  • + + +
    +
    + + + WasAnimalRelieved + + [PAWN_nameDef] was turned into an animal, but [PAWN_pronoun] got better. However, [PAWN_pronoun] takes it as a learning opportunity. + HediffWithComps + +
  • + + 90000 + 150000 + +
  • +
    + +
  • + 0 + + +
  • + Consciousness + -1 +
  • + + +
  • + 0.01 + + +
  • + Consciousness + 0.2 +
  • + + +
  • + 0.80 + +
  • +
  • + 0.99 + + +
  • + Consciousness + -0.2 +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Hediffs/Hediffs_Misc.xml b/1.5/Defs/Hediffs/Hediffs_Misc.xml new file mode 100644 index 000000000..95cdc2a91 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_Misc.xml @@ -0,0 +1,55 @@ + + + FeralPillSapienceDrop + + This pawn's sapience is rapidly degrading to an animal level, thanks to the administration of feral pills. + Pawnmorph.Hediffs.Hediff_Descriptive + 0 + 1 + +
  • + + -2 + +
  • +
    + +
  • + -0.6 +
  • +
    +
    + + + PM_InstantStabiliserHigh + This pawn has been stabilised against further mutations. This lasts for five days, and the pawn cannot receive additional mutations in this timeframe. + HediffWithComps + + (179,86,132) + true + 1.0 + false + +
  • + -2 +
  • +
  • + +
  • Pawnmorph.Hediffs.MorphTf
  • +
  • Pawnmorph.Hediffs.Hediff_MutagenicBase
  • + + +
    + +
  • + + -1.5 + -1.5 + 1 + +
  • +
    +
    + + +
    diff --git a/1.5/Defs/Hediffs/Hediffs_MutaGunTf.xml b/1.5/Defs/Hediffs/Hediffs_MutaGunTf.xml new file mode 100644 index 000000000..8de3395c2 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_MutaGunTf.xml @@ -0,0 +1,39 @@ + + + SyringeRifleHediff + + Pawnmorph.Hediffs.SyringeRifleTf + This pawn has been shot with a powerful, fast-acting dose of mutagenic mechanites and is highly likely to change into something very quickly, which may leave them paralysed for a time. + 0 + +
  • + 1 + 0 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + 50 + +
  • + 0.9 +
  • +
    + +
  • + 15 +
  • +
  • + + + \ No newline at end of file diff --git a/1.5/Defs/Hediffs/Hediffs_MutagenicBuildups.xml b/1.5/Defs/Hediffs/Hediffs_MutagenicBuildups.xml new file mode 100644 index 000000000..5a3ac38fd --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_MutagenicBuildups.xml @@ -0,0 +1,340 @@ + + + + + Pawnmorph.Hediffs.Hediff_MutagenicBase + (0.7, 1.0, 0.7) + Having been exposed to high levels of mutagenic mechanites, they are beginning to build up in this pawn's system, which will induce mutations at a high enough concentration. + -1 + 1 + + +
  • + ChaoticMutagen +
  • + +
    + + + + true + true + MutationToxicityRevealed + +
  • + + 470.16 + 538.77 + +
  • +
    + +
  • + + false + + + +
  • Minor
  • + + + + +
  • + + 0.04 + 0.1 + +
  • + Consciousness + -0.05 +
  • + + + + +
  • Minor
  • +
    +
    + + +
  • + + 0.2 + 0.2 + +
  • + Consciousness + -0.10 +
  • + + + + +
  • Minor
  • +
  • Major
  • +
    +
    + + +
  • + + 0.40 + 5 + 0.3 + +
  • + Consciousness + -0.15 +
  • + + + + +
  • Minor
  • +
  • Major
  • +
    +
    + + +
  • + + 0.60 + 1 + 0.4 + +
  • + Consciousness + -0.25 +
  • + + + + + +
  • + + 0.80 + 0.5 + 0.6 + +
  • + Consciousness + 0.50 +
  • + + + + + +
  • + 0.85 + + 0.8 + + + +
  • +
  • + 0.99 + + 0.9 + + + +
  • +
  • + 1 + + 0.9 + + + +
  • Thrumbo
  • + + + + 0.3 + + +
    +
    + + + + MutagenicBuildup_Weapon + Having been exposed to high levels of mutagenic mechanites, they are beginning to build up in this pawn's system, which will induce mutations at a high enough concentration. + +
  • + 43.25 + 0.05 +
  • +
    +
    + + + MutagenicBuildup_SmallExplosion + Having been exposed to high levels of mutagenic mechanites, they are beginning to build up in this pawn's system, which will induce mutations at a high enough concentration. + +
  • + 70.75 + 0.12 +
  • +
    +
    + + MutagenicBuildup_LargeExplosion + Having been exposed to high levels of mutagenic mechanites, they are beginning to build up in this pawn's system, which will induce mutations at a high enough concentration. + +
  • + 150.25 + 0.45 +
  • +
    +
    + + + + + MutagenicBuildup + Having been exposed to high levels of mutagenic mechanites, they are beginning to build up in this pawn's system, which will induce mutations at a high enough concentration. + true + true + MutationToxicityRevealed + +
  • + -0.08 +
  • +
  • + + 599.24 + 40.041 + +
  • +
    + +
  • + + false +
  • +
  • + + 0.04 + 0.1 + + +
  • + Consciousness + -0.05 +
  • + + + + +
  • Minor
  • +
    +
    + + +
  • + + 0.2 + 0.2 + +
  • + Consciousness + -0.10 +
  • + + + + +
  • Minor
  • +
    +
    + + +
  • + + 0.40 + 5 + 0.3 + +
  • + Consciousness + -0.15 +
  • + + + + +
  • Minor
  • +
  • Major
  • +
    +
    + + +
  • + + 0.60 + 1 + 0.4 + +
  • + Consciousness + -0.25 +
  • + + + + + +
  • + + 0.80 + 0.5 + 0.6 + +
  • + Consciousness + 0.50 +
  • + + + + + +
  • + 0.85 + + 0.8 + + + +
  • +
  • + 0.99 + + 0.9 + + + +
  • +
  • + 1 + + 0.9 + + + +
  • Thrumbo
  • + + + + 0.3 + + +
    + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Hediffs/Hediffs_SapiostoreMesh.xml b/1.5/Defs/Hediffs/Hediffs_SapiostoreMesh.xml new file mode 100644 index 000000000..fba980c64 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_SapiostoreMesh.xml @@ -0,0 +1,67 @@ + + + SapienceLimiterHediff + + An implanted sapiostore mesh. + +
  • + + -2 + 0 + +
  • +
    + +
  • + + SapientChip + + + InstallInstinctLimiter + + Install a sapiostore mesh. + + SapientChip + + Installing sapiostore mesh. + +
  • + + +
  • SapientChip
  • + + + 1 + + + + +
  • SapientChip
  • +
    +
    + +
  • Brain
  • +
    + SapienceLimiterHediff + + + SapientChip + + A powerful and rare implant that acts as a mesh between mutagenic mechanites in a pawn's system and the brain. Provides a backup and restore point for intelligence, gradually restoring sapience and prevents further loss of sapience.\n\nTransfers between forms if reverted or changed. + + InstallInstinctLimiter + + +
  • RewardStandardLowFreq
  • +
    + + 50 + 20 + 5 + 2 + + +
  • Advanced
  • +
    +
    +
    diff --git a/1.5/Defs/Hediffs/Hediffs_TransformationParalysis.xml b/1.5/Defs/Hediffs/Hediffs_TransformationParalysis.xml new file mode 100644 index 000000000..5b23b8cf7 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_TransformationParalysis.xml @@ -0,0 +1,47 @@ + + + TransformationParalysis + + Pawnmorph.Hediffs.MutagenicPain + The shock of a sudden, full-body transformation. + 1 + 1 + +
  • + -3 +
  • +
    + +
  • + 0.25 + 0.25 + +
  • + Moving + -.5 +
  • + + +
  • + 0.5 + 0.5 + +
  • + Moving + -.75 +
  • + + +
  • + 1 + +
  • + Moving + -2 +
  • + + 0.7 + +
    +
    +
    diff --git a/1.5/Defs/Hediffs/Hediffs_UnknownStatus.xml b/1.5/Defs/Hediffs/Hediffs_UnknownStatus.xml new file mode 100644 index 000000000..9720c1540 --- /dev/null +++ b/1.5/Defs/Hediffs/Hediffs_UnknownStatus.xml @@ -0,0 +1,47 @@ + + + + PawnmorphGunshotTF + Pawnmorph.Hediffs.MorphTf + This pawn has been shot with a powerful, fast-acting dose of mutagenic mechanites and is highly likely to change into something very quickly, which may leave them paralysed for a time. + + true + (179,86,132) + true + false + 1 + 1 + +
  • + -5 +
  • +
  • + + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + 90 + Animal + +
  • + + 0.5 + 1.6 + 0.8 + +
  • + Moving + 0.05 +
  • + + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Hediffs/MutagenicDiseases.xml b/1.5/Defs/Hediffs/MutagenicDiseases.xml new file mode 100644 index 000000000..7a12b832e --- /dev/null +++ b/1.5/Defs/Hediffs/MutagenicDiseases.xml @@ -0,0 +1,143 @@ + + + Pawnmorph.Hediffs.Hediff_MutagenicBase + MutagenicDisease + + This pawn has contracted a mutagenic disease due to a high level of mutagenic mechanites in their body. If untreated, the pawn may become closer to an animal... + true + true + true + true + 1.001 + +
  • + 198000~228000 +
  • +
  • + 12 + -0.3987 +
  • +
  • + 0.4226 +
  • +
  • +
  • +
    + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + + + 0 + 0.1 + + + +
  • + 0.1 + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + + + 12 + 2 + + + +
  • + 0.3679 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + + + 48 + 1 + + + +
  • + 0.8633 + + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + + 100 + 0.1 + + + +
  • + 1 + + + + + 0.3 + + + + 1 + 1 + + 0 + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Hediffs/MutagenicInfection.xml b/1.5/Defs/Hediffs/MutagenicInfection.xml new file mode 100644 index 000000000..649de341d --- /dev/null +++ b/1.5/Defs/Hediffs/MutagenicInfection.xml @@ -0,0 +1,109 @@ + + + PM_MutagenicInfection + + mutagenic infection + Mutagenic mechanites have infected this wound, causing mutations unless treated. + true + true + Pawnmorph.Hediffs.MorphDisease + true + true + 1.001 + +
  • + 12 + -0.53 +
  • +
  • + 0.84 + 0.6441 + -0.70 + -0.40 +
  • +
    + +
  • + + +
  • + Consciousness + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • +
  • + Breathing + -0.1 +
  • + + Animal + 1 + +
  • + 0.566 + + 1.5 + +
  • + Consciousness + -0.1 +
  • +
  • + Manipulation + -0.1 +
  • +
  • + Breathing + -0.15 +
  • + + Animal + 3 + 1 + +
  • + 0.843 + + true + 0.75 + 0.05 + +
  • + Consciousness + -0.15 +
  • +
  • + Manipulation + -0.2 +
  • +
  • + Breathing + -0.2 +
  • + + + Animal + 6 + 1 + [PAWN_nameDef] is at risk of transforming into an animal soon. You can use stabilizer to prevent this + [PAWN_nameDef] is at risk of fully changing very soon. + +
  • + 0.999 + + Switch + 25 + +
  • Chaocow
  • +
  • Chaofox
  • +
  • Chaodino
  • + + TransformationMisc + 100 + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/HistoryEventDefs/HistoryEventDefs.xml b/1.5/Defs/HistoryEventDefs/HistoryEventDefs.xml new file mode 100644 index 000000000..054a52a4c --- /dev/null +++ b/1.5/Defs/HistoryEventDefs/HistoryEventDefs.xml @@ -0,0 +1,91 @@ + + + + + MutationGained + + + + + MutationLost + + + + + Transformed + + + + + Reverted + + + + + Morphed + + + + + DeMorphed + + + + + SapienceLevelChanged + + + + + PermanentlyFeral + + + + + FormerHumanHunted + + + + + FormerHumanGrazed + + + + + FormerHumanAteCorpse + + + + + + ApplyMutagenicsOn + + + + + + SowMutagenicPlants + + + + + + CreateMutagenicWeapon + + + + diff --git a/1.5/Defs/Incidents/MutagenicDiseasesIncidents.xml b/1.5/Defs/Incidents/MutagenicDiseasesIncidents.xml new file mode 100644 index 000000000..e61c2512e --- /dev/null +++ b/1.5/Defs/Incidents/MutagenicDiseasesIncidents.xml @@ -0,0 +1,27 @@ + + + Pawnmorph.IncidentWorkers.MutagenicDiseasesHuman + DiseaseHuman + +
  • Map_PlayerHome
  • +
  • Map_TempIncident
  • +
  • Map_Misc
  • +
  • Map_RaidBeacon
  • +
  • Caravan
  • +
    + + 0.1 + 0.3 + + {0} of your {1} have gotten sick from {2}.\n\nEnsure you have mutagen stabiliser, or you may end up with your pawns being significantly more animal.\n\nThe following {1} have gotten sick:\n\n{3} + NegativeEvent +
    + + + Disease_MutagenicDisease + + MutagenicDisease + mutagenic disease + + +
    diff --git a/1.5/Defs/Incidents/MutagenicLeak.xml b/1.5/Defs/Incidents/MutagenicLeak.xml new file mode 100644 index 000000000..57f4d41fc --- /dev/null +++ b/1.5/Defs/Incidents/MutagenicLeak.xml @@ -0,0 +1,14 @@ + + + MutagenicLeak + + Misc + +
  • Map_PlayerHome
  • +
    + Pawnmorph.IncidentWorkers.MutagenicLeak + 1.0 + 8 +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Incidents/MutagenicShipPartcrash.xml b/1.5/Defs/Incidents/MutagenicShipPartcrash.xml new file mode 100644 index 000000000..eebf8043a --- /dev/null +++ b/1.5/Defs/Incidents/MutagenicShipPartcrash.xml @@ -0,0 +1,27 @@ + + + MutagenicShipPartCrash + + +
  • Map_PlayerHome
  • +
    + Pawnmorph.IncidentWorker_MutagenicShipCrash + Mutagenic ship + A large piece of an ancient ship has crashed nearby.\n\nIt's mysterious influence will kill all plants in an expanding circle around itself, and mutate any pawns and animals that get too close.\n\nDestroy it as soon as possible. But beware - it will probably defend itself. + ThreatBig + 2.0 + 15 + +
  • MechanoidShip
  • +
    + +
  • MechanoidShip
  • +
    + ThreatBig + true + 450 + CrashedMutagenicShipPart + ShipPartCrash +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Incidents/MutagenicStorm.xml b/1.5/Defs/Incidents/MutagenicStorm.xml new file mode 100644 index 000000000..35e649027 --- /dev/null +++ b/1.5/Defs/Incidents/MutagenicStorm.xml @@ -0,0 +1,41 @@ + + + MutagenicFallout + + Misc + +
  • Map_PlayerHome
  • +
    + Pawnmorph.IncidentWorkers.MutagenicFallout + MutagenicFallout + Mutagenic fallout + ThreatSmall + 0.15 + 20 + 90 + 2 + + 2.5 + 10.5 + + ToxicFallout +
    + + + MutagenicFallout + Pawnmorph.GameCondition_MutagenicFallout + + A plume of mutagenic mechanites from some distant source is slowly settling over this entire region. Any living thing not under a roof will be slowly mutated, and may eventually become animals. + The worst of the toxic fallout has settled. + An unknown source far away has released a plume of mutagenic mechanites into the air, which are now passing over the area. \n\nAnyone outside will slowly mutate, and as the number of mechanites in their system increases, the mutations will increase in severity. \n\nIt can last from a few days to over a season. + true + +
  • + PM_FalloutMutagen +
  • +
    +
    + + + +
    \ No newline at end of file diff --git a/1.5/Defs/Incidents/SheepChefJoins.xml b/1.5/Defs/Incidents/SheepChefJoins.xml new file mode 100644 index 000000000..646bf3b0c --- /dev/null +++ b/1.5/Defs/Incidents/SheepChefJoins.xml @@ -0,0 +1,12 @@ + + + PM_SheepChef + + Misc + +
  • Map_PlayerHome
  • +
    + Pawnmorph.IncidentWorkers.SheepChef + 0.2 +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Interactions/AnimalNoises_Bark.xml b/1.5/Defs/Interactions/AnimalNoises_Bark.xml new file mode 100644 index 000000000..1673c7da2 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Bark.xml @@ -0,0 +1,585 @@ + + + + + PMInteractionWeights_Canine + +
  • EtherHuskyMuzzle
  • +
  • EtherLabradorRetrieverJaw
  • +
  • EtherWargMuzzle
  • +
  • EtherWolfMuzzle
  • +
  • EtherArcticWolfJaw
  • +
    + + + +
  • + EtherHuskyMuzzle + 0.5 +
  • +
  • + EtherLabradorRetrieverJaw + 0.5 +
  • +
  • + EtherWargMuzzle + 0.5 +
  • +
  • + EtherWolfMuzzle + 0.5 +
  • +
  • + EtherArcticWolfJaw + 0.5 +
  • + + +
  • + EtherHuskyEar + 0.125 +
  • +
  • + EtherLabradorRetrieverEar + 0.125 +
  • +
  • + EtherWargEar + 0.125 +
  • +
  • + EtherWolfEar + 0.125 +
  • + + +
  • + EtherHuskyTail + 0.25 +
  • +
  • + EtherLabradorRetrieverTail + 0.25 +
  • +
  • + EtherWargTail + 0.25 +
  • +
  • + EtherWolfTail + 0.25 +
  • +
    + +
  • + HuskyMorph + 1 +
  • +
  • + LabradorRetrieverMorph + 1 +
  • +
  • + WargMorph + 1 +
  • +
  • + WolfMorph + 1 +
  • +
  • + ArcticWolfMorph + 1 +
  • +
    +
    + + + + + PMBark_Chitchat + + Things/Mote/SpeechSymbols/Bark + PawnmorphBark + PawnmorphBark + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->barked at
  • +
  • noisedat->woofed at
  • +
  • noisedat->arfed to
  • +
  • noisedat->howled at
  • +
  • noisedat->ruffed at
  • +
  • noisedat->sniffed
  • +
  • noisedat->wagged [INITIATOR_possessive] tail at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->barked about
  • +
  • noisedabout->woofed about
  • +
  • noisedabout->ruffed about
  • +
  • noisedabout->arfed about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->headpats
  • +
  • animaltopic->dogs
  • +
  • animaltopic->alphas and betas, in a non-redpilled way
  • +
  • animaltopic->wolves
  • +
  • animaltopic->wolf packs
  • +
  • animaltopic->sniffing a sensitive place
  • +
  • animaltopic->sniffing garbage
  • +
  • animaltopic->eating garbage
  • +
  • animaltopic->sleeping in a kennel
  • +
  • animaltopic->the moon
  • +
  • animaltopic->bones
  • +
  • animaltopic->fetch
  • +
  • animaltopic->rolling over
  • +
  • animaltopic->belly rubs
  • +
  • animaltopic->licking
  • +
    +
    + PMInteractionWeights_Canine +
    + + + PawnmorphBark + +
  • + + 0.66 +
  • +
    +
    + + + + + PMBark_DeepTalk + + Things/Mote/SpeechSymbols/Bark_DeepTalk + PMBark_DeepTalkMemory + PMBark_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a canine morph
  • +
  • animallife->becoming a canine morph
  • +
  • animallife->shedding
  • +
  • animallife->headpats
  • +
  • animallife->ear scritches
  • +
  • animallife->bones
  • +
  • animallife->getting brushed
  • +
  • animallife->going for a walk
  • +
  • animallife->chew toys
  • +
  • animallife->chasing things
  • +
  • animallife->fetch
  • +
  • animallife->paw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->interesting scents
  • +
  • animallife->gross scents
  • +
  • animallife->raw meat
  • +
  • animallife->hunting instincts
  • +
  • animallife->pack life
  • +
  • animallife->broken claws
  • +
  • animallife->what a tail feels like
  • +
  • animallife->colorblindness
  • +
    +
    + PMInteractionWeights_Canine +
    + + + PMBark_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMBark_DeepTalkCanine + + Things/Mote/SpeechSymbols/Bark_DeepTalk + PMBark_DeepTalkCanineMemory + PMBark_DeepTalkCanineMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being canine morphs
  • +
  • animallife->becoming canine morphs
  • +
  • animallife->shedding
  • +
  • animallife->headpats
  • +
  • animallife->ear scritches
  • +
  • animallife->bones
  • +
  • animallife->getting brushed
  • +
  • animallife->going for a walk
  • +
  • animallife->chew toys
  • +
  • animallife->chasing things
  • +
  • animallife->fetch
  • +
  • animallife->paw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->interesting scents
  • +
  • animallife->gross scents
  • +
  • animallife->raw meat
  • +
  • animallife->hunting instincts
  • +
  • animallife->pack life
  • +
  • animallife->broken claws
  • +
  • animallife->what a tail feels like
  • +
  • animallife->colorblindness
  • + +
  • secretanimallife->brushy brushy
  • +
  • secretanimallife->walkies
  • +
  • secretanimallife->collars
  • +
  • secretanimallife->the dangers of mailmen
  • +
  • secretanimallife->evil veterinarians
  • +
  • secretanimallife->being in a pack together
  • +
  • secretanimallife->being packmates
  • +
  • secretanimallife->hunting together
  • +
  • secretanimallife->hunting [prey]
  • +
  • secretanimallife->chasing [prey]
  • +
  • secretanimallife->marking territory
  • +
  • secretanimallife->rolling in smelly things
  • +
  • secretanimallife->howling techniques
  • +
  • secretanimallife->why wolves howl
  • +
  • secretanimallife->the secret scritching spot that causes leg kicks
  • +
  • secretanimallife->mates
  • + +
  • prey(p=10)->[preyanimal]
  • +
  • prey->[preymorph]
  • + +
  • preyanimal->deer
  • +
  • preyanimal->elk
  • +
  • preyanimal->caribou
  • +
  • preyanimal->moose
  • +
  • preyanimal->rabbits
  • +
  • preyanimal->squirrels
  • +
  • preyanimal->chickens
  • +
  • preyanimal->sheep
  • +
  • preyanimal->goats
  • + +
  • preymorph->deermorphs
  • +
  • preymorph->cariboumorphs
  • +
  • preymorph->rabbitmorphs
  • +
  • preymorph->chookmorphs
  • +
  • preymorph->squirrelmorphs
  • +
  • preymorph->sheepmorphs
  • +
  • preymorph->goatmorphs
  • + +
  • animalbehavior->exchanged sniffs with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] compared scents
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave each other face licks
  • +
  • animalbehavior->shared mutual nuzzles with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave each other mutual headpats
  • +
  • animalbehavior->shared a howl with [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Canine + PMInteractionWeights_Canine + 0.5 + true +
    + + + PMBark_DeepTalkCanineMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMBark_Slight + + Things/Mote/SpeechSymbols/Bark_Slight + PMBark_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->growled at
  • +
  • noisedat->bared [INITIATOR_possessive] teeth at
  • +
  • noisedat->barked aggressively at
  • +
  • noisedat->yapped annoyingly at
  • + +
  • noisedabout->growled about
  • +
  • noisedabout->barked about
  • +
  • noisedabout->woofed unhappily about
  • +
  • noisedabout->bared [INITIATOR_possessive] teeth because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->lack of treats
  • +
  • animalcharacteristic->[Refusal] to take [INITIATOR_objective] on walkies
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] headpats
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] sniff [RECIPIENT_objective]
  • + +
  • annoyingbehavior->tried to sniff [RECIPIENT_nameDef] in a sensitive place
  • +
  • annoyingbehavior->annoyingly licked [RECIPIENT_nameDef] face
  • +
  • annoyingbehavior->drooled on [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->loudly howled while [RECIPIENT_nameDef] covered [RECIPIENT_possessive] ears
  • +
    +
    + PMInteractionWeights_Canine +
    + + + PMBark_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMBark_Insult + + Things/Mote/SpeechSymbols/Bark_Insult + PMBark_InsultMemory + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->growled that [Target] was
  • +
  • noisedtargetwas->barked that [Target] was
  • +
  • noisedtargetwas->snarled that [Target] was
  • + +
  • noisedat->snarled at
  • +
  • noisedat->snarled and nipped
  • +
  • noisedat->tried to bite
  • +
  • noisedat->aggressively bared [INITIATOR_possessive] fangs at
  • +
  • noisedat->barked aggressively at
  • + +
  • noisedabout->snarled about
  • +
  • noisedabout->barked aggressively about
  • +
  • noisedabout->tried to bite [RECIPIENT_nameDef] because of
  • +
  • noisedabout->bared [INITIATOR_possessive] fangs over
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->lack of treats
  • +
  • animalcharacteristic->[Refusal] to take [INITIATOR_objective] on walkies
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] headpats
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] sniff [RECIPIENT_objective]
  • + +
  • insult->a female dog
  • +
  • insult->a cat
  • +
  • insult->a veterinarian
  • +
  • insult->a gnawed bone
  • +
  • insult->a chewtoy
  • +
  • insult->kibble
  • +
    +
    + PMInteractionWeights_Canine +
    + + + PMBark_InsultMemory + +
  • + + -15 +
  • +
    + PMBark_InsultedMood +
    + + + PMBark_InsultedMood + +
  • + + I've been snarled at! What an awful canine! + -5 +
  • +
    +
    + + + + + PMBark_KindWords + + Things/Mote/SpeechSymbols/Bark_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMBark_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->ruffed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->yipped that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->woofed that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • +
  • animalcharacteristic->headpat technique
  • +
  • animalcharacteristic->wonderful scritches
  • + +
  • complimentedtargets->ruffed happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->woofed approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wagged [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->licked [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] licked
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] ruffed at
  • +
  • kindbehavior->wagged [INITIATOR_possessive] tail at
  • + +
  • compliment->a [adj] crunchybone
  • +
  • compliment->a [adj] deerheart
  • +
  • compliment->a [adj] sweetliver
  • +
  • compliment->a [adj] lambshank
  • +
  • compliment->a [adj] rabbit
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->tasty
  • +
  • adj->savory
  • +
    +
    + PMInteractionWeights_Canine +
    + + + PMBark_KindWordsMemory + +
  • + + 15 +
  • +
    + PMBark_KindWordsMood +
    + + + PMBark_KindWordsMood + +
  • + + I've been given a kind lick! What a nice canine! + 5 +
  • +
    +
    + + + + + PMBark_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->stench
  • +
  • animalcharacteristic->shedding
  • +
  • animalcharacteristic->drooling
  • +
  • animalcharacteristic->incessent barking
  • +
  • animalcharacteristic->incessent howling
  • +
  • animalcharacteristic->gross eating habits
  • +
  • animalcharacteristic->disgusting dog behavior
  • +
  • animalcharacteristic->fleas
  • + +
  • insultcomparison->a stinking mutt
  • +
  • insultcomparison->a lapdog
  • +
  • insultcomparison->a dumb dog
  • +
  • insultcomparison->a poodle
  • +
  • insultcomparison->a glorified pet
  • +
  • insultcomparison->a mangy fleabag
  • +
  • insultcomparison->a werewolf
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] stinks like a wet dog
  • +
  • insult->threatened to clip a leash on [RECIPIENT_nameDef]
  • +
  • insult->threatened [RECIPIENT_nameDef] with a rolled up newspaper
  • +
  • insult->mockingly called [RECIPIENT_nameDef] a bad dog
  • + +
  • insultingjoketopics->eating garbage
  • +
  • insultingjoketopics->fire hydrants
  • +
  • insultingjoketopics->dogs and legs
  • +
  • insultingjoketopics->rolling over
  • +
  • insultingjoketopics->werewolves
  • +
  • insultingjoketopics->full moons
  • +
    +
    + PMInteractionWeights_Canine +
    + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Base.xml b/1.5/Defs/Interactions/AnimalNoises_Base.xml new file mode 100644 index 000000000..53aa7b5e2 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Base.xml @@ -0,0 +1,100 @@ + + + + + + Pawnmorph.Social.InteractionWorker_Chitchat + Social + 4 + + + + Thought_MemorySocialCumulative + 300 + 10 + +
  • Psychopath
  • +
    +
    + + + + + Pawnmorph.Social.InteractionWorker_DeepTalk + Things/Mote/SpeechSymbols/DeepTalk + Social + 10 + + + + Thought_MemorySocial + 20 + 300 + 10 + 0.9 + +
  • Psychopath
  • +
    +
    + + + + + Pawnmorph.Social.InteractionWorker_Slight + Things/Mote/SpeechSymbols/Slight + 0.005 + + + + Thought_MemorySocial + 20 + 300 + 10 + 0.9 + + + + + + Pawnmorph.Social.InteractionWorker_Insult + Things/Mote/SpeechSymbols/Insult + 0.04 + + + + Thought_MemorySocial + 20 + 300 + 10 + 0.9 + + + + 2 + 10 + 0.9 + + + + + + InteractionWorker_KindWords + Things/Mote/SpeechSymbols/KindWords + + + + true + Thought_MemorySocial + 20 + 300 + 10 + 0.9 + + + + 2 + 10 + 0.9 + + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_BeaverGrunt.xml b/1.5/Defs/Interactions/AnimalNoises_BeaverGrunt.xml new file mode 100644 index 000000000..758da3e64 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_BeaverGrunt.xml @@ -0,0 +1,510 @@ + + + + PMInteractionWeights_Beaver + +
  • EtherAlphabeaverJaw
  • +
    + + + +
  • + EtherAlphabeaverJaw + 0.5 +
  • + + +
  • + EtherAlphabeaverTail + 0.25 +
  • + + +
  • + EtherAlphabeaverEar + 0.125 +
  • +
    + +
  • + AlphabeaverMorph + 1 +
  • +
    +
    + + + + + PMBeaver_Chitchat + + Things/Mote/SpeechSymbols/Beaver + PMBeaver_ChitchatMemory + PMBeaver_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->whined at
  • +
  • noisedat->grunted at
  • +
  • noisedat->mewed at
  • +
  • noisedat->barked at
  • +
  • noisedat->squeaked to
  • +
  • noisedat->twitched [INITIATOR_possessive] whiskers at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->whined about
  • +
  • noisedabout->grunted about
  • +
  • noisedabout->squeaked about
  • +
  • noisedabout->barked about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->stick
  • +
  • animaltopic->beavers
  • +
  • animaltopic->alphabeavers
  • +
  • animaltopic->building
  • +
  • animaltopic->dams
  • +
  • animaltopic->rivers
  • +
  • animaltopic->swimming
  • +
  • animaltopic->whiskers
  • +
  • animaltopic->tree bark
  • +
  • animaltopic->trees
  • +
  • animaltopic->something to chew on
  • +
  • animaltopic->gnawing habits
  • +
  • animaltopic->sticks
  • +
  • animaltopic->mud
  • +
  • animaltopic->trees
  • +
  • animaltopic->kibble
  • +
  • animaltopic->scaly tails
  • +
    +
    + PMInteractionWeights_Beaver +
    + + + PMBeaver_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMBeaver_DeepTalk + + Things/Mote/SpeechSymbols/Beaver_DeepTalk + PMBeaver_DeepTalkMemory + PMBeaver_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming an alphabeavermorph
  • +
  • animallife->being a alphabeavermorph
  • +
  • animallife->keeping hands
  • +
  • animallife->scaly tails
  • +
  • animallife->eating trees
  • +
  • animallife->sticks
  • +
  • animallife->logs
  • +
  • animallife->building
  • +
  • animallife->dams
  • +
  • animallife->lodges
  • +
  • animallife->tree bark
  • +
  • animallife->tail care
  • +
  • animallife->gnawing
  • +
  • animallife->webbed feet
  • +
  • animallife->incisors
  • +
  • animallife->swimming
  • +
  • animallife->crafting
  • +
  • animallife->sustainable forestry
  • +
  • animallife->night vision
  • + +
    +
    + PMInteractionWeights_Beaver +
    + + + PMBeaver_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMBeaver_DeepTalkBeaver + + Things/Mote/SpeechSymbols/Beaver_DeepTalk + PMBeaver_DeepTalkBeaverMemory + PMBeaver_DeepTalkBeaverMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming alphabeavermorphs
  • +
  • animallife->being alphabeavermorphs
  • +
  • animallife->keeping hands
  • +
  • animallife->scaly tails
  • +
  • animallife->eating trees
  • +
  • animallife->sticks
  • +
  • animallife->logs
  • +
  • animallife->building
  • +
  • animallife->dams
  • +
  • animallife->lodges
  • +
  • animallife->tree bark
  • +
  • animallife->tail care
  • +
  • animallife->gnawing
  • +
  • animallife->webbed feet
  • +
  • animallife->incisors
  • +
  • animallife->swimming
  • +
  • animallife->crafting
  • +
  • animallife->sustainable forestry
  • +
  • animallife->night vision
  • + +
  • secretanimallife->dam designs
  • +
  • secretanimallife->lodge designs
  • +
  • secretanimallife->carpentering
  • +
  • secretanimallife->wood flavors
  • +
  • secretanimallife->wood textures
  • +
  • secretanimallife->chewing things
  • +
  • secretanimallife->chewing techniques
  • +
  • secretanimallife->building dams
  • +
  • secretanimallife->dam collapses
  • +
  • secretanimallife->different tree types
  • +
  • secretanimallife->the annoying sound of running water
  • +
  • secretanimallife->vegetarianism
  • +
  • secretanimallife->keeping busy
  • +
  • secretanimallife->fur care
  • +
  • secretanimallife->swimming strokes
  • +
  • secretanimallife->underwater vision
  • +
  • secretanimallife->breath holding contests
  • +
  • secretanimallife->the best hiding spots
  • + +
  • animalbehavior->squeaked understandingly at [RECIPIENT_nameDef]
  • +
  • animalbehavior->grunted with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] barked at eachother
  • +
    +
    + PMInteractionWeights_Beaver + PMInteractionWeights_Beaver + 0.5 + true +
    + + + PMBeaver_DeepTalkBeaverMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMBeaver_Slight + + Things/Mote/SpeechSymbols/Beaver_Slight + PMBeaver_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • target(p=4)->[RECIPIENT_nameDef]
  • +
  • target->[RECIPIENT_nameDef]'s [PersonFamily]
  • + +
  • noisedat->grunted at
  • +
  • noisedat->growled at
  • +
  • noisedat->gnashed [INITIATOR_possessive] teeth at
  • +
  • noisedat->slapped [INITIATOR_possessive] tail at
  • +
  • noisedat->squeaked aggressively at
  • + +
  • noisedat->barked about
  • +
  • noisedat->grunted about
  • +
  • noisedat->growled about
  • +
  • noisedat->gnashed [INITIATOR_possessive] teeth at
  • +
  • noisedat->slapped [INITIATOR_possessive] tail at
  • +
  • noisedat->squeaked aggressively about
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->engineering ability
  • +
  • animalcharacteristic->sense of design
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_objective]
  • + +
  • annoyingbehavior->loudly slapped [INITIATOR_possessive] tail on the ground near [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->made a rude grunt at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->whined repeatedly at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->loudly gnawed on a stick while walking by [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->waved a stick threateningly at [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Beaver +
    + + + PMBeaver_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMBeaver_Insult + + Things/Mote/SpeechSymbols/Beaver_Insult + PMBeaver_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->squeaked that [Target] was
  • +
  • noisedtargetwas->grunted that [Target] was
  • +
  • noisedtargetwas->barked that [Target] was
  • + +
  • target(p=4)->[RECIPIENT_nameDef]
  • +
  • target->[RECIPIENT_nameDef]'s [PersonFamily]
  • + +
  • noisedat->hissed at
  • +
  • noisedat->grunted at
  • +
  • noisedat->barked aggressively at
  • +
  • noisedat->barked annoyingly at
  • +
  • noisedat->slapped [INITIATOR_possessive] tail on the ground at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->grunted about
  • +
  • noisedabout->barked unhappily about
  • +
  • noisedabout->barked because of
  • +
  • noisedabout->squeaked because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->engineering ability
  • +
  • animalcharacteristic->sense of design
  • +
  • animalcharacteristic->[refusal] to pet [INITIATOR_objective]
  • +
  • animalcharacteristic->[refusal] to stop gnawing on things
  • + +
  • refusal->refusal
  • +
  • refusal->unwillingness
  • + +
  • insult->a pile of rotting wood
  • +
  • insult->a tree stump
  • +
  • insult->stale water
  • +
  • insult->a wolf
  • +
  • insult->a fox
  • +
  • insult->a furrier
  • +
    +
    + PMInteractionWeights_Beaver +
    + + + PMBeaver_Insult + +
  • + + -15 +
  • +
    + PMBeaver_InsultedMood +
    + + + PMBeaver_InsultedMood + +
  • + + I've been insultingly grunted at! What an awful beaver! + -5 +
  • +
    +
    + + + + + PMBeaver_KindWords + + Things/Mote/SpeechSymbols/Beaver_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMBeaver_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->squeaked that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->teeth
  • +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->sheen
  • +
  • animalcharacteristic->warmth
  • +
  • animalcharacteristic->shiny thing collection
  • + +
  • complimentedtargets->barked happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->barked approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->grunted approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->grunted happily because of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->barked happily because of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] rubbed their hands
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] squeaked at
  • +
  • kindbehavior->wiggled [INITIATOR_possessive] tail at
  • + +
  • compliment->a [adj] pinewood
  • +
  • compliment->a [adj] oak tree
  • +
  • compliment->a [adj] maple tree
  • +
  • compliment->a [adj] flowing river
  • +
  • compliment->a [adj] birch tree
  • +
  • compliment->[adj] fresh-cut lumber
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->dam-quality
  • +
    +
    + PMInteractionWeights_Beaver +
    + + + PMBeaver_KindWordsMemory + +
  • + + 15 +
  • +
    + PMBeaver_KindWordsMood +
    + + + PMBeaver_KindWordsMood + +
  • + + I've been complimented! What a nice beaver! + 5 +
  • +
    +
    + + + + + PMBeaverGrunt_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->short stature
  • +
  • animalcharacteristic->beady eyes
  • +
  • animalcharacteristic->twitchy nose
  • +
  • animalcharacteristic->buck teeth
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->twitchy mannerisms
  • +
  • animalcharacteristic->inability to sit still
  • +
  • animalcharacteristic->eating habits
  • +
  • animalcharacteristic->construction skill
  • +
  • animalcharacteristic->woodcutting skill
  • + +
  • insultcomparison->a river polluter
  • +
  • insultcomparison->a tree muncher
  • +
  • insultcomparison->a giant termite
  • +
  • insultcomparison->a tree plague
  • +
  • insultcomparison->a lumberjack
  • +
  • insultcomparison->a chainsaw
  • +
  • insultcomparison->a pest
  • +
  • insultcomparison->a squeaky toy
  • +
  • insultcomparison->a shrimp
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] is too jumpy
  • +
  • insult->accused [RECIPIENT_nameDef] of gnawing [INITIATOR_possessive] stuff
  • +
  • insult->said [RECIPIENT_nameDef]'s tail is weird
  • + +
  • insultingjoketopics->dam permits
  • +
  • insultingjoketopics->trees being inedible
  • +
  • insultingjoketopics->high-fiber diets
  • +
  • insultingjoketopics->alphabeaver tails
  • +
  • insultingjoketopics->clearcutting forests
  • +
    +
    + PMInteractionWeights_Beaver +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Bleat.xml b/1.5/Defs/Interactions/AnimalNoises_Bleat.xml new file mode 100644 index 000000000..fe393918e --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Bleat.xml @@ -0,0 +1,507 @@ + + + + + PMInteractionWeights_Sheep + +
  • EtherSheepSnout
  • +
    + + + +
  • + EtherSheepSnout + 0.5 +
  • + + +
  • + EtherSheepEar + 0.125 +
  • + + +
  • + EtherSheepTail + 0.25 +
  • + + +
  • + EtherWoolySheep + 0.25 +
  • +
    + +
  • + SheepMorph + 1 +
  • +
    +
    + + + + + PMBleat_Chitchat + + Things/Mote/SpeechSymbols/Bleat + PawnmorphBleat + PawnmorphBleat + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->baaed at
  • +
  • noisedat->bahed at
  • +
  • noisedat->baaed to
  • +
  • noisedat->bleated at
  • +
  • noisedat->bleated to
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->baaed about
  • +
  • noisedabout->bahed about
  • +
  • noisedabout->bleated about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->wool
  • +
  • animaltopic->eating grass
  • +
  • animaltopic->shaving
  • +
  • animaltopic->grazing
  • +
  • animaltopic->counting
  • +
  • animaltopic->hay
  • +
  • animaltopic->hooves
  • +
  • animaltopic->shearing [INITIATOR_objective]
  • +
  • animaltopic->bleating
  • +
  • animaltopic->fleece
  • +
  • animaltopic->ewes
  • +
  • animaltopic->rams
  • +
  • animaltopic->chewing cud
  • +
  • animaltopic->spinning wheels
  • +
  • animaltopic->joining a flock
  • +
  • animaltopic->flocks
  • +
  • animaltopic->horns
  • +
  • animaltopic->shears
  • +
    +
    + PMInteractionWeights_Sheep +
    + + + PawnmorphBleat + +
  • + + 0.66 +
  • +
    +
    + + + + + PMBleat_DeepTalk + + Things/Mote/SpeechSymbols/Bleat_DeepTalk + PMBleat_DeepTalkMemory + PMBleat_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a sheepmorph
  • +
  • animallife->becoming a sheepmorph
  • +
  • animallife->wool
  • +
  • animallife->headpats
  • +
  • animallife->getting shaved
  • +
  • animallife->grass
  • +
  • animallife->hay
  • +
  • animallife->bleating
  • +
  • animallife->frolicking
  • +
  • animallife->fields
  • +
  • animallife->pastures
  • +
  • animallife->fleece
  • +
  • animallife->flocks
  • +
  • animallife->rectangular pupils
  • +
  • animallife->hooves
  • +
  • animallife->horns
  • +
  • animallife->hoof hands
  • +
  • animallife->what a tail feels like
  • +
  • animallife->restricted movement in thick wool
  • +
  • animallife->having a wide field of vision
  • +
  • animallife->grazing
  • +
  • animallife->colorblindness
  • +
    +
    + PMInteractionWeights_Sheep +
    + + + PMBleat_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMBleat_DeepTalkOvine + + Things/Mote/SpeechSymbols/Bleat_DeepTalk + PMBleat_DeepTalkOvineMemory + PMBleat_DeepTalkOvineMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being sheepmorphs
  • +
  • animallife->becoming sheepmorphs
  • +
  • animallife->wool
  • +
  • animallife->headpats
  • +
  • animallife->getting shaved
  • +
  • animallife->grass
  • +
  • animallife->hay
  • +
  • animallife->bleating
  • +
  • animallife->frolicking
  • +
  • animallife->fields
  • +
  • animallife->pastures
  • +
  • animallife->fleece
  • +
  • animallife->flocks
  • +
  • animallife->rectangular pupils
  • +
  • animallife->hooves
  • +
  • animallife->horns
  • +
  • animallife->hoof hands
  • +
  • animallife->what a tail feels like
  • +
  • animallife->restricted movement in thick wool
  • +
  • animallife->having a wide field of vision
  • +
  • animallife->grazing
  • +
  • animallife->colorblindness
  • + +
  • secretanimallife->shaving techniques
  • +
  • secretanimallife->wolf paranoia
  • +
  • secretanimallife->being herded by dogmorphs
  • +
  • secretanimallife->tastiest types of grass
  • +
  • secretanimallife->hoof polishing
  • +
  • secretanimallife->sheep dogs
  • +
  • secretanimallife->cud
  • +
  • secretanimallife->counting
  • +
  • secretanimallife->clones
  • +
  • secretanimallife->tailoring
  • +
  • secretanimallife->world domination
  • +
  • secretanimallife->assimilating the non-sheep
  • +
  • secretanimallife->the flock overmind
  • +
  • secretanimallife->watching for predators
  • +
  • secretanimallife->staying with the flock
  • +
  • secretanimallife->open fields
  • +
  • secretanimallife->horn shining
  • +
  • secretanimallife->headbutting contests
  • + +
  • animalbehavior->bumped heads with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] rammed heads
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave relaxed bleats to eachother
  • +
  • animalbehavior->shared mutual nuzzles with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] tapped hooves
  • +
    +
    + PMInteractionWeights_Sheep + PMInteractionWeights_Sheep + 0.5 + true +
    + + + PMBleat_DeepTalkOvineMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMBleat_Slight + + Things/Mote/SpeechSymbols/Bleat_Slight + PMBleat_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->bleated at
  • +
  • noisedat->feinted headbutting at
  • +
  • noisedat->baaed aggressively at
  • +
  • noisedat->baaed annoyingly at
  • + +
  • noisedabout->bleated about
  • +
  • noisedabout->baaed angrily about
  • +
  • noisedabout->screamed about
  • +
  • noisedabout->feinted a headbutt because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->posture
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->lack of treats
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a hug
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] headpats
  • +
  • animalcharacteristic->[Refusal] to participate in a headbutting contest
  • + +
  • annoyingbehavior->annoyingly bumped [RECIPIENT_nameDef] with [INITIATOR_possessive] head
  • +
  • annoyingbehavior->annoyingly brushed against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->bit a document that [RECIPIENT_nameDef] was reading
  • +
    +
    + PMInteractionWeights_Sheep +
    + + + PMBleat_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMBleat_Insult + + Things/Mote/SpeechSymbols/Bleat_Insult + PMBleat_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->baa'd that [target] was
  • +
  • noisedtargetwas->bleated that [target] was
  • + +
  • noisedat->bleated loudly at
  • +
  • noisedat->screamed at
  • +
  • noisedat->baaed aggresively at
  • + +
  • noisedabout->bleated about
  • +
  • noisedabout->bleated angrily about
  • +
  • noisedabout->tried to headbutt [RECIPIENT_nameDef] because of
  • +
  • noisedabout->bleated in [RECIPIENT_nameDef] face over
  • +
  • noisedabout->screamed about
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->posture
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->lack of treats
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a hug
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] headpats
  • +
  • animalcharacteristic->[Refusal] to participate in a headbutting contest
  • + +
  • insult->a wolf
  • +
  • insult->a sheepdog
  • +
  • insult->a carnivore
  • +
  • insult->a straggler
  • +
  • insult->a donkey
  • +
    +
    + PMInteractionWeights_Sheep +
    + + + PMBleat_Insult + +
  • + + -15 +
  • +
    + PMBleat_InsultedMood +
    + + + PMBleat_InsultedMood + +
  • + + I've been bleated at! What an awful sheep! + -5 +
  • +
    +
    + + + + + PMBleat_KindWords + + Things/Mote/SpeechSymbols/Bleat_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMBleat_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->bleated that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->friendly demeanor
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->herding technique
  • +
  • animalcharacteristic->animals skill
  • +
  • animalcharacteristic->head scratches
  • +
  • animalcharacteristic->shaving technique
  • + +
  • complimentedtargets->baaed happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->baaed approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] baaed at
  • +
  • kindbehavior->[KindAdverb] bleated at
  • +
  • kindbehavior->[KindAdverb] sung a baa for
  • +
  • kindbehavior->[KindAdverb] bumped [INITIATOR_possessive] head into
  • + +
  • compliment->[KindAdj] haygrass
  • +
  • compliment->a [KindAdj] shepherd
  • +
  • compliment->a [KindAdj] pasture
  • +
  • compliment->a [KindAdj] cliffside
  • +
  • compliment->a [KindAdj] wool coat
  • +
  • compliment->a [KindAdj] flockmember
  • +
    +
    + PMInteractionWeights_Sheep +
    + + + PMBleat_KindWordsMemory + +
  • + + 15 +
  • +
    + PMBleat_KindWordsMood +
    + + + PMBleat_KindWordsMood + +
  • + + I've been sung a kind baa! What a nice sheep! + 5 +
  • +
    +
    + + + + + PMBleat_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->wool
  • +
  • animalcharacteristic->horns
  • +
  • animalcharacteristic->eyes
  • +
  • animalcharacteristic->retangular pupils
  • +
  • animalcharacteristic->hooves
  • +
  • animalcharacteristic->bleating
  • +
  • animalcharacteristic->heat
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->[Refusal] to stop shaving around [INITIATOR_objective]
  • + +
  • insultcomparison->a ugly sweater
  • +
  • insultcomparison->a lintball
  • +
  • insultcomparison->a wooly goat
  • +
  • insultcomparison->a sweatshop supplier
  • +
  • insultcomparison->lamb sauce
  • +
  • insultcomparison->a wolf in sheep's clothing
  • +
  • insultcomparison->a sheep in wolf's clothing
  • +
  • insultcomparison->a hay muncher
  • +
  • insultcomparison->a cotton plant
  • +
  • insultcomparison->a wool-for-brains
  • + +
  • insult->complained that [RECIPIENT_possessive] wool gets in the way
  • +
  • insult->suggested that [RECIPIENT_nameDef] baa more quietly
  • +
  • insult->yelled at [RECIPIENT_nameDef] to stop shaving around [INITIATOR_objective]
  • +
  • insult->insinuated that [RECIPIENT_nameDef] does not think for [RECIPIENT_objective]self
  • +
  • insult->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • + +
  • insultingjoketopics->sheep stuck on their backs
  • +
  • insultingjoketopics->shepherds
  • +
  • insultingjoketopics->sheepdogs
  • +
  • insultingjoketopics->herding animals
  • +
  • insultingjoketopics->wolves and sheep
  • +
  • insultingjoketopics->aggressive rams
  • +
  • insultingjoketopics->pulling the wool over your eyes
  • +
    +
    + PMInteractionWeights_Sheep +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Bok.xml b/1.5/Defs/Interactions/AnimalNoises_Bok.xml new file mode 100644 index 000000000..42c55ad50 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Bok.xml @@ -0,0 +1,502 @@ + + + + PMInteractionWeights_Chook + +
  • EtherChickenBeak
  • +
    + + + +
  • + EtherChickenBeak + 0.5 +
  • + + +
  • + EtherChickenTailfeathers + 0.25 +
  • + + +
  • + EtherWing + 0.125 +
  • + + +
  • + EtherEggLayer + 0.5 +
  • +
    + +
  • + ChookMorph + 1 +
  • +
    +
    + + + + PMBok_Chitchat + + Things/Mote/SpeechSymbols/Bok + PawnmorphBok + PawnmorphBok + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->bokked at
  • +
  • noisedat->clucked at
  • +
  • noisedat->crowed to
  • +
  • noisedat->turned [INITIATOR_possessive] head at
  • +
  • noisedat->shook [INITIATOR_possessive] tail at
  • +
  • noisedat->squawked at
  • +
  • noisedat->cawed at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->bokked about
  • +
  • noisedabout->clucked about
  • +
  • noisedabout->crowed about
  • +
  • noisedabout->squawked about
  • + +
  • animaltopic->preening [INITIATOR_possessive] feathers
  • +
  • animaltopic->chickens
  • +
  • animaltopic->roosters
  • +
  • animaltopic->hens
  • +
  • animaltopic->birds
  • +
  • animaltopic->flock formations
  • +
  • animaltopic->seeds
  • +
  • animaltopic->perches
  • +
  • animaltopic->roosting
  • +
  • animaltopic->keeping watch for foxes
  • +
  • animaltopic->coops
  • +
  • animaltopic->nesting
  • +
  • animaltopic->head scratches
  • +
  • animaltopic->collecting eggs
  • +
  • animaltopic->battery farms
  • +
  • animaltopic->free-range living
  • +
  • animaltopic->chicken rights
  • +
  • animaltopic->cannibalism
  • +
  • animaltopic->egg substitutes
  • +
  • animaltopic->eggs
  • +
    +
    + PMInteractionWeights_Chook +
    + + + PawnmorphBok + +
  • + + 0.66 +
  • +
    +
    + + + + + PMBok_ChookDeepTalk + + Things/Mote/SpeechSymbols/Bok_DeepTalk + PMBok_DeepTalkMemory + PMBok_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a chookmorph
  • +
  • animallife->becoming a chookmorph
  • +
  • animallife->molting
  • +
  • animallife->comb care
  • +
  • animallife->preening
  • +
  • animallife->beak polishing
  • +
  • animallife->eggs
  • +
  • animallife->talon care
  • +
  • animallife->roosting
  • +
  • animallife->chasing things
  • +
  • animallife->clucking
  • +
  • animallife->alarm calls
  • +
  • animallife->the tastiest seeds
  • +
  • animallife->nictitating membranes
  • +
  • animallife->manipulating with wings
  • +
  • animallife->head stabilization
  • +
  • animallife->hackle feather grooming
  • +
  • animallife->chicken rights
  • +
  • animallife->whether eating chookmorph meat is cannibalism
  • +
  • animallife->broken talons
  • +
  • animallife->peripheral vision
  • + +
    +
    + PMInteractionWeights_Chook +
    + + + PMBok_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMBok_ChookDeepTalkAvian + + Things/Mote/SpeechSymbols/Bok_DeepTalk + PMBok_DeepTalkAvianMemory + PMBok_DeepTalkAvianMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being chookmorphs
  • +
  • animallife->becoming chookmorphs
  • +
  • animallife->molting
  • +
  • animallife->comb care
  • +
  • animallife->preening
  • +
  • animallife->beak polishing
  • +
  • animallife->eggs
  • +
  • animallife->talon care
  • +
  • animallife->roosting
  • +
  • animallife->chasing things
  • +
  • animallife->clucking
  • +
  • animallife->alarm calls
  • +
  • animallife->the tastiest seeds
  • +
  • animallife->nictitating membranes
  • +
  • animallife->manipulating with wings
  • +
  • animallife->head stabilization
  • +
  • animallife->hackle feather grooming
  • +
  • animallife->chicken rights
  • +
  • animallife->whether eating chookmorph meat is cannibalism
  • +
  • animallife->broken talons
  • +
  • animallife->peripheral vision
  • + +
  • secretanimallife->digging
  • +
  • secretanimallife->egg laying
  • +
  • secretanimallife->keeping a clean nest
  • +
  • secretanimallife->the prettiest feather colors
  • +
  • secretanimallife->hiding from foxes
  • +
  • secretanimallife->hiding from cats
  • +
  • secretanimallife->being in a flock together
  • +
  • secretanimallife->being birds of a feather
  • +
  • secretanimallife->foraging together
  • +
  • secretanimallife->the best places to lay eggs
  • +
  • secretanimallife->gossip about cows
  • +
  • secretanimallife->foraging
  • +
  • secretanimallife->finding worms
  • +
  • secretanimallife->the pecking order
  • +
  • secretanimallife->sunbathing
  • +
  • secretanimallife->mating calls
  • +
  • secretanimallife->the best crowing spots
  • +
  • secretanimallife->the guilty pleasure of fried chicken
  • + +
  • animalbehavior->tapped beaks with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] brushed against each other
  • +
  • animalbehavior->and [RECIPIENT_nameDef] both scratched the floor in unison
  • +
  • animalbehavior->shook wings with [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Chook + PMInteractionWeights_Chook + 0.5 + true +
    + + + PMBok_DeepTalkAvianMemory + +
  • + + 20 +
  • +
    +
    + + + + PMBok_ChookSlight + + Things/Mote/SpeechSymbols/Bok_Slight + PMBok_SlightMemory + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->squawked at
  • +
  • noisedat->crowed aggressively at
  • +
  • noisedat->bokked annoyingly at
  • + +
  • noisedabout->squawked about
  • +
  • noisedabout->bokked unhappily about
  • +
  • noisedabout->crowed because of
  • + +
  • animalcharacteristic->eye contact
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->cleanliness
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->[Refusal] to be pecked by [INITIATOR_objective]
  • +
  • animalcharacteristic->[Refusal] to scratch [INITIATOR_possessive] wing
  • +
  • animalcharacteristic->[Refusal] to talk with [INITIATOR_objective] about eggs
  • + +
  • annoyingbehavior->tried to preen [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->squawked loudly in [RECIPIENT_nameDef] face
  • +
  • annoyingbehavior->preened a feather and tossed it on [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->would not shut up about eggs
  • +
    +
    + PMInteractionWeights_Chook +
    + + + PMBok_SlightMemory + +
  • + + -5 +
  • +
    +
    + + + + + PMBok_ChookInsult + + Things/Mote/SpeechSymbols/Bok_Insult + PMBok_InsultMemory + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->bokked that [Target] was
  • +
  • noisedtargetwas->clucked that [Target] was
  • +
  • noisedtargetwas->crowed that [Target] was
  • + +
  • noisedat->bokked at
  • +
  • noisedat->crowed at
  • +
  • noisedat->scratched the ground aggessively at
  • +
  • noisedat->squawked annoyingly at
  • + +
  • noisedabout->squawked about
  • +
  • noisedabout->crowed about
  • +
  • noisedabout->bokked unhappily about
  • +
  • noisedabout->bokked loudly because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->eye contact
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->cleanliness
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->[Refusal] to talk with [INITIATOR_objective] about eggs
  • +
  • animalcharacteristic->[Refusal] to scratch [INITIATOR_possessive] wing
  • +
  • animalcharacteristic->[Refusal] to be preened by [INITIATOR_objective]
  • + +
  • insult->a loose twig
  • +
  • insult->a worm
  • +
  • insult->a late bird
  • +
  • insult->a feather duster
  • +
  • insult->a bad egg
  • +
    +
    + PMInteractionWeights_Chook +
    + + + PMBok_InsultMemory + +
  • + + -15 +
  • +
    + PMBok_InsultedMood +
    + + + PMBok_InsultedMood + +
  • + + I've been crowed at! What an awful chook! + -5 +
  • +
    +
    + + + + + PMBok_ChookKindWords + + Things/Mote/SpeechSymbols/Bok_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMBok_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->bokked that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->motherly instinct
  • +
  • animalcharacteristic->comb
  • +
  • animalcharacteristic->nest
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • + +
  • complimentedtargets->bokked happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->crowed approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->shook [INITIATOR_possessive] tailfeathes at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wiggled because of [RECIPIENT_nameDef]'s
  • + +
  • kindbehavior->[KindAdverb] wiggled
  • +
  • kindbehavior->[KindAdverb] bokked at
  • +
  • kindbehavior->shook [INITIATOR_possessive] tailfeathers at
  • + +
  • aviancompliment->a [KindAdj] pebble
  • +
  • aviancompliment->a [KindAdj] corn kernel
  • +
  • aviancompliment->a [KindAdj] egg
  • +
  • aviancompliment->a [KindAdj] twig
  • +
  • aviancompliment->a [KindAdj] feather
  • +
  • aviancompliment->a [KindAdj] nestmate
  • +
    +
    + PMInteractionWeights_Chook +
    + + + PMBok_KindWordsMemory + +
  • + + 15 +
  • +
    + PMBok_KindWordsMood +
    + + + PMBok_KindWordsMood + +
  • + + I've been complimented! What a nice chook! + 5 +
  • +
    +
    + + + + + PMBok_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->feathers
  • +
  • animalcharacteristic->beak
  • +
  • animalcharacteristic->comb
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->head stabilization
  • +
  • animalcharacteristic->egg laying
  • +
  • animalcharacteristic->rigid eyes
  • +
  • animalcharacteristic->head bobbing
  • +
  • animalcharacteristic->lack of ears
  • +
  • animalcharacteristic->twitchy behavior
  • +
  • animalcharacteristic->egg quality
  • +
  • animalcharacteristic->[refusal] to stop talking about eggs
  • + +
  • insultcomparison->a bird brain
  • +
  • insultcomparison->a battery hen
  • +
  • insultcomparison->a fowl person
  • +
  • insultcomparison->a feather duster
  • +
  • insultcomparison->a main dish
  • +
  • insultcomparison->a rat with wings
  • +
  • insultcomparison->a cat's dinner
  • +
  • insultcomparison->a nutrient paste dispenser
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] is too loud
  • +
  • insult->suggested that [RECIPIENT_nameDef] stop twitching [RECIPIENT_possessive] head so much
  • +
  • insult->yelled at [RECIPIENT_nameDef] to stop preening around [RECIPIENT_objective]
  • +
  • insult->shook his arms and made bokking noises towards [RECIPIENT_nameDef]
  • + +
  • insultingjoketopics->chickens and road safety
  • +
  • insultingjoketopics->cowardice
  • +
  • insultingjoketopics->an egg pun
  • +
  • insultingjoketopics->fried chicken
  • +
    +
    + PMInteractionWeights_Chook +
    + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Boom.xml b/1.5/Defs/Interactions/AnimalNoises_Boom.xml new file mode 100644 index 000000000..ba012fcd3 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Boom.xml @@ -0,0 +1,503 @@ + + + + + PMInteractionWeights_Boom + +
  • EtherChemfuelUdder
  • +
    + + + +
  • + EtherBoomalopeSnout + 0.25 +
  • + + +
  • + EtherBoomalopeEar + 0.125 +
  • + + +
  • + EtherChemfuelUdder + 0.5 +
  • +
    + +
  • + BoomalopeMorph + 1 +
  • +
    +
    + + + + PMBoom_Chitchat + + Things/Mote/SpeechSymbols/Boom + PMBoom_ChitchatMemory + PMBoom_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->bleated at
  • +
  • noisedat->sniffed at
  • +
  • noisedat->snorted at
  • +
  • noisedat->grunted at
  • +
  • noisedat->wiggled [INITIATOR_possessive] ears at
  • +
  • noisedat->jiggled [INITIATOR_possessive] tail at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->bleated about
  • +
  • noisedabout->snorted about
  • +
  • noisedabout->grunted about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->chemfuel
  • +
  • animaltopic->explosions
  • +
  • animaltopic->chemical cysts
  • +
  • animaltopic->chemfuel udders
  • +
  • animaltopic->chemfuel milking
  • +
  • animaltopic->fire safety
  • +
  • animaltopic->firefoam
  • +
  • animaltopic->pyromania
  • +
  • animaltopic->explosion hazards
  • +
  • animaltopic->smokeleaf joints
  • +
  • animaltopic->genetic engineering
  • +
  • animaltopic->renewable energy
  • +
  • animaltopic->suicide bombs
  • +
  • animaltopic->self-guided munitions
  • +
  • animaltopic->herds
  • +
  • animaltopic->boomalope ears
  • +
  • animaltopic->stables
  • +
  • animaltopic->hay
  • +
  • animaltopic->snout pats
  • +
    +
    + PMInteractionWeights_Boom +
    + + + PMBoom_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMBoom_DeepTalk + + Things/Mote/SpeechSymbols/Boom_DeepTalk + PMBoom_DeepTalkMemory + PMBoom_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming a boomamorph
  • +
  • animallife->being a boomamorph
  • +
  • animallife->having hooves
  • +
  • animallife->having chemical cysts
  • +
  • animallife->safely harvesting chemfuel
  • +
  • animallife->fire safety
  • +
  • animallife->explosion hazards
  • +
  • animallife->chemfuel
  • +
  • animallife->being a fire hazard
  • +
  • animallife->head pats
  • +
  • animallife->hay
  • +
  • animallife->hoof care
  • +
  • animallife->the immorality of suicide bombs
  • +
  • animallife->alternative energy sources
  • +
  • animallife->the dangers of chemfuel generators
  • +
  • animallife->the risks of chemfuel storage
  • +
  • animallife->the dangers of smoking
  • +
  • animallife->living with hooves
  • +
  • animallife->being highly volitile
  • +
  • animallife->peripheral vision
  • +
    +
    + PMInteractionWeights_Boom +
    + + + PMBoom_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMBoom_DeepTalkBoom + + Things/Mote/SpeechSymbols/Boom_DeepTalk + PMBoom_DeepTalkBoomMemory + PMBoom_DeepTalkBoomMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming boomamorphs
  • +
  • animallife->being boomamorphs
  • +
  • animallife->having hooves
  • +
  • animallife->having chemical cysts
  • +
  • animallife->safely harvesting chemfuel
  • +
  • animallife->fire safety
  • +
  • animallife->explosion hazards
  • +
  • animallife->chemfuel
  • +
  • animallife->being a fire hazard
  • +
  • animallife->head pats
  • +
  • animallife->hay
  • +
  • animallife->hoof care
  • +
  • animallife->the immorality of suicide bombs
  • +
  • animallife->alternative energy sources
  • +
  • animallife->the dangers of chemfuel generators
  • +
  • animallife->the risks of chemfuel storage
  • +
  • animallife->the dangers of smoking
  • +
  • animallife->living with hooves
  • +
  • animallife->being highly volitile
  • +
  • animallife->peripheral vision
  • + +
  • secretanimallife->chemfuel leaks
  • +
  • secretanimallife->sloshing noises
  • +
  • secretanimallife->the scent of chemfuel
  • +
  • secretanimallife->boomalope ears
  • +
  • secretanimallife->chemfuel milking techniques
  • +
  • secretanimallife->how chemfuel is made
  • +
  • secretanimallife->the forbidden temptation of smokeleaf
  • +
  • secretanimallife->comparing cysts
  • +
  • secretanimallife->cyst cleaning
  • +
  • secretanimallife->fire
  • +
  • secretanimallife->explosions
  • +
  • secretanimallife->blowing up raiders
  • +
  • secretanimallife->making explosives
  • +
  • secretanimallife->pyromania
  • +
  • secretanimallife->going out with a bang
  • +
  • secretanimallife->the secret to not exploding
  • +
  • secretanimallife->firefoam-filled bedding
  • + +
  • animalbehavior->snorted understandingly at [RECIPIENT_nameDef]
  • +
  • animalbehavior->made explosion noises with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] nodded understandingly at each other
  • +
  • animalbehavior->and [RECIPIENT_nameDef] sniffed at each other's chemfuel udders
  • +
    +
    + PMInteractionWeights_Boom + PMInteractionWeights_Boom + 0.5 + true +
    + + + PMBoom_DeepTalkBoomMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMBoom_Slight + + Things/Mote/SpeechSymbols/Boom_Slight + PMBoom_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->grunted at
  • +
  • noisedat->snorted aggressively at
  • +
  • noisedat(p=2)->[whispered] about [exploding]
  • + +
  • noisedabout->grunted about
  • +
  • noisedabout->snorted about
  • +
  • noisedabout(p=2)->[whispered] about [exploding] [RECIPIENT_nameDef] because of
  • + +
  • whispered->whispered
  • +
  • whispered->mumbled
  • +
  • whispered->muttered
  • +
  • whispered->grumbled
  • + +
  • exploding->exploding
  • +
  • exploding->blowing up
  • +
  • exploding->detonating
  • +
  • exploding->igniting
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->lax fire safety
  • +
  • animalcharacteristic->terrible chemfuel milking technique
  • +
  • animalcharacteristic->tendency to spill chemfuel
  • +
  • animalcharacteristic->preference for chemfuel generators
  • +
  • animalcharacteristic->smoking habit
  • + +
  • annoyingbehavior->made gross sloshing noises with [INITIATOR_possessive] chemfuel cysts around [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->leaked chemfuel on [RECIPIENT_nameDef]'s shoes
  • +
  • annoyingbehavior->repeatedly made explosion noises under [INITIATOR_possessive] breath, annoying [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Boom +
    + + + PMBoom_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMBoom_Insult + + Things/Mote/SpeechSymbols/Boom_Insult + PMBoom_InsultMemory + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->grunted that [Target] was
  • +
  • noisedtargetwas->bayed that [Target] was
  • +
  • noisedtargetwas->bleated that [Target] was
  • + +
  • noisedat->grunted at
  • +
  • noisedat->snorted aggressively at
  • +
  • noisedat(p=2)->[threatedto] [explode]
  • + +
  • noisedabout->grunted about
  • +
  • noisedabout->snorted about
  • +
  • noisedabout(p=2)->[threatedto] [explode] [RECIPIENT_nameDef] because of
  • + +
  • threatedto->threated to
  • +
  • threatedto->warned [RECIPIENT_pronoun] would
  • +
  • threatedto->expressed a desire to
  • +
  • threatedto->wished [RECIPIENT_pronoun] could
  • + +
  • explode->explode
  • +
  • explode->blow up
  • +
  • explode->detonate
  • +
  • explode->ignite
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->lax fire safety
  • +
  • animalcharacteristic->terrible chemfuel milking technique
  • +
  • animalcharacteristic->tendency to spill chemfuel
  • +
  • animalcharacteristic->preference for chemfuel generators
  • +
  • animalcharacteristic->smoking habit
  • + +
  • insult->a smokeleaf joint
  • +
  • insult->a lit match
  • +
  • insult->a pyromaniac
  • +
  • insult->an oil baron
  • +
  • insult->chemfuel
  • +
  • insult->a chemical cyst
  • +
    +
    + PMInteractionWeights_Boom +
    + + + PMBoom_InsultMemory + +
  • + + -15 +
  • +
    + PMBoom_InsultedMood +
    + + + PMBoom_InsultedMood + +
  • + + I've been threatened with being blown up! What an awful boomalope! + -5 +
  • +
    +
    + + + + + PMBoom_KindWords + + Things/Mote/SpeechSymbols/Boom_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMBoom_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->bleated that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->commitment to fire safety
  • +
  • animalcharacteristic->preference for renewable energy
  • +
  • animalcharacteristic->tolerance of chemfuel
  • +
  • animalcharacteristic->snout patting technique
  • + +
  • complimented->snorted happily about [RECIPIENT_nameDef]'s
  • +
  • complimented->grunted approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimented->sniffled appreciatively at [RECIPIENT_nameDef]'s
  • +
  • complimented->wiggled [INITIATOR_possessive] ears about [RECIPIENT_nameDef]'s
  • + +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] snorted at
  • +
  • kindbehavior->wiggled [INITIATOR_possessive] ears at
  • + +
  • compliment->a [KindAdj] firefoam dispenser
  • +
  • compliment->[KindAdj] grass
  • +
  • compliment->[KindAdj] snoutpatter
  • +
  • compliment->[KindAdj] herdmate
  • +
    +
    + PMInteractionWeights_Boom +
    + + + PMBoom_KindWordsMemory + +
  • + + 15 +
  • +
    + PMBoom_KindWordsMood +
    + + + PMBoom_KindWordsMood + +
  • + + I've been complimented! What a nice boomalope! + 5 +
  • +
    +
    + + + + + PMBoom_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->chemical cysts
  • +
  • animalcharacteristic->weird ears
  • +
  • animalcharacteristic->tendency to leak chemfuel
  • +
  • animalcharacteristic->rancid chemical smell
  • +
  • animalcharacteristic->sloshing noises
  • +
  • animalcharacteristic->instability
  • +
  • animalcharacteristic->volitility
  • +
  • animalcharacteristic->explosive personality
  • + +
  • insultcomparison->a ticking time bomb
  • +
  • insultcomparison->a suicide bomber
  • +
  • insultcomparison->an oil well
  • +
  • insultcomparison->a gas pump
  • +
  • insultcomparison->a chemfuel dispenser
  • +
  • insultcomparison->a stick of dynamite
  • +
  • insultcomparison->a fire hazard
  • +
  • insultcomparison->an explosion hazard
  • +
  • insultcomparison->a red barrel
  • +
  • insultcomparison->a genetic experiment gone wrong
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained about [RECIPIENT_nameDef]'s constant chemfuel leaks
  • +
  • insult->mockingly made an explosion noise at [RECIPIENT_nameDef]
  • +
  • insult->loudly asked for someone to check the firefoam poppers as [RECIPIENT_nameDef] walked by
  • + +
  • insultingjoketopics->self-guided munitions
  • +
  • insultingjoketopics->suicide bombers
  • +
  • insultingjoketopics->explosions
  • +
  • insultingjoketopics->oil barons
  • +
  • insultingjoketopics->forest fires
  • +
  • insultingjoketopics->firefighting
  • +
    +
    + PMInteractionWeights_Boom +
    + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Chao.xml b/1.5/Defs/Interactions/AnimalNoises_Chao.xml new file mode 100644 index 000000000..6beca27aa --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Chao.xml @@ -0,0 +1,661 @@ + + + + + PMInteractionWeights_Chao + +
  • ChaocowMorph
  • +
  • ChaoboomMorph
  • +
  • ChaofoxMorph
  • +
  • ChaodinoMorph
  • +
    + + + +
  • + ChaocowMorph + 2 +
  • +
  • + ChaoboomMorph + 2 +
  • +
  • + ChaofoxMorph + 2 +
  • +
  • + ChaodinoMorph + 2 +
  • +
    +
    + + + + + PMChao_Chitchat + + Things/Mote/SpeechSymbols/Chao + PMChao_ChitchatMemory + PMChao_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=2)->[animalnoised] at
  • +
  • noisedat->[animalnoise]-[animalnoised] at
  • + +
  • animalnoise->bark
  • +
  • animalnoise->whuff
  • +
  • animalnoise->yip
  • +
  • animalnoise->yap
  • +
  • animalnoise->cluck
  • +
  • animalnoise->bok
  • +
  • animalnoise->moo
  • +
  • animalnoise->neigh
  • +
  • animalnoise->bleat
  • +
  • animalnoise->grunt
  • +
  • animalnoise->chatter
  • +
  • animalnoise->squeal
  • +
  • animalnoise->oink
  • +
  • animalnoise->whinny
  • + +
  • animalnoised->barked
  • +
  • animalnoised->whuffed
  • +
  • animalnoised->yipped
  • +
  • animalnoised->yapped
  • +
  • animalnoised->clucked
  • +
  • animalnoised->bokked
  • +
  • animalnoised->mooed
  • +
  • animalnoised->neighed
  • +
  • animalnoised->bleated
  • +
  • animalnoised->grunted
  • +
  • animalnoised->chattered
  • +
  • animalnoised->squealed
  • +
  • animalnoised->oinked
  • +
  • animalnoised->whinnied
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->[animalnoised] about
  • +
  • noisedabout->[animalnoise]-[animalnoised] about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->animals
  • +
  • animaltopic->chimeras
  • +
  • animaltopic->hybrids
  • +
  • animaltopic->chaobeasts
  • +
  • animaltopic->change
  • +
  • animaltopic->chaos theory
  • +
  • animaltopic->strange animal noises
  • +
  • animaltopic->DNA testing
  • +
  • animaltopic->conflicting instincts
  • +
  • animaltopic->different senses
  • +
  • animaltopic->sensory overload
  • +
    +
    + PMInteractionWeights_Chao +
    + + + PMChao_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMChao_DeepTalk + + Things/Mote/SpeechSymbols/Chao_DeepTalk + PMChao_DeepTalkMemory + PMChao_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a chaomorph
  • +
  • animallife->becoming a chaomorph
  • +
  • animallife->shedding and molting
  • +
  • animallife->headpats
  • +
  • animallife->ear scritches
  • +
  • animallife->different senses
  • +
  • animallife->conflicting mutations
  • +
  • animallife->incompatable biologies
  • +
  • animallife->awkward mutation combinations
  • +
  • animallife->confusing instincts
  • +
  • animallife->fur, feather, and scale cleaning
  • +
  • animallife->experimental mutagens
  • +
  • animallife->unstable mechanites
  • +
  • animallife->mad science
  • +
  • animallife->human experimentation
  • +
  • animallife->the ethics of mutation
  • +
  • animallife->the health risks of mutation
  • +
  • animallife->the different categories of chaomorphs
  • +
  • animallife->how many different animals [INITIATOR_nameDef] is
  • +
  • animallife->chaotaxonomy
  • +
  • animallife->chookcow ranching
  • +
  • animallife->what science has done
  • +
    +
    + PMInteractionWeights_Chao +
    + + + PMChao_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMChao_DeepTalkChao + + Things/Mote/SpeechSymbols/Chao_DeepTalk + PMChao_DeepTalkChaoMemory + PMChao_DeepTalkChaoMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being chaomorphs
  • +
  • animallife->becoming chaomorphs
  • +
  • animallife->shedding and molting
  • +
  • animallife->headpats
  • +
  • animallife->ear scritches
  • +
  • animallife->different senses
  • +
  • animallife->conflicting mutations
  • +
  • animallife->incompatable biologies
  • +
  • animallife->awkward mutation combinations
  • +
  • animallife->confusing instincts
  • +
  • animallife->fur, feather, and scale cleaning
  • +
  • animallife->experimental mutagens
  • +
  • animallife->unstable mechanites
  • +
  • animallife->mad science
  • +
  • animallife->human experimentation
  • +
  • animallife->the ethics of mutation
  • +
  • animallife->the health risks of mutation
  • +
  • animallife->the different categories of chaomorphs
  • +
  • animallife->how many different animals they each are
  • +
  • animallife->chaotaxonomy
  • +
  • animallife->chookcow ranching
  • +
  • animallife->what science has done
  • + +
  • secretanimallife->brushy brushy
  • +
  • secretanimallife->comparing mutations
  • +
  • secretanimallife->being crimes against nature
  • +
  • secretanimallife->wondering what chaomeat tastes like
  • +
  • secretanimallife->the legend of chookcow gryphons
  • +
  • secretanimallife->how chaofoxes can secretly fly
  • +
  • secretanimallife->the land speed of an unladen chaodino
  • +
  • secretanimallife->hunting [prey]
  • +
  • secretanimallife->chasing [prey]
  • +
  • secretanimallife->running away from [pred]
  • +
  • secretanimallife->being eaten by [pred]
  • +
  • secretanimallife->the uncomfortable sensation of wanting to hunt yourself
  • +
  • secretanimallife->embracing change
  • +
  • secretanimallife->merging together
  • +
  • secretanimallife->forced evolution
  • +
  • secretanimallife->pouring slurry into the water supply
  • +
  • secretanimallife->worshipping the chao-gods
  • +
  • secretanimallife->chaocults
  • +
  • secretanimallife->the chao-god Yaaap, Herald of the Flock
  • +
  • secretanimallife->the chao-god Pheo, Shaper of Images
  • +
  • secretanimallife->the chao-god Iron, The Architect
  • + +
  • prey(p=10)->[preyanimal]
  • +
  • prey->[preymorph]
  • + +
  • preyanimal->mice
  • +
  • preyanimal->rats
  • +
  • preyanimal->rabbits
  • +
  • preyanimal->squirrels
  • +
  • preyanimal->chickens
  • +
  • preyanimal->pigs
  • +
  • preyanimal->cows
  • +
  • preyanimal->deer
  • +
  • preyanimal->bears
  • +
  • preyanimal->thrumbos
  • + +
  • preymorph->ratmorphs
  • +
  • preymorph->rabbitmorphs
  • +
  • preymorph->squirrelmorphs
  • +
  • preymorph->chookmorphs
  • +
  • preymorph->pigmorphs
  • +
  • preymorph->cowmorphs
  • +
  • preymorph->deermorphs
  • +
  • preymorph->bearmorphs
  • +
  • preymorph->thrumbomorphs
  • + +
  • pred(p=10)->[predanimal]
  • +
  • pred->[predmorph]
  • + +
  • predanimal->rats
  • +
  • predanimal->cats
  • +
  • predanimal->dogs
  • +
  • predanimal->cougars
  • +
  • predanimal->wolves
  • +
  • predanimal->bears
  • +
  • predanimal->thrumbos
  • + +
  • predmorph->ratmorphs
  • +
  • predmorph->catmorphs
  • +
  • predmorph->dogmorphs
  • +
  • predmorph->cougarmorphs
  • +
  • predmorph->wolfmorphs
  • +
  • predmorph->bearmorphs
  • +
  • predmorph->thrumbomorphs
  • + +
  • animalbehavior->exchanged sniffs with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] compared notes on mutations
  • +
  • animalbehavior->and [RECIPIENT_nameDef] shared understanding looks
  • +
    +
    + PMInteractionWeights_Chao + PMInteractionWeights_Chao + 0.5 + true +
    + + + PMChao_DeepTalkChaoMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMChao_Slight + + Things/Mote/SpeechSymbols/Chao_Slight + PMChao_Slight + + +
  • r_logentry->[INITIATOR_nameDef] [complained] at [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [complained] about [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • complained(p=2)->[noised]
  • +
  • complained->[noise]-[noised]
  • + +
  • noise->growl
  • +
  • noise->bark
  • +
  • noise->cluck
  • +
  • noise->hiss
  • +
  • noise->squawk
  • +
  • noise->roar
  • +
  • noise->snort
  • +
  • noise->grunt
  • +
  • noise->whine
  • +
  • noise->huff
  • +
  • noise->gekker
  • +
  • noise->screech
  • +
  • noise->squeal
  • + +
  • noised->growled
  • +
  • noised->barked
  • +
  • noised->clucked
  • +
  • noised->hissed
  • +
  • noised->squawked
  • +
  • noised->roared
  • +
  • noised->snorted
  • +
  • noised->grunted
  • +
  • noised->whined
  • +
  • noised->huffed
  • +
  • noised->gekkered
  • +
  • noised->screeched
  • +
  • noised->squealed
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->animal handling skill
  • +
  • animalcharacteristic->normal body
  • +
  • animalcharacteristic->working organs
  • +
  • animalcharacteristic->functioning biology
  • +
  • animalcharacteristic->matching limbs
  • +
  • animalcharacteristic->stable gait
  • +
  • animalcharacteristic->lack of ethics
  • +
  • animalcharacteristic->penchant for mad science
  • + +
  • annoyingbehavior->made strange gurgling noises as some part of [INITIATOR_possessive] chaobiology settled down, grossing out [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->burped repeatedly as [INITIATOR_possessive] mismatched digestive system worked out some kinks, to the disgust of [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->began to groom [INITIATOR_possessive] own mutated biology like a [Animal] in front of [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Chao +
    + + + PMChao_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMChao_Insult + + Things/Mote/SpeechSymbols/Chao_Insult + PMChao_Insult + + +
  • r_logentry(p=3)->[INITIATOR_nameDef] [complained] at [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [complained] about [target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [chaoscreech].
  • + +
  • target(p=4)->[RECIPIENT_nameDef]
  • +
  • target->[RECIPIENT_nameDef]'s [PersonFamily]
  • + +
  • characteristic->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • complained->[noised]
  • +
  • complained->[noise]-[noised]
  • + +
  • noise->growl
  • +
  • noise->snarl
  • +
  • noise->bukaww
  • +
  • noise->hiss
  • +
  • noise->squawk
  • +
  • noise->roar
  • +
  • noise->yelp
  • +
  • noise->screech
  • +
  • noise->scream
  • + +
  • noised->growled
  • +
  • noised->snarled
  • +
  • noised->bukawwed
  • +
  • noised->hissed
  • +
  • noised->squawked
  • +
  • noised->roared
  • +
  • noised->yelped
  • +
  • noised->screeched
  • +
  • noised->screamed
  • + +
  • noises->growls
  • +
  • noises->snarls
  • +
  • noises->bukawws
  • +
  • noises->hisses
  • +
  • noises->squawks
  • +
  • noises->roars
  • +
  • noises->yelps
  • +
  • noises->screeches
  • +
  • noises->screams
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->animal handling skill
  • +
  • animalcharacteristic->working organs
  • +
  • animalcharacteristic->normal body
  • +
  • animalcharacteristic->functioning biology
  • +
  • animalcharacteristic->matching limbs
  • +
  • animalcharacteristic->stable gait
  • +
  • animalcharacteristic->lack of ethics
  • +
  • animalcharacteristic->penchant for mad science
  • + +
  • chaoscreech->tried to [noise] at [RECIPIENT_nameDef] only to devolve into a series of [noises]
  • +
  • chaoscreech->made several rapid-fire [noises] at [RECIPIENT_nameDef]
  • +
  • chaoscreech->couldn't decide whether to [noise] or [noise] at [RECIPIENT_nameDef], so [INITIATOR_pronoun] did both to be safe
  • +
  • chaoscreech->made a horrifying noise at [RECIPIENT_nameDef] that sounded like a cross between a [noise] and a [noise] with some [noises] added in
  • +
  • chaoscreech->angrily ranted about [target]'s [characteristic], only to gradually devolve into a [noise]-[noise]
  • +
  • chaoscreech->[noised] repeatedly at [RECIPIENT_nameDef], punctuated with a few [noises] for emphasis
  • +
  • chaoscreech->[noise]-[noised] that [RECIPIENT_nameDef] is a mad scientist
  • +
    +
    + PMInteractionWeights_Chao +
    + + + PMChao_Insult + +
  • + + -15 +
  • +
    + PMChao_InsultedMood +
    + + + PMChao_InsultedMood + +
  • + + I can't even describe the horrible sound that was made at me! What an awful chaomorph! + -5 +
  • +
    +
    + + + + + PMChao_KindWords + + Things/Mote/SpeechSymbols/Chao_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMChao_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimented] [RECIPIENT_nameDef]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noised] that [RECIPIENT_nameDef] was
  • +
  • comparedtargetto->[noise]-[noised] that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->normal body
  • +
  • animalcharacteristic->working organs
  • +
  • animalcharacteristic->functioning biology
  • +
  • animalcharacteristic->matching limbs
  • +
  • animalcharacteristic->stable gait
  • + +
  • complimented->[MaybeKindAdv] [noised] at
  • +
  • complimented->[MaybeKindAdv] [noise]-[noised] at
  • + +
  • kindbehavior->[noised] at
  • +
  • kindbehavior->[noise]-[noised] at
  • +
  • kindbehavior->[behaviored]
  • +
  • kindbehavior->[behavior]-[behaviored]
  • +
  • kindbehavior->[noised] and [behaviored]
  • +
  • kindbehavior->[noise]-[noised] and [behaviored]
  • +
  • kindbehavior->[noised] and [behavior]-[behaviored]
  • +
  • kindbehavior->[noise]-[noised] and [behavior]-[behaviored]
  • +
  • kindbehavior->fluffed [INITIATOR_possessive] fur-feathers at
  • + +
  • noise->wuff
  • +
  • noise->purr
  • +
  • noise->chitter
  • +
  • noise->yip
  • +
  • noise->chirp
  • +
  • noise->baa
  • +
  • noise->oink
  • +
  • noise->mumble
  • + +
  • noised->wuffed
  • +
  • noised->purred
  • +
  • noised->chittered
  • +
  • noised->yipped
  • +
  • noised->chirped
  • +
  • noised->baa'd
  • +
  • noised->oinked
  • +
  • noised->mumbled
  • + +
  • behavior->lick
  • +
  • behavior->nuzzle
  • +
  • behavior->nose
  • +
  • behavior->rub
  • +
  • behavior->bunt
  • +
  • behavior->flutter
  • +
  • behavior->wag
  • + +
  • behaviored->licked
  • +
  • behaviored->nuzzled
  • +
  • behaviored->nosed
  • +
  • behaviored->rubbed
  • +
  • behaviored->bunted
  • +
  • behaviored->fluttered
  • +
  • behaviored->wagged
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->animal handling skill
  • +
  • animalcharacteristic->working organs
  • +
  • animalcharacteristic->normal body
  • +
  • animalcharacteristic->functioning biology
  • +
  • animalcharacteristic->matching limbs
  • +
  • animalcharacteristic->stable gait
  • +
  • animalcharacteristic->good sense of ethics
  • +
  • animalcharacteristic->restraint from mad science
  • + +
  • compliment->a [KindAdj] zookeeper
  • +
  • compliment->a [KindAdj] animal handler
  • +
  • compliment->a [KindAdj] scritcher
  • +
  • compliment->a [KindAdj] noserubber
  • +
  • compliment->a [KindAdj] headpatter
  • +
  • compliment->a [KindAdj] earscritcher
  • +
    +
    + PMInteractionWeights_Chao +
    + + + PMChao_KindWordsMemory + +
  • + + 15 +
  • +
    + PMChao_KindWordsMood +
    + + + PMChao_KindWordsMood + +
  • + + I've been given a kind, uh, animal noise! What a nice chaomorph! + 5 +
  • +
    +
    + + + + + PMChao_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->smell
  • +
  • animalcharacteristic->stench
  • +
  • animalcharacteristic->weird noises
  • +
  • animalcharacteristic->mismatched body
  • +
  • animalcharacteristic->warped body
  • +
  • animalcharacteristic->freakish appearance
  • +
  • animalcharacteristic->jumbled-up organs
  • + +
  • insultcomparison->a zoo
  • +
  • insultcomparison->a one-[Man] biology exhibit
  • +
  • insultcomparison->a one-[Man] farm
  • +
  • insultcomparison->a walking see-n-say
  • +
  • insultcomparison->a frankenstein's monster
  • +
  • insultcomparison->a supermarket meat department
  • +
  • insultcomparison->an all-in-one breakfast dispenser
  • +
  • insultcomparison->a chimera
  • +
  • insultcomparison->a freak of nature
  • +
  • insultcomparison->a mutagen addict
  • +
  • insultcomparison->an evolutionary mistake
  • +
  • insultcomparison->a pile of animal parts
  • +
  • insultcomparison->an animal grab bag
  • +
  • insultcomparison->a [Man]-[Animal]-[Animal]
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->remarked that [RECIPIENT_nameDef] looks like a cross between a [Animal], a [Animal], and a [Animal]
  • +
  • insult->told [RECIPIENT_nameDef] to stop making so many different animal sounds
  • +
  • insult->said [RECIPIENT_nameDef] looks so much like a chaofox that they should put a saddle on [RECIPIENT_objective]
  • +
  • insult->said [RECIPIENT_nameDef] looks so much like a chaocow that they should put [RECIPIENT_objective] in a barn stall
  • +
  • insult->said [RECIPIENT_nameDef] looks so much like a chaodino that they should get an egg box ready
  • + +
  • insultingjoketopics->an explosion in the taxonomy department
  • +
  • insultingjoketopics->leftover animal parts
  • +
  • insultingjoketopics->unlikely conceptions
  • +
  • insultingjoketopics->swimming in mutaslurry
  • +
  • insultingjoketopics->man-bear-pigs
  • +
  • insultingjoketopics->someone named Edward
  • +
    +
    + PMInteractionWeights_Chao +
    + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Chitter.xml b/1.5/Defs/Interactions/AnimalNoises_Chitter.xml new file mode 100644 index 000000000..0b7a87299 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Chitter.xml @@ -0,0 +1,497 @@ + + + + + PMInteractionWeights_Raccoon + +
  • EtherRaccoonJaw
  • +
    + + + +
  • + EtherRaccoonJaw + 0.5 +
  • + + +
  • + EtherRaccoonTail + 0.25 +
  • + + +
  • + EtherRaccoonEar + 0.125 +
  • +
    + +
  • + RaccoonMorph + 1 +
  • +
    +
    + + + + PMChitter_Chitchat + + Things/Mote/SpeechSymbols/Chitter + PawnmorphChitter + PawnmorphChitter + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [noisedat] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->chittered at
  • +
  • noisedat->chittered to
  • +
  • noisedat->chirped at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->chittered at
  • +
  • noisedabout->chittered to
  • +
  • noisedabout->chirped at
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->cleaning [INITIATOR_possessive] hands
  • +
  • animaltopic->raccoons
  • +
  • animaltopic->crafting
  • +
  • animaltopic->night walks
  • +
  • animaltopic->trash
  • +
  • animaltopic->garbage
  • +
  • animaltopic->whiskers
  • +
  • animaltopic->striped tails
  • +
  • animaltopic->cleaning
  • +
  • animaltopic->something to chew on
  • +
  • animaltopic->gnawing habits
  • +
  • animaltopic->trees
  • +
  • animaltopic->leftovers
  • +
  • animaltopic->kibble
  • +
  • animaltopic->head pats
  • +
  • animaltopic->back pets
  • +
    +
    + PMInteractionWeights_Raccoon +
    + + + + PawnmorphChitter + +
  • + + 0.66 +
  • +
    +
    + + + + + PMChitter_DeepTalk + + Things/Mote/SpeechSymbols/Chitter_DeepTalk + PMChitter_DeepTalkMemory + PMChitter_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming a raccoon morph
  • +
  • animallife->being a raccoon morph
  • +
  • animallife->raccoon hands
  • +
  • animallife->raccoons
  • +
  • animallife->chittering
  • +
  • animallife->tree climbing
  • +
  • animallife->small morphs
  • +
  • animallife->leftovers
  • +
  • animallife->food cleaning
  • +
  • animallife->tail pets
  • +
  • animallife->striped tails
  • +
  • animallife->the tastiest leftovers
  • +
  • animallife->scavenging
  • +
  • animallife->hiding
  • +
  • animallife->crafting
  • +
  • animallife->colorblindness
  • +
  • animallife->night vision
  • +
    +
    + PMInteractionWeights_Raccoon +
    + + + PMChitter_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMChitter_DeepTalkRaccoon + + Things/Mote/SpeechSymbols/Chitter_DeepTalk + PMChitter_DeepTalkRaccoonMemory + PMChitter_DeepTalkRaccoonMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming a raccoonmorph
  • +
  • animallife->being a raccoonmorph
  • +
  • animallife->raccoon hands
  • +
  • animallife->raccoons
  • +
  • animallife->chittering
  • +
  • animallife->tree climbing
  • +
  • animallife->small morphs
  • +
  • animallife->leftovers
  • +
  • animallife->food cleaning
  • +
  • animallife->tail pets
  • +
  • animallife->striped tails
  • +
  • animallife->the tastiest leftovers
  • +
  • animallife->scavenging
  • +
  • animallife->hiding
  • +
  • animallife->crafting
  • +
  • animallife->colorblindness
  • +
  • animallife->night vision
  • + +
  • secretanimallife->sneaking
  • +
  • secretanimallife->swiping food
  • +
  • secretanimallife->midnight walks
  • +
  • secretanimallife->garbage identification
  • +
  • secretanimallife->rabies prevention
  • +
  • secretanimallife->food washing techniques
  • +
  • secretanimallife->tree climbing techniques
  • +
  • secretanimallife->running on all fours
  • +
  • secretanimallife->dumpster diving
  • +
  • secretanimallife->fur care
  • +
  • secretanimallife->humane animal trapping
  • +
  • secretanimallife->the best smelling trash
  • +
  • secretanimallife->the best hiding spots
  • +
  • secretanimallife->stealing eggs from chookmorphs
  • +
  • secretanimallife->street smarts
  • +
  • secretanimallife->tail care
  • +
  • secretanimallife->burglary
  • +
  • secretanimallife->mercenary work
  • +
  • secretanimallife->protecting the galaxy
  • + +
  • raccoonbehavior->chirped understandingly at [RECIPIENT_nameDef]
  • +
  • raccoonbehavior->chittered with [RECIPIENT_nameDef]
  • +
  • raccoonbehavior->and [RECIPIENT_nameDef] shook hands and nuzzled
  • +
    +
    + PMInteractionWeights_Raccoon + PMInteractionWeights_Raccoon + 0.5 + true +
    + + + PMChitter_DeepTalkRaccoonMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMChitter_Slight + + Things/Mote/SpeechSymbols/Chitter_Slight + PMChitter_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->hissed at
  • +
  • noisedat->growled at
  • +
  • noisedat->growled aggressively at
  • +
  • noisedat->chittered annoyingly at
  • +
  • noisedat->chittered aggressively at
  • +
  • noisedat->bared fangs at
  • + +
  • noisedabout->growled about
  • +
  • noisedabout->chittered about
  • +
  • noisedabout->chittered unhappily about
  • +
  • noisedabout->growled because of
  • +
  • noisedabout->chittered because of
  • +
  • noisedabout->bared fangs because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->implication that [INITIATOR_objective] is dirty
  • +
  • animalcharacteristic->opinion on animal trapping
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] some leftovers
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_possessive] tail
  • + +
  • annoyingbehavior->brushed up against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->made a high pitched chitter at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->made [RECIPIENT_nameDef] feel uncomfortable by grabbing and feeling [RECIPIENT_possessive] hand
  • +
    +
    + PMInteractionWeights_Raccoon +
    + + + PMChitter_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMChitter_Insult + + Things/Mote/SpeechSymbols/Chitter_Insult + PMChitter_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->chittered that [Target] was
  • + +
  • noisedat->hissed at
  • +
  • noisedat->growled at
  • +
  • noisedat->growled aggressively at
  • +
  • noisedat->chittered annoyingly at
  • +
  • noisedat->chittered aggressively at
  • +
  • noisedat->bared fangs at
  • + +
  • noisedabout->growled about
  • +
  • noisedabout->chittered about
  • +
  • noisedabout->chittered unhappily about
  • +
  • noisedabout->growled because of
  • +
  • noisedabout->chittered because of
  • +
  • noisedabout->bared [INITIATOR_possessive] fangs because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->implication that [INITIATOR_objective] is dirty
  • +
  • animalcharacteristic->opinion on animal trapping
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] some leftovers
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_possessive] tail
  • +
  • animalcharacteristic->height
  • + +
  • insult->a dirty animal trap
  • +
  • insult->a wolf
  • +
  • insult->a lynx
  • +
  • insult->a strong spice
  • +
  • insult->an empty can
  • +
    +
    + PMInteractionWeights_Raccoon +
    + + + PMChitter_Insult + +
  • + + -15 +
  • +
    + PMChitter_InsultedMood +
    + + + PMChitter_InsultedMood + +
  • + + I've been rudely chittered at! What an awful raccoon! + -5 +
  • +
    +
    + + + + + PMChitter_KindWords + + Things/Mote/SpeechSymbols/Chitter_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMChitter_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->ruffed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->yipped that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->woofed that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->hands
  • +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->sheen
  • +
  • animalcharacteristic->appearance
  • +
  • animalcharacteristic->treats
  • + +
  • complimentedtargets->chittered happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->chittered approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wagged [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->chirped happily because of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] rubbed their hands
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] chittered at
  • +
  • kindbehavior->shook [INITIATOR_possessive] tail at
  • + +
  • raccooncompliment->a [adj] dumpster
  • +
  • raccooncompliment->a [adj] wildberry
  • +
  • raccooncompliment->a [adj] picnic
  • +
  • raccooncompliment->a [adj] striped tail
  • +
  • raccooncompliment->a [adj] leftover
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->tasty
  • +
  • adj->savory
  • +
    +
    + PMInteractionWeights_Raccoon +
    + + + PMChitter_KindWordsMemory + +
  • + + 15 +
  • +
    + PMChitter_KindWordsMood +
    + + + PMChitter_KindWordsMood + +
  • + + I've been complimented! What a nice raccoon! + 5 +
  • +
    +
    + + + + + PMChitter_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->short stature
  • +
  • animalcharacteristic->bad breath
  • +
  • animalcharacteristic->bandit mask
  • +
  • animalcharacteristic->twitchy nose
  • +
  • animalcharacteristic->ring tail
  • +
  • animalcharacteristic->conniving hands
  • +
  • animalcharacteristic->ratty appearance
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->twitchy mannerisms
  • + +
  • insultcomparison->a trash bandit
  • +
  • insultcomparison->a trash panda
  • +
  • insultcomparison->a garbage snatcher
  • +
  • insultcomparison->a fugitive
  • +
  • insultcomparison->a thief
  • +
  • insultcomparison->a pest
  • +
  • insultcomparison->a furry burglar
  • +
  • insultcomparison->a squeaky toy
  • +
  • insultcomparison->a fur cap
  • +
  • insultcomparison->a rocket
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->accused [RECIPIENT_nameDef] of stealing something
  • +
  • insult->called [RECIPIENT_nameDef] disgusting
  • +
  • insult->mockingly called [RECIPIENT_nameDef] cute
  • +
  • insult->pulled [RECIPIENT_nameDef] back by [RECIPIENT_possessive] tail
  • + +
  • insultingjoketopics->fugitives
  • +
  • insultingjoketopics->thieves
  • +
  • insultingjoketopics->dumpster diving
  • +
  • insultingjoketopics->feral raccoons
  • +
  • insultingjoketopics->rabies
  • +
    +
    + PMInteractionWeights_Raccoon +
    + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_CommonBleat.xml b/1.5/Defs/Interactions/AnimalNoises_CommonBleat.xml new file mode 100644 index 000000000..942bce571 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_CommonBleat.xml @@ -0,0 +1,563 @@ + + + + + PMInteractionWeights_Ungulate + +
  • EtherDeerSnout
  • +
  • EtherCaribouJaw
  • +
  • EtherGazelleJaw
  • +
    + + + +
  • + EtherDeerSnout + 0.5 +
  • +
  • + EtherCaribouJaw + 0.5 +
  • +
  • + EtherGazelleJaw + 0.5 +
  • + + +
  • + EtherDeerTail + 0.25 +
  • +
  • + EtherCaribouTail + 0.25 +
  • +
  • + EtherGazelleTail + 0.25 +
  • + + +
  • + EtherDeerEar + 0.125 +
  • +
  • + EtherCaribouEar + 0.125 +
  • +
  • + EtherGazelleEar + 0.125 +
  • + + +
  • + EtherAntlers + 0.125 +
  • +
  • + EtherCaribouAntlers + 0.125 +
  • +
  • + EtherGazelleAntlers + 0.125 +
  • +
    + +
  • + DeerMorph + 1 +
  • +
  • + GazelleMorph + 1 +
  • +
  • + CaribouMorph + 1 +
  • +
    +
    + + + + PMCommonBleat_Chitchat + + Things/Mote/SpeechSymbols/Ungulate + PawnmorphCommonBleat + PawnmorphCommonBleat + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [noisedat] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->bleated at
  • +
  • noisedat->bleated to
  • +
  • noisedat->bellowed at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->bleated at
  • +
  • noisedabout->bleated to
  • +
  • noisedabout->bellowed at
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->hooves
  • +
  • animaltopic->antlers
  • +
  • animaltopic->ungulates
  • +
  • animaltopic->climbing
  • +
  • animaltopic->headbutting
  • +
  • animaltopic->nature
  • +
  • animaltopic->forests
  • +
  • animaltopic->fields
  • +
  • animaltopic->grazing
  • +
  • animaltopic->grass
  • +
  • animaltopic->predators
  • +
  • animaltopic->trees
  • +
  • animaltopic->running
  • +
  • animaltopic->kibble
  • +
  • animaltopic->bucks
  • +
  • animaltopic->does
  • +
  • animaltopic->snout pets
  • +
  • animaltopic->rock salt
  • +
    +
    + PMInteractionWeights_Ungulate +
    + + + + PawnmorphCommonBleat + +
  • + + 0.66 +
  • +
    +
    + + + + + PMCommonBleat_DeepTalk + + Things/Mote/SpeechSymbols/Ungulate_DeepTalk + PMCommonBleat_DeepTalkMemory + PMCommonBleat_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming an ungulate morph
  • +
  • animallife->being an ungulate morph
  • +
  • animallife->hoof hands
  • +
  • animallife->ungulates
  • +
  • animallife->bleating
  • +
  • animallife->running
  • +
  • animallife->antlers
  • +
  • animallife->grass
  • +
  • animallife->grazing
  • +
  • animallife->snout pets
  • +
  • animallife->prancing
  • +
  • animallife->leaves
  • +
  • animallife->foraging
  • +
  • animallife->sprinting
  • +
  • animallife->vegetarianism
  • +
  • animallife->pacifism
  • +
  • animallife->wide peripheral vision
  • +
    +
    + PMInteractionWeights_Ungulate +
    + + + PMCommonBleat_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMCommonBleat_DeepTalkUngulate + + Things/Mote/SpeechSymbols/Ungulate_DeepTalk + PMCommonBleat_DeepTalkUngulateMemory + PMCommonBleat_DeepTalkUngulateMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming ungulate morphs
  • +
  • animallife->being ungulate morphs
  • +
  • animallife->hoof hands
  • +
  • animallife->ungulates
  • +
  • animallife->bleating
  • +
  • animallife->running
  • +
  • animallife->grass
  • +
  • animallife->grazing
  • +
  • animallife->snout pets
  • +
  • animallife->prancing
  • +
  • animallife->leaves
  • +
  • animallife->foraging
  • +
  • animallife->sprinting
  • +
  • animallife->vegetarianism
  • +
  • animallife->pacifism
  • +
  • animallife->wide peripheral vision
  • +
  • animallife->antlers
  • + +
  • secretanimallife->running away from predators
  • +
  • secretanimallife->herding
  • +
  • secretanimallife->headbutting
  • +
  • secretanimallife->identifying predators
  • +
  • secretanimallife->avoiding ticks
  • +
  • secretanimallife->freedom
  • +
  • secretanimallife->brushing techniques
  • +
  • secretanimallife->antler polishing
  • +
  • secretanimallife->antler shedding
  • +
  • secretanimallife->fur care
  • +
  • secretanimallife->the ethics of hunting
  • +
  • secretanimallife->smelling predators
  • +
  • secretanimallife->sprinting techniques
  • +
  • secretanimallife->avoiding [predators]
  • +
  • secretanimallife->survival skills
  • +
  • secretanimallife->accidentally bumping antlers into things
  • +
  • secretanimallife->animal friends
  • +
  • secretanimallife->forming an anti-predator coalition
  • +
  • secretanimallife->picking up psychic transmissions via antlers
  • + +
  • predators(p=10)->[predanimals]
  • +
  • predators->[predmorphs]
  • + +
  • predanimals->lions
  • +
  • predanimals->tigers
  • +
  • predanimals->wolves
  • +
  • predanimals->panthers
  • +
  • predanimals->cougers
  • +
  • predanimals->bears
  • +
  • predanimals->wargs
  • + +
  • predmorphs->humans
  • +
  • predmorphs->wolfmorphs
  • +
  • predmorphs->panthermorphs
  • +
  • predmorphs->cougermorphs
  • +
  • predmorphs->bearmorphs
  • +
  • predmorphs->wargmorphs
  • + +
  • ungulatebehavior->bleated understandingly at [RECIPIENT_nameDef]
  • +
  • ungulatebehavior->bleated with [RECIPIENT_nameDef]
  • +
  • ungulatebehavior->and [RECIPIENT_nameDef] bumped heads and nuzzled
  • +
    +
    + PMInteractionWeights_Ungulate + PMInteractionWeights_Ungulate + 0.5 + true +
    + + + PMCommonBleat_DeepTalkUngulateMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMCommonBleat_Slight + + Things/Mote/SpeechSymbols/Ungulate_Slight + PMCommonBleat_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->moaned at
  • +
  • noisedat->bellowed at
  • +
  • noisedat->bellowed aggressively at
  • +
  • noisedat->bleated annoyingly at
  • +
  • noisedat->bleated aggressively at
  • +
  • noisedat->feinted a headbutt at
  • + +
  • noisedabout->bellowed about
  • +
  • noisedabout->bleated about
  • +
  • noisedabout->bleated unhappily about
  • +
  • noisedabout->bellowed because of
  • +
  • noisedabout->bleated because of
  • +
  • noisedabout->feinted a headbutt because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->mention of hunting
  • +
  • animalcharacteristic->opinion on trophy hunting
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] kibble
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_possessive] snout
  • + +
  • annoyingbehavior->brushed up against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->made a loud bleat at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->bumped [INITIATOR_possessive] head into [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Ungulate +
    + + + PMCommonBleat_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMCommonBleat_Insult + + Things/Mote/SpeechSymbols/Ungulate_Insult + PMCommonBleat_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->bleated that [Target] was
  • + +
  • noisedat->moaned at
  • +
  • noisedat->bellowed at
  • +
  • noisedat->bellowed aggressively at
  • +
  • noisedat->bleated annoyingly at
  • +
  • noisedat->bleated aggressively at
  • +
  • noisedat->feinted a headbutt at
  • + +
  • noisedabout->bellowed about
  • +
  • noisedabout->bleated about
  • +
  • noisedabout->bleated unhappily about
  • +
  • noisedabout->bellowed because of
  • +
  • noisedabout->bleated because of
  • +
  • noisedabout->feinted a headbutt because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->mention of hunting
  • +
  • animalcharacteristic->opinion on trophy hunting
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] kibble
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_possessive] snout
  • + +
  • insult->a lion
  • +
  • insult->a wolf
  • +
  • insult->a bear
  • +
  • insult->a trophy hunter
  • +
  • insult->a trucker
  • +
    +
    + PMInteractionWeights_Ungulate +
    + + + PMCommonBleat_Insult + +
  • + + -15 +
  • +
    + PMCommonBleat_InsultedMood +
    + + + PMCommonBleat_InsultedMood + +
  • + + I've been rudely bleated at! What an awful animal! + -5 +
  • +
    +
    + + + + + PMCommonBleat_KindWords + + Things/Mote/SpeechSymbols/Ungulate_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMCommonBleat_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->bleated that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->bellowed that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->calmness
  • +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->pacifism
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • + +
  • complimentedtargets->bleated happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->bleated approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wagged [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->bellowed happily because of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] bumped [INITIATOR_possessive] head at
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] bleated at
  • +
  • kindbehavior->shook [INITIATOR_possessive] tail at
  • + +
  • ungulatecompliment->a [adj] field
  • +
  • ungulatecompliment->a [adj] meadow
  • +
  • ungulatecompliment->a [adj] forest
  • +
  • ungulatecompliment->a [adj] tree
  • +
  • ungulatecompliment->[adj] antlers
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->friendly
  • +
  • adj->peaceful
  • +
    +
    + PMInteractionWeights_Ungulate +
    + + + PMCommonBleat_KindWordsMemory + +
  • + + 15 +
  • +
    + PMCommonBleat_KindWordsMood +
    + + + PMCommonBleat_KindWordsMood + +
  • + + I've been complimented! What a nice animal! + 5 +
  • +
    +
    + + + + + PMCommonBleat_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->antlers
  • +
  • animalcharacteristic->bad breath
  • +
  • animalcharacteristic->blank stare
  • +
  • animalcharacteristic->hooves
  • +
  • animalcharacteristic->ears
  • +
  • animalcharacteristic->smell
  • +
  • animalcharacteristic->cowardly mannerisms
  • + +
  • insultcomparison->a prey
  • +
  • insultcomparison->a trophy
  • +
  • insultcomparison->a paper shredder
  • +
  • insultcomparison->a future duster
  • +
  • insultcomparison->a hippie
  • +
  • insultcomparison->a wild animal
  • +
  • insultcomparison->a salt licker
  • +
  • insultcomparison->a dumb animal
  • +
  • insultcomparison->a nature reserve
  • +
  • insultcomparison->a tick feeder
  • +
  • insultcomparison->venison
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->accused [RECIPIENT_nameDef] of eating a document
  • +
  • insult->said [RECIPIENT_nameDef] belongs outside
  • +
  • insult->said [RECIPIENT_nameDef] is not worth a buck
  • +
  • insult->mimicked antlers with [INITIATOR_possessive] hands at [RECIPIENT_nameDef]
  • + +
  • insultingjoketopics->a deer in headlights
  • +
  • insultingjoketopics->hunting season
  • +
  • insultingjoketopics->antlers getting stuck together
  • +
  • insultingjoketopics->lions chasing prey
  • +
  • insultingjoketopics->trophy hunting
  • +
  • insultingjoketopics->animals frolicking
  • +
  • insultingjoketopics->antler sawing
  • +
  • insultingjoketopics->deer in rut
  • +
    +
    + PMInteractionWeights_Ungulate +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_GoatBleat.xml b/1.5/Defs/Interactions/AnimalNoises_GoatBleat.xml new file mode 100644 index 000000000..5fec7f5e5 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_GoatBleat.xml @@ -0,0 +1,515 @@ + + + + + PMInteractionWeights_Goat + +
  • EtherGoatSnout
  • + +
    + + + +
  • + EtherGoatSnout + 0.5 +
  • + + +
  • + EtherGoatTail + 0.25 +
  • + + +
  • + EtherGoatEar + 0.125 +
  • + + +
  • + EtherGoatHorns + 0.125 +
  • +
    + +
  • + GoatMorph + 1 +
  • +
    +
    + + + + PMGoatBleat_Chitchat + + Things/Mote/SpeechSymbols/Goat + PawnmorphGoatBleat + PawnmorphGoatBleat + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [noisedat] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->bleated at
  • +
  • noisedat->bleated to
  • +
  • noisedat->baaed at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->bleated about
  • +
  • noisedabout->baaed about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->hooves
  • +
  • animaltopic->horns
  • +
  • animaltopic->goats
  • +
  • animaltopic->does
  • +
  • animaltopic->bucks
  • +
  • animaltopic->billies
  • +
  • animaltopic->climbing
  • +
  • animaltopic->headbutting
  • +
  • animaltopic->nature
  • +
  • animaltopic->mountains
  • +
  • animaltopic->fields
  • +
  • animaltopic->grazing
  • +
  • animaltopic->grass
  • +
  • animaltopic->predators
  • +
  • animaltopic->screams
  • +
  • animaltopic->jumping
  • +
  • animaltopic->kibble
  • +
  • animaltopic->snout pets
  • +
  • animaltopic->back pets
  • +
    +
    + PMInteractionWeights_Goat +
    + + + + PawnmorphGoatBleat + +
  • + + 0.66 +
  • +
    +
    + + + + + PMGoatBleat_DeepTalk + + Things/Mote/SpeechSymbols/Goat_DeepTalk + PMGoatBleat_DeepTalkMemory + PMGoatBleat_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming a goat morph
  • +
  • animallife->being a goat morph
  • +
  • animallife->hoof hands
  • +
  • animallife->goats
  • +
  • animallife->bleating
  • +
  • animallife->running
  • +
  • animallife->horns
  • +
  • animallife->grass
  • +
  • animallife->grazing
  • +
  • animallife->mountain climbing
  • +
  • animallife->snout pets
  • +
  • animallife->jumping
  • +
  • animallife->leaves
  • +
  • animallife->foraging
  • +
  • animallife->sprinting
  • +
  • animallife->vegetarianism
  • +
  • animallife->jumping
  • +
  • animallife->wide peripheral vision
  • +
  • animallife->horns
  • +
    +
    + PMInteractionWeights_Goat +
    + + + PMGoatBleat_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMGoatBleat_DeepTalkUngulate + + Things/Mote/SpeechSymbols/Goat_DeepTalk + PMGoatBleat_DeepTalkUngulateMemory + PMGoatBleat_DeepTalkUngulateMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming goat morphs
  • +
  • animallife->being goat morphs
  • +
  • animallife->hoof hands
  • +
  • animallife->goats
  • +
  • animallife->bleating
  • +
  • animallife->running
  • +
  • animallife->horns
  • +
  • animallife->grass
  • +
  • animallife->grazing
  • +
  • animallife->mountain climbing
  • +
  • animallife->snout pets
  • +
  • animallife->jumping
  • +
  • animallife->leaves
  • +
  • animallife->foraging
  • +
  • animallife->sprinting
  • +
  • animallife->vegetarianism
  • +
  • animallife->jumping
  • +
  • animallife->wide peripheral vision
  • +
  • animallife->horns
  • + +
  • secretanimallife->running away from predators
  • +
  • secretanimallife->herding
  • +
  • secretanimallife->headbutting
  • +
  • secretanimallife->identifying predators
  • +
  • secretanimallife->screaming
  • +
  • secretanimallife->jumping
  • +
  • secretanimallife->brushing techniques
  • +
  • secretanimallife->horn polishing
  • +
  • secretanimallife->horn sharpening
  • +
  • secretanimallife->fur care
  • +
  • secretanimallife->free range pastures
  • +
  • secretanimallife->sprinting techniques
  • +
  • secretanimallife->jumping skills
  • +
  • secretanimallife->survival skills
  • +
  • secretanimallife->headbutting contests
  • +
  • secretanimallife->screaming contests
  • +
  • secretanimallife->eating paper waste
  • +
  • secretanimallife->climbing hills
  • +
  • secretanimallife->climbing cliffs
  • +
  • secretanimallife->goat towers
  • +
  • secretanimallife->stylish goatees
  • +
  • secretanimallife->unusually long tongues
  • +
  • secretanimallife->bugs in the reality simulation
  • + +
  • ungulatebehavior->bleated understandingly at [RECIPIENT_nameDef]
  • +
  • ungulatebehavior->bleated with [RECIPIENT_nameDef]
  • +
  • ungulatebehavior->and [RECIPIENT_nameDef] bumped heads and nuzzled
  • +
    +
    + PMInteractionWeights_Goat + PMInteractionWeights_Goat + 0.5 + true +
    + + + PMGoatBleat_DeepTalkUngulateMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMGoatBleat_Slight + + Things/Mote/SpeechSymbols/Goat_Slight + PMGoatBleat_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->baaed at
  • +
  • noisedat->screamed at
  • +
  • noisedat->screamed aggressively at
  • +
  • noisedat->bleated annoyingly at
  • +
  • noisedat->bleated aggressively at
  • +
  • noisedat->feinted a headbutt at
  • + +
  • noisedabout->screamed about
  • +
  • noisedabout->bleated about
  • +
  • noisedabout->bleated unhappily about
  • +
  • noisedabout->screamed because of
  • +
  • noisedabout->bleated because of
  • +
  • noisedabout->feinted a headbutt because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->favorite farm animal
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] kibble
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_objective]
  • + +
  • annoyingbehavior->brushed up against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->made a loud bleat at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->bumped [INITIATOR_possessive] head into [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Goat +
    + + + PMGoatBleat_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMGoatBleat_Insult + + Things/Mote/SpeechSymbols/Goat_Insult + PMGoatBleat_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->bleated that [Target] was
  • + +
  • noisedat->baaed at
  • +
  • noisedat->screamed at
  • +
  • noisedat->screamed aggressively at
  • +
  • noisedat->bleated annoyingly at
  • +
  • noisedat->bleated aggressively at
  • +
  • noisedat->feinted a headbutt at
  • + +
  • noisedabout->screamed about
  • +
  • noisedabout->bleated about
  • +
  • noisedabout->bleated unhappily about
  • +
  • noisedabout->screamed because of
  • +
  • noisedabout->bleated because of
  • +
  • noisedabout->feinted a headbutt because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->favorite farm animal
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] kibble
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_objective]
  • + +
  • insult->a lion
  • +
  • insult->a wolf
  • +
  • insult->a bear
  • +
  • insult->a trophy hunter
  • +
  • insult->a trucker
  • +
    +
    + PMInteractionWeights_Goat +
    + + + PMGoatBleat_Insult + +
  • + + -15 +
  • +
    + PMGoatBleat_InsultedMood +
    + + + PMGoatBleat_InsultedMood + +
  • + + I've been rudely bleated at! What an awful animal! + -5 +
  • +
    +
    + + + + + PMGoatBleat_KindWords + + Things/Mote/SpeechSymbols/Goat_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMGoatBleat_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->bleated that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->baaed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->screamed that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->calmness
  • +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->pacifism
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • + +
  • complimentedtargets->bleated happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->bleated approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wagged [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->screamed happily because of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] bumped [INITIATOR_possessive] head at
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] bleated at
  • +
  • kindbehavior->shook [INITIATOR_possessive] tail at
  • + +
  • ungulatecompliment->a [adj] field
  • +
  • ungulatecompliment->a [adj] cliff
  • +
  • ungulatecompliment->a [adj] pasture
  • +
  • ungulatecompliment->a [adj] hay field
  • +
  • ungulatecompliment->[adj] horns
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->friendly
  • +
  • adj->large
  • +
    +
    + PMInteractionWeights_Goat +
    + + + PMGoatBleat_KindWordsMemory + +
  • + + 15 +
  • +
    + PMGoatBleat_KindWordsMood +
    + + + PMGoatBleat_KindWordsMood + +
  • + + I've been complimented! What a nice animal! + 5 +
  • +
    +
    + + + + + PMGoatBleat_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->bad breath
  • +
  • animalcharacteristic->horns
  • +
  • animalcharacteristic->blank stare
  • +
  • animalcharacteristic->hooves
  • +
  • animalcharacteristic->tendancy to scream
  • +
  • animalcharacteristic->orney attitude
  • +
  • animalcharacteristic->ears
  • +
  • animalcharacteristic->smell
  • +
  • animalcharacteristic->goatee
  • +
  • animalcharacteristic->climbing skill
  • +
  • animalcharacteristic->cowardly mannerisms
  • +
  • animalcharacteristic->horizontal pupils
  • + +
  • insultcomparison->a screamer
  • +
  • insultcomparison->a hay processor
  • +
  • insultcomparison->a paper shredder
  • +
  • insultcomparison->a future sweater
  • +
  • insultcomparison->a hippie
  • +
  • insultcomparison->a garbage disposal
  • +
  • insultcomparison->a can opener
  • +
  • insultcomparison->a salt licker
  • +
  • insultcomparison->a dumb animal
  • +
  • insultcomparison->a hay muncher
  • +
  • insultcomparison->an angry sheep
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->accused [RECIPIENT_nameDef] of eating a document
  • +
  • insult->said [RECIPIENT_nameDef] is loud and annoying
  • +
  • insult->loudly clarified that [RECIPIENT_nameDef] is not the greatest of all time
  • +
  • insult->tried to sneak behind [RECIPIENT_nameDef] and scare [RECIPIENT_objective]
  • + +
  • insultingjoketopics->goats eating paper
  • +
  • insultingjoketopics->horns getting stuck together
  • +
  • insultingjoketopics->goats falling off cliffs
  • +
  • insultingjoketopics->scaring goats
  • +
  • insultingjoketopics->fainting goats
  • +
    +
    + PMInteractionWeights_Goat +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Hiss.xml b/1.5/Defs/Interactions/AnimalNoises_Hiss.xml new file mode 100644 index 000000000..18a626419 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Hiss.xml @@ -0,0 +1,543 @@ + + + + + PMInteractionWeights_Snake + +
  • EtherSnakeJaw
  • +
    + + + +
  • + EtherSnakeJaw + 0.25 +
  • + + +
  • + EtherReptileHandclaws + 0.125 +
  • + + +
  • + EtherSnakeHood + 0.125 +
  • + + +
  • + EtherSnakeTail + 0.5 +
  • +
    + +
  • + SnakeMorph + 1 +
  • +
    +
    + + + + + PMSnakeHiss_Chitchat + + Things/Mote/SpeechSymbols/SnakeHiss + PMSnakeHiss_ChitchatMemory + PMSnakeHiss_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->hissed at
  • +
  • noisedat->shook [INITIATOR_possessive] tail at
  • +
  • noisedat->hissed to
  • +
  • noisedat->flicked [INITIATOR_possessive] tongue at
  • +
  • noisedat->flicked [INITIATOR_possessive] tongue to
  • +
  • noisedat->slithered by
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->ssspoke about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->snakes
  • +
  • animaltopic->cobras
  • +
  • animaltopic->scales
  • +
  • animaltopic->mice
  • +
  • animaltopic->scavenging eggs
  • +
  • animaltopic->legs
  • +
  • animaltopic->snake tongues
  • +
  • animaltopic->slithering
  • +
  • animaltopic->combat mutations
  • +
  • animaltopic->venom
  • +
  • animaltopic->nagas
  • +
  • animaltopic->naga hands
  • +
  • animaltopic->long tails
  • +
  • animaltopic->strange scents
  • +
    +
    + PMInteractionWeights_Snake +
    + + + PMSnakeHiss_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMSnakeHiss_DeepTalk + + Things/Mote/SpeechSymbols/SnakeHiss_DeepTalk + PMSnakeHiss_DeepTalkMemory + PMSnakeHiss_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a naga
  • +
  • animallife->becoming a naga
  • +
  • animallife->shedding
  • +
  • animallife->slithering
  • +
  • animallife->coiling
  • +
  • animallife->mice
  • +
  • animallife->getting used to not having legs
  • +
  • animallife->naga hands
  • +
  • animallife->tongue flicking
  • +
  • animallife->hissing
  • +
  • animallife->venom
  • +
  • animallife->eating rodents
  • +
  • animallife->hunting instincts
  • +
  • animallife->claw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->interesting scents
  • +
  • animallife->better vision
  • +
  • animallife->broken claws
  • +
  • animallife->what a snake tail feels like
  • +
  • animallife->thermal senses
  • +
  • animallife->ultraviolet vision
  • +
    +
    + PMInteractionWeights_Snake +
    + + + PMSnakeHiss_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMSnakeHiss_DeepTalkSnake + + Things/Mote/SpeechSymbols/SnakeHiss_DeepTalk + PMSnakeHiss_DeepTalkSnakeMemory + PMSnakeHiss_DeepTalkSnakeMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being nagas
  • +
  • animallife->becoming nagas
  • +
  • animallife->shedding
  • +
  • animallife->slithering
  • +
  • animallife->coiling
  • +
  • animallife->mice
  • +
  • animallife->getting used to not having legs
  • +
  • animallife->naga hands
  • +
  • animallife->tongue flicking
  • +
  • animallife->hissing
  • +
  • animallife->venom
  • +
  • animallife->eating rodents
  • +
  • animallife->hunting instincts
  • +
  • animallife->claw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->interesting scents
  • +
  • animallife->better vision
  • +
  • animallife->broken claws
  • +
  • animallife->what a snake tail feels like
  • +
  • animallife->thermal senses
  • +
  • animallife->ultraviolet vision
  • + +
  • secretanimallife->basking spots
  • +
  • secretanimallife->slithering through tight spots
  • +
  • secretanimallife->stealing eggs
  • +
  • secretanimallife->not wearing pants
  • +
  • secretanimallife->venom spitting
  • +
  • secretanimallife->cobra hood cleaning
  • +
  • secretanimallife->hunting [prey]
  • +
  • secretanimallife->swallowing [prey] whole
  • +
  • secretanimallife->getting used to having fangs
  • +
  • secretanimallife->smelling with tongues
  • +
  • secretanimallife->practicing tail control
  • +
  • secretanimallife->nictitating membranes
  • +
  • secretanimallife->ambush hunting
  • +
  • secretanimallife->the serpent gods
  • +
  • secretanimallife->human sacrifice
  • + +
  • prey(p=10)->[preyanimal]
  • +
  • prey->[preymorph]
  • + +
  • preyanimal->mice
  • +
  • preyanimal->rats
  • +
  • preyanimal->rabbits
  • +
  • preyanimal->squirrels
  • +
  • preyanimal->chickens
  • + +
  • preymorph->ratmorphs
  • +
  • preymorph->rabbitmorphs
  • +
  • preymorph->squirrelmorphs
  • +
  • preymorph->chookmorphs
  • + +
  • snakebehavior->flicked tongues with [RECIPIENT_nameDef]
  • +
  • snakebehavior->and [RECIPIENT_nameDef] slithered against eachother
  • +
  • snakebehavior->and [RECIPIENT_nameDef] hissed softly at eachother
  • +
  • snakebehavior->shared nuzzles with [RECIPIENT_nameDef]
  • +
  • snakebehavior->and [RECIPIENT_nameDef] stared at eachother for a while
  • +
    +
    + PMInteractionWeights_Snake + PMInteractionWeights_Snake + 0.5 + true +
    + + + PMSnakeHiss_DeepTalkSnakeMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMSnakeHiss_Slight + + Things/Mote/SpeechSymbols/SnakeHiss_Slight + PMSnakeHiss_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->hissed at
  • +
  • noisedat->bared [INITIATOR_possessive] fangs at
  • +
  • noisedat->hissed aggressively at
  • +
  • noisedat->shook [INITIATOR_possessive] tail annoyingly at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->hissed angrily about
  • +
  • noisedabout->bared [INITIATOR_possessive] fangs because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a live mouse
  • +
  • animalcharacteristic->[Refusal] to help [INITIATOR_objective] shed
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] sense [RECIPIENT_objective] with [INITIATOR_possessive] tongue
  • + +
  • annoyingbehavior->tried to sense [RECIPIENT_nameDef] with [INITIATOR_possessive] tongue
  • +
  • annoyingbehavior->annoyingly slithered against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->annoyingly booped [INITIATOR_possessive] snout against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->spread [INITIATOR_possessive] hood threateningly at [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Snake +
    + + + PMSnakeHiss_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMSnakeHiss_Insult + + Things/Mote/SpeechSymbols/SnakeHiss_Insult + PMSnakeHiss_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->hissed that [Target] was
  • +
  • noisedtargetwas->sssaid that [Target] was
  • + +
  • characteristic->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • noisedat->hissed at
  • +
  • noisedat->spit at
  • +
  • noisedat->hissed and aggressively shook [INITIATOR_possessive] tail at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->hissed angrily about
  • +
  • noisedabout->spit angrily about
  • +
  • noisedabout->hissed and bared fangs at [RECIPIENT_nameDef] because of
  • +
  • noisedabout->hissed in [RECIPIENT_nameDef] face over
  • +
  • noisedabout->bared [INITIATOR_possessive] fangs over
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a live mouse
  • +
  • animalcharacteristic->[Refusal] to help [INITIATOR_objective] shed
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] sense [RECIPIENT_objective] with [INITIATOR_possessive] tongue
  • + +
  • insult->breakfast
  • +
  • insult->lunch
  • +
  • insult->dinner
  • +
  • insult->a warmblood
  • +
  • insult->a smoothskin
  • +
  • insult->a rat
  • +
  • insult->a mouse
  • +
  • insult->a chicken
  • +
  • insult->prey
  • +
    +
    + PMInteractionWeights_Snake +
    + + + PMSnakeHiss_Insult + +
  • + + -15 +
  • +
    + PMSnakeHiss_InsultedMood +
    + + + PMSnakeHiss_InsultedMood + +
  • + + I've been hissed at! What an awful snake! + -5 +
  • +
    +
    + + + + + PMSnakeHiss_KindWords + + Things/Mote/SpeechSymbols/SnakeHiss_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMSnakeHiss_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->hissed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->sssaid that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • +
  • animalcharacteristic->warmth
  • +
  • animalcharacteristic->tail petting technique
  • +
  • animalcharacteristic->combat skill
  • + +
  • complimented->hissed happily about [RECIPIENT_nameDef]'s
  • +
  • complimented->hissed approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimented->purred happily about [RECIPIENT_nameDef]'s
  • +
  • complimented->purred approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimented->swished [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimented->gave [RECIPIENT_nameDef] an approving look because of [RECIPIENT_possessive]
  • +
  • complimented->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • +
  • complimented->[KindAdverb] swayed back and forth because of [RECIPIENT_nameDef]'s
  • + +
  • kindbehavior->[KindAdverb] licked
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] hissed at
  • +
  • kindbehavior->swished [INITIATOR_possessive] tail at
  • + +
  • snakecompliment->a [adj] snake
  • +
  • snakecompliment->a [adj] rabbit
  • +
  • snakecompliment->a [adj] mouse
  • +
  • snakecompliment->a [adj] chicken
  • +
  • snakecompliment->a [adj] fighter
  • +
  • snakecompliment->a [adj] warm rock
  • +
  • snakecompliment->a [adj] heatlamp
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->tasty
  • +
  • adj->savory
  • +
  • adj->scrumptious
  • +
  • adj->delicious
  • +
    +
    + PMInteractionWeights_Snake +
    + + + PMSnakeHiss_KindWordsMemory + +
  • + + 15 +
  • +
    + PMSnakeHiss_KindWordsMood +
    + + + PMSnakeHiss_KindWordsMood + +
  • + + I've been given a kind hiss... I think. What a nice snake! + 5 +
  • +
    +
    + + + + + PMSnakeHiss_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->venom
  • +
  • animalcharacteristic->snake eyes
  • +
  • animalcharacteristic->creepy tail
  • +
  • animalcharacteristic->scary fangs
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->lack of legs
  • +
  • animalcharacteristic->frightening behavior
  • +
  • animalcharacteristic->slithery mannerisms
  • +
  • animalcharacteristic->eating habits
  • +
  • animalcharacteristic->lisp
  • +
  • animalcharacteristic->combat skill
  • +
  • animalcharacteristic->hunting skill
  • +
  • animalcharacteristic->skin shedding
  • + +
  • insultcomparison->an angry noodle
  • +
  • insultcomparison->a danger noodle
  • +
  • insultcomparison->a nope rope
  • +
  • insultcomparison->a toilet dweller
  • +
  • insultcomparison->a rat eater
  • +
  • insultcomparison->a venom spitter
  • +
  • insultcomparison->a lab monster
  • +
  • insultcomparison->a soulless supersoldier
  • +
  • insultcomparison->a killing machine
  • +
  • insultcomparison->a reptile exhibit
  • +
  • insultcomparison->a creep
  • +
  • insultcomparison->a horror
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] moves around creepily
  • +
  • insult->accused [RECIPIENT_nameDef] of being nothing but a super soldier
  • +
  • insult->called [RECIPIENT_nameDef] cold and unfeeling
  • +
  • insult->said [RECIPIENT_nameDef] keeps getting in the way
  • +
  • insult->accused [RECIPIENT_nameDef] of being inhumane
  • + +
  • insultingjoketopics->snakes swallowing food whole
  • +
  • insultingjoketopics->snakes being found in toilets
  • +
  • insultingjoketopics->improperly making an 's' sound
  • +
  • insultingjoketopics->not having legs
  • +
  • insultingjoketopics->snake pits
  • +
  • insultingjoketopics->naga soldiers
  • +
    +
    + PMInteractionWeights_Snake +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Meow.xml b/1.5/Defs/Interactions/AnimalNoises_Meow.xml new file mode 100644 index 000000000..f084030d1 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Meow.xml @@ -0,0 +1,611 @@ + + + + + PMInteractionWeights_Feline + +
  • EtherCatMuzzle
  • +
  • EtherCougarJaw
  • +
  • EtherLynxJaw
  • +
  • EtherPantherJaw
  • +
    + + + +
  • + EtherCatMuzzle + 0.5 +
  • +
  • + EtherCougarJaw + 0.5 +
  • +
  • + EtherLynxJaw + 0.5 +
  • +
  • + EtherPantherJaw + 0.5 +
  • + + +
  • + EtherCatEar + 0.125 +
  • +
  • + EtherCougarEar + 0.125 +
  • +
  • + EtherLynxEar + 0.125 +
  • +
  • + EtherPantherEar + 0.125 +
  • + + +
  • + EtherCatTail + 0.25 +
  • +
  • + EtherCougarTail + 0.25 +
  • +
  • + EtherLynxTail + 0.25 +
  • +
  • + EtherPantherTail + 0.25 +
  • +
    + +
  • + CatMorph + 1 +
  • +
  • + CougarMorph + 1 +
  • +
  • + LynxMorph + 1 +
  • +
  • + PantherMorph + 1 +
  • +
    +
    + + + + + PMMeow_Chitchat + + Things/Mote/SpeechSymbols/Meow + PawnmorphMeow + PawnmorphMeow + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + + +
  • noisedat(p=4)->meowed at
  • +
  • noisedat->mewed at
  • +
  • noisedat->purred to
  • +
  • noisedat->licked at
  • +
  • noisedat->yawned at
  • +
  • noisedat->meowed [advb] at
  • +
  • noisedat->sniffed
  • +
  • noisedat->flicked [INITIATOR_possessive] tail at
  • +
  • noisedat->did an UwU face to
  • + +
  • advb->happily
  • +
  • advb->protectively
  • +
  • advb->affectionately
  • +
  • advb->trustingly
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->meowed about
  • +
  • noisedabout->mewed about
  • +
  • noisedabout->purred about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->patting [INITIATOR_possessive] fur
  • +
  • animaltopic->cats
  • +
  • animaltopic->lions
  • +
  • animaltopic->mice
  • +
  • animaltopic->mouse traps
  • +
  • animaltopic->birds
  • +
  • animaltopic->cleaning [INITIATOR_possessive]self
  • +
  • animaltopic->a ban on belly rubs
  • +
  • animaltopic->laser pointers
  • +
  • animaltopic->bits of string
  • +
  • animaltopic->milk
  • +
  • animaltopic->napping in the sun
  • + +
    +
    + PMInteractionWeights_Feline +
    + + + PawnmorphMeow + +
  • + + 0.66 +
  • +
    +
    + + + + + PMMeow_DeepTalk + + Things/Mote/SpeechSymbols/Meow_DeepTalk + PMMeow_DeepTalkMemory + PMMeow_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a feline morph
  • +
  • animallife->becoming a feline morph
  • +
  • animallife->shedding
  • +
  • animallife->gentle petting
  • +
  • animallife->head bunting
  • +
  • animallife->chasing mice
  • +
  • animallife->watching birds
  • +
  • animallife->raw meat
  • +
  • animallife->hunting instincts
  • +
  • animallife->broken claws
  • +
  • animallife->claw sharpening
  • +
  • animallife->sensitive bellies
  • +
  • animallife->being indecisive about being inside or outside
  • +
  • animallife->sitting in high places
  • +
  • animallife->sleeping all the time
  • +
  • animallife->sitting in boxes
  • +
  • animallife->playing with your food
  • +
  • animallife->getting brushed
  • +
  • animallife->paw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->what a tail feels like
  • +
  • animallife->colorblindness
  • + +
    +
    + PMInteractionWeights_Feline +
    + + + PMMeow_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMMeow_DeepTalkFeline + + Things/Mote/SpeechSymbols/Meow_DeepTalk + PMMeow_DeepTalkFelineMemory + PMMeow_DeepTalkFelineMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being feline morphs
  • +
  • animallife->becoming feline morphs
  • +
  • animallife->shedding
  • +
  • animallife->gentle petting
  • +
  • animallife->head bunting
  • +
  • animallife->chasing mice
  • +
  • animallife->watching birds
  • +
  • animallife->raw meat
  • +
  • animallife->hunting instincts
  • +
  • animallife->broken claws
  • +
  • animallife->claw sharpening
  • +
  • animallife->sensitive bellies
  • +
  • animallife->being indecisive about being inside or outside
  • +
  • animallife->sitting in high places
  • +
  • animallife->sleeping all the time
  • +
  • animallife->sitting in boxes
  • +
  • animallife->playing with your food
  • +
  • animallife->getting brushed
  • +
  • animallife->paw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->what a tail feels like
  • +
  • animallife->colorblindness
  • + +
  • secretanimallife->hairballs
  • +
  • secretanimallife->self-grooming
  • +
  • secretanimallife->catnip
  • +
  • secretanimallife->litterboxes
  • +
  • secretanimallife->annoying dogmorphs
  • +
  • secretanimallife->half-empty food bowls
  • +
  • secretanimallife->hunting [prey]
  • +
  • secretanimallife->pouncing on [prey]
  • +
  • secretanimallife->fits and sits
  • +
  • secretanimallife->knocking things over
  • +
  • secretanimallife->zoomies
  • +
  • secretanimallife->meowing at 3 AM
  • +
  • secretanimallife->intentionally getting in people's way
  • +
  • secretanimallife->intentionally baiting bellyrubs
  • +
  • secretanimallife->being fuzzy jerks
  • +
  • secretanimallife->enjoying murdering small animals
  • +
  • secretanimallife->secretly caring about others
  • +
  • secretanimallife->pretending not to like people
  • +
  • secretanimallife->sitting on the cat hater
  • + +
  • prey(p=10)->[preyanimal]
  • +
  • prey->[preymorph]
  • + +
  • preyanimal->bugs
  • +
  • preyanimal->mice
  • +
  • preyanimal->rats
  • +
  • preyanimal->rabbits
  • +
  • preyanimal->squirrels
  • +
  • preyanimal->birds
  • +
  • preyanimal->deer
  • +
  • preyanimal->ibex
  • +
  • preyanimal->elk
  • +
  • preyanimal->carabou
  • + +
  • preymorph->bugmorphs
  • +
  • preymorph->ratmorphs
  • +
  • preymorph->rabbitmorphs
  • +
  • preymorph->squirrelmorphs
  • +
  • preymorph->chookmorphs
  • +
  • preyanimal->deermorphs
  • +
  • preyanimal->ibexmorphs
  • +
  • preyanimal->caraboumorphs
  • + +
  • felinebehavior->exchanged sniffs with [RECIPIENT_nameDef]
  • +
  • felinebehavior->and [RECIPIENT_nameDef] gave each other mutual head bunts
  • +
  • felinebehavior->slow-blinked with [RECIPIENT_nameDef]
  • +
  • felinebehavior->and [RECIPIENT_nameDef] rubbed up against each other
  • +
    +
    + PMInteractionWeights_Feline + PMInteractionWeights_Feline + 0.5 + true +
    + + + PMMeow_DeepTalkFelineMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMMeow_Slight + + Things/Mote/SpeechSymbols/Meow_Slight + PMMeow_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->yowled at
  • +
  • noisedat->gave a warning meow to
  • +
  • noisedat->meowed [advb] at
  • +
  • noisedat->flicked [INITIATOR_possessive] tail with annoyance at
  • + +
  • advb->hungrily
  • +
  • advb->plaintively
  • +
  • advb->annoyingly
  • +
  • advb->loudly
  • +
  • advb->repeatedly
  • + +
  • noisedabout->yowled about
  • +
  • noisedabout->meowed unhappily about
  • +
  • noisedabout->had a long-winded meow session about
  • +
  • noisedabout->gave a warning meow over
  • +
  • noisedabout->flicked [INITIATOR_possessive] tail with annoyance over
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->getting too close
  • +
  • animalcharacteristic->uninvited bellyrubs
  • +
  • animalcharacteristic->[Refusal] to refill [INITIATOR_possessive] plate
  • +
  • animalcharacteristic->[Refusal] to pay attention to [INITIATOR_objective]
  • +
  • animalcharacteristic->[Refusal] to open the door for the [num] time
  • + +
  • num->third
  • +
  • num->fourth
  • +
  • num->fifth
  • +
  • num->sixth
  • + +
  • annoyingbehavior->repeatedly and annoyingly head bunted [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->rubbed up against [RECIPIENT_nameDef] while [RECIPIENT_pronoun] was walking
  • +
  • annoyingbehavior->sharpened [INITIATOR_possessive] claws on [RECIPIENT_nameDef]'s clothing
  • +
    +
    + PMInteractionWeights_Feline +
    + + + PMMeow_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMMeow_Insult + + Things/Mote/SpeechSymbols/Meow_Insult + PMMeow_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->meowed that [Target] was
  • +
  • noisedtargetwas->yowled that [Target] was
  • +
  • noisedtargetwas->hissed that [Target] was
  • + +
  • noisedat->hissed at
  • +
  • noisedat->hissed and swiped at
  • +
  • noisedat->tried to swipe
  • +
  • noisedat->gave a warning meow at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->meowed aggressively about
  • +
  • noisedabout->swiped at [RECIPIENT_nameDef] over
  • +
  • noisedabout->tried to claw [RECIPIENT_nameDef] over
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->getting too close
  • +
  • animalcharacteristic->uninvited bellyrubs
  • +
  • animalcharacteristic->[Refusal] to refill [INITIATOR_possessive] plate
  • +
  • animalcharacteristic->[Refusal] to pay attention to [INITIATOR_objective]
  • +
  • animalcharacteristic->[Refusal] to open the door for the [num] time
  • + +
  • num->third
  • +
  • num->fourth
  • +
  • num->fifth
  • +
  • num->sixth
  • + +
  • insult->a [maybeadj] dog
  • +
  • insult->a [maybeadj] vacuum cleaner
  • +
  • insult->a [maybeadj] spray bottle
  • +
  • insult->a [maybeadj] chronic bellyrubber
  • +
  • insult->a [maybeadj] scratching post
  • +
  • insult->a [maybeadj] litterbox
  • +
  • insult->a [maybeadj] cucumber
  • + +
  • maybeadj(p=3)->
  • +
  • maybeadj->[adj]
  • + +
  • adj->stinking
  • +
  • adj->smelly
  • +
  • adj->annoying
  • +
  • adj->stupid
  • +
  • adj->ugly
  • +
  • adj->noisy
  • +
  • adj->damn
  • +
    +
    + PMInteractionWeights_Feline +
    + + + PMMeow_Insult + +
  • + + -15 +
  • +
    + PMMeow_InsultedMood +
    + + + PMMeow_InsultedMood + +
  • + + I've been hissed at! What an awful feline! + -5 +
  • +
    +
    + + + + + PMMeow_KindWords + + Things/Mote/SpeechSymbols/Meow_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMMeow_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->meowed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->mewed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->purred that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->respect for boundaries
  • +
  • animalcharacteristic->resisting the temptation to give belly rubs
  • +
  • animalcharacteristic->slow-blink technique
  • +
  • animalcharacteristic->punctual food delivery
  • + +
  • complimentedtargets->meowed [KindAdverb] about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->mewed [KindAdverb] of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->purred about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->[KindAdverb] head bunted [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] purred
  • +
  • kindbehavior->[KindAdverb] meowed
  • +
  • kindbehavior->[KindAdverb] head bunted
  • +
  • kindbehavior->[KindAdverb] rubbed against
  • + +
  • compliment(p=3)->a [complimentsubj]
  • +
  • compliment->a [KindAdj] [complimentsubj]
  • + +
  • complimentsubj->mouse
  • +
  • complimentsubj->feather toy
  • +
  • complimentsubj->milk saucer
  • +
  • complimentsubj->foodbringer
  • +
    +
    + PMInteractionWeights_Feline +
    + + + PMMeow_KindWordsMemory + +
  • + + 15 +
  • +
    + PMMeow_KindWordsMood +
    + + + PMMeow_KindWordsMood + +
  • + + I've been given a kind purr! What a nice feline! + 5 +
  • +
    +
    + + + + + PMMeow_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->shedding
  • +
  • animalcharacteristic->aloofness
  • +
  • animalcharacteristic->hairballs
  • +
  • animalcharacteristic->preference for hunting small animals
  • +
  • animalcharacteristic->tendency to play with [RECIPIENT_possessive] food
  • +
  • animalcharacteristic->incessent meowing
  • +
  • animalcharacteristic->claw-sharpening habit
  • +
  • animalcharacteristic->gross eating habits
  • +
  • animalcharacteristic->tendency to lick [RECIPIENT_objective]self
  • + +
  • insultcomparison->a furry psycopath
  • +
  • insultcomparison->a murder machine
  • +
  • insultcomparison->a bird-killer
  • +
  • insultcomparison->a barn cat
  • +
  • insultcomparison->a lazy bum
  • +
  • insultcomparison->a bear trap
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->told [RECIPIENT_nameDef] to sharpen [RECIPIENT_possessive] claws somewhere else
  • +
  • insult->mockingly asked if [RECIPIENT_nameDef] is litterbox trained
  • +
  • insult->threatened [RECIPIENT_nameDef] with a spray bottle
  • +
  • insult->mockingly called [RECIPIENT_nameDef] a bad dog
  • + +
  • insultingjoketopics->litterboxes
  • +
  • insultingjoketopics->cats and dogs
  • +
  • insultingjoketopics->laser pointers
  • +
  • insultingjoketopics->cats knocking thing over
  • +
  • insultingjoketopics->cardboard boxes
  • +
  • insultingjoketopics->chasing mice
  • +
  • insultingjoketopics->the absence of songbirds
  • +
  • insultingjoketopics->cheezburgers
  • +
    +
    + PMInteractionWeights_Feline +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Moo.xml b/1.5/Defs/Interactions/AnimalNoises_Moo.xml new file mode 100644 index 000000000..3431c09eb --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Moo.xml @@ -0,0 +1,499 @@ + + + + + PMInteractionWeights_Cow + +
  • EtherCowSnout
  • +
    + + + +
  • + EtherCowSnout + 0.5 +
  • + + +
  • + EtherCowTail + 0.25 +
  • + + +
  • + EtherCowEar + 0.125 +
  • + + +
  • + EtherUdder + 0.5 +
  • +
    + +
  • + CowMorph + 1 +
  • +
    +
    + + + + PMMoo_Chitchat + + Things/Mote/SpeechSymbols/Moo + PawnmorphMoo + PawnmorphMoo + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->mooed at
  • +
  • noisedat->whined at
  • +
  • noisedat->snorted at
  • +
  • noisedat->twitched [INITIATOR_possessive] tail at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->mooed about
  • +
  • noisedabout->whined about
  • +
  • noisedabout->snorted about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->brushing [INITIATOR_possessive] back
  • +
  • animaltopic->cows
  • +
  • animaltopic->milk
  • +
  • animaltopic->hooves
  • +
  • animaltopic->oats
  • +
  • animaltopic->herds
  • +
  • animaltopic->horns
  • +
  • animaltopic->stables
  • +
  • animaltopic->hay
  • +
  • animaltopic->snout pats
  • +
  • animaltopic->eating grass
  • +
  • animaltopic->chewing cud
  • +
  • animaltopic->dairy farms
  • +
  • animaltopic->factory farming
  • +
  • animaltopic->cow rights
  • +
  • animaltopic->almond milk
  • +
  • animaltopic->cannibalism
  • +
  • animaltopic->whether [RECIPIENT_pronoun] eats steak
  • +
    +
    + PMInteractionWeights_Cow +
    + + + PawnmorphMoo + +
  • + + 0.66 +
  • +
    +
    + + + + + PMMoo_DeepTalk + + Things/Mote/SpeechSymbols/Moo_DeepTalk + PMMoo_DeepTalkMemory + PMMoo_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming a cowmorph
  • +
  • animallife->being a cowmorph
  • +
  • animallife->having hooves
  • +
  • animallife->being brushed
  • +
  • animallife->head pats
  • +
  • animallife->milk
  • +
  • animallife->hay
  • +
  • animallife->trotting
  • +
  • animallife->cow brushes
  • +
  • animallife->scratches
  • +
  • animallife->hoof care
  • +
  • animallife->grass flavors
  • +
  • animallife->horn polishing
  • +
  • animallife->the evils of cow tipping
  • +
  • animallife->hauling
  • +
  • animallife->milking gloves
  • +
  • animallife->grass
  • +
  • animallife->carrots
  • +
  • animallife->cow rights
  • +
  • animallife->whether eating cowmorph meat is cannibalism
  • +
  • animallife->living with hooves
  • +
  • animallife->peripheral vision
  • +
    +
    + PMInteractionWeights_Cow +
    + + + PMMoo_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMMoo_DeepTalkCow + + Things/Mote/SpeechSymbols/Moo_DeepTalk + PMMoo_DeepTalkCowMemory + PMMoo_DeepTalkCowMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming a cowmorph
  • +
  • animallife->being a cowmorph
  • +
  • animallife->having hooves
  • +
  • animallife->being brushed
  • +
  • animallife->head pats
  • +
  • animallife->milk
  • +
  • animallife->hay
  • +
  • animallife->trotting
  • +
  • animallife->cow brushes
  • +
  • animallife->scratches
  • +
  • animallife->hoof care
  • +
  • animallife->grass flavors
  • +
  • animallife->horn polishing
  • +
  • animallife->the evils of cow tipping
  • +
  • animallife->hauling
  • +
  • animallife->milking gloves
  • +
  • animallife->grass
  • +
  • animallife->carrots
  • +
  • animallife->cow rights
  • +
  • animallife->whether eating cowmorph meat is cannibalism
  • +
  • animallife->living with hooves
  • +
  • animallife->peripheral vision
  • + +
  • secretanimallife->mooing
  • +
  • secretanimallife->best resting spots
  • +
  • secretanimallife->milking techniques
  • +
  • secretanimallife->spotted fur
  • +
  • secretanimallife->being in a herd together
  • +
  • secretanimallife->sharing a stable
  • +
  • secretanimallife->gossip about chickens
  • +
  • secretanimallife->foraging
  • +
  • secretanimallife->fly swatting techniques
  • +
  • secretanimallife->cud chewing
  • +
  • secretanimallife->freedom
  • +
  • secretanimallife->bulls
  • +
  • secretanimallife->the best sun basking spots
  • +
  • secretanimallife->how steak actually tastes pretty good
  • + +
  • animalbehavior->snorted understandingly at [RECIPIENT_nameDef]
  • +
  • animalbehavior->mooed in unison with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave eachother a warming look
  • +
  • animalbehavior->hoof bumped with [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Cow + PMInteractionWeights_Cow + 0.5 + true +
    + + + PMMoo_DeepTalkCowMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMMoo_Slight + + Things/Mote/SpeechSymbols/Moo_Slight + PMMoo_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->mooed at
  • +
  • noisedat->whined at
  • +
  • noisedat->snorted aggressively at
  • +
  • noisedat->snorted annoyingly at
  • +
  • noisedat->mooed aggressively at
  • + +
  • noisedabout->mooed about
  • +
  • noisedabout->whined about
  • +
  • noisedabout->snorted unhappily about
  • +
  • noisedabout->snorted because of
  • +
  • noisedabout->mooed because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->milking gesture
  • +
  • animalcharacteristic->sudden movement
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a carrot
  • +
  • animalcharacteristic->[Refusal] to brush [INITIATOR_objective]
  • + +
  • annoyingbehavior->stomped dust on [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->mooed loudly in [RECIPIENT_nameDef] face
  • +
  • annoyingbehavior->flicked [INITIATOR_possessive] tail towards [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->regurgitated a wad of cud and began chewing it, grossing out [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Cow +
    + + + PMMoo_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMMoo_Insult + + Things/Mote/SpeechSymbols/Moo_Insult + PMMoo_InsultMemory + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->mooed that [Target] was
  • +
  • noisedtargetwas->neighed that [Target] was
  • +
  • noisedtargetwas->snorted that [Target] was
  • + +
  • noisedat->mooed at
  • +
  • noisedat->neighed at
  • +
  • noisedat->snorted aggressively at
  • +
  • noisedat->snorted annoyingly at
  • +
  • noisedat->neighed aggressively at
  • + +
  • noisedabout->mooed about
  • +
  • noisedabout->snorted about
  • +
  • noisedabout->mooed unhappily about
  • +
  • noisedabout->snorted because of
  • +
  • noisedabout->mooed because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->milking gesture
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a carrot
  • +
  • animalcharacteristic->[Refusal] to brush [INITIATOR_objective]
  • + +
  • insult->cud
  • +
  • insult->a calf
  • +
  • insult->spoiled milk
  • +
  • insult->a steer
  • +
  • insult->a bully
  • +
  • insult->a meat-eater
  • +
  • insult->a cowboy
  • +
    +
    + PMInteractionWeights_Cow +
    + + + PMMoo_InsultMemory + +
  • + + -15 +
  • +
    + PMMoo_InsultedMood +
    + + + PMMoo_InsultedMood + +
  • + + I've been insultingly mooed at! What an awful cow! + -5 +
  • +
    +
    + + + + + PMMoo_KindWords + + Things/Mote/SpeechSymbols/Moo_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMMoo_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->mooed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->neighed that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->animals skill
  • +
  • animalcharacteristic->milking technique
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->sugar cubes
  • +
  • animalcharacteristic->brushing technique
  • + +
  • complimentedtargets->mooed happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->mooed approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->swished [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nosed [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->sung a [KindAdj] moo
  • +
  • kindbehavior->[KindAdverb] nosed
  • +
  • kindbehavior->[KindAdverb] mooed at
  • +
  • kindbehavior->swished [INITIATOR_possessive] tail at
  • + +
  • cowcompliment->a [KindAdj] sugarcube
  • +
  • cowcompliment->[KindAdj] milk
  • +
  • cowcompliment->[KindAdj] cream
  • +
  • cowcompliment->a [KindAdj] brush
  • +
  • cowcompliment->a [KindAdj] mud puddle
  • +
    +
    + PMInteractionWeights_Cow +
    + + + PMMoo_KindWordsMemory + +
  • + + 15 +
  • +
    + PMMoo_KindWordsMood +
    + + + PMMoo_KindWordsMood + +
  • + + I've been complimented! What a nice cow! + 5 +
  • +
    +
    + + + + + PMMoo_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->fur
  • +
  • animalcharacteristic->horns
  • +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->milk quality
  • +
  • animalcharacteristic->kibble breath
  • +
  • animalcharacteristic->big head
  • +
  • animalcharacteristic->stench
  • +
  • animalcharacteristic->[refusal] to stop mooing
  • + +
  • insultcomparison->a hay muncher
  • +
  • insultcomparison->a steer
  • +
  • insultcomparison->a hoof head
  • +
  • insultcomparison->a heifer
  • +
  • insultcomparison->a one-[Man] dairy farm
  • +
  • insultcomparison->a milk courier
  • +
  • insultcomparison->a nutrient paste dispenser
  • +
  • insultcomparison->a hay processor
  • +
  • insultcomparison->a dairy mascot
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] stomps too much
  • +
  • insult->yelled at [RECIPIENT_nameDef] to stop mooing
  • +
  • insult->tried to sneak behind and push [RECIPIENT_nameDef] over
  • + +
  • insultingjoketopics->the size of cows
  • +
  • insultingjoketopics->steaks
  • +
  • insultingjoketopics->lactose intolerance
  • +
  • insultingjoketopics->an udder pun
  • +
  • insultingjoketopics->spherical cows
  • +
    +
    + PMInteractionWeights_Cow +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Oink.xml b/1.5/Defs/Interactions/AnimalNoises_Oink.xml new file mode 100644 index 000000000..dd8c7acd3 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Oink.xml @@ -0,0 +1,480 @@ + + + + + PMInteractionWeights_Suid + +
  • EtherBoarSnout
  • +
  • EtherPigSnout
  • +
    + + + +
  • + EtherBoarSnout + 0.5 +
  • +
  • + EtherPigSnout + 0.5 +
  • + + +
  • + EtherBoarTail + 0.25 +
  • +
  • + EtherPigTail + 0.25 +
  • + + +
  • + EtherBoarEar + 0.125 +
  • +
  • + EtherPigEar + 0.125 +
  • +
    + +
  • + BoarMorph + 1 +
  • +
  • + PigMorph + 1 +
  • +
    +
    + + + + PMOink_Chitchat + + Things/Mote/SpeechSymbols/Oink + PMOink_ChitchatMemory + PMOink_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->oinked at
  • +
  • noisedat->grunted at
  • +
  • noisedat->whined at
  • +
  • noisedat->squealed at
  • +
  • noisedat->snorted at
  • +
  • noisedat->twitched [INITIATOR_possessive] tail at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->oinked about
  • +
  • noisedabout->grunted about
  • +
  • noisedabout->snorted about
  • +
  • noisedabout->squealed about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->pigs
  • +
  • animaltopic->boars
  • +
  • animaltopic->hogs
  • +
  • animaltopic->mud
  • +
  • animaltopic->stables
  • +
  • animaltopic->vegetables
  • +
  • animaltopic->oats
  • +
  • animaltopic->mushrooms
  • +
  • animaltopic->bristles
  • +
  • animaltopic->tusks
  • +
  • animaltopic->trotters
  • +
  • animaltopic->weight loss
  • +
  • animaltopic->medical research
  • +
  • animaltopic->organ xenotransplantation
  • +
  • animaltopic->factory farming
  • +
  • animaltopic->pig rights
  • +
  • animaltopic->meat subtitutes
  • +
  • animaltopic->cannibalism
  • +
  • animaltopic->bacon
  • +
    +
    + PMInteractionWeights_Suid +
    + + + PMOink_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMOink_DeepTalk + + Things/Mote/SpeechSymbols/Oink_DeepTalk + PMOink_DeepTalkMemory + PMOink_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming a suidmorph
  • +
  • animallife->being a suidmorph
  • +
  • animallife->having trotters
  • +
  • animallife->being brushed
  • +
  • animallife->mudbaths
  • +
  • animallife->truffle hunting
  • +
  • animallife->trotting
  • +
  • animallife->bristle brushing
  • +
  • animallife->snout pats
  • +
  • animallife->trotter care
  • +
  • animallife->carrots
  • +
  • animallife->potatos
  • +
  • animallife->mushrooms
  • +
  • animallife->pig rights
  • +
  • animallife->whether eating pigmorph meat is cannibalism
  • +
  • animallife->living with trotters
  • +
  • animallife->peripheral vision
  • +
    +
    + PMInteractionWeights_Suid +
    + + + PMOink_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMOink_DeepTalkPig + + Things/Mote/SpeechSymbols/Oink_DeepTalk + PMOink_DeepTalkPigMemory + PMOink_DeepTalkPigMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming suidmorphs
  • +
  • animallife->being suidmorphs
  • +
  • animallife->having trotters
  • +
  • animallife->being brushed
  • +
  • animallife->mudbaths
  • +
  • animallife->truffle hunting
  • +
  • animallife->trotting
  • +
  • animallife->bristle brushing
  • +
  • animallife->snout pats
  • +
  • animallife->trotter care
  • +
  • animallife->carrots
  • +
  • animallife->potatos
  • +
  • animallife->mushrooms
  • +
  • animallife->pig rights
  • +
  • animallife->whether eating pigmorph meat is cannibalism
  • +
  • animallife->living with trotters
  • +
  • animallife->peripheral vision
  • + +
  • secretanimallife->oinking
  • +
  • secretanimallife->truffle hunting techniques
  • +
  • secretanimallife->bristle maintainance
  • +
  • secretanimallife->the uses of pig bristles
  • +
  • secretanimallife->rolling in mud
  • +
  • secretanimallife->weight loss techniques
  • +
  • secretanimallife->the merits and drawbacks of various construction materials
  • +
  • secretanimallife->house construction techniques
  • +
  • secretanimallife->how having four legs is good, but two legs are better
  • +
  • secretanimallife->how some morphs are more equal than others
  • +
  • secretanimallife->starting a revolution
  • +
  • secretanimallife->having a taste for pork
  • +
  • secretanimallife->having a taste for human flesh
  • + +
  • animalbehavior->snorted understandingly at [RECIPIENT_nameDef]
  • +
  • animalbehavior->oinked in unison with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave eachother a warming look
  • +
  • animalbehavior->hoof bumped with [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Suid + PMInteractionWeights_Suid + 0.5 + true +
    + + + PMOink_DeepTalkPigMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMOink_Slight + + Things/Mote/SpeechSymbols/Oink_Slight + PMOink_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->oinked at
  • +
  • noisedat->squealed at
  • +
  • noisedat->snorted aggressively at
  • +
  • noisedat->snorted annoyingly at
  • + +
  • noisedabout->oinked about
  • +
  • noisedabout->grunted about
  • +
  • noisedabout->squealed about
  • +
  • noisedabout->snorted unhappily about
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->sudden movement
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a carrot
  • +
  • animalcharacteristic->[Refusal] to brush [INITIATOR_objective]
  • + +
  • annoyingbehavior->shook off some dried mud that landed on [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->oinked loudly in [RECIPIENT_nameDef] face
  • +
    +
    + PMInteractionWeights_Suid +
    + + + PMOink_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMOink_Insult + + Things/Mote/SpeechSymbols/Oink_Insult + PMOink_InsultMemory + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->oinked that [Target] was
  • +
  • noisedtargetwas->squealed that [Target] was
  • +
  • noisedtargetwas->snorted that [Target] was
  • + +
  • noisedat->squealed aggressively at
  • +
  • noisedat->screached at
  • +
  • noisedat->screamed at
  • + +
  • noisedabout->oinked about
  • +
  • noisedabout->squealed about
  • +
  • noisedabout->screached about
  • +
  • noisedabout->squealed loudly because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->sudden movement
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a carrot
  • +
  • animalcharacteristic->[Refusal] to brush [INITIATOR_objective]
  • + +
  • insult->a hoghunter
  • +
  • insult->a sausage-eater
  • +
  • insult->long pork
  • +
  • insult->a wolf
  • +
  • insult->a cougar
  • +
  • insult->a bear
  • +
  • insult->a predator
  • +
    +
    + PMInteractionWeights_Suid +
    + + + PMOink_InsultMemory + +
  • + + -15 +
  • +
    + PMOink_InsultedMood +
    + + + PMOink_InsultedMood + +
  • + + I've been squealed at! What an awful pig! + -5 +
  • +
    +
    + + + + + PMOink_KindWords + + Things/Mote/SpeechSymbols/Oink_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMOink_KindWordsMemory + + +
  • r_logentry->[INITIATOR_nameDef] [complimented] [RECIPIENT_nameDef]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [adv] called [RECIPIENT_nameDef] a [pigcompliment].
  • + +
  • characteristic->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->brushing technique
  • +
  • animalcharacteristic->snout patting technique
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->sugar cubes
  • +
  • animalcharacteristic->brushing technique
  • + +
  • complimentedtargets->oinked happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->oinked approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wiggled [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nosed [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] nosed
  • +
  • kindbehavior->[KindAdverb] oinked at
  • +
  • kindbehavior->wiggled [INITIATOR_possessive] tail at
  • + +
  • pigcompliment->a [KindAdj] carrot
  • +
  • pigcompliment->a [KindAdj] potato
  • +
  • pigcompliment->a [KindAdj] truffle
  • +
  • pigcompliment->a [KindAdj] mud puddle
  • +
    +
    + PMInteractionWeights_Suid +
    + + + PMOink_KindWordsMemory + +
  • + + 15 +
  • +
    + PMOink_KindWordsMood +
    + + + PMOink_KindWordsMood + +
  • + + I've been complimented! What a nice pig! + 5 +
  • +
    +
    + + + + + PMOink_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->smell
  • +
  • animalcharacteristic->bristles
  • +
  • animalcharacteristic->nose
  • +
  • animalcharacteristic->floppy ears
  • +
  • animalcharacteristic->snout
  • +
  • animalcharacteristic->tiny tail
  • +
  • animalcharacteristic->weight
  • + +
  • insultcomparison->bacon
  • +
  • insultcomparison->sausage
  • +
  • insultcomparison->long pork
  • +
  • insultcomparison->a tub of lard
  • +
  • insultcomparison->a truffle-o-meter
  • +
  • insultcomparison->an organ doner
  • +
  • insultcomparison->a vegetable-to-meat factory
  • +
  • insultcomparison->a farm animal
  • +
  • insultcomparison->a slob
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->told [RECIPIENT_nameDef] to go roll in mud
  • +
  • insult->yelled at [RECIPIENT_nameDef] to stop squealing
  • + +
  • insultingjoketopics->30-50 feral hogs
  • +
  • insultingjoketopics->overweight people
  • +
  • insultingjoketopics->big bad wolfmorphs
  • +
    +
    + PMInteractionWeights_Suid +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Reptile.xml b/1.5/Defs/Interactions/AnimalNoises_Reptile.xml new file mode 100644 index 000000000..de603d2e6 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Reptile.xml @@ -0,0 +1,508 @@ + + + + + PMInteractionWeights_Reptile + +
  • EtherIguanaSnout
  • +
    + + + +
  • + EtherIguanaSnout + 0.5 +
  • + + +
  • + EtherReptileHandclaws + 0.125 +
  • + + +
  • + EtherIguanaHorns + 0.125 +
  • + + +
  • + EtherIguanaTail + 0.5 +
  • +
    + +
  • + IguanaMorph + 1 +
  • +
    +
    + + + + + PMReptileHiss_Chitchat + + Things/Mote/SpeechSymbols/ReptileHiss + PMReptileHiss_ChitchatMemory + PMReptileHiss_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->hissed at
  • +
  • noisedat->shook [INITIATOR_possessive] tail at
  • +
  • noisedat->hissed to
  • +
  • noisedat->opened [INITIATOR_possessive] mouth at
  • +
  • noisedat->shook [INITIATOR_possessive] tail to
  • +
  • noisedat->stared at
  • +
  • noisedat->talked about reptiles with
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->sssaid something about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->scales
  • +
  • animaltopic->lettuce
  • +
  • animaltopic->mealworms
  • +
  • animaltopic->scales
  • +
  • animaltopic->lizards
  • +
  • animaltopic->sun basking
  • +
  • animaltopic->claws
  • +
  • animaltopic->reptile teeth
  • +
  • animaltopic->iguanas
  • +
  • animaltopic->spines
  • +
  • animaltopic->strange scents
  • +
    +
    + PMInteractionWeights_Reptile +
    + + + PMReptileHiss_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMReptileHiss_DeepTalk + + Things/Mote/SpeechSymbols/ReptileHiss_DeepTalk + PMReptileHiss_DeepTalkMemory + PMReptileHiss_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being an iguana morph
  • +
  • animallife->becoming an iguana morph
  • +
  • animallife->shedding
  • +
  • animallife->sun basking
  • +
  • animallife->resting
  • +
  • animallife->mealworms
  • +
  • animallife->having scales
  • +
  • animallife->hissing
  • +
  • animallife->eating insects
  • +
  • animallife->eating lettuce
  • +
  • animallife->hunting instincts
  • +
  • animallife->claw maintenence
  • +
  • animallife->iguana spines
  • +
  • animallife->interesting scents
  • +
  • animallife->spines
  • +
  • animallife->broken claws
  • +
  • animallife->what having a tail feels like
  • +
    +
    + PMInteractionWeights_Reptile +
    + + + PMReptileHiss_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMReptileHiss_DeepTalkReptile + + Things/Mote/SpeechSymbols/ReptileHiss_DeepTalk + PMReptileHiss_DeepTalkReptileMemory + PMReptileHiss_DeepTalkReptileMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being iguana morphs
  • +
  • animallife->becoming iguana morphs
  • +
  • animallife->shedding
  • +
  • animallife->sun basking
  • +
  • animallife->resting
  • +
  • animallife->mealworms
  • +
  • animallife->having scales
  • +
  • animallife->hissing
  • +
  • animallife->eating insects
  • +
  • animallife->eating lettuce
  • +
  • animallife->hunting instincts
  • +
  • animallife->claw maintenence
  • +
  • animallife->iguana spines
  • +
  • animallife->interesting scents
  • +
  • animallife->spines
  • +
  • animallife->broken claws
  • +
  • animallife->what having a tail feels like
  • + +
  • secretanimallife->basking spots
  • +
  • secretanimallife->best insect flavors
  • +
  • secretanimallife->foraging
  • +
  • secretanimallife->cleaning scales
  • +
  • secretanimallife->spine sharpening
  • +
  • secretanimallife->communicating with body language
  • +
  • secretanimallife->finding [preyanimal]
  • +
  • secretanimallife->eating [preyanimal]
  • +
  • secretanimallife->getting used to lizard legs
  • +
  • secretanimallife->smelling with tongues
  • +
  • secretanimallife->practicing tail control
  • +
  • secretanimallife->nictitating membranes
  • +
  • secretanimallife->the dewlap
  • +
  • secretanimallife->ambush hunting
  • +
  • secretanimallife->superiority over the smoothskins
  • +
  • secretanimallife->ancient jungle temples
  • + +
  • preyanimal->mealworms
  • +
  • preyanimal->lettuce
  • +
  • preyanimal->fruit
  • +
  • preyanimal->vegetables
  • +
  • preyanimal->flowers
  • + +
  • animalbehavior->stared understandingly with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] briefly looked at eachother
  • +
  • animalbehavior->and [RECIPIENT_nameDef] slowly swished tails at eachother
  • +
  • animalbehavior->shared nuzzles with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] stared at eachother for a while
  • +
    +
    + PMInteractionWeights_Reptile + PMInteractionWeights_Reptile + 0.5 + true +
    + + + PMReptileHiss_DeepTalkReptileMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMReptileHiss_Slight + + Things/Mote/SpeechSymbols/ReptileHiss_Slight + PMReptileHiss_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->hissed at
  • +
  • noisedat->aggressively opened [INITIATOR_possessive] mouth at
  • +
  • noisedat->hissed aggressively at
  • +
  • noisedat->twitched [INITIATOR_possessive] tail annoyingly at
  • +
  • noisedat->flared [INITIATOR_possessive] dewlap at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->hissed angrily about
  • +
  • noisedabout->aggressively opened [INITIATOR_possessive] mouth because of
  • +
  • noisedabout->flared [INITIATOR_possessive] dewlap because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a mealworm
  • +
  • animalcharacteristic->[Refusal] to help [INITIATOR_objective] shed
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] stare at [RECIPIENT_objective]
  • + +
  • annoyingbehavior->stared annoyingly at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->looked at [RECIPIENT_nameDef] in a way [RECIPIENT_possessive] could not understand
  • +
  • annoyingbehavior->annoyingly booped [INITIATOR_possessive] snout against [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->licked [INITIATOR_possessive] eyeball, grossing out [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Reptile +
    + + + PMReptileHiss_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMReptileHiss_Insult + + Things/Mote/SpeechSymbols/ReptileHiss_Insult + PMReptileHiss_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->hissed that [Target] was
  • +
  • noisedtargetwas->sssaid that [Target] was
  • + +
  • noisedat->hissed at
  • +
  • noisedat->screeched at
  • +
  • noisedat->whipped [INITIATOR_possessive] tail at
  • +
  • noisedat->hissed and whipped [INITIATOR_possessive] tail at
  • +
  • noisedat->flared [INITIATOR_possessive] dewlap at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->hissed angrily about
  • +
  • noisedabout->hissed at [RECIPIENT_nameDef] because of
  • +
  • noisedabout->hissed in [RECIPIENT_nameDef] face over
  • +
  • noisedabout->whipped [INITIATOR_possessive] tail at
  • +
  • noisedabout->opened [INITIATOR_possessive] mouth aggressively over
  • +
  • noisedabout->flared [RECIPIENT_possessive] dewlap because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a mealworm
  • +
  • animalcharacteristic->[Refusal] to help [INITIATOR_objective] shed
  • + +
  • insult->a mammal
  • +
  • insult->a warmblood
  • +
  • insult->a smoothskin
  • +
  • insult->an insect
  • +
  • insult->a noisemaker
  • +
    +
    + PMInteractionWeights_Reptile +
    + + + PMReptileHiss_Insult + +
  • + + -15 +
  • +
    + PMReptileHiss_InsultedMood +
    + + + PMReptileHiss_InsultedMood + +
  • + + I've been hissed at! What an awful lizard! + -5 +
  • +
    +
    + + + + + PMReptileHiss_KindWords + + Things/Mote/SpeechSymbols/ReptileHiss_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMReptileHiss_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->hissed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->sssaid that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • +
  • animalcharacteristic->scale petting technique
  • +
  • animalcharacteristic->treats
  • + +
  • complimentedtargets->smiled happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->smiled approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->purred happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->swished [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->gave [RECIPIENT_nameDef] an approving look because of [RECIPIENT_possessive]
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] licked
  • +
  • kindbehavior->[KindAdverb] smiled at
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->swished [INITIATOR_possessive] tail at
  • + +
  • compliment->a [adj] mealworm
  • +
  • compliment->a [adj] strawberry
  • +
  • compliment->a [adj] cabbage
  • +
  • compliment->a [adj] leaf
  • +
  • compliment->a [adj] dandelion
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->tasty
  • +
  • adj->savory
  • +
    +
    + PMInteractionWeights_Reptile +
    + + + PMReptileHiss_KindWordsMemory + +
  • + + 15 +
  • +
    + PMReptileHiss_KindWordsMood +
    + + + PMReptileHiss_KindWordsMood + +
  • + + I've been given a kind smile! What a nice reptile! + 5 +
  • +
    +
    + + + + PMReptileHiss_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->scales
  • +
  • animalcharacteristic->beady eyes
  • +
  • animalcharacteristic->wrinkly-looking face
  • +
  • animalcharacteristic->creepy appearance
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->slow mannerisms
  • +
  • animalcharacteristic->strange staring habits
  • +
  • animalcharacteristic->eating habits
  • +
  • animalcharacteristic->skin shedding
  • +
  • animalcharacteristic->dewlap
  • + +
  • insultcomparison->an elder
  • +
  • insultcomparison->a dinosaur
  • +
  • insultcomparison->a worm eater
  • +
  • insultcomparison->a cold blooded freak
  • +
  • insultcomparison->a lab monster
  • +
  • insultcomparison->a lizard brain
  • +
  • insultcomparison->a reptile exhibit
  • +
  • insultcomparison->a creep
  • +
  • insultcomparison->a horror
  • +
  • insultcomparison->a designer bag
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] moves around creepily
  • +
  • insult->rudely called [RECIPIENT_nameDef] a scaled freak
  • +
  • insult->said [RECIPIENT_nameDef] looks creepy
  • + +
  • insultingjoketopics->asteroids and dinosaurs
  • +
  • insultingjoketopics->unevolved lizards
  • +
  • insultingjoketopics->lizards eating bugs
  • +
  • insultingjoketopics->cold blooded animals
  • +
  • insultingjoketopics->iguanas falling out of trees
  • +
  • insultingjoketopics->slow lizards
  • +
    +
    + PMInteractionWeights_Reptile +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Squawk.xml b/1.5/Defs/Interactions/AnimalNoises_Squawk.xml new file mode 100644 index 000000000..ec4a07f66 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Squawk.xml @@ -0,0 +1,574 @@ + + + + + PMInteractionWeights_Avian + +
  • EtherTurkeyBeak
  • +
  • EtherCassowaryBeak
  • +
  • EtherOstrichBeak
  • +
  • EtherEmuBeak
  • +
  • EtherGooseBeak
  • +
  • EtherDuckBeak
  • +
    + + + +
  • + EtherTurkeyBeak + 0.5 +
  • +
  • + EtherCassowaryBeak + 0.5 +
  • +
  • + EtherOstrichBeak + 0.5 +
  • +
  • + EtherEmuBeak + 0.5 +
  • +
  • + EtherGooseBeak + 0.5 +
  • +
  • + EtherDuckBeak + 0.5 +
  • + + +
  • + EtherGooseTailfeathers + 0.25 +
  • +
  • + EtherDuckTailfeathers + 0.25 +
  • +
  • + EtherCassowaryTailfeathers + 0.25 +
  • +
  • + EtherEmuTailfeathers + 0.25 +
  • +
  • + EtherOstrichTailfeathers + 0.25 +
  • +
  • + EtherTurkeyTailfeathers + 0.25 +
  • + + +
  • + EtherWing + 0.125 +
  • +
    + +
  • + CassowaryMorph + 1 +
  • +
  • + OstrichMorph + 1 +
  • +
  • + EmuMorph + 1 +
  • +
  • + DuckMorph + 1 +
  • +
  • + GooseMorph + 1 +
  • +
  • + TurkeyMorph + 1 +
  • +
    +
    + + + + PMSquawk_Chitchat + + Things/Mote/SpeechSymbols/Squawk + PMSquawk_ChitchatMemory + PMSquawk_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->bokked at
  • +
  • noisedat->clicked at
  • +
  • noisedat->squawked to
  • +
  • noisedat->chirped at
  • +
  • noisedat->quacked about
  • +
  • noisedat->gobbled about
  • +
  • noisedat->honked at
  • +
  • noisedat->turned [INITIATOR_possessive] head at
  • +
  • noisedat->shook [INITIATOR_possessive] tail at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->squawked about
  • +
  • noisedabout->chirped about
  • +
  • noisedabout->bokked about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->preening [INITIATOR_possessive] feathers
  • +
  • animaltopic->chickens
  • +
  • animaltopic->emus
  • +
  • animaltopic->cassowaries
  • +
  • animaltopic->ostriches
  • +
  • animaltopic->turkeys
  • +
  • animaltopic->ducks
  • +
  • animaltopic->geese
  • +
  • animaltopic->birds
  • +
  • animaltopic->flock formations
  • +
  • animaltopic->seeds
  • +
  • animaltopic->perches
  • +
  • animaltopic->roosting
  • +
  • animaltopic->coops
  • +
  • animaltopic->nesting
  • +
  • animaltopic->ants
  • +
  • animaltopic->shiny things
  • +
  • animaltopic->head scratches
  • + +
    +
    + PMInteractionWeights_Avian +
    + + + PMSquawk_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMSquawk_DeepTalk + + Things/Mote/SpeechSymbols/Squawk_DeepTalk + PMSquawk_DeepTalkMemory + PMSquawk_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a avian morph
  • +
  • animallife->becoming a avian morph
  • +
  • animallife->molting
  • +
  • animallife->head scratches
  • +
  • animallife->preening
  • +
  • animallife->beak polishing
  • +
  • animallife->talon care
  • +
  • animallife->roosting
  • +
  • animallife->singing
  • +
  • animallife->chasing things
  • +
  • animallife->squawking
  • +
  • animallife->stronger sight
  • +
  • animallife->nictitating membranes
  • +
  • animallife->tastiest seeds
  • +
  • animallife->manipulating with wings
  • +
  • animallife->flocking
  • +
  • animallife->head stabilization
  • +
  • animallife->hackle feather grooming
  • +
  • animallife->shiny things
  • +
  • animallife->broken talons
  • +
  • animallife->ultraviolet color
  • +
    +
    + PMInteractionWeights_Avian +
    + + + PMSquawk_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMSquawk_DeepTalkAvian + + Things/Mote/SpeechSymbols/Squawk_DeepTalk + PMSquawk_DeepTalkAvianMemory + PMSquawk_DeepTalkAvianMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being avian morphs
  • +
  • animallife->becoming avian morphs
  • +
  • animallife->molting
  • +
  • animallife->head scratches
  • +
  • animallife->preening
  • +
  • animallife->beak polishing
  • +
  • animallife->talon care
  • +
  • animallife->roosting
  • +
  • animallife->singing
  • +
  • animallife->chasing things
  • +
  • animallife->squawking
  • +
  • animallife->stronger sight
  • +
  • animallife->nictitating membranes
  • +
  • animallife->tastiest seeds
  • +
  • animallife->manipulating with wings
  • +
  • animallife->flocking
  • +
  • animallife->head stabilization
  • +
  • animallife->hackle feather grooming
  • +
  • animallife->shiny things
  • +
  • animallife->broken talons
  • +
  • animallife->ultraviolet color
  • + +
  • secretanimallife->squawking, quacking and honking
  • +
  • secretanimallife->bird anatomy
  • +
  • secretanimallife->keeping a clean nest
  • +
  • secretanimallife->the prettiest feather colors
  • +
  • secretanimallife->being in a flock together
  • +
  • secretanimallife->being birds of a feather
  • +
  • secretanimallife->foraging
  • +
  • secretanimallife->finding worms
  • +
  • secretanimallife->the pecking order
  • +
  • secretanimallife->anting
  • +
  • secretanimallife->nesting
  • +
  • secretanimallife->mating calls
  • +
  • secretanimallife->the best crowing spots
  • + +
  • birdbehavior->tapped beaks with [RECIPIENT_nameDef]
  • +
  • birdbehavior->bumped heads with [RECIPIENT_nameDef]
  • +
  • birdbehavior->and [RECIPIENT_nameDef] brushed against each other
  • +
  • birdbehavior->shook wings with [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Avian + PMInteractionWeights_Avian + 0.5 + true +
    + + + PMSquawk_DeepTalkAvianMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMSquawk_Slight + + Things/Mote/SpeechSymbols/Squawk_Slight + PMSquawk_SlightMemory + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->squawked at
  • +
  • noisedat->hissed at
  • +
  • noisedat->gobbled angrily at
  • +
  • noisedat->crowed aggressively at
  • +
  • noisedat->squawked annoyingly at
  • +
  • noisedat->honked aggressively at
  • + +
  • noisedabout->squawked about
  • +
  • noisedabout->chirped about
  • +
  • noisedabout->quacked unhappily about
  • +
  • noisedabout->hissed because of
  • +
  • noisedabout->honked because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->eye contact
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->cleanliness
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->[Refusal] to scratch [INITIATOR_objective] on the head
  • +
  • animalcharacteristic->[Refusal] to scratch [INITIATOR_possessive] wing
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] perch on [RECIPIENT_possessive] shoulder
  • + +
  • annoyingbehavior->tried to preen [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->squawked loudly in [RECIPIENT_nameDef] face
  • +
  • annoyingbehavior->preened a feather and tossed it on [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Avian +
    + + + + PMSquawk_SlightMemory + +
  • + + -5 +
  • +
    +
    + + + + + PMSquawk_Insult + + Things/Mote/SpeechSymbols/Squawk_Insult + PMSquawk_InsultMemory + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->squawked that [Target] was
  • +
  • noisedtargetwas->hissed that [Target] was
  • +
  • noisedtargetwas->honked that [Target] was
  • + +
  • noisedat->squawked at
  • +
  • noisedat->hissed at
  • +
  • noisedat->honked at
  • +
  • noisedat->crowed aggressively at
  • +
  • noisedat->squawked annoyingly at
  • + +
  • noisedabout->squawked about
  • +
  • noisedabout->chirped about
  • +
  • noisedabout->bokked unhappily about
  • +
  • noisedabout->hissed because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->eye contact
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->cleanliness
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->[Refusal] to scratch [INITIATOR_objective] on the head
  • +
  • animalcharacteristic->[Refusal] to scratch [INITIATOR_possessive] wing
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] ride [RECIPIENT_possessive] shoulder
  • +
  • animalcharacteristic->[Refusal] to compliment [INITIATOR_possessive] feathers
  • + +
  • insult->a loose twig
  • +
  • insult->a worm
  • +
  • insult->a late bird
  • +
  • insult->a feather duster
  • +
  • insult->a dinosaur
  • +
    +
    + PMInteractionWeights_Avian +
    + + + PMSquawk_InsultMemory + +
  • + + -15 +
  • +
    + PMSquawk_InsultedMood +
    + + + PMSquawk_InsultedMood + +
  • + + I've been squawked at! What an awful bird! + -5 +
  • +
    +
    + + + + + PMSquawk_KindWords + + Things/Mote/SpeechSymbols/Squawk_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMSquawk_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->chirpped that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->cawed that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->gobbled that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->hygeine
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->seeds
  • +
  • animalcharacteristic->head scratching technique
  • +
  • animalcharacteristic->fashion sense
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->shiny thing collection
  • + +
  • complimentedtargets->cawed happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->chirped approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->shook [INITIATOR_possessive] tailfeathers at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->wiggled because of [RECIPIENT_nameDef]'s
  • + +
  • kindbehavior->[KindAdverb] wiggled
  • +
  • kindbehavior->[KindAdverb] chirped at
  • +
  • kindbehavior->shook [INITIATOR_possessive] tailfeathers at
  • + +
  • aviancompliment->a [KindAdj] roost
  • +
  • aviancompliment->a [KindAdj] seed
  • +
  • aviancompliment->a [KindAdj] shiny thing
  • +
  • aviancompliment->a [KindAdj] twig
  • +
  • aviancompliment->a [KindAdj] feather
  • +
    +
    + PMInteractionWeights_Avian +
    + + + PMSquawk_KindWordsMemory + +
  • + + 15 +
  • +
    + PMSquawk_KindWordsMood +
    + + + PMSquawk_KindWordsMood + +
  • + + I've been complimented! What a nice bird! + 5 +
  • +
    +
    + + + + PMSquawk_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->feathers
  • +
  • animalcharacteristic->beak
  • +
  • animalcharacteristic->obsession with shiny objects
  • +
  • animalcharacteristic->voice
  • +
  • animalcharacteristic->head stabilization
  • +
  • animalcharacteristic->feather dust
  • +
  • animalcharacteristic->screaming
  • +
  • animalcharacteristic->rigid eyes
  • +
  • animalcharacteristic->big eyes
  • +
  • animalcharacteristic->head bobbing
  • +
  • animalcharacteristic->lack of ears
  • +
  • animalcharacteristic->twitchy behavior
  • +
  • animalcharacteristic->[refusal] to squawk somewhere else
  • +
  • animalcharacteristic->[refusal] to sit still
  • + +
  • insultcomparison->a bird brain
  • +
  • insultcomparison->a poultry farm
  • +
  • insultcomparison->a chicken
  • +
  • insultcomparison->a feather duster
  • +
  • insultcomparison->pillow stuffing
  • +
  • insultcomparison->a winged raccoon
  • +
  • insultcomparison->a rat with wings
  • +
  • insultcomparison->a cat's dinner
  • +
  • insultcomparison->a seed-eater
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] is too loud
  • +
  • insult->suggested that [RECIPIENT_nameDef] stop twitching [RECIPIENT_possessive] head so much
  • +
  • insult->yelled at [RECIPIENT_nameDef] to stop preening around [RECIPIENT_objective]
  • + +
  • insultingjoketopics->a golden egg
  • +
  • insultingjoketopics->clear windows
  • +
  • insultingjoketopics->hunting
  • +
  • insultingjoketopics->mockingbirds
  • +
  • insultingjoketopics->travelling south in Decembary
  • +
    +
    + PMInteractionWeights_Avian +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Squeak.xml b/1.5/Defs/Interactions/AnimalNoises_Squeak.xml new file mode 100644 index 000000000..c182c2d5f --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Squeak.xml @@ -0,0 +1,526 @@ + + + + + PMInteractionWeights_Rodent + +
  • EtherCapybaraJaw
  • + +
  • EtherRatSnout
  • +
  • EtherSquirrelJaw
  • +
    + + + +
  • + EtherRatSnout + 0.5 +
  • +
  • + EtherSquirrelJaw + 0.5 +
  • +
  • + EtherCapybaraJaw + 0.5 +
  • + + +
  • + EtherRatTail + 0.25 +
  • +
  • + EtherSquirrelTail + 0.25 +
  • + + +
  • + EtherRatEar + 0.125 +
  • +
  • + EtherSquirrelEar + 0.125 +
  • +
  • + EtherCapybaraEar + 0.125 +
  • +
    + +
  • + RatMorph + 1 +
  • +
  • + SquirrelMorph + 1 +
  • +
  • + CapybaraMorph + 1 +
  • +
    +
    + + + + PMSqueak_Chitchat + + Things/Mote/SpeechSymbols/Squeak + PMSqueak_ChitchatMemory + PMSqueak_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->squeaked at
  • +
  • noisedat->chittered at
  • +
  • noisedat->squeaked to
  • +
  • noisedat->twitched [INITIATOR_possessive] whiskers at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->barked about
  • +
  • noisedabout->woofed about
  • +
  • noisedabout->ruffed about
  • +
  • noisedabout->arfed about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->self cleaning
  • +
  • animaltopic->rodents
  • +
  • animaltopic->crafting
  • +
  • animaltopic->nesting
  • +
  • animaltopic->trash
  • +
  • animaltopic->garbage
  • +
  • animaltopic->whiskers
  • +
  • animaltopic->shiny things
  • +
  • animaltopic->cleaning
  • +
  • animaltopic->something to chew on
  • +
  • animaltopic->gnawing habits
  • +
  • animaltopic->cheese
  • +
  • animaltopic->nuts
  • +
  • animaltopic->trees
  • +
  • animaltopic->kibble
  • +
  • animaltopic->head pats
  • +
  • animaltopic->back pets
  • +
    +
    + PMInteractionWeights_Rodent +
    + + + + PMSqueak_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMSqueak_DeepTalk + + Things/Mote/SpeechSymbols/Squeak_DeepTalk + PMSqueak_DeepTalkMemory + PMSqueak_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->becoming a rodent morph
  • +
  • animallife->being a rodent morph
  • +
  • animallife->keeping hands
  • +
  • animallife->cheese
  • +
  • animallife->nuts
  • +
  • animallife->trash
  • +
  • animallife->size
  • +
  • animallife->leftovers
  • +
  • animallife->trees
  • +
  • animallife->tail care
  • +
  • animallife->shiny things
  • +
  • animallife->incisors
  • +
  • animallife->hiding
  • +
  • animallife->crafting
  • +
  • animallife->night vision
  • +
    +
    + PMInteractionWeights_Rodent +
    + + + PMSqueak_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + PMSqueak_DeepTalkRodent + + Things/Mote/SpeechSymbols/Squeak_DeepTalk + PMSqueak_DeepTalkRodentMemory + PMSqueak_DeepTalkRodentMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->becoming rodent morphs
  • +
  • animallife->being rodent morphs
  • +
  • animallife->keeping hands
  • +
  • animallife->cheese
  • +
  • animallife->nuts
  • +
  • animallife->trash
  • +
  • animallife->size
  • +
  • animallife->leftovers
  • +
  • animallife->trees
  • +
  • animallife->tail care
  • +
  • animallife->shiny things
  • +
  • animallife->incisors
  • +
  • animallife->hiding
  • +
  • animallife->crafting
  • +
  • animallife->night vision
  • + +
  • secretanimallife->sneaking
  • +
  • secretanimallife->traps
  • +
  • secretanimallife->midnight walks
  • +
  • secretanimallife->cheese types
  • +
  • secretanimallife->chewing things
  • +
  • secretanimallife->digging holes
  • +
  • secretanimallife->treehouses
  • +
  • secretanimallife->running on all fours
  • +
  • secretanimallife->dumpster diving
  • +
  • secretanimallife->fur care
  • +
  • secretanimallife->shiny hoarding
  • +
  • secretanimallife->food caching
  • +
  • secretanimallife->the best hiding spots
  • +
  • secretanimallife->plague cauldrons
  • +
  • secretanimallife->rats with horns
  • +
  • secretanimallife->the secret rodent undercity
  • + +
  • animalbehavior->squeaked understandingly at [RECIPIENT_nameDef]
  • +
  • animalbehavior->chittered with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] twitched their whiskers at eachother
  • +
    +
    + PMInteractionWeights_Rodent + PMInteractionWeights_Rodent + 0.5 + true +
    + + + PMSqueak_DeepTalkRodentMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMSqueak_Slight + + Things/Mote/SpeechSymbols/Squeak_Slight + PMSqueak_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->hissed at
  • +
  • noisedat->chittered at
  • +
  • noisedat->squeaked aggressively at
  • +
  • noisedat->squeaked annoyingly at
  • +
  • noisedat->chittered aggressively at
  • + +
  • noisedabout->squeaked about
  • +
  • noisedabout->chittered about
  • +
  • noisedabout->squeaked unhappily about
  • +
  • noisedabout->squeaked because of
  • +
  • noisedabout->chittered because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->visible disgust at [INITIATOR_objective]
  • +
  • animalcharacteristic->opinion on animal trapping
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] some leftovers
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_objective]
  • +
  • animalcharacteristic->[eRfusal] to let [INITIATOR_objective] ride on [RECIPIENT_possessive]
  • + +
  • annoyingbehavior->nearly tripped [RECIPIENT_nameDef] with [INITIATOR_possessive] tail
  • +
  • annoyingbehavior->tripped [RECIPIENT_nameDef] with [INITIATOR_possessive] tail
  • +
  • annoyingbehavior->loudly gnawed on something, annoying [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->made a high pitched squeak at [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Rodent +
    + + + PMSqueak_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMSqueak_Insult + + Things/Mote/SpeechSymbols/Squeak_Insult + PMSqueak_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedat->hissed at
  • +
  • noisedat->chittered at
  • +
  • noisedat->squeaked aggressively at
  • +
  • noisedat->squeaked annoyingly at
  • +
  • noisedat->chittered aggressively at
  • + +
  • noisedabout->squeaked about
  • +
  • noisedabout->chittered about
  • +
  • noisedabout->squeaked unhappily about
  • +
  • noisedabout->squeaked because of
  • +
  • noisedabout->chittered because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->opinion on animal trapping
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] some leftovers
  • +
  • animalcharacteristic->[Refusal] to pet [INITIATOR_objective]
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] ride on [RECIPIENT_possessive]
  • +
  • animalcharacteristic->height
  • + +
  • rodentinsult->a rotten wad
  • +
  • rodentinsult->a tree stump
  • +
  • rodentinsult->a mousetrap
  • +
  • rodentinsult->a mongrel
  • +
  • rodentinsult->an alley cat
  • +
  • rodentinsult->an owl
  • +
    +
    + PMInteractionWeights_Rodent +
    + + + PMSqueak_Insult + +
  • + + -15 +
  • +
    + PMSqueak_InsultedMood +
    + + + PMSqueak_InsultedMood + +
  • + + I've been rudely squeaked at! What an awful rodent! + -5 +
  • +
    +
    + + + + + PMSqueak_KindWords + + Things/Mote/SpeechSymbols/Squeak_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMSqueak_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->squeaked that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->chittered that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->teeth
  • +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->sheen
  • +
  • animalcharacteristic->warmth
  • +
  • animalcharacteristic->shiny thing collection
  • + +
  • complimentedtargets->squeaked happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->squeaked approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->shook [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->chirped happily because of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive
  • + +
  • kindbehavior->[KindAdverb] rubbed their hands at
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] squeaked at
  • +
  • kindbehavior->[KindAdverb] licked
  • +
  • kindbehavior->wagged [INITIATOR_possessive] tail at
  • + +
  • compliment->[adj] cheese
  • +
  • compliment->a [adj] nut
  • +
  • compliment->a [adj] tree
  • +
  • compliment->a [adj] peanut
  • +
  • compliment->[adj] leftovers
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->tasty
  • +
  • adj->savory
  • +
    +
    + PMInteractionWeights_Rodent +
    + + + PMSqueak_KindWordsMemory + +
  • + + 15 +
  • +
    + PMSqueak_KindWordsMood +
    + + + PMSqueak_KindWordsMood + +
  • + + I've been complimented! What a nice rodent! + 5 +
  • +
    +
    + + + + + PMSqueak_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->short stature
  • +
  • animalcharacteristic->beady eyes
  • +
  • animalcharacteristic->twitchy nose
  • +
  • animalcharacteristic->ratty appearance
  • +
  • animalcharacteristic->squeaky voice
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->twitchy mannerisms
  • +
  • animalcharacteristic->inability to sit still
  • +
  • animalcharacteristic->cooking skill
  • + +
  • insultcomparison->cheese gnawer
  • +
  • insultcomparison->nut
  • +
  • insultcomparison->thief
  • +
  • insultcomparison->pest
  • +
  • insultcomparison->squeaky toy
  • +
  • insultcomparison->shrimp
  • +
  • insultcomparison->plauge rat
  • +
  • insultcomparison->sewer dweller
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_possessive] is too jumpy
  • +
  • insult->said [RECIPIENT_nameDef] is disgusting
  • +
  • insult->mockingly called [RECIPIENT_nameDef] cute
  • +
  • insult->aggressively called [RECIPIENT_nameDef] "nuts"
  • +
  • insult->accused [RECIPIENT_nameDef] of spreading [disease]
  • + +
  • insultingjoketopics->mousetraps
  • +
  • insultingjoketopics->hoarding nuts
  • +
  • insultingjoketopics->dumpster diving
  • +
  • insultingjoketopics->rat poison
  • +
  • insultingjoketopics->trash-eating rodents
  • +
  • insultingjoketopics->[disease]
  • + +
  • disease->plauge
  • +
  • disease->malaria
  • +
  • disease->the flu
  • +
  • disease->food poisoning
  • + +
    +
    + PMInteractionWeights_Rodent +
    +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Tortoise.xml b/1.5/Defs/Interactions/AnimalNoises_Tortoise.xml new file mode 100644 index 000000000..ba488e6f8 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Tortoise.xml @@ -0,0 +1,486 @@ + + + + + PMInteractionWeights_Tortoise + +
  • EtherTortoiseJaw
  • +
    + + + +
  • + EtherTortoiseJaw + 0.25 +
  • + + +
  • + EtherTortoiseShell + 0.5 +
  • + + +
  • + EtherTortoiseTail + 0.125 +
  • +
    + +
  • + TortoiseMorph + 1 +
  • +
    +
    + + + + + PMTortoiseHiss_Chitchat + + Things/Mote/SpeechSymbols/TortoiseHiss + PMTortoiseHiss_ChitchatMemory + PMTortoiseHiss_ChitchatMemory + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [talkedabout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [talkedabout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->hissed at
  • +
  • noisedat->shook [INITIATOR_possessive] tail at
  • +
  • noisedat->hissed to
  • +
  • noisedat->opened [INITIATOR_possessive] mouth at
  • +
  • noisedat->shook [INITIATOR_possessive] tail to
  • +
  • noisedat->stared at
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->hissed about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • animaltopic->scales
  • +
  • animaltopic->lettuce
  • +
  • animaltopic->tortoise shells
  • +
  • animaltopic->scales
  • +
  • animaltopic->tortoises
  • +
  • animaltopic->sun basking
  • +
  • animaltopic->claws
  • +
  • animaltopic->reptile teeth
  • +
  • animaltopic->the difference between turtles and tortoises
  • +
  • animaltopic->tortoise beaks
  • +
  • animaltopic->strange scents
  • +
    +
    + PMInteractionWeights_Tortoise +
    + + + PMTortoiseHiss_ChitchatMemory + +
  • + + 0.66 +
  • +
    +
    + + + + + PMTortoiseHiss_DeepTalk + + Things/Mote/SpeechSymbols/TortoiseHiss_DeepTalk + PMTortoiseHiss_DeepTalkMemory + PMTortoiseHiss_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a tortoise morph
  • +
  • animallife->becoming a tortoise morph
  • +
  • animallife->having a big shell
  • +
  • animallife->resting
  • +
  • animallife->lettuce
  • +
  • animallife->having scales
  • +
  • animallife->hissing
  • +
  • animallife->foraging
  • +
  • animallife->eating lettuce
  • +
  • animallife->eating plants
  • +
  • animallife->shell cleaning
  • +
  • animallife->restricted movement
  • +
  • animallife->interesting scents
  • +
  • animallife->lizard hands
  • +
  • animallife->shell cracks
  • +
  • animallife->what having a tail feels like
  • +
    +
    + PMInteractionWeights_Tortoise +
    + + + PMTortoiseHiss_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMTortoiseHiss_DeepTalkTortoise + + Things/Mote/SpeechSymbols/TortoiseHiss_DeepTalk + PMTortoiseHiss_DeepTalkTortoiseMemory + PMTortoiseHiss_DeepTalkTortoiseMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being tortoise morphs
  • +
  • animallife->becoming tortoise morphs
  • +
  • animallife->having a big shell
  • +
  • animallife->resting
  • +
  • animallife->lettuce
  • +
  • animallife->having scales
  • +
  • animallife->hissing
  • +
  • animallife->foraging
  • +
  • animallife->eating lettuce
  • +
  • animallife->eating plants
  • +
  • animallife->shell cleaning
  • +
  • animallife->restricted movement
  • +
  • animallife->interesting scents
  • +
  • animallife->lizard hands
  • +
  • animallife->shell cracks
  • +
  • animallife->what having a tail feels like
  • + +
  • secretanimallife->basking spots
  • +
  • secretanimallife->hiding in shells
  • +
  • secretanimallife->foraging
  • +
  • secretanimallife->getting used to a giant shell
  • +
  • secretanimallife->adapting to slow movement
  • +
  • secretanimallife->shell polishing
  • +
  • secretanimallife->finding [food]
  • +
  • secretanimallife->eating [food]
  • +
  • secretanimallife->keeping balance on two legs
  • +
  • secretanimallife->smelling with tongues
  • +
  • secretanimallife->nictitating membranes
  • +
  • secretanimallife->invulnerability
  • +
  • secretanimallife->going manhunter
  • +
  • secretanimallife->the wise ratmorph
  • +
  • secretanimallife->sewer ooze
  • + +
  • food->plants
  • +
  • food->lettuce
  • +
  • food->fruit
  • +
  • food->vegetables
  • +
  • food->flowers
  • +
  • food(p=0.1)->pizza
  • + +
  • animalbehavior->stared understandingly with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] briefly looked at eachother
  • +
  • animalbehavior->shared nuzzles with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] stared at eachother for a while
  • +
    +
    + PMInteractionWeights_Tortoise + PMInteractionWeights_Tortoise + 0.5 + true +
    + + + PMTortoiseHiss_DeepTalkTortoiseMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMTortoiseHiss_Slight + + Things/Mote/SpeechSymbols/TortoiseHiss_Slight + PMTortoiseHiss_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->hissed at
  • +
  • noisedat->aggressively opened [INITIATOR_possessive] mouth at
  • +
  • noisedat->hissed aggressively at
  • +
  • noisedat->quickly hid into [INITIATOR_possessive] shell at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->hissed angrily about
  • +
  • noisedabout->aggressively opened [INITIATOR_possessive] mouth because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a treat
  • +
  • animalcharacteristic->[Refusal] to help [INITIATOR_objective] shed
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] stare at [RECIPIENT_objective]
  • + +
  • annoyingbehavior->stared annoyingly at [RECIPIENT_nameDef]
  • +
  • annoyingbehavior->looked at [RECIPIENT_nameDef] in a way [RECIPIENT_possessive] could not understand
  • +
  • annoyingbehavior->accidentally brushed [INITIATOR_possessive] shell against [RECIPIENT_nameDef]
  • +
    +
    + PMInteractionWeights_Tortoise +
    + + + PMTortoiseHiss_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMTortoiseHiss_Insult + + Things/Mote/SpeechSymbols/TortoiseHiss_Insult + PMTortoiseHiss_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->hissed that [Target] was
  • +
  • noisedtargetwas->screeched that [Target] was
  • + +
  • noisedat->hissed at
  • +
  • noisedat->screeched at
  • +
  • noisedat->hissed and aggressively shook [INITIATOR_possessive] tail at
  • + +
  • noisedabout->hissed about
  • +
  • noisedabout->hissed angrily about
  • +
  • noisedabout->hid into [INITIATOR_possessive] shell because of
  • +
  • noisedabout->hissed and extended [INITIATOR_possessive] neck over
  • +
  • noisedabout->fell over because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->sudden movements
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] a mealworm
  • +
  • animalcharacteristic->[Refusal] to help [INITIATOR_objective] shed
  • + +
  • insult->a mammal
  • +
  • insult->a warmblood
  • +
  • insult->a smoothskin
  • +
  • insult->a hare
  • +
  • insult->a cheetah
  • +
    +
    + PMInteractionWeights_Tortoise +
    + + + PMTortoiseHiss_Insult + +
  • + + -15 +
  • +
    + PMTortoiseHiss_InsultedMood +
    + + + PMTortoiseHiss_InsultedMood + +
  • + + I've been hissed at! What an awful tortoise! + -5 +
  • +
    +
    + + + + + PMTortoiseHiss_KindWords + + Things/Mote/SpeechSymbols/TortoiseHiss_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMTortoiseHiss_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->hissed that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • +
  • animalcharacteristic->scale petting technique
  • +
  • animalcharacteristic->steadiness
  • + +
  • complimentedtargets->smiled happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->smiled approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->swished [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->gave [RECIPIENT_nameDef] an approving look because of [RECIPIENT_possessive]
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] smiled at
  • +
  • kindbehavior->wagged [INITIATOR_possessive] tail at
  • + +
  • reptilecompliment->a [KindAdj] lettuce leaf
  • +
  • reptilecompliment->a [KindAdj] strawberry
  • +
  • reptilecompliment->a [KindAdj] cabbage leaf
  • +
  • reptilecompliment->a [KindAdj] leaf
  • +
  • reptilecompliment->a [KindAdj] dandelion
  • +
  • reptilecompliment->a [KindAdj] patient person
  • +
    +
    + PMInteractionWeights_Tortoise +
    + + + PMTortoiseHiss_KindWordsMemory + +
  • + + 15 +
  • +
    + PMTortoiseHiss_KindWordsMood +
    + + + PMTortoiseHiss_KindWordsMood + +
  • + + I've been given a kind smile! What a nice tortoise! + 5 +
  • +
    +
    + + + + + PMTortoiseHiss_DirectedInsult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->tail
  • +
  • animalcharacteristic->scales
  • +
  • animalcharacteristic->beady eyes
  • +
  • animalcharacteristic->wrinkly-looking face
  • +
  • animalcharacteristic->creepy appearance
  • +
  • animalcharacteristic->size
  • +
  • animalcharacteristic->slow mannerisms
  • +
  • animalcharacteristic->slow movement
  • +
  • animalcharacteristic->strange staring habits
  • +
  • animalcharacteristic->eating habits
  • +
  • animalcharacteristic->massive shell
  • + +
  • insultcomparison->an elder
  • +
  • insultcomparison->a dinosaur
  • +
  • insultcomparison->a slowpoke
  • +
  • insultcomparison->a cold blooded freak
  • +
  • insultcomparison->a lab monster
  • +
  • insultcomparison->a lizard brain
  • +
  • insultcomparison->a reptile exhibit
  • +
  • insultcomparison->a creep
  • +
  • insultcomparison->turtle soup
  • +
  • insultcomparison->a mutant
  • +
  • insultcomparison->a sewer monster
  • + +
  • insult->complained that [RECIPIENT_nameDef] moves around creepily
  • +
  • insult->rudely called [RECIPIENT_nameDef] a scaled freak
  • +
  • insult->called [RECIPIENT_nameDef] the distraction when discussing combat tactics
  • +
  • insult->said [RECIPIENT_nameDef] looks creepy
  • +
  • insult->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • + +
  • insultingjoketopics->mutant sewer turtles
  • +
  • insultingjoketopics->tortoises being stuck on their backs
  • +
  • insultingjoketopics->cold blooded animals
  • +
  • insultingjoketopics->the slow movement of tortoises
  • +
  • insultingjoketopics->turtle races
  • +
    +
    + PMInteractionWeights_Tortoise +
    + +
    diff --git a/1.5/Defs/Interactions/AnimalNoises_Yip.xml b/1.5/Defs/Interactions/AnimalNoises_Yip.xml new file mode 100644 index 000000000..ebfbb4c21 --- /dev/null +++ b/1.5/Defs/Interactions/AnimalNoises_Yip.xml @@ -0,0 +1,531 @@ + + + + + PMInteractionWeights_Vulpine + +
  • EtherArcticFoxMuzzle
  • +
  • EtherFennecFoxMuzzle
  • +
  • EtherFoxMuzzle
  • +
    + + + +
  • + EtherArcticFoxMuzzle + 0.5 +
  • +
  • + EtherFennecFoxMuzzle + 0.5 +
  • +
  • + EtherFoxMuzzle + 0.5 +
  • + + +
  • + EtherArcticFoxEar + 0.125 +
  • +
  • + EtherFennecFoxEar + 0.125 +
  • +
  • + EtherFoxEar + 0.125 +
  • + + +
  • + EtherArcticFluffyTail + 0.25 +
  • +
  • + EtherFennecFluffyTail + 0.25 +
  • +
  • + EtherFluffyTail + 0.25 +
  • +
    + +
  • + ArcticFoxMorph + 1 +
  • +
  • + FennecFoxMorph + 1 +
  • +
  • + FoxMorph + 1 +
  • +
    +
    + + + + + PMYip_Chitchat + + Things/Mote/SpeechSymbols/Yip + PawnmorphYip + PawnmorphYip + + +
  • PMInteractionRules_Chitchat
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [animaltopic] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [animaltopic] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [CommentedAbout] [topic] to [RECIPIENT_nameDef].
  • + +
  • noisedat(p=4)->yipped at
  • +
  • noisedat->yapped at
  • +
  • noisedat->yipped to
  • +
  • noisedat->sniffed
  • +
  • noisedat->yipped to
  • + +
  • talkedabout->[TalkedAbout]
  • +
  • talkedabout->[noisedabout]
  • + +
  • noisedabout->yipped about
  • +
  • noisedabout->yapped about
  • + +
  • topic(p=2)->[animaltopic]
  • +
  • topic->[MorphTopic]
  • + +
  • askedabout->patting [INITIATOR_possessive] fur
  • +
  • askedabout->vixens
  • +
  • askedabout->chickens
  • +
  • askedabout->chicken hunting
  • +
  • askedabout->climbing fences
  • +
  • askedabout->chasing mice
  • +
  • askedabout->jumping into snow
  • +
  • askedabout->life in dens
  • +
  • askedabout->the evolution of thumbs
  • +
  • askedabout->digging holes
  • +
  • askedabout->paws
  • +
  • askedabout->delicious smells
  • +
  • askedabout->strange scents
  • +
    +
    + PMInteractionWeights_Vulpine +
    + + + PawnmorphYip + +
  • + + 0.66 +
  • +
    +
    + + + + + PMYip_DeepTalk + + Things/Mote/SpeechSymbols/Yip_DeepTalk + PMYip_DeepTalkMemory + PMYip_DeepTalkMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • + +
  • animallife->being a vulpine morph
  • +
  • animallife->becoming a vulpine morph
  • +
  • animallife->shedding
  • +
  • animallife->headpats
  • +
  • animallife->ear scritches
  • +
  • animallife->mice
  • +
  • animallife->getting brushed
  • +
  • animallife->screeching
  • +
  • animallife->jumping into snow
  • +
  • animallife->stereotypes on stealing
  • +
  • animallife->eating rodents
  • +
  • animallife->hunting instincts
  • +
  • animallife->paw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->interesting scents
  • +
  • animallife->gross scents
  • +
  • animallife->broken claws
  • +
  • animallife->what a tail feels like
  • +
  • animallife->colorblindness
  • +
    +
    + PMInteractionWeights_Vulpine +
    + + + PMYip_DeepTalkMemory + +
  • + + 15 +
  • +
    +
    + + + + + PMYip_DeepTalkVulpine + + Things/Mote/SpeechSymbols/Yip_DeepTalk + PMYip_DeepTalkVulpineMemory + PMYip_DeepTalkVulpineMemory + + +
  • PMInteractionRules_DeepTalk
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] and [RECIPIENT_nameDef] [DeepTalkedAbout] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [DeepTalkedAbout] [topic] with [RECIPIENT_nameDef].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [animalbehavior].
  • + +
  • topic(p=2)->[animallife]
  • +
  • topic->[DeepMorphTopic]
  • +
  • topic(p=0.5)->[secretanimallife]
  • + +
  • animallife->being vulpine morphs
  • +
  • animallife->becoming vulpine morphs
  • +
  • animallife->shedding
  • +
  • animallife->headpats
  • +
  • animallife->ear scritches
  • +
  • animallife->mice
  • +
  • animallife->getting brushed
  • +
  • animallife->screeching
  • +
  • animallife->jumping into snow
  • +
  • animallife->stereotypes on stealing
  • +
  • animallife->eating rodents
  • +
  • animallife->hunting instincts
  • +
  • animallife->paw maintenence
  • +
  • animallife->stronger senses
  • +
  • animallife->interesting scents
  • +
  • animallife->gross scents
  • +
  • animallife->broken claws
  • +
  • animallife->what a tail feels like
  • +
  • animallife->colorblindness
  • + +
  • secretanimallife->brushy brushy
  • +
  • secretanimallife->growing multiple tails
  • +
  • secretanimallife->digging hidden dens
  • +
  • secretanimallife->secret fox magic
  • +
  • secretanimallife->disguising themselves as humans
  • +
  • secretanimallife->foxfire
  • +
  • secretanimallife->hunting [prey]
  • +
  • secretanimallife->stealing [prey]
  • +
  • secretanimallife->caching dead [prey]
  • +
  • secretanimallife->fox musk
  • +
  • secretanimallife->screeching contests
  • +
  • secretanimallife->comparing ear sizes
  • +
  • secretanimallife->mates
  • + +
  • prey(p=10)->[preyanimal]
  • +
  • prey->[preymorph]
  • + +
  • preyanimal->mice
  • +
  • preyanimal->rats
  • +
  • preyanimal->rabbits
  • +
  • preyanimal->squirrels
  • +
  • preyanimal->chickens
  • + +
  • preymorph->ratmorphs
  • +
  • preymorph->rabbitmorphs
  • +
  • preymorph->squirrelmorphs
  • +
  • preymorph->chookmorphs
  • + +
  • animalbehavior->exchanged sniffs with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] compared scents
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave each other face licks
  • +
  • animalbehavior->shared mutual nuzzles with [RECIPIENT_nameDef]
  • +
  • animalbehavior->and [RECIPIENT_nameDef] gave each other mutual headpats
  • +
    +
    + PMInteractionWeights_Vulpine + PMInteractionWeights_Vulpine + 0.5 + true +
    + + + PMYip_DeepTalkVulpineMemory + +
  • + + 20 +
  • +
    +
    + + + + + PMYip_Slight + + Things/Mote/SpeechSymbols/Yip_Slight + PMYip_Slight + + +
  • PMInteractionRules_Slight
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry(p=0.5)->[INITIATOR_nameDef] [annoyingbehavior].
  • + +
  • noisedat->gekkered at
  • +
  • noisedat->bared [INITIATOR_possessive] teeth at
  • +
  • noisedat->yipped aggressively at
  • +
  • noisedat->yapped annoyingly at
  • + +
  • noisedabout->gekkered about
  • +
  • noisedabout->yapped angrily about
  • +
  • noisedabout->bared [INITIATOR_possessive] teeth because of
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->lack of treats
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] ear rubs
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] headpats
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] sniff [RECIPIENT_objective]
  • + +
  • annoyingbehavior->tried to sniff [RECIPIENT_nameDef] in a sensitive place
  • +
  • annoyingbehavior->annoyingly licked [RECIPIENT_nameDef] face
  • +
  • annoyingbehavior->annoyingly mouthed [RECIPIENT_nameDef]'s hand
  • +
    +
    + PMInteractionWeights_Vulpine +
    + + + PMYip_Slight + +
  • + + -5 +
  • +
    +
    + + + + + PMYip_Insult + + Things/Mote/SpeechSymbols/Yip_Insult + PMYip_Insult + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [noisedat] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [noisedabout] [Target]'s [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [comparedtargetto] [insult].
  • + +
  • comparedtargetto->[ComparedTargetTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->gekkered that [Target] was
  • +
  • noisedtargetwas->screeched that [Target] was
  • +
  • noisedtargetwas->snarled that [Target] was
  • + +
  • noisedat->screeched at
  • +
  • noisedat->screeched and nipped
  • +
  • noisedat->gave a full-faced screech to
  • + +
  • noisedabout->screeched about
  • +
  • noisedabout->gekkered angrily about
  • +
  • noisedabout->tried to bite [RECIPIENT_nameDef] because of
  • +
  • noisedabout->screeched in [RECIPIENT_nameDef] face over
  • +
  • noisedabout->bared [INITIATOR_possessive] fangs over
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->loud noises
  • +
  • animalcharacteristic->lack of treats
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] ear rubs
  • +
  • animalcharacteristic->[Refusal] to give [INITIATOR_objective] headpats
  • +
  • animalcharacteristic->[Refusal] to let [INITIATOR_objective] sniff [RECIPIENT_objective]
  • + +
  • insult->a foxhound
  • +
  • insult->a fox hunter
  • +
  • insult->a fox tosser
  • +
  • insult->a weasel
  • +
  • insult->a wolf
  • +
    +
    + PMInteractionWeights_Vulpine +
    + + + PMYip_Insult + +
  • + + -15 +
  • +
    + PMYip_InsultedMood +
    + + + PMYip_InsultedMood + +
  • + + I've been screeched at! What an awful fox! + -5 +
  • +
    +
    + + + + + PMYip_KindWords + + Things/Mote/SpeechSymbols/Yip_KindWords + Pawnmorph.Social.InteractionWorker_KindWords + PMYip_KindWordsMemory + + +
  • PMInteractionRules_KindWords
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [complimentedtargets] [characteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [kindbehavior] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [MaybeKindAdv] [comparedtargetto] [compliment].
  • + +
  • comparedtargetto->[ComparedRecipientTo]
  • +
  • comparedtargetto->[noisedtargetwas]
  • + +
  • noisedtargetwas->yipped that [RECIPIENT_nameDef] was
  • +
  • noisedtargetwas->yapped that [RECIPIENT_nameDef] was
  • + +
  • characteristic(p=2)->[PersonalCharacteristic]
  • +
  • characteristic->[animalcharacteristic]
  • + +
  • animalcharacteristic->scent
  • +
  • animalcharacteristic->body language
  • +
  • animalcharacteristic->treats
  • +
  • animalcharacteristic->headpat technique
  • +
  • animalcharacteristic->wonderful scritches
  • + +
  • complimentedtargets->yipped happily about [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->yapped approvingly of [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->swished [INITIATOR_possessive] tail at [RECIPIENT_nameDef]'s
  • +
  • complimentedtargets->licked [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • +
  • complimentedtargets->nuzzled [RECIPIENT_nameDef] because of [RECIPIENT_possessive]
  • + +
  • kindbehavior->[KindAdverb] licked
  • +
  • kindbehavior->[KindAdverb] nuzzled
  • +
  • kindbehavior->[KindAdverb] yipped at
  • +
  • kindbehavior->swished [INITIATOR_possessive] tail at
  • + +
  • compliment->a [adj] rabbitheart
  • +
  • compliment->a [adj] chickenliver
  • +
  • compliment->a [adj] mouse
  • +
  • compliment->a [adj] blackberry
  • +
  • compliment->a [adj] grape
  • + +
  • adj(p=8)->[KindAdj]
  • +
  • adj->delicious
  • +
  • adj->tasty
  • +
  • adj->savory
  • +
    +
    + PMInteractionWeights_Vulpine +
    + + + PMYip_KindWordsMemory + +
  • + + 15 +
  • +
    + PMYip_KindWordsMood +
    + + + PMYip_KindWordsMood + +
  • + + I've been given a kind lick! What a nice fox! + 5 +
  • +
    +
    + + + + + PMTalk_insult + + Insulted + + +
  • PMInteractionRules_Insult
  • +
    + +
  • r_logentry->[INITIATOR_nameDef] [Insulted] [RECIPIENT_nameDef]'s [animalcharacteristic].
  • +
  • r_logentry->[INITIATOR_nameDef] [ComparedRecipientTo] [insultcomparison].
  • +
  • r_logentry->[INITIATOR_nameDef] [insult].
  • + +
  • animalcharacteristic->stench
  • +
  • animalcharacteristic->shedding
  • +
  • animalcharacteristic->screeching
  • +
  • animalcharacteristic->tendency to mouth things
  • +
  • animalcharacteristic->gross eating habits
  • +
  • animalcharacteristic->annoying fox noises
  • +
  • animalcharacteristic->weird eyes
  • +
  • animalcharacteristic->giant ears
  • +
  • animalcharacteristic->fleas
  • + +
  • insultcomparison->a stinking fox
  • +
  • insultcomparison->a fox-fur scarf
  • +
  • insultcomparison->a big-eared noisemaker
  • +
  • insultcomparison->a petty thief
  • +
  • insultcomparison->a wild animal
  • +
  • insultcomparison->a rabid fox
  • +
  • insultcomparison->a tornado siren
  • +
  • insultcomparison->a mangy fleabag
  • + +
  • insult(p=3)->told an insulting joke about [insultingjoketopics] around [RECIPIENT_nameDef]
  • +
  • insult->complained that [RECIPIENT_nameDef] stinks like a skunk
  • +
  • insult->accused [RECIPIENT_nameDef] of stealing something belonging to [INITIATOR_objective]
  • +
  • insult->yelled at [RECIPIENT_nameDef] to stop making annoying fox noises
  • + +
  • insultingjoketopics->thieving foxes
  • +
  • insultingjoketopics->fox stench
  • +
  • insultingjoketopics->foxes in henhouses
  • +
    +
    + PMInteractionWeights_Vulpine +
    + +
    diff --git a/1.5/Defs/Interactions/FH_Chat.xml b/1.5/Defs/Interactions/FH_Chat.xml new file mode 100644 index 000000000..27577d647 --- /dev/null +++ b/1.5/Defs/Interactions/FH_Chat.xml @@ -0,0 +1,79 @@ + + + FormerHumanAnimalChat + + Things/Mote/SpeechSymbols/AnimalChat + Pawnmorph.Social.Worker_FormerHuman + Animals + 70 + + +
  • r_logentry(p=5)->[INITIATOR_nameDef] [comfort] [RECIPIENT_nameDef].
  • +
  • r_logentry(p=5)->[RECIPIENT_nameDef] [animalTalk] [INITIATOR_nameDef].
  • + +
  • comfort->tried to calm
  • +
  • comfort->offered an understanding look towards
  • +
  • comfort->gently hugged
  • +
  • comfort->made polite conversation with
  • +
  • comfort->tried to comfort
  • +
  • comfort->booped the snoot of
  • +
  • comfort->calmed and encouraged
  • +
  • comfort->sat down and patted
  • +
  • comfort->shared a thought about [TalkTopicAny] with
  • +
  • comfort->gave headpats to
  • +
  • comfort->calmingly patted
  • +
  • comfort->tried to cheer up
  • +
  • comfort->told a story about [TalkTopicAny] to
  • + + +
  • animalLife->being an animal
  • +
  • animalLife->becoming an animal
  • +
  • animalLife->sleeping on the ground
  • +
  • animalLife->sleeping on the ground
  • +
  • animalLife->sleeping outside
  • +
  • animalLife->eating kibble
  • +
  • animalLife->eating raw food
  • +
  • animalLife->being trained
  • +
  • animalLife->what love means as an animal
  • +
  • animalLife->paw maintenence
  • +
  • animalLife->preening and brushing
  • +
  • animalLife->stronger senses
  • +
  • animalLife->interesting scents
  • +
  • animalLife->gross scents
  • +
  • animalLife->resisting change
  • +
  • animalLife->accepting change
  • +
  • animalLife->giving in to instinct
  • +
  • animalLife->resisting instinct
  • +
  • animalLife->mutations
  • +
  • animalLife->nakedness
  • +
  • animalLife->saddles
  • +
  • animalLife->broken claws
  • +
  • animalLife->third-party tooth-brushing
  • +
  • animalLife->what a tail feels like
  • +
  • animalLife->animal products
  • +
  • animalLife->farming
  • +
  • animalLife->mates
  • +
  • animalLife->the struggle against instinct
  • +
  • animalLife->pheremones
  • +
  • animalLife->animal politics
  • +
  • animalLife->the language animals speak when humans look away
  • +
  • animalLife->secret animal cults
  • +
  • animalLife->reversion serums
  • +
  • animalLife->joining a cult
  • +
  • animalLife->becoming a mount
  • +
    +
    + +
  • + + true + +
  • PermanentlyFeral
  • + + + +
    +
    + + +
    \ No newline at end of file diff --git a/1.5/Defs/Interactions/FH_TrainInteractions.xml b/1.5/Defs/Interactions/FH_TrainInteractions.xml new file mode 100644 index 000000000..e34f73c5a --- /dev/null +++ b/1.5/Defs/Interactions/FH_TrainInteractions.xml @@ -0,0 +1,60 @@ + + + Things/Mote/SpeechSymbols/TrainAttempt + Animals + 70 + + + + FormerHumanTrainAttempt + + + +
  • r_logentry->[INITIATOR_nameDef] [trained] [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] [trained] [RECIPIENT_nameDef] by [method].
  • + +
  • trained(p=2)->[tried] to train
  • +
  • trained->[tried] to show a new trick to
  • +
  • trained->[tried] to discipline
  • +
  • trained->[tried] to instruct
  • +
  • trained->[tried] to encourage a new skill in
  • +
  • trained->demonstrated a skill to
  • +
  • trained->encouraged a new response from
  • + +
  • method->clipping on a leash
  • +
  • method->offering a treat
  • +
  • method->doing a pet voice
  • +
  • method->calling [RECIPIENT_objective] a good boi
  • +
  • method->threatening to treat [RECIPIENT_objective] like an animal
  • +
  • method->staring into [RECIPIENT_objcetive] eyes
  • +
  • method->giving [RECIPIENT_objcetive] a name tag
  • + +
  • tried->tried
  • +
  • tried->attempted
  • + +
    +
    + +
  • + + +
  • +
  • + + FormerHumanTrainThought +
  • + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Interactions/Interaction_Headpats.xml b/1.5/Defs/Interactions/Interaction_Headpats.xml new file mode 100644 index 000000000..fa7c64e0d --- /dev/null +++ b/1.5/Defs/Interactions/Interaction_Headpats.xml @@ -0,0 +1,193 @@ + + + + + PMInteractionWeights_Headpats + + + + + + +
  • + EtherHuskyMuzzle + 0.5 +
  • +
  • + EtherWargMuzzle + 0.5 +
  • +
  • + EtherFoxMuzzle + 0.5 +
  • +
  • + EtherCatMuzzle + 0.5 +
  • +
  • + EtherWolfMuzzle + 0.5 +
  • +
    + + +
  • + HuskyMorph + 1 +
  • +
  • + FoxMorph + 1 +
  • +
  • + WolfMorph + 1 +
  • +
  • + CatMorph + 1 +
  • +
  • + WargMorph + 1 +
  • +
    +
    + + + PMCanidHeadpats + + Pawnmorph.Social.InteractionWorker_KindWords + Things/Mote/SpeechSymbols/Headpats + PawnmorphHeadpats + Social + 10 + PawnmorphHeadpatsRecipient + + +
  • r_logentry->[INITIATOR_nameDef] gave reassuring headpats to [RECIPIENT_nameDef].
  • +
  • r_logentry->[INITIATOR_nameDef] called [RECIPIENT_nameDef] a [goodboi].
  • +
  • r_logentry->[INITIATOR_nameDef] [actionpart] [RECIPIENT_nameDef]'s [bodypart, while [adverb] telling [RECIPIENT_objective] [topic].
  • +
  • r_logentry->[INITIATOR_nameDef] [actionpart] [RECIPIENT_nameDef]'s [bodypart].
  • +
  • r_logentry->[INITIATOR_nameDef] [adverb] told [RECIPIENT_nameDef] [topic].
  • + +
  • goodboi(initiator_gender==Male,p=4)->good boy
  • +
  • goodboi(initiator_gender==Female,p=4)->good girl
  • + +
  • actionpart->patted
  • +
  • actionpart->petted
  • +
  • actionpart->coddled
  • +
  • actionpart->cuddled
  • +
  • actionpart->hugged
  • +
  • actionpart->rested their face against
  • + +
  • bodypart->tail
  • +
  • bodypart->ears
  • +
  • bodypart->head
  • +
  • bodypart->fur
  • +
  • bodypart->floof
  • +
  • bodypart->back
  • +
  • bodypart->belly
  • +
  • bodypart->hands
  • + +
  • adverb->calmly
  • +
  • adverb->warmly
  • +
  • adverb->reassuringly
  • +
  • adverb->delicately
  • +
  • adverb->concerningly
  • +
  • adverb->quietly
  • +
  • adverb->cutely
  • + +
  • topic->that everything would be ok
  • +
  • topic->that there was nothing to worry about
  • +
  • topic->that [RECIPIENT_pronoun] is cuter this way
  • +
  • topic->that the changes would soon pass
  • +
  • topic->not to worry
  • +
  • topic->to enjoy the changes
  • +
  • topic->to see this as an opportunity to reinvent [RECIPIENT_objective]self
  • +
  • topic->to look on the bright side
  • + +
    +
    + + + + PMInteractionWeights_Headpats + + + false +
    + + + PawnmorphHeadpats + Thought_MemorySocialCumulative + 300 + 10 + +
  • Psychopath
  • +
    + +
  • + + 0.1 +
  • +
    +
    + + + PawnmorphHeadpatsRecipient + + Thought_MemorySocialCumulative + 300 + 10 + +
  • Psychopath
  • +
    + +
  • + + 0.3 +
  • +
    + GotHeadpats +
    + + + GotHeadpats + + 0.5 + 10 + 0.9 + +
  • + + Someone made me feel a bit better about myself. That was nice. + 5 +
  • +
    +
    + + +
    diff --git a/1.5/Defs/Interactions/RulePacks_MorphInteractions.xml b/1.5/Defs/Interactions/RulePacks_MorphInteractions.xml new file mode 100644 index 000000000..8c9af9e0c --- /dev/null +++ b/1.5/Defs/Interactions/RulePacks_MorphInteractions.xml @@ -0,0 +1,150 @@ + + + + + PMInteractionRules_Chitchat + + +
  • TalkedAbout(p=4)->chatted about
  • +
  • TalkedAbout->shared a word about
  • +
  • TalkedAbout->spoke about
  • +
  • TalkedAbout->gabbed about
  • +
  • TalkedAbout->talked about
  • +
  • TalkedAbout->joked about
  • +
  • TalkedAbout->quipped about
  • + +
  • CommentedAbout->said something about
  • +
  • CommentedAbout->said a word about
  • +
  • CommentedAbout->made a comment about
  • +
  • CommentedAbout->commented about
  • +
  • CommentedAbout->told a joke about
  • + +
  • MorphTopic->mutations
  • +
  • MorphTopic->transformation
  • +
  • MorphTopic->mutagen
  • +
  • MorphTopic->antigen
  • +
  • MorphTopic->stabilizer
  • +
  • MorphTopic->reverter serum
  • +
  • MorphTopic->sapience
  • +
  • MorphTopic->production mutations
  • +
  • MorphTopic->alternative livestock
  • +
    +
    +
    + + + + PMInteractionRules_DeepTalk + + +
  • PMInteractionRules_Misc
  • +
    + +
  • DeepTalkedAbout->talked in depth about
  • +
  • DeepTalkedAbout->shared [INITIATOR_possessive] experiences with
  • +
  • DeepTalkedAbout->discussed the topic of
  • +
  • DeepTalkedAbout->had a heartfelt conversation about
  • +
  • DeepTalkedAbout->talked quietly about
  • +
  • DeepTalkedAbout->talked deeply about
  • +
  • DeepTalkedAbout->told a heartfelt story about
  • +
  • DeepTalkedAbout->shared an embarassing story about
  • + +
  • DeepMorphTopic->living with mutations
  • +
  • DeepMorphTopic->living as an animal
  • +
  • DeepMorphTopic->mutagenic autonomy
  • +
  • DeepMorphTopic->maintaining sapience
  • +
  • DeepMorphTopic->resisting instinct
  • +
  • DeepMorphTopic->giving into instinct
  • +
  • DeepMorphTopic->going permanantly feral
  • +
  • DeepMorphTopic->reversion serum
  • +
    +
    +
    + + + + PMInteractionRules_Slight + + +
  • PMInteractionRules_Misc
  • +
    + + +
    +
    + + + + PMInteractionRules_Insult + + +
  • PMInteractionRules_Misc
  • +
    + +
  • Insulted(p=3)->insulted
  • +
  • Insulted->openly insulted
  • +
  • Insulted->loudly insulted
  • +
  • Insulted->flagrantly insulted
  • +
  • Insulted->directly insulted
  • +
  • Insulted->viciously insulted
  • +
  • Insulted->flagrantly disrespected
  • +
  • Insulted->slandered
  • +
  • Insulted->hurled invective about
  • +
  • Insulted->derided
  • +
    +
    +
    + + + + PMInteractionRules_KindWords + + +
  • PMInteractionRules_Misc
  • +
    + +
  • KindAdverb->kindly
  • +
  • KindAdverb->affectionately
  • +
  • KindAdverb->appreciatively
  • +
  • KindAdverb->happily
  • + +
  • MaybeKindAdv->
  • +
  • MaybeKindAdv->[KindAdverb]
  • + +
  • KindAdj->wonderful
  • +
  • KindAdj->delightful
  • +
  • KindAdj->amazing
  • +
  • KindAdj->sweet
  • +
  • KindAdj->lovely
  • +
  • KindAdj->great
  • + +
  • MaybeKindAdj->
  • +
  • MaybeKindAdj->[KindAdj]
  • +
    +
    +
    + + + + PMInteractionRules_Misc + + +
  • ComparedRecipientTo->called [Target]
  • +
  • ComparedRecipientTo->compared [Target] to
  • + +
  • ComparedTargetTo->called [Target]
  • +
  • ComparedTargetTo->compared [Target] to
  • + +
  • Target(p=4)->[RECIPIENT_nameDef]
  • +
  • Target->[RECIPIENT_nameDef]'s [PersonFamily]
  • + +
  • Refusal->refusal
  • +
  • Refusal->unwillingness
  • + +
  • Man(initiator_gender==Male)->man
  • +
  • Man(initiator_gender==Female)->woman
  • +
    +
    +
    + +
    diff --git a/1.5/Defs/JobDefs/MiscJobs.xml b/1.5/Defs/JobDefs/MiscJobs.xml new file mode 100644 index 000000000..0650e6ab8 --- /dev/null +++ b/1.5/Defs/JobDefs/MiscJobs.xml @@ -0,0 +1,21 @@ + + + PMResurrect + Pawnmorph.Jobs.Driver_ResurrectTf + resurrecting TargetA. + true + + + PM_OperateSequencer + Pawnmorph.Jobs.Driver_UseMutationScanner + scanning at TargetA. + true + + + + PM_UseMutationGenome + Pawnmorph.Jobs.Driver_UseGenome + applying TargetB. + true + + \ No newline at end of file diff --git a/1.5/Defs/JobDefs/MutaPlantJobs.xml b/1.5/Defs/JobDefs/MutaPlantJobs.xml new file mode 100644 index 000000000..b4f0b0e2e --- /dev/null +++ b/1.5/Defs/JobDefs/MutaPlantJobs.xml @@ -0,0 +1,14 @@ + + + PM_PlantMutagenicPlant + Pawnmorph.Jobs.Driver_SowMutagenicPlant + planting TargetA. + true + + + PM_MutagenicSow + Pawnmorph.Jobs.Driver_MutagenicSow + sowing TargetA. + true + + \ No newline at end of file diff --git a/1.5/Defs/JobDefs/MutagenChamberJobs.xml b/1.5/Defs/JobDefs/MutagenChamberJobs.xml new file mode 100644 index 000000000..2f19b7705 --- /dev/null +++ b/1.5/Defs/JobDefs/MutagenChamberJobs.xml @@ -0,0 +1,24 @@ + + + EnterMutagenChamber + Pawnmorph.JobDriver_EnterMutagenChamber + entering mutagen chamber. + EnteredCryptosleep + true + + + + CarryToMutagenChamber + Pawnmorph.JobDriver_CarryToMutagenChamber + carrying TargetA to mutagen chamber. + false + PutIntoCryptosleep + + + + PM_CarrySpecialToMutagenChamber + Pawnmorph.Jobs.Driver_DeliverThingToChamber + carrying TargetA to mutagen chamber. + false + + diff --git a/1.5/Defs/JobDefs/PawnInteractionJobs.xml b/1.5/Defs/JobDefs/PawnInteractionJobs.xml new file mode 100644 index 000000000..51be030d8 --- /dev/null +++ b/1.5/Defs/JobDefs/PawnInteractionJobs.xml @@ -0,0 +1,16 @@ + + + PM_TransformPrisoner + Pawnmorph.Jobs.Driver_TransformPrisoner + transforming TargetA. + true + true + + + + RecruitSapientFormerHuman + Pawnmorph.Jobs.Driver_RecruitSapientFormerHuman + recruiting TargetA + true + + \ No newline at end of file diff --git a/1.5/Defs/JobDefs/PawnProductionJobs.xml b/1.5/Defs/JobDefs/PawnProductionJobs.xml new file mode 100644 index 000000000..fbaa3bb48 --- /dev/null +++ b/1.5/Defs/JobDefs/PawnProductionJobs.xml @@ -0,0 +1,41 @@ + + + PMLayEgg + Pawnmorph.Jobs.Driver_LayEgg + laying egg. + false + true + + + + PMMilkSelf + Pawnmorph.Jobs.Driver_MilkSelf + milking myself. + false + true + + + + PMDrainChemcyst + Pawnmorph.Jobs.Driver_DrainChemcyst + draining my chemcyst. + false + true + + + + PMShaveSelf + Pawnmorph.Jobs.Driver_ShaveSelf + shaving myself. + false + true + + + + PMHuntingForMushrooms + Pawnmorph.Jobs.Driver_TerrainProduction + foraging for mushrooms. + 8000 + Meditative + + \ No newline at end of file diff --git a/1.5/Defs/Joy/JoyGivers.xml b/1.5/Defs/Joy/JoyGivers.xml new file mode 100644 index 000000000..37ff5f518 --- /dev/null +++ b/1.5/Defs/Joy/JoyGivers.xml @@ -0,0 +1,20 @@ + + + HuntingForMushrooms + Pawnmorph.Joy.Giver_TerrainProduction + 1 + PMHuntingForMushrooms + Meditative + +
  • + + false + +
  • EtherBoarSnout
  • +
  • EtherPigSnout
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/LetterDefs/FormerHumanJoins.xml b/1.5/Defs/LetterDefs/FormerHumanJoins.xml new file mode 100644 index 000000000..86117dd2b --- /dev/null +++ b/1.5/Defs/LetterDefs/FormerHumanJoins.xml @@ -0,0 +1,8 @@ + + + + PMFormerHumanJoinRequest + (175, 176, 185) + Pawnmorph.Letters.ChoiceLetter_FormerHumanJoins + + diff --git a/1.5/Defs/MainButtonDefs.xml b/1.5/Defs/MainButtonDefs.xml new file mode 100644 index 000000000..fff6c878a --- /dev/null +++ b/1.5/Defs/MainButtonDefs.xml @@ -0,0 +1,12 @@ + + + PM_ChamberDatabaseButton + + Catalogs your stored mutations and animal genomes over your arrays of genebanks.\n\n(Hold control to revert to default location and size) + Pawnmorph.MainTabWindow_ChamberDatabase + 75 + true + True + UI/Buttons/Genebanks + + \ No newline at end of file diff --git a/1.5/Defs/ManeuverDef.xml b/1.5/Defs/ManeuverDef.xml new file mode 100644 index 000000000..6534b4d69 --- /dev/null +++ b/1.5/Defs/ManeuverDef.xml @@ -0,0 +1,56 @@ + + + MutagenicCut + MutagenicCut + + Verb_MeleeAttackDamage + MutagenicCut + + MeleeAttack + Maneuver_Slash_MeleeHit + Maneuver_Slash_MeleeDeflect + Maneuver_Slash_MeleeMiss + Maneuver_Slash_MeleeDodge + + + + MutagenicStun + MutagenicStun + + Verb_MeleeAttackDamage + MutagenicStun + + Maneuver_Poke_MeleeHit + Maneuver_Poke_MeleeDeflect + Maneuver_Poke_MeleeMiss + Maneuver_Poke_MeleeDodge + + + + MutagenicStab + MutagenicStab + + Verb_MeleeAttackDamage + MutagenicStab + + MeleeAttack + Maneuver_Stab_MeleeHit + Maneuver_Stab_MeleeDeflect + Maneuver_Stab_MeleeMiss + Maneuver_Stab_MeleeDodge + + + + MutagenicPoke + MutagenicPoke + + Verb_MeleeAttackDamage + MutagenicPoke + + MeleeAttack + Maneuver_Poke_MeleeHit + Maneuver_Poke_MeleeDeflect + Maneuver_Poke_MeleeMiss + Maneuver_Poke_MeleeDodge + + \ No newline at end of file diff --git a/1.5/Defs/MentalBreakDefs/FormerHumanBreaks.xml b/1.5/Defs/MentalBreakDefs/FormerHumanBreaks.xml new file mode 100644 index 000000000..ddcc1d623 --- /dev/null +++ b/1.5/Defs/MentalBreakDefs/FormerHumanBreaks.xml @@ -0,0 +1,54 @@ + + + HuntingBreak + HuntingBreak + 0.333 + Major + +
  • + + true + +
  • Sapient
  • + + + +
  • + 20 +
  • +
    +
    + + HuntingBreak + Pawnmorph.Mental.State_Hunting + Pawnmorph.Mental.StateWorker_Hunt + + Aggro + false + 6200 + 0.078 + 9000 + true + SapientAnimalHuntingBreakCatharsis + true + (0.98,0.48,0.16) + {0} has finished hunting {prey} + {0} is hunting {prey} + NegativeEvent + Mental state: Hunting + true + +
  • + + true + +
  • Sapient
  • + + + +
  • + 20 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/AbstractMorphDefs.xml b/1.5/Defs/MorphsAndMutationDefs/AbstractMorphDefs.xml new file mode 100644 index 000000000..69eb5e3dc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/AbstractMorphDefs.xml @@ -0,0 +1,23 @@ + + + + + + + MorphAteAnimalMeatDirect + MorphAteAnimalMeatAsIngredient + + + + + + + +
  • Chimera
  • +
    + true + FullRandomTFAnyOutcome + FullRandomTF + Animal +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Animal_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Animal_MorphDef.xml new file mode 100644 index 000000000..e8702ae69 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Animal_MorphDef.xml @@ -0,0 +1,5 @@ + + + Animal + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Animal_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Animal_Parts.xml new file mode 100644 index 000000000..e9f5f941b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Animal_Parts.xml @@ -0,0 +1,228 @@ + + + + Parts/None/None + + +
  • + initial + + 0.01 + [PAWN_nameDef]'s nose has been feeling stuffy lately and [PAWN_pronoun] has been seen vigourously scratching [PAWN_possessive] face. It's probably nothing to worry about. Right? + + Parts/None/None + Parts/None/None + Parts/None/None + + +
  • +
  • + pressing + + The bones of [PAWN_nameDef]'s jaw and chin have started growing outwards, painfully pressing out into an inhuman shape. + 0.1 + + Parts/None/None + Parts/None/None + + +
  • + Talking + -0.1 +
  • +
  • + Eating + -0.1 +
  • + + + +
  • + growing + + [PAWN_nameDef]'s face continues to change, with nose, jaw, chin, and all looking more and more like an animal's snout. + + Parts/None/None + Parts/None/None + + 0.2 + +
  • + Talking + -0.2 +
  • +
  • + Eating + -0.1 +
  • + + + +
  • + adapting + + An animalistic snout graces [PAWN_nameDef]'s face. The strange shape makes speaking very difficult. + +
  • + Talking + -0.2 +
  • + + + +
  • + adapted + + An animalistic snout graces [PAWN_nameDef]'s face. Adapting to it has made speaking less frustrating. + +
  • + Talking + -0.1 +
  • +
  • + Eating + 0.2 +
  • + + + +
  • + paragon + + An imposing animalistic snout graces [PAWN_nameDef]'s face, perfectly adapted for human speech. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + Eating + 0.3 +
  • + + + +
    +
    + + + + Parts/None/None + Parts/None/None + Parts/None/None + Parts/None/None + + +
  • + initial + + [PAWN_nameDef] has been scratching this ear a lot recently. + + Parts/None/None + Parts/None/None + Parts/None/None + Parts/None/None + + +
  • +
  • + pressing + + [PAWN_nameDef]'s ear is growing. + + Parts/Partials/Todo/Todo + Parts/Partials/Todo/Todo + Parts/Partials/Todo/Todo + Parts/Partials/Todo/Todo + + +
  • +
  • + growing + + [PAWN_nameDef]'s ear looks more and more animal. + + Parts/Partials/PointyEar/PointyEar_Left_Behind + Parts/Partials/PointyEar/PointyEar_Right + Parts/Partials/PointyEar/PointyEar_Right_Behind + Parts/Partials/PointyEar/PointyEar_Left + + +
  • +
  • + grown + + [PAWN_nameDef]'s ear is like an animal's. + +
  • +
    +
    + + + + Parts/None/None + + +
  • + initial + + [PAWN_nameDef]'s back feels a bit strange, but nothing that unusual. + + Parts/None/None + Parts/None/None + Parts/None/None + + +
  • +
  • + pressing + + A tail is growing behind [PAWN_nameDef]. + + Parts/Partials/Todo/Todo + Parts/None/None + Parts/None/None + + +
  • +
  • + growing + + [PAWN_nameDef]'s tail is getting longer and longer. + + Parts/Partials/Todo/Todo + Parts/None/None + Parts/None/None + + +
  • +
  • + grown + + [PAWN_nameDef] has an animal tail. + +
  • +
    +
    + + + +
  • + initial + + + Protrusions of bone are growing from [PAWN_nameDef]'s scalp. They're short and blunt for the moment, but seem to be growing longer all the time. + + Parts/None/None + + +
  • +
  • + nubs + + Small horn nubs top [PAWN_nameDef]'s head, which add a heft to a headbutt. They are small for now, and will take many weeks to grow to full size. + + Parts/None/None + + +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_MorphDef.xml new file mode 100644 index 000000000..d1495520b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_MorphDef.xml @@ -0,0 +1,5 @@ + + + Anseriform + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_Parts.xml new file mode 100644 index 000000000..524d3856b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Anseriform_Parts.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Backstories.xml new file mode 100644 index 000000000..0523767ef --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Backstories.xml @@ -0,0 +1,23 @@ + + + ChookmorphGeneral + prize chicken + chookmorph + [PAWN_nameDef] was sold to a farmer with less-than-ethical business practices, and quickly made [PAWN_nameDef] part of the coop. [PAWN_pronoun] was allowed to leave once [PAWN_pronoun]'d "paid [PAWN_possessive] due." + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • ChookMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Full.xml new file mode 100644 index 000000000..546cde97c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphChickenTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a chookmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ChookMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ChookMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Memories.xml new file mode 100644 index 000000000..994571b47 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Memories.xml @@ -0,0 +1,55 @@ + + + + ChickenTransformationMemory + +
  • + + I'm... covered in feathers... OUCH! What!? Did I just lay an *egg*! Oh no... + -3 +
  • +
  • + + I'm all feathery, and these wings are nea- BWAK! What the- An egg! Neat! + +3 +
  • +
  • + + Oh man, these feathers are disgusting, and the talons look fr- BWAK! What the — oh no... please tell me that's not an egg... + -5 +
  • +
  • + + These feathers and talons are so good, and laying eggs! If only I could just settle down in a nesting box. + +1 +
  • +
    +
    + + + ChickenRevertedMemory + +
  • + + I'm back to my normal, human self again! No more laying eggs. Or eating eggs, please. + 3 +
  • +
  • + + But the feathers! The *eggs*! Didn't you like the breakfast I made? + -3 +
  • +
  • + + Hands and feet. And most important, no more eggs. EVER. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_MorphDef.xml new file mode 100644 index 000000000..ea9918421 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_MorphDef.xml @@ -0,0 +1,23 @@ + + + ChookMorph + + A human who now shares many features with chickens due to exposure to mechanite mutagens. Usually found covered in feathers, and arms more resembling wings. For odd reasons, both genders are capable of producing eggs. + Chicken + +
  • Domestic
  • +
    + PawnmorphChickenTF + PawnmorphChickenTFPartial + + + (200,150,85) + (255,255,255) + + + + ChickenTransformationMemory + ChickenRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Partial.xml new file mode 100644 index 000000000..43f8c804f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphChickenTFPartial + + This person has mechanites in their blood that are providing them with chicken-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ChookMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml new file mode 100644 index 000000000..b7e78a3da --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml @@ -0,0 +1,106 @@ + + + EtherChickenBeak + ChookMorph + + + + + Parts/Chicken/Chicken_Muzzle_Female + Parts/Chicken/Chicken_Muzzle_Male + + + + +
  • + adapting + + A beak graces [PAWN_nameDef]'s face, like that of an chicken. They may bok and cluck about birdlike things. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A beak graces [PAWN_nameDef]'s face, like that of an chicken. They may bok and cluck about birdlike things. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A beak graces [PAWN_nameDef]'s face, like that of an chicken. They may bok and cluck about birdlike things. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherChickenTailfeathers + ChookMorph + + + + + Parts/Chicken/Chicken_Tail_Female + Parts/Chicken/Chicken_Tail_Male + + + + + + + EtherEggLayer + ChookMorph + + +
  • + LaidEgg + Pawnmorph.Jobs.Giver_LayEgg + Male + LaidEggMale + LaidEggBond + LaidEggBroken + EggChickenUnfertilized + TFEgg + +
  • + 0 + 1 + 1 + 50 +
  • +
  • + 0.3 + 0.5 + 1 + 70 + 1.3 +
  • +
  • + 0.6 + 0.2 + 1 + 90 + 1.6 +
  • +
  • + 0.9 + 0.1 + 1 + 99 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Tales.xml new file mode 100644 index 000000000..0794a6b68 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Tales.xml @@ -0,0 +1,79 @@ + + + + GrewBeak + + + +
  • tale_noun->[PAWN_nameDef]'s lips hardening into a beak
  • +
  • tale_noun->[PAWN_nameDef]'s face growing into an avian beak
  • +
  • image->[PAWN_nameFull] yells becoming squawks [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to bok involuntarily [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] lets out a few sad boks.
  • +
  • desc_sentence->[PAWN_pronoun] rubs [PAWN_possessive] new beak.
  • +
  • desc_sentence->[PAWN_pronoun] crows and tries to pull the beak off.
  • +
  • desc_sentence->[PAWN_pronoun] boks absentmindedly.
  • +
    +
    +
    + + + ArmsBecomeWings + + + +
  • tale_noun->feathers growing from [PAWN_nameDef]'s arms
  • +
  • tale_noun->feathers covering [PAWN_nameDef]'s arms
  • +
  • image->[PAWN_nameFull] arms begins to change [circumstance_group]
  • +
  • image->[PAWN_nameFull] arms change into wings [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] rubs [PAWN_possessive] new wings.
  • +
  • desc_sentence->[PAWN_pronoun] flaps [PAWN_possessive] new wings.
  • +
    +
    +
    + + + LimbGrowsFeathers + + + +
  • tale_noun->[PAWN_nameDef]'s body being covered in feathers
  • +
  • tale_noun->[PAWN_nameDef] growing feathers all over [PAWN_possessive] body
  • +
  • image->[PAWN_nameFull] begins to itch themselves as feathers start growing [circumstance_group]
  • +
  • image->feathers begin to grow from [PAWN_nameFull]'s body [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems upset over [PAWN_possessive] new feathers.
  • +
  • desc_sentence->[PAWN_pronoun] seems pleased with [PAWN_possessive] new feathers.
  • +
    +
    +
    + + + HandsBecomeWingTips + + + +
  • tale_noun->[PAWN_nameDef] hands becoming wing tips
  • +
  • tale_noun->[PAWN_nameDef] hands morphing into wings
  • +
  • image->[PAWN_nameFull]'s fingers begin to merge together [circumstance_group]
  • +
  • image->feathers begin to cover [PAWN_nameFull]'s hands as they change [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] mourns the loss of [PAWN_possessive] thumbs.
  • +
    +
    +
    + + + GrewEgglayer + + + +
  • tale_noun->[PAWN_nameDef] beginning to lay eggs
  • +
  • image->[PAWN_nameFull] sits down and begins laying eggs [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins laying eggs in a make shift nest [circumstance_group]
  • +
  • circumstance_phrase->as someone begins collecting the eggs
  • +
  • circumstance_phrase->while hiding in a corner
  • +
  • desc_sentence->[PAWN_pronoun] is very embarrassed about laying eggs.
  • +
  • desc_sentence->[PAWN_pronoun] seems surprisingly uncaring about laying eggs.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Backstories.xml new file mode 100644 index 000000000..77b1d2265 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Backstories.xml @@ -0,0 +1,23 @@ + + + TurkeymorphGeneral + turkey + turkeymorph + [PAWN_nameDef] was genetically modified against [PAWN_pronoun] will to be used in a fancy meal by a rich cannibal. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • TurkeyMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Full.xml new file mode 100644 index 000000000..c25c0fdf5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphTurkeyTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a turkeymorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + TurkeyMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + TurkeyMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Memories.xml new file mode 100644 index 000000000..abd24a48f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Memories.xml @@ -0,0 +1,55 @@ + + + + TurkeyTransformationMemory + +
  • + + This thing on my... beak... is gross... + -3 +
  • +
  • + + These tailfeathers are really cool. + +3 +
  • +
  • + + What... is this thing hanging from my face?! + -5 +
  • +
  • + + These feathers and talons are so cool! + +1 +
  • +
    +
    + + + TurkeyRevertedMemory + +
  • + + I'm back to my normal, human self again! + 3 +
  • +
  • + + But the feathers were so cool... + -3 +
  • +
  • + + Hands, feet, and a normal face. Thank Randy. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_MorphDef.xml new file mode 100644 index 000000000..2d41a4323 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_MorphDef.xml @@ -0,0 +1,26 @@ + + + TurkeyMorph + + A human who now shares many features with turkeys due to exposure to mechanite mutagens. Usually found covered in feathers, and arms more resembling wings. For odd reasons, both genders can fan their tailfeathers. + Turkey + +
  • Domestic
  • +
  • Temperate
  • +
    + PawnmorphTurkeyTF + PawnmorphTurkeyTFPartial + + + (57,63,74) + (93,67,54) + (148,122,93) + (93,67,54) + + + + TurkeyTransformationMemory + TurkeyRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Partial.xml new file mode 100644 index 000000000..67ad39825 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphTurkeyTFPartial + + This person has mechanites in their blood that are providing them with turkey-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + TurkeyMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Parts.xml new file mode 100644 index 000000000..644bb3d77 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Turkey/Turkey_Parts.xml @@ -0,0 +1,40 @@ + + + EtherTurkeyBeak + TurkeyMorph + + + Parts/Turkey/Turkey_Muzzle + + +
  • + adapting + + A beak graces [PAWN_nameDef]'s face, like that of a turkey. A snood extends from the top of the beak down. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A beak graces [PAWN_nameDef]'s face, like that of a turkey. A snood extends from the top of the beak down. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A beak graces [PAWN_nameDef]'s face, like that of a turkey. A snood extends from the top of the beak down. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherTurkeyTailfeathers + TurkeyMorph + + + Parts/Turkey/Turkey_Tail + Parts/Turkey/Turkey_Tail_Behind + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_MorphDef.xml new file mode 100644 index 000000000..37e3597ce --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_MorphDef.xml @@ -0,0 +1,8 @@ + + + Anserigalliform + +
  • Production
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_Parts.xml new file mode 100644 index 000000000..f57ca22ff --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anserigalliform_Parts.xml @@ -0,0 +1,69 @@ + + + +
  • + adapting + + +
  • + Manipulation + 0.05 +
  • + + + +
  • + adapted + + +
  • + Manipulation + 0.1 +
  • + + + +
  • + paragon + + +
  • + Manipulation + 0.15 +
  • + + + +
    +
    + + + +
  • + growing + + +
  • + Moving + +0.025 +
  • + + + +
  • + grown + + +
  • + Moving + +0.05 +
  • + + + +
    +
    + + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Backstories.xml new file mode 100644 index 000000000..c9e326289 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Backstories.xml @@ -0,0 +1,23 @@ + + + DuckmorphChef + foodie + duckmorph + [PAWN_nameDef] was a patron of a 5-star restaurant. After a mutagenic attack by an eco terrorist group, [PAWN_nameDef] was left looking like [PAWN_pronoun] should be served coated in an orange sauce. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • DuckMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Full.xml new file mode 100644 index 000000000..56c104bfd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphDuckTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a duckmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + DuckMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DuckMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Memories.xml new file mode 100644 index 000000000..4c4f64bff --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Memories.xml @@ -0,0 +1,55 @@ + + + + DuckTransformationMemory + +
  • + + I'm- QUACK! covered in feathers- QUACK! + -3 +
  • +
  • + + They way these feathers feel is amazing! Now where can I find some bread... + +3 +
  • +
  • + + Oh man, I look like some kind of monster. I want revenge on the QUACK that did this to me. + -5 +
  • +
  • + + Quack quack qauck quack. + +1 +
  • +
    +
    + + + DuckRevertedMemory + +
  • + + I'm back to my normal, human self again! No more feathers... + 3 +
  • +
  • + + But the feathers! My beak! I would have preferred to stay that way. + -3 +
  • +
  • + + Hands at last. I can go the rest of my life without eating bread. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_MorphDef.xml new file mode 100644 index 000000000..4d9b74800 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_MorphDef.xml @@ -0,0 +1,25 @@ + + + DuckMorph + + A human who now shares many features with ducks due to exposure to mechanite mutagens. Usually found covered in feathers and with a duck beak. + Duck + +
  • Domestic
  • +
    + PawnmorphDuckTF + PawnmorphDuckTFPartial + + + (139,103,81) + (207,176,156) + (48,126,78) + (207,176,156) + + + + DuckTransformationMemory + DuckRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Partial.xml new file mode 100644 index 000000000..b70e1a2ab --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphDuckTFPartial + + This person has mechanites in their blood that are providing them with duck-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DuckMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Parts.xml new file mode 100644 index 000000000..787ceffa3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Parts.xml @@ -0,0 +1,97 @@ + + + EtherDuckBeak + DuckMorph + + GrewDuckBeak + + Parts/Duck/Duck_Muzzle + + +
  • + adapting + + A flat beak graces [PAWN_nameDef]'s face, like that of a duck. They may quack about bread or ponds. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A flat beak graces [PAWN_nameDef]'s face, like that of a duck. They may quack about bread or ponds. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A flat beak graces [PAWN_nameDef]'s face, like that of a duck. They may quack about bread or ponds. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherDuckTailfeathers + DuckMorph + + + Parts/Duck/Duck_Tail + + + + + EtherDuckEggLayer + DuckMorph + + +
  • + LaidEgg + Pawnmorph.Jobs.Giver_LayEgg + Male + LaidEggMale + LaidEggBond + LaidEggBroken + EggDuckUnfertilized + TFEgg + +
  • + 0 + 1 + 1 + 50 +
  • +
  • + 0.3 + 0.5 + 1 + 70 + 1.3 +
  • +
  • + 0.6 + 0.2 + 1 + 90 + 1.6 +
  • +
  • + 0.9 + 0.1 + 1 + 99 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Tales.xml new file mode 100644 index 000000000..258af2356 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Duck/Duck_Tales.xml @@ -0,0 +1,19 @@ + + + + GrewDuckBeak + + + +
  • tale_noun->[PAWN_nameDef]'s lips hardening into a beak
  • +
  • tale_noun->[PAWN_nameDef]'s face growing into a flat avian beak
  • +
  • image->[PAWN_nameFull] yells becoming quacking [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to quack involuntarily [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] lets out a few sad quacks.
  • +
  • desc_sentence->[PAWN_pronoun] rubs [PAWN_possessive] new beak.
  • +
  • desc_sentence->[PAWN_pronoun] quacks and tries to pull the beak off.
  • +
  • desc_sentence->[PAWN_pronoun] quacks absentmindedly.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_MorphDef.xml new file mode 100644 index 000000000..386744726 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_MorphDef.xml @@ -0,0 +1,5 @@ + + + Galliform + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_Parts.xml new file mode 100644 index 000000000..9d00a59a2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Galliform_Parts.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Backstories.xml new file mode 100644 index 000000000..7c5ad0171 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Backstories.xml @@ -0,0 +1,23 @@ + + + GoosemorphPurist + anatidaephobe + goosemorph + After having a lakeside picnic ruined by geese, [PAWN_nameDef]'s peck injuries were infected with mutagenic pollution in the lake. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • GooseMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Full.xml new file mode 100644 index 000000000..7705e4430 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphGooseTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a goosemorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + GooseMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GooseMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Memories.xml new file mode 100644 index 000000000..7f3c19e21 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Memories.xml @@ -0,0 +1,53 @@ + + + GooseTransformationMemory + +
  • + + I'm- HONK! covered in feathers- HONK! + -3 +
  • +
  • + + I think I could tie up this look with a red bow around my neck. + +3 +
  • +
  • + + Change me back! I- HONK! -ing hate geese! + -5 +
  • +
  • + + Honk! Honk honk! + +1 +
  • +
    +
    + + + GooseRevertedMemory + +
  • + + I'm back to my normal, human self again! No more feathers... + 3 +
  • +
  • + + But the feathers! My beak! I would have preferred to stay that way. + -3 +
  • +
  • + + Hands at last. I'd prefer not to be a demon-spawn bird. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_MorphDef.xml new file mode 100644 index 000000000..b60679532 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_MorphDef.xml @@ -0,0 +1,23 @@ + + + GooseMorph + + A human who now shares many features with geese due to exposure to mechanite mutagens. They are usually coated in white feathers and have large goose beaks. They can be very loud. + Goose + +
  • Domestic
  • +
    + PawnmorphGooseTF + PawnmorphGooseTFPartial + + + (255,255,255) + (255,255,255) + + + + GooseTransformationMemory + GooseRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Partial.xml new file mode 100644 index 000000000..d02d768bc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphGooseTFPartial + + This person has mechanites in their blood that are providing them with goose-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GooseMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Parts.xml new file mode 100644 index 000000000..92154d3d0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Parts.xml @@ -0,0 +1,97 @@ + + + EtherGooseBeak + GooseMorph + + GrewGooseBeak + + Parts/Goose/Goose_Muzzle + + +
  • + adapting + + A large beak graces [PAWN_nameDef]'s face, like that of a goose. They may shout and honk about. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A large beak graces [PAWN_nameDef]'s face, like that of a goose. They may shout and honk about. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A large beak graces [PAWN_nameDef]'s face, like that of a goose. They may shout and honk about. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherGooseTailfeathers + GooseMorph + + + Parts/Goose/Goose_Tail + + + + + EtherGooseEggLayer + GooseMorph + + +
  • + LaidEgg + Pawnmorph.Jobs.Giver_LayEgg + Male + LaidEggMale + LaidEggBond + LaidEggBroken + EggGooseUnfertilized + TFEgg + +
  • + 0 + 1 + 1 + 50 +
  • +
  • + 0.3 + 0.5 + 1 + 70 + 1.3 +
  • +
  • + 0.6 + 0.2 + 1 + 90 + 1.6 +
  • +
  • + 0.9 + 0.1 + 1 + 99 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Tales.xml new file mode 100644 index 000000000..0692ae036 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Galliform/Goose/Goose_Tales.xml @@ -0,0 +1,19 @@ + + + + GrewGooseBeak + + + +
  • tale_noun->[PAWN_nameDef]'s lips hardening into a beak
  • +
  • tale_noun->[PAWN_nameDef]'s face growing into a goose beak
  • +
  • image->[PAWN_nameFull] yells becoming honking [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to honk involuntarily [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] lets out a few sad honks.
  • +
  • desc_sentence->[PAWN_pronoun] rubs [PAWN_possessive] new beak.
  • +
  • desc_sentence->[PAWN_pronoun] honks and tries to pull the beak off.
  • +
  • desc_sentence->[PAWN_pronoun] honks absentmindedly.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Memories.xml new file mode 100644 index 000000000..9e24be5be --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Memories.xml @@ -0,0 +1,53 @@ + + + + 1 + EtherAvianJaw + +
  • + + I can't talk properly with this stupid beak! + true + -1 +
  • +
  • + + Time to peck everyone I don't like. + true + 2 +
  • +
  • + + My face! This is awf-bawk! + true + -3 +
  • +
    +
    + + + 1 + EtherAvianTail + +
  • + + ...does this make my butt look big? + true + -1 +
  • +
  • + + It's kind of fun to wiggle it. + true + 1 +
  • +
  • + + I look like a damn bird, whyyyy?! + true + -2 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_MorphDef.xml new file mode 100644 index 000000000..fb033b5ce --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_MorphDef.xml @@ -0,0 +1,6 @@ + + + Avian + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Parts.xml new file mode 100644 index 000000000..505e33902 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Avian_Parts.xml @@ -0,0 +1,110 @@ + + + EtherAvianJaw + +
  • + +
  • + + False + +
  • Bite
  • + + 15 + 3 + true + + + +
    + +
  • + initial + + The skin on [PAWN_nameDef]'s lips has begun to harden and crack. What's happening here? + +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + [PAWN_nameDef]'s jaw bones have begun to grow outwards and [PAWN_possessive] lips have stretched thin and turned hard. It's starting to look like... a beak? + + Parts/Partials/PartialMuzzle/PartialBeak + + +
  • + + 0 + 0 +
  • + + + +
  • + growing + + [PAWN_nameDef] has been watching [PAWN_possessive] nose flatten and stretch as [PAWN_possessive] new beak continues to grow outwards. + + Parts/Partials/PartialMuzzle/PartialBeak + + +
  • + + 8 + 0.5 +
  • + + + +
  • + adapting + + +
  • + + 12.7 + 0.5 +
  • + + + +
  • + adapted + + +
  • + + 12.7 + 1 +
  • + + + +
  • + paragon + + +
  • + + 12.7 + 1 +
  • + + + +
    +
    + + + A plume of feathers sprouting out of the back. + EtherAvianTail + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Backstory.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Backstory.xml new file mode 100644 index 000000000..8e28a4c91 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Backstory.xml @@ -0,0 +1,23 @@ + + + CassowarymorphGeneral + manhunter victim + cassowarymorph + [PAWN_nameDef]'s previous colony was attacked by a group of manhunting cassowaries. After the attack, [PAWN_nameDef] woke up like this to a destroyed colony. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • CassowaryMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Full.xml new file mode 100644 index 000000000..00e474303 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphCassowaryTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a cassowarymorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + CassowaryMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CassowaryMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Memories.xml new file mode 100644 index 000000000..619ce41eb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Memories.xml @@ -0,0 +1,55 @@ + + + + CassowaryTransformationMemory + +
  • + + Why do I feel like attacking the next person I see? + -3 +
  • +
  • + + These legs feel so powerful! This beak looks so threatening! + +3 +
  • +
  • + + These feathers are coarse and disgusting. Is this a tumor growing out of my head?! + -5 +
  • +
  • + + I never thought I could feel so strong with avian genes! + +1 +
  • +
    +
    + + + CassowaryRevertedMemory + +
  • + + I'm back to normal! I very much prefer not being a living dinosaur. + 3 +
  • +
  • + + Awww... I'll miss those strong legs. + -3 +
  • +
  • + + No more rough feathers. I'm not going to miss that growth on my head either. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_MorphDef.xml new file mode 100644 index 000000000..d5e4e856f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_MorphDef.xml @@ -0,0 +1,25 @@ + + + CassowaryMorph + + A human who now shares many features with cassowaries due to exposure to mechanite mutagens. They usually have sharp talons and large beaks. Their glare can frighten even the best melee fighters. + Cassowary + +
  • Tropical
  • +
    + PawnmorphCassowaryTF + PawnmorphCassowaryTFPartial + + + (76,83,100) + (76,83,100) + (150,200,225) + (150,200,225) + + + + CassowaryTransformationMemory + CassowaryRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Partial.xml new file mode 100644 index 000000000..fd68c89e1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphCassowaryTFPartial + + This person has mechanites in their blood that are providing them with cassowary-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CassowaryMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Parts.xml new file mode 100644 index 000000000..5549609d8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Cassowary/Cassowary_Parts.xml @@ -0,0 +1,46 @@ + + + EtherCassowaryBeak + CassowaryMorph + + + Parts/Cassowary/Cassowary_Muzzle + Parts/Cassowary/Cassowary_Ornament + + +
  • + adapting + + A beak graces [PAWN_nameDef]'s face, like that of a cassowary. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A beak graces [PAWN_nameDef]'s face, like that of a cassowary. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A beak graces [PAWN_nameDef]'s face, like that of a cassowary. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherCassowaryTailfeathers + CassowaryMorph + + + Parts/Cassowary/Cassowary_Tail + + + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Backstory.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Backstory.xml new file mode 100644 index 000000000..e90c233e6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Backstory.xml @@ -0,0 +1,23 @@ + + + EmumorphGeneral + paleo enthusiast + emumorph + When [PAWN_nameDef] agreed to genetic modification that would make them more like a dinosaur, this isn't what [PAWN_pronoun] had in mind. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • EmuMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Full.xml new file mode 100644 index 000000000..6ca6499d3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphEmuTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an emumorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + EmuMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + EmuMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Memories.xml new file mode 100644 index 000000000..407935e55 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Memories.xml @@ -0,0 +1,55 @@ + + + + EmuTransformationMemory + +
  • + + I don't think I can get used to walking around like this. + -3 +
  • +
  • + + I can run so quickly now! + +3 +
  • +
  • + + These feathers are coarse and disgusting. I don't want to be an overgrown chicken! + -5 +
  • +
  • + + This is pretty cool. I wonder how fast I can run now. + +1 +
  • +
    +
    + + + EmuRevertedMemory + +
  • + + I'm back to normal! I very much prefer not being a living dinosaur. + 3 +
  • +
  • + + Awww... I'll miss those fast legs. + -3 +
  • +
  • + + No more rough feathers! No more beak! + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_MorphDef.xml new file mode 100644 index 000000000..9736a41bc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_MorphDef.xml @@ -0,0 +1,25 @@ + + + EmuMorph + + A human who now shares many features with emus due to exposure to mechanite mutagens. Usually found covered in feathers, and stubby arms more resembling wings. They are great runners. + Emu + +
  • Arid
  • +
    + PawnmorphEmuTF + PawnmorphEmuTFPartial + + + (105,90,78) + (105,90,78) + (33,32,30) + (33,32,30) + + + + EmuTransformationMemory + EmuRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Partial.xml new file mode 100644 index 000000000..653b007a9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphEmuTFPartial + + This person has mechanites in their blood that are providing them with Emu-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + EmuMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Parts.xml new file mode 100644 index 000000000..ca70ce042 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Emu/Emu_Parts.xml @@ -0,0 +1,45 @@ + + + EtherEmuBeak + EmuMorph + + + Parts/Emu/Emu_Muzzle + + +
  • + adapting + + A beak graces [PAWN_nameDef]'s face, like that of an emu. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A beak graces [PAWN_nameDef]'s face, like that of an emu. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A beak graces [PAWN_nameDef]'s face, like that of an emu. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherEmuTailfeathers + EmuMorph + + + Parts/Emu/Emu_Tail + + + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Backstory.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Backstory.xml new file mode 100644 index 000000000..9dee23a03 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Backstory.xml @@ -0,0 +1,23 @@ + + + OstrichmorphGeneral + track runner + ostrichmorph + [PAWN_nameDef] was a runner in desperate need of a 1st place trophy. Unfortunately, the performance enhancing drugs did more than just make [PAWN_nameDef] a better runner. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • OstrichMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Full.xml new file mode 100644 index 000000000..59179c333 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphOstrichTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an ostrichmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more avian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + OstrichMorph + + + + TransformationChicken + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + OstrichMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Memories.xml new file mode 100644 index 000000000..07732ebd0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Memories.xml @@ -0,0 +1,55 @@ + + + + OstrichTransformationMemory + +
  • + + I don't think I can get used to walking around like this. + -3 +
  • +
  • + + Is anyone up for a race? + +3 +
  • +
  • + + These feathers are coarse and disgusting. I don't want to be an overgrown chicken! + -5 +
  • +
  • + + This is pretty cool. I wonder how fast I can run now. + +1 +
  • +
    +
    + + + OstrichRevertedMemory + +
  • + + I'm back to normal! I very much prefer not being a living dinosaur. + 3 +
  • +
  • + + Awww... I'll miss those fast legs. + -3 +
  • +
  • + + No more rough feathers! No more beak! + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_MorphDef.xml new file mode 100644 index 000000000..7ab47a75d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_MorphDef.xml @@ -0,0 +1,23 @@ + + + OstrichMorph + + A human who now shares many features with ostriches due to exposure to mechanite mutagens. Usually found covered in feathers, and arms more resembling wings. They are capable of running very fast. + Ostrich + +
  • Arid
  • +
    + PawnmorphOstrichTF + PawnmorphOstrichTFPartial + + + (103,86,76) + (103,86,76) + + + + OstrichTransformationMemory + OstrichRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Partial.xml new file mode 100644 index 000000000..4582282fb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphOstrichTFPartial + + This person has mechanites in their blood that are providing them with Ostrich-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + OstrichMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Parts.xml new file mode 100644 index 000000000..66fec9ba4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ostrich/Ostrich_Parts.xml @@ -0,0 +1,45 @@ + + + EtherOstrichBeak + OstrichMorph + + + Parts/Ostrich/Ostrich_Muzzle + + +
  • + adapting + + A beak graces [PAWN_nameDef]'s face, like that of an ostrich. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A beak graces [PAWN_nameDef]'s face, like that of an ostrich. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A beak graces [PAWN_nameDef]'s face, like that of an ostrich. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherOstrichTailfeathers + OstrichMorph + + + Parts/Ostrich/Ostrich_Tail + + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_MorphDef.xml new file mode 100644 index 000000000..f7d69d879 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_MorphDef.xml @@ -0,0 +1,8 @@ + + + Ratite + +
  • Combat
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_Parts.xml new file mode 100644 index 000000000..acdbcda1d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Ratite/Ratite_Parts.xml @@ -0,0 +1,84 @@ + + + +
  • + adapting + + +
  • + + 0.5 + 10 +
  • + + +
  • + Manipulation + 0.05 +
  • +
    + + +
  • + adapted + + +
  • + + 0.5 + 14 +
  • + + +
  • + Manipulation + 0.15 +
  • +
    + + +
  • + paragon + + +
  • + + 1 + 14 +
  • + + +
  • + Manipulation + 0.20 +
  • +
    + + +
    +
    + + + EtherRatiteTailfeathers + A plume of coarse feathers sprouting from a bird tail above the gluteus maximus. + + +
  • + growing + + + 2.5 + + +
  • +
  • + grown + + + 5 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_MorphDef.xml new file mode 100644 index 000000000..d3e5dde17 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_MorphDef.xml @@ -0,0 +1,8 @@ + + + Powerful + +
  • Powerful
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_Parts.xml new file mode 100644 index 000000000..e94f8b12d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Megafauna_Parts.xml @@ -0,0 +1,50 @@ + + + +
  • Powerful
  • +
    + +
  • + initial + + [PAWN_nameDef] has been rubbing his jaw and grunting in discomfort. Maybe [PAWN_pronoun] has a tooth ache? + +
  • +
  • + pressing + + [PAWN_nameDef]'s jaw, face, head, it's all growing! Flesh and bone twisting and pushing into something... big. + + Parts/Partials/PartialMuzzle/PartialSnout + + +
  • +
  • + growing + + + Parts/Partials/PartialMuzzle/PartialSnout + + +
  • +
    +
    + + + +
  • Powerful
  • +
    +
    + + + +
  • Powerful
  • +
    +
    + + + +
  • Powerful
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Full.xml new file mode 100644 index 000000000..fb0faa3c2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Full.xml @@ -0,0 +1,80 @@ + + + PawnmorphMegaslothTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a megamorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far hairier than normal. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + MegaslothMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MegaslothMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Injector.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Injector.xml new file mode 100644 index 000000000..1cb5759de --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Injector.xml @@ -0,0 +1,15 @@ + + + MegaslothTransformer + + A mutagenic injector filled with mechanites and megasloth DNA. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + PawnmorphMegaslothTF + 1.00 +
  • +
    +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Memories.xml new file mode 100644 index 000000000..a2fda9811 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Memories.xml @@ -0,0 +1,129 @@ + + + MegaslothTransformationMemory + +
  • + + I feel so... slow... and... tired. + -3 +
  • +
  • + + Ahh... time to just stretch out and relax, I think... zzz... + +3 +
  • +
  • + + I don't want... to sleep... + -5 +
  • +
  • + + This is nice, but imagine the full-sized body... much better... + +1 +
  • +
    +
    + + + MegaslothRevertedMemory + +
  • + + I think I've had all the sleep I need for five years. + 3 +
  • +
  • + + Sigh... back to work. + -3 +
  • +
  • + + I actually have energy to do things now! + 10 +
  • +
  • + + This isn't what I wanted. + -5 +
  • +
    +
    + + + 1 + EtherMegaslothSnout + +
  • + + Sooooo...slooooow...can barely speak... + true + -1 +
  • +
  • + + Eating trees sure is fun! + true + 2 +
  • +
  • + + I can...EAT TREES? + true + -3 +
  • +
    +
    + + + 1 + EtherMegaslothTail + +
  • + + This tail is too heavy. Or is it just that I'm slower now? + true + -1 +
  • +
  • + + I can't complain about a massive, fluffy tail! + true + 1 +
  • +
  • + + God, this thing drags dirt everywhere... + true + -2 +
  • +
    +
    + + + 1 + EtherMegawoolly + +
  • + + I feel like I spend every waking minute shaving this stuff off... + true + -1 +
  • +
  • + + It's like a giant, fluffy blanket...and it goes wherever I go! + true + 1 +
  • +
  • + + This wool is thick, hot and itchy...I don't like it one bit! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_MorphDef.xml new file mode 100644 index 000000000..df54b5fea --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_MorphDef.xml @@ -0,0 +1,20 @@ + + + MegaslothMorph + + Slothmorphs are massive herbivorous humanoids covered in fluff. Their fur is very insulating, and can be shaved to make clothing, bedrolls and other fluffy stuff. And no, they won't be your pillow, so don't ask them (it's rude). + Megasloth + MegaslothTransformer + PawnmorphMegaslothTF + PawnmorphMegaslothTFPartial + + + (191,157,113) + + + + MegaslothTransformationMemory + MegaslothRevertedMemory + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Partial.xml new file mode 100644 index 000000000..b88d3d998 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Partial.xml @@ -0,0 +1,35 @@ + + + PawnmorphMegaslothTFPartial + + This person has mechanites in their blood that are providing them with megasloth-esque mutations. + +
  • + 0.1 + 3 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MegaslothMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml new file mode 100644 index 000000000..75a07c7ef --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml @@ -0,0 +1,177 @@ + + + MegaslothMorph + EtherMegaslothSnout + + + + + Parts/Megasloth/Megasloth_Muzzle_Male + Parts/Megasloth/Megasloth_Muzzle_Female + + + + EtherMegaslothSnout + +
  • + growing + + The changes to [PAWN_nameDef]'s face continue. [PAWN_possessive] jaw has grown into a snout with a powerful bite and thick slab of muscle for a toungue. + +
  • +
  • + adapting + + A big and fuzzy snout graces [PAWN_nameDef]'s face, perfectly formed to reap trees of their leaves. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A big and fuzzy snout graces [PAWN_nameDef]'s face, perfectly formed to reap trees of their leaves. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A big and fuzzy snout graces [PAWN_nameDef]'s face, perfectly formed to reap trees of their leaves. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + MegaslothMorph + EtherMegaslothTail + + EtherMegaslothTail + + Parts/Megasloth/Megasloth_Tail + + +
  • + initial + + +
  • + + 0 + 0 +
  • + + + +
  • + growing + + +
  • + + 0.5 + 10 +
  • + + + +
  • + grown + + A big, muscular tail, capable of supporting [PAWN_nameDef]'s whole body on its own. + +
  • + + 1 + 18 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Blunt
  • + + 18.0 + 4 + true + + + +
    +
    + + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Tales.xml new file mode 100644 index 000000000..464418da7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Tales.xml @@ -0,0 +1,67 @@ + + + StartsGrowingMegaslothWool + + + +
  • tale_noun->[PAWN_nameDef] hair lengthening into fur
  • +
  • tale_noun->long fuzzy hair beginning to cover [PAWN_nameDef]'s body
  • +
  • image->[PAWN_nameFull] begins scratching at the fuzzy hair [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to feel very warm and fuzzy [circumstance_group]
  • +
  • circumstance_phrase->as someone begins petting [PAWN_possessive] fuzzy body
  • +
  • circumstance_phrase->as someone reaches for a brush
  • +
  • desc_sentence->[PAWN_pronoun] begins brushing [PAWN_possessive] fuzzy body.
  • +
    +
    +
    + + GrewMegaslothMuzzle + + + +
  • tale_noun->[PAWN_nameDef] grew an megasloth muzzle
  • +
  • tale_noun->[PAWN_nameDef]'s face became like that of an megasloth
  • +
  • image->[PAWN_nameFull] face pushing out into a megatherine muzzle [circumstance_group]
  • +
  • image->[PAWN_nameFull] yells becoming megatherine moans [circumstance_group]
  • +
  • circumstance_phrase->while someone plays with [PAWN_pronoun] fuzzy face
  • +
  • desc_sentence->[PAWN_pronoun] is troubled by [PAWN_possessive] fuzzy face.
  • +
  • desc_sentence->[PAWN_pronoun] seems pleases with [PAWN_possessive] fuzzy face.
  • +
    +
    +
    + + + GrewMegaHand + + + +
  • tale_noun->[PAWN_nameDef]'s fingers becoming long clawed things
  • +
  • tale_noun->[PAWN_nameDef]'s hands becoming those of a megasloth
  • +
  • tale_noun->[PAWN_nameDef] growing megasloth hands
  • +
  • image->[PAWN_nameFull]'s nails begin to lengthen into long claws [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s hands begin to shift, turning into the clawed hands of a megasloth [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems uneasy with [PAWN_possessive] claws.
  • +
  • desc_sentence->[PAWN_pronoun] begins carving something with [PAWN_possessive] claws.
  • +
  • desc_sentence->[PAWN_pronoun] seems pleased with [PAWN_possessive] claws.
  • +
    +
    +
    + + + GrewMegaslothFoot + + + +
  • tale_noun->[PAWN_nameDef]'s feet becoming that of a megasloth's
  • +
  • tale_noun->[PAWN_nameDef] growing megasloth feet
  • +
  • tale_noun->[PAWN_nameDef] growing clawed feet
  • +
  • image->[PAWN_nameFull] toes begin to grow long clawed [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s toenails begin to lengthen into long claws [circumstance_group]
  • +
  • image->fur begins to cover [PAWN_nameFull]'s feet as they begin to shift [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] looks uneasy with [PAWN_possessive] clawed feet.
  • +
  • desc_sentence->[PAWN_pronoun] seems unsteady on [PAWN_possessive] new feet.
  • +
  • desc_sentence->[PAWN_pronoun] seem surprisingly adept on [PAWN_possessive] new clawed feet.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_MorphDef.xml new file mode 100644 index 000000000..51825dacb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_MorphDef.xml @@ -0,0 +1,5 @@ + + + ThickFur + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_Parts.xml new file mode 100644 index 000000000..d3bab1674 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/ThickFur_Parts.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Full.xml new file mode 100644 index 000000000..aca2a5b6b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Full.xml @@ -0,0 +1,80 @@ + + + PawnmorphElephantTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a elephantmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming larger than life. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ElephantMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ElephantMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Injector.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Injector.xml new file mode 100644 index 000000000..ee3fc66c4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Injector.xml @@ -0,0 +1,15 @@ + + + ElephantTransformer + + A mutagenic injector filled with mechanites and elephant DNA. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + PawnmorphElephantTF + 1.00 +
  • +
    +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_MorphDef.xml new file mode 100644 index 000000000..332f421ac --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_MorphDef.xml @@ -0,0 +1,16 @@ + + + ElephantMorph + + A large human that has been exposed to large amounts of elephant specific mutagens. They usually have much in common with their feral counterparts like thick hide and large tusks, making them very dangerous in combat. + Elephant + ElephantTransformer + PawnmorphElephantTF + PawnmorphElephantTFPartial + + + (130,126,119) + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Partial.xml new file mode 100644 index 000000000..bbd9d40e9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Partial.xml @@ -0,0 +1,35 @@ + + + PawnmorphElephantTFPartial + + This person has mechanites in their blood that are providing them with elephant-esque mutations. + +
  • + 0.1 + 3 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ElephantMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Parts.xml new file mode 100644 index 000000000..36191fb6a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Parts.xml @@ -0,0 +1,48 @@ + + + ElephantMorph + EtherTrunk + + + Parts/Elephant/Elephant_Muzzle + + + + + ElephantMorph + EtherElephantEar + + + Parts/Elephant/Elephant_Ear_Left + Parts/Elephant/Elephant_Ear_Left_Behind + Parts/Elephant/Elephant_Ear_Right + Parts/Elephant/Elephant_Ear_Right_Behind + + +
  • + grown + + Wow, with such a big ear, [PAWN_nameDef] looks like a dumbo, doesn't [PAWN_pronoun]. + +
  • +
    +
    + + + ElephantMorph + EtherElephantTail + + + Parts/Elephant/Elephant_Tail + + +
  • + grown + + A long tail that swishes gently at flies that gather. + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Tales.xml new file mode 100644 index 000000000..3b86c7202 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephant/Elephant_Tales.xml @@ -0,0 +1,59 @@ + + + GrewElephantFace + + + +
  • tale_noun->[PAWN_nameDef] grew an elephant's trunk and tusks
  • +
  • tale_noun->[PAWN_nameDef]'s face became that of an elephants
  • +
  • image->[PAWN_nameFull]'s nose begins to push out into a long trunk [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s teeth begin to grow into large, ivory, tusks [circumstance_group]
  • +
  • circumstance_phrase->while someone eyes [PAWN_possessive] tusks greedily
  • +
  • desc_sentence->[PAWN_pronoun] tries to pick something up with [PAWN_possessive] new trunk.
  • +
  • desc_sentence->[PAWN_pronoun] looks unnerved by with [PAWN_possessive] new trunk.
  • +
  • desc_sentence->[PAWN_pronoun] seems pleased with [PAWN_possessive] new tusks.
  • +
    +
    +
    + + GrewElephantEars + + + +
  • tale_noun->[PAWN_nameDef]'s ears becoming those of an elephant
  • +
  • tale_noun->[PAWN_nameDef] growing elephant ears
  • +
  • image->[PAWN_nameFull]'s ears begin to grow [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s ears begin to shift and grow [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems uneasy with the size of [PAWN_possessive] new ears.
  • +
  • desc_sentence->[PAWN_pronoun] begins to flap [PAWN_possessive] elephant ears.
  • +
  • desc_sentence->[PAWN_pronoun] seems oddly pleased with [PAWN_possessive] elephant ears.
  • +
    +
    +
    + + GrewElephantFoot + + + +
  • tale_noun->[PAWN_nameDef] feet changing into that of an elephant
  • +
  • tale_noun->[PAWN_nameDef] growing elephant feet
  • +
  • image->[PAWN_nameFull] feet begin to shift into large stumpy feet [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems uncomfortable with [PAWN_possessive] new feet.
  • +
  • desc_sentence->[PAWN_pronoun] begins stomping about with [PAWN_possessive] new feet.
  • +
    +
    +
    + + HandsBecameElephantFeet + + + +
  • tale_noun->[PAWN_nameDef] hands becoming elephant feet
  • +
  • tale_noun->[PAWN_nameDef] hands becoming large stumpy feet
  • +
  • image->[PAWN_nameFull]'s hands begin to shift into stumpy things [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s fingers begin to shrink [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] mourns the loss of [PAWN_possessive] thumbs.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Memories.xml new file mode 100644 index 000000000..941162369 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Memories.xml @@ -0,0 +1,155 @@ + + + + ElephantTransformationMemory + +
  • + + I'm so heavy, and this trunk gets in the way. + -3 +
  • +
  • + + Wow, this is so great I think I might let out a TOOT! + +3 +
  • +
  • + + Dieting will never fix this! + -5 +
  • +
  • + + I bet I'd be even bigger as a full elephant, you know. + +1 +
  • +
    +
    + + + ElephantRevertedMemory + +
  • + + I think I'll celebrate... with a salad. + 3 +
  • +
  • + + I'll miss the built-in trumpet. + -3 +
  • +
  • + + A normal nose! + 10 +
  • +
  • + + I feel much smaller now. This is the opposite of what I wanted! + -5 +
  • +
    +
    + + + 1 + EtherElephantTrunk + +
  • + + What the...a trunk? + true + -1 +
  • +
  • + + I gotta give this a toot. + true + 2 +
  • +
  • + + My nose...it's horrible! + true + -3 +
  • +
    +
    + + + 1 + EtherElephantEar + +
  • + + These things are always flopping around and getting in the way... + true + -1 +
  • +
  • + + I can hear everything for miles! + true + 1 +
  • +
  • + + Could it get any more obvious that I'm a mutated freak? + true + -2 +
  • +
    +
    + + + 1 + EtherElephantTail + +
  • + + This tail is pretty useless. + true + -1 +
  • +
  • + + Well, a tail's a tail! + true + 1 +
  • +
  • + + It's just...hanging there... + true + -2 +
  • +
    +
    + + + 1 + EtherElephantFoot + +
  • + + These things are the size of a dinner plate. + true + -1 +
  • +
  • + + Stomp, stomp, stomp! This is fun! + true + 2 +
  • +
  • + + What am I gonna do with my shoes? + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_MorphDef.xml new file mode 100644 index 000000000..a4a8788c3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_MorphDef.xml @@ -0,0 +1,9 @@ + + + Elephantidae + + ElephantTransformationMemory + ElephantRevertedMemory + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Parts.xml new file mode 100644 index 000000000..c64e1147c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Elephantidae/Elephantidae_Parts.xml @@ -0,0 +1,192 @@ + + + EtherElephantTrunk + +
  • + +
  • + + False + +
  • Stab
  • + + 20.4 + 4 + true + +
  • + + False + +
  • Blunt
  • + + 12.7 + 3 + true + + + +
    + +
  • + initial + + +
  • + + 0 + 0 +
  • +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 + 0 +
  • +
  • + + 0 + 0 +
  • + + + +
  • + growing + + [PAWN_nameDef]'s jaw bones shift and crack, painfully reshaping [PAWN_possessive] face. [PAWN_possessive] nose is starting to droop, growing longer... and wriggly. + +
  • + + 0.5 + 12.0 +
  • +
  • + + 0.5 + 7 +
  • + + + +
  • + adapting + + A trunk graces [PAWN_nameDef]'s face, along with two pointy tusks, a wonderful elephantine accessory. The strange shape makes speaking very difficult. + +
  • + + 0.5 + 20.4 +
  • +
  • + + 0.5 + 12.7 +
  • + + +
  • + Manipulation + 0.05 +
  • +
    + + +
  • + adapted + + A trunk graces [PAWN_nameDef]'s face, along with two pointy tusks, a wonderful elephantine accessory. Adapting to it has made speaking less frustrating. + + 0.05 + 0.1 + + +
  • + Manipulation + 0.15 +
  • + + +
  • + + 1 + 20.4 +
  • +
  • + + 1 + 12.7 +
  • +
    + + +
  • + paragon + + A trunk graces [PAWN_nameDef]'s face, along with two pointy tusks, a wonderful elephantine accessory. With further adaptation, [PAWN_nameDef] has learned to speak normally. + + 0.05 + 0.1 + + +
  • + Manipulation + 0.15 +
  • + + +
  • + + 1 + 20.4 +
  • +
  • + + 1 + 12.7 +
  • +
    + + +
    +
    + + + EtherElephantEar + +
  • + growing + + + +8.5 + + +
  • +
  • + grown + + + +8.5 + + +
  • +
    +
    + + + EtherElephantTail + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Full.xml new file mode 100644 index 000000000..f991870e1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Full.xml @@ -0,0 +1,80 @@ + + + PawnmorphRhinocerosTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a rhinomorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far hornier. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + RhinocerosMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + RhinocerosMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Injector.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Injector.xml new file mode 100644 index 000000000..a142193fe --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Injector.xml @@ -0,0 +1,15 @@ + + + RhinocerosTransformer + + A mutagenic injector filled with mechanites and rhinoceros DNA. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + PawnmorphRhinocerosTF + 1.00 +
  • +
    +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_MorphDef.xml new file mode 100644 index 000000000..c526e3983 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_MorphDef.xml @@ -0,0 +1,16 @@ + + + RhinocerosMorph + + A massive humanoid resembling a rhinoceros, usually with a horned nose and an angry look in their eyes. They are dangerous at combat, often utilizing their horn to charge their victims. + Rhinoceros + RhinocerosTransformer + PawnmorphRhinocerosTF + PawnmorphRhinocerosTFPartial + + + (140,140,140) + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Partial.xml new file mode 100644 index 000000000..8fa135912 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Partial.xml @@ -0,0 +1,35 @@ + + + PawnmorphRhinocerosTFPartial + + This person has mechanites in their blood that are providing them with rhinoceros-esque mutations. + +
  • + 0.1 + 3 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + RhinocerosMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Parts.xml new file mode 100644 index 000000000..ad6fd862e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinoceros/Rhinoceros_Parts.xml @@ -0,0 +1,46 @@ + + + RhinocerosMorph + EtherRhinocerosJaw + + Parts/Rhinoceros/Rhinoceros_Muzzle + + + + + RhinocerosMorph + EtherRhinocerosEar + + + Parts/Rhinoceros/Rhinoceros_Ear_Left + Parts/Rhinoceros/Rhinoceros_Ear_Left_Behind + Parts/Rhinoceros/Rhinoceros_Ear_Right + Parts/Rhinoceros/Rhinoceros_Ear_Right_Behind + + +
  • + grown + + The large and curved ear of a rhinoceros. + +
  • +
    +
    + + + RhinocerosMorph + EtherRhinocerosTail + + + Parts/Rhinoceros/Rhinoceros_Tail + + +
  • + grown + + A short, leathery rhinoceros tail, complete with tuft. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Memories.xml new file mode 100644 index 000000000..46100ae98 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Memories.xml @@ -0,0 +1,128 @@ + + + + RhinocerosTransformationMemory + +
  • + + I feel so heavy, and this horn is really something else. + true + -3 +
  • +
  • + + I'm a huge war machine, this is incredible! + true + 3 +
  • +
  • + + I'm going to run you over if you don't turn me back right now! + true + -5 +
  • +
    +
    + + + RhinocerosRevertedMemory + +
  • + + I'm normal again, and there's no heavy horn on my face! + +3 +
  • +
  • + + I feel so much weaker. I'm not as special as before. + -3 +
  • +
  • + + I feel human again, and those bestial features are gone! + +10 +
  • +
  • + + I feel so weak now. I wanted more, not less! + -5 +
  • +
    +
    + + + 1 + EtherRhinocerosJaw + +
  • + + Let's hope the colony doesn't want to mount my head on a wall... + true + -1 +
  • +
  • + + Look at this majestic horn, I feel powerful! + true + 2 +
  • +
  • + + I WILL STAB SOMEBODY WITH THIS THING. + true + -3 +
  • +
    +
    + + + 1 + EtherRhinocerosEar + +
  • + + Did someone stick some tubes on my ears? + true + -1 +
  • +
  • + + Perfect for healing and cooling you off a bit! + true + 1 +
  • +
  • + + I'm used to my ears, not these weird tubes... + true + -2 +
  • +
    +
    + + + 1 + EtherRhinocerosTail + +
  • + + It's just a useless piece of skin hanging of me... + true + -1 +
  • +
  • + + Well...it's a tail, I guess. + true + 1 +
  • +
  • + + Why do I even have this...weird tail thing?! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_MorphDef.xml new file mode 100644 index 000000000..e1508dce7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_MorphDef.xml @@ -0,0 +1,9 @@ + + + Rhinocerotidae + + RhinocerosTransformationMemory + RhinocerosRevertedMemory + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Parts.xml new file mode 100644 index 000000000..c01f9a9ec --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/Rhinocerotidae/Rhinocerotidae_Parts.xml @@ -0,0 +1,170 @@ + + + EtherRhinocerosJaw + + +
  • + initial + + +
  • + + 0 + 0 +
  • +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 + 0 +
  • +
  • + + 0 + 0 +
  • + + + +
  • + growing + + [PAWN_nameDef]'s jaw bones shift and crack, painfully reshaping [PAWN_possessive] face. And a thick bone has begun to force its way out from the tip of [PAWN_possessive] new snout. + +
  • + + 0.5 + 5 +
  • +
  • + + 0.5 + 0 +
  • + + + +
  • + adapting + + An oversized rhino jaw, complete with a mighty horn. Perfect for goring your foes. The strange shape makes speaking very difficult. + +
  • + + 0.5 + 19.4 +
  • +
  • + + 0.5 + 12 +
  • + + +
  • + Moving + -0.05 +
  • +
    + + +
  • + adapted + + An oversized rhino jaw, complete with a mighty horn. Perfect for goring your foes. Adapting to it has made speaking less frustrating. + +
  • + + 1 + 19.4 +
  • +
  • + + 1 + 12 +
  • + + + 0.05 + 0.15 + + +
  • + Moving + -0.05 +
  • +
    + + +
  • + paragon + + An oversized rhino jaw, complete with a mighty horn. Over time the horn has hardened to a tensile strength like steel. It rends flesh guts buildings alike! + +
  • + + 1 + 29.6 +
  • +
  • + + 1 + 12 +
  • + + + 0.05 + 0.15 + + + +
    + +
  • + +
  • + + False + +
  • Stab
  • +
  • Demolish
  • + + 0 + 4 + true + +
  • + + False + +
  • Blunt
  • + + 0 + 3 + true + + + +
    +
    + + + EtherRhinocerosEar + + + + EtherRhinocerosTail + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_MorphDef.xml new file mode 100644 index 000000000..2801c04d2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_MorphDef.xml @@ -0,0 +1,5 @@ + + + ThickHide + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_Parts.xml new file mode 100644 index 000000000..ffdbea102 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickHide/ThickHide_Parts.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Full.xml new file mode 100644 index 000000000..ef2245de8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Full.xml @@ -0,0 +1,80 @@ + + + PawnmorphThrumboTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a thrumbomorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far wiser. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ThrumboMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 3 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ThrumboMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Hairstyle.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Hairstyle.xml new file mode 100644 index 000000000..e0a42df83 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Hairstyle.xml @@ -0,0 +1,7 @@ + + + HairThrumboFluff + + Parts/Thrumbo/Thrumbo_Headfluff + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Injector.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Injector.xml new file mode 100644 index 000000000..444fdf22f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Injector.xml @@ -0,0 +1,15 @@ + + + ThrumboTransformer + + A mutagenic injector filled with mechanites and thrumbo DNA. Use with caution, as leaving the mechanites unchecked may transform the user. + + +
  • + PawnmorphThrumboTF + 1.00 +
  • +
    +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Memories.xml new file mode 100644 index 000000000..e7ead8f97 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Memories.xml @@ -0,0 +1,154 @@ + + + ThrumboTransformationMemory + +
  • + + This strength isn't bad, but I feel like I'm constantly hungry. + -3 +
  • +
  • + + I feel so strong and graceful! + +3 +
  • +
  • + + Ugh! Get this horn off of me! + -5 +
  • +
  • + + I love this strength and this beautiful horn... I bet it would feel better to fully become the wisest animal on the Rim! + +1 +
  • +
    +
    + + + ThrumboRevertedMemory + +
  • + + Feels good to rid of that heavy fur. + 3 +
  • +
  • + + I miss all that strength, and that graceful horn. + -3 +
  • +
  • + + I don't think I could have handled being like that for much longer. + 10 +
  • +
  • + + I wanted to go further, not go back! + -5 +
  • +
    +
    + + + 1 + EtherThrumboSnout + +
  • + + A bit messy, I don't exactly like it. + true + -1 +
  • +
  • + + I go really go for a tree right now! + true + 2 +
  • +
  • + + Sloppy and gross, I want it off! + true + -3 +
  • +
    +
    + + + 1 + EtherThrumboEar + +
  • + + They're pretty good at hearing, I'll give them that. + true + 0 +
  • +
  • + + Wonderful ears for a wonderful creature! + true + 2 +
  • +
  • + + They're stupid, and I don't want to have them... + true + -2 +
  • +
    +
    + + + 1 + EtherThrumboTail + +
  • + + Having a tail is quite strange but it does feel very luxurious. + true + 0 +
  • +
  • + + It's so soft and velvety! Who needs a pillow when I have this? + true + 2 +
  • +
  • + + I don't care if some think it's majestic, I HATE it. + true + -2 +
  • +
    +
    + + + 1 + EtherThrumboHorn + +
  • + + Ouch! This thing is VERY sharp. + true + -1 +
  • +
  • + + It's majestic...no wait, it's me that is majestic now. + true + 2 +
  • +
  • + + Maybe if I let them cut it off and sell it...maybe they could get some medicine that could undo this...please... + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_MorphDef.xml new file mode 100644 index 000000000..ea167fed3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_MorphDef.xml @@ -0,0 +1,24 @@ + + + ThrumboMorph + + A large humanoid often resembling a bipedal thrumbo, usually sporting the characteristic horn. Much like feral thrumbos they are exceptionally dangerous in combat, and enjoy eating trees. + Thrumbo + ThrumboTransformer + PawnmorphThrumboTF + PawnmorphThrumboTFPartial + + +
  • HairThrumboFluff
  • +
    + + (255,255,255) + (0,0,0,0) + +
    + + ThrumboTransformationMemory + ThrumboRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Partial.xml new file mode 100644 index 000000000..b8a52f488 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Partial.xml @@ -0,0 +1,35 @@ + + + PawnmorphThrumboTFPartial + + This person has mechanites in their blood that are providing them with thrumbo-esque mutations. + +
  • + 0.1 + 3 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ThrumboMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml new file mode 100644 index 000000000..3e40baad0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml @@ -0,0 +1,180 @@ + + + ThrumboMorph + EtherThrumboSnout + + GrewThrumboMuzzle + EtherThrumboSnout + + + + Parts/Thrumbo/Thrumbo_Muzzle_Male + Parts/Thrumbo/Thrumbo_Muzzle_Female + + + + +
  • + growing + + The changes to [PAWN_nameDef]'s face continue. Broad tree munching teeth have started to form in a powerful new snout. + +
  • +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, luxuriously fluffy and inspiring a commanding gaze. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, luxuriously fluffy and inspiring a commanding gaze. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, luxuriously fluffy and inspiring a commanding gaze. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherThrumboHorn + + ThrumboMorph + A razor-sharp thrumbo horn. + GrewThrumboHorn + EtherThrumboHorn + 30 + ThrumboHorn + +
  • + initial + + Something is pressing out from below [PAWN_nameDef]'s scalp, in the middle of the forehead. + +
  • + + 0 + 0 +
  • + + + +
  • + nubs + + + [PAWN_nameDef] has grown a small hard nub on [PAWN_possessive] forehead. Maybe good for a headbutt but not much else. + + Parts/Thrumbo/Thrumbo_Horn_A + + +
  • + + 0 + 0 +
  • + + + +
  • + short + + [PAWN_nameDef] has grown what looks like a small version of a thrumbo's horn. Not quite as sharp or powerful as a fully grown thrumbo horn, but can still inflict some damage. + + Parts/Thrumbo/Thrumbo_Horn_B + + + 0.1 + + +
  • + + 0.5 + 10 +
  • + + + +
  • + horns + + + A large and majestic horn near identical to what you find on a thrumbo adorns [PAWN_nameDef]'s head. It is a very powerful and sharp horn. + + Parts/Thrumbo/Thrumbo_Horn_C + + + 0.3 + + +
  • + + 1 + 18.12 +
  • + + + +
    + +
  • + +
  • + + +
  • Scratch
  • +
  • Stab
  • +
  • Cut
  • + + 0 + 3 + + + +
    +
    + + + ThrumboMorph + EtherThrumboEar + + EtherThrumboEar + + Parts/Muffalo/Muffalo_Ear_Left + + Parts/Muffalo/Muffalo_Ear_Right + + + +
  • + grown + + A white-furred, rounded and beautiful thrumbo ear. + +
  • +
    +
    + + + ThrumboMorph + EtherThrumboTail + + EtherThrumboTail + + Parts/Thrumbo/Thrumbo_Tail + + +
  • + grown + + A fluffy thrumbo tail, coated in supple, sleek fur. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Tales.xml new file mode 100644 index 000000000..28128b2b8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Tales.xml @@ -0,0 +1,34 @@ + + + + GrewThrumboHorn + + + +
  • tale_noun->[PAWN_nameDef] growing a large horn
  • +
  • tale_noun->[PAWN_nameDef] growing a large, sharp, horn
  • +
  • tale_noun->[PAWN_nameDef] growing a thrumbo horn
  • +
  • image->[PAWN_nameFull] rubs [PAWN_possessive] forehead [circumstance_group]
  • +
  • circumstance_phrase->while others stair at [PAWN_possessive] horn
  • +
  • circumstance_phrase->while someone begins polishing [PAWN_possessive] horn
  • +
  • circumstance_phrase->while someone rubs [PAWN_possessive] new horn
  • +
    +
    +
    + + + GrewThrumboMuzzle + + + +
  • tale_noun->[PAWN_nameDef] grew a thrumbic muzzle
  • +
  • tale_noun->[PAWN_nameDef]'s face becoming that of a thrumbo
  • +
  • image->[PAWN_nameFull]'s face begins to push out into a large muzzle [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s head begins to reshape into a large muzzle [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems disturbed by [PAWN_possessive] new thrumbic muzzle.
  • +
  • desc_sentence->[PAWN_pronoun] seems oddly pleased with [PAWN_possessive] thrumbic muzzle.
  • +
    +
    + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Memories.xml new file mode 100644 index 000000000..a849e14b6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Memories.xml @@ -0,0 +1,78 @@ + + + + 1 + EtherCanidMuzzle + +
  • + + I sound ridiculous trying to speak with this thing. + true + -1 +
  • +
  • + + So many scents! This is incredible! + true + 2 +
  • +
  • + + I'm smelling things I wish I couldn't. I want my old face back. + true + -3 +
  • +
    +
    + + + 1 + EtherCanidEar + +
  • + + They're a bit too sensitive, everything's too loud for comfort. + true + -1 +
  • +
  • + + My hearing is so clear now, I bet I could hear a pin drop on the other side of the colony! + true + 1 +
  • +
  • + + I swear I can hear them talking about me. Why is this happening to me? + true + -2 +
  • +
    +
    + + + 1 + EtherCanidTail + +
  • + + I hope making a tail-hole in my pants won't be too hard. + true + -1 +
  • +
  • + + Whenever I think about it it just starts to wag! + true + 1 +
  • +
  • + + I can't even sit on a chair without this damn thing getting in the way! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_MorphDef.xml new file mode 100644 index 000000000..089c5a7a5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_MorphDef.xml @@ -0,0 +1,6 @@ + + + Canid + Canines + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Parts.xml new file mode 100644 index 000000000..7f076a887 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Canid_Parts.xml @@ -0,0 +1,57 @@ + + + GrewCanidMuzzle + EtherCanidMuzzle + +
  • + growing + + [PAWN_nameDef]'s face is growing into a muzzle with a distinctly canine apperance. In place at its tip is now a cold, wet nose. + +
  • +
  • + adapting + + +
  • + Eating + +0.2 +
  • + + + +
  • + adapted + + +
  • + Eating + +0.35 +
  • + + + +
  • + paragon + + +
  • + Eating + +0.5 +
  • + + + +
    +
    + + + EarsChangedCanid + EtherCanidEar + + + + EtherCanidTail + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Memories.xml new file mode 100644 index 000000000..19211f2c0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Memories.xml @@ -0,0 +1,129 @@ + + + FamiliarisTransformationMemory + +
  • + + So I'm the pet dog now? ...arf? + -3 +
  • +
  • + + Did somebody say 'belly rub'? + +3 +
  • +
  • + + They keep telling me 'fetch'...but I'm not a damn dog! + -5 +
  • +
  • + + Fetch?! Where!? + +1 +
  • +
    +
    + + + FamiliarisRevertedMemory + +
  • + + Phew... I was having a bit too much fun. + 3 +
  • +
  • + + I'm not as peppy as I used to be. + -3 +
  • +
  • + + I'm not a stinky dog anymore! + 10 +
  • +
  • + + No more napping on laps for me. + -5 +
  • +
    +
    + + + 1 + EtherFamiliarisJaw + +
  • + + I just need to pant all the time... + true + 1 +
  • +
  • + + BARK BARK BARK! + true + 3 +
  • +
  • + + I can't be sad with this smile... + true + 0 +
  • +
    +
    + + + 1 + EtherFamiliarisEar + +
  • + + They're pretty cute, I gotta say. + true + 0 +
  • +
  • + + They look cute, and I can hear better than before. A win-win! + true + 2 +
  • +
  • + + I want my own ears back, give them BARK! + true + -2 +
  • +
    +
    + + + 1 + EtherFamiliarisTail + +
  • + + I gotta calm down, it keeps wagging... + true + -1 +
  • +
  • + + I'm so excited, it's wagging so fast! + true + 1 +
  • +
  • + + Why do I have to ruin all my pants for a tail that won't stop wagging? + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_MorphDef.xml new file mode 100644 index 000000000..7a777c92d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_MorphDef.xml @@ -0,0 +1,14 @@ + + + Always dependable and willing to defend their home, dogmorphs will get along with everyone. + Familiaris + + FamiliarisTransformationMemory + FamiliarisRevertedMemory + + +
  • Social
  • +
  • Domestic
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Parts.xml new file mode 100644 index 000000000..119794c4d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Familiaris_Parts.xml @@ -0,0 +1,103 @@ + + + EtherFamiliarisJaw + +
  • + adapting + + + 0.025 + -0.05 + + A snout graces [PAWN_nameDef]'s face, like that of a dog. [PAWN_possessive] teeth are pointed to suit. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, like that of a dog. [PAWN_possessive] teeth are pointed to suit. Adapting to it has made speaking less frustrating. + +
  • + Sight + +0.05 +
  • + + + 0.05 + -0.115 + + + +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, like that of a dog. [PAWN_possessive] teeth are pointed to suit. With further adaptation, [PAWN_nameDef] has learned to speak normally and has mastered the art of puppy dog eyes. + +
  • + Sight + +0.05 +
  • + + + 0.1 + -0.15 + + + +
    +
    + + + EtherFamiliarisEar + +
  • + growing + + +
  • + Hearing + +0.05 +
  • + + + +
  • + grown + + A fluffy dog ear flicks around at the sides of [PAWN_nameDef]'s head. It is incredibly cute. + +
  • + Hearing + +0.1 +
  • + + + +
    +
    + + + EtherFamiliarisTail + +
  • + growing + + + -0.0175 + +0.025 + + +
  • +
  • + grown + + A briskly wagging, excitable dog tail. Was that a small wag just then? + + -0.035 + +0.05 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Full.xml new file mode 100644 index 000000000..d70726013 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphHuskyTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a huskymorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more canine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + HuskyMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + HuskyMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_MorphDef.xml new file mode 100644 index 000000000..ad4e81213 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_MorphDef.xml @@ -0,0 +1,14 @@ + + + HuskyMorph + + Husky + PawnmorphHuskyTF + PawnmorphHuskyTFPartial + + + (137,133,133) + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Partial.xml new file mode 100644 index 000000000..e5c72abb0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphHuskyTFPartial + + This person has mechanites in their blood that are providing them with husky-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + HuskyMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml new file mode 100644 index 000000000..015e2e42d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml @@ -0,0 +1,36 @@ + + + HuskyMorph + EtherHuskyMuzzle + + + + + Parts/Husky/Husky_Muzzle_Male + Parts/Husky/Husky_Muzzle_Female + + + + + + + HuskyMorph + EtherHuskyEar + + + Parts/Husky/Husky_Ear_Left + + Parts/Husky/Husky_Ear_Right + + + + + + HuskyMorph + EtherHuskyTail + + + Parts/Husky/Husky_Tail + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Full.xml new file mode 100644 index 000000000..aafd7ec82 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphLabradorRetrieverTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a labmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more canine. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + LabradorRetrieverMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + LabradorRetrieverMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_MorphDef.xml new file mode 100644 index 000000000..7f669da84 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_MorphDef.xml @@ -0,0 +1,14 @@ + + + LabradorRetrieverMorph + + LabradorRetriever + PawnmorphLabradorRetrieverTF + PawnmorphLabradorRetrieverTFPartial + + + (220,198,160) + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Partial.xml new file mode 100644 index 000000000..f5232cf85 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphLabradorRetrieverTFPartial + + This person has mechanites in their blood that are providing them with labrador-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + LabradorRetrieverMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Parts.xml new file mode 100644 index 000000000..9e2069edc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/LabradorRetriever/LabradorRetriever_Parts.xml @@ -0,0 +1,31 @@ + + + LabradorRetrieverMorph + EtherLabradorRetrieverJaw + + + Parts/LabradorRetriever/LabradorRetriever_Muzzle + + + + + LabradorRetrieverMorph + EtherLabradorRetrieverEar + + + Parts/LabradorRetriever/LabradorRetriever_Ear_Left + Parts/LabradorRetriever/LabradorRetriever_Ear_Left_Behind + Parts/LabradorRetriever/LabradorRetriever_Ear_Right + Parts/LabradorRetriever/LabradorRetriever_Ear_Right_Behind + + + + + LabradorRetrieverMorph + EtherLabradorRetrieverTail + + + Parts/LabradorRetriever/LabradorRetriever_Tail + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Full.xml new file mode 100644 index 000000000..2f3c51fd6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphTerrierTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a terriermorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more canine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + TerrierMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + TerrierMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_MorphDef.xml new file mode 100644 index 000000000..d2e126e1b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_MorphDef.xml @@ -0,0 +1,14 @@ + + + TerrierMorph + + YorkshireTerrier + PawnmorphTerrierTF + PawnmorphTerrierTFPartial + + + (200,165,65) + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Partial.xml new file mode 100644 index 000000000..eee5a14d1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphTerrierTFPartial + + This person has mechanites in their blood that are providing them with yorkshire terrier-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + TerrierMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml new file mode 100644 index 000000000..6991fe572 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml @@ -0,0 +1,36 @@ + + + TerrierMorph + EtherTerrierMuzzle + + + + + Parts/Terrier/Terrier_Muzzle_Male + Parts/Terrier/Terrier_Muzzle_Female + + + + + + + TerrierMorph + EtherTerrierEar + + + Parts/Terrier/Terrier_Ear_Left + + Parts/Terrier/Terrier_Ear_Right + + + + + + TerrierMorph + EtherTerrierTail + + + Parts/Terrier/Terrier_Tail + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Full.xml new file mode 100644 index 000000000..fa8df76a2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphArcticWolfTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a articwolfmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more wolfish than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ArcticWolfMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ArcticWolfMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_MorphDef.xml new file mode 100644 index 000000000..7835925a9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_MorphDef.xml @@ -0,0 +1,17 @@ + + + ArcticWolfMorph + + Wolf_Arctic + +
  • Cold
  • +
    + PawnmorphArcticWolfTF + PawnmorphArcticWolfTFPartial + + + (249,242,221) + + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Partial.xml new file mode 100644 index 000000000..44783f360 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphArcticWolfTFPartial + + This person has mechanites in their blood that are providing them with arcitc wolf-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ArcticWolfMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml new file mode 100644 index 000000000..2a4c064ca --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml @@ -0,0 +1,37 @@ + + + ArcticWolfMorph + EtherArcticWolfJaw + + + + + Parts/WolfArctic/Awolf_Muzzle + Parts/WolfArctic/Awolf_Female_Muzzle + + + + + + + ArcticWolfMorph + EtherArcticWolfEar + + + Parts/WolfArctic/Awolf_Ear_Left + Parts/WolfArctic/Awolf_Ear_Left_Behind + Parts/WolfArctic/Awolf_Ear_Right + Parts/WolfArctic/Awolf_Ear_Right_Behind + + + + + ArcticWolfMorph + EtherArcticWolfTail + + + Parts/WolfArctic/Awolf_Tail + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml new file mode 100644 index 000000000..eb357aed4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml @@ -0,0 +1,75 @@ + + + WolfmorphAlphaGeneral + pack alpha + alpha wolf + [PAWN_nameDef] was part of a disproven study into the dominance heirarchy in wolf packs. When the study went underground, it took [PAWN_nameDef]'s humanity and made [PAWN_objective] an alpha. + Adulthood + Hulk + Hulk + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + Melee + 5 +
  • +
  • + Social + 3 +
  • +
  • + Intellectual + -2 +
  • +
    + +
  • + 8~8 + +
  • ArcticWolfMorph
  • +
  • WolfMorph
  • + + +
    +
    + + + WolfmorphBetaGeneral + pack beta + beta wolf + [PAWN_nameDef] was part of a disproven study into the dominance heirarchy in wolf packs. When the study went underground, it took [PAWN_nameDef]'s humanity and made [PAWN_objective] a lesser member, a beta. + Adulthood + Thin + Thin + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + Melee + 2 +
  • +
  • + Social + -2 +
  • +
  • + Intellectual + 2 +
  • +
    + +
  • + 2~6 + +
  • ArcticWolfMorph
  • +
  • WolfMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Memories.xml new file mode 100644 index 000000000..b5e0c5770 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Memories.xml @@ -0,0 +1,54 @@ + + + WolfTransformationMemory + +
  • + + This fur is making me so hot. I think I need to start panting. + -3 +
  • +
  • + + Everything smells so good now! + +3 +
  • +
  • + + This fur is horrible, and all these smells are overwhelming. + -5 +
  • +
  • + + I love this fur and all these smells, I want to go even further! + +1 +
  • +
    +
    + + + WolfRevertedMemory + +
  • + + No more shedding or panting! + +3 +
  • +
  • + + Everything smells so dull now. + -3 +
  • +
  • + + Everything smells normal again, and the urge to howl is gone! + 10 +
  • +
  • + + I wanted more, not less! + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_MorphDef.xml new file mode 100644 index 000000000..99873686b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_MorphDef.xml @@ -0,0 +1,19 @@ + + + Wolfmorphs usually stand on their paws and possess keen nose seeking prey, with grey or brown fur covering them. They make excellent fighters. + Wolf + +
  • Combat
  • +
    + +
  • + MeatLover + false +
  • +
    + + WolfTransformationMemory + WolfRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Parts.xml new file mode 100644 index 000000000..fd5354d20 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Parts.xml @@ -0,0 +1,110 @@ + + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, like that of a wolf. [PAWN_possessive] teeth are pointed to suit. The strange shape makes speaking very difficult. + 0.05 + + -0.04 + 0.1 + + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, like that of a wolf. [PAWN_possessive] teeth are pointed to suit. Adapting to it has made speaking less frustrating. + 0.2 + +
  • + Sight + +0.05 +
  • + + + -0.075 + 0.15 + + + +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, like that of a wolf. [PAWN_possessive] teeth are pointed to suit. With further adaptation, [PAWN_nameDef] has learned to speak normally. + 0.2 + +
  • + Sight + +0.05 +
  • + + + -0.1 + 0.2 + + + +
    +
    + + + +
  • + growing + + +
  • + Hearing + +0.05 +
  • + + + +0.0375 + + + +
  • + grown + + A pointed and furred ear crown [PAWN_nameDef]'s head, flicking left and right, listening for the sounds of preys. + +
  • + Hearing + +0.1 +
  • + + + +0.075 + + + +
    +
    + + + +
  • + growing + + + -0.0375 + +0.05 + + +
  • +
  • + grown + + A wolf-like tail hangs from [PAWN_nameDef]'s spine, alert and waiting for a hunt. + + -0.075 + +0.1 + + +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Full.xml new file mode 100644 index 000000000..bedb211f0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphWolfTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a articwolfmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more wolfish than human. But would that really be so bad? + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + WolfMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + WolfMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_MorphDef.xml new file mode 100644 index 000000000..c9c6e0761 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_MorphDef.xml @@ -0,0 +1,19 @@ + + + WolfMorph + + Wolf_Timber + +
  • Temperate
  • +
  • Cold
  • +
    + PawnmorphWolfTF + PawnmorphWolfTFPartial + + + (112,112,112) + (189,186,160) + + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Partial.xml new file mode 100644 index 000000000..6b2a29277 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphWolfTFPartial + + This person has mechanites in their blood that are providing them with timber wolf-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + WolfMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml new file mode 100644 index 000000000..fc62b7c24 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml @@ -0,0 +1,37 @@ + + + WolfMorph + EtherWolfMuzzle + + + + + Parts/WolfTimber/Twolf_Muzzle + Parts/WolfTimber/Twolf_Female_Muzzle + + + + + + + WolfMorph + EtherWolfEar + + + Parts/WolfTimber/Twolf_Ear_Left + Parts/WolfTimber/Twolf_Ear_Left_Behind + Parts/WolfTimber/Twolf_Ear_Right + Parts/WolfTimber/Twolf_Ear_Right_Behind + + + + + WolfMorph + EtherWolfTail + + + Parts/WolfTimber/Twolf_Tail + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Full.xml new file mode 100644 index 000000000..c6109f76a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Full.xml @@ -0,0 +1,78 @@ + + + PM_HellhoundTf + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a hellhound. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more canine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + PM_HellhoundMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PM_HellhoundMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Memories.xml new file mode 100644 index 000000000..ac5146ba1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Memories.xml @@ -0,0 +1,53 @@ + + + PM_HellhoundTransformationMemory + +
  • + + I'm so angry all the time now + -3 +
  • +
  • + + I feel so strong, so alive + +3 +
  • +
  • + + I feel like a monster, I can barely control myself + -5 +
  • +
  • + + Rip... and... Tear! + +1 +
  • +
    +
    + + + PM_HellhoundRevertedMemory + +
  • + + finially, I feel like I can relax + 3 +
  • +
  • + + I just got used to all that strength + -3 +
  • +
  • + + I can think clearly again + 10 +
  • +
  • + + I'm so weak now, change me back! + -5 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_MorphDef.xml new file mode 100644 index 000000000..143340703 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_MorphDef.xml @@ -0,0 +1,23 @@ + + + PM_HellhoundMorph + + EtherHellhound + A large, heavily mutated canid morph resembling a warg morph but significantly larger and usually with additional mutations. + +
  • Combo
  • +
    + true + + + (123,104,89) + + + + PM_HellhoundTransformationMemory + PM_HellhoundRevertedMemory + + PM_HellhoundTf + PM_HellhoundTfPartial +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Partial.xml new file mode 100644 index 000000000..4eddfd3d4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Partial.xml @@ -0,0 +1,34 @@ + + + PM_HellhoundTfPartial + + This person has mechanites in their blood that are providing them with hellhound mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PM_HellhoundMorph + + + 7.7 + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Parts.xml new file mode 100644 index 000000000..580571f47 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Hellhound/Hellhound_Parts.xml @@ -0,0 +1,301 @@ + + + PM_HellhoundMorph + PM_HellhoundSnout + + +
  • Combo
  • +
    + + Parts/COMBINATIONS/Hellhound/Hellhound_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s jaw has become a vicious looking snout, with large fangs visible even when their mouth is closed. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s jaw has become a vicious looking snout, with large fangs visible even when their mouth is closed. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s jaw has become a vicious looking snout, with large fangs visible even when their mouth is closed. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + PM_HellhoundMorph + PM_HellhoundEar + + +
  • Combo
  • +
  • Major
  • +
    + + Parts/COMBINATIONS/Hellhound/Hellhound_Ear_Left + Parts/COMBINATIONS/Hellhound/Hellhound_Ear_Left_Behind + Parts/COMBINATIONS/Hellhound/Hellhound_Ear_Right + Parts/COMBINATIONS/Hellhound/Hellhound_Ear_Right_Behind + + +
  • + grown + + [PAWN_nameDef]'s ear has become long and pointed, like that of a great canine. + +
  • +
    +
    + + + PM_HellhoundMorph + PM_HellhoundTail + + +
  • Combo
  • +
    + + Parts/COMBINATIONS/Hellhound/Hellhound_Tail + + +
  • + grown + + [PAWN_nameDef] has grown a long muscular tail with a spaded tip + +
  • +
    +
    + + + PM_HellhoundMorph + PM_HellhoundHeadspike + + [PAWN_nameDef] has grown a large sharp spike on their skull + + Parts/COMBINATIONS/Hellhound/Hellhound_Headspikes + + +
  • Combo
  • +
  • Major
  • +
    + +
  • Head
  • +
    + +
  • +
    +
    + + + + PM_HellhoundMorph + PM_HellhoundSpikes + + [PAWN_nameDef] has grown a series of sharp spikes from their spine + + Parts/COMBINATIONS/Hellhound/Hellhound_Spikes + + +
  • Combo
  • +
  • Major
  • +
    + +
  • Spine
  • +
    + +
  • +
    +
    + + + PM_HellhoundMorph + PM_HellhoundPaws + + By some horrific combination of mechanite functionality, these hands have externally ossified and are controlled by internal tendons. They are unnerving to look at and possess very sharp claws + +
  • Major
  • +
  • Combo
  • +
    + +
  • Hand
  • +
    + +
  • + -1 + -0.9 + + + This bone paw has degraded into a more inflexible paw than normal, and is not very useful. +
  • +
  • + 0 + 0 + clawed + Each finger on this hand is tipped with a sharp claw. + 0.3 +
  • +
  • + 0.2 + 0 + padded + 0.3 +
  • +
  • + 0.4 + -0.15 + handpaw +
  • +
  • + 0.6 + -0.25 + inflexible handpaw +
  • +
  • + 0.8 + -0.4 + +
  • +
  • + 0.99 + -0.1 + [PAWN_nameDef] has largely adapted to having bone paws, and is trying to recover flexibility in the digits. + +
  • +
  • + 1.5 + bone handpaw + Further adaptation to this bone paw has allowed it to become as dextrous as a normal hand again. +
  • +
  • + 2.5 + dextrous bone handpaw + 0.1 + Further adaptation to this bone paw has allowed it to become dextrous again, and with even finer manipulation than a regular hand. +
  • +
    + +
  • + +
  • + + False + +
  • Scratch
  • + + 8.0 + 1.5 + true + + + +
  • + 0.15 +
  • +
    +
    + + + + + + PM_HellhoundMorph + PM_HellhoundHorns + + Horns of a hellhound. + + + + + +
  • Combo
  • +
    + +
  • + initial + + A small pair of horn tips have protruded through the scalp, and seem to be growing further. + +
  • + + 0 + 0 +
  • + + + +
  • + nubs + + [PAWN_nameDef] has grown a pair of horn nubs on their skull. Short, but already sharp. + +
  • + + 0.5 + 2.0 +
  • + + + + +
  • + short + + [PAWN_nameDef] has grown a pair of short and serrated horns from their skull. + + Parts/COMBINATIONS/Hellhound/Hellhound_Horns + + +
  • + + 0.5 + 4.0 +
  • + + + +
  • + horns + + [PAWN_nameDef] has grown a pair of large, serrated horns from their skull. + + Parts/COMBINATIONS/Hellhound/Hellhound_Horns + + +
  • + + 1.0 + 9.0 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Stab
  • + + 0 + 1.7 + true + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_MorphDef.xml new file mode 100644 index 000000000..f76a6f6b9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_MorphDef.xml @@ -0,0 +1,26 @@ + + + Scavenger + +
  • Combat
  • +
    + +
  • + MeatLover + false +
  • +
    + + + +
  • + AteCorpse + WargMorphAteCorpse +
  • +
    + true + true +
    +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_Parts.xml new file mode 100644 index 000000000..b2c2ce832 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Scavenger_Parts.xml @@ -0,0 +1,119 @@ + + + +
  • + growing + + [PAWN_nameDef]'s new snout doesn't seem to have grown big enough to fit all of [PAWN_possessive] new teeth. One thing is for sure, it makes for a meanacing smile. + +
  • +
  • + adapting + + [PAWN_nameDef]'s jaw has become a vicious looking snout, with large fangs visible even when their mouth is closed. The strange shape makes speaking very difficult. + + -0.05 + 0.025 + + +
  • +
  • + adapted + + [PAWN_nameDef]'s jaw has become a vicious looking snout, with large fangs visible even when their mouth is closed. Adapting to it has made speaking less frustrating. + +
  • + Sight + +0.05 +
  • + + + -0.115 + 0.05 + + +
  • + + 9.5 +
  • +
    + + +
  • + paragon + + [PAWN_nameDef]'s jaw has become a vicious looking snout, with large fangs visible even when their mouth is closed. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + Sight + +0.05 +
  • + + + -0.15 + 0.1 + + +
  • + + 9.5 +
  • +
    + + +
    +
    + + + +
  • + growing + + +
  • + Hearing + +0.05 +
  • + + + +
  • + grown + + +
  • + Hearing + +0.1 +
  • + + + +
    +
    + + + +
  • + growing + + + -0.0175 + +0.1 + +0.1 + + +
  • +
  • + grown + + A wolf-like tail hangs from [PAWN_nameDef]'s spine, alert and waiting for a hunt. + + -0.035 + +0.2 + +0.2 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Full.xml new file mode 100644 index 000000000..ea30ad87c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphWargTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a wargmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far fiercer. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + WargMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + WargMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Memories.xml new file mode 100644 index 000000000..c4a2a26a7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Memories.xml @@ -0,0 +1,129 @@ + + + WargTransformationMemory + +
  • + + I feel so brutish and bestial. + -3 +
  • +
  • + + These muscles make me feel so powerful, like I could run forever! + +3 +
  • +
  • + + I look so ugly and animalistic. I don't want this at all! + -5 +
  • +
  • + + I feel so bestial and strong. I bet it would be even better as a full warg! + +1 +
  • +
    +
    + + + WargRevertedMemory + +
  • + + I'm normal again, and veggies don't taste disgusting anymore! + +3 +
  • +
  • + + I feel so much weaker, and meat tastes so bland now. + -3 +
  • +
  • + + Those bestial features and urges are gone, phew! + +10 +
  • +
  • + + I feel so weak now. I wanted more, not less! + -5 +
  • +
    +
    + + + 1 + EtherWargMuzzle + +
  • + + These jaws are very strong...I REALLY hope I don't bite my tongue by accident. + true + -1 +
  • +
  • + + The bite force of these jaws is incredible! No need for cutlery any more! + true + 2 +
  • +
  • + + I look like a rabid beast... + true + -3 +
  • +
    +
    + + + 1 + EtherWargEar + +
  • + + I swear these things move as if they have a mind of their own. + true + -1 +
  • +
  • + + I can hear prey from a mile away! + true + 1 +
  • +
  • + + Theses ears belong on a corpse eating warg...NOT ME. + true + -2 +
  • +
    +
    + + + 1 + EtherWargTail + +
  • + + Damn thing keeps knocking over everything it touches! + true + -1 +
  • +
  • + + This thing is unbelievably strong, I could probably beat someone in an arm wrestle with it! + true + 1 +
  • +
  • + + It's bristly, stiff and has an unnatural amount of muscle in it...disgusting. + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_MorphDef.xml new file mode 100644 index 000000000..2784a14a6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_MorphDef.xml @@ -0,0 +1,23 @@ + + + WargMorph + + A large humanoid canine resulting from a human that has been exposed to warg specific mutagens. Much like feral wargs, they are exceptionally dangerous in combat, and easily upset if there aren't other canines around. + Warg + PawnmorphWargTF + PawnmorphWargTFPartial + +
  • Temperate
  • +
  • Cold
  • +
    + + + (123,104,89) + + + + WargTransformationMemory + WargRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Partial.xml new file mode 100644 index 000000000..11c3239a9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphWargTFPartial + + This person has mechanites in their blood that are providing them with warg-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + WargMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Parts.xml new file mode 100644 index 000000000..77f3cb303 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Scavenger/Warg/Warg_Parts.xml @@ -0,0 +1,71 @@ + + + EtherWargMuzzle + WargMorph + EtherWargMuzzle + + + Parts/Warg/Warg_Muzzle + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, like that of a warg. [PAWN_possessive] teeth are pointed to suit. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, like that of a warg. [PAWN_possessive] teeth are pointed to suit. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, like that of a warg. [PAWN_possessive] teeth are pointed to suit. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherWargEar + WargMorph + EtherWargEar + + + Parts/Warg/Warg_Ear_Left + Parts/Warg/Warg_Ear_Left_Behind + Parts/Warg/Warg_Ear_Right + Parts/Warg/Warg_Ear_Right_Behind + + +
  • + grown + + The rugged, pointed ear of a hungry warg. + +
  • +
    +
    + + + EtherWargTail + WargMorph + EtherWargTail + + + Parts/Warg/Warg_Tail + + +
  • + grown + + A thin tail with a tuft of fur at the end. + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Aspects.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Aspects.xml new file mode 100644 index 000000000..81693c06d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Aspects.xml @@ -0,0 +1,17 @@ + + + MeatLover + + This pawn has developed a taste for raw meat, and is less likely to get sick from it. + Pawnmorph.Aspects.MeatLover + true + (191,25,61) + true + +
  • + + [PAWN_nameDef] has developed a taste for raw meat. +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_MorphDef.xml new file mode 100644 index 000000000..cd743c133 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_MorphDef.xml @@ -0,0 +1,5 @@ + + + Carnivora + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Parts.xml new file mode 100644 index 000000000..9058afcb4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Carnivora_Parts.xml @@ -0,0 +1,100 @@ + + + +
  • + +
  • + + False + +
  • Bite
  • + + 8 + 2 + true + + + +
    + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + growing + + +
  • + + 0.5 + 4 +
  • + + + +
  • + adapting + + +
  • + + 0.5 + 8.5 +
  • + + + +
  • + adapted + + +
  • + + 1 + 8.5 +
  • + + + +
  • + paragon + + +
  • + + 1 + 8.5 +
  • + + + +
    +
    + + + + + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_MorphDef.xml new file mode 100644 index 000000000..21f34c269 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_MorphDef.xml @@ -0,0 +1,14 @@ + + + BigFelis + +
  • Combat
  • +
    + +
  • + MeatLover + false +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_Parts.xml new file mode 100644 index 000000000..88bf5ecac --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/BigFelis_Parts.xml @@ -0,0 +1,69 @@ + + + +
  • + adapting + + A powerful feline muzzle rests prominently on [PAWN_nameDef]'s face. The occasional yawn reveals a row of dangeously sharp teeth. [PAWN_nameDef] is still figuring out how to speak with these new features. + + 0.05 + + +
  • +
  • + adapted + + A powerful feline muzzle rests prominently on [PAWN_nameDef]'s face. The occasional yawn reveals a row of dangeously sharp teeth. Adapting to it has made speaking less frustrating. + + 0.2 + + +
  • +
  • + paragon + + A powerful feline muzzle rests prominently on [PAWN_nameDef]'s face. The occasional yawn reveals a row of dangeously sharp teeth. With further adaptation, [PAWN_nameDef] has learned to speak normally. + + 0.25 + + +
  • +
    +
    + + + + + + +
  • + growing + + +
  • + Moving + +0.05 +
  • + + + +0.1 + + + +
  • + grown + + +
  • + Moving + +0.1 +
  • + + + +0.2 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Full.xml new file mode 100644 index 000000000..5b21937f3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphCougarTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a cougarmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + CougarMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CougarMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Memories.xml new file mode 100644 index 000000000..7fe5c4c79 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Memories.xml @@ -0,0 +1,54 @@ + + + CougarTransformationMemory + +
  • + + I have this uncontrollable urge to pounce and hunt things. + -3 +
  • +
  • + + I'm so sleek and svelte, this is fantastic! + +3 +
  • +
  • + + I don't want to be a stupid big cat! I hate cats! + -5 +
  • +
  • + + Meow! Now, to go the rest of the way? + +1 +
  • +
    +
    + + + CougarRevertedMemory + +
  • + + Those claws were really getting in the way. + 3 +
  • +
  • + + Not fair, I enjoyed feeling so sleek. + -3 +
  • +
  • + + Finally, no more hairballs! + 10 +
  • +
  • + + This is the opposite of what I wanted. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_MorphDef.xml new file mode 100644 index 000000000..187bed59c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_MorphDef.xml @@ -0,0 +1,23 @@ + + + CougarMorph + + A human variant with feline-like features. They have a similar appearance to cats, but are bigger and have larger jowls. They are faster and more dexterous than regular humans, and they have an advantage in melee. Some of them prefer the terms "pumamorph" or "mountain-lionmorph." + Cougar + +
  • Arid
  • +
  • Temperate
  • +
    + PawnmorphCougarTF + PawnmorphCougarTFPartial + + + (163,130,104) + + + + CougarTransformationMemory + CougarRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Partial.xml new file mode 100644 index 000000000..3d69e80cc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphCougarTFPartial + + This person has mechanites in their blood that are providing them with cougar-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CougarMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml new file mode 100644 index 000000000..a453b68e2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml @@ -0,0 +1,52 @@ + + + CougarMorph + EtherCougarJaw + + + + + Parts/Cougar/Cougar_Muzzle_Male + Parts/Cougar/Cougar_Muzzle_Female + + + + + + + CougarMorph + EtherCougarEar + + + Parts/Cougar/Cougar_Ear_Left + + Parts/Cougar/Cougar_Ear_Right + + + +
  • + grown + + This ear has grown pointed and furred, keen and twitching, turning to listen to distant sounds. + +
  • +
    +
    + + + CougarMorph + EtherCougarTail + + + Parts/Cougar/Cougar_Tail + + +
  • + grown + + A long, sleek tail. It flicks back and forth whenever [PAWN_nameDef] is displeased with something. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Full.xml new file mode 100644 index 000000000..ac02bea61 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphLynxTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a lynxmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + LynxMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + LynxMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Memories.xml new file mode 100644 index 000000000..737b829fc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Memories.xml @@ -0,0 +1,54 @@ + + + LynxTransformationMemory + +
  • + + I'm a... cat? What. + -3 +
  • +
  • + + I'm not just a regular cat, I'm a cool-looking lynx! + +3 +
  • +
  • + + Ugh! Hairball! Disgusting! + -5 +
  • +
  • + + I think I want to go out and hunt mice. + +1 +
  • +
    +
    + + + LynxRevertedMemory + +
  • + + That fur was getting stuffy... and I shed too much. + 3 +
  • +
  • + + But I looked so cool! + -3 +
  • +
  • + + No more hairballs! Thank goodness! + 10 +
  • +
  • + + This isn't what I wanted. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_MorphDef.xml new file mode 100644 index 000000000..028de9d7e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_MorphDef.xml @@ -0,0 +1,23 @@ + + + LynxMorph + + A human variant with feline-like features. They have a similar appearance to cats, but usually have tufted ears and a stubby tail. They are faster and more dexterous than regular humans, and they have an advantage in melee. + Lynx + +
  • Cold
  • +
  • Temperate
  • +
    + PawnmorphLynxTF + PawnmorphLynxTFPartial + + + (220,198,160) + + + + LynxTransformationMemory + LynxRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Partial.xml new file mode 100644 index 000000000..b1bff16b3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphLynxTFPartial + + This person has mechanites in their blood that are providing them with lynx-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + LynxMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Parts.xml new file mode 100644 index 000000000..9fece2155 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Lynx/Lynx_Parts.xml @@ -0,0 +1,47 @@ + + + LynxMorph + EtherLynxJaw + + + Parts/Lynx/Lynx_Muzzle + + + + + LynxMorph + EtherLynxEar + + + Parts/Lynx/Lynx_Ear_Left + Parts/Lynx/Lynx_Ear_Left_Behind + Parts/Lynx/Lynx_Ear_Right + Parts/Lynx/Lynx_Ear_Right_Behind + + +
  • + grown + + With a pointed tip and fluff of fur at the end, this ear has grown into what looks like a lynx's style of auditory apparatus. + +
  • +
    +
    + + + LynxMorph + EtherLynxTail + + + Parts/Lynx/Lynx_Tail + + +
  • + grown + + Unlike most felines, the tail of a lynx is short and stubby. [PAWN_nameDef] has one of them now. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Memories.xml new file mode 100644 index 000000000..9e1c80b91 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Memories.xml @@ -0,0 +1,128 @@ + + + + 1 + EtherFelineJaw + +
  • + + It's hard to talk without purring. + true + -1 +
  • +
  • + + Rrowwl! + true + 2 +
  • +
  • + + No! I don't want to purr! + true + -3 +
  • +
    +
    + + + 1 + EtherFelineEar + +
  • + + Ouch, these things can hear everything. + true + -1 +
  • +
  • + + I can hear everything! + true + 1 +
  • +
  • + + I feel like an anime character... + true + -2 +
  • +
    +
    + + + 1 + EtherFelineTail + +
  • + + This tail keeps getting in the way, but it's good for balance. + true + -1 +
  • +
  • + + Aww! It's so cute! + true + 1 +
  • +
  • + + I keep tripping over this stupid tail! + true + -2 +
  • +
    +
    + + + 1 + EtherFelineEye + +
  • + + My eyes feel strange, but I can see better than I ever could before. + true + -1 +
  • +
  • + + I can see in the dark better than ever, and my eyes look so mysterious! + true + 1 +
  • +
  • + + These slit pupils make me look unnatural. + true + -2 +
  • +
    +
    + + + 1 + EtherFelineClaws + +
  • + + Yowtch! Poked myself again. + true + -1 +
  • +
  • + + Claws are so useful, I'll never need a knife again! + true + 2 +
  • +
  • + + I keep poking holes in my clothes with these unruly claws! + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_MorphDef.xml new file mode 100644 index 000000000..a923205ee --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_MorphDef.xml @@ -0,0 +1,5 @@ + + + Feline + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Parts.xml new file mode 100644 index 000000000..52ce8658a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Feline_Parts.xml @@ -0,0 +1,52 @@ + + + EtherFelineJaw + +
  • + growing + + [PAWN_nameDef]'s face is growing into a muzzle with a distinctly feline apperance. A dense pack of whiskers has sprouted out from the top of [PAWN_possessive] fluffy lips. + +
  • +
    +
    + + + EtherFelineEar + +
  • + growing + + +
  • + Hearing + +0.125 +
  • + + + +0.1 + + + +
  • + grown + + +
  • + Hearing + +0.25 +
  • + + + +0.2 + + + +
    +
    + + + EtherFelineTail + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Full.xml new file mode 100644 index 000000000..2551eb567 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphCatTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a catmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + CatMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CatMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_MorphDef.xml new file mode 100644 index 000000000..ee8d6f88d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_MorphDef.xml @@ -0,0 +1,14 @@ + + + CatMorph + + Cat + PawnmorphCatTF + PawnmorphCatTFPartial + + + (189,171,159) + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Partial.xml new file mode 100644 index 000000000..9abcee29f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphCatTFPartial + + This person has mechanites in their blood that are providing them with cat-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CatMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Parts.xml new file mode 100644 index 000000000..8b61cb681 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Parts.xml @@ -0,0 +1,31 @@ + + + CatMorph + EtherCatMuzzle + + + Parts/Cat/Cat_Muzzle + + + + + CatMorph + EtherCatEar + + + Parts/Cat/Cat_Ear_Left + Parts/Cat/Cat_Ear_Left_Behind + Parts/Cat/Cat_Ear_Right + Parts/Cat/Cat_Ear_Right_Behind + + + + + CatMorph + EtherCatTail + + + Parts/Cat/Cat_Tail + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Tales.xml new file mode 100644 index 000000000..895f3db33 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Cat/Cat_Tales.xml @@ -0,0 +1,31 @@ + + + + EyesBecomeFeline + + + +
  • tale_noun->[PAWN_nameDef]'s eyes become feline
  • +
  • image->[PAWN_nameFull] pupils shift to feline slits [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s eyes begin to change into ones that look like they belong on a cat [circumstance_group]
  • +
    +
    +
    + + + HandsBecomeCatPaws + + + +
  • tale_noun->[PAWN_nameDef]'s hands becoming cat paws
  • +
  • tale_noun->[PAWN_nameDef]'s growing feline claws
  • +
  • image->[PAWN_nameFull]'s nails begin to lengthen into long, sharp claws [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s palms turn into soft pads [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s hands start to turn into feline paws, with sharp retractable claws [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems oddly pleased with [PAWN_possessive] new paws
  • +
  • desc_sentence->[PAWN_pronoun] mourns the loss of their thumbs
  • +
  • desc_sentence->[PAWN_pronoun] takes a swipe at someone nearby
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Memories.xml new file mode 100644 index 000000000..c1efd9595 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Memories.xml @@ -0,0 +1,79 @@ + + + CatTransformationMemory + +
  • + + I'm... a cat? No, don't pet me. I do have claws and I will cut you. + -3 +
  • +
  • + + Cat? I'm a kitty cat! And I dance dance dance, and I dance dance dance. + +3 +
  • +
  • + + The world is too detailed and so bright. I keep cutting myself with these damn claws. + -5 +
  • +
  • + + Wow, the world looks so sharp, and these claws are sharp too! Imagine if I could look into all the small places on all fours! + +1 +
  • +
    +
    + + + CatRevertedMemory + +
  • + + I'm back to my normal, human self again! No more fur or claws. + 3 +
  • +
  • + + Aw man, but I was really enjoying threatening to claw people. + -3 +
  • +
  • + + No more claws! Finally, I'll stop accidentally stabbing myself. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + + + 1 + EtherCatMuzzle + +
  • + + My jaw doesn't feel right... + true + -1 +
  • +
  • + + I have whiskers now!? Nyan! + true + 2 +
  • +
  • + + Great, a face not even a mother could love. + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_MorphDef.xml new file mode 100644 index 000000000..8af4449ea --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_MorphDef.xml @@ -0,0 +1,14 @@ + + + A human variant with many cat features. Uusually defined by a short whiskered muzzle, a long, thin tail and sharp clawed hands. They are faster and more dextrous than regular humans, and they have an advantage in melee. + Felis + +
  • Social
  • +
  • Domestic
  • +
    + + CatTransformationMemory + CatRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Parts.xml new file mode 100644 index 000000000..2b4593f98 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Felis/Felis_Parts.xml @@ -0,0 +1,73 @@ + + + EtherCatMuzzle + +
  • + adapting + + [PAWN_nameDef]'s face has pressed out into a cat shape. They may hiss and meow more than talk. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has pressed out into a cat shape. They may hiss and meow more than talk. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has pressed out into a cat shape. They may hiss and meow more than talk. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + +
  • + grown + + a triangular, fuzzy ear graces [PAWN_nameDef]'s head. It coils back when [PAWN_pronoun] is getting ready to pounce. + +
  • +
    +
    + + + +
  • + growing + + +
  • + Moving + +0.025 +
  • + + + +0.1 + +0.01 + + + +
  • + grown + + A long, cat-like tail. It flicks back and forth whenever [PAWN_nameDef] is displeased with something. + +
  • + Moving + +0.05 +
  • + + + +0.2 + +0.01 + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Leopard_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Leopard_Memories.xml new file mode 100644 index 000000000..cfe09ae07 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Leopard_Memories.xml @@ -0,0 +1,78 @@ + + + + 1 + EtherLeopardJaw + +
  • + + It's hard to talk without purring. + true + -1 +
  • +
  • + + Mrrow! + true + 2 +
  • +
  • + + No! I don't want to purr! + true + -3 +
  • +
    +
    + + + 1 + EtherLeopardEar + +
  • + + As far as things go, these aren't too bad. + true + 1 +
  • +
  • + + I can hear everything! + true + 2 +
  • +
  • + + I feel like an anime character... + true + -2 +
  • +
    +
    + + + 1 + EtherLeopardTail + +
  • + + These spots are kinda cool. + true + 1 +
  • +
  • + + It's not as fluffy as I would have liked, but it's still cool! + true + 2 +
  • +
  • + + This thing has a mind of its own! Get it off me! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Snowleopard_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Snowleopard_Memories.xml new file mode 100644 index 000000000..4faf73be7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Leopard/Snowleopard_Memories.xml @@ -0,0 +1,78 @@ + + + + 1 + EtherSnowLeopardJaw + +
  • + + It's hard to talk without purring. + true + -1 +
  • +
  • + + Mrrow! + true + 2 +
  • +
  • + + No! I don't want to purr! + true + -3 +
  • +
    +
    + + + 1 + EtherSnowLeopardEar + +
  • + + As far as things go, these aren't too bad. They're kinda cute, actually. + true + 1 +
  • +
  • + + I can hear everything! + true + 2 +
  • +
  • + + I feel like an anime character... + true + -2 +
  • +
    +
    + + + 1 + EtherSnowLeopardTail + +
  • + + Sure, it's fluffy and all, but it kind of gets in the way... + true + -1 +
  • +
  • + + So big! So fluffy! I love it! + true + 1 +
  • +
  • + + God, this thing is always getting in my way... + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Aspects.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Aspects.xml new file mode 100644 index 000000000..7ce5fb832 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Aspects.xml @@ -0,0 +1,32 @@ + + + PantherAspect + + The blood of a panther runs through this pawn's veins. Their senses are keener, their body more agile, and their claws sharper. They are the perfect predator. + true + +
  • + + The blood of a panther runs through [PAWN_nameDef]'s veins. [PAWN_possessive] senses are keener, [PAWN_possessive] body more agile, and [PAWN_possessive] claws sharper. [PAWN_pronoun] is the perfect predator. + +
  • + Moving + 0.05 +
  • +
  • + Sight + 0.05 +
  • +
  • + Hearing + 0.05 +
  • + + + 20 + 0.15 + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Full.xml new file mode 100644 index 000000000..e66c91706 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphPantherTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a panthermorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + PantherMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PantherMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Memories.xml new file mode 100644 index 000000000..11c53e2a5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Memories.xml @@ -0,0 +1,54 @@ + + + PantherTransformationMemory + +
  • + + I have this uncontrollable urge to pounce and hunt things. + -3 +
  • +
  • + + I'm so sleek and svelte, this is fantastic! + +3 +
  • +
  • + + I don't want to be a stupid big cat! I hate cats! + -5 +
  • +
  • + + Meow! Now, to go the rest of the way? + +1 +
  • +
    +
    + + + PantherRevertedMemory + +
  • + + Those claws were really getting in the way. + 3 +
  • +
  • + + Not fair, I enjoyed feeling so sleek. + -3 +
  • +
  • + + Finally, no more hairballs! + 10 +
  • +
  • + + This is the opposite of what I wanted. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_MorphDef.xml new file mode 100644 index 000000000..8d8f01e3d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_MorphDef.xml @@ -0,0 +1,28 @@ + + + PantherMorph + + A large catlike morph covered in a sleek black fur. They are natural predators, and have the agility and killing power to prove it. + Panther + +
  • Tropical
  • +
    + PawnmorphPantherTF + PawnmorphPantherTFPartial + +
  • + PantherAspect + false +
  • +
    + + + (60,60,60) + + + + PantherTransformationMemory + PantherRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Partial.xml new file mode 100644 index 000000000..34ce39e25 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphPantherTFPartial + + This person has mechanites in their blood that are providing them with panther-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PantherMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml new file mode 100644 index 000000000..52556fd5a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml @@ -0,0 +1,52 @@ + + + PantherMorph + EtherPantherJaw + + + + + Parts/Panther/Panther_Muzzle_Male + Parts/Panther/Panther_Muzzle_Female + + + + + + + PantherMorph + EtherPantherEar + + + Parts/Panther/Panther_Ear_Left + + Parts/Panther/Panther_Ear_Right + + + +
  • + grown + + A triangular, fuzzy ear graces [PAWN_nameDef]'s head. It coils back when [PAWN_pronoun] is getting ready to pounce. + +
  • +
    +
    + + + PantherMorph + EtherPantherTail + + + Parts/Panther/Panther_Tail + + +
  • + grown + + A long, sleek tail. It flicks back and forth whenever [PAWN_nameDef] is displeased with something. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_MorphDef.xml new file mode 100644 index 000000000..213ae72a9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_MorphDef.xml @@ -0,0 +1,18 @@ + + + Pantherine + +
  • Combat
  • +
    + +
  • + PridefulAspect + false +
  • +
  • + MeatLover + false +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_Parts.xml new file mode 100644 index 000000000..8066ef33c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Pantherine_Parts.xml @@ -0,0 +1,69 @@ + + + +
  • + adapting + + A powerful feline muzzle rests prominently on [PAWN_nameDef]'s face. The occasional yawn reveals a row of dangeously sharp teeth. The strange shape makes speaking very difficult. + + 0.05 + + +
  • +
  • + adapted + + A powerful feline muzzle rests prominently on [PAWN_nameDef]'s face. The occasional yawn reveals a row of dangeously sharp teeth. Adapting to it has made speaking less frustrating. + + 0.2 + + +
  • +
  • + paragon + + A powerful feline muzzle rests prominently on [PAWN_nameDef]'s face. The occasional yawn reveals a row of dangeously sharp teeth. With further adaptation, [PAWN_nameDef] has learned to speak normally. + + 0.25 + + +
  • +
    +
    + + + + + + +
  • + growing + + +
  • + Moving + +0.025 +
  • + + + +0.1 + + + +
  • + grown + + +
  • + Moving + +0.05 +
  • + + + +0.2 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Full.xml new file mode 100644 index 000000000..6e7b46d21 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphArcticFoxTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an arctic variety of foxmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more vulpine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ArcticFoxMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ArcticFoxMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_MorphDef.xml new file mode 100644 index 000000000..f475a0e51 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_MorphDef.xml @@ -0,0 +1,18 @@ + + + ArcticFoxMorph + + Fox_Arctic + +
  • Cold
  • +
    + + PawnmorphArcticFoxTFPartial + PawnmorphArcticFoxTF + + + (220,220,220) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Partial.xml new file mode 100644 index 000000000..f482dc7d4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphArcticFoxTFPartial + + This person has mechanites in their blood that are providing them with arctic fox-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ArcticFoxMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml new file mode 100644 index 000000000..079e16588 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml @@ -0,0 +1,35 @@ + + + EtherArcticFoxMuzzle + ArcticFoxMorph + + + + + Parts/FoxArctic/ArcticFox_Muzzle_Male + Parts/FoxArctic/ArcticFox_Muzzle_Female + + + + + + + EtherArcticFoxEar + ArcticFoxMorph + + + Parts/FoxArctic/ArcticFox_Ear_Left + Parts/FoxArctic/ArcticFox_Ear_Right + + + + + EtherArcticFluffyTail + ArcticFoxMorph + + + Parts/FoxArctic/ArcticFox_Tail + + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Full.xml new file mode 100644 index 000000000..05d469df3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphFennecFoxTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a foxmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more fennec than human. But would that really be so bad? + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + FennecFoxMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + FennecFoxMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_MorphDef.xml new file mode 100644 index 000000000..a9290454e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_MorphDef.xml @@ -0,0 +1,18 @@ + + + FennecFoxMorph + + Fox_Fennec + +
  • Arid
  • +
    + + PawnmorphFennecFoxTFPartial + PawnmorphFennecFoxTF + + + (203,167,107) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Partial.xml new file mode 100644 index 000000000..ec04e6563 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphFennecFoxTFPartial + + This person has mechanites in their blood that are providing them with fennec-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + FennecFoxMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml new file mode 100644 index 000000000..292f617d6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml @@ -0,0 +1,34 @@ + + + EtherFennecFoxMuzzle + FennecFoxMorph + + + + + Parts/FoxFennec/FennecFox_Muzzle_Male + Parts/FoxFennec/FennecFox_Muzzle_Female + + + + + + + EtherFennecFoxEar + FennecFoxMorph + + + Parts/FoxFennec/FennecFox_Ear_Left + Parts/FoxFennec/FennecFox_Ear_Right + + + + + EtherFennecFluffyTail + FennecFoxMorph + + + Parts/FoxFennec/FennecFox_Tail + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Full.xml new file mode 100644 index 000000000..f605680d4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphFoxTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a foxmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming a far more cunning version of themselves. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + FoxMorph + + + + TransformationCanid + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + FoxMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_MorphDef.xml new file mode 100644 index 000000000..900835ab1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_MorphDef.xml @@ -0,0 +1,18 @@ + + + FoxMorph + + Fox_Red + +
  • Temperate
  • +
    + + PawnmorphFoxTFPartial + PawnmorphFoxTF + + + (178,99,33) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Partial.xml new file mode 100644 index 000000000..2a663b293 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphFoxTFPartial + + This person has mechanites in their blood that are providing them with fox-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + FoxMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml new file mode 100644 index 000000000..a4a02c0e6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml @@ -0,0 +1,34 @@ + + + EtherFoxMuzzle + FoxMorph + + + + + Parts/FoxRed/RedFox_Muzzle_Male + Parts/FoxRed/RedFox_Muzzle_Female + + + + + + + EtherFoxEar + FoxMorph + + + Parts/FoxRed/RedFox_Ear_Left + Parts/FoxRed/RedFox_Ear_Right + + + + + EtherFluffyTail + FoxMorph + + + Parts/FoxRed/RedFox_Tail + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml new file mode 100644 index 000000000..a78deee49 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml @@ -0,0 +1,35 @@ + + + FoxmorphGeneral + hunted fox + foxmorph + [PAWN_nameDef] was captured by a twisted hunting club that chased people down with dogs, and was looking for a new spin on it. Fortunately, [PAWN_nameDef] became cunning enough to escape again. + Adulthood + Thin + Thin + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + Intellectual + 3 +
  • +
  • + Social + 2 +
  • +
    + +
  • + 6~8 + +
  • ArcticFoxMorph
  • +
  • FennecFoxMorph
  • +
  • FoxMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Memories.xml new file mode 100644 index 000000000..4cea48e5a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Memories.xml @@ -0,0 +1,154 @@ + + + FoxTransformationMemory + +
  • + + I feel like I need to be hunting chickens, but I don't want to! + -3 +
  • +
  • + + YIP! This is great! Time for an egg sandwich. + +3 +
  • +
  • + + I don't want to YIP! + -5 +
  • +
  • + + Ooh, so sleek — it could be fun to go full fox. + +1 +
  • +
    +
    + + + FoxRevertedMemory + +
  • + + No more shedding! + 3 +
  • +
  • + + Dammit, going 'yap-yap' was so fun. + -3 +
  • +
  • + + NO MORE FUR! + 10 +
  • +
  • + + But I was so fluffy! This isn't what I wanted! + -5 +
  • +
    +
    + + + 1 + EtherFoxEar + +
  • + + Okay, I'll admit it, these are pretty cool. + true + 1 +
  • +
  • + + Pointy and fluffy ears, these are great — and I can hear everything! + true + 2 +
  • +
  • + + ...if there's one awful mutation I'm OK with... + true + 0 +
  • +
    +
    + + + 1 + EtherFoxEye + +
  • + + I look reasonably exotic with these... + true + -1 +
  • +
  • + + I can see in the dark, and they look so cool! + true + 1 +
  • +
  • + + I look creepy with these... + true + -2 +
  • +
    +
    + + + 1 + EtherFoxMuzzle + +
  • + + I just licked my nose...eww. + true + -1 +
  • +
  • + + Oh, so that's how foxes make all those cool noises! Yip! + true + 2 +
  • +
  • + + My face is ruined, and I can't even talk right! + true + -3 +
  • +
    +
    + + + 1 + EtherFluffyTail + +
  • + + It gets in the way, but it's really fluffy...I could almost use it as a pillow. + true + 1 +
  • +
  • + + It's so fluffy I think I'm gonna die! + true + 2 +
  • +
  • + + Sure it's cute...but it's attached to me! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_MorphDef.xml new file mode 100644 index 000000000..3e0a93971 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_MorphDef.xml @@ -0,0 +1,13 @@ + + + A somewhat smaller fox-like humanoid, often the result of exposure to the associated mutagens. In addition to physical changes, these humanoids now share many traits with their feral counterparts like their keen hunting instincts, especially towards chickens. + Fox + +
  • Social
  • +
    + + FoxTransformationMemory + FoxRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Parts.xml new file mode 100644 index 000000000..7863fd9f1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Parts.xml @@ -0,0 +1,130 @@ + + + EtherFoxMuzzle + +
  • + growing + + [PAWN_nameDef]'s face continues to change, with nose, jaw, and chin, still growing outwards. It's starting to take shape as a sleek and graceful muzzle. + +
  • +
  • + adapting + + A slender muzzle graces [PAWN_nameDef]'s face, with a cunning smile and a silver tongue. The strange shape has made it difficult to talk, but despite this [PAWN_nameDef] has a way of getting what [PAWN_pronoun] wants. + + 0.05 + 0.05 + + +
  • + Talking + +0.2 +
  • + + + +
  • + adapted + + A slender muzzle graces [PAWN_nameDef]'s face, with a cunning smile and a silver tongue. Adaptation, and practice, has made for quite an elegant manner of speech. + + 0.1 + 0.15 + + +
  • + Talking + +0.4 +
  • + + + +
  • + paragon + + A slender muzzle graces [PAWN_nameDef]'s face, with a cunning smile and a silver tongue. With further adaptation, [PAWN_nameDef] has become a true master of persuasion. + + 0.15 + 0.15 + + +
  • + Talking + +0.5 +
  • + + + +
    +
    + + + EtherFoxEar + +
  • + growing + + +
  • + Hearing + +0.15 +
  • + + + +
  • + grown + + A big, fuzzy, triangle ear crowns [PAWN_nameDef]'s head, pivoting and flicking back to every sound it senses. + +
  • + Hearing + +0.3 +
  • + + + +
    +
    + + + EtherFluffyTail + +
  • + growing + + + +0.05 + +0.025 + + +
  • +
  • + grown + + A wonderfully fluffy fox tail drapes from [PAWN_nameDef]'s spine. Was that a small wag just then? + + +0.1 + +0.05 + + +
  • +
    + +
  • + paragon + + 2.5 + A luxurious fox tail drapes from [PAWN_nameDef]'s spine. It sweeps after them, keeping everything prim and proper! + + 0 + +0.1 + +0.05 + +2 + +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Tales.xml new file mode 100644 index 000000000..9a666768a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Tales.xml @@ -0,0 +1,16 @@ + + + + EyesBecomeVulpine + + + +
  • tale_noun->[PAWN_nameDef]'s eyes become vulpine
  • +
  • image->[PAWN_nameFull] pupils shift to fox-like slits [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s eyes begin to change into ones that look like they belong on a fox [circumstance_group]
  • +
  • image->[PAWN_nameFull] suddenly has trouble telling different colors apart [circumstance_group]
  • +
  • circumstance_phrase->as someone looks dazzled by [PAWN_possessive] exotic eyes
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_MorphDef.xml new file mode 100644 index 000000000..804195681 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_MorphDef.xml @@ -0,0 +1,8 @@ + + + Exotic + +
  • Exotic
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_Parts.xml new file mode 100644 index 000000000..c7f15f0a0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Exotic_Parts.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Full.xml new file mode 100644 index 000000000..d079b222d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphRaccoonTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a raccoonmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more raccoon than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + RaccoonMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + RaccoonMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Memories.xml new file mode 100644 index 000000000..106b542d0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Memories.xml @@ -0,0 +1,129 @@ + + + RaccoonTransformationMemory + +
  • + + I feel like digging in the trash, but... eugh. + -3 +
  • +
  • + + I'm a fluffy raccoon, awesome! + +3 +
  • +
  • + + I don't want to be a smelly raccoon! + -5 +
  • +
  • + + Wow, look at these dainty claws! + +1 +
  • +
    +
    + + + RaccoonRevertedMemory + +
  • + + I'm back to my normal, human self again! No more garbage, please. + 3 +
  • +
  • + + Aw man, but I looked so sneaky and cool. + -3 +
  • +
  • + + I don't think I can stand the smell of rubbish now. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + + + 1 + EtherRaccoonJaw + +
  • + + I feel like I should be rooting around in a trash can. + true + -1 +
  • +
  • + + Finally, these leftovers taste good! + true + 2 +
  • +
  • + + Why do I want to eat garbage... + true + -3 +
  • +
    +
    + + + 1 + EtherRaccoonEar + +
  • + + They're alright, but I'd prefer to have my normal ears. + true + 0 +
  • +
  • + + These ears are kinda cool. + true + 1 +
  • +
  • + + They're irritating and itchy. + true + -2 +
  • +
    +
    + + + 1 + EtherRaccoonTail + +
  • + + The pattern on this thing is kinda cool, I guess. + true + 1 +
  • +
  • + + It's like a tube of fluffiness! Tails are great! + true + 2 +
  • +
  • + + It won't come off!! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_MorphDef.xml new file mode 100644 index 000000000..aa8e88a7b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_MorphDef.xml @@ -0,0 +1,23 @@ + + + RaccoonMorph + + A shorter humanoid that looks very similar to a raccoon due to exposure to mutagens. They usually have a mask of black fur around their eyes and a striped tail. Although they would prefer digging through trash, they make excellent crafters. + Raccoon + +
  • Crafter
  • +
  • Temperate
  • +
    + PawnmorphRaccoonTF + PawnmorphRaccoonTFPartial + + + (174,172,174) + + + + RaccoonTransformationMemory + RaccoonRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Partial.xml new file mode 100644 index 000000000..f9b3ea8c2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphRaccoonTFPartial + + This person has mechanites in their blood that are providing them with raccoon-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + RaccoonMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Parts.xml new file mode 100644 index 000000000..b800e1811 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Exotic/Raccoon/Raccoon_Parts.xml @@ -0,0 +1,79 @@ + + + RaccoonMorph + EtherRaccoonJaw + + + Parts/Raccoon/Raccoon_Muzzle + + +
  • + adapting + + A short, pointed, and bandit-masked muzzle has replaced [PAWN_nameDef]'s usual face. [PAWN_possessive] keen nose picks up the smell of rubbish from miles away. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A short, pointed, and bandit-masked muzzle has replaced [PAWN_nameDef]'s usual face. [PAWN_possessive] keen nose picks up the smell of rubbish from miles away. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A short, pointed, and bandit-masked muzzle has replaced [PAWN_nameDef]'s usual face. [PAWN_possessive] keen nose picks up the smell of rubbish from miles away. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + RaccoonMorph + EtherRaccoonEar + + + Parts/Raccoon/Raccoon_Ear_Left + Parts/Raccoon/Raccoon_Ear_Left_Behind + Parts/Raccoon/Raccoon_Ear_Right + Parts/Raccoon/Raccoon_Ear_Right_Behind + + +
  • + grown + + A short and fuzzy round ear has replaced [PAWN_nameDef]'s normal ear. + +
  • + Hearing + 0.1 +
  • + + + +
    +
    + + + RaccoonMorph + EtherRaccoonTail + + + Parts/Raccoon/Raccoon_Tail + + +
  • + grown + + The ringtail of a raccoon has grown out from [PAWN_nameDef]'s spine. It twitches when it senses rubbish. + +
  • + Moving + 0.05 +
  • + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Full.xml new file mode 100644 index 000000000..9ec5597ea --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphHareTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a haremorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more rabbit-like than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + HareMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + HareMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_MorphDef.xml new file mode 100644 index 000000000..20d50aba9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_MorphDef.xml @@ -0,0 +1,19 @@ + + + HareMorph + + Hare + +
  • Arid
  • +
  • Temperate
  • +
  • Domestic
  • +
    + PawnmorphHareTF + PawnmorphHareTFPartial + + + (130,127,106) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Partial.xml new file mode 100644 index 000000000..139db4fd8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphHareTFPartial + + This person has mechanites in their blood that are providing them with hare-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + HareMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Parts.xml new file mode 100644 index 000000000..d7337dab8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Hare/Hare_Parts.xml @@ -0,0 +1,31 @@ + + + EtherHareMuzzle + HareMorph + + + Parts/Hare/Hare_Muzzle + + + + + EtherHareEar + HareMorph + + + Parts/Hare/Hare_Ear_Left + Parts/Hare/Hare_Ear_Left_Behind + Parts/Hare/Hare_Ear_Right + Parts/Hare/Hare_Ear_Right_Behind + + + + + EtherHareTail + HareMorph + + + Parts/Hare/Hare_Tail + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Memories.xml new file mode 100644 index 000000000..2da0e915e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Memories.xml @@ -0,0 +1,154 @@ + + + HareTransformationMemory + +
  • + + My dentist is gonna hate this. + -3 +
  • +
  • + + Grass tastes so much better now for some reason. + +3 +
  • +
  • + + My teeth, they're so big! Gross! + -5 +
  • +
  • + + Nice, but imagine being picked up and hugged. + +1 +
  • +
    +
    + + + HareRevertedMemory + +
  • + + Phew, those ears were getting in the way. + 3 +
  • +
  • + + Eugh, grass tastes gross again, no thank you! + -3 +
  • +
  • + + MY TEETH ARE NORMAL AGAIN! REJOICE! + 10 +
  • +
  • + + No soft hugs for me. + -5 +
  • +
    +
    + + + 1 + EtherHareJaw + +
  • + + These whiskers and teeth are dumb. + true + -1 +
  • +
  • + + Check out my cute little button nose, I love it! + true + 3 +
  • +
  • + + I wasn't eating a leaf, you didn't see that! + true + -2 +
  • +
    +
    + + + 1 + EtherHareEar + +
  • + + This has been one bad magic trick. + true + -1 +
  • +
  • + + They're so cute, it's like I belong in a Playboy! + true + 3 +
  • +
  • + + These ears keep getting in the way! + true + -2 +
  • +
    +
    + + + 1 + EtherHareTail + +
  • + + Small and puffy. + true + 0 +
  • +
  • + + Soft! + true + 2 +
  • +
  • + + No, stop asking if I stole the carrots! + true + -4 +
  • +
    +
    + + + 1 + EtherHareLeg + +
  • + + If I hear one more 'spring in my step' joke... + true + -1 +
  • +
  • + + I guess these things ARE lucky! + true + 2 +
  • +
  • + + This is wrong. My feet are wrong, they're covered in fur...this is WRONG! + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_MorphDef.xml new file mode 100644 index 000000000..540a4a18f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_MorphDef.xml @@ -0,0 +1,13 @@ + + + The result of a mad scientist's attempt to take over the world, these docile creatures were designed to breed an army. Unfortunately for the morphs, they proved too timid to serve as proper militia and were abandoned soon after. + Leporid + +
  • Crafter
  • +
    + + HareTransformationMemory + HareRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Parts.xml new file mode 100644 index 000000000..08eb8906f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Leporid_Parts.xml @@ -0,0 +1,124 @@ + + + EtherHareJaw + +
  • + growing + + Shifting, twisting, pulsing. The painful transformation of [PAWN_nameDef]'s poor face continues. [PAWN_possessive] jaws have elongated into a snout and [PAWN_possessive] front teeth have grown longer. + +
  • +
  • + adapting + + [PAWN_nameDef]'s face has completely reshaped into one resembling a hare's, with a twitchy pink button nose and long buck teeth. The strange shape makes speaking very difficult. + +
  • + Consciousness + 0.05 +
  • + + + +
  • + adapted + + [PAWN_nameDef]'s face has completely reshaped into one resembling a hare's, with a twitchy pink button nose and long buck teeth. [PAWN_possessive] teeth are pointed to suit. Adapting to it has made speaking less frustrating. + +
  • + Consciousness + 0.1 +
  • + + + +
  • + paragon + + [PAWN_nameDef]'s face has completely reshaped into one resembling a hare's, with a twitchy pink button nose and long buck teeth. [PAWN_possessive] teeth are pointed to suit. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + Consciousness + 0.1 +
  • + + + +
    +
    + + + EtherHareEar + +
  • + growing + + +
  • + Hearing + +0.15 +
  • + + + +
  • + grown + + A long, furry ear sits atop [PAWN_nameDef]'s head, pivoting and flicking back to every sound it senses. It is suprisingly flexible. + +
  • + Hearing + +0.3 +
  • + + + +
    + +
  • + paragon + + 2.5 + A long, furry, flexible ear sits atop [PAWN_nameDef]'s head, pivoting and flicking back to every sound it senses. [PAWN_nameDef] hears everything, even sounds other mortals cannot hear. + +
  • + Hearing + +0.5 +
  • + + + +0.025 + + +
    +
    + + + EtherHareTail + +
  • + growing + + +
  • + Moving + +0.025 +
  • + + + +
  • + grown + + A small puff of fluff peaks out just above [PAWN_nameDef]'s rear. It's rather cute, actually. + +
  • + Moving + +0.05 +
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Full.xml new file mode 100644 index 000000000..cde51268e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphSnowhareTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a snowharemorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more prolific than a human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + SnowhareMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SnowhareMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_MorphDef.xml new file mode 100644 index 000000000..8671c7779 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_MorphDef.xml @@ -0,0 +1,18 @@ + + + SnowhareMorph + + Snowhare + +
  • Cold
  • +
  • Domestic
  • +
    + PawnmorphSnowhareTF + PawnmorphSnowhareTFPartial + + + (180,180,180) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Partial.xml new file mode 100644 index 000000000..2824be2c6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphSnowhareTFPartial + + This person has mechanites in their blood that are providing them with snowhare-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SnowhareMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Parts.xml new file mode 100644 index 000000000..206a30425 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Leporid/Snowhare/Snowhare_Parts.xml @@ -0,0 +1,32 @@ + + + EtherSnowHareMuzzle + SnowhareMorph + + + Parts/Hare/Hare_Muzzle + + + + + EtherSnowHareEar + SnowhareMorph + + + Parts/Hare/Hare_Ear_Left + Parts/Hare/Hare_Ear_Left_Behind + Parts/Hare/Hare_Ear_Right + Parts/Hare/Hare_Ear_Right_Behind + + + + + EtherSnowHareTail + SnowhareMorph + + + Parts/Hare/Hare_Tail + + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_MorphDef.xml new file mode 100644 index 000000000..9cbcff2dd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_MorphDef.xml @@ -0,0 +1,6 @@ + + + PawFooted + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_Parts.xml new file mode 100644 index 000000000..876ae862f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/PawFooted_Parts.xml @@ -0,0 +1,28 @@ + + + +
  • + pressing + + + Parts/Partials/PartialMuzzle/TinyMuzzle + + +
  • +
  • + growing + + + Parts/Partials/PartialMuzzle/PartialMuzzle + + +
  • +
    +
    + + + + + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Full.xml new file mode 100644 index 000000000..31065b380 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphAlphabeaverTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an alphabeavermorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more beaver than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + AlphabeaverMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + AlphabeaverMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Memories.xml new file mode 100644 index 000000000..09927f027 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Memories.xml @@ -0,0 +1,126 @@ + + + AlphabeaverTransformationMemory + +
  • + + I have.. An unpleasant urge to chew on trees. It's very distracting. + -3 +
  • +
  • + + I have powerful teeth, and a powerful tail. I feel like I could build a dam by myself! + +3 +
  • +
  • + + How am I supothst to sthpeak with thethse giant teeth?! Let alone eat?! + -5 +
  • +
  • + + This is fantastic! But can I go any further with this...? + +1 +
  • +
    +
    + + + AlphabeaverRevertedMemory + +
  • + + I'm back to normal, but it feels like I have splinters in my gums... + +3 +
  • +
  • + + I'll miss my fur coat. And being able to bite through wood. + -3 +
  • +
  • + + I'm back to my old self! No more buck teeth for me! + +10 +
  • +
  • + + So close to my dream, and yet, so far... + -5 +
  • +
    +
    + + + 1 + EtherAlphabeaverJaw + +
  • + + That tree over there looks delicious... + true + -1 +
  • +
  • + + I CAN EAT TREES! + true + 2 +
  • +
  • + + I CAN EAT TREES?!? + true + -3 +
  • +
    +
    + + 1 + EtherAlphabeaverEar + +
  • + + These ears are kind of weird. + true + -1 +
  • +
  • + + Can I hear underwater now? + true + 1 +
  • +
  • + + These ears are really weird, get them off! + true + -2 +
  • +
    +
    + + 1 + EtherAlphabeaverTail + +
  • + + Why is it so flat? + true + -1 +
  • +
  • + + Time to build a dam! + true + 1 +
  • +
  • + + I want to use this thing to slap whoever did this to me! + true + -2 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_MorphDef.xml new file mode 100644 index 000000000..92fe01115 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_MorphDef.xml @@ -0,0 +1,22 @@ + + + AlphabeaverMorph + + Usually called 'beavermorphs', these morphs are well adapted to completing construction projects ahead of schedule, and felling any trees or plants in their way. Their accurate teeth can be useful in a variety of architectural projects, as can their tail. + Alphabeaver + +
  • Temperate
  • +
    + PawnmorphAlphabeaverTF + PawnmorphAlphabeaverTFPartial + + + (105,78,68) + + + + AlphabeaverTransformationMemory + AlphabeaverRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Partial.xml new file mode 100644 index 000000000..dac9687ae --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphAlphabeaverTFPartial + + This person has mechanites in their blood that are providing them with beaver-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + AlphabeaverMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Parts.xml new file mode 100644 index 000000000..d85b5ea22 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/AlphaBeaver/Alphabeaver_Parts.xml @@ -0,0 +1,82 @@ + + + EtherAlphabeaverJaw + AlphabeaverMorph + EtherAlphabeaverJaw + + + Parts/Alphabeaver/Alphabeaver_Muzzle + + +
  • + adapting + + A robust beaver jaw has formed on [PAWN_nameDef]'s face with strong front teeth, being able to cut trees and other plants in a few quick bites. On the other hand, those teeth make speech very difficult, and [PAWN_nameDef] has a hearty appetite. + 1 + + 0.1 + + +
  • +
  • + adapted + + A robust rodent jaw has formed on [PAWN_nameDef]'s face with strong front teeth, being able to cut trees and other plants in a few quick bites. Adaptation has made speaking a little easier, but [PAWN_nameDef] still has a hearty appetite. + 1.5 + + 0.2 + + +
  • +
  • + paragon + + A robust rodent jaw has formed on [PAWN_nameDef]'s face with strong front teeth, being able to cut trees and other plants in a few quick bites. With further adaptation, [PAWN_nameDef] is talking normally, but still need to eat more than normal. + 1.5 + + 0.3 + + +
  • +
    +
    + + + EtherAlphabeaverEar + AlphabeaverMorph + EtherAlphabeaverEar + + + Parts/Alphabeaver/Alphabeaver_Ear_Left + Parts/Alphabeaver/Alphabeaver_Ear_Left_Behind + Parts/Alphabeaver/Alphabeaver_Ear_Right + Parts/Alphabeaver/Alphabeaver_Ear_Right_Behind + + +
  • + grown + + A fuzzy and waterproof ear has replaced [PAWN_nameDef]'s normal ear. + +
  • +
    +
    + + + EtherAlphabeaverTail + AlphabeaverMorph + EtherAlphabeaverTail + + + Parts/Alphabeaver/Alphabeaver_Tail + + +
  • + grown + + A perfect rudder in most scenarios, this tail can be used to speed up construction by inventive means known only to the user of one. Also really useful for smoothing floors. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_MorphDef.xml new file mode 100644 index 000000000..64fdb7f5c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_MorphDef.xml @@ -0,0 +1,8 @@ + + + Arboreal + +
  • Crafter
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_Parts.xml new file mode 100644 index 000000000..360f709f8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Arboreal_Parts.xml @@ -0,0 +1,57 @@ + + + +
  • + adapting + + A robust rodent jaw has formed on [PAWN_nameDef]'s face with strong front teeth well suited for gnawing, digging, and pulling up roots. On the other hand, those teeth make speech very difficult. + + 0.2 + + +
  • +
  • + adapted + + A robust rodent jaw has formed on [PAWN_nameDef]'s face with strong front teeth well suited for gnawing, digging, and pulling up roots. Adaptation has made speaking a little easier. + + 0.4 + + +
  • +
  • + paragon + + A robust rodent jaw has formed on [PAWN_nameDef]'s face with strong front teeth well suited for gnawing, digging, and pulling up roots. With further adaptation, [PAWN_nameDef] is talking normally. + + 0.5 + + +
  • +
    +
    + + + + + + +
  • + growing + + + +0.05 + + +
  • +
  • + grown + + + +0.1 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Full.xml new file mode 100644 index 000000000..1a11d0fbd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphCapybaraTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an capybaramorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more capybara than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + CapybaraMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CapybaraMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Memories.xml new file mode 100644 index 000000000..cc232ccfd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Memories.xml @@ -0,0 +1,54 @@ + + + CapybaraTransformationMemory + +
  • + + I'm a.. Rodent of some kind? These teeth are awkward. + -3 +
  • +
  • + + I have a lovely coat of fur, even if it is a tad thin. + +3 +
  • +
  • + + This is awful! Look at my teeth, what happened to my legs?! Help! + -5 +
  • +
  • + + One step closer to the wild side. + +1 +
  • +
    +
    + + + CapybaraRevertedMemory + +
  • + + Back to normal, that fur was getting a bit itchy. + +3 +
  • +
  • + + I miss my fur, it was nice and warm. + -3 +
  • +
  • + + Aah, back to normal. I've never missed my skin so much. + +10 +
  • +
  • + + No! I was so close! Why did they change me back?! + -5 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_MorphDef.xml new file mode 100644 index 000000000..cc13f5040 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_MorphDef.xml @@ -0,0 +1,22 @@ + + + CapybaraMorph + + The capybaramorph is the result of a human highly contaminated by mechanites. It's highly social, friendly and even tempered. + Capybara + +
  • Tropical
  • +
    + PawnmorphCapybaraTF + PawnmorphCapybaraTFPartial + + + (109, 84, 49) + + + + CapybaraTransformationMemory + CapybaraRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Partial.xml new file mode 100644 index 000000000..4840e235e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphCapybaraTFPartial + + This person has mechanites in their blood that are providing them with capybara-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CapybaraMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Parts.xml new file mode 100644 index 000000000..0570a01d3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Capybara/Capybara_Parts.xml @@ -0,0 +1,30 @@ + + + CapybaraMorph + EtherCapybaraJaw + + + Parts/Capybara/Capybara_Muzzle + + + + + CapybaraMorph + EtherCapybaraEar + + + Parts/Capybara/Capybara_Ear_Left + Parts/Capybara/Capybara_Ear_Left_Behind + Parts/Capybara/Capybara_Ear_Right + Parts/Capybara/Capybara_Ear_Right_Behind + + +
  • + grown + + [PAWN_nameDef]'s ear has turned into small round capybara ear. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Backstory.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Backstory.xml new file mode 100644 index 000000000..49ed53947 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Backstory.xml @@ -0,0 +1,19 @@ + + + FormerHumanNormalSquirrel + former human + former human + A colony turned [PAWN_nameDef] into an animal, using mutagenic mechanites. (Un?)fortunately, [PAWN_pronoun] retains [PAWN_possessive] human mind...but for how long? In this state, [PAWN_nameDef] can be drafted, have limited social interactions and will need to be kept happy to resist instinct creeping in. + +
  • Violent
  • +
  • ManualDumb
  • +
  • Firefighting
  • +
  • Cleaning
  • +
  • Commoner
  • +
  • Social
  • +
  • Animals
  • +
  • Intellectual
  • +
  • PlantWork
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Full.xml new file mode 100644 index 000000000..addbbfafd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphSquirrelTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a squirrelmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more squirrely than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + SquirrelMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SquirrelMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Memories.xml new file mode 100644 index 000000000..2bc68ecc7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Memories.xml @@ -0,0 +1,133 @@ + + + SquirrelTransformationMemory + +
  • + + Does anyone have any acorns? + true + -3 +
  • +
  • + + Climbing trees, burying nuts... this is the life! + true + 3 +
  • +
  • + + These giant teeth, this massive, bushy tail... turn me back, please! + true + -5 +
  • +
    +
    + + + SquirrelRevertedMemory + +
  • + + Back to normal! Those teeth were annoying. + +3 +
  • +
  • + + Aw, but I kind of liked being a squirrel. + -3 +
  • +
  • + + I'm never going to eat nuts again! + +10 +
  • +
  • + + But I wanted to be a cute squirrel! + -5 +
  • +
    +
    + + + 1 + EtherSquirrelJaw + +
  • + + What's with the teeth? + true + -1 +
  • +
  • + + I could eat nuts all day long! + true + 2 +
  • +
  • + + I HATE THESE F$&% TEETH. + true + -3 +
  • +
  • + + I could live off nuts alone...just like in the wild! + true + 1 +
  • +
    +
    + + + 1 + EtherSquirrelEar + +
  • + + These ears are a little weird, but not too bad. + true + 0 +
  • +
  • + + Did I just hear a bird? + true + 2 +
  • +
  • + + I look like a rat! + true + -2 +
  • +
    +
    + + + 1 + EtherSquirrelTail + +
  • + + Come on, does it *have* to be this big? + true + -1 +
  • +
  • + + I just wanna use this thing as a blanket! + true + 1 +
  • +
  • + + What's the point in having such a big tail? + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_MorphDef.xml new file mode 100644 index 000000000..6845271a8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_MorphDef.xml @@ -0,0 +1,22 @@ + + + SquirrelMorph + + A smaller, squirrel-like humanoid. These former humans share many characteristics with squirrels, usually making them fragile in combat, but their dextrous paws make them good crafters and artists. + Squirrel + +
  • Temperate
  • +
    + PawnmorphSquirrelTF + PawnmorphSquirrelTFPartial + + + (161,95,38) + + + + SquirrelTransformationMemory + SquirrelRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Partial.xml new file mode 100644 index 000000000..c0f40061a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphSquirrelTFPartial + + This person has mechanites in their blood that are providing them with squirrel-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SquirrelMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Parts.xml new file mode 100644 index 000000000..7f7dc47bf --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Arboreal/Squirrel/Squirrel_Parts.xml @@ -0,0 +1,51 @@ + + + EtherSquirrelJaw + SquirrelMorph + EtherSquirrelJaw + + + Parts/Squirrel/Squirrel_Muzzle + + + + + + EtherSquirrelEar + SquirrelMorph + EtherSquirrelEar + + + Parts/Squirrel/Squirrel_Ear_Left + Parts/Squirrel/Squirrel_Ear_Left_Behind + Parts/Squirrel/Squirrel_Ear_Right + Parts/Squirrel/Squirrel_Ear_Right_Behind + + +
  • + grown + + [PAWN_nameDef]'s ear has grown into a small wedge, flicking about to listen for the beating of wings. + +
  • +
    +
    + + + EtherSquirrelTail + SquirrelMorph + EtherSquirrelTail + + + Parts/Squirrel/Squirrel_Tail + + +
  • + grown + + A long fluffy tail curls up from [PAWN_nameDef]'s waist. [PAWN_pronoun] loves to curl it up around [PAWN_objective]self and use it as a pillow while sleeping. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Full.xml new file mode 100644 index 000000000..e1810ed74 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphBoomratTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a boomrat morph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming more explosive than they'd like. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ElkMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BoomratMorph + + + 5 + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Memories.xml new file mode 100644 index 000000000..2f29d8bc3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Memories.xml @@ -0,0 +1,128 @@ + + + BoomratTransformationMemory + +
  • + + Being a rat is one thing, but an explosive one...? + -3 +
  • +
  • + + These sacs are kinda' gross, but also really cool! I'm a chemfuel factory! + +3 +
  • +
  • + + I'm covered in chemical pustules. This is disgusting, change me back! + -5 +
  • +
  • + + Not far from the real deal! + +1 +
  • +
    +
    + + + BoomratRevertedMemory + +
  • + + I'm no longer high-explosive, which is nice. Maybe people will stop avoiding me now. + +3 +
  • +
  • + + I kinda' miss being a weapon of mass destruction. + -3 +
  • +
  • + + The memories will haunt me, but I'm normal again! + +10 +
  • +
  • + + I could have been so much more, what a waste. + -5 +
  • +
    +
    + + + 1 + EtherBoomratJaw + +
  • + + Everything smells like chemfuel... + True + -1 +
  • +
  • + + I look cute, for an explosive rat. + True + 2 +
  • +
  • + + HOW? How could there be something worse than a rat!? + True + -3 +
  • +
    +
    + + + 1 + EtherBoomratEar + +
  • + + They feel weird... very weird. + True + -1 +
  • +
  • + + This make enemy easier to hear, yes-yes? + True + 1 +
  • +
  • + + I have a deep feeling that makes me want to hear an explosion, I don't like this one bit! + True + -2 +
  • +
    +
    + + + 1 + EtherBoomratTail + +
  • + + I keep getting this useless skinny tail stuck in all the doors. + True + -1 +
  • +
  • + + Cute little skin tail! + True + 1 +
  • +
  • + + I'm cutting this skin tag off! + True + -2 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_MorphDef.xml new file mode 100644 index 000000000..0fb4f46b9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_MorphDef.xml @@ -0,0 +1,23 @@ + + + BoomratMorph + + A rat like humanoid covered with chemfuel boils as a result of exposure to boomrat specific mutagens. Keep them away from fire! + Boomrat + +
  • Temperate
  • +
  • Production
  • +
    + PawnmorphBoomratTF + PawnmorphBoomratTFPartial + + + (105,78,68) + + + + BoomratTransformationMemory + BoomratRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Partial.xml new file mode 100644 index 000000000..f0d5b6e38 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphBoomratTFPartial + + This person has mechanites in their blood that are providing them with boomrat mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BoomratMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Parts.xml new file mode 100644 index 000000000..2300bf6dd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Boomrat/Boomrat_Parts.xml @@ -0,0 +1,72 @@ + + + BoomratMorph + EtherBoomratJaw + + EtherBoomratJaw + GrewRatMuzzle + + Parts/Boomrat/Boomrat_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s jaw has taken on the shape of rat's muzzle. Scarred and blistering skin surrounds a few chemfuel boils that push out of [PAWN_possessive] face. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s jaw has taken on the shape of rat's muzzle. Scarred and blistering skin surrounds a few chemfuel boils that push out of [PAWN_possessive] face. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s jaw has taken on the shape of rat's muzzle. Scarred and blistering skin surrounds a few chemfuel boils that push out of [PAWN_possessive] face. With further adaptation, [PAWN_nameDef] has learned to speak normally. That is, if anything about this could be called normal. + +
  • +
    +
    + + + BoomratMorph + EtherBoomratEar + + EtherBoomratEar + EarsBecomeRatEars + + Parts/Boomrat/Boomrat_Ear_Left + Parts/Boomrat/Boomrat_Ear_Left_Behind + Parts/Boomrat/Boomrat_Ear_Right + Parts/Boomrat/Boomrat_Ear_Right_Behind + + +
  • + grown + + A rounded rat like ear. Even here the skin bulges into a few pustules. + +
  • +
    +
    + + + BoomratMorph + EtherBoomratTail + + EtherBoomratTail + + Parts/Boomrat/Boomrat_Tail + + +
  • + grown + + A hairless rat tail, long and snaking. Sometimes it leaves a thin trail of chemfuel as it drags along the floor. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_MorphDef.xml new file mode 100644 index 000000000..9ed09d22b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_MorphDef.xml @@ -0,0 +1,8 @@ + + + Cerebral + +
  • Social
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_Parts.xml new file mode 100644 index 000000000..5558e73c6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Cerebral_Parts.xml @@ -0,0 +1,34 @@ + + + + + + + + + +
  • + growing + + +
  • + Moving + +0.025 +
  • + + + +
  • + grown + + +
  • + Moving + +0.05 +
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Full.xml new file mode 100644 index 000000000..f40b8b784 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphChinchillaTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a chinchillamorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more chinchilla-like than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ChinchillaMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ChinchillaMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Memories.xml new file mode 100644 index 000000000..b1d41bb49 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Memories.xml @@ -0,0 +1,118 @@ + + + ChinchillaTransformationMemory + +
  • + + Now everyone wants to pet me... Great... + -3 +
  • +
  • + + I look so adorable! + +3 +
  • +
  • + + Why do I feel so fragile ? And NO you can’t pet me! + -5 +
  • +
    +
    + + + ChinchillaRevertedMemory + +
  • + + Finally, I had enough of being petted... + 3 +
  • +
  • + + I miss being petted... + -3 +
  • +
  • + + It feels good not having glass bones! + 10 +
  • +
    +
    + + + 1 + EtherChinchillaJaw + +
  • + + It's hard to eat when my mouth is so small! + true + -1 +
  • +
  • + + My face is so tiny and cute! + true + 2 +
  • +
  • + + My face is so tiny! + true + -3 +
  • +
    +
    + + + 1 + EtherChinchillaEar + +
  • + + Huh... they're kinda cute, I guess. + True + 1 +
  • +
  • + + These ears are adorable! + True + 2 +
  • +
  • + + Does anyone have a hat I can hide these things under? + True + -2 +
  • +
    +
    + + + 1 + EtherChinchillaTail + +
  • + + Well, it *is* a little cool, I guess. + True + 1 +
  • +
  • + + Awww, it's so tiny! I love it! + True + 2 +
  • +
  • + + At least I can hide it... + True + -2 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_MorphDef.xml new file mode 100644 index 000000000..5a418e6cf --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_MorphDef.xml @@ -0,0 +1,22 @@ + + + ChinchillaMorph + + A small chinchillalike humanoid. They are fragile in combat, but so adorable! They are very soft, but please ask before petting them... + Chinchilla + +
  • Tropical
  • +
    + PawnmorphChinchillaTF + PawnmorphChinchillaTFPartial + + + (178, 170, 158) + + + + ChinchillaTransformationMemory + ChinchillaRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Partial.xml new file mode 100644 index 000000000..6bfb2ca1d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphChinchillaTFPartial + + This person has mechanites in their blood that are providing them with chinchilla-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ChinchillaMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Parts.xml new file mode 100644 index 000000000..8db0ba118 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Chinchilla/Chinchilla_Parts.xml @@ -0,0 +1,71 @@ + + + EtherChinchillaJaw + ChinchillaMorph + EtherChinchillaSnout + + + Parts/Chinchilla/Chinchilla_Muzzle + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, like that of a chinchilla, complete with oversized front teeth. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, like that of a chinchilla, complete with oversized front teeth. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, like that of a chinchilla, complete with oversized front teeth. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherChinchillaEar + ChinchillaMorph + EtherChinchillaEar + + + Parts/Chinchilla/Chinchilla_Ear_Left + Parts/Chinchilla/Chinchilla_Ear_Left_Behind + Parts/Chinchilla/Chinchilla_Ear_Right + Parts/Chinchilla/Chinchilla_Ear_Right_Behind + + +
  • + grown + + A large ear clad in silky smooth fur has grown from [PAWN_nameDef]'s head, giving them an irresistably cute appearance. + +
  • +
    +
    + + + EtherChinchillaTail + ChinchillaMorph + EtherChinchillaTail + + + Parts/Chinchilla/Chinchilla_Tail + + +
  • + grown + + A soft, fluffy tail with luxuriously smooth fur has grown from the base of [PAWN_nameDef]'s spine, charming and tempting everyone to touch it. + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Full.xml new file mode 100644 index 000000000..3f6bf93ea --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphGuineaPigTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a guinea pig morph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more like a guinea pig than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + GuineaPigMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GuineaPigMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Memories.xml new file mode 100644 index 000000000..5cd93bb9d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Memories.xml @@ -0,0 +1,152 @@ + + + GuineaPigTransformationMemory + +
  • + + I'm literally being used as a guinea pig! + true + -3 +
  • +
  • + + This is so cool, I might break into squeak! + true + 3 +
  • +
  • + + I don't want to be used for any more experiments! + true + -5 +
  • +
    +
    + + + GuineaPigRevertedMemory + +
  • + + Back to normal. I have my face back! + +3 +
  • +
  • + + No one calls me cute anymore. + -3 +
  • +
  • + + Finally! It was so humiliating! + +10 +
  • +
  • + + But I liked being cute and fluffy! + -5 +
  • +
    +
    + + + 1 + EtherGuineaPigJaw + +
  • + + I don't like these chubby cheeks. + true + -1 +
  • +
  • + + Now everyone wants to give me a boop. I like it! + true + 2 +
  • +
  • + + How am I supposed to eat with only four teeth?! + true + -3 +
  • +
    +
    + + + 1 + EtherGuineaPigEar + +
  • + + I guess I can hear a little better. + true + -1 +
  • +
  • + + Hey, they're kind of cute. + true + 1 +
  • +
  • + + Can't these things stay up at least? They keep folding over. + true + -2 +
  • +
    +
    + + + 1 + EtherGuineaPigHand + +
  • + + These paws aren't the worst thing that's happened to me. They're almost useful. + true + 1 +
  • +
  • + + They're so dainty and dextrous, I can do fine work with these. + true + 3 +
  • +
  • + + They're too small and delicate. They look rediculous! + true + -3 +
  • +
    +
    + + + 1 + EtherGuineaPigFoot + +
  • + + Didn't I have five toes? + true + -1 +
  • +
  • + + I like these feet. They're cute. + true + 2 +
  • +
  • + + These tiny delicate feet are useless! + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_MorphDef.xml new file mode 100644 index 000000000..e3fea1ad8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_MorphDef.xml @@ -0,0 +1,24 @@ + + + GuineaPigMorph + + A smaller, guinea pig humanoid. These former humans share many characteristics with guinea pigs, usually making them fragile in combat, but their dextrous paws make them good crafters and artists. + GuineaPig + +
  • Arid
  • +
  • Temperate
  • +
  • Tropical
  • +
    + PawnmorphGuineaPigTF + PawnmorphGuineaPigTFPartial + + + (110,95,82) + + + + GuineaPigTransformationMemory + GuineaPigRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Partial.xml new file mode 100644 index 000000000..0dafc32fb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphGuineaPigTFPartial + + This person has mechanites in their blood that are providing them with guinea pig-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GuineaPigMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Parts.xml new file mode 100644 index 000000000..95e44cadc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Parts.xml @@ -0,0 +1,54 @@ + + + GuineaPigMorph + EtherGuineaPigJaw + + EtherGuineaPigJaw + GrewGuineaPigMuzzle + + Parts/GuineaPig/GuineaPig_Muzzle + + +
  • + adapting + + A whiskered snout graces [PAWN_nameDef]'s face with a cute little button nose, like that of a guinea pig. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A whiskered snout graces [PAWN_nameDef]'s face with a cute little button nose, like that of a guinea pig. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A whiskered snout graces [PAWN_nameDef]'s face with a cute little button nose, like that of a guinea pig. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + GuineaPigMorph + EtherGuineaPigEar + + EtherGuineaPigEar + EarsBecomeGuineaPigEars + + Parts/GuineaPig/GuineaPig_Ear_Left + Parts/GuineaPig/GuineaPig_Ear_Left_Behind + Parts/GuineaPig/GuineaPig_Ear_Right + Parts/GuineaPig/GuineaPig_Ear_Right_Behind + + +
  • + grown + + A fluffy ear flops about on the side of [PAWN_nameDef]'s head. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Tales.xml new file mode 100644 index 000000000..a6b246cbe --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/GunneaPig/GuineaPig_Tales.xml @@ -0,0 +1,60 @@ + + + + GrewGuineaPigMuzzle + + + +
  • tale_noun->[PAWN_nameDef]'s face becoming a guinea pig muzzle
  • +
  • tale_noun->[PAWN_nameDef]'s face growing a cute button nose
  • +
  • image->[PAWN_nameFull]'s terrified yells becoming loud chirps [circumstance_group]
  • +
  • image->[PAWN_nameFull] starts to chirp like a guinea pig
  • +
  • circumstance_phrase->as someone plays with [PAWN_possessive] growing whiskers
  • +
  • circumstance_phrase->as someone tries to boop their snoot
  • +
  • desc_sentence->[PAWN_pronoun] starts to gnaw on something nearby.
  • +
  • desc_sentence->[PAWN_pronoun] tries to say something, but all that comes out are several short chirps.
  • +
    +
    +
    + + + EarsBecomeGuineaPigEars + + + +
  • tale_noun->[PAWN_nameDef]'s ears becoming those of a guinea pig
  • +
  • tale_noun->[PAWN_nameDef]'s ears turning into thin floppy guinea pig ears
  • +
  • image->[PAWN_nameFull]'s ears start to lengthen and take on a rounded shape [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s ears start to shift higher up on [PAWN_possessive] head [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems upset over [PAWN_possessive] unusual guinea pig ears.
  • +
  • desc_sentence->[PAWN_pronoun] seems rather happy with [PAWN_possessive] guinea pig ears.
  • +
    +
    +
    + + + HandsBecomeGuineaPigPaws + + + +
  • tale_noun->[PAWN_nameDef]'s nails growing into short claws
  • +
  • tale_noun->[PAWN_nameDef]'s hands becoming delicate guinea pig paws
  • +
  • image->[PAWN_nameFull] examines [PAWN_possessive] hands [circumstance_group]
  • +
  • image->[PAWN_nameFull] scratches something with [PAWN_possessive] new claws [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] is thankful [PAWN_possessive] still has thumbs.
  • +
    +
    +
    + + + FeetBecomeGuineaPigPaws + + + +
  • tale_noun->[PAWN_nameDef]'s feet becoming delicate 4 toed guinea pig paws
  • +
  • image->[PAWN_nameDef]'s toes lengthening into guinea pig digits [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance themself on [PAWN_possessive] new guinea pig feet.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Full.xml new file mode 100644 index 000000000..d1770f510 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphRatTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a ratmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more rat-like than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + RatMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + RatMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Memories.xml new file mode 100644 index 000000000..1e643a794 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Memories.xml @@ -0,0 +1,127 @@ + + + RatTransformationMemory + +
  • + + I feel like a lab rat... literally! + true + -3 +
  • +
  • + + Eeek! + true + 3 +
  • +
  • + + Am I gonna build a nest in my sleep or something? + true + -5 +
  • +
    +
    + + + RatRevertedMemory + +
  • + + Back to normal! Those teeth were annoying. + +3 +
  • +
  • + + Aw, but I kind of liked being a rat. + -3 +
  • +
  • + + I'm never going to eat cheese again! + +10 +
  • +
  • + + But I wanted to be a cute rat! + -5 +
  • +
    +
    + + + 1 + EtherRatSnout + +
  • + + It's too sensitive for my liking. I'm almost overwhelmed with strong smells. + true + -1 +
  • +
  • + + A lot of people say rats are gross, but I think this looks good on me! + true + 2 +
  • +
  • + + I don't want to look like a squeaking PEST! + true + -3 +
  • +
    +
    + + + 1 + EtherRatEar + +
  • + + They're upright at least. + true + -1 +
  • +
  • + + Good for hearing possible enemies! + true + 1 +
  • +
  • + + I want these cut off. + true + -2 +
  • +
    +
    + + + 1 + EtherRatTail + +
  • + + It trails behind me uselessly... + true + -1 +
  • +
  • + + I wish it was better at something... + true + 1 +
  • +
  • + + I feel dirty and like a thief, like this is a punishment... + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_MorphDef.xml new file mode 100644 index 000000000..7d6ff7b28 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_MorphDef.xml @@ -0,0 +1,23 @@ + + + RatMorph + + A smaller, ratlike humanoid. These former humans share many characteristics with rats, usually making them fragile in combat, but their dextrous paws make them good crafters and artists. + Rat + +
  • Temperate
  • +
  • Tropical
  • +
    + PawnmorphRatTF + PawnmorphRatTFPartial + + + (110,95,82) + + + + RatTransformationMemory + RatRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Partial.xml new file mode 100644 index 000000000..0a0095bba --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphRatTFPartial + + This person has mechanites in their blood that are providing them with rat-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + RatMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Parts.xml new file mode 100644 index 000000000..f446d3196 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Parts.xml @@ -0,0 +1,70 @@ + + + EtherRatSnout + RatMorph + EtherRatSnout + + + Parts/Rat/Rat_Muzzle + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, like that of a rat, complete with oversized front teeth. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, like that of a rat. [PAWN_possessive] teeth are pointed to suit. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, like that of a rat. [PAWN_possessive] teeth are pointed to suit. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherRatEar + RatMorph + EtherRatEar + + + Parts/Rat/Rat_Ear_Left + Parts/Rat/Rat_Ear_Left_Behind + Parts/Rat/Rat_Ear_Right + Parts/Rat/Rat_Ear_Right_Behind + + +
  • + grown + + A grey-furred, rounded ear listens carefully for predators. + +
  • +
    +
    + + + EtherRatTail + RatMorph + EtherRatTail + + + Parts/Rat/Rat_Tail + + +
  • + grown + + A ratty tail, hairless, long and snaking. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Tales.xml new file mode 100644 index 000000000..20ccf32a2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Cerebral/Rat/Rat_Tales.xml @@ -0,0 +1,60 @@ + + + + GrewRatMuzzle + + + +
  • tale_noun->[PAWN_nameDef]'s face becoming a rat muzzle
  • +
  • tale_noun->[PAWN_nameDef]'s face becoming rat-like
  • +
  • image->[PAWN_nameFull]'s terrified yells becoming squeaks [circumstance_group]
  • +
  • image->[PAWN_nameFull] starts to make rat like squeaks
  • +
  • circumstance_phrase->as someone plays with [PAWN_possessive] growing whiskers
  • +
  • circumstance_phrase->as someone tries to offer them cheese
  • +
  • desc_sentence->[PAWN_pronoun] starts to gnaw on something nearby.
  • +
  • desc_sentence->[PAWN_pronoun] tries to say something, but all that comes out are squeaks.
  • +
    +
    +
    + + HandsBecomePawsDextrous + + + +
  • tale_noun->[PAWN_nameDef]'s nails growing into claws
  • +
  • tale_noun->[PAWN_nameDef]'s hands becoming rat like paws
  • +
  • tale_noun->[PAWN_nameDef]'s hands becoming dextrous, rat-like, paws
  • +
  • image->[PAWN_nameFull] examines [PAWN_possessive] hands [circumstance_group]
  • +
  • image->[PAWN_nameFull] scratches something with [PAWN_possessive] new claws [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] is thankful [PAWN_possessive] still have thumbs.
  • +
    +
    +
    + + + FeetBecomeRatPaws + + + +
  • tale_noun->[PAWN_nameDef]'s feet becoming rat paws
  • +
  • image->[PAWN_nameDef]'s toes lengthening into rat like digits [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance themself on [PAWN_possessive] new rat feet.
  • +
    +
    +
    + + + EarsBecomeRatEars + + + +
  • tale_noun->[PAWN_nameDef]'s ears becoming those of a rat
  • +
  • tale_noun->[PAWN_nameDef]'s ears turning into large rat ears
  • +
  • image->[PAWN_nameFull]'s ears start growing larger and take on a rounded shape [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s ears start to shift higher up on [PAWN_possessive] head [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems upset over [PAWN_possessive] new rat like ears.
  • +
  • desc_sentence->[PAWN_pronoun] seems rather ok with [PAWN_possessive] rat ears.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Memories.xml new file mode 100644 index 000000000..071a629b8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Memories.xml @@ -0,0 +1,128 @@ + + + + 1 + EtherDextrousPawHand + +
  • + + These paws sure are good at picking up little things off the ground. + true + 1 +
  • +
  • + + They're so dainty and dextrous, these are better than my old hands! + true + 3 +
  • +
  • + + Ahhhhh! They're so wrinkly! Get them off me! + true + -3 +
  • +
    +
    + + + + + 1 + EtherRodentJaw + +
  • + + What's up with these teeth? + true + -1 +
  • +
  • + + I can eat whatever I want! + true + 2 +
  • +
  • + + God, I look so ugly with this thing... + true + -3 +
  • +
    +
    + + + 1 + EtherRodentEar + +
  • + + Why are my ears so small? + True + -1 +
  • +
  • + + These tiny ears are so cute! + True + 1 +
  • +
  • + + Does anyone have a hat I can hide these things under? + True + -2 +
  • +
    +
    + + + 1 + EtherRodentTail + +
  • + + It trails behind me uselessly... + true + -1 +
  • +
  • + + I wish it was better at something... + true + 1 +
  • +
  • + + I feel dirty and like a thief, like this is a punishment... + true + -2 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_MorphDef.xml new file mode 100644 index 000000000..52b9e6c31 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_MorphDef.xml @@ -0,0 +1,8 @@ + + + Rodent + +
  • Crafter
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Parts.xml new file mode 100644 index 000000000..203fba6f1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Rodent/Rodent_Parts.xml @@ -0,0 +1,45 @@ + + + EtherRodentJaw + +
  • + growing + + It's obvious now that a rather rodent-like snout is making its way onto [PAWN_nameDef]'s face. Whiskers, long front teeth, and a pointed nose are still taking shape. + +
  • +
    +
    + + + EtherRodentEar + +
  • + growing + + +
  • + Hearing + +0.05 +
  • + + + +
  • + grown + + +
  • + Hearing + +0.1 +
  • + + + +
    +
    + + + EtherRodentTail + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Full.xml new file mode 100644 index 000000000..4a6a9eea8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphBearTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a bearmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more grizzly than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + BearMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BearMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_MorphDef.xml new file mode 100644 index 000000000..af709306c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_MorphDef.xml @@ -0,0 +1,18 @@ + + + BearMorph + + Bear_Grizzly + PawnmorphBearTF + PawnmorphBearTFPartial + +
  • Cold
  • +
  • Temperate
  • +
    + + + (112,82,65) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Partial.xml new file mode 100644 index 000000000..843cc4d5d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphBearTFPartial + + This person has mechanites in their blood that are providing them with grizzly-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BearMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Parts.xml new file mode 100644 index 000000000..7ff1a1eb0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Grizzly Bear/GrizzlyBear_Parts.xml @@ -0,0 +1,31 @@ + + + BearMorph + EtherGrizzlyBearMuzzle + + + Parts/Bear/Bear_Muzzle + + + + + BearMorph + EtherGrizzlyBearEar + + + Parts/Bear/Bear_Ear_Left + Parts/Bear/Bear_Ear_Left_Behind + Parts/Bear/Bear_Ear_Right + Parts/Bear/Bear_Ear_Right_Behind + + + + + BearMorph + EtherGrizzlyBearTail + + + Parts/Bear/Bear_Tail + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Full.xml new file mode 100644 index 000000000..7194a3970 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphPolarBearTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a bearmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more polar bear than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + PolarBearMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PolarBearMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Memories.xml new file mode 100644 index 000000000..f39efd919 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Memories.xml @@ -0,0 +1,27 @@ + + + 1 + EtherPolarBearMuzzle + +
  • + + I...want...fish...now! + true + -1 +
  • +
  • + + Nobody will mess with me now! + true + 2 +
  • +
  • + + I have the most horrible images of wanting to attack everything... + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_MorphDef.xml new file mode 100644 index 000000000..12205ce04 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_MorphDef.xml @@ -0,0 +1,17 @@ + + + PolarBearMorph + + Bear_Polar + PawnmorphPolarBearTF + PawnmorphBearTFPartial + +
  • Cold
  • +
    + + + (180,180,180) + + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Partial.xml new file mode 100644 index 000000000..d6f73706c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphPolarBearTFPartial + + This person has mechanites in their blood that are providing them with polar bear-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PolarBearMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Parts.xml new file mode 100644 index 000000000..a933cd25a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Polar Bear/PolarBear_Parts.xml @@ -0,0 +1,32 @@ + + + PolarBearMorph + EtherPolarBearMuzzle + + + Parts/Bear/Bear_Muzzle + + + + + PolarBearMorph + EtherPolarBearEar + + + Parts/Bear/Bear_Ear_Left + Parts/Bear/Bear_Ear_Left_Behind + Parts/Bear/Bear_Ear_Right + Parts/Bear/Bear_Ear_Right_Behind + + + + + PolarBearMorph + EtherPolarBearTail + + + Parts/Bear/Bear_Tail + + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Memories.xml new file mode 100644 index 000000000..6259e7532 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Memories.xml @@ -0,0 +1,155 @@ + + + BearTransformationMemory + +
  • + + I'm a... giant bear? What do I even do about this situation? + -3 +
  • +
  • + + This is awesome, I'm a huge bear-person! + +3 +
  • +
  • + + No no no! I hate everything about being a hairy bear! + -5 +
  • +
  • + + This is cool and all, but what about being an even bigger bear with massive clawed paws? + +1 +
  • +
    +
    + + + BearRevertedMemory + +
  • + + I'm back to my normal, human self again! No more hibernating! + 3 +
  • +
  • + + Aw man, but I was really enjoying those giant claws. + -3 +
  • +
  • + + No more fur! Oh, skin, how I missed seeing you. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + + + + 1 + EtherBearMuzzle + +
  • + + Table manners are going to be hard like this. + true + -1 +
  • +
  • + + ROAR! Awesome, time to raid the freezer! + true + 2 +
  • +
  • + + I'm a hideous roaring monster! + true + -3 +
  • +
    +
    + + + 1 + EtherBearEar + +
  • + + They're not the worst thing ever. It's like built-in earmuffs. + true + -1 +
  • +
  • + + They're small and round, not all that impressive. + true + 1 +
  • +
  • + + Egh, they're so furry and awful. + true + -2 +
  • +
    +
    + + + 1 + EtherBearTail + +
  • + + If I had to get a tail, why wasn't it something cool at least? + true + -1 +
  • +
  • + + As far as tails go, this is not that impressive. + true + 1 +
  • +
  • + + At least I can hide it. + true + -2 +
  • +
    +
    + + + 1 + EtherBearPawHand + +
  • + + How am I supposed to do anything when I can't grab stuff? + true + -1 +
  • +
  • + + Nice, I can claw people's eyes out! + true + 2 +
  • +
  • + + These things are only good for hitting whoever did this to me. + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_MorphDef.xml new file mode 100644 index 000000000..4b56891d5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_MorphDef.xml @@ -0,0 +1,13 @@ + + + Bearmorphs are combat experts. Usually equipped with large claws, paws and maws, they are devastatingly dangerous up close. But they have a tender heart, and a soft spot for plush toys of the ursine variety. + Ursine + +
  • Combat
  • +
    + + BearTransformationMemory + BearRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Parts.xml new file mode 100644 index 000000000..a1b62e735 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Parts.xml @@ -0,0 +1,153 @@ + + + EtherBearMuzzle + +
  • + +
  • + + False + +
  • Bite
  • + + 9.3 + 2 + true + + + +
    + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + growing + + [PAWN_nameDef]'s face continues to change. A broad flat nose and a thick jaw have pressed out into the shape of a dangerous looking snout. + +
  • + + 0.5 + 4 +
  • + + + +
  • + adapting + + A large bear snout has grown on [PAWN_nameDef]'s face. Powerful jaw muscles and a brutal set of teeth make for a savage bite. The strange shape makes speaking very difficult. + +
  • + + 0.5 + 9.3 +
  • + + + +
  • + adapted + + A large bear snout has grown on [PAWN_nameDef]'s face. Powerful jaw muscles and a brutal set of teeth make for a savage bite. Adapting to it has made speaking less frustrating. + +
  • + + 1 + 9.3 +
  • + + + +
  • + paragon + + A large bear snout has grown on [PAWN_nameDef]'s face. Powerful jaw muscles and a brutal set of teeth make for a savage bite. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + + 1 + 9.3 +
  • + + + +
    +
    + + + EtherBearEar + +
  • + growing + + +
  • + Hearing + +0.05 +
  • + + + +
  • + grown + + A rounded, fuzzy ear, sits atop [PAWN_nameDef]'s head. It looks rather cute. + +
  • + Hearing + +0.1 +
  • + + + +
    +
    + + + EtherBearTail + +
  • + growing + + + +0.025 + + +
  • +
  • + grown + + A short tail, like that of a bear. Not much of a tail, really. + + +0.05 + + +
  • +
    +
    + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Tales.xml new file mode 100644 index 000000000..40c456ad2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Ursine/Ursine_Tales.xml @@ -0,0 +1,31 @@ + + + GrewBearMuzzle + + + +
  • tale_noun->[PAWN_nameDef] growing an ursine muzzle
  • +
  • tale_noun->[PAWN_nameDef] growing an bear muzzle
  • +
  • image->[PAWN_nameFull] face pushing out into a ursine muzzle [circumstance_group]
  • +
  • image->[PAWN_nameFull] yells becoming ursine growls [circumstance_group]
  • +
    +
    +
    + + + HandsBecomeUrsinePaws + + + +
  • tale_noun->[PAWN_nameDef] hands becoming bear like paws
  • +
  • tale_noun->[PAWN_nameDef] hands turning into ursine paws
  • +
  • image->[PAWN_nameFull] palms start turning black, becoming paw pads [circumstance_group]
  • +
  • image->[PAWN_nameFull] thumb starts shrinking, but stops before going away entirely [circumstance_group]
  • +
  • image->[PAWN_nameFull] nails lengthen into sharp claws [circumstance_group]
  • +
  • circumstance_phrase->while someone rubs [PAWN_possessive] paw pads
  • +
  • desc_sentence->[PAWN_pronoun] is grateful they still have thumbs.
  • +
  • desc_sentence->[PAWN_pronoun] begins scratching a nearby wall with [PAWN_possessive] new claws.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Full.xml new file mode 100644 index 000000000..28a7a1b83 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphIguanaTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a iguanamorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more reptilian than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + IguanaMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + IguanaMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Memories.xml new file mode 100644 index 000000000..e673583ff --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Memories.xml @@ -0,0 +1,79 @@ + + + IguanaTransformationMemory + +
  • + + Eww, these scales are itchy. + -3 +
  • +
  • + + Forked tongue? This is great! + +3 +
  • +
  • + + No no no... my skin's gotta be here somewhere! + -5 +
  • +
  • + + I just want to lay under the sun and relax. + +1 +
  • +
    +
    + + + IguanaRevertedMemory + +
  • + + Ah... no more gross scales. + 3 +
  • +
  • + + No built-in armour, boring. + -3 +
  • +
  • + + SKIN! I MISSED YOU! + 10 +
  • +
  • + + Now the sun just burns... this isn't what I wanted. + -5 +
  • +
    +
    + + + 1 + EtherIguanaHorns + +
  • + + These make it kind of tough to put on shirts and hats, but I'll make do. + true + -1 +
  • +
  • + + I think I can style these and make a new, unique look for myself! + true + 2 +
  • +
  • + + These damn things get caught in everything, and it hurts! + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_MorphDef.xml new file mode 100644 index 000000000..ac10043bf --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_MorphDef.xml @@ -0,0 +1,23 @@ + + + IguanaMorph + + A scaly reptile morph with traits similar to that of an iguana. + Iguana + +
  • Arid
  • +
    + PawnmorphIguanaTF + PawnmorphIguanaTFPartial + + + (101,115,57) + (0,0,0,0) + + + + IguanaTransformationMemory + IguanaRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Partial.xml new file mode 100644 index 000000000..2d6caae03 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphIguanaTFPartial + + This person has mechanites in their blood that are providing them with iguana-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + IguanaMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Parts.xml new file mode 100644 index 000000000..751d25352 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Parts.xml @@ -0,0 +1,63 @@ + + + IguanaMorph + EtherIguanaSnout + + + Parts/Iguana/Iguana_Muzzle + + + + + IguanaMorph + EtherIguanaTail + + + + Parts/Iguana/Iguana_Tail + + +
  • + initial + + [PAWN_nameDef]'s back feels a bit strange, but nothing that unusual. + +
  • +
  • + pressing + + A small tail has appeared at the base of [PAWN_nameDef]'s spine. It's rapidly growing longer and thicker. + +
  • +
  • + growing + + [PAWN_nameDef]'s tail reaching his ankles and has become very thick. It'll take some time before [PAWN_nameDef] gets used to it. + +
  • +
  • + grown + + A long, muscular tail has grown from [PAWN_nameDef]'s spine. It's tough enough to shrug off brutal attacks and sturdy so [PAWN_nameDef] can brace against it, keeping them stable. + +
  • +
    +
    + + + IguanaMorph + EtherIguanaHorns + A series of spines drapes down the back. Would look good with a spiky hairstyle + + + Parts/Iguana/Iguana_Spines + + +
  • Head
  • +
    + +
  • Skull
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Tales.xml new file mode 100644 index 000000000..a9ffa277e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Iguana/Iguana_Tales.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Memories.xml new file mode 100644 index 000000000..d4d33e4e7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Memories.xml @@ -0,0 +1,53 @@ + + + + 1 + EtherLacertiliaSnout + +
  • + + It's so dry and rough... + true + -1 +
  • +
  • + + I look like a raptor! Fear me! + true + 2 +
  • +
  • + + Ew! I have to eat with this gross, scaly thing! + true + -3 +
  • +
    +
    + + + 1 + EtherLacertiliaTail + +
  • + + This thing gets stuck in doors often, but at least it helps with my balance a bit. + true + -1 +
  • +
  • + + I can use this to whip people like a real lizard! Maybe it will help me swim too... + true + 1 +
  • +
  • + + Do lizard tails regrow if I were to get this thing removed? + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_MorphDef.xml new file mode 100644 index 000000000..6b7768b0d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_MorphDef.xml @@ -0,0 +1,5 @@ + + + Lacertilia + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Parts.xml new file mode 100644 index 000000000..f4b4eba8d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Lacertilia/Lacertilia_Parts.xml @@ -0,0 +1,58 @@ + + + EtherLacertiliaSnout + +
  • + adapting + + [PAWN_nameDef]'s face has grown out into a big lizard snout, complete with a long forked tongue. The strange shape makes speaking very difficult. + + -0.2 + + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has grown out into a big lizard snout, complete with a long forked tongue. Adapting to it has made speaking less frustrating. + + -0.15 + + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has grown out into a big lizard snout, complete with a long forked tongue. With further adaptation, [PAWN_nameDef] has learned to speak normally. + + -0.10 + + +
  • +
    +
    + + + EtherLacertiliaTail + +
  • + growing + + + +0.025 + +0.075 + + +
  • +
  • + grown + + + +0.05 + +0.15 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Full.xml new file mode 100644 index 000000000..f7075f8fa --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphSnakeTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a cobramorph. Keep an eye on them, or they might just show you how snakelike they can be. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + SnakeMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SnakeMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml new file mode 100644 index 000000000..26fcd3a85 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml @@ -0,0 +1,623 @@ + + + TailLeg + + 60 + true + +
  • MovingLimbCore
  • +
    +
    + + SnakeHybridBody + + + Torso + Middle + Outside + +
  • Torso
  • +
    + +
  • + Ribcage + 0.036 + Inside + +
  • Torso
  • + + +
  • + Sternum + 0.015 + Inside + +
  • Torso
  • + + +
  • + Pelvis + 0.025 + Bottom + Inside + +
  • Torso
  • + + +
  • + Spine + 0.025 + Inside + +
  • Torso
  • + + +
  • + Stomach + 0.025 + Inside + +
  • Torso
  • + + +
  • + Heart + 0.020 + Inside + +
  • Torso
  • + + +
  • + Lung + left lung + 0.025 + Inside + +
  • Torso
  • + + +
  • + Lung + right lung + 0.025 + Inside + +
  • Torso
  • + + +
  • + Kidney + left kidney + 0.017 + Inside + +
  • Torso
  • + + +
  • + Kidney + right kidney + 0.017 + Inside + +
  • Torso
  • + + +
  • + Liver + 0.025 + Inside + +
  • Torso
  • + + +
  • + Neck + 0.075 + Top + +
  • Neck
  • + + +
  • + Head + 0.80 + +
  • UpperHead
  • +
  • FullHead
  • +
  • HeadAttackTool
  • + + +
  • + Skull + 0.18 + Inside + +
  • UpperHead
  • +
  • FullHead
  • + + +
  • + Brain + 0.8 + +
  • UpperHead
  • +
  • FullHead
  • + + +
    + +
  • + Eye + left eye + 0.07 + +
  • FullHead
  • +
  • Eyes
  • + + +
  • + Eye + right eye + 0.07 + +
  • FullHead
  • +
  • Eyes
  • + + +
  • + Ear + left ear + 0.07 + +
  • UpperHead
  • +
  • FullHead
  • + + +
  • + Ear + right ear + 0.07 + +
  • UpperHead
  • +
  • FullHead
  • + + +
  • + Nose + 0.10 + +
  • FullHead
  • + + +
  • + Jaw + 0.15 + +
  • Teeth
  • +
  • FullHead
  • + + +
    + +
    + +
  • + Shoulder + left shoulder + 0.12 + +
  • Shoulders
  • + + +
  • + Clavicle + left clavicle + 0.09 + Top + Inside + +
  • Torso
  • + + +
  • + Arm + left arm + 0.77 + +
  • Arms
  • + + +
  • + Humerus + left humerus + 0.1 + Inside + +
  • Arms
  • + + +
  • + Radius + left radius + 0.1 + Inside + +
  • Arms
  • + + +
  • + Hand + left hand + 0.14 + Bottom + +
  • Hands
  • + + +
  • + Finger + left pinky + 0.06 + +
  • Hands
  • +
  • LeftHand
  • + + +
  • + Finger + left ring finger + 0.07 + +
  • Hands
  • +
  • LeftHand
  • + + +
  • + Finger + left middle finger + 0.08 + +
  • Hands
  • +
  • LeftHand
  • +
  • MiddleFingers
  • + + +
  • + Finger + left index finger + 0.07 + +
  • Hands
  • +
  • LeftHand
  • + + +
  • + Finger + left thumb + 0.08 + +
  • Hands
  • +
  • LeftHand
  • + + +
    + +
    + +
    + +
  • + Shoulder + right shoulder + 0.12 + +
  • Shoulders
  • + + +
  • + Clavicle + right clavicle + 0.09 + Top + Inside + +
  • Torso
  • + + +
  • + Arm + right arm + 0.77 + +
  • Arms
  • + + +
  • + Humerus + right humerus + 0.1 + Inside + +
  • Arms
  • + + +
  • + Radius + right radius + 0.1 + Inside + +
  • Arms
  • + + +
  • + Hand + right hand + 0.14 + Bottom + +
  • Hands
  • + + +
  • + Finger + right pinky + 0.06 + +
  • Hands
  • +
  • RightHand
  • + + +
  • + Finger + right ring finger + 0.07 + +
  • Hands
  • +
  • RightHand
  • + + +
  • + Finger + right middle finger + 0.08 + +
  • Hands
  • +
  • RightHand
  • +
  • MiddleFingers
  • + + +
  • + Finger + right index finger + 0.07 + +
  • Hands
  • +
  • RightHand
  • + + +
  • + Finger + right thumb + 0.08 + +
  • Hands
  • +
  • RightHand
  • + + +
    + +
    + +
    + +
  • + Waist + 0 + Bottom + +
  • Waist
  • + + +
  • + TailLeg + 0.14 + Bottom + +
  • +
    +
    +
    + + + SnakeMorph + + A snakelike human, with a large and powerful tail that has replaced its legs. This allows for viper-quick movement, and while you might expect them to lack arms, most cobramorphs do retain their arms. In many respects, they are a mutagenic-born mythological naga. + + 1750 + 4.6 + 1.0 + 16 + 26 + 50 + 4 + + +
  • + + +
  • Blunt
  • + + 8.2 + 2 + LeftHand + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Blunt
  • + + 8.2 + 2 + RightHand + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Bite
  • + + 8.2 + 2 + Teeth + 0.07 + +
  • + + +
  • Blunt
  • + + 5 + 2 + HeadAttackTool + true + 0.2 + +
    + + Humanlike + HumanlikeConstant + Humanlike + true + 80 + Leather_Lizard + HumanStandard + SnakeHybridBody + 1 + 1 + OmnivoreHuman + 45 + 0.8 + 0.20 + 0.02 + + Pawn_Melee_Punch_HitPawn + Pawn_Melee_Punch_HitBuilding + Pawn_Melee_Punch_Miss + + + + true + + +
  • Male_AverageNormal
  • +
  • Male_AverageWide
  • +
  • Male_AveragePointy
  • +
  • Female_AverageNormal
  • +
  • Female_AverageWide
  • +
  • Female_AveragePointy
  • +
    + +
  • + hair + + +
  • + 10 + RGBA(0, 0, 0, 0) +
  • + + + + +
  • + 10 + RGBA(0, 0, 0, 0) +
  • +
    +
    + +
    + +
  • + + Parts/None/None + TailLeg + true + false + false + + Parts/Cobra/Cobra_Tail + + + + + + (0,-0.35) + (0,-0.39) + (0,-0.35) + (0,-0.39) + (0,-0.39) + + + + -0.29 + + (0.22,-0.24) + (0.18,-0.31) + (0.17,-0.24) + (0.36,-0.45) + (0.44,-0.27) + + + +
  • +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Memories.xml new file mode 100644 index 000000000..494799d87 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Memories.xml @@ -0,0 +1,54 @@ + + + CobraTransformationMemory + +
  • + + Thessse ssscales are going to take sssome time to get ussssed to... they're kind of itchy. + -3 +
  • +
  • + + Wow, I feel so quick and powerful like this! + +3 +
  • +
  • + + MY LEGS! WHERE ARE MY LEGS?! + -5 +
  • +
  • + + Yessss... but maybe we ssshould sssee just how ssssnakelike I can be... + +1 +
  • +
    +
    + + + CobraRevertedMemory + +
  • + + Thank goodness, I missed having actual skin. + 3 +
  • +
  • + + What?! Now I've got these lame human legs again. + -3 +
  • +
  • + + MY LEGS! THEY'RE BACK! + 10 +
  • +
  • + + Sssso clossse, yet ssso far... + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_MorphDef.xml new file mode 100644 index 000000000..1b7962645 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_MorphDef.xml @@ -0,0 +1,28 @@ + + + SnakeMorph + + A large, muscular morph whose head and lower body are that of a snake. They have a venomous bite, so be mindful not to get on their bad side. + Cobra + +
  • Tropical
  • +
    + PawnmorphSnakeTF + PawnmorphSnakeTFPartial + + + (99,85,74) + (0,0,0,0) + + SnakeMorph + false + +
  • EtherSnakeTail
  • +
    +
    + + CobraTransformationMemory + CobraRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Partial.xml new file mode 100644 index 000000000..f48522a18 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphSnakeTFPartial + + This person has mechanites in their blood that are providing them with cobra-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SnakeMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Parts.xml new file mode 100644 index 000000000..79f712e54 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Parts.xml @@ -0,0 +1,177 @@ + + + SnakeMorph + EtherSnakeJaw + + + Parts/Cobra/Cobra_Muzzle + + +
  • + +
  • + + +
  • ToxicBite
  • +
  • MutagenicStab
  • + + 12 + 2.5 + Mouth + + +
  • + Stun + 14 +
  • +
    +
    + + + +
    + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + growing + + +
  • + + 0.5 + 6 +
  • + + + +
  • + adapting + + +
  • + + 0.5 + 12 +
  • + + + +
  • + adapted + + +
  • + + 1 + 12 +
  • + + + +
  • + paragon + + +
  • + + 1 + 12 +
  • + + + +
    +
    + + + EtherSnakeTail + + SnakeMorph + + Parts/Cobra/Cobra_Tail + + +
  • + pressing + + +
  • + Moving + 0.05 +
  • + + + +
  • + growing + + +
  • + Moving + -0.05 +
  • + + + +
  • + grown + + +
  • + Moving + 0.10 +
  • + + + 0.1 + + + +
    +
    + + + SnakeMorph + EtherSnakeHood + A large swooping hood engulfs the head, granting a rather intimidating look. + + + Parts/Cobra/Cobra_Hood + Parts/Cobra/Cobra_Hood_Behind + + +
  • +
  • +
    + +
  • Head
  • +
    + +
  • Skull
  • +
    + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Tales.xml new file mode 100644 index 000000000..a9ffa277e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Tales.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Ophidia_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Ophidia_Memories.xml new file mode 100644 index 000000000..0cbd1d956 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Ophidia_Memories.xml @@ -0,0 +1,78 @@ + + + + 1 + EtherSnakeJaw + +
  • + + Thissss long tounge makesss it hard not to ssssssslur my Sssssss ssssounds... + true + -1 +
  • +
  • + + Sssssharp fangs to match a sssharp tounge. + true + 2 +
  • +
  • + + Sssssstupid tounge tassssting the sssstupid air... Now I have to tassste every rotten sssssmell too. + true + -3 +
  • +
    +
    + + + 1 + EtherSnakeHood + +
  • + + It'sss hard to fit a T-shirt over thissss hood now. + true + -1 +
  • +
  • + + How exotic! I could ssscare away any jerks I don't like with thisss. + true + 2 +
  • +
  • + + It's annoyingly big and ssscaly...agh! + true + -3 +
  • +
    +
    + + + 1 + EtherSnakeTail + +
  • + + Thissss will take ssssome getting ussssed to. + true + -1 +
  • +
  • + + Sssslithering here, sssslithering there, sssslithering everywhere! + true + 1 +
  • +
  • + + I want my legsssss back! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_MorphDef.xml new file mode 100644 index 000000000..e3d06d7f6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_MorphDef.xml @@ -0,0 +1,5 @@ + + + Ophidia + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_Parts.xml new file mode 100644 index 000000000..d083091c3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Orphidia_Parts.xml @@ -0,0 +1,64 @@ + + + +
  • + adapting + + Long hollow fangs protrude from [PAWN_nameDef]'s elongated face, causing saliva to drip from between their scaly lips. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + Long hollow fangs protrude from [PAWN_nameDef]'s elongated face, causing saliva to drip from between their scaly lips. Adaptation has made speaking less frustrating. + +
  • +
  • + paragon + + Long hollow fangs protrude from [PAWN_nameDef]'s elongated face, causing saliva to drip from between their scaly lips. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + + +
  • + initial + + [PAWN_nameDef]'s back feels a bit strange, but nothing that unusual. + +
  • +
  • + pressing + + A tail is growing behind [PAWN_nameDef]. + + 0.05 + + +
  • +
  • + growing + + [PAWN_nameDef]'s tail is getting longer and longer. in the same time [PAWN_nameDef]'s legs feel shorter and weaker than before + + 0.10 + + +
  • +
  • + grown + + A large and muscular tail has replaced [PAWN_nameDef]'s legs, making their lower half look like that of a snake. + + 0.15 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_MorphDef.xml new file mode 100644 index 000000000..a3ea04641 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_MorphDef.xml @@ -0,0 +1,14 @@ + + + Reptile + + + + (0,0,0,0) + + + +
  • Combat
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_Parts.xml new file mode 100644 index 000000000..205cd286c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Reptile_Parts.xml @@ -0,0 +1,60 @@ + + + +
  • + pressing + + + Parts/Partials/PartialMuzzle/TinySnout + + +
  • +
  • + growing + + [PAWN_nameDef]'s jaw and chin continue to press outwards. Sections of [PAWN_possessive] skin are peeling off to reveal freshly formed scales. + + Parts/Partials/PartialMuzzle/PartialSnout + + +
  • +
  • + adapting + + +
  • + Metabolism + 0.15 +
  • + + + +
  • + adapted + + +
  • + Metabolism + 0.35 +
  • + + + +
  • + paragon + + +
  • + Metabolism + 0.35 +
  • + + + +
    +
    + + + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Memories.xml new file mode 100644 index 000000000..4abcd11d5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Memories.xml @@ -0,0 +1,78 @@ + + + + 1 + EtherTestudinidaeJaw + +
  • + + There goes my skin routine. + true + -1 +
  • +
  • + + I look so wise and ancient! + true + 2 +
  • +
  • + + I look like I'm 300 years old! I don't want this at all! + true + -3 +
  • +
    +
    + + + 1 + EtherTestudinidaeTail + +
  • + + It's short, stubby, and in the way. + true + -1 +
  • +
  • + + I can wiggle it, but that's about it. + true + 1 +
  • +
  • + + I have to cut a hole in my pants for THIS? + true + -2 +
  • +
    +
    + + + 1 + EtherTestudinidaeShell + +
  • + + Ugh, this thing is pretty awkward. Armored, but heavy. + true + -1 +
  • +
  • + + It's heavy, but a natural suit of armor, awesome! + true + 2 +
  • +
  • + + So slow and...heavy...and I can't take it off! + true + -3 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_MorphDef.xml new file mode 100644 index 000000000..cd5114565 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_MorphDef.xml @@ -0,0 +1,5 @@ + + + Testudinidae + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Parts.xml new file mode 100644 index 000000000..16c762833 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Testudinidae_Parts.xml @@ -0,0 +1,131 @@ + + + EtherTestudinidaeJaw + +
  • + +
  • + + False + +
  • Bite
  • + + 8 + 2 + true + + + +
    + +
  • + initial + + +
  • + + 0 + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 + 0 +
  • + + + +
  • + growing + + +
  • + + 0 + 0 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s face has grown to have short turtle jaws, with scaly skin surrounding the thick keratin of [PAWN_pronoun] new beak. It's pretty difficult to talk without any lips. + +
  • + + 0.5 + 8 +
  • + + + -0.2 + + + +
  • + adapted + + [PAWN_nameDef]'s face has grown to have short turtle jaws, with scaly skin surrounding the thick keratin of [PAWN_pronoun] new beak. Adaptation has made speaking less frustrating. + +
  • + + 1 + 8 +
  • + + + -0.15 + + + +
  • + paragon + + [PAWN_nameDef]'s face has grown to have short turtle jaws, with scaly skin surrounding the thick keratin of [PAWN_pronoun] new beak. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + + 1 + 8 +
  • + + + -0.10 + + + +
    +
    + + + EtherTestudinidaeTail + +
  • + growing + + + +0.025 + +0.075 + + +
  • +
  • + grown + + + +0.05 + +0.15 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Full.xml new file mode 100644 index 000000000..8ab1a7ed9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphTortoiseTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a tortoisemorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more tortoise than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + TortoiseMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + TortoiseMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_MorphDef.xml new file mode 100644 index 000000000..e5879c6ee --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_MorphDef.xml @@ -0,0 +1,23 @@ + + + TortoiseMorph + + Tortoisemorphs are defensive morphs characterised by their hard shell. While a shell does generally make them slower, conventional tortoises are slow due to energy conservation -- which is not necessarily an issue with morphs. + Tortoise + +
  • Temperate
  • +
  • Tropical
  • +
    + PawnmorphTortoiseTF + PawnmorphTortoiseTFPartial + + + (108,115,104) + + + + TortoiseTransformationMemory + TortoiseRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Partial.xml new file mode 100644 index 000000000..07f97ab01 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphTortoiseTFPartial + + This person has mechanites in their blood that are providing them with tortois-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + TortoiseMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Parts.xml new file mode 100644 index 000000000..dbde3e8b7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Tortoise_Parts.xml @@ -0,0 +1,28 @@ + + + TortoiseMorph + EtherTortoiseJaw + + + Parts/Tortoise/Tortoise_Muzzle + + + + + TortoiseMorph + EtherTortoiseTail + + + Parts/Tortoise/Tortoise_Tail + + +
  • + grown + + A short tail has sprouted from the base of [PAWN_nameDef]'s spine. Long enough that it requires some clothing modifications, but too short to be useful for much else. + +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Turtoise_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Turtoise_Memories.xml new file mode 100644 index 000000000..dbacba4bd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Testudinidae/Tortoise/Turtoise_Memories.xml @@ -0,0 +1,54 @@ + + + TortoiseTransformationMemory + +
  • + + I feel like the world is moving so much faster. + -3 +
  • +
  • + + I've got natural armor now! I'd like to see raiders try and cut through this! + +3 +
  • +
  • + + I look disgusting and now it takes forever for me to walk anywhere! I don't even like turtles! + -5 +
  • +
  • + + Slow and steady wins the race... Maybe I should take a nap in my shell. + +1 +
  • +
    +
    + + + TortoiseRevertedMemory + +
  • + + That's better! I was starting to feel like I was slowing people down. + 3 +
  • +
  • + + But being a turtle was so relaxing! I feel so exposed now. + -3 +
  • +
  • + + Finally! I can once again walk at a reasonable pace! + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + 5 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Full.xml new file mode 100644 index 000000000..81e21bb44 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphMonkeyTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a monkeymorph. Keep an eye on them, as leaving the mechanites unattended could lead to them flining poop at passersby. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + MonkeyMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MonkeyMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Memories.xml new file mode 100644 index 000000000..57a0d446c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Memories.xml @@ -0,0 +1,54 @@ + + + MonkeyTransformationMemory + +
  • + + I don't look *that* different, right? + -3 +
  • +
  • + + Oooh oooh ah ah! I feel closer to my roots. + +3 +
  • +
  • + + It feels like I've gone back three steps in the evolutionary tree! + -5 +
  • +
  • + + Monkey see, monkey do? + +1 +
  • +
    +
    + + + MonkeyRevertedMemory + +
  • + + I need to shave, I think I'm still hairier than before. + 3 +
  • +
  • + + I suppose all things must come to an end... + -3 +
  • +
  • + + HUMAN AGAIN! + 10 +
  • +
  • + + This isn't what I wanted. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_MorphDef.xml new file mode 100644 index 000000000..282cf8150 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_MorphDef.xml @@ -0,0 +1,22 @@ + + + MonkeyMorph + + A fun-loving morph type, Monkeymorphs tend to like playing pranks on their friends. + Monkey + +
  • Tropical
  • +
    + PawnmorphMonkeyTF + PawnmorphMonkeyTFPartial + + + (175,87,57) + + + + MonkeyTransformationMemory + MonkeyRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Partial.xml new file mode 100644 index 000000000..11571daaa --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphMonkeyTFPartial + + This person has mechanites in their blood that are providing them with monkey-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MonkeyMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Parts.xml new file mode 100644 index 000000000..6c01087b0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkey/Monkey_Parts.xml @@ -0,0 +1,69 @@ + + + MonkeyMorph + EtherMonkeyJaw + + + Parts/Monkey/Monkey_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s face has elongated into a monkey-like visage, making them look less evolved. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has elongated into a monkey-like visage, making them look less evolved. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has elongated into a monkey-like visage, making them look less evolved. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + MonkeyMorph + EtherMonkeyEar + + + + Parts/Monkey/Monkey_Ear_Left + + Parts/Monkey/Monkey_Ear_Right + + + +
  • + grown + + Though somewhat engorged, this ear looks somewhat like [PAWN_nameDef]'s own ear. + +
  • +
    +
    + + + MonkeyMorph + EtherMonkeyTail + + A monkey tail. Bananas. + + Parts/Monkey/Monkey_Tail + + +
  • + grown + + A long dextrous tail extends from the base of [PAWN_nameDef]'s spine. It would help with climbing abiltiy, but nobody knows how to on the rim. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_MorphDef.xml new file mode 100644 index 000000000..d4cd44932 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_MorphDef.xml @@ -0,0 +1,5 @@ + + + Monkeys + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_Parts.xml new file mode 100644 index 000000000..184c4bbd8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Monkeys/Monkeys_Parts.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Memories.xml new file mode 100644 index 000000000..03ceda5cb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Memories.xml @@ -0,0 +1,128 @@ + + + + 1 + EtherSimianJaw + +
  • + + I feel like I need to shave constantly... + true + -1 +
  • +
  • + + This isn't really all that different... + true + 2 +
  • +
  • + + I've taken a step *back*! This is terrible! + true + -3 +
  • +
    +
    + + + 1 + EtherSimianEar + +
  • + + My ears...they feel like they're larger. + true + -1 +
  • +
  • + + Bigger ears! Awesome! + true + 1 +
  • +
  • + + Why are my ears bigger, that's almost useless! + true + -2 +
  • +
    +
    + + + 1 + EtherSimianTail + +
  • + + Huh...I can pick things up with this tail. Neat. + true + 0 +
  • +
  • + + It's like another hand. Who needs bionics when you have this? + true + 2 +
  • +
  • + + I can feel it moving, and I really don't like the sensation of being able to control it! + true + -2 +
  • +
    +
    + + + 1 + EtherSimianHand + +
  • + + These kinda look like my normal hands...just more primitive. + true + 0 +
  • +
  • + + I might get good wishes out these monkey paws! + true + 2 +
  • +
  • + + My hands! They look weird and old! + true + -2 +
  • +
    +
    + + + 1 + EtherSimianFoot + +
  • + + Why can I grab things with my feet? + true + -1 +
  • +
  • + + Even more hands! + true + 2 +
  • +
  • + + Why do my shoes feel so big, and my feet so small? + true + -3 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_MorphDef.xml new file mode 100644 index 000000000..8c8926a03 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_MorphDef.xml @@ -0,0 +1,9 @@ + + + Simian + + +
  • Crafter
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Parts.xml new file mode 100644 index 000000000..ca8c5597d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Simian/Simian_Parts.xml @@ -0,0 +1,75 @@ + + + EtherSimianJaw + +
  • + pressing + + [PAWN_nameDef] jaws are shifting, sticking out further than normal. Other more sublte changes have also begun on [PAWN_possessive] face, but it's hard to say what they are. + + Parts/Partials/PartialMuzzle/TinySnout + + +
  • +
  • + growing + + An uncanny feeling of familiarity comes when looking at [PAWN_nameDef]'s face. Even as the changes continue something of the old [PAWN_nameDef] can still be seen. + + Parts/Partials/PartialMuzzle/PartialMuzzle + + +
  • +
  • + adapting + + [PAWN_nameDef]'s face looks vaguely human at a glance, but with a protruding jaw, a flattened nose, and a raised forhead ridge it's clear something has been monkeying around with [PAWN_possessive] DNA. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face looks vaguely human at a glance, but with a protruding jaw, a flattened nose, and a raised forhead ridge it's clear something has been monkeying around with [PAWN_possessive] DNA. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face looks vaguely human at a glance, but with a protruding jaw, a flattened nose, and a raised forhead ridge it's clear something has been monkeying around with [PAWN_possessive] DNA. + +
  • +
    +
    + + + EtherSimianEar + + + + EtherSimianTail + +
  • + growing + + +
  • + Manipulation + +0.025 +
  • + + + +
  • + grown + + +
  • + Manipulation + +0.05 +
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Memories.xml new file mode 100644 index 000000000..4c6692afe --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Memories.xml @@ -0,0 +1,84 @@ + + + + 1 + EtherBovidMuzzle + +
  • + + It sure makes sallads better... + true + -1 +
  • +
  • + + Eating veggies has never been better! + true + 2 +
  • +
  • + + This will go away on its own right...? + true + -3 +
  • +
  • + + I'll never want for anything but grass ever again! + true + -3 +
  • +
    +
    + + + 1 + EtherBovidEar + +
  • + + I think I can hear the wind through the grass more intensely than before.... + true + -1 +
  • +
  • + + Oh I think I can hear some good grass with these! + true + 1 +
  • +
  • + + Hope no one tries to put a tag in these! + true + -2 +
  • +
    +
    + + + 1 + EtherBovidTail + +
  • + + This won't help against megascarabs will it? + true + -1 +
  • +
  • + + I like feeling it flick back and forth on its own like that! + true + 1 +
  • +
  • + + I don't think I'll be able to hide this... + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_MorphDef.xml new file mode 100644 index 000000000..b325d6b77 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_MorphDef.xml @@ -0,0 +1,6 @@ + + + Bovid + HerbivoreHerding + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Parts.xml new file mode 100644 index 000000000..ac3300b88 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/Bovid_Parts.xml @@ -0,0 +1,127 @@ + + + EtherBovidMuzzle + +
  • + adapting + + [PAWN_nameDef]'s face has pushed out into a bovine snout with teeth that easily grind vegetable matter. [PAWN_nameDef] has found it great for chowing down on food, but [PAWN_pronoun]'s had difficulty talking... aside from lowing and grunting that is. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has pushed out into a bovine snout with teeth that easily grind vegetable matter. With adaptation normal speech is a little easier for [PAWN_nameDef] and now it seems [PAWN_pronoun] can just eat and eat and eat, barely stopping for breath. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has pushed out into a bovine snout with teeth that easily grind vegetable matter. Further adaptation has removed all of the difficulties with speaking. + +
  • +
    +
    + + + EtherBovidEar + +
  • + growing + + +
  • + Hearing + +0.025 +
  • + + + +
  • + grown + + +
  • + Hearing + +0.05 +
  • + + + +
    +
    + + + EtherBovidTail + +
  • + growing + + +
  • + Metabolism + +0.05 +
  • + + + +
  • + grown + + +
  • + Metabolism + +0.10 +
  • + + + +
    +
    + + + +
  • + initial + + +
  • + + 0 + 0 +
  • + + + +
  • + nubs + + +
  • + + 0.5 + 2 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Scratch
  • +
  • Stab
  • + + 0 + 3 + true + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Backstories.xml new file mode 100644 index 000000000..39f962210 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Backstories.xml @@ -0,0 +1,23 @@ + + + CowmorphGeneral + dairy cow + cowmorph + [PAWN_nameDef] was sold to a farmer with less-than-ethical business practices, and quickly made [PAWN_nameDef] part of the livestock. [PAWN_pronoun] was allowed to leave once [PAWN_pronoun]'d "paid [PAWN_possessive] due." + Adulthood + Female + Fat + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • CowMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Full.xml new file mode 100644 index 000000000..422c5ad81 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphCowTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a cowmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more bovine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + CowMorph + + + + TransformationCow + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CowMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Memories.xml new file mode 100644 index 000000000..eb2ea87d3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Memories.xml @@ -0,0 +1,141 @@ + + + CowTransformationMemory + +
  • + + Eugh, I feel so heavy all the time. I should diet. + -3 +
  • +
  • + + It’s gotta feel so good to moo as a cow. Probably feels really good to moo. + +3 +
  • +
  • + + Please no, I just worked off all that weight! Why!? + -5 +
  • +
  • + + While this is great, it'd be fun to try the full experience... right? Or maybe I'm not thinking as clearly now... + +1 +
  • +
    +
    + + + CowRevertedMemory + +
  • + + Yeah, that was... about enough of that. + 3 +
  • +
  • + + Aw man, that was fun though. Still gonna moo for the hell of it. + -3 +
  • +
  • + + I'M A PERSON AGAIN! + 10 +
  • +
  • + + Sure, take all the fun out of my life, why don't ya? + -5 +
  • +
    +
    + + + 1 + EtherCowSnout + +
  • + + It's hard to talk right with this giant muzzle in the way. + true + -1 +
  • +
  • + + Hehe...Moooooooooo... + true + 2 +
  • +
  • + + I look and sound like a dumb animal! + true + -3 +
  • +
  • + + MOOOoooooo...MOOOoooooo... + true + 1 +
  • +
    +
    + + + 1 + EtherHorns + +
  • + + Well, I guess I'm done wearing hats... + true + -1 +
  • +
  • + + You mess with the bull, you get the horns! + true + 2 +
  • +
  • + + Maybe I can file them down...would they grow back? + true + -3 +
  • +
    +
    + + + 1 + EtherUdder + +
  • + + I regret everything, I don't like this at all. + true + -5 +
  • +
  • + + Oh, uhm. This is a strange turn of events, I have to think about this for a bit... + true + -3 +
  • +
  • + + OH GOD NO. + true + -10 +
  • +
  • + + I mean, it's kind of cool. I feel like a real cow now! + true + 0 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_MorphDef.xml new file mode 100644 index 000000000..30b4e70a4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_MorphDef.xml @@ -0,0 +1,23 @@ + + + CowMorph + + A bovine humanoid resulting when a human is exposed to cow specific mutagens. Usually capable of producing milk. + Cow + +
  • Domestic
  • +
    + PawnmorphCowTF + PawnmorphCowTFPartial + + + (170,170,170) + (200,200,200) + + + + CowTransformationMemory + CowRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Partial.xml new file mode 100644 index 000000000..79eddda26 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphCowTFPartial + + This person has mechanites in their blood that are providing them with cow-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CowMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Parts.xml new file mode 100644 index 000000000..cdfe2e370 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Parts.xml @@ -0,0 +1,76 @@ + + + EtherCowSnout + CowMorph + EtherCowSnout + + GrowCowMuzzle + + Parts/Cow/Cow_Muzzle + + + + + CowMorph + EtherCowEar + + + Parts/Cow/Cow_Ear_Left + Parts/Cow/Cow_Ear_Left_Behind + Parts/Cow/Cow_Ear_Right + Parts/Cow/Cow_Ear_Right_Behind + + +
  • + grown + + A large tan ear that belongs to a cow. It flicks idly. Maybe someone should tag it. + +
  • +
    +
    + + + CowMorph + EtherCowTail + + + Parts/Cow/Cow_Tail + + +
  • + grown + + A cowlike tail. It swats at flies and hangs low at their legs. + +
  • +
    +
    + + + EtherHorns + CowMorph + + A pair of cow horns. + + Parts/Cow/Cow_Horns + + GrowCowHorns + +
  • + short + + + Curved horns decorate [PAWN_nameDef]'s head, which can easily be used to stab and puncture anyone foolish enough to tussle with [PAWN_nameDef]. They have grown larger, but still have a little more growing to do. + +
  • +
  • + horns + + Burly horns decorate [PAWN_nameDef]'s head. It'd be unfortunate to get too close when [PAWN_nameDef] is in a bad mood. + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Tales.xml new file mode 100644 index 000000000..5ebdb4839 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Cow/Cow_Tales.xml @@ -0,0 +1,46 @@ + + + GrowCowHorns + + + +
  • tale_noun->[PAWN_nameDef] growing horns
  • +
  • image->horns begin to push from [PAWN_nameFull]'s head [circumstance_group]
  • +
  • circumstance_phrase->as someone starts touching them
  • +
  • desc_sentence->[PAWN_pronoun] examines [PAWN_possessive] new horns.
  • +
  • desc_sentence->[PAWN_pronoun] looks pleased with [PAWN_possessive] new horns.
  • +
  • desc_sentence->[PAWN_pronoun] looks uneasy with [PAWN_possessive] new horns.
  • +
    +
    +
    + + + GrowCowMuzzle + + + +
  • tale_noun->[PAWN_nameDef] facing turning into a bovine muzzle
  • +
  • tale_noun->[PAWN_nameDef] growing a bovine muzzle
  • +
  • image->[PAWN_nameDef]'s face begins to push out into a muzzle [circumstance_group]
  • +
  • image->[PAWN_nameDef]'s excited yells turn into moos [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] continues to moo at though around them.
  • +
    +
    +
    + + + GrewUdder + + + +
  • tale_noun->[PAWN_nameDef] growing an udder
  • +
  • tale_noun->[PAWN_nameDef] begging to produce milk
  • +
  • image->an udder begins to grow on [PAWN_nameFull]'s waist [circumstance_group]
  • +
  • circumstance_phrase->as someone approaches [PAWN_pronoun] with a bucket
  • +
  • circumstance_phrase->as someone approaches [PAWN_pronoun] with an empty glass
  • +
  • desc_sentence->[PAWN_pronoun] is embarrassed about [PAWN_possessive] new udder.
  • +
  • desc_sentence->[PAWN_pronoun] seems surprising content about [PAWN_possessive] udder.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_MorphDef.xml new file mode 100644 index 000000000..f1ac8167d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_MorphDef.xml @@ -0,0 +1,8 @@ + + + DomesticatedBovid + +
  • Production
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_Parts.xml new file mode 100644 index 000000000..cc7905c8c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/DomesticatedBovid_Parts.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + +
  • + short + + +
  • + + 0.5 + 5 +
  • + + + +
  • + horns + + +
  • + + 1 + 14 +
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Full.xml new file mode 100644 index 000000000..84a506dfc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphMuffaloTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a muffalomorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more bovine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + MuffaloMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MuffaloMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Memories.xml new file mode 100644 index 000000000..a8dbf5fa9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Memories.xml @@ -0,0 +1,79 @@ + + + MuffaloTransformationMemory + +
  • + + I can barely see from underneath all this hair. + -3 +
  • +
  • + + It's like being wrapped in a warm blanket full-time. + +3 +
  • +
  • + + This is just not natural. My hair is getting everywhere and I can hardly move without it getting stuck in something. + -5 +
  • +
  • + + It would feel good to get shaved right about now. + +1 +
  • +
    +
    + + + MuffaloRevertedMemory + +
  • + + Yeah, that was... about enough of that. + 3 +
  • +
  • + + I feel so naked now. + -3 +
  • +
  • + + I'M A PERSON AGAIN! + 10 +
  • +
  • + + Sure, take all the fun out of my life, why don't ya? + -5 +
  • +
    +
    + + + 1 + EtherMuffaloJaw + +
  • + + My face is hot and fluffy, not a good mix... + true + -1 +
  • +
  • + + I'm so fluffy, and a nice shade of blue! + true + 2 +
  • +
  • + + If I hear "Why so blue?" one more time, I'm going to cry. + true + -3 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_MorphDef.xml new file mode 100644 index 000000000..35b2185af --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_MorphDef.xml @@ -0,0 +1,25 @@ + + + MuffaloMorph + + A large humanoid resulting when a human is exposed to muffalo specific mutagens. Usually covered in long thick fur. + Muffalo + +
  • Temperate
  • +
  • Cold
  • +
  • Domestic
  • +
    + PawnmorphMuffaloTF + PawnmorphMuffaloTFPartial + + + (180,196,200) + (0,0,0,0) + + + + MuffaloTransformationMemory + MuffaloRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Partial.xml new file mode 100644 index 000000000..599e62b4a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphMuffaloTFPartial + + This person has mechanites in their blood that are providing them with muffalo-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MuffaloMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Parts.xml new file mode 100644 index 000000000..c584cf431 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Parts.xml @@ -0,0 +1,132 @@ + + + EtherMuffaloJaw + MuffaloMorph + EtherMuffaloSnout + + + Parts/Muffalo/Muffalo_Muzzle + Parts/Muffalo/Muffalo_Headfloof_B + + +
  • + initial + + + + + +
  • +
  • + pressing + + + + + +
  • +
  • + growing + + + Parts/Muffalo/Muffalo_Headfloof_A + + +
  • +
    +
    + + + MuffaloMorph + EtherMuffaloEar + + + Parts/Muffalo/Muffalo_Ear_Left + + Parts/Muffalo/Muffalo_Ear_Right + + + +
  • + grown + + A large wooly ear that belongs to a muffalo. Who knew muffalo had ears beneath all that wool? + +
  • +
    +
    + + + MuffaloMorph + EtherMuffaloTail + + + Parts/Yak/Yak_Tail + + +
  • + grown + + A muffalolike tail. It swats at flies and hangs low at their legs. + +
  • +
    +
    + + + EtherMuffaloWooly + MuffaloMorph + + Thick fur grows over the body constantly. It can be shaved, but keeping it short is a futile effort. + 0.01 + StartsGrowingWool + EtherWooly + +
  • + ShavedMyself + Pawnmorph.Jobs.Giver_ShaveSelf + ShavedMyselfBond + ShavedMyselfBroken + WoolMuffalo + +
  • + 0 + 2 + 15 +
  • +
  • + 0.3 + 1 + 12 + 1.3 +
  • +
  • + 0.6 + 0.5 + 7 + 1.6 +
  • +
  • + 0.9 + 0.25 + 4 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    + +
  • Torso
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Tales.xml new file mode 100644 index 000000000..abd2b8802 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Muffalo/Muffalo_Tales.xml @@ -0,0 +1,14 @@ + + + GrowMuffaloMuzzle + + + +
  • tale_noun->[PAWN_nameDef] facing turning into a muffalo muzzle
  • +
  • tale_noun->[PAWN_nameDef] growing thick fur on [PAWN_possessive] head
  • +
  • image->[PAWN_nameDef]'s face begins to push out into a muzzle [circumstance_group]
  • +
  • image->[PAWN_nameDef]'s excited yells turn into moos [circumstance_group]
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Full.xml new file mode 100644 index 000000000..39f4e285b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphYakTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a yakmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more bovine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + YakMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + YakMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Memories.xml new file mode 100644 index 000000000..b003df954 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Memories.xml @@ -0,0 +1,53 @@ + + + YakTransformationMemory + +
  • + + Honestly, I just feel like a hairy cow. + -3 +
  • +
  • + + I feel strong enough to carry supplies across the continent. + +3 +
  • +
  • + + Have I turned into a cow? I think I'm a cow... + -5 +
  • +
  • + + I wish I could be grazing in a field right now. + +1 +
  • +
    +
    + + + YakRevertedMemory + +
  • + + Yeah, that was... about enough of that. + 3 +
  • +
  • + + Aw man, that was fun though. Still gonna moo for the hell of it. + -3 +
  • +
  • + + I'M A PERSON AGAIN! + 10 +
  • +
  • + + Sure, take all the fun out of my life, why don't ya? + -5 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_MorphDef.xml new file mode 100644 index 000000000..0dbd066ce --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_MorphDef.xml @@ -0,0 +1,24 @@ + + + YakMorph + + A large humanoid resulting when a human is exposed to yak specific mutagens. + Yak + +
  • Temperate
  • +
  • Domestic
  • +
    + PawnmorphYakTF + PawnmorphYakTFPartial + + + (100,90,85) + (0,0,0,0) + + + + YakTransformationMemory + YakRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Partial.xml new file mode 100644 index 000000000..d0e4b8c0e --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphYakTFPartial + + This person has mechanites in their blood that are providing them with yak-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + YakMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Parts.xml new file mode 100644 index 000000000..1bdcd3b77 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Parts.xml @@ -0,0 +1,79 @@ + + + YakMorph + EtherYakSnout + + + Parts/Yak/Yak_Muzzle + Parts/Yak/Yak_Headfluff + + + + + YakMorph + EtherYakEar + + + Parts/Yak/Yak_Ear_Left + Parts/Yak/Yak_Ear_Left_Behind + Parts/Yak/Yak_Ear_Right + Parts/Yak/Yak_Ear_Right_Behind + + +
  • + grown + + A large wooly ears that belongs to a yak. It flicks idly. + +
  • +
    +
    + + + YakMorph + EtherYakTail + + + Parts/Yak/Yak_Tail + + +
  • + grown + + A fluffy yak tail. + +
  • +
    +
    + + + + EtherYakHorns + YakMorph + + A pair of yak horns. + + + Parts/Yak/Yak_Horns_B + + +
  • + short + + + Curved horns decorate [PAWN_nameDef]'s head, which can easily be used to stab and puncture anyone foolish enough to tussle with [PAWN_nameDef]. They have grown larger, but still have a little more growing to do. + + Parts/Yak/Yak_Horns_A + + +
  • +
  • + horns + + Two slender horns grow from the sides of [PAWN_nameDef]'s head. They're sharp and dangerous to get near if [PAWN_nameDef] happened to be in a bad mood. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Tales.xml new file mode 100644 index 000000000..e360fe404 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/DomesticatedBovid/Yak/Yak_Tales.xml @@ -0,0 +1,14 @@ + + + GrowYakMuzzle + + + +
  • tale_noun->[PAWN_nameDef] facing turning into a yak muzzle
  • +
  • tale_noun->[PAWN_nameDef] growing thick fur on [PAWN_possessive] head
  • +
  • image->[PAWN_nameDef]'s face begins to push out into a muzzle [circumstance_group]
  • +
  • image->[PAWN_nameDef]'s excited yells turn into moos [circumstance_group]
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Full.xml new file mode 100644 index 000000000..2e688bf08 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphBisonTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a bisonmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more bovine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + BisonMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BisonMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Memories.xml new file mode 100644 index 000000000..402c8aa2a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Memories.xml @@ -0,0 +1,53 @@ + + + BisonTransformationMemory + +
  • + + I think I'm going to have to stock up on shampoo. + -3 +
  • +
  • + + Nobody is going to mess with me while I look like this. + +3 +
  • +
  • + + I've turned into a giant hairy monster! + -5 +
  • +
  • + + I wish I could be grazing in a field right now. + +1 +
  • +
    +
    + + + BisonRevertedMemory + +
  • + + Yeah, that was... about enough of that. + 3 +
  • +
  • + + Aw man, that was fun though. Still gonna moo for the hell of it. + -3 +
  • +
  • + + I'M A PERSON AGAIN! + 10 +
  • +
  • + + Sure, take all the fun out of my life, why don't ya? + -5 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_MorphDef.xml new file mode 100644 index 000000000..02eb31063 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_MorphDef.xml @@ -0,0 +1,23 @@ + + + BisonMorph + + A large humanoid resulting when a human is exposed to bison specific mutagens. Usually covered in long thick fur. + Bison + +
  • Temperate
  • +
    + PawnmorphBisonTF + PawnmorphBisonTFPartial + + + (120,90,65) + (0,0,0,0) + + + + BisonTransformationMemory + BisonRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Partial.xml new file mode 100644 index 000000000..44317044a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphBisonTFPartial + + This person has mechanites in their blood that are providing them with bison-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BisonMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Parts.xml new file mode 100644 index 000000000..aad131468 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Parts.xml @@ -0,0 +1,148 @@ + + + BisonMorph + EtherBisonSnout + + + Parts/Bison/Bison_Muzzle + Parts/Bison/Bison_Foreheadhair + + + + + BisonMorph + EtherBisonEar + + + Parts/Bison/Bison_Ear_Left + Parts/Bison/Bison_Ear_Left_Behind + Parts/Bison/Bison_Ear_Right + Parts/Bison/Bison_Ear_Right_Behind + + +
  • + grown + + A large tan ear that belongs to a bison. It flicks idly. + +
  • +
    +
    + + + BisonMorph + EtherBisonTail + + + Parts/Bison/Bison_Tail + + +
  • + grown + + A bisonlike tail. A tuft of fur puffs out at the end. + +
  • +
    +
    + + + + + + + EtherBisonHorns + BisonMorph + + A pair of bison horns. + + Parts/Bison/Bison_Horns_B + + + +
  • + short + + Curved horns decorate [PAWN_nameDef]'s head, which can easily be used to stab and puncture anyone foolish enough to tussle with [PAWN_nameDef]. They have grown larger, but still have a little more growing to do. + + Parts/Bison/Bison_Horns_A + + +
  • +
  • + horns + + Two short horns grow from the sides of [PAWN_nameDef]'s head. They're sharp and dangerous to get near if [PAWN_nameDef] happened to be in a bad mood. + +
  • +
  • + paragon + + Two stout horns has emerged from the sides of [PAWN_nameDef]'s head. They're very sharp and tempts [PAWN_nameDef] to use them. + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Tales.xml new file mode 100644 index 000000000..109897556 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/Bison/Bison_Tales.xml @@ -0,0 +1,14 @@ + + + GrowBisonMuzzle + + + +
  • tale_noun->[PAWN_nameDef] facing turning into a bison muzzle
  • +
  • tale_noun->[PAWN_nameDef] growing thick fur on [PAWN_possessive] head
  • +
  • image->[PAWN_nameDef]'s face begins to push out into a muzzle [circumstance_group]
  • +
  • image->[PAWN_nameDef]'s excited yells turn into moos [circumstance_group]
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_MorphDef.xml new file mode 100644 index 000000000..ba174a842 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_MorphDef.xml @@ -0,0 +1,8 @@ + + + WildBovid + +
  • Combat
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_Parts.xml new file mode 100644 index 000000000..0405b7014 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Bovid/WildBovid/WildBovid_Parts.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + +
  • + short + + +
  • + + 0.5 + 7 +
  • + + + +
  • + horns + + +
  • + + 1 + 14.5 +
  • + + + +
    + +
  • + paragon + + 2.5 + +
  • + + 1 + 14.5 +
  • + + +
  • + Pawnmorph.Abilities.Bullrush + + A bit like berserker rage... + UI/Buttons/PM_Icon_Bullrush + 120000 +
  • +
    + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Full.xml new file mode 100644 index 000000000..0ca84eca1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphAlpacaTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a alpacamorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more alpaca than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + AlpacaMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + AlpacaMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Memories.xml new file mode 100644 index 000000000..6ef98ac7b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Memories.xml @@ -0,0 +1,127 @@ + + + AlpacaTransformationMemory + +
  • + + I'm covered in wool, and I really want to spit at people. + -3 +
  • +
  • + + Wow, I'm covered in wool, and these hooves are cool! + +3 +
  • +
  • + + I never asked to become a stupid, smelly alpaca! I need to shave right now! + -5 +
  • +
  • + + Wow. This wool is so fluffy, imagine being on all four hooves like this! + +1 +
  • +
    +
    + + + AlpacaRevertedMemory + +
  • + + I'm back to my normal, human self again! No more wool. + 3 +
  • +
  • + + Aw man, but I was really enjoying threatening to spit at people. + -3 +
  • +
  • + + No more wool! Oh, skin, how I missed seeing you. + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + + + + 1 + EtherAlpacaSnout + +
  • + + Ew, I feel like I need to spit. + true + -1 +
  • +
  • + + So soft and wooly, awesome! + true + 2 +
  • +
  • + + My face, it's so ugly and drooly! + true + -3 +
  • +
    +
    + + 1 + EtherAlpacaEar + +
  • + + They're annoyingly long and get in the way. + true + -1 +
  • +
  • + + Tall ears are cool. + true + 1 +
  • +
  • + + Eugh, I don't want these! + true + -2 +
  • +
    +
    + + 1 + EtherAlpacaTail + +
  • + + It's dangly and in the way. + true + -1 +
  • +
  • + + Cool, a tail! I suppose it's part of the aesthetic, if not all that useful. + true + 1 +
  • +
  • + + I think I can cut it off, right? + true + -2 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_MorphDef.xml new file mode 100644 index 000000000..fa81bbb16 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_MorphDef.xml @@ -0,0 +1,25 @@ + + + AlpacaMorph + + HerbivoreHerding + Alpacamorphs are rather woolly herbivorous humanoids who often have hooves. They produce good amounts of soft wool, which they can shave off themselves... and they don't need your help, thank you. + Alpaca + +
  • Temperate
  • +
  • Tropical
  • +
  • Domestic
  • +
    + PawnmorphAlpacaTF + PawnmorphAlpacaTFPartial + + + (223,188,126) + + + + AlpacaTransformationMemory + AlpacaRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Partial.xml new file mode 100644 index 000000000..d8af2dc51 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphAlpacaTFPartial + + This person has mechanites in their blood that are providing them with alpaca-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + AlpacaMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Parts.xml new file mode 100644 index 000000000..0118f6ef6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Parts.xml @@ -0,0 +1,229 @@ + + + AlpacaMorph + EtherAlpacaSnout + + EtherAlpacaSnout + GrewAlpacaMuzzle + + Parts/Alpaca/Alpaca_Muzzle + + +
  • + pressing + + +
  • + + 0 +
  • +
  • + + 0 +
  • + + + +
  • + pressing + + +
  • + + 0 +
  • +
  • + + 0 +
  • + + + +
  • + growing + + +
  • + + 0.5 +
  • +
  • + + 0 +
  • + + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, woolly and with lips perfect for spitting. The strange shape makes speaking very difficult. + +
  • + + 1 +
  • +
  • + + 0.5 +
  • + + + +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, woolly and with lips perfect for spitting. Adapting to it has made speaking less frustrating. + +
  • + + 2 +
  • +
  • + + 1.5 +
  • + + + +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, woolly and with lips perfect for spitting. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + + 3 +
  • +
  • + + 2 +
  • + + + +
    + +
  • + +
  • + + +
  • SpitInEyes
  • + + PawnmorphAlpacaTFPartial + 0.8 + 1 + true + +
  • + + +
  • SpitInMouth
  • + + PawnmorphAlpacaTF + 2 + 1 + true + + + +
    +
    + + + AlpacaMorph + EtherAlpacaEar + + + Parts/Alpaca/Alpaca_Ear_Left + Parts/Alpaca/Alpaca_Ear_Left_Behind + Parts/Alpaca/Alpaca_Ear_Right + Parts/Alpaca/Alpaca_Ear_Right_Behind + + EtherAlpacaEar + +
  • + grown + + A wooly ear twitches idly at the wind. + +
  • +
    +
    + + + AlpacaMorph + EtherAlpacaTail + + + Parts/Alpaca/Alpaca_Tail + + EtherAlpacaTail + +
  • + grown + + A alpaca's curly tail, it twitches when food is near. + +
  • +
    +
    + + + EtherWooly + AlpacaMorph + + Thick wool grows over the torso constantly. It can be shaved without anyone's help. + 0.01 + StartsGrowingWool + EtherWooly + +
  • + ShavedMyself + Pawnmorph.Jobs.Giver_ShaveSelf + ShavedMyselfBond + ShavedMyselfBroken + WoolAlpaca + +
  • + 0 + 1 + 5 +
  • +
  • + 0.3 + 0.5 + 4 + 1.3 +
  • +
  • + 0.6 + 0.25 + 3 + 1.6 +
  • +
  • + 0.9 + 0.1 + 2 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    + +
  • Torso
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Spit.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Spit.xml new file mode 100644 index 000000000..b1bacb46c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Spit.xml @@ -0,0 +1,140 @@ + + + + SpitInEyes + SpitInEyes + + Pawnmorph.Verbs.Verb_MeleeApplyMutagenicHediff + SightSource + ToolUser + Mouth + + SpitInEyes + Maneuver_SpitMaterialInEyes_MeleeHit + Maneuver_SpitMaterialInEyes_MeleeDeflect + Maneuver_SpitMaterialInEyes_MeleeMiss + Maneuver_SpitMaterialInEyes_MeleeDodge + + +
  • + PM_FightingMutagen +
  • +
    +
    + + + SpitInMouth + SpitInEyes + + Pawnmorph.Verbs.Verb_MeleeApplyMutagenicHediff + SightSource + ToolUser + DustPuff + Mouth + + SpitInMouth + Maneuver_SpitMaterialInMouth_MeleeHit + Maneuver_SpitMaterialInMouth_MeleeDeflect + Maneuver_SpitMaterialInMouth_MeleeMiss + Maneuver_SpitMaterialInMouth_MeleeDodge + + +
  • + PM_FightingMutagen +
  • +
    +
    + + + Maneuver_SpitMaterialInEyes_MeleeHit + + +
  • r_logentry->[INITIATOR_definite] spat at [RECIPIENT_definite]'s eyes.
  • +
  • r_logentry(p=0.2)->[INITIATOR_definite] spat a spray of mutagen-laced saliva in [RECIPIENT_definite]'s eyes.
  • +
    +
    +
    + + Maneuver_SpitMaterialInEyes_MeleeDeflect + +
  • Maneuver_SpitMaterialInEyes_MeleeMiss
  • +
    +
    + + Maneuver_SpitMaterialInEyes_MeleeMiss + + +
  • r_logentry->[INITIATOR_definite] tried to spit in [RECIPIENT_definite]'s eyes, but missed.
  • +
    +
    +
    + + Maneuver_SpitMaterialInEyes_MeleeDodge + + +
  • r_logentry->[INITIATOR_definite] tried to spit in [RECIPIENT_definite]'s eyes, but [RECIPIENT_definite] dodged out of the way.
  • +
    +
    +
    + + + + + + Maneuver_SpitMaterialInMouth_MeleeHit + + +
  • r_logentry->[INITIATOR_definite] spat a mechanite-infused spray at [RECIPIENT_definite]'s face, [talkedabout].
  • +
  • r_logentry(p=0.2)->[INITIATOR_definite] spat an aimed spray of mutagen-laced saliva in [RECIPIENT_definite]'s face, [talkedabout].
  • +
  • talkedabout->which seems to be getting hairier.
  • +
  • talkedabout->and now their ears itch.
  • +
  • talkedabout->and now their face feels funny.
  • +
    +
    +
    + + Maneuver_SpitMaterialInMouth_MeleeDeflect + +
  • Maneuver_SpitMaterialInMouth_MeleeMiss
  • +
    +
    + + Maneuver_SpitMaterialInMouth_MeleeMiss + + +
  • r_logentry->[INITIATOR_definite] tried to spit in [RECIPIENT_definite]'s face, but missed.
  • +
    +
    +
    + + Maneuver_SpitMaterialInMouth_MeleeDodge + + +
  • r_logentry->[INITIATOR_definite] tried to spit in [RECIPIENT_definite]'s face, but [RECIPIENT_definite] dodged out of the way.
  • +
    +
    +
    + + + + + SpitInEyes + + + SpitInMouth + + + + SpitInEyes + Things/Mote/SpeechSymbols/Spit + Things/Mote/SpeechSymbols/SpitTarget + + + + SpitInMouth + Things/Mote/SpeechSymbols/Spit + Things/Mote/SpeechSymbols/SpitTarget + + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Tales.xml new file mode 100644 index 000000000..0a36b7f94 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Alpaca/Alpaca_Tales.xml @@ -0,0 +1,30 @@ + + + StartsGrowingWool + + + +
  • tale_noun->[PAWN_nameDef] hair thickening into fur
  • +
  • tale_noun->thick fur beginning to cover [PAWN_nameDef]'s body
  • +
  • image->[PAWN_nameFull] begins scratching at the thickening fur [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to feel very warm [circumstance_group]
  • +
  • circumstance_phrase->as someone begins petting [PAWN_possessive] fur
  • +
  • circumstance_phrase->as someone reaches for a brush
  • +
  • desc_sentence->[PAWN_pronoun] begins brushing [PAWN_possessive] fur.
  • +
    +
    +
    + + + GrewAlpacaMuzzle + + + +
  • tale_noun->[PAWN_nameDef] grew an alpaca muzzle
  • +
  • tale_noun->[PAWN_nameDef]'s face becoming like that of an alpaca
  • +
  • image->[PAWN_nameDef] teeth start to become larger and blunter [circumstance_group]
  • +
  • desc_sentence->[PAWN_nameDef] spits at someone who was annoying [PAWN_pronoun].
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Memories.xml new file mode 100644 index 000000000..c3a7c4ae6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Memories.xml @@ -0,0 +1,78 @@ + + + + 1 + EtherCamelidMuzzle + +
  • + + Why do I want a smoke all of a sudden? + true + -1 +
  • +
  • + + I'll look so classy with a cigar! + true + 2 +
  • +
  • + + My lips are so swollen, did I get stung by a bee? + true + -3 +
  • +
    +
    + + + 1 + EtherCamelidEar + +
  • + + What am I supposed to do with these? + true + -1 +
  • +
  • + + Perfect for the desert heat! + true + 1 +
  • +
  • + + These things are so twitchy, get them off me! + true + -2 +
  • +
    +
    + + + 1 + EtherCamelidTail + +
  • + + What is this useful for again? + true + -1 +
  • +
  • + + Look at it back there! So cute! + true + 1 +
  • +
  • + + Can't keep it still even if I wanted to! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_MorphDef.xml new file mode 100644 index 000000000..bdd7f0674 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_MorphDef.xml @@ -0,0 +1,9 @@ + + + Camelid + +
  • Production
  • +
    + HerbivoreHerding +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Parts.xml new file mode 100644 index 000000000..16608d6a1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Camelid_Parts.xml @@ -0,0 +1,61 @@ + + + EtherCamelidMuzzle + +
  • + adapting + + [PAWN_nameDef]'s face has pushed out into a long camel snout, with slit nostrils that can be closed to keep out sand and debris. Adapting to it has made speaking less frustrating. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has pushed out into a long camel snout, with slit nostrils that can be closed to keep out sand and debris. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has pushed out into a long camel snout, with slit nostrils that can be closed to keep out sand and debris. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherCamelidEar + +
  • + growing + + + +0.075 + + +
  • +
  • + grown + + + +0.15 + + +
  • +
    +
    + + + EtherCamelidTail + +
  • + grown + + + 5 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Full.xml new file mode 100644 index 000000000..a69bf7b0b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphDromedaryTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an dromedarymorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more dromedary than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + DromedaryMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DromedaryMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Memories.xml new file mode 100644 index 000000000..922963efa --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Memories.xml @@ -0,0 +1,44 @@ + + + DromedaryTransformationMemory + +
  • + + I guess I can now live in a desert... + -3 +
  • +
  • + + Now I can live for two weeks without water! + +3 +
  • +
  • + + What the hell is wrong with my mouth? So much salvia... + -5 +
  • +
    +
    + + + DromedaryRevertedMemory + +
  • + + I’m not gonna miss that hump! + 3 +
  • +
  • + + I’m gonna miss being able to get away with spitting at people. + -3 +
  • +
  • + + Finally, I’m as vulnerable to dehydration as nature intended! + 10 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_MorphDef.xml new file mode 100644 index 000000000..61c346d0f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_MorphDef.xml @@ -0,0 +1,23 @@ + + + DromedaryMorph + + Dromedaromorphs are the result of humans contaminated by high levels of mutating mechanites. Their ability to store water and vent excess heat makes them excel in desert environments + Dromedary + +
  • Arid
  • +
  • Domestic
  • +
    + PawnmorphDromedaryTF + PawnmorphDromedaryTFPartial + + + (211,187,159) + + + + DromedaryTransformationMemory + DromedaryRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Partial.xml new file mode 100644 index 000000000..36d421f8c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphDromedaryTFPartial + + This person has mechanites in their blood that are providing them with dromedary-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DromedaryMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Parts.xml new file mode 100644 index 000000000..73b7b9421 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Camelid/Dromedary/Dromedary_Parts.xml @@ -0,0 +1,47 @@ + + + DromedaryMorph + EtherDromedarySnout + + + Parts/Dromedary/Dromedary_Muzzle + + + + + DromedaryMorph + EtherDromedaryEar + + + Parts/Dromedary/Dromedary_Ear_Left + Parts/Dromedary/Dromedary_Ear_Left_Behind + Parts/Dromedary/Dromedary_Ear_Right + Parts/Dromedary/Dromedary_Ear_Right_Behind + + +
  • + grown + + [PAWN_nameDef]'s ear has grown into a dromedary's ear. + +
  • +
    +
    + + + DromedaryMorph + EtherDromedaryTail + + + Parts/Dromedary/Dromedary_Tail + + +
  • + grown + + [PAWN_nameDef] has a long thin dromedary tail. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_MorphDef.xml new file mode 100644 index 000000000..65ab6cf93 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_MorphDef.xml @@ -0,0 +1,9 @@ + + + Caprid + +
  • Production
  • +
    + HerbivoreHerding +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_Parts.xml new file mode 100644 index 000000000..684f43976 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Caprid_Parts.xml @@ -0,0 +1,143 @@ + + + +
  • + growing + + + Parts/Partials/PartialMuzzle/PartialSnoutOvine + + +
  • +
  • + adapting + + [PAWN_nameDef]'s face now has the shape of a snout, with a long goatee and squared off teeth suitable for munching on just about everything. Adapting to it has made speaking less frustrating. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face now has the shape of a snout, with a long goatee and squared off teeth suitable for munching on just about everything. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face now has the shape of a snout, with a long goatee and squared off teeth suitable for munching on just about everything. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + +
  • + growing + + + +0.075 + + +
  • +
  • + grown + + + +0.15 + + +
  • +
    +
    + + + +
  • + growing + + + +0.05 + + +
  • +
  • + grown + + + +0.1 + + +
  • +
    +
    + + + +
  • + initial + + +
  • + + 0 + 0 +
  • + + + +
  • + nubs + + +
  • + + 0.5 + 2 +
  • + + + +
  • + short + + +
  • + + 1 + 4 +
  • + + + +
  • + horns + + +
  • + + 1 + 5.5 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Blunt
  • + + 0 + 3 + true + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Backstories.xml new file mode 100644 index 000000000..ac3e6800f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Backstories.xml @@ -0,0 +1,44 @@ + + + GoatmorphGeneral + rowdy goat + GOAT + [PAWN_nameDef] was taken from [PAWN_possessive] home and mutated by a cryptodemonic cult who worshipped a goatlike deity. [PAWN_pronoun] proved to be the Goatliest Of All Time and the cult couldn't handle [PAWN_pronoun], which provided a means to escape. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • GoatMorph
  • + + +
    +
    + + GoatmorphCultist + caprine cultist + cultist + [PAWN_nameDef] spent [PAWN_possessive] life associated with an occult group who worshiped a goat-like deity. As soon as the cult got their hands on morph technology they immediately injected themselves in a pact-like mass transformation to bring themselves closer to their god. [PAWN_nameDef] was the only one left with measurable sapience and has been wandering since. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • GoatMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Full.xml new file mode 100644 index 000000000..55fe4b8ae --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphGoatTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a goatmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more caprine. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + GoatMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GoatMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Memories.xml new file mode 100644 index 000000000..2953bdfeb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Memories.xml @@ -0,0 +1,53 @@ + + + GoatTransformationMemory + +
  • + + Even my meal trays look delicious now... + -3 +
  • +
  • + + I have a maaaaaarvelous voice! + 3 +
  • +
  • + + Help mee-eee-eh! + -5 +
  • +
  • + + I'm still on two legs, so I'm not truly the GOAT. + 1 +
  • +
    +
    + + + GoatRevertedMemory + +
  • + + I can speak without a bleat now, thankfully. + 3 +
  • +
  • + + But I wanted to be the goat! + -3 +
  • +
  • + + Thank Randy, I no longer smell terrible all the time. + 10 +
  • +
  • + + But I REALLY wanted to be the goat! + -5 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_MorphDef.xml new file mode 100644 index 000000000..dce9ab763 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_MorphDef.xml @@ -0,0 +1,23 @@ + + + GoatMorph + + With a beard and cuboid pupils, goatmorphs are a 'farm'-type morph who are rowdy in combat. Female goatmorphs can produce milk. + Goat + +
  • Domestic
  • +
    + + PawnmorphGoatTF + PawnmorphGoatTFPartial + + + (220,220,220) + + + + GoatTransformationMemory + GoatRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Partial.xml new file mode 100644 index 000000000..3b595dfb8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphGoatTFPartial + + This person has mechanites in their blood that are providing them with goat-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GoatMorph + + + 7.7 + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Parts.xml new file mode 100644 index 000000000..33a432964 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Parts.xml @@ -0,0 +1,84 @@ + + + GoatMorph + EtherGoatSnout + + + Parts/Goat/Goat_Muzzle + + + + + GoatMorph + EtherGoatEar + + + Parts/Goat/Goat_Ear_Left + Parts/Goat/Goat_Ear_Left_Behind + Parts/Goat/Goat_Ear_Right + Parts/Goat/Goat_Ear_Right_Behind + + +
  • + grown + + A fluffy, caprine ear sits at the side of [PAWN_nameDef]'s head, like that of a goat. + +
  • +
    +
    + + + GoatMorph + EtherGoatTail + + + Parts/Goat/Goat_Tail + + +
  • + grown + + A Goatlike tail. It's very wooly but short and not incredibly useful. + +
  • +
    +
    + + + EtherGoatHorns + GoatMorph + + The curved horns of a goat. They start small, but will eventually grow to full size. Horn growth does not require the constant work of mutagenic mechanites. + + +
  • + nubs + + + Parts/Goat/GoatHorns_A + + +
  • +
  • + short + + Curved horns has grown from [PAWN_nameDef]'s head, while still not fully grown they already add heft to any unfortunate subjected to a headbutt. + + Parts/Goat/GoatHorns_B + + +
  • +
  • + horns + + Having reached full size, [PAWN_nameDef]'s horns will allow him to dominate any game of king of the hill. + + Parts/Goat/GoatHorns_C + + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Tales.xml new file mode 100644 index 000000000..66a603087 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Goat/Goat_Tales.xml @@ -0,0 +1,30 @@ + + + GrowGoatHorns + + + +
  • tale_noun->[PAWN_nameDef] growing horns
  • +
  • image->horns begin to push from [PAWN_nameFull]'s head [circumstance_group]
  • +
  • circumstance_phrase->as someone starts touching them
  • +
  • desc_sentence->[PAWN_pronoun] examines [PAWN_possessive] new curved horns.
  • +
  • desc_sentence->[PAWN_pronoun] looks pleased with [PAWN_possessive] new horns.
  • +
  • desc_sentence->[PAWN_pronoun] looks uneasy with [PAWN_possessive] new horns.
  • +
    +
    +
    + + + GrowGoatSnout + + + +
  • tale_noun->[PAWN_nameDef] facing turning into an ovine snout
  • +
  • tale_noun->[PAWN_nameDef] growing a goatish snout
  • +
  • image->[PAWN_nameDef]'s face begins to push out into a snout [circumstance_group]
  • +
  • image->[PAWN_nameDef]'s excited yells turn into bleats [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] continues to maa at those around them.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Full.xml new file mode 100644 index 000000000..e7a4259e0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphIbexTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an ibexmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more ibex than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + IbexMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + IbexMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Memories.xml new file mode 100644 index 000000000..ba90be7b8 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Memories.xml @@ -0,0 +1,119 @@ + + + IbexTransformationMemory + +
  • + + At least my head is safe! + -3 +
  • +
  • + + I feel great! No one’s going to mess with these horns of mine! + +3 +
  • +
  • + + My head’s so heavy and my neck is killing me! + -5 +
  • +
    +
    + + + IbexRevertedMemory + +
  • + + So I lost a killer rack, at least I can wear fresh shirts now! + 3 +
  • +
  • + + I miss headbutting my problems already... + -3 +
  • +
  • + + My head feels ligher now! I will not miss those horns! + 10 +
  • +
    +
    + + + 1 + EtherIbexJaw + +
  • + + This isn't what I was planning to wake up to this morning... + true + -1 +
  • +
  • + + Maaah! I want to ram something! + true + 2 +
  • +
  • + + My face...what's wrong with my face!? + true + -3 +
  • +
    +
    + + + 1 + EtherIbexEar + +
  • + + At least I can hear a bit better... + true + -1 +
  • +
  • + + I can hear echoes so well now! + true + 1 +
  • +
  • + + If anyone mentions the story about the goats and that bridge, they're a dead man! + true + -2 +
  • +
    +
    + + + 1 + EtherIbexTail + +
  • + + What? What tail? I can't see it! + true + -1 +
  • +
  • + + Fluffy and small, fun sized! + true + 1 +
  • +
  • + + At least I can hide it... + true + -2 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_MorphDef.xml new file mode 100644 index 000000000..36fc27c13 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_MorphDef.xml @@ -0,0 +1,26 @@ + + + IbexMorph + + Ibexmorphs are similar but wilder relatives of goatmorphs. Their headbutts can be pretty effective at combat. + Ibex + +
  • Domestic
  • +
  • Cold
  • +
  • Temperate
  • +
    + + PawnmorphIbexTF + PawnmorphIbexTFPartial + + + (136,100,75) + (153,129,113) + + + + IbexTransformationMemory + IbexRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Partial.xml new file mode 100644 index 000000000..8fe311e5a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphIbexTFPartial + + This person has mechanites in their blood that are providing them with ibe-sque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + IbexMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Parts.xml new file mode 100644 index 000000000..4b50964c2 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Ibex/Ibex_Parts.xml @@ -0,0 +1,85 @@ + + + IbexMorph + EtherIbexSnout + + + Parts/Ibex/Ibex_Muzzle + + + + + IbexMorph + EtherIbexEar + + + Parts/Ibex/Ibex_Ear_Left + Parts/Ibex/Ibex_Ear_Left_Behind + Parts/Ibex/Ibex_Ear_Right + Parts/Ibex/Ibex_Ear_Right_Behind + + +
  • + grown + + A fluffy, caprine ear sits at the side of [PAWN_nameDef]'s head, like that of an ibex. + +
  • +
    +
    + + + IbexMorph + EtherIbexTail + + + Parts/Ibex/Ibex_Tail + + +
  • + grown + + A tail like that of an Ibex goat. It's very wooly but short and not very useful. + +
  • +
    +
    + + + + EtherIbexHorns + IbexMorph + + The curved horns of an ibex. They start small, but will eventually grow to full size. Horn growth does not require the constant work of mutagenic mechanites. + + +
  • + nubs + + + Parts/Ibex/Ibex_Horns_A + + +
  • +
  • + short + + Long, curved horns grows from [PAWN_nameDef]'s head. They are already larger than even most but still have a little more growing to do. + + Parts/Ibex/Ibex_Horns_B + + +
  • +
  • + horns + + Incredibly long Ibex horns crowns [PAWN_nameDef]'s head, moving through doors is difficult but they add great heft to any headbutt. + + Parts/Ibex/Ibex_Horns_C + + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Backstories.xml new file mode 100644 index 000000000..3ac1c58bf --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Backstories.xml @@ -0,0 +1,23 @@ + + + SheepmorphGeneral + farm sheep + sheepmorph + [PAWN_nameDef] was sold to a farmer with less-than-ethical business practices, and quickly made [PAWN_nameDef] part of the sheep flock. [PAWN_pronoun] escaped before being shorn, and fled with [PAWN_possessive] fleece still on [PAWN_possessive] back. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • SheepMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Full.xml new file mode 100644 index 000000000..c1dac0888 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphSheepTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a sheepmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more sheepish. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + SheepMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SheepMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Memories.xml new file mode 100644 index 000000000..9ad5630a4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Memories.xml @@ -0,0 +1,160 @@ + + + SheepTransformationMemory + +
  • + + Ugh, that's a lot of hair. Where's the shears — er, I mean, razor? + -3 +
  • +
  • + + I'm so cute and fluffy! + 3 +
  • +
  • + + I'm shedding everywhere, this is disgusting. + -5 +
  • +
  • + + Hmmm... I wonder how much more sheeplike I could baaaah? + 1 +
  • +
    +
    + + + SheepRevertedMemory + +
  • + + Ha, no more shearings for me! + 3 +
  • +
  • + + Aw, I liked having wool. + -3 +
  • +
  • + + Thank Randy, I no longer smell like wet hair all the time. + 10 +
  • +
  • + + Aw, I wanted to be more sheepish, not less. + -5 +
  • +
    +
    + + + 1 + EtherSheepSnout + +
  • + + Baaaaaaaa? I don't really want to eat grass... + true + -1 +
  • +
  • + + Who needs a lawnmower when you could just do it yourself? + true + 2 +
  • +
  • + + Wha-a-a-at's wrong my my fa-a-a-aace?! + true + -3 +
  • +
  • + + I don't need to be able to cook when I could just eat grass! + true + 1 +
  • +
    +
    + + + 1 + EtherSheepEye + +
  • + + The pupils look so...animal. + true + -1 +
  • +
  • + + Nobody can sneak up on me now...! + true + 2 +
  • +
  • + + They make me look like a stupid sheep! + true + -3 +
  • +
    +
    + + + 1 + EtherSheepEar + +
  • + + They are really annoying sometimes, blocking my vision flopping around. + true + -1 +
  • +
  • + + Baaaa! Look at my ears! + true + 1 +
  • +
  • + + I look like I belong in a cage... + true + -2 +
  • +
    +
    + + + 1 + EtherSheepTail + +
  • + + Nubby... + true + -1 +
  • +
  • + + It's soooo cute! + true + 1 +
  • +
  • + + This is too weird for me, but at least I can hide it from people. + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_MorphDef.xml new file mode 100644 index 000000000..b654044d5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_MorphDef.xml @@ -0,0 +1,22 @@ + + + SheepMorph + + With cute, fluffy wool and cuboid pupils, sheepmorphs are a 'farm'-type morph who can be shorn for wool. They often have hooves and are covered in wool that makes them useful in cold biomes. + Sheep + +
  • Domestic
  • +
    + PawnmorphSheepTF + PawnmorphSheepTFPartial + + + (220,220,220) + + + + SheepTransformationMemory + SheepRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Partial.xml new file mode 100644 index 000000000..4e953a2a3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphSheepTFPartial + + This person has mechanites in their blood that are providing them with sheep-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SheepMorph + + + 7.7 + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Parts.xml new file mode 100644 index 000000000..2e89bf8f7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Parts.xml @@ -0,0 +1,192 @@ + + + SheepMorph + EtherSheepSnout + + + Parts/Sheep/Sheep_Muzzle + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face with squared off teeth great for chewing the cud. [PAWN_nameDef] smiles sheepishly whenever [PAWN_pronoun]'s caught in a baa. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face with squared off teeth great for chewing the cud. [PAWN_nameDef] smiles sheepishly whenever [PAWN_pronoun]'s caught in a baa. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A snout graces [PAWN_nameDef]'s face with squared off teeth great for chewing the cud. [PAWN_nameDef] smiles sheepishly whenever [PAWN_pronoun]'s caught in a baa. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + SheepMorph + EtherSheepEar + + + Parts/Sheep/Sheep_Ear_Left + Parts/Sheep/Sheep_Ear_Left_Behind + Parts/Sheep/Sheep_Ear_Right + Parts/Sheep/Sheep_Ear_Right_Behind + + +
  • + growing + + [PAWN_nameDef]'s ears are growing longer. + +
  • +
  • + grown + + A fluffy, ovine ear flicks idly at the side of [PAWN_nameDef]'s head, like a sheep's. + +
  • +
    +
    + + + SheepMorph + EtherSheepTail + + + Parts/Sheep/Sheep_Tail + + +
  • + grown + + A sheeplike tail. It's very wooly but short and not incredibly useful. + +
  • +
    +
    + + + + EtherWoolySheep + SheepMorph + + Thick wool grows over the torso constantly, different from the comparatively lighter wool that grows elsewhere. It can be shaved without anyone's help. + 1 + 0.01 + +
  • Torso
  • +
    + +
  • + ShavedMyself + Pawnmorph.Jobs.Giver_ShaveSelf + ShavedMyselfBond + ShavedMyselfBroken + WoolSheep + +
  • + 0 + 1 + 5 +
  • +
  • + 0.3 + 0.5 + 4 + 1.3 +
  • +
  • + 0.6 + 0.25 + 3 + 1.6 +
  • +
  • + 0.9 + 0.1 + 2 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    +
    + + + + EtherSheepHorns + SheepMorph + + The curled horns of a ram. They start small, but will eventually grow quite large. Horn growth does not require the constant work of mutagenic mechanites. + + +
  • + nubs + + small horns + Small horns top [PAWN_nameDef]'s head, which add a sizeable heft to a headbutt. They are small for now, and will take many weeks to grow to full size. + + Parts/Sheep/Sheep_Horns_A + + +
  • +
  • + short + + curled horns + Hefty Ram horns grows [PAWN_nameDef]'s head. While they are still growing they already add a lot of power to his attacks. + + Parts/Sheep/Sheep_Horns_B + + +
  • +
  • + horns + + A pair of Burly Ram horns crowns [PAWN_nameDef]'s head. The power they add will earn respect from even the fiercest of enemy. + + Parts/Sheep/Sheep_Horns_C + + +
  • +
    + +
  • + paragon + + 2.5 + Magnificent horns wreathes [PAWN_nameDef]'s head like a crown. They demand reverance from animals who innately understand the owner's whims. + + Parts/Sheep/Sheep_Horns_C + + + 1 + 0.5 + + +
  • + + 5.5 +
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Tales.xml new file mode 100644 index 000000000..7be7d50ee --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Caprid/Sheep/Sheep_Tales.xml @@ -0,0 +1,46 @@ + + + GrowSheepHorns + + + +
  • tale_noun->[PAWN_nameDef] growing horns
  • +
  • image->horns begin to push from [PAWN_nameFull]'s head [circumstance_group]
  • +
  • circumstance_phrase->as someone starts touching them
  • +
  • desc_sentence->[PAWN_pronoun] examines [PAWN_possessive] new curled horns.
  • +
  • desc_sentence->[PAWN_pronoun] looks pleased with [PAWN_possessive] new horns.
  • +
  • desc_sentence->[PAWN_pronoun] looks uneasy with [PAWN_possessive] new horns.
  • +
    +
    +
    + + + GrowSheepSnout + + + +
  • tale_noun->[PAWN_nameDef] facing turning into an ovine snout
  • +
  • tale_noun->[PAWN_nameDef] growing a sheepish snout
  • +
  • image->[PAWN_nameDef]'s face begins to push out into a snout [circumstance_group]
  • +
  • image->[PAWN_nameDef]'s excited yells turn into bleats [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] continues to baa at those around them.
  • +
    +
    +
    + + + GrewWool + + + +
  • tale_noun->[PAWN_nameDef] growing a thick coat of wool
  • +
  • tale_noun->[PAWN_nameDef] begging to get shaved
  • +
  • image->curls of white wool begins to grow on [PAWN_nameFull]'s torso [circumstance_group]
  • +
  • circumstance_phrase->as someone approaches [PAWN_pronoun] with clippers
  • +
  • circumstance_phrase->as someone approaches [PAWN_pronoun] with a razor
  • +
  • desc_sentence->[PAWN_pronoun] is embarrassed about [PAWN_possessive] shirts not fitting over the wool.
  • +
  • desc_sentence->[PAWN_pronoun] seems surprisingly content about the warmth of the wool.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_MorphDef.xml new file mode 100644 index 000000000..deaa9e7cd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_MorphDef.xml @@ -0,0 +1,8 @@ + + + BigCervid + +
  • Combat
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_Parts.xml new file mode 100644 index 000000000..c938a8e8b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/BigCervid_Parts.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + +
  • + short + + + +
  • + + 0.5 + 10.0 +
  • + + + +
  • + horns + + + +
  • + + 1 + 14.5 +
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Full.xml new file mode 100644 index 000000000..fd9a69bc5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphCaribouTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an cariboubaramorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more caribou than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + CaribouMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CaribouMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Memories.xml new file mode 100644 index 000000000..8224be259 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Memories.xml @@ -0,0 +1,144 @@ + + + CaribouTransformationMemory + +
  • + + Well at least I won’t get cold in the winter... + -3 +
  • +
  • + + I can’t wait to see the shape of my antlers! + +3 +
  • +
  • + + They would not leave me outside in winter, would they? + -5 +
  • +
    +
    + + + CaribouRevertedMemory + +
  • + + Much better, these antlers were pretty heavy... + -3 +
  • +
  • + + I feel defenseless without my antlers... + +3 +
  • +
  • + + Finally, I had enough of sowing these antlers! + +10 +
  • +
    +
    + + + 1 + EtherCaribouJaw + +
  • + + Oh deer, this is going to be tough to get used to. + true + -1 +
  • +
  • + + Where's my red nose? + true + 2 +
  • +
  • + + STOP SINGING JINGLE BELLS TO ME! + true + -3 +
  • +
    +
    + + + 1 + EtherCaribouEar + +
  • + + At least they keep the flies off themselves...? + true + -1 +
  • +
  • + + I can hear everything! + true + 1 +
  • +
  • + + These things are so twitchy, get them off me! + true + -2 +
  • +
    +
    + + + + 1 + EtherCaribouTail + +
  • + + Is this thing... a tail? + true + -1 +
  • +
  • + + It's so fluffy! + true + 1 +
  • +
  • + + Just big enough to be hard to hide... great... + true + -2 +
  • +
    +
    + + + 1 + EtherCaribouAntlers + +
  • + + Is this thing... a tail? + true + -1 +
  • +
  • + + It's so fluffy! + true + 1 +
  • +
  • + + Just big enough to be hard to hide... great... + true + -2 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_MorphDef.xml new file mode 100644 index 000000000..540a0c385 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_MorphDef.xml @@ -0,0 +1,22 @@ + + + CaribouMorph + + Cariboumorphs are usually peaceful and imposing herbivorous humanoids who can live under harsh winters. However, if you bother them, their big antlers may hurt you pretty badly... + Caribou + +
  • Cold
  • +
    + PawnmorphCaribouTF + PawnmorphCaribouTFPartial + + + (117, 93, 76) + + + + CaribouTransformationMemory + CaribouRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Partial.xml new file mode 100644 index 000000000..78f385c45 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphCaribouTFPartial + + This person has mechanites in their blood that are providing them with caribou-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + CaribouMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Parts.xml new file mode 100644 index 000000000..4cac9fc0c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Caribou/Caribou_Parts.xml @@ -0,0 +1,104 @@ + + + CaribouMorph + EtherCaribouJaw + + + Parts/Caribou/Caribou_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s face has pushed out into a long caribou muzzle. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has pushed out into a long caribou muzzle. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has pushed out into a long caribou muzzle. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + CaribouMorph + EtherCaribouEar + + + Parts/Caribou/Caribou_Ear_Left + Parts/Caribou/Caribou_Ear_Left_Behind + Parts/Caribou/Caribou_Ear_Right + Parts/Caribou/Caribou_Ear_Right_Behind + + +
  • + growing + + [PAWN_nameDef]'s ear is growing longer. + +
  • +
  • + grown + + [PAWN_nameDef]'s ear has grown into a large caribou ear. + +
  • +
    +
    + + + CaribouMorph + EtherCaribouTail + + + Parts/Caribou/Caribou_Tail + + +
  • + grown + + [PAWN_nameDef] has a small caribou tail. + +
  • +
    +
    + + + EtherCaribouAntlers + + large caribou antlers. + CaribouMorph + GrewAntlers + EtherAntlers + +
  • + short + + From [PAWN_nameDef]'s head a large pair of antlers is growing under a soft felt of velvet skin. While still not fully grown they're already dangerous for being so hard. + + +
  • +
  • + horns + + [PAWN_nameDef]'s head now sports an impressive rack with many nasty-looking spikes. Shirts are especially at risk. + + Parts/Caribou/Caribou_Horns + + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Full.xml new file mode 100644 index 000000000..7e21890a0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphElkTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an elk morph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming more elk than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + ElkMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ElkMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Memories.xml new file mode 100644 index 000000000..f63cb270f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Memories.xml @@ -0,0 +1,159 @@ + + + ElkTransformationMemory + +
  • + + Great, now I look like a big, shaggy lump. + -3 +
  • +
  • + + I feel so majestic, so imposing. This is awesome! + +3 +
  • +
  • + + An elk? Isn't that just a big deer? Oh I don't care! Just make it stop! + -5 +
  • +
  • + + A good start, how far can I go? + +1 +
  • +
    +
    + + + ElkRevertedMemory + +
  • + + It's me, I'm back! + 3 +
  • +
  • + + No! My magesty! + -3 +
  • +
  • + + Oh the humanity! MY humanity! Yay! + 10 +
  • +
  • + + But I was so close to perfection... + -5 +
  • +
    +
    + + + 1 + EtherElkJaw + +
  • + + I can barely talk with this thing... + true + -1 +
  • +
  • + + ...This is kinda cool, I guess? + true + 2 +
  • +
  • + + What happened to my face?!? + true + -3 +
  • +
    +
    + + + 1 + EtherElkEar + +
  • + + Will they ever stop itching? + true + -1 +
  • +
  • + + I can hear so well now! + true + 1 +
  • +
  • + + These things are so twitchy, get them off me! + true + -2 +
  • +
    +
    + + + 1 + EtherElkTail + +
  • + + Is this stubby little thing...a tail? + true + -1 +
  • +
  • + + It's so small and fluffy! + true + 1 +
  • +
  • + + At least I can hide it. + true + -2 +
  • +
    +
    + + + 1 + EtherElkAntlers + +
  • + + How am I supposed to rest on my pillow? + true + -1 +
  • +
  • + + Behold! Are they not impressive? + true + 2 +
  • +
  • + + These things are horrible. I'm so top heavy now I can hardly walk in a straight line. + true + -3 +
  • +
  • + + With these, I'd be right at home in the forest. + true + 1 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_MorphDef.xml new file mode 100644 index 000000000..8014503b5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_MorphDef.xml @@ -0,0 +1,22 @@ + + + ElkMorph + + A humanoid with many elk-like characteristics resulting from exposure to elk specific mutagens. They sometimes feel lonely without others of their kind. + Elk + +
  • Cold
  • +
    + PawnmorphElkTF + PawnmorphElkTFPartial + + + (150,86,8) + + + + ElkTransformationMemory + ElkRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Partial.xml new file mode 100644 index 000000000..649b2a3d9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphElkTFPartial + + This person has mechanites in their blood that are providing them with elk-like mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + ElkMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Parts.xml new file mode 100644 index 000000000..ef26d5219 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/BigCervid/Elk/Elk_Parts.xml @@ -0,0 +1,100 @@ + + + ElkMorph + EtherElkJaw + + EtherElkJaw + + Parts/Elk/Elk_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s face has grown into a long elk snout with a shaggy neck beard. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has grown into a long elk snout with a shaggy neck beard. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has grown into a long elk snout with a shaggy neck beard. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + ElkMorph + EtherElkEar + + EtherElkEar + + Parts/Elk/Elk_Ear_Left + Parts/Elk/Elk_Ear_Left_Behind + Parts/Elk/Elk_Ear_Right + Parts/Elk/Elk_Ear_Right_Behind + + +
  • + grown + + A broad elk ear. + +
  • +
    +
    + + + ElkMorph + EtherElkTail + + EtherElkTail + + Parts/Elk/Elk_Tail + + +
  • + grown + + A short wooly tail hangs down from [PAWN_nameDef]'s spine. + +
  • +
    +
    + + + EtherElkAntlers + + Wide, imposing antlers. + ElkMorph + GrewAntlers + EtherElkAntlers + + Parts/Elk/Elk_Horns_B + + +
  • + short + + Wide, imposing antlers are growing from [PAWN_nameDef]'s head. While covered under soft velvet skin the hard, quick growing bone underneath adds a lot of power to a strike. + + Parts/Elk/Elk_Horns_A + + + +
  • +
  • + horns + + Some might consider hunting [PAWN_nameDef] for the large rack that embellishes [PAWN_possessive] head. Hunters beware for [PAWN_pronoun] will fight back ferociously! + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Full.xml new file mode 100644 index 000000000..fc92076f7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphBoomalopeTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a boomamorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more boomalopic than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + BoomalopeMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BoomalopeMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Memories.xml new file mode 100644 index 000000000..68f54b467 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Memories.xml @@ -0,0 +1,134 @@ + + + BoomalopeTransformationMemory + +
  • + + Eugh... I smell like chemfuel. Not liking this so far. + -3 +
  • +
  • + + It's a little weird, but I bet I could get used to these changes! Boom! + +3 +
  • +
  • + + Eugh! I reek of chemfuel, and I feel like I could explode at any moment! + -5 +
  • +
  • + + Not bad... but it'd be fun to have four hooves on the ground... right? + +1 +
  • +
    +
    + + + BoomalopeRevertedMemory + +
  • + + I'm back to my normal, human self again! No more chemfuel! + 3 +
  • +
  • + + Aw man, but I was really enjoying the petrol smell. + -3 +
  • +
  • + + No more hooves! Hands, glorious hands! + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    + + + 1 + EtherBoomalopeSnout + +
  • + + Perfect for one thing, eating grass. + true + -1 +
  • +
  • + + A big snout! Perfect! + true + 2 +
  • +
  • + + No, I don't want to eat grass, stop thinking about it! + true + -3 +
  • +
    +
    + + 1 + EtherBoomalopeEar + +
  • + + My ears? What do you mean something is wrong with my ears? + true + -1 +
  • +
  • + + Heh. Boom! + true + 1 +
  • +
  • + + What's wrong with my ears?! + true + -2 +
  • +
    +
    + + + 1 + EtherChemfuelUdder + +
  • + + What is...am I...LEAKING!? + true + -5 +
  • +
  • + + Okay, this is a bit too weird, even for me. + true + -3 +
  • +
  • + + This is...oh no, this is chemfuel...oh no no no...this can't be happening! + true + -10 +
  • +
  • + + I don't see the problem with this, especially if I'm going to be the full thing. + true + 0 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_MorphDef.xml new file mode 100644 index 000000000..024f7ae61 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_MorphDef.xml @@ -0,0 +1,25 @@ + + + BoomalopeMorph + + A humanoid sharing many characteristics with boomalopes, due to heavy mutagen exposure. They usually have thick hide, and an urge to seek out chemfuel. + Boomalope + +
  • Arid
  • +
  • Temperate
  • +
  • Tropical
  • +
  • Production
  • +
    + PawnmorphBoomalopeTF + PawnmorphBoomalopeTFPartial + + + (176,150,106) + + + + BoomalopeTransformationMemory + BoomalopeRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Partial.xml new file mode 100644 index 000000000..98834ebfd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphBoomalopeTFPartial + + This person has mechanites in their blood that are providing them with boomalope-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BoomalopeMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Parts.xml new file mode 100644 index 000000000..260644689 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Parts.xml @@ -0,0 +1,108 @@ + + + BoomalopeMorph + EtherBoomalopeSnout + + + Parts/Boomalope/Boomalope_Muzzle + + +
  • + adapting + + A snout graces [PAWN_nameDef]'s face, snuffling and sniffing for the telltale scent of chemfuel. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, snuffling and sniffing for the telltale scent of chemfuel. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, snuffling and sniffing for the telltale scent of chemfuel. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + BoomalopeMorph + EtherBoomalopeEar + + + Parts/Boomalope/Boomalope_Ear_Left + Parts/Boomalope/Boomalope_Ear_Left_Behind + Parts/Boomalope/Boomalope_Ear_Right + Parts/Boomalope/Boomalope_Ear_Right_Behind + + +
  • + grown + + Do boomalopes have ears? It seems so, seeing as [PAWN_nameDef] seems to have grown one. + +
  • +
    +
    + + + EtherChemfuelUdder + BoomalopeMorph + + A large cyst filled with chemfuel now covers the waist. It can be drained to produce chemfuel. + 0.01 + + Parts/Boomalope/Boomalope_Udder + + +
  • Waist
  • +
    + +
  • + ChemMilkedMyself + Pawnmorph.Jobs.Giver_MilkSelf + ChemMilkedMyselfBond + ChemMilkedMyselfBroken + Chemfuel + +
  • + 0 + 2 + 10 +
  • +
  • + 0.3 + 1 + 8 + 1.3 +
  • +
  • + 0.6 + 0.5 + 6 + 1.6 +
  • +
  • + 0.9 + 0.25 + 4 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Tales.xml new file mode 100644 index 000000000..87225fc87 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Boomalope/Boomalope_Tales.xml @@ -0,0 +1,29 @@ + + + GrewBoomalopeMuzzle + + + +
  • tale_noun->[PAWN_nameDef] face becoming that of a boomalope
  • +
  • tale_noun->[PAWN_nameDef] face pushing out into a boomalope muzzle
  • +
  • desc_sentence->[PAWN_pronoun] begins sniffing intently at some nearby chemfuel.
  • +
    +
    +
    + + GrewChemfuelUdder + + + +
  • tale_noun->[PAWN_nameDef] growing a chemfuel udder
  • +
  • tale_noun->[PAWN_nameDef] begining to produce chemfuel
  • +
  • image->[PAWN_nameFull]'s waist begging to swell as an udder like organ grows [circumstance_group]
  • +
  • image->a large udder like organ begins to grow from [PAWN_nameFull]'s waist [circumstance_group]
  • +
  • circumstance_phrase->while someone approaches [PAWN_pronoun] with an empty chemfuel container
  • +
  • circumstance_phrase->as someone notices the smell of chemfuel
  • +
  • desc_sentence->is embarrassed about producing chemfuel.
  • +
  • desc_sentence->is surprisingly uncaring about [PAWN_possessive] chemfuel udder.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_MorphDef.xml new file mode 100644 index 000000000..f9aa69fdd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_MorphDef.xml @@ -0,0 +1,6 @@ + + + Cervid + HerbivoreHerding + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_Parts.xml new file mode 100644 index 000000000..dc42b1c36 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/Cervid_Parts.xml @@ -0,0 +1,84 @@ + + + + + + +
  • + growing + + +
  • + Hearing + +0.075 +
  • + + + +
  • + grown + + +
  • + Hearing + +0.15 +
  • + + + +
    +
    + + + + + + +
  • + initial + + [PAWN_nameDef]'s forehead is a little bit itchy, and two small lumps has appareed, but nothing to worry about right? + +
  • + + 0 + 0 +
  • + + + +
  • + nubs + + In [PAWN_nameDef]'s forehead have appeared two small bones shaped like antlers. While they are small they're very hard. + +
  • + + 0.5 + 4 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Scratch
  • +
  • Blunt
  • +
  • Stab
  • + + 0 + 3 + true + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Full.xml new file mode 100644 index 000000000..b2e9b9e23 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphDeerTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a deermorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more cervine than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + DeerMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DeerMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Memories.xml new file mode 100644 index 000000000..499e1f80f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Memories.xml @@ -0,0 +1,160 @@ + + + DeerTransformationMemory + +
  • + + All the sounds are so loud, and kind of scary! AAH, was that you? Who's there? + -3 +
  • +
  • + + I feel so graceful, like the ruler of the forest. + +3 +
  • +
  • + + AAH! Who was that!? I heard you! Run away! I hate this! + -5 +
  • +
  • + + So regal! This is great, but not quite all there yet. + +1 +
  • +
    +
    + + + DeerRevertedMemory + +
  • + + I'm not so jumpy all the time now, phew. + 3 +
  • +
  • + + I could have had some nice antlers... + -3 +
  • +
  • + + I'm sorry for being so scared all the time, everyone! + 10 +
  • +
  • + + Sure, take all the fun out of my life, why don't ya? + -5 +
  • +
    +
    + + + 1 + EtherDeerSnout + +
  • + + Look at my nose, it's just so...animal. + true + -1 +
  • +
  • + + Berries are soooo good. + true + 2 +
  • +
  • + + I could really use some buckshot right now. + true + -3 +
  • +
    +
    + + + 1 + EtherDeerEar + +
  • + + Any noise causes them to flick up... + true + -1 +
  • +
  • + + I can hear predators so easily now...uh, I mean, raiders! + true + 1 +
  • +
  • + + Guns really hurt my ears... + true + -2 +
  • +
    +
    + + + 1 + EtherDeerTail + +
  • + + It'd be nice if it didn't flick up whenever people scare me... + true + -1 +
  • +
  • + + Flick, flick, flick, flick...oh, sorry! + true + 1 +
  • +
  • + + At least I can hide it. + true + -2 +
  • +
    +
    + + + 1 + EtherAntlers + +
  • + + They would be fine if they weren't constantly getting stuck in door frames. + true + -1 +
  • +
  • + + This is awesome! I feel like I could just ram into things and destroy them! + true + 2 +
  • +
  • + + This is ridiculous! How am I supposed to even get on shirts now? + true + -3 +
  • +
  • + + Closer to the forest, and closer to my dream. + true + 1 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_MorphDef.xml new file mode 100644 index 000000000..ee19cb46c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_MorphDef.xml @@ -0,0 +1,23 @@ + + + DeerMorph + + A humanoid with many deer-like characteristics resulting from exposure to deer specific mutagens. They are often uncomfortable without others like them around. + Deer + +
  • Temperate
  • +
    + PawnmorphDeerTF + PawnmorphDeerTFPartial + + + (156,112,62) + (188,146,110) + + + + DeerTransformationMemory + DeerRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Partial.xml new file mode 100644 index 000000000..b90c4e69b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphDeerTFPartial + + This person has mechanites in their blood that are providing them with deer-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DeerMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml new file mode 100644 index 000000000..6f5927a3c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml @@ -0,0 +1,113 @@ + + + DeerMorph + EtherDeerSnout + + GrewDeerMuzzle + + + + Parts/Deer/Deer_Muzzle_Male + Parts/Deer/Deer_Muzzle_Female + + + + +
  • + adapting + + [PAWN_nameDef]'s face has become deer-like snout with a wide nose that picks up the scents of predators. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has become deer-like snout with a wide nose that picks up the scents of predators. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has become deer-like snout with a wide nose that picks up the scents of predators. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + DeerMorph + EtherDeerEar + + + Parts/Deer/Deer_Ear_Left + + Parts/Deer/Deer_Ear_Right + + + +
  • + grown + + A long, smooth ear of a deer sits atop [PAWN_nameDef]'s head, listening out for predators. + +
  • +
    +
    + + + DeerMorph + EtherDeerTail + + + Parts/Deer/Deer_Tail + + +
  • + grown + + A short tail juts out from [PAWN_nameDef]'s spine, flaring up whenever danger is sensed. + +
  • +
    +
    + + + EtherAntlers + + Burly antlers belonging to a deer. + DeerMorph + GrewAntlers + + +
  • + nubs + + + + Parts/Deer/Deer_Antler_A + + +
  • +
  • + short + + + A pair of horns are sprouting form the top of [PAWN_nameDef]'s head. They're covered in soft velvet but are growing bigger rapidly. + + Parts/Deer/Deer_Antler_B + + +
  • +
  • + horns + + + From the base of [PAWN_nameDef]'s head a tree like pair of horns has grown into an impressive rack. They're going to make short work of any hunter seeking a trophy! + + Parts/Deer/Deer_Antler_C + + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Tales.xml new file mode 100644 index 000000000..226e0cd71 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Tales.xml @@ -0,0 +1,31 @@ + + + + + GrewAntlers + + + +
  • tale_noun->antlers beginning to grow from [PAWN_nameDef]'s forehead
  • +
  • tale_noun->[PAWN_nameDef] growing small antlers
  • +
  • image->[PAWN_nameFull] examining the growing antlers on [PAWN_possessive] head [circumstance_group]
  • +
  • image->[PAWN_nameFull] unaware of the growing antlers on [PAWN_possessive] head [circumstance_group]
  • +
  • circumstance_phrase->as someone touches [PAWN_possessive] growing antlers
  • +
  • desc_sentence->[PAWN_pronoun] is trying to pull then out.
  • +
  • desc_sentence->[PAWN_pronoun] is rubbing then against a wall.
  • +
    +
    +
    + + + GrewDeerMuzzle + + + +
  • tale_noun->[PAWN_nameDef]'s face became a deer muzzle
  • +
  • image->[PAWN_nameFull]'s yells turn into bleats [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] makes sad bleating noises.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Full.xml new file mode 100644 index 000000000..9aafd231f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphGazelleTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into an gazellemorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more gazelle than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + GazelleMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GazelleMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Memories.xml new file mode 100644 index 000000000..145b33bac --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Memories.xml @@ -0,0 +1,144 @@ + + + GazelleTransformationMemory + +
  • + + What was that? Nothing? Better keep watching just in case... + -3 +
  • +
  • + + Wow! I’m so fast and graceful! + +3 +
  • +
  • + + I’m scared all the time and I can’t change my shirt! I hate it! + -5 +
  • +
    +
    + + + GazelleRevertedMemory + +
  • + + Maybe now I won’t need to run anymore? + 3 +
  • +
  • + + I miss the thrill! Everything’s dull and drab now! + -3 +
  • +
  • + + Finally I can relax! + 10 +
  • +
    +
    + + + 1 + EtherGazelleJaw + +
  • + + It's long, but it's got an interesting marking at least... + true + -1 +
  • +
  • + + So cool! Give me that grass! + true + 2 +
  • +
  • + + I'm a dirty grass eater... + true + -3 +
  • +
    +
    + + + 1 + EtherGazelleEar + +
  • + + Why do they have to have interesting markings? I'm so going to get shot by a raider. + true + -1 +
  • +
  • + + Cooler! I can hear everything! Even the grass growing! + true + 1 +
  • +
  • + + I'm going to get skinned for these... + true + -2 +
  • +
    +
    + + + 1 + EtherGazelleTail + +
  • + + It's fine, I guess, and easy enough to hide. + true + -1 +
  • +
  • + + Cuter and cuter! + true + 1 +
  • +
  • + + Why do even need this tail... + true + -2 +
  • +
    +
    + + + 1 + EtherGazelleAntlers + +
  • + + Hope I won’t have to use these! + true + -1 +
  • +
  • + + Oh, they are so elegant! + true + 1 +
  • +
  • + + They are all I get to defend myself with?! + true + -2 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_MorphDef.xml new file mode 100644 index 000000000..aae6a4cb1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_MorphDef.xml @@ -0,0 +1,23 @@ + + + GazelleMorph + + Gazellemorphs are fast and graceful but skittish and generally prefers flight over confrontation + Gazelle + +
  • Arid
  • +
  • Temperate
  • +
    + PawnmorphGazelleTF + PawnmorphGazelleTFPartial + + + (198,134,74) + + + + GazelleTransformationMemory + GazelleRevertedMemory + +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Partial.xml new file mode 100644 index 000000000..f4e70ca53 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphGazelleTFPartial + + This person has mechanites in their blood that are providing them with gazell-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + GazelleMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Parts.xml new file mode 100644 index 000000000..09f38325d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Gazelle/Gazelle_Parts.xml @@ -0,0 +1,101 @@ + + + GazelleMorph + EtherGazelleJaw + + + Parts/Gazelle/Gazelle_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s face has pushed out into graceful, narrow snout like one might find on a gazelle. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s face has pushed out into graceful, narrow snout like one might find on a gazelle. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s face has pushed out into graceful, narrow snout like one might find on a gazelle. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + GazelleMorph + EtherGazelleEar + + + Parts/Gazelle/Gazelle_Ear_Left + Parts/Gazelle/Gazelle_Ear_Left_Behind + Parts/Gazelle/Gazelle_Ear_Right + Parts/Gazelle/Gazelle_Ear_Right_Behind + + +
  • + growing + + [PAWN_nameDef]'s ear is growing longer. + +
  • +
  • + grown + + [PAWN_nameDef]'s ear has grown into a long, pointed, gazelle ear. + +
  • +
    +
    + + + GazelleMorph + EtherGazelleTail + + + Parts/Gazelle/Gazelle_Tail + + +
  • + grown + + [PAWN_nameDef] has a small gazelle tail. + +
  • +
    +
    + + + EtherGazelleAntlers + + Large, graceful, gazelle horns + GazelleMorph + GrewAntlers + + + Parts/Gazelle/Gazelle_Horns + + +
  • + short + + Slender horns are sprouting form the top of [PAWN_nameDef]'s head. Already they're forming a graceful arch and add significant power to any attack. + + +
  • +
  • + horns + + [PAWN_nameDef]'s antlers are the envy of anyone around. Far from helpless though [PAWN_nameDef] can easily dispatch of anyone that displeases them. + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_MorphDef.xml new file mode 100644 index 000000000..3daec1f8f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_MorphDef.xml @@ -0,0 +1,8 @@ + + + SmallCervid + +
  • Social
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_Parts.xml new file mode 100644 index 000000000..9ecb40795 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/SmallCervid_Parts.xml @@ -0,0 +1,73 @@ + + + +
  • + adapting + + + 1 + + +
  • +
  • + adapted + + + 1 + + +
  • +
  • + paragon + + + 1.2 + + +
  • +
    +
    + + + + + + + + + +
  • + short + + + + +0.5 + + +
  • + + 0.5 + 6 +
  • + + + +
  • + horns + + + + +1.0 + + +
  • + + 1 + 13.5 +
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_MorphDef.xml new file mode 100644 index 000000000..e206c9c40 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_MorphDef.xml @@ -0,0 +1,5 @@ + + + EvenToedUngulate + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_Parts.xml new file mode 100644 index 000000000..f32e1d8c5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/EvenToedUngulate_Parts.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Backstories.xml new file mode 100644 index 000000000..2f9c766bc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Backstories.xml @@ -0,0 +1,23 @@ + + + BoarmorphGeneral + forest boar + boarmorph + [PAWN_nameDef] ate some suspect mushrooms next to a chemical spill in the woods, and found [PAWN_objective]self to be quite a bit more porcine. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • BoarMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Full.xml new file mode 100644 index 000000000..1390bf913 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphBoarTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a boarmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more boar than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + BoarMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BoarMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Memories.xml new file mode 100644 index 000000000..b81ae22a4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Memories.xml @@ -0,0 +1,53 @@ + + + BoarTransformationMemory + +
  • + + My dentist isn't going to be happy about this. + -3 +
  • +
  • + + Nobody will mess with me now, not with tusks like these! + +3 +
  • +
  • + + I'm a hideous pig! And these tusks are a nightmare to floss! + -5 +
  • +
  • + + This is great, but what if I could go further and root around for truffles? + +1 +
  • +
    +
    + + + BoarRevertedMemory + +
  • + + I'm back to my normal, human self again! No more snuffling! + 3 +
  • +
  • + + Aw man, but I was really enjoying those tusks. + -3 +
  • +
  • + + No more trotters! Hands, glorious hands! + 10 +
  • +
  • + + I'm human again? I think I wanted the opposite of this. + -5 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_MorphDef.xml new file mode 100644 index 000000000..78a67f101 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_MorphDef.xml @@ -0,0 +1,25 @@ + + + BoarMorph + + A humanoid with many boar like characteristics resulting when a human is exposed to boar specific mutagens. Usually found with thick hide and large tusks making them dangerous combatants. + WildBoar + +
  • Temperate
  • +
  • Tropical
  • +
  • Domestic
  • +
    + + PawnmorphBoarTF + PawnmorphBoarTFPartial + + + (155,116,89) + + + + BoarTransformationMemory + BoarRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Partial.xml new file mode 100644 index 000000000..1cd4964f0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphBoarTFPartial + + This person has mechanites in their blood that are providing them with boar-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + BoarMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Parts.xml new file mode 100644 index 000000000..4a3e81f2f --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Parts.xml @@ -0,0 +1,47 @@ + + + BoarMorph + EtherBoarSnout + + + Parts/Boar/Boar_Muzzle + + + + + BoarMorph + EtherBoarEar + + + Parts/Boar/Boar_Ear_Left + Parts/Boar/Boar_Ear_Left_Behind + Parts/Boar/Boar_Ear_Right + Parts/Boar/Boar_Ear_Right_Behind + + +
  • + grown + + A large, boarlike ear covered in thick bristles sits atop [PAWN_nameDef]'s head. + +
  • +
    +
    + + + BoarMorph + EtherBoarTail + + + Parts/Boar/Boar_Tail + + +
  • + grown + + A boar's curly tail, it twangs when a truffle is detected. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Tales.xml new file mode 100644 index 000000000..01bb42fc1 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Boar/Boar_Tales.xml @@ -0,0 +1,18 @@ + + + + GrewBoarMuzzle + + + +
  • tale_noun->[PAWN_nameDef] growing a tusked muzzle
  • +
  • tale_noun->[PAWN_nameDef] growing a boar muzzle
  • +
  • image->tusks start pushing out from [PAWN_nameFull]'s face [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s yells start turning into boar-ish snorts [circumstance_group]
  • +
  • circumstance_phrase->as someone begins examining [PAWN_possessive] growing tusks
  • +
  • desc_sentence->[PAWN_pronoun] is troubles by [PAWN_possessive] new tusks.
  • +
  • desc_sentence->[PAWN_pronoun] seems pleases with [PAWN_possessive] new tusks.
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Backstories.xml new file mode 100644 index 000000000..ce67d2bfc --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Backstories.xml @@ -0,0 +1,23 @@ + + + PigmorphGeneral + farm pig + pigmorph + [PAWN_nameDef] was sold to a farmer with less-than-ethical business practices, and quickly made [PAWN_nameDef] part of the pig herd. [PAWN_pronoun] escaped during a prize show, just before [PAWN_pronoun] was awarded first place. + Adulthood + Female + Fat + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • PigMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Full.xml new file mode 100644 index 000000000..a0d153b29 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphPigTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a pigmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more suid than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + PigMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PigMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Memories.xml new file mode 100644 index 000000000..da81f3902 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Memories.xml @@ -0,0 +1,53 @@ + + + PigTransformationMemory + +
  • + + I don't want to be a damn pig! + -3 +
  • +
  • + + Wow, rolling in mud is so much nicer than I thought. + +3 +
  • +
  • + + I don't want to be a filthy hog! + -5 +
  • +
  • + + That'll do. Or will it? + +1 +
  • +
    +
    + + + PigRevertedMemory + +
  • + + Yeah, I think I'll try a diet now. + 3 +
  • +
  • + + Aw man, it was good to be the big pig. + -3 +
  • +
  • + + HUMAN AGAIN! + 10 +
  • +
  • + + This isn't what I wanted. + -5 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_MorphDef.xml new file mode 100644 index 000000000..69c9060a4 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_MorphDef.xml @@ -0,0 +1,22 @@ + + + PigMorph + + A humanoid race resulting from a human being exposed to pig specific mutagens. They are often fond of looking through dirt and grass to find edible mushrooms. + Pig + +
  • Domestic
  • +
    + PawnmorphPigTF + PawnmorphPigTFPartial + + + (211,190,174) + + + + PigTransformationMemory + PigRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Partial.xml new file mode 100644 index 000000000..fe9aed583 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphPigTFPartial + + This person has mechanites in their blood that are providing them with pig-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + PigMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Parts.xml new file mode 100644 index 000000000..c966d111a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Parts.xml @@ -0,0 +1,47 @@ + + + PigMorph + EtherPigSnout + + + Parts/Pig/Pig_Muzzle + + + + + PigMorph + EtherPigEar + + + Parts/Pig/Pig_Ear_Left + Parts/Pig/Pig_Ear_Left_Behind + Parts/Pig/Pig_Ear_Right + Parts/Pig/Pig_Ear_Right_Behind + + +
  • + grown + + A large, pink piglike ear sits atop [PAWN_nameDef]'s head, covered in a fine hair. + +
  • +
    +
    + + + PigMorph + EtherPigTail + + + Parts/Pig/Pig_Tail + + +
  • + grown + + A pig's curly tail, it twitches when food is near. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Tales.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Tales.xml new file mode 100644 index 000000000..5e1959a17 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Pig/Pig_Tales.xml @@ -0,0 +1,14 @@ + + + GrewPigMuzzle + + + +
  • tale_noun->[PAWN_nameDef] growing a pig snout
  • +
  • tale_noun->[PAWN_nameDef]'s face becoming that of a pig's
  • +
  • image->[PAWN_nameFull] begins oinking involuntarily [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s yells turn into oinks [circumstance_group]
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_MorphDef.xml new file mode 100644 index 000000000..1047c9fc9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_MorphDef.xml @@ -0,0 +1,8 @@ + + + Suid + +
  • Crafter
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_Parts.xml new file mode 100644 index 000000000..f57c12d4b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Suid/Suid_Parts.xml @@ -0,0 +1,125 @@ + + + +
  • + pressing + + + Parts/Partials/PartialMuzzle/TinySnoutPorcine + + +
  • +
  • + growing + + + Parts/Partials/PartialMuzzle/PartialSnoutPorcine + + +
  • +
  • + adapting + + A flat nosed snout graces [PAWN_nameDef]'s face, good for snorting, snuffling for roots and berries, and oinking at things that [PAWN_pronoun] likes. The strange shape makes speaking very difficult. + +
  • + Metabolism + -0.1 +
  • +
  • + Eating + +0.2 +
  • + + + +
  • + adapted + + A snout graces [PAWN_nameDef]'s face, good for snorting, snuffling for roots and berries, and oinking at things that [PAWN_pronoun] likes. Adapting to it has made speaking less frustrating. + +
  • + Metabolism + -0.1 +
  • +
  • + Eating + +0.35 +
  • + + + +
  • + paragon + + A snout graces [PAWN_nameDef]'s face, good for snorting, snuffling for roots and berries, and oinking at things that [PAWN_pronoun] likes. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • + Metabolism + -0.1 +
  • +
  • + Eating + +0.5 +
  • + + + +
    +
    + + + +
  • + growing + + +
  • + Hearing + +0.025 +
  • + + + +
  • + grown + + +
  • + Hearing + +0.05 +
  • + + + +
    +
    + + + +
  • + growing + + +
  • + Metabolism + -0.025 +
  • + + + +
  • + grown + + +
  • + Metabolism + -0.05 +
  • + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Backstories.xml new file mode 100644 index 000000000..984976144 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Backstories.xml @@ -0,0 +1,23 @@ + + + DonkeymorphGeneral + escaped donkey + donkeymorph + [PAWN_nameDef] was mutated into a work-donkey at a less-than-reputable carnival, but was able to escape with some remnant of [PAWN_possessive] humanity intact. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • DonkeyMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Full.xml new file mode 100644 index 000000000..c90c1959a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphDonkeyTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a donkeymorph. Keep an eye on them, as leaving the mechanites unattended may have them braying for more. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + DonkeyMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DonkeyMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Memories.xml new file mode 100644 index 000000000..dc3036577 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Memories.xml @@ -0,0 +1,53 @@ + + + DonkeyTransformationMemory + +
  • + + I'm feeling really stubborn, and I don't want to talk to you! + -3 +
  • +
  • + + My back has never been stronger! + 3 +
  • +
  • + + My voice sounds HEE-HAWWrible! + -5 +
  • +
  • + + This is awesome, I want to try pulling a cart like this. + 1 +
  • +
    +
    + + + DonkeyRevertedMemory + +
  • + + I can speak properly again... phew. + 3 +
  • +
  • + + I feel so weak and feeble. + -3 +
  • +
  • + + My voice is normal again! + 10 +
  • +
  • + + Aw, but I liked being that way. + -5 +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_MorphDef.xml new file mode 100644 index 000000000..f65d9280a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_MorphDef.xml @@ -0,0 +1,24 @@ + + + DonkeyMorph + + Donkeymorphs are strong pack morphs that often have hoofed feet and a broad snout that snorts when they get upset. They're very good haulers, but often rather stubborn. + Donkey + +
  • Arid
  • +
  • Temperate
  • +
  • Domestic
  • +
    + PawnmorphDonkeyTF + PawnmorphDonkeyTFPartial + + + (180,180,180) + + + + DonkeyTransformationMemory + DonkeyRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Partial.xml new file mode 100644 index 000000000..9a477ddee --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphDonkeyTFPartial + + This person has mechanites in their blood that are providing them with donkey-like mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + DonkeyMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Parts.xml new file mode 100644 index 000000000..9da181d94 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Donkey/Donkey_Parts.xml @@ -0,0 +1,47 @@ + + + DonkeyMorph + EtherDonkeySnout + + + Parts/Donkey/Donkey_Muzzle + + + + + DonkeyMorph + EtherDonkeyEar + + + Parts/Donkey/Donkey_Ear_Left + Parts/Donkey/Donkey_Ear_Left_Behind + Parts/Donkey/Donkey_Ear_Right + Parts/Donkey/Donkey_Ear_Right_Behind + + +
  • + grown + + A long, fuzzy, equine ear sits atop [PAWN_nameDef]'s head with tufts of fur, like that of a donkey. + +
  • +
    +
    + + + DonkeyMorph + EtherDonkeyTail + + + Parts/Donkey/Donkey_Tail + + +
  • + grown + + A donkeylike tail. It swats at flies occasionally. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Memories.xml new file mode 100644 index 000000000..7bca7e53b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Memories.xml @@ -0,0 +1,96 @@ + + + + 1 + EtherEquineMuzzle + +
  • + + Not sure if it's practical but I'll make it work. + true + -1 +
  • +
  • + + My mule is the cutest thing I've ever seen! + true + 2 +
  • +
  • + + I don't want to have a long face! + true + -3 +
  • +
  • + + I'll never want for anything but grass ever again! + true + -3 +
  • +
    +
    + + + 1 + EtherEquineEar + +
  • + + It's a look for sure. + true + -1 +
  • +
  • + + The only advantage I need is the cool factor! + true + 1 +
  • +
  • + + How will I wear hats with these?! + true + -2 +
  • +
  • + + I'm sure they'll let me hear anyone creeping up on me! + true + -2 +
  • +
    +
    + + + 1 + EtherEquineTail + +
  • + + It doesn't get in the way at least. + true + -1 +
  • +
  • + + Flies beware my mighty tail! + true + 1 +
  • +
  • + + No this isn't right at all! + true + -2 +
  • +
  • + + It's a natural part of me now! + true + -2 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_MorphDef.xml new file mode 100644 index 000000000..fff29fbbd --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_MorphDef.xml @@ -0,0 +1,9 @@ + + + Equine + +
  • Crafter
  • +
    + HerbivoreHerding +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Parts.xml new file mode 100644 index 000000000..031e3d2cb --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Equine_Parts.xml @@ -0,0 +1,58 @@ + + + EtherEquineMuzzle + +
  • + adapting + + [PAWN_nameDef] has grown a sizable snout with wide nostrils and a small set of squared off teeth, giving [PAWN_objective] quite a long face. Don't ask why. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef] has grown a sizable snout with wide nostrils and a small set of squared off teeth, giving [PAWN_objective] quite a long face. Don't ask why. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef] has grown a sizable snout with wide nostrils and a small set of squared off teeth, giving [PAWN_objective] quite a long face. Don't ask why. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + EtherEquineEar + +
  • + growing + + +
  • + Hearing + +0.05 +
  • + + + +
  • + grown + + +
  • + Hearing + +0.1 +
  • + + + +
    +
    + + + EtherEquineTail + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Backstories.xml new file mode 100644 index 000000000..e5dc7057b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Backstories.xml @@ -0,0 +1,23 @@ + + + HorsemorphGeneral + draft horse + horsemorph + [PAWN_nameDef] was sold to a farmer with less-than-ethical business practices, and quickly made use of [PAWN_objective] to pull the ploughs and farm equipment there. [PAWN_pronoun] broke a leg and was sold off, where he made his escape en route to who-knows-where. + Adulthood + Female + Male + +
  • MutantWanderer
  • +
  • FreeMutant
  • +
    + +
  • + 6~8 + +
  • HorseMorph
  • + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Full.xml new file mode 100644 index 000000000..8b3630410 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphHorseTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a horsemorph. Keep an eye on them, as leaving the mechanites unattended may leave them feeling a little hoarse. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + HorseMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + HorseMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Memories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Memories.xml new file mode 100644 index 000000000..d26b869e7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Memories.xml @@ -0,0 +1,54 @@ + + + HorseTransformationMemory + +
  • + + I feel like galloping across a steppe. + -3 +
  • +
  • + + Gaze in awe upon me and my glorious mane! + 3 +
  • +
  • + + My throat feels so hoarse right now. Wait... + -5 +
  • +
  • + + This is awesome, but I wonder what it would feel like to gallop on all fours. + 1 +
  • +
    +
    + + + HorseRevertedMemory + +
  • + + Finally, maybe all those flies will finally leave me alone. + 3 +
  • +
  • + + No! My glorious mane! It's gone! + -3 +
  • +
  • + + Phew, I was sure I was bound for the glue factory soon. + 10 +
  • +
  • + + Aw, I can't even gallop now. + -5 +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_MorphDef.xml new file mode 100644 index 000000000..c8a632486 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_MorphDef.xml @@ -0,0 +1,23 @@ + + + HorseMorph + + Horsemorphs are strong pack morphs that often have hoofed feet and a broad snout that snorts when they get upset. They are quite fast, and useful for hauling. + Horse + +
  • Temperate
  • +
  • Domestic
  • +
    + PawnmorphHorseTF + PawnmorphHorseTFPartial + + + (160,100,60) + + + + HorseTransformationMemory + HorseRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Partial.xml new file mode 100644 index 000000000..5473fbd11 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphHorseTFPartial + + This person has mechanites in their blood that are providing them with horse-esque mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + HorseMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml new file mode 100644 index 000000000..255dc1148 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml @@ -0,0 +1,52 @@ + + + HorseMorph + EtherHorseSnout + + + + + Parts/Horse/Horse_Muzzle_Male + Parts/Horse/Horse_Muzzle_Female + + + + + + + HorseMorph + EtherHorseEar + + + Parts/Horse/Horse_Ear_Left + + Parts/Horse/Horse_Ear_Right + + + +
  • + grown + + A long, equine ear sits atop [PAWN_nameDef]'s head, like that of a horse. + +
  • +
    +
    + + + HorseMorph + EtherHorseTail + + + Parts/Horse/Horse_Tail + + +
  • + grown + + A horselike tail. It swats at flies occasionally. + +
  • +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_MorphDef.xml new file mode 100644 index 000000000..c2d1bab31 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_MorphDef.xml @@ -0,0 +1,5 @@ + + + OddToedUngulate + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_Parts.xml new file mode 100644 index 000000000..b28b26790 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/OddToedUngulate_Parts.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_MorphDef.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_MorphDef.xml new file mode 100644 index 000000000..e01309b94 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_MorphDef.xml @@ -0,0 +1,6 @@ + + + Ungulate + + + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_Parts.xml new file mode 100644 index 000000000..fadef9625 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/Ungulate_Parts.xml @@ -0,0 +1,39 @@ + + + +
  • + initial + + Something is starting to happen to [PAWN_nameDef]'s face. [PAWN_pronoun] has been rubbing [PAWN_possessive] nose a lot, and it looks like it's starting to grow! Has [PAWN_pronoun] noticed? + +
  • +
  • + pressing + + [PAWN_nameDef]'s nose is getting wider and flatter, but that's nothing compared to what's happening to [PAWN_possessive] jaws. They've begun to surge outwards, bones growing and warping and teeth shifting. [PAWN_possessive] whole face is changing! + + Parts/Partials/PartialMuzzle/TinySnout + + +
  • +
  • + growing + + It's undeniable now, [PAWN_nameDef] is growing a snout. Broad nostrils, thick lips, and a large jaw adorn [PAWN_possessive] face. + + Parts/Partials/PartialMuzzle/PartialSnout + + +
  • +
    +
    + + + + + + + + + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/COMBINATIONS/Combination_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/COMBINATIONS/Combination_Parts.xml new file mode 100644 index 000000000..26ec56df3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/COMBINATIONS/Combination_Parts.xml @@ -0,0 +1,123 @@ + + + EtherComboHornbill + + Horns and beak have fused into one bony monstrosity of a maw, that runs up the skull and leaves only small holes for sight. + +
  • Skull
  • +
    + Avian + +
  • Combo
  • +
    + +
  • Jaw
  • +
    + +
  • + +
  • + Talking + -0.20 +
  • +
  • + Eating + 0.40 +
  • +
  • + Sight + -0.10 +
  • + + +
    + +
  • + +
  • + + False + +
  • Bite
  • + + 7 + 2 + true + +
  • + + False + +
  • Stab
  • +
  • Blunt
  • + + 5 + 0.5 + true + + + +
    +
    + + + EtherComboWolfSpike + + The iguana horns have spread over this lupine muzzle, covering it partly in scales and giving it a particularly sharp point. + +
  • Jaw
  • +
    + +
  • Combo
  • +
    + Wolf + + Parts/COMBINATIONS/Wolfspike/Wolfspike + + +
  • + +
  • + Talking + -0.10 +
  • +
  • + Eating + 0.40 +
  • +
  • + Sight + -0.10 +
  • + + +
    + +
  • + +
  • + + False + +
  • Bite
  • + + 10.0 + 1.5 + true + +
  • + + False + +
  • Stab
  • +
  • Blunt
  • + + 5 + 0.5 + true + + + +
    +
    +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Full.xml b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Full.xml new file mode 100644 index 000000000..a9dd79812 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Full.xml @@ -0,0 +1,83 @@ + + + FullRandomTFAnyOutcome + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has raw, unfocused mechanites simultaniously mutating them into every animal imaginable. Pray to Randy they don't come out the other end on all fours. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + + 1.25 + 0.1 + + + TransformationMisc + + + 0.25 + + +
  • + + 0.6 + 0.5 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.3 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + + + 15 + + +
    + + +
  • + ChaoticMutagen +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_MorphDefs.xml b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_MorphDefs.xml new file mode 100644 index 000000000..3e40a812c --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_MorphDefs.xml @@ -0,0 +1,32 @@ + + + ChaocowMorph + A human variant with a large number of random mutations. With such a mish-mash of changes there is no easy way to categorize them, but based on key features like the ability to produce morph-milk, this one can be considered a "chaocow". + + Chaocow + HerbivoreHerding + + + + ChaoboomMorph + A human variant with a large number of random mutations. With such a mish-mash of changes there is no easy way to categorize them, but based on key features like the ability to produce chemfuel, this one can be considered a "chaoboom". + + Chaoboom + HerbivoreHerding + + + + ChaofoxMorph + + A human variant with a large number of random mutations. With such a mish-mash of changes there is no easy way to categorize them, but based on key features such as a swathes of fur and a vulpine snout, this one can be considered a "chaofox". + Chaofox + Canines + + + + ChaodinoMorph + A human variant with a large number of random mutations. With such a mish-mash of changes there is no easy way to categorize them, but based on key features like the ability to lay morph-eggs, this one can be considered a "chaodino". + + Chaodino + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Partial.xml b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Partial.xml new file mode 100644 index 000000000..fa68002e6 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Partial.xml @@ -0,0 +1,32 @@ + + + FullRandomTF + + This person has mechanites in their blood that are providing them with all sorts of mutations. + +
  • + 0.3 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + + + 15 + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Reaction.xml b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Reaction.xml new file mode 100644 index 000000000..28433a57a --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Chao/Chao_Reaction.xml @@ -0,0 +1,18 @@ + + + EtherReactionChaosTF + FullRandomTFAnyOutcome + +
  • + + What have I become? + -5 +
  • +
  • + + My whole body is warping before my eyes! Am I going to survive?! + -10 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/DefCategories/MorphCategories.xml b/1.5/Defs/MorphsAndMutationDefs/DefCategories/MorphCategories.xml new file mode 100644 index 000000000..00b25f665 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/DefCategories/MorphCategories.xml @@ -0,0 +1,72 @@ + + + + + Arid + + + + + Cold + + + + Temperate + + + + Tropical + + + + + + Domestic + + + + + + Combat + Combat + + + + Crafter + Crafter + + + + Production + Productive + + + + Social + Social + + + + + + Exotic + + + + Chimera + + + + Powerful + Powerful + + + + + true + + + Combo + Combo + + diff --git a/1.5/Defs/MorphsAndMutationDefs/DefCategories/MutationCategories.xml b/1.5/Defs/MorphsAndMutationDefs/DefCategories/MutationCategories.xml new file mode 100644 index 000000000..42f2885c7 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/DefCategories/MutationCategories.xml @@ -0,0 +1,65 @@ + + + + Minor + + true + + + + Major + + true + + + + Extreme + + true + + + + Combat + + true + + + + Crafter + + true + + + + Social + + true + + + + Productive + + true + + + + Exotic + CategoryOnly + + true + + + + + Combo + + Always + + + + Powerful + + CategoryOnly + true + + diff --git a/1.5/Defs/MorphsAndMutationDefs/MutationBase.xml b/1.5/Defs/MorphsAndMutationDefs/MutationBase.xml new file mode 100644 index 000000000..044fa5d30 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/MutationBase.xml @@ -0,0 +1,36 @@ + + + Pawnmorph.Hediff_AddedMutation + (121, 55, 145) + true + 10 + + true + + false + 3 + -2 + 0 + True + True + + + + 0.1 + +
  • + Core +
  • +
    +
    + + + (160, 55, 186) + +
  • + Core +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/ObsoleteCompatibilityAbstracts.xml b/1.5/Defs/MorphsAndMutationDefs/ObsoleteCompatibilityAbstracts.xml new file mode 100644 index 000000000..bb98f04d3 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/ObsoleteCompatibilityAbstracts.xml @@ -0,0 +1,29 @@ + + + + + + + + +
  • + Skin +
  • +
  • + 2 + 1 +
  • +
    + +
  • Torso
  • +
  • Head
  • +
  • Ear
  • +
  • Arm
  • +
  • Hand
  • +
  • Leg
  • +
  • Foot
  • +
  • Tail
  • +
  • MorphTail
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml new file mode 100644 index 000000000..b969b03bf --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml @@ -0,0 +1,254 @@ + + + + + + + + + EtherThickArm + + a very thick arm. + + +
  • Powerful
  • +
  • Ursine
  • +
    + +
  • + readjusting + + This arm's muscles are growing thicker and stronger. + +
  • +
  • + unfamiliar + + This arm is a little clumsier, and a lot bigger. + + -0.025 + 0.01 + + +
  • +
  • + adapting + + [PAWN_nameDef]'s arm has grown a lot larger, making most tasks more difficult. + + -0.1 + 0.025 + + +
  • +
  • + adapted + + [PAWN_nameDef]'s arm has grown a lot larger, and most tasks are a little more difficult - though the impact of this has been lessened with adaptation. + + -0.05 + 0.075 + 0.025 + + +
  • +
    +
    + + + + EtherWing + + An avian wing. + Avian + ArmBecomsWing + EtherWingMemory + +
  • + readjusting + + [PAWN_nameDef]'s arm is significantly stiffer and visibly longer then before. + +
  • +
  • + unfamiliar + + [PAWN_nameDef]'s arms has gotten significantly shorter and are clad in a soft down. + + 0.25 + + + Parts/Chicken/Chicken_Wings + + +
  • +
  • + adapting + + [PAWN_nameDef]'s arm has contorted into the shape of an avian wing, complete with hollow bones. It'll take some time for [PAWN_objective] to get used to them again. + + Parts/Chicken/Chicken_Wings + + + 0.5 + + +
  • +
  • + adapted + + [PAWN_nameDef]'s arm has contorted into the shape of an avian wing, complete with hollow bones. [PAWN_pronoun] has adapted to using them, but the hollow bones limit [PAWN_possessive] ability to lift heavy things. + + Parts/Chicken/Chicken_Wings + + + 0.5 + + +
  • + Pawnmorph.Abilities.Flight + + Fly to somewhere on the map. + UI/Buttons/PM_Icon_Flight + 60000 +
  • + + + +
    + +
  • + paragon + + 2.5 + [PAWN_nameDef] has mastered [PAWN_objective]'s wings and can effortlessly fly long distances like a migratory bird. As an added bonus food is easily spottable from above. + + Parts/Chicken/Chicken_Wings + + + 1.5 + +0.8 + 0.5 + + +
  • + Pawnmorph.Abilities.Flight + + Fly to somewhere on the map. + UI/Buttons/PM_Icon_Flight + 60000 +
  • + + +
    + +
  • + + EtherWingTip + 3 + 5 + +
  • Hand
  • + + 2 + WingTipMemory + HandsBecomeWingTips + + +
    +
    + + + EtherFlightlessWing + + A fightless avian wing. + Ratite + ArmBecomsWing + EtherWingMemory + +
  • + readjusting + + [PAWN_nameDef]'s arm is significantly stiffer and visibly shorter then before. + +
  • +
  • + unfamiliar + + [PAWN_nameDef]'s arms has gotten significantly shorter and are clad in a soft down. + +
  • +
  • + adapting + + [PAWN_nameDef]'s arm has contorted into the shape of an avian wing, complete with hollow bones. It is far too small and weak to fly but has grown a lovely plumage. + + 0.2 + 5 + + +
  • +
  • + adapted + + [PAWN_nameDef]'s arm has contorted into the shape of an avian wing. It's flightless but the eye-catching plumage has become a great distraction should they find themself in a brawl! + + 0.2 + 5 + + +
  • +
    + +
  • + + EtherWingTip + 3 + 5 + +
  • Hand
  • + + 2 + WingTipMemory + HandsBecomeWingTips + + +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/EyeMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/EyeMutations.xml new file mode 100644 index 000000000..e7495f390 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/EyeMutations.xml @@ -0,0 +1,195 @@ + + + + + + + +
  • + initial + + + [PAWN_nameDef]'s eye is losing its natural colour, and sometimes produce dizziness. + +
  • +
  • + unfamiliar + + + [PAWN_nameDef]'s eye aches as their vision is briefly tinted green and blurry with mutagen pulsing through it. + -0.4 + 0.05 + +
  • +
    +
    + + + + + EtherAvianEye + + Avian + + +
  • + adapting + + [PAWN_nameDef]'s eye has become sharper at range, to about 20/10 vision - though it hasn't quite got entirely used to the new visual acuity. + -0.2 + + 0.0375 + + +
  • +
  • + adapted + + [PAWN_nameDef]'s eye has become sharper at range, to about 20/4 vision, and can see detail at range that normal humans can only recognise simple shapes. + 0.1 + + 0.075 + + +
  • +
    + +
  • + paragon + + 2.5 + + [PAWN_nameDef]'s eagle eye can now spot targets from increadible distances. Honing instincts locks the eye on the target, allowing precise trickshots. + 0.1 + + 0.8 + +
  • +
    +
    + + + + + EtherCapridEye + + Caprid + + +
  • + adapting + + [PAWN_nameDef] has a rectangular pupil set in a yellow eye that is pressed slightly further to the side of the head. It allows for a wider peripheral field of view, and herd animals seem a little calmer from the familiar appearance, however [PAWN_pronoun] hasn't fully adapted to the oddities of the new eye placement. + -0.2 + + 0.075 + + +
  • +
  • + adapted + + [PAWN_nameDef] has a rectangular pupil set in a yellow eye that is pressed slightly further to the side of the head. It allows for a wider peripheral field of view, and herd animals seem calmed by the familiar appearance. + + 0.15 + + +
  • +
    +
    + + + + + EtherFelineEye + + Feline + EtherFelineEye + +
  • + adapting + + [PAWN_nameDef]'s eye has grown yellow, with narrow, slitted pupil in place of the previous circle. It hasn't quite adjusted to see as well as before. + -0.2 + +
  • +
  • + adapted + + [PAWN_nameDef]'s eye has turned a bright, feline yellow, and its pupil has become small, vertical slit. [PAWN_pronoun] can control how much the pupil can expand, allowing to see in the darkness. + 0.2 + +
  • +
    +
    + + + + + EtherReptileEye + + Reptile + + +
  • + adapting + + [PAWN_nameDef]'s eye has turned a glaring yellow, and its pupil has become small, vertical slit. The receptors in the eye now catch infrared frequencies, but willl need time to distinguish between colours and volume perfectly. + -0.2 + +
  • +
  • + adapted + + [PAWN_nameDef]'s eye has turned a glaring yellow, and its pupil has become small, vertical slit. [PAWN_pronoun] can change between infrared and visible light receptors at will, losing all weakness of both receptors. + 0.2 + +
  • +
    + +
  • + paragon + + 2.5 + [PAWN_nameDef]'s cold eye has become incredibly sensitive to movement. In a brawl [PAWN_nameDef] never misses even a single twitch of muscle! + 0.2 + + 0.8 + +
  • +
    +
    + + + + + EtherVulpineEye + + Fox + EtherFoxEye + +
  • + adapting + + [PAWN_nameDef]'s eye has grown yellow, with a narrow, slitted pupil in place of the previous circle. It hasn't quite adjusted to see as well as before. + -0.2 + + 0.05 + 0.05 + + +
  • +
  • + adapted + + [PAWN_nameDef] has a bright, foxy eye. [PAWN_pronoun] will see better, and charm people with their exotic appearance. + + 0.1 + 0.1 + + +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/FootMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/FootMutations.xml new file mode 100644 index 000000000..c63291abe --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/FootMutations.xml @@ -0,0 +1,1025 @@ + + + + + EtherPawFoot + + A paw foot. + PawFooted + FootBecomesCanidPaw + PawFootMemory + +
  • + readjusting + + clawed + + [PAWN_nameDef]'s toenails have turned darker and become pointed, annoyingly catching on [PAWN_possessive] socks. + +
  • +
  • + unfamiliar + + padded + + Claws and thick pads have developed on [PAWN_nameDef]'s toes. While this means [PAWN_possessive] shoes don't quite fit anymore, [PAWN_pronoun] can walk over brambles barefoot without much worry now. + +
  • +
  • + adapting + + [PAWN_nameDef]'s foot has been wholly replaced by an animalistic paw, severly hampering [PAWN_possessive] chances of ever wearing shoes again. [PAWN_pronoun] will need time to get used to it. + +
  • + Moving + -0.025 +
  • + + + +
  • + adapted + + [PAWN_nameDef]'s foot has been wholly replaced by an animalistic paw, severly hampering [PAWN_possessive] chances of ever wearing shoes again. + +
  • + Moving + 0.025 +
  • + + + +
    +
    + + + EtherClovenHoofFoot + + A cloven hoof. + EvenToedUngulate + FootBecomesClovenHooves + EtherClovenHoofFoot + +
  • + readjusting + + hard nails + + [PAWN_nameDef]'s toenails have become noticably darker and broadened out, all but eclipsing [PAWN_possessive] toes. + +
  • + Moving + -0.10 +
  • + + + 0.01 + + + +
  • + unfamiliar + + hooflike + + [PAWN_nameDef]'s toes have fused into two larger digits, each surrounded by a thick layer of a dark, bone-like substance. + 0.1 + +
  • + Moving + -0.15 +
  • + + + 0.02 + + + +
  • + adapting + + [PAWN_nameDef]'s foot has mutated into a veritable hoof, with a split down the middle. [PAWN_pronoun] will need time to get used to it. + +
  • + Moving + -0.05 +
  • + + + 0.05 + + + +
  • + adapted + + [PAWN_nameDef]'s foot has been replaced by a cloven hoof. [PAWN_pronoun] is quite adept at using it and is a bit quicker than [PAWN_pronoun] used to be. + +
  • + Moving + 0.05 +
  • + + + 0.05 + + + +
    +
    + + + EtherUnclovenHoofFoot + + An uncloven hoof. + OddToedUngulate + FootBecomesHooves + EtherClovenHoofFoot + +
  • + readjusting + + hard nails + + [PAWN_nameDef]'s toes have become encased in a thin layer of carnitine, limiting [PAWN_possessive] mobility. + +
  • + Moving + -0.10 +
  • + + + 0.01 + + + +
  • + unfamiliar + + hooflike + + [PAWN_nameDef]'s foot resembles more of a hoof than anything human, and the heel is stretching painfully to match. + 0.1 + +
  • + Moving + -0.15 +
  • + + + 0.05 + + + +
  • + adapting + + [PAWN_nameDef]'s foot has reshaped into a singular hoof. [PAWN_pronoun] will need time to get used to it. + +
  • + Moving + -0.05 +
  • + + + 0.1 + + + +
  • + adapted + + [PAWN_nameDef]'s foot has been replaced by a hoof. [PAWN_pronoun] is quite adept at using it and is a bit quicker than [PAWN_pronoun] used to be. + +
  • + Moving + 0.05 +
  • + + + 0.1 + + + +
    +
    + + + EtherTrotterFoot + + A trooter hoof. + Suid + FootBecomesTrotter + EtherClovenHoofFoot + +
  • + readjusting + + toe-nails + [PAWN_nameDef]'s toenails have darkened and grown around [PAWN_possessive] toes. While not uncomfortable, it is somewhat concerning. + + 0.01 + + +
  • +
  • + unfamiliar + + hooflike + [PAWN_nameDef]'s toes are nothing more than black toenail-encrusted bones, and [PAWN_possessive] index and pinky toes are pointing back at their heel. + + + 0.03 + + +
  • +
  • + adapting + + [PAWN_nameDef]'s foot has become a full-fledged pig-like trotter. It gives [PAWN_objective] the appearence of wearing high-heels at all times. + +
  • + Moving + -0.1 +
  • + + + 0.05 + + + +
  • + adapted + + [PAWN_nameDef]'s foot has become a full-fledged pig-like trotter. It gives [PAWN_objective] the appearence of wearing high-heels at all times. + + 0.05 + + +
  • + +
    +
    + + + + EtherAvianFootBase + FeetBecomeTalons + AvianFootMemory + +
  • + readjusting + + + scaly + [PAWN_nameDef]'s foot appears to have broken out into hives, but doesn't seem to itch. + +
  • + + 0 + 0 +
  • + + + +
  • + unfamiliar + + + toe-foot + [PAWN_nameDef]'s toes have become long, thin and scaly. Most of the main meat of [PAWN_possessive] foot has disappeared as well, leaving it looking more avian than human. + +
  • + + 0.5 + 3 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Scratch
  • +
  • Cut
  • + + 0 + 1.5 + true + + + +
    +
    + + + + EtherAvianFoot + + An avian foot. + Avian + +
  • + adapting + + [PAWN_nameDef]'s foot has been replaced with an avian-looking claw. Despite its appearance, it proves quite useful for normal ambulatory function as well as for combative purposes. + +
  • + Moving + -0.1 +
  • + + +
  • + + 0.5 + 6.0 +
  • +
    + + +
  • + adapted + + manipulative avian + [PAWN_nameDef]'s toes stretch out into long birdlike claws, perfect for grasping things or scratching at people's faces. + +
  • + Manipulation + 0.4 +
  • + + +
  • + + 1 + 6.0 +
  • +
    + + +
    +
    + + + EtherLargeAvianFoot + + A large and deadly avian foot. + Ratite + +
  • + adapting + + [PAWN_nameDef]'s foot has been replaced with a padded avian claw. Despite its appearance, it proves quite useful for normal ambulatory function as well as for combative purposes. + +
  • + Moving + -0.1 +
  • + + + 10 + + +
  • + + 0.5 + 7.3 +
  • +
    + + +
  • + adapted + + [PAWN_nameDef]'s toes stretch out into large birdlike claws. The talons are sharp and can be quite dangerous in a fight. + + 10 + + +
  • + + 1 + 7.3 +
  • + + + +
    +
    + + + EtherRetractableClawsFoot + + A paw with retractable claws. + Feline + + +
  • + readjusting + + Padded foot + Thick callouses have developed, and retractable claws are beginning to grow from the nail bed. + +
  • +
  • + unfamiliar + + Padded paw + Retractable claws and thick pawpads dominate the structure of this foot, and it's beginning to stretch longer from the heel. + +
  • +
  • + adapting + + This foot has reshaped and elongated into a feline foot, equipped with padded soles and retractable claws. They're unfamiliar to walk on, but a lot quieter when moving around. + +
  • + Moving + -0.1 +
  • + + + 0.05 + + + +
  • + adapted + + This foot has reshaped and elongated into a feline foot, equipped with padded soles and retractable claws. The extra spring in the step makes [PAWN_nameDef] sprightly and a lot quieter when moving around. + +
  • + Moving + 0.1 +
  • + + + 5 + 0.10 + + + +
    +
    + + + EtherReptillianClawFoot + + A reptilian foot, looks like a bunch of toes glued together. + Reptile + + +
  • + readjusting + + Claws are beginning to protrude from the nailbed, replacing the toenails. + +
  • +
  • + unfamiliar + + Claws have fully grown, and the toes are splaying out in an odd fashion. Patches of scales are developing along the length. + +
  • +
  • + adapting + + Thick scales plate [PAWN_nameDef]'s clumsy foot, and large claws get in the way of movement. + +
  • + Moving + -0.1 +
  • + + + -3 + 0.06 + + + +
  • + adapted + + Thick scales plate [PAWN_nameDef]'s foot, and large claws get in the way of movement, but not as much as they used to. + +
  • + Moving + -0.025 +
  • + + + -3 + 0.06 + + + +
    +
    + + + EtherMassiveHoof + + A massive hoof. + ThrumboMorph + +
  • Powerful
  • +
    + +
  • + readjusting + + hard nails + + [PAWN_nameDef]'s toenails have become noticably darker and broadened out, all but eclipsing [PAWN_possessive] toes. + +
  • + Moving + -0.10 +
  • + + + +
  • + unfamiliar + + hooflike + + [PAWN_nameDef]'s foot resembles more of a hoof than anything human, and the heel is stretching painfully to match. + 0.1 + +
  • + Moving + -0.15 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s foot has reshaped into a singular massive hoof providing firm footing in combat. It will take a while to get used to moving around on hooves though. + +
  • + Moving + -0.15 +
  • + + + 0.05 + 0.1 + + + +
  • + adapted + + [PAWN_nameDef]'s foot has reshaped into a singular massive hoof providing firm footing in combat. + + 0.05 + 0.1 + + +
  • +
    +
    + + + Elephantidae + EtherThickHideFoot + + An stump-like elphantine foot. + GrewElephantFoot + EtherElephantFoot + +
  • Powerful
  • +
    + +
  • + readjusting + + + stump-toed + [PAWN_nameDef]'s toes have shrunk back into [PAWN_possessive] foot, the leftover toenails dappling the foot serving as the only reminder they were ever there. + +
  • + + 0 + 0 +
  • + + + +
  • + unfamiliar + + + swollen + [PAWN_nameDef]'s foot has grown to be stubby and somewhat swollen-looking, with [PAWN_possessive] toes all but replaced by thick ivory-colored nails. + +
  • + + 0.5 + 5 +
  • + + + +
  • + adapting + + elephantine + The underlying bone and muscle structure of [PAWN_nameDef]'s foot has reshaped into something resembling a strong, if stubby, elephant-like foot. + +
  • + Moving + -0.1 +
  • + + + 0.025 + + +
  • + + 0.5 + 8 +
  • +
    + + +
  • + adapted + + elephantine + The underlying bone and muscle structure of [PAWN_nameDef]'s foot has reshaped into something resembling a strong, if stubby, elephant-like foot. + +
  • + Moving + -0.025 +
  • + + + 0.025 + + +
  • + + 1 + 8 +
  • +
    + + +
    + +
  • + +
  • + + False + +
  • Blunt
  • + + 0 + 2 + true + + + +
    +
    + + + EtherMassiveFootClaw + + A foot with massive claws. + ThickFur + + +
  • Powerful
  • +
    + +
  • + readjusting + + Curved claws are pressing out from the nails, but are too blunt to be of use at the moment. + +
  • + + 0 + 0 +
  • + + + +
  • + unfamiliar + + The claws have grown larger, and have sharpened enough to prove a threat. + +
  • + + 0.5 + 5 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s feet have grown long, curved claws that protrude in such a way that [PAWN_pronoun] now has to walk on the sides of [PAWN_possessive] feet. + + 0.05 + + +
  • + Moving + -0.1 +
  • + + +
  • + + 0.5 + 12 +
  • +
    + + +
  • + adapted + + [PAWN_nameDef]'s feet have grown long, curved claws that protrude in such a way that [PAWN_pronoun] now has to walk on the sides of [PAWN_possessive] feet. Time has allowed [PAWN_pronoun] to adapt making it less inhibiting. + + 0.05 + + +
  • + Moving + -0.025 +
  • + + +
  • + + 1 + 12 +
  • +
    + + +
    + +
  • + +
  • + + False + +
  • Scratch
  • + + 0 + 3 + true + + + +
    +
    + + + EtherMonkeyFoot + + A foot that looks almost like a hand + Simian + + EtherSimianFoot + +
  • + readjusting + + [PAWN_nameDef]'s feet are arching. Surely a message is all they need. + +
  • +
  • + unfamiliar + + The toes on [PAWN_nameDef]'s feet are lengthening drastically while the sole is shrinking. Walking is proving very difficult. + +
  • + Moving + -0.05 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s toes has lengthened to finger like protrutions with multiple dextrous joints. While walking like this is very difficult [PAWN_objective] is finding the extra grip very handy! + +
  • + Moving + -0.1 +
  • +
  • + Manipulation + 0.025 +
  • + + + +
  • + adapted + + With practise [PAWN_nameDef]'s gotten used to the the additional "fingers". While [PAWN_objective] feet are far more sensitive than before and hinders [PAWN_objective] movement [PAWN_nameDef] can use them almost as good as his regular hands! + +
  • + Moving + -0.025 +
  • +
  • + Manipulation + 0.075 +
  • + + + +
    +
    + + + + + + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/GenericMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/GenericMutations.xml new file mode 100644 index 000000000..8e8aff872 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/GenericMutations.xml @@ -0,0 +1,514 @@ + + + + + + A morph muzzle. + GrewMuzzleMisc + 0 + 0 + +
  • + initial + + 0 +
  • +
  • + pressing + + 0.1 +
  • +
  • + growing + + 0.3 +
  • +
  • + adapting + + 0.5 +
  • +
  • + adapted + + 1 +
  • +
  • + paragon + + 2.5 +
  • +
    + +
  • + 0.25 +
  • +
    + +
  • Jaw
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph ear. + EarsChangedMisc + 0 + 0 + +
  • + initial + + 0 +
  • +
  • + pressing + + 0.2 +
  • +
  • + growing + + 0.5 +
  • +
  • + grown + + 1 +
  • +
    + +
  • + 0.8 +
  • +
    + +
  • Ear
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph tail. + GrewTail + 0 + 0 + +
  • + initial + + 0 +
  • +
  • + pressing + + 0.2 +
  • +
  • + growing + + 0.5 +
  • +
  • + grown + + 1 +
  • +
    + +
  • + 0.8 +
  • +
    + +
  • Tail
  • +
  • MorphTail
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph eye. + 0 + 0 + +
  • + initial + + 0 +
  • +
  • + unfamiliar + + 0.3 +
  • +
  • + adapting + + 0.5 +
  • +
  • + adapted + + 1 +
  • +
    + +
  • + 0.25 +
  • +
    + +
  • Eye
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph arm. + 0 + 0 + +
  • + readjusting + + 0 +
  • +
  • + unfamiliar + + 0.3 +
  • +
  • + adapting + + 0.5 +
  • +
  • + adapted + + 1 +
  • +
    + +
  • + 0.2 +
  • +
    + +
  • Arm
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph hand. + 0 + 0 + +
  • + readjusting + + 0 +
  • +
  • + unfamiliar + + 0.3 +
  • +
  • + adapting + + 0.5 +
  • +
  • + adapted + + 1 +
  • +
    + +
  • + 0.15 +
  • +
    + +
  • Hand
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph leg. + 0 + 0 + +
  • + initial + + 0 +
  • +
  • + readjusting + + 0.3 +
  • +
  • + adapting + + 0.5 +
  • +
  • + adapted + + 1 +
  • +
    + +
  • + 0.25 +
  • +
    + +
  • Leg
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph foot. + 0 + 0 + +
  • + readjusting + + 0 +
  • +
  • + unfamiliar + + 0.3 +
  • +
  • + adapting + + 0.5 +
  • +
  • + adapted + + 1 +
  • +
    + +
  • + 0.15 +
  • +
    + +
  • Foot
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph horn. + GrewAntlers + 0 + 0 + +
  • + initial + + 0 +
  • +
  • + nubs + + 0.2 +
  • +
  • + short + + 0.5 +
  • +
  • + horns + + 1 +
  • +
    + +
  • + 0.05 +
  • +
    + +
  • Skull
  • +
    + +
  • Major
  • +
    +
    + + + + + A morph torso. + 0 + 0 + +
  • + initial + 0 +
  • +
  • + growing + 0.2 +
  • +
  • + grown + 1 +
  • +
    + +
  • + 0.15 +
  • +
    + +
  • Torso
  • +
    + +
  • Major
  • +
    +
    + + + + + A covered limb. + 0 + 0 + +
  • Torso
  • +
  • Head
  • +
  • Neck
  • +
  • Ear
  • +
  • Arm
  • +
  • Hand
  • +
  • Leg
  • +
  • Foot
  • +
  • Tail
  • +
  • MorphTail
  • +
    + +
  • + 0.33 +
  • +
  • + Skin +
  • +
  • + 2 + 1 +
  • +
    + +
  • + light + 0 +
  • +
  • + dusting + 0.2 +
  • +
  • + thin + 0.4 +
  • +
  • + patches + 0.6 +
  • +
  • + full + 0.8 +
  • +
    + +
  • Minor
  • +
    + +
  • + + +
  • mutagen_cause->[PAWN_possessive] [SOURCEPART_label]
  • +
  • caused_by->spreading from
  • + + + +
    +
    + + + + + A morph body part. + 0 + 0 + +
  • + initial + 0 +
  • +
  • + growing + 0.2 +
  • +
  • + grown + 1 +
  • +
    + +
  • + 1 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/HandMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/HandMutations.xml new file mode 100644 index 000000000..02476910b --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/HandMutations.xml @@ -0,0 +1,1058 @@ + + + + + EtherPawHand + + A paw. + Canid + HandsBecomePaws + CanidPawHandMemory + +
  • + readjusting + + clawed + Each finger on this hand is tipped with a sharp claw. + +
  • + + 0.5 + 6 +
  • + + + +
  • + unfamiliar + + padded + In addition to claws, this hand is developing thick pads on the palm and each fingertip. + +
  • + + 0.5 + 6.2 +
  • + + + +
  • + adapting + + inflexible handpaw + This hand looks more like a paw than a hand, but isn't completely useless. + + -0.1 + + +
  • + + 0.5 + 6.5 +
  • + + + +
  • + adapted + + [PAWN_nameDef] has largely adapted to having paws, recovered some flexibility in the digits. + + -0.05 + + +
  • + + 1 + 6.5 +
  • + + + +
    + + + + + + +
  • + +
  • + + False + +
  • Scratch
  • + + 5.0 + 1.5 + true + + + +
    +
    + + + AbstractEtherHoofHand + + A hoof-hand? + EtherHoofHand + HandsBecomeHooves + +
  • + readjusting + + thick nails + Each finger on this hand is tipped with a thicker nail that's slowly dominating the length of each digit. + +
  • +
  • + unfamiliar + + hoof-fingers + Each finger on this hand has a large, dark hoof-like nail on it. Some of the fingers seem to be shortening. + +
  • +
  • + adapting + + Above a humanlike palm, two fingers have paired up and merged. This reduces manipulation, but not nearly as much as having a full hoof instead. + handhoof + +
  • +
  • + adapted + + [PAWN_nameDef] has adapted to using hooves, and will have slightly less trouble with working with them. + + +
  • +
    + + + + + +
    + + + + EtherHoofHand + + A hoof-hand? + OddToedUngulate + +
  • + unfamiliar + + -0.20 + +
  • +
  • + adapting + + -0.50 + +
  • +
  • + adapted + + -0.30 + +
  • +
    +
    + + + EtherClovenHoofHand + + A hoof-hand? + EvenToedUngulate + +
  • + unfamiliar + + -0.10 + +
  • +
  • + adapting + + -0.20 + + 0.05 + + +
  • +
  • + adapted + + -0.10 + + 0.05 + + +
  • +
    +
    + + + + EtherTrotterHand + + A trotter..hand? + Suid + +
  • + readjusting + + thick nails + Each finger on this hand is tipped with a thicker nail that's slowly dominating the length of each digit. + +
  • +
  • + unfamiliar + + hoof-fingers + Each finger on this hand has a large, dark hoof-like nail on it. Some of the fingers seem to be shortening. + +
  • +
  • + adapting + + [PAWN_nameDef] fingers has become noticably shorter but have acquired additional receptors that percieve minute differences in heat and chemical composition. The changes may take time to get used to + + 0.05 + 0.05 + 0.05 + + -0.10 + +
  • +
  • + adapted + + [PAWN_nameDef] fingers has become noticably shorter but have acquired additional receptors that percieve minute differences in heat and chemical composition, making quantifying mixtures much easier. Adaption has helped offset the difficulties [PAWN_nameDef] has in using them. + + 0.1 + 0.1 + 0.05 + + +
  • +
    + + + + + +
    + + + EtherFelineClaws + + This hand has reshaped to become like a paw, complete with retractable claws. + Feline + HandsBecomeCatPaws + EtherFelineClaws + +
  • + readjusting + + + [PAWN_nameDef]'s fingernails have become long, curved and pointed, like that of a feline. + +
  • + + 0.5 + 6 +
  • + + + +
  • + unfamiliar + + + Fleshy pads have appeared on [PAWN_nameDef]'s palm and fingers, giving the clawed hand a more catlike appearance. [PAWN_objective] thumb has grown weaker as well, making grasping things much more difficult. + + +
  • + + 0.5 + 6.5 +
  • + + + +
  • + adapting + + The mechanites have finished their work on [PAWN_nameDef]'s new cat-like paws, yet they still remain foreign and unfamiliar to [PAWN_objective] and will take some to get used to. + +
  • + + 0.5 + 7 +
  • + + + +
  • + adapted + + [PAWN_nameDef]'s hands have reshaped to become like paws, complete with retractable claws. This gives [PAWN_objective] a combat advantage, yet makes it harder to wipe [PAWN_possessive] ass. + + -0.25 + + +
  • + + 1 + 7 +
  • + + + +
    + + + +
  • + +
  • + + False + +
  • Scratch
  • + + 0 + 1.5 + true + + + +
    +
    + + + EtherWingTip + + Avian + A wing tip. + WingTipMemory + +
  • + readjusting + + [PAWN_nameDef]'s fingers feel weird. + +
  • +
  • + unfamiliar + + [PAWN_nameDef]'s fingers have started shrinking alarmingly. + -0.20 + +
  • +
  • + adapting + + + [PAWN_nameDef]'s fingers have shrunken down significantly, making manipulating things much harder. + -0.50 + +
  • +
  • + adapted + + [PAWN_nameDef]'s fingers have mostly disappeared into an almost-useless lump of bird-skinned flesh, with many feathers protruding from the nub. + -0.90 + + +
  • +
    + + + +
    + + + + + + + + Ursine + EtherBearPawHand + + Massive, clawed paws that belong on a bear rather than a human. They are deadly in a fight, but are rather useless at fine manipulation. + + +
  • + readjusting + + clawed + Each finger on this hand is tipped with a huge, sharp claw. + +
  • + + 0.5 + 10 +
  • + + + +
  • + unfamiliar + + large handpaw + In addition to massive claws, [PAWN_nameDef]'s hand is has grown noticably larger and developed thick pads on the palm and each fingertips, making it look more like a paw than a hand. + +
  • + + 0.5 + 10.6 +
  • + + + +
  • + adapting + + A massive, five-toed paw with deadly claws has replaced [PAWN_nameDef]'s hand. [PAWN_pronoun] will be useless at fine manipulation until [PAWN_pronoun] adapts to them, but at least [PAWN_pronoun] can rip things apart with [PAWN_possessive] bear hands, err paws. + + 0.1 + 0.05 + + +
  • + + 0.5 + 11.2 +
  • + + + +
  • + adapted + + A massive, five-toed paw with deadly claws has replaced [PAWN_nameDef]'s hand. [PAWN_pronoun] has gotten used to having five fingers and no thumb, but the huge size still makes them more clumsy than someone with smaller paws. At least [PAWN_pronoun] can rip things apart with [PAWN_possessive] bear hands, err paws. + + 0.05 + 0.1 + + +
  • + + 1 + 11.2 +
  • + + + +
    + + + + + + + +
  • + +
  • + + False + +
  • Scratch
  • +
  • Blunt
  • + + 0.0 + 2.5 + true + + +
  • + Stun + 14 +
  • +
    +
    + + + +
    +
    + + + + EtherAbstractRodentPawHand + a rodent handpaw. + + + + EtherDextrousPawHand + + +
  • Rodent
  • +
  • RaccoonMorph
  • +
    + + +
  • + readjusting + + Small claws + Fine claws are developing from the nailbed here, and small callouses are growing on the fingerprintsand palm. + +
  • +
  • + unfamiliar + + Slim fingers + The fingers have slimmed and lengthed, splaying out a little with delicate claws and small pawpads growing in. + +
  • +
  • + adapting + + Slim fingers are tipped with delicate claws, assisting with fine motor controls. + +
  • + Manipulation + 0.01 +
  • + + + +
  • + adapted + + Slim fingers are tipped with delicate claws, assisting with much finer motor controls due to further adaptation. + +
  • + Manipulation + 0.025 +
  • + + + +
    +
    + + + EtherGreenPawHand + + Arboreal + + +
  • + readjusting + + Slight callouses are forming over the palm and fingerprints of this hand. + +
  • +
  • + unfamiliar + + The palm of this hand is calloused and should be able to pull at plants a little easier. + + 0.05 + + +
  • +
  • + adapting + + This hand is clawed and padded, making it a little easier to work with in the field with plants. + + 0.025 + 0.1 + + +
  • +
  • + adapted + + [PAWN_nameDef] has a 'green paw', that enables them to work a bit faster with plants in all respects. Claws are suited for digging in dirt, and pawpads are ideal for pulling at fruit. + + 0.075 + 0.1 + + +
  • +
    +
    + + + + + MegaslothMorph + EtherMegaslothHand + Large sloth paws. + + + +
  • Powerful
  • +
    + +
  • + readjusting + + Three inch-long claws have grown out from [PAWN_nameDef]'s fingers, and still seem to be growing. + +
  • + + 0.5 + 8 +
  • + + + +
  • + unfamiliar + + The claws are growing more, replacing the fingers themselves. They're about four inches long, and are growing from the second knuckle. + + -0.05 + + +
  • + + 0.5 + 8.8 +
  • + + + +
  • + adapting + + Most of [PAWN_nameDef]'s finger real-estate has been entirely replaced by large megasloth claws. They're very sharp and get in the way for most tasks, but are rather dangerous in combat. + + -0.1 + + +
  • + + 0.5 + 9.7 +
  • + + + +
  • + adapted + + [PAWN_nameDef]'s normally agile fingers have been replaced with a trio of long, curved claws that rip through flesh and metal with ease. + + 0.025 + 0.05 + -0.025 + + +
  • + + 1 + 9.7 +
  • + + + +
    + +
  • + +
  • + + False + +
  • Scratch
  • + + 0 + 2 + true + + + +
    +
    + + + + ThickHide + EtherElephantHand + + StumpHandMemory + + Thick, leathery stumps have replaced this hand. Doing any kind of fine manipulation with it will be exceedingly challenging. + +
  • + readjusting + + thick nails + Each finger on this hand is tipped with a thicker nail that's slowly dominating the length of each digit. + + -0.05 + + +
  • +
  • + unfamiliar + + handstump + Some of the fingers on this hand have disappeared entirely, while the rest are growing fatter and more inflexible. [PAWN_nameDef]'s hand isn't going to be of much use soon. + + -0.1 + + -0.40 + +
  • +
  • + adapting + + Thick, leathery stumps have replaced [PAWN_nameDef]' hand. [PAWN_pronoun] will find any any kind of fine manipulation exceedingly challenging until he gets used to them. + + 0.05 + -0.2 + + -0.30 + +
  • +
  • + adapted + + [PAWN_nameDef] has adapted to having stumps for hands, and will have slightly less trouble with working with them. + + 0.05 + -0.1 + + -0.20 + +
  • +
    + + + + + +
  • + +
  • + + False + +
  • Blunt
  • + + 5.0 + 1.5 + true + + + +
    +
    + + + Reptile + EtherReptileHandclaws + + reptile claws. + + +
  • + readjusting + + [PAWN_nameDef]'s fingernails are a little sharper. + +
  • + + 0.5 + 8.2 +
  • + + + +
  • + unfamiliar + + Sharp claws have grown from [PAWN_nameDef]'s fingers, and scales are growing to cover the knuckles. + +
  • + + 0.5 + 8.5 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s fingers have elongated into scale-covered claws. They're clumsy at the moment, but may improve with further adaptation. + +
  • + Manipulation + -0.05 +
  • + + +
  • + + 0.5 + 9 +
  • +
    + + +
  • + adapted + + [PAWN_nameDef]'s fingers have elongated into scale-covered claws. + +
  • + Manipulation + 0.05 +
  • + + +
  • + + 1 + 9 +
  • +
    + + +
    + +
  • + +
  • + + False + +
  • Scratch
  • + + 0 + 2 + true + + + +
    +
    + + + + + Simian + EtherMonkeyHand + + A monkey's paw + + EtherSimianHand + +
  • + readjusting + + [PAWN_nameDef] is flexing their hands repetitively. + +
  • +
  • + unfamiliar + + [PAWN_nameDef]'s hands are growing short thick hairs over the top, and their fingers seem a little longer. + +
  • +
  • + adapting + + The topside of [PAWN_nameDef]'s hands are covered in short, thick hairs, and the fingers are elongated, like a monkey's. + +
  • + Manipulation + 0.05 +
  • + + + +
  • + adapted + + [PAWN_nameDef]'s fingers have elongated into something resembling a monkey's hand. They're a little more suited to peeling bananas. + +
  • + Manipulation + 0.1 +
  • + + + +
    +
    + + + + + EtherDiggingClaws + + Claws good for digging. + Leporid + + +
  • + readjusting + + Thick claws are pressing out from the nailbed. + + +
  • +
  • + unfamiliar + + The claws are elongating, with fingers growing bulkier. They're somewhat blunt and don't appear too useful in combat. + + +
  • +
  • + adapting + + Each finger on this hand has the top portion replaced by a thick claw. It might take some time and further adaptation to determine how this could be used. + + +
  • +
  • + adapted + + Each finger on this hand has the top portion replaced by a thick and dense claw. It's ideal for digging away at rock and dirt. + + 0.125 + 0.15 + + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/HornMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/HornMutations.xml new file mode 100644 index 000000000..c2297bcc9 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/HornMutations.xml @@ -0,0 +1,40 @@ + + + + + \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml new file mode 100644 index 000000000..d835cb9b0 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml @@ -0,0 +1,418 @@ + + + + + + + EtherThickHideLeg + + A very strong leg. + +
  • Powerful
  • +
  • BigCervid
  • +
    + +
  • + initial + + The muscles in [PAWN_nameDef]'s legs are swelling in size and tightening. + + +
  • +
  • + readjusting + + Burly muscles have developed along this leg, and are still growing. + + +
  • +
  • + adapting + + [PAWN_nameDef]'s leg is thick with heavy, powerful muscle. Getting used to it will take [PAWN_pronoun] some time. + +
  • + Moving + -0.1 +
  • + + + 0.1 + + + +
  • + adapted + + [PAWN_nameDef]'s leg is as thick and strong as a treetrunk, greatly adding to their overall size. + +
  • + Moving + -0.025 +
  • + + + 0.05 + + + +
    +
    + + + + + + EtherAnimalLeg + EtherDigitigradeLeg + +
  • + initial + + + [PAWN_nameDef]'s leg has started itching quite a lot, but nothing serious yet. + 0.02 + +
  • +
  • + readjusting + + The bones in [PAWN_nameDef]'s leg are growing longer or shorter as need be. It will be rather difficult and painful to move while this change is taking place. + 0.1 + +
  • + Moving + -0.3 +
  • + + + +
    +
    + + + EtherDigitgradeLeg + Carnivora + + A digitgrade leg. + LegBecameDigitgrade + +
  • + adapting + + The shape of [PAWN_nameDef]'s leg is now more beast than human, forcing [PAWN_objective] to stand more on [PAWN_possessive] toes instead of [PAWN_possessive] heel, which has elongated. [PAWN_pronoun] will need some time to get used to the new shape. + +
  • + Moving + -0.1 +
  • + + + +
  • + adapted + + The shape of [PAWN_nameDef]'s leg is now more beast than human, forcing [PAWN_objective] to stand more on [PAWN_possessive] toes instead of [PAWN_possessive] heel, which has elongated. + +
  • + Moving + 0.075 +
  • + + + +
    +
    + + + EtherUnguligradeLeg + + Ungulate + An unguligrade leg. + LegBecameUnguligrade + +
  • + adapting + + The shape of [PAWN_nameDef]'s leg is now more beast than human, forcing [PAWN_objective] to stand more on [PAWN_possessive] nails instead of [PAWN_possessive] heel, which has elongated. [PAWN_pronoun] will need some time to get used to the new shape. + +
  • + Moving + -0.1 +
  • + + + 20 + + + +
  • + adapted + + The shape of [PAWN_nameDef]'s leg is now more beast than human, forcing [PAWN_objective] to stand more on [PAWN_possessive] nails instead of [PAWN_possessive] heel, which has elongated. + + 20 + + +
  • +
    +
    + + + EtherCervineLeg + + +
  • SmallCervid
  • +
  • BoomalopeMorph
  • +
    + An unguligrade leg. + LegBecameUnguligrade + +
  • + adapting + + The shape of [PAWN_nameDef]'s leg is now more beast than human, forcing [PAWN_objective] to stand more on [PAWN_possessive] nails instead of [PAWN_possessive] heel, which has elongated. [PAWN_pronoun] will need some time to get used to the new shape. + +
  • + Moving + -0.1 +
  • + + + +
  • + adapted + + The shape of [PAWN_nameDef]'s leg is now more beast than human, forcing [PAWN_objective] to stand more on [PAWN_possessive] nails instead of [PAWN_possessive] heel, which has elongated. + +
  • + Moving + 0.15 +
  • + + + +
    +
    + + + EtherRatiteLeg + + Ratite + A ratite leg. + + +
  • + initial + + + [PAWN_nameDef]'s leg has started itching quite a lot, but nothing serious yet. + 0.02 + +
  • +
  • + readjusting + + The bones in [PAWN_nameDef]'s leg are growing longer or shorter as need be. It will be rather difficult and painful to move while this change is taking place. + 0.1 + +
  • + Moving + -0.3 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s legs have reshaped into very large avian legs. They are incredibly powerful, but look strange on a humanoid. [PAWN_pronoun] will need some time to get used to the new shape. + +
  • + Moving + -0.10 +
  • + + + + +
  • + adapted + + [PAWN_nameDef]'s legs have reshaped into very large avian legs. They are incredibly powerful, but look strange on a humanoid. + +
  • + Moving + 0.30 +
  • + + + +
    +
    + + + + EtherHareLeg + + Leporid + A leporid spring-loaded leg. + + +
  • + initial + + + [PAWN_nameDef]'s leg has started itching quite a lot, but nothing serious yet. + 0.02 + +
  • +
  • + readjusting + + The bones in [PAWN_nameDef]'s leg are growing longer or shorter as need be. It will be rather difficult and painful to move while this change is taking place. + 0.1 + +
  • + Moving + -0.3 +
  • + + + +
  • + adapting + + [PAWN_nameDef]'s legs have reshaped to look something like a rabbit's. This helps them run away from predators, but good luck finding pants that fit. [PAWN_pronoun] will need some time to get used to the new shape. + +
  • + Moving + -0.10 +
  • + + + +
  • + adapted + + [PAWN_nameDef]'s legs have reshaped to look something like a rabbit's. This helps them run away from predators, but good luck finding pants that fit. + +
  • + Moving + 0.25 +
  • + + + +
    +
    + + + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/MiscMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/MiscMutations.xml new file mode 100644 index 000000000..f8facade5 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/MiscMutations.xml @@ -0,0 +1,174 @@ + + + + + + EtherEarHole + + An ear hole. + EtherEarHole + +
  • Avian
  • +
  • Reptile
  • +
    + + + + + + + +
  • + initial + + [PAWN_nameDef]'s ear is shrinking. + + + + + + + +
  • +
  • + pressing + + + [PAWN_nameDef] no longer has a visible ear. + + + + + + + +
  • +
  • + growing + + [PAWN_nameDef]'s ear looks more and more like an animal ear hole. + + + + + + + +
  • +
  • + grown + + [PAWN_nameDef] now has a ear hole. + + + + + + + +
  • +
    +
    + + + + + EtherEggLayer + + An egglayer + EtherEggLayer + +
  • Pelvis
  • +
    + 0.01 + +
  • + 0 + [PAWN_nameDef] can now lay eggs. Don't ask, don't tell. It's rather embarrassing. +
  • +
    +
    + + + + EtherUdder + +
  • CowMorph
  • +
  • GoatMorph
  • +
  • YakMorph
  • +
    + + An udder. + 0.01 + + Parts/Cow/Cow_Udder + + +
  • Waist
  • +
    + +
  • + MilkedMyself + Pawnmorph.Jobs.Giver_MilkSelf + Male + MilkedMyselfMale + MilkedMyselfBond + MilkedMyselfBroken + Milk + TFMilk + +
  • + 0 + 2 + 10 + 40 +
  • +
  • + 0.3 + 1 + 8 + 30 + 1.3 +
  • +
  • + 0.6 + 0.5 + 6 + 15 + 1.6 +
  • +
  • + 0.9 + 0.1 + 4 + 5 + ProductiveBliss + 2.0 + +
  • + CatatonicBreakdown + 2 + +
  • Brain
  • + + + + + + +
    + +
  • + 0 + This really needs no explanation. [PAWN_nameDef] now produces milk. + +
  • + Moving + -0.10 +
  • + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml new file mode 100644 index 000000000..ae05bee38 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml @@ -0,0 +1,198 @@ + + + + + + +
  • Major
  • +
    + +
  • + growing + + 0.2 + +
  • +
    +
    + + + + + This heart is built for a larger body, and pumps a lot of blood. It also tires people out. + EtherStrongHeart + Powerful + + +
  • Heart
  • +
    + +
  • Powerful
  • +
    + +
  • + initial + + Strong pulses are going through [PAWN_nameDef]'s chest. They are getting worse and worse. + +
  • +
  • + growing + + A painful spasm of a growing heart is burning in [PAWN_nameDef]'s chest. + +
  • +
  • + grown + + [PAWN_nameDef]'s heart has grown in size and the surrounding chest cavity has expanded to make room. [PAWN_pronoun] will need to rest more often, however. + 0.3 + 0.3 + +
  • +
    +
    + + + + + A large, powerful lung for intensive breathing. + EtherBellowingLung + Powerful + + +
  • Lung
  • +
    + +
  • Powerful
  • +
    + +
  • + initial + + Breathing is becoming more and more difficult for [PAWN_nameDef] as [PAWN_pronoun]'s lung has started to expand. + +
  • +
  • + growing + + A painful spasm of a growing lung is burning in [PAWN_nameDef]'s chest. + +
  • +
  • + grown + + [PAWN_nameDef]'s lung has grown in size and the surrounding chest cavity has expanded to make room. The larger size leads to hyperventilation, causing slight dizziness. + 0.15 + +
  • +
    + +
  • + paragon + + 2.5 + [PAWN_nameDef]'s lung has acquired a reinforced voicebox that can focus [PAWN_nameDef]'s breath into a roar capable of terrifying and overloading mechanical auditory sensors. + 0.15 + +
  • + Pawnmorph.Abilities.TerrifyingRoar + + Cause anyone nearby to panic. + UI/Buttons/PM_Icon_Terrifying_roar + 180000 +
  • + + +
    +
    + + + + + An expanded frontal lobe for bright morphs. + EtherExpandedCerabellum + Cerebral + + +
  • Brain
  • +
    + +
  • + initial + + [PAWN_nameDef] is recently having more headaches than usual. + +
  • +
  • + growing + + [PAWN_nameDef]'s having a painful, constant migraine. It feels like [PAWN_nameDef]'s brain is expandiing. + +
  • +
  • + grown + + [PAWN_nameDef]'s frontal lobe has expanded. With these new connections, many problems are now trivial for [PAWN_nameDef]. + + 0.75 + 0.20 + + +
  • +
    + +
  • + paragon + + 2.5 + [PAWN_nameDef]'s enhanced brain is so adept at logical problem solving [PAWN_objective] can solve differencial equations on the fly, calculating ballistics trajectories is a comparatively simple matter. + + 0.75 + 0.20 + -10 + +
  • +
    +
    + + + + + A stomach which is resilient to most germs. + EtherIronStomach + +
  • Scavenger
  • +
  • Suid
  • +
    + + +
  • Stomach
  • +
    + +
  • + initial + + [PAWN_nameDef]'s stomach is sometimes hurting a bit after eating. Nothing too worrying though. + +
  • +
  • + growing + + [PAWN_nameDef] seems to have painful disgestion troubles, like if [PAWN_possessive] gut was evolving. + +
  • +
  • + grown + + [PAWN_nameDef]'s gut is now resilient to dangerous and rotten food, and [PAWN_nameDef] could eat almost everything. + + -1 + -1 + 0.2 + + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/SkinMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/SkinMutations.xml new file mode 100644 index 000000000..13d123d9d --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/SkinMutations.xml @@ -0,0 +1,697 @@ + + + + + + LimbGrowsFur + EtherFurredLimb + FurGrowthLogPack + +
  • + light + + + [PAWN_nameDef]'s skin seems to be slightly hairier than it was before. + +
  • +
  • + dusting + + + Very fine fur — too dense to be hair — is sprouting over [PAWN_nameDef]'s limb. + +
  • +
  • + thin + + + The fur on the skin here is quickly thickening as it spreads over [PAWN_nameDef]'s limb. + +
  • +
  • + patches + + + There is not much bare skin left on [PAWN_nameDef]'s limb, much of it has been covered by patches of fur. + +
  • +
  • + full + + Fur has covered the entirety of [PAWN_nameDef]'s limb, giving it a soft fine coat that helps retaining warmth. + +
  • +
    +
    + + + + + EtherLightFurredLimb + + Simian + EtherFurredLimb + +
  • + dusting + + + +0.1875 + +0.075 + + +
  • +
  • + thin + + + +0.375 + +0.15 + + +
  • +
  • + patches + + + +0.5625 + +0.225 + + +
  • +
  • + full + + This limb has been entirely covered by a coat of light fur. + + +0.75 + +0.3 + + +
  • +
    +
    + + + + + EtherFurredLimb + + Animal + +
  • + dusting + + + -0.5 + +0.1125 + + +
  • +
  • + thin + + + -1 + +0.225 + + +
  • +
  • + patches + + + -1.5 + +0.3375 + + +
  • +
  • + full + + + -2 + +0.45 + + +
  • +
    +
    + + + + + EtherArcticFurredLimb + + +
  • PolarBearMorph
  • +
  • SnowhareMorph
  • +
  • ArcticFoxMorph
  • +
  • ArcticWolfMorph
  • +
    + +
  • + dusting + + + -1.75 + -0.375 + + +
  • +
  • + thin + + + -3.5 + -0.75 + + +
  • +
  • + patches + + + -5.25 + -1.125 + + +
  • +
  • + full + + This limb has been entirely covered by a thick coat of arctic-proof fur. + + -7 + -1.5 + + +
  • +
    +
    + + + + + EtherDenseFurredLimb + + ThickFur + EtherThickFurLimb + +
  • + dusting + + + -0.8375 + +0.325 + 0.0008 + 0.01375 + + +
  • +
  • + thin + + + -1.675 + +0.65 + 0.016 + 0.0275 + + +
  • +
  • + patches + + + -2.5125 + +0.975 + 0.024 + 0.04125 + + +
  • +
  • + full + + A thick and dense coat of fur covers this limb. It'll need a lot of brushing to keep it neat and tidy. + + -3.35 + +1.3 + 0.032 + 0.055 + + +
  • +
    + +
  • Powerful
  • +
    +
    + + + + + EtherThrumboFurredLimb + + ThrumboMorph + EtherThickFurLimb + +
  • + dusting + + + -0.8375 + +0.325 + 0.01 + 0.0175 + 0.005 + + +
  • +
  • + thin + + + -1.675 + +0.65 + 0.02 + 0.035 + 0.01 + + +
  • +
  • + patches + + + -2.5125 + +0.975 + 0.03 + 0.0525 + 0.015 + + +
  • +
  • + full + + Beautiful white fur coats this limb, thick and long. It could even be braided, if [PAWN_pronoun] was willing. + + -3.35 + +1.3 + 0.04 + 0.07 + 0.02 + + +
  • +
    + +
  • Powerful
  • +
    +
    + + + + + HideGrowthLogPack + +
  • + light + + + The skin on this limb seems to be slightly more tough than the average human. + +
  • +
  • + dusting + + + The skin on this limb seems to be quite a bit tougher than the average human. + +
  • +
  • + thin + + + Rough, thick bristles have sprouted from this limb as the skin grows thicker. + +
  • +
  • + patches + + + The skin on this limb is greatly thicker than an average human, and is covered in thick bristles. + +
  • +
  • + full + + A leathery hide has formed over this limb, adding some natural defense. + +
  • +
    +
    + + + + + EtherHideLimb + + Ungulate + +
  • + dusting + + + 0.0025 + + +
  • +
  • + thin + + + 0.005 + + +
  • +
  • + patches + + + 0.0075 + + +
  • +
  • + full + + + 0.01 + + +
  • +
    +
    + + + + + EtherThickHideLimb + + ThickHide + EtherThickHideLimb + +
  • + dusting + + + 0.015 + 0.025 + + +
  • +
  • + thin + + + 0.03 + 0.05 + + +
  • +
  • + patches + + + 0.045 + 0.075 + + +
  • +
  • + full + + A very thick, rough and leathery skin now covers this limb, adding a substantial natural defense. + + 0.06 + 0.1 + + +
  • +
    + +
  • Powerful
  • +
    +
    + + + + + ScaleGrowthLogPack + EtherScaledLimb + +
  • + light + + + All of [PAWN_nameDef]'s hair on this part has started to fall out, and [PAWN_pronoun]'s skin itches severely. + +
  • +
  • + dusting + + + [PAWN_nameDef]'s skin in this limb has become drier, and is fragmenting into sprouts of scales. + +
  • +
  • + thin + + + The sprouts in this limb have grown into hard clusters of rough scales, allowing [PAWN_nameDef] to disperse heat from the body. + +
  • +
  • + patches + + + The clusters are spreading even more through the skin, almost covering all the [PAWN_nameDef]'s limb + +
  • +
  • + full + + [PAWN_nameDef]'s skin in this limb has turned into a layer of scales + +
  • +
    +
    + + + + + EtherReptileScaledLimb + + Reptile + ScaleGrowthLogPack + +
  • + dusting + + + +0.2 + +0.875 + 0.0025 + 0.01 + + +
  • +
  • + thin + + + +0.4 + +0.175 + 0.005 + 0.02 + + +
  • +
  • + patches + + + +0.6 + +0.2625 + 0.0075 + 0.03 + + +
  • +
  • + full + + + +0.8 + +3.5 + 0.01 + 0.04 + + +
  • +
    +
    + + + + + EtherFeatheredLimb + +
  • + light + + + This limb appears to be covered in gooseumps as prickles of feathery quills are poking through the skin in places. + +
  • +
  • + dusting + + + Quills have begun to develop feathers in patches over the skin here. + +
  • +
  • + thin + + + [PAWN_nameDef]'s skin looks like a moulting chicken, with patchy sections of feathers contrasting with [PAWN_possessive] skin. + +
  • +
  • + patches + + + Much of the skin here is covered in feathers, needing to be preened and attended to with the occassional dust bath. + +
  • +
  • + full + + The skin here is entirely covered in feathers, needing to be preened and attended to with the occassional dust bath. + +
  • +
    +
    + + + + + EtherFeatheredLimb + + Avian + +
  • + dusting + + + -0.125 + +0.125 + + +
  • +
  • + thin + + + -0.25 + +0.25 + + +
  • +
  • + patches + + + -0.375 + +0.375 + + +
  • +
  • + full + + + -0.5 + +0.5 + + +
  • +
    +
    + + + + + EtherWoollyLimb + + +
  • MuffaloMorph
  • +
  • YakMorph
  • +
  • SheepMorph
  • +
    + EtherWooly + +
  • + light + + + [PAWN_nameDef]'s skin seems to be slightly hairier than it was before. + +
  • +
  • + dusting + + + The hair on the skin here is quickly thickening as it spreads over [PAWN_nameDef]'s limb. + + -0.75 + + +
  • +
  • + thin + + + There is not much bare skin left on [PAWN_nameDef]'s limb, much of it has been covered by patches of fur. + + -1.5 + + +
  • +
  • + patches + + + The fur has become denser on [PAWN_nameDef]'s limb, making the skin underneath hard to see...and it seems more like wool. + + -2.25 + + +
  • +
  • + full + + The wool covers [PAWN_nameDef]'s limb entirely. It's rather warm. + + -3 + + +
  • +
    +
    + +
    diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/SpineMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/SpineMutations.xml new file mode 100644 index 000000000..89994d019 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/SpineMutations.xml @@ -0,0 +1,202 @@ + + + + + + A very flexible spine. + EtherFlexibleSpine + +
  • Feline
  • +
  • Monkeys
  • +
    + + +
  • Spine
  • +
    + +
  • + initial + + [PAWN_nameDef]'s back hurts a bit. Nothing too bad. + +
  • +
  • + growing + + + [PAWN_nameDef] has difficulties controlling [PAWN_possessive] balance. It hurts whenever [PAWN_pronoun] is moving. + +
  • +
  • + grown + + [PAWN_nameDef]'s spine has become flexible. [PAWN_pronoun] would likely win a contortion contest. + 0.15 + + 15 + + +
  • +
    +
    + + + + + A reinforced spine. + EtherReinforcedSpine + Equine + + +
  • Spine
  • +
    + +
  • + initial + + [PAWN_nameDef]'s back hurts a bit. Nothing too bad. + +
  • +
  • + growing + + + [PAWN_nameDef]'s back is very painful, like if [PAWN_possessive]'s spine was rearranging. + +
  • +
  • + grown + + [PAWN_nameDef]'s spine is stronger than ever. [PAWN_pronoun] is now able to carry a lot, and fast! + 0.2 + + 0.75 + 125 + + +
  • +
    +
    + + + + + A hump of a dromedary + EtherDromedaryHump + +
  • DromedaryMorph
  • +
    + + +
  • Spine
  • +
    + +
  • + initial + + [PAWN_nameDef] has a strange ache in their back. Nothing too bad though. + + + + +
  • +
  • + growing + + Reserves of fat has been diverted to [PAWN_nameDef]'s back where a noticiable hump has emerged. It'll keep [PAWN_objective] fed in a pinch. + + Parts/Dromedary/Dromedary_Hump + + + 15 + + 0.25 + +
  • +
  • + grown + + [PAWN_nameDef]'s hump has grown so that [PAWN_objective] can go days without food. The increased circulation also helps [PAWN_objective] cool off. + + Parts/Dromedary/Dromedary_Hump + + + 30 + + 0.5 + +
  • +
    +
    + + + + + A thick and scaled shell. The ultimate cumbersome defense on the Rimworld! + EtherTortoiseShell + EtherTestudinidaeShell + +
  • TortoiseMorph
  • +
    + + +
  • Spine
  • +
    + +
  • + initial + + Thick plates of bone are beginning to grow out from [PAWN_nameDef]'s chest and back. + + + + + +
  • +
  • + growing + + The two halves of the bone plates have formed a precursor shell around [PAWN_nameDef]'s body. It's still fragile at the moment, but thickening constantly. + + Parts/Tortoise/Tortoise_Shell + Parts/Tortoise/Tortoise_Shell_Behind + + +
  • +
  • + grown + + A thick and scaled shell for unmatched protection against predators encases [PAWN_nameDef]'s body. [PAWN_pronoun] has a strange urge to live in a sewer. + + Parts/Tortoise/Tortoise_Shell + Parts/Tortoise/Tortoise_Shell_Behind + + +
  • + Moving + -0.2 +
  • + + + 0.4 + + + +
    + +
  • + paragon + + 2.5 + With rigorous acclimation training [PAWN_pronoun] has regained speed and dexterity beyond [PAWN_objective] could have dreamed! [PAWN_possessive] dreams to to live in a sewer and a study martial arts. + + Parts/Tortoise/Tortoise_Shell + Parts/Tortoise/Tortoise_Shell_Behind + + + 0.4 + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/TorsoMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/TorsoMutations.xml new file mode 100644 index 000000000..83378a564 --- /dev/null +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/TorsoMutations.xml @@ -0,0 +1,186 @@ + + + + + + +
  • + growing + + 0.2 + +
  • +
    +
    + + + + + A torso with extremely dense muscles, which is able to lift heavier objects with ease. + EtherHypermyofibrilization + Powerful + + +
  • Powerful
  • +
    + +
  • + initial + + [PAWN_nameDef]'s muscles are growing thicker by the second. + +
  • +
  • + growing + + [PAWN_nameDef]'s muscles are much thicker and bulkier. They're dense with veins and raw power. Such an impressive growth is very painful. + 3 + +
  • +
  • + grown + + [PAWN_nameDef] is a veritable wall of raw power and strength, owing to the powerful mutagen coursing through [PAWN_possessive] veins. + 3.5 + 2 + +
  • + Moving + -0.1 +
  • +
  • + Metabolism + -0.15 +
  • + + + -0.1 + 0.6 + + + +
    +
    + + + + + A tough torso, capable of resisting a lot more force than the average torso. + EtherToughTorso + +
  • Scavenger
  • +
  • Pantherine
  • +
  • Ursine
  • +
  • Equine
  • +
  • WildBovid
  • +
  • BigCervid
  • +
  • AlphabeaverMorph
  • +
    + + +
  • + initial + + [PAWN_nameDef]'s torso seems to be a little bulkier than before. + +
  • +
  • + growing + + [PAWN_nameDef]'s torso is tougher and could shrug off a firm hit easily. However, the quick muscle growth is too painful for [PAWN_nameDef] to be useful yet. + +
  • +
  • + grown + + [PAWN_nameDef]'s torso is practically made of metal given how tough it is. [PAWN_pronoun] is a brick wall of muscle. + 1.5 + +
  • + Moving + -0.05 +
  • + + + 0.25 + 0.3 + + + +
    +
    + + + + + A slim and quite frail torso. + EtherDiminuativeTorso + + +
  • Leporid
  • +
  • Rodent
  • +
  • Monkeys
  • +
    + +
  • + initial + + [PAWN_nameDef]'s torso is beginning to slim and shed excess weight. Eating more doesn't seem to have any effect. + +
  • +
  • + growing + + [PAWN_nameDef]'s torso is becoming slimmer than before, making them easy to pick up. The weight draining is quite hurtful. + +
  • +
  • + grown + + [PAWN_nameDef]'s body is quite a bit slimmer than before. They'd be easy to push over in a fight, and don't stand as much of a chance in combat as before. + 0.7 + + -0.5 + + +
  • +
    +
    + + + + + Light and maneuverable bones. + EtherPneumatizedSkeleton + Anserigalliform + + +
  • + initial + + [PAWN_nameDef]'s bones ache slightly. They seem to be getting somewhat lighter. + +
  • +
  • + growing + + [PAWN_nameDef]'s bones are feeling lighter with every passing hour. They're slightly more fragile and are causing pain to [PAWN_nameDef]. + +
  • +
  • + grown + + [PAWN_nameDef]'s bones are light and maneuverable. They're denser than human bones, but contain air pockets to reduce the overall weight. + 0.8 + +
  • + Moving + +0.1 +
  • + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/MutagenDealer.xml b/1.5/Defs/MutagenDealer.xml new file mode 100644 index 000000000..7d310c302 --- /dev/null +++ b/1.5/Defs/MutagenDealer.xml @@ -0,0 +1,320 @@ + + + PawnmorpherTrader + + false + 1 + + + +
  • + Silver + 750~1200 +
  • +
  • + Chaobulb + 50~150 +
  • +
  • + Glowvine + 40~80 +
  • +
  • + ComponentIndustrial + 15~30 +
  • +
  • + Mutanite + 2~8 +
  • +
  • + Neutroamine + 70~160 +
  • +
  • + MedicineIndustrial + 10~20 +
  • +
  • + Morphsilk + 125~200 +
  • +
  • + PM_Hazsilk + 80~130 +
  • + + +
  • + TFEgg + 10~40 +
  • +
  • + TFMilk + 10~40 +
  • +
  • + MechaniteSlurry + 6~10 +
  • +
  • + Antigen + 1~5 +
  • +
  • + MutagenStabiliser + 1~5 +
  • +
  • + MutagenAccelerator + 1~5 +
  • +
  • + Mutapill + +
  • MutagenStabiliser
  • +
  • MutagenAccelerator
  • + + 2~4 + 1~3 + +
  • + PM_HaltCream + 1~3 +
  • +
  • + PM_AdaptionCream + 1~3 +
  • +
  • + ReversionSyringe + -2~1 +
  • +
  • + Serum + +
  • RandomPowerfulTransformer
  • + + 2~5 + 1~3 + +
  • + RandomPowerfulTransformer + -18~1 +
  • +
  • + Animal + 0~3 +
  • +
  • + PM_ExperimentalInjector + 1~2 +
  • + + + + + + + + + + + + + + + + + +
  • + false + -1~4 +
  • + + +
  • + false + 2~4 +
  • + + +
  • + +
  • AnimalChaotic
  • +
  • AnimalCommon
  • +
  • AnimalUncommon
  • +
  • AnimalFighter
  • + + 1~3 + 1~3 + + + +
  • Art
  • +
  • Drugs
  • +
  • + + + + + + PawnmorpherTraderOrbital + + true + 1 + + + +
  • + Silver + 2000~4000 +
  • +
  • + Chaobulb + 100~300 +
  • +
  • + Glowvine + 80~160 +
  • +
  • + ComponentIndustrial + 30~40 +
  • +
  • + Mutanite + 5~30 +
  • +
  • + Neutroamine + 100~500 +
  • +
  • + MedicineIndustrial + 20~300 +
  • +
  • + Morphsilk + 150~300 +
  • +
  • + PM_Hazsilk + 100~200 +
  • + + +
  • + TFEgg + 30~100 +
  • +
  • + TFMilk + 30~100 +
  • +
  • + MechaniteSlurry + 15~30 +
  • +
  • + Antigen + 5~15 +
  • +
  • + MutagenStabiliser + 5~10 +
  • +
  • + MutagenAccelerator + 5~10 +
  • +
  • + Mutapill + +
  • MutagenStabiliser
  • +
  • MutagenAccelerator
  • + + 4~6 + 2~5 + +
  • + PM_HaltCream + 2~5 +
  • +
  • + PM_AdaptionCream + 2~5 +
  • +
  • + ReversionSyringe + 1~2 +
  • +
  • + Serum + +
  • RandomPowerfulTransformer
  • + + 5~7 + 3~5 + +
  • + RandomPowerfulTransformer + -8~1 +
  • +
  • + Animal + 3~7 +
  • +
  • + PM_ExperimentalInjector + 5~7 +
  • + + + + + + + + + + + + + + + + + +
  • + false + 1~10 +
  • + + +
  • + false + 2~4 +
  • + + +
  • + false + +
  • AnimalChaotic
  • +
  • AnimalCommon
  • +
  • AnimalUncommon
  • +
  • AnimalFighter
  • + + 2~4 + 1~3 + + + +
  • Art
  • +
  • Drugs
  • +
  • + + + + \ No newline at end of file diff --git a/1.5/Defs/Mutagens/Bases.xml b/1.5/Defs/Mutagens/Bases.xml new file mode 100644 index 000000000..90685a05c --- /dev/null +++ b/1.5/Defs/Mutagens/Bases.xml @@ -0,0 +1,51 @@ + + + + Pawnmorph.TfSys.SimpleMechaniteMutagen + WasAnimalRelieved + WasAnimal + WasAnimalPrimalWish + FormerHuman + Animalistic + + 20 + 0.07 + Morphsilk + + +
  • StabiliserHigh
  • + + +
  • + 0.1 + 0.2 +
  • +
    + + + + +
  • + +
  • + + Paragon + 0.003 +
  • + + + +
  • + AnimalAffinity + Animals + 3 + 0.07 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Mutagens/ChaoticMutagens.xml b/1.5/Defs/Mutagens/ChaoticMutagens.xml new file mode 100644 index 000000000..ff8e5148d --- /dev/null +++ b/1.5/Defs/Mutagens/ChaoticMutagens.xml @@ -0,0 +1,119 @@ + + + + ChaoticMutagen + 0.5 + 0.05 + +
  • + +
  • + + MutagenInfused + 0.15 + 0 +
  • +
  • + MutagenInfused + 0.15 + 1 +
  • +
  • + ColorationNatural + 0.0015 +
  • +
  • + ColorationAlbinism + 0.00075 +
  • +
  • + ColorationMelanism + 0.00075 +
  • +
  • + ColorationUnnatural + 0.0005 +
  • + + +
    + + + 100 + +
    + + + + PM_WeaponChaoticMutagen + + +
  • mutagen_cause->bulidup from [weapon_label]
  • +
  • caused_by->caused by
  • +
  • caused_by->because of
  • +
  • caused_by->after
  • +
    +
    +
    + + + + PM_FalloutMutagen + + +
  • mutagen_cause->bulidup from mutagenic fallout
  • +
  • caused_by->caused by
  • +
  • caused_by->because of
  • +
  • caused_by->after
  • +
    +
    +
    + + + PM_MutaniteMutagen + + +
  • mutagen_cause->standing too close to mutanite
  • +
  • mutagen_cause->licking weird glowing rocks
  • +
  • caused_by->from
  • +
  • caused_by->caused by
  • +
  • caused_by->because of
  • +
  • caused_by->after
  • +
    +
    +
    + + + + PM_ChaobulbHarvest + + + +
  • mutagen_cause->failed chaobulb harvest
  • +
  • caused_by->from
  • +
  • caused_by->caused by
  • +
  • caused_by->because of
  • +
  • caused_by->after
  • +
    +
    +
    + + + PM_FightingMutagen + + +
  • mutagen_cause->a fight
  • +
  • mutagen_cause->fighting someone
  • +
  • caused_by->from
  • +
  • caused_by->after
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Mutagens/defaultMutagen.xml b/1.5/Defs/Mutagens/defaultMutagen.xml new file mode 100644 index 000000000..feb3f3880 --- /dev/null +++ b/1.5/Defs/Mutagens/defaultMutagen.xml @@ -0,0 +1,51 @@ + + + + defaultMutagen + + + PM_ChamberMutagen + true + true + + + +
  • mutagen_cause->being in a chamber
  • +
  • mutagen_cause->mutachamber
  • +
    +
    +
    + + + MergeMutagen + + Pawnmorph.TfSys.MergeMutagen + WasMergedRelieved + WasMerged + MergedPawn + false + + 100 + 0.5 + 1.5 + + + +
  • mutagen_cause->being in a chamber
  • +
  • mutagen_cause->mutachamber
  • +
    +
    +
    + + + + AspectGivingMutagen + + + + + + HealerMutagen + + +
    \ No newline at end of file diff --git a/1.5/Defs/Needs/SapientAnimals.xml b/1.5/Defs/Needs/SapientAnimals.xml new file mode 100644 index 000000000..792b8a3a0 --- /dev/null +++ b/1.5/Defs/Needs/SapientAnimals.xml @@ -0,0 +1,19 @@ + + + + SapientAnimalControl + Pawnmorph.Need_Control + + Sapience represents how much humanity a former human has left. If it gets too low, they will become feral, potentially irreversibly. + true + Animal + 0.32 + 0.12 + 0.06 + 1000 + true + true + false + + + diff --git a/1.5/Defs/PawnColumnDefs.xml b/1.5/Defs/PawnColumnDefs.xml new file mode 100644 index 000000000..1ce460b9a --- /dev/null +++ b/1.5/Defs/PawnColumnDefs.xml @@ -0,0 +1,11 @@ + + + + RecruitSapientFormerHuman + Pawnmorph.PawnColumnWorker_RecruitSapientAnimal + true + UI/Icons/Animal/Tame + Tame a wild animal. + true + + \ No newline at end of file diff --git a/1.5/Defs/PawnKinds/Example.xml b/1.5/Defs/PawnKinds/Example.xml new file mode 100644 index 000000000..7214fabcb --- /dev/null +++ b/1.5/Defs/PawnKinds/Example.xml @@ -0,0 +1,39 @@ + + + + + + +
  • + +
  • Temperate
  • + + + +
  • Combat
  • +
    + +
  • HuskyMorph
  • +
    + + + 0~5 + + + +
  • + EtherBroken + 0 +
  • +
    + + + 0~4 + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/PawnKinds/Pawnkinds_Raiders.xml b/1.5/Defs/PawnKinds/Pawnkinds_Raiders.xml new file mode 100644 index 000000000..7ec578199 --- /dev/null +++ b/1.5/Defs/PawnKinds/Pawnkinds_Raiders.xml @@ -0,0 +1,239 @@ + + + + Muta_Mercenary_Rocket + + 6~10 + 1200~1200 + +
  • PMMutaRocket
  • +
    + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Grenadier_Mutagenic + + 70 + +
  • GrenadeMutagenic
  • +
    + 15~24 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Grenadier_Destructive + + 70 + true + true + +
  • GrenadeDestructive
  • +
    + 10~16 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Grenadier_EMP + + 55 + +
  • GrenadeEMP
  • +
    + 15~24 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Grenadier_Smoke + + 55 + +
  • GrenadeSmoke
  • +
    + 400~400 + 18~28 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Mutagunner + 6~10 + 650~900 + +
  • PMGunMutagenic
  • +
    + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Gunner + + 6~10 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Sniper + 13~20 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Slasher + 10~16 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Mutaslasher + + 14~20 + 200~500 + +
  • PMMutagenicMelee
  • +
  • PMMutagenicMeleeAdvanced
  • +
    + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Heavy + + heavy mercenaries + 140 + 0.7~3.2 + +
  • IndustrialBasic
  • +
  • IndustrialAdvanced
  • +
  • IndustrialMilitaryBasic
  • +
  • IndustrialMilitaryAdvanced
  • +
  • BeltDefensePop
  • +
    + 200~350 + 0.5 + 1200~1200 + +
  • GunHeavy
  • +
  • GunSingleUse
  • +
    + 14~23 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    + + + Muta_Mercenary_Elite + 15~23 + +
  • + Torso + PM_Hazsilk +
  • +
  • + Legs + PM_Hazsilk +
  • +
    +
    +
    diff --git a/1.5/Defs/Pawnmorpher_Research.xml b/1.5/Defs/Pawnmorpher_Research.xml new file mode 100644 index 000000000..173625693 --- /dev/null +++ b/1.5/Defs/Pawnmorpher_Research.xml @@ -0,0 +1,268 @@ + + + Pawnmorpher + Industrial + 500 + + + + + Spacer + 1000 + HiTechResearchBench + + + + 2000 + +
  • MultiAnalyzer
  • +
    +
    + + + + + MutagenExtraction + + It should be possible to extract mechanites from eggs and milk produced by partially morphed pawns. This can be done at a drug lab. + 400 + Industrial + Pawnmorpher + 0.00 + 1.40 + +
  • DrugProduction
  • +
    +
    + + + + + MutagenicPlantSowing + + By exposing plants to mutagenic mechanites it's possible to grow new and 'improved' variants of them. + Medieval + Pawnmorpher + 1.00 + 2.10 + + + + SerumSynthesis + + By careful recalibration of mechanite components, we may be able to make our own mutagenic serums. This costs mechanite slurry to do, and unlocks creation of basic mechanite serums. Also unlocks a bench for working with these mutagens, as the drug lab will not be suitable for further projects. + 600 + Industrial + Pawnmorpher + 1.00 + 1.40 + +
  • MutagenExtraction
  • +
    +
    + + + + + LozengeProduction + + We can now press some mutagen into booster pills that will enhance production for our chook/cowmorphs. + 800 + Industrial + Pawnmorpher + 2.00 + 0.70 + +
  • SerumSynthesis
  • +
    +
    + + + AdvancedSerumSynthesis + + Using some more advanced techniques, we can target two distinct types of mutation — production and combat. Production can be used to make pawns more useful, allowing them to produce milk, eggs and other items. + 1500 + Industrial + Pawnmorpher + 2.00 + 1.40 + +
  • SerumSynthesis
  • +
    +
    + + + Stabilisation + + Interesting effects come into play when mutagen is introduced to neutroamine. Among other theorised things, it might be possible to halt and prevent pawns from undergoing further mutations. + 800 + Spacer + Pawnmorpher + 2.00 + 2.10 + +
  • SerumSynthesis
  • +
    +
    + + + + + PM_MutagenStorage + + Develop methods of large scale mutagenic slurry production, storage and transfer + 500 + 3.00 + 0.00 + +
  • MutagenExtraction
  • +
    +
    + + + AdvancedExtraction + + With a pawn skilled in crafting, it should be possible to repurpose the mutagenic mechanites into a variety of different configurations, that nullify their mutagenic effect. In this way, we will be able to create other non-mutagenic mechanite serums of our own such as healers and even resurrectors. + 3000 + Spacer + Pawnmorpher + 3.00 + 0.70 + HiTechResearchBench + +
  • AdvancedSerumSynthesis
  • +
    +
    + + + PowerfulSerumSynthesis + + For now, serums only seem to keep the end size of the pawn roughly similar to nominal. Pursuing this path will allow the creation of serums where size can be increased, at the cost of huge hunger. It can be unstable. + 2000 + Spacer + Pawnmorpher + 3.00 + 1.40 + +
  • AdvancedSerumSynthesis
  • +
    +
    + + + Injectors + + Isolating the actual genomes of the mechanites involved allows us to create distinct strains of mutagens for specific animals. However, in order to isolate the genome a given animal, the genetic structure of said animal will need to be sequenced from live specimens and stored in a database to cross-reference it. This can be done by refitting a bolt-action rifle to fire 'tagging' rounds, to add their genetic code to a morphsilk tape-based genebank. + 1500 + Spacer + Pawnmorpher + 3.00 + 2.10 + HiTechResearchBench + +
  • AdvancedSerumSynthesis
  • +
  • Stabilisation
  • +
    +
    + + + Reversion + + With this, it'll be possible to turn former humans back into humans again — ones made here, and ones we find elsewhere. This is only possible because mechanites seem to store everything about the pawn prior to their transformation. However, it will not help permanent ferals. + 1000 + Spacer + Pawnmorpher + 3.00 + 2.80 + HiTechResearchBench + +
  • Stabilisation
  • +
    +
    + + + + + MutagenCentrifuging + + Develop plans to construct a centrifuge to refine slurry and chaobulbs back to mutanite by a process involving the straining of mechanites through morphsilk. This process will not be efficient and will use quite a bit of power, but if mutanite is otherwise unobtainable...this is one way to get it. It will also be possible to forgo safety protocols to speed up the process, though this may have unintended effects on anyone nearby. + 3000 + Spacer + Pawnmorpher + 4.00 + 0.00 + HiTechResearchBench + +
  • PM_MutagenStorage
  • +
    + +
  • MultiAnalyzer
  • +
    +
    + + + MutagenChambers + + Unlocks a bath of mutagen which pawns can enter or be carried to. It can be used to selectively apply specific mutations to said pawn, or quickly transform them into an animal of our chosing. Reality can be whatever we want. + 1500 + Spacer + Pawnmorpher + 4.00 + 1.40 + HiTechResearchBench + +
  • MultiAnalyzer
  • +
    + +
  • Injectors
  • +
  • PowerfulSerumSynthesis
  • +
    +
    + + + PowerfulInjectors + + Fitting the amount of slurry into an injector required for this might be a difficult task, but it guarantees a specific strain of powerful beast if used correctly. + 1200 + Spacer + Pawnmorpher + 4.00 + 2.10 + HiTechResearchBench + +
  • MultiAnalyzer
  • +
    + +
  • Injectors
  • +
  • PowerfulSerumSynthesis
  • +
    +
    + + + MutagenicWeapons + + By infusing mutagenic rock into weapons, we may be able to make a host of weapons that transform a target instead of outright killing them...though the victim may not always be happy about it. + 1500 + Spacer + Pawnmorpher + 4.00 + 2.80 + HiTechResearchBench + +
  • MultiAnalyzer
  • +
    + +
  • Injectors
  • +
    +
    + + + PM_MutationSequencer + + Decrypts information stored in animal genomes into usable mutations. Must be manned, but over time it will unlock and store mutations in genebanks, depending on the stored animals in your databases. + 4.00 + 3.50 + +
  • Injectors
  • +
    +
    +
    diff --git a/1.5/Defs/PrisonerInteractionModes.xml b/1.5/Defs/PrisonerInteractionModes.xml new file mode 100644 index 000000000..125a540ba --- /dev/null +++ b/1.5/Defs/PrisonerInteractionModes.xml @@ -0,0 +1,8 @@ + + + PM_Transform + + 35 + A warden will bring the prisonner to the nearest chamber. + + \ No newline at end of file diff --git a/1.5/Defs/Races/Chaocombo.xml b/1.5/Defs/Races/Chaocombo.xml new file mode 100644 index 000000000..12357e1d5 --- /dev/null +++ b/1.5/Defs/Races/Chaocombo.xml @@ -0,0 +1,193 @@ + + + EtherHellhound + + Hellhounds resemble the more common warg, but they are even larger and more terrifying, with unnatural bone claws, large horns, and spikes all over their body. They are extremely vicious and possess a cunning intelligence. Every hellhound was once a human who was transformed by a strange interaction between mutagenic mechanites and luciferium mechanites.\n\nNo one knows why they resemble ancient depictions of demons. Scientists suspect it may be an intentional subroutine built into the mechanites for unknown reasons, while the more superstitious believe hellhounds were cursed for making a deal with a dark god. + + 5.0 + 450 + -40 + + +
  • + + +
  • Scratch
  • + + 13 + 1.5 + FrontLeftPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Scratch
  • + + 13 + 1.5 + FrontRightPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Bite
  • + + 15 + 2 + Teeth + 0.9 + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Blunt
  • + + 5 + 2 + HeadAttackTool + true + 0.2 + +
    + + QuadrupedAnimalWithPawsAndTail + true + 2.3 + 0.0 + 1.7 + 0.25 + 1.4 + CarnivoreAnimalStrict + Leather_Wolf + 26 + 1 + Advanced + 0.60 + 0.35 + 0.35 + + +
  • (0.5, 0)
  • +
  • (1, 1)
  • +
  • (2, 1.7)
  • +
  • (2.5, 0.7)
  • +
  • (3, 0)
  • +
    +
    + 15 + +
  • + AnimalBaby + 0 +
  • +
  • + AnimalJuvenile + 0.2 +
  • +
  • + AnimalAdult + 0.45 + Pawn_Warg_Wounded + Pawn_Warg_Death + Pawn_Warg_Call + Pawn_Warg_Angry +
  • +
    + Pawn_Melee_SmallScratch_HitPawn + Pawn_Melee_SmallScratch_HitBuilding + Pawn_Melee_SmallScratch_Miss +
    + +
  • AnimalUncommon
  • +
  • AnimalFighter
  • +
    + +
  • + true +
  • +
    + +
  • + FormerHumanChaomorph +
  • +
    +
    + + + EtherHellhound + + EtherHellhound + 160 + 0.5 + +
  • + + hellhound puppies + + Mobs/Chaocombos/Hellhound + 1.05 + (123,104,89) + + + Things/Pawn/Animal/Warg/Dessicated_Warg + 1.05 + +
  • +
  • + + Mobs/Chaocombos/Hellhound + 2 + (123,104,89) + + (0.25, 0.3, 0.25) + (0,0,-0.15) + + + + Things/Pawn/Animal/Warg/Dessicated_Warg + 1.7 + +
  • +
  • + + Mobs/Chaocombos/Hellhound + 2.55 + (123,104,89) + + (0.3, 0.4, 0.3) + (0,0,-0.15) + + + + Things/Pawn/Animal/Warg/Dessicated_Warg + 2.05 + +
  • +
    +
    + +
    diff --git a/1.5/Defs/Races/Chaocreatures/Bases.xml b/1.5/Defs/Races/Chaocreatures/Bases.xml new file mode 100644 index 000000000..50bad066d --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Bases.xml @@ -0,0 +1,128 @@ + + + +
  • + FormerHumanChaomorph +
  • +
    + + Chaomorph + 22 + 20000 + 99999999 + Advanced + +
  • + AnimalBaby + 0 +
  • +
  • + AnimalJuvenile + 0.2 +
  • +
  • + AnimalAdult + 0.45 +
  • +
    + Leather_Chao + Pawn_Melee_BigBash_HitPawn + Pawn_Melee_BigBash_HitBuilding + Pawn_Melee_BigBash_Miss +
    + +
  • Chaomorph
  • +
    +
    + + +
  • + true +
  • +
    + +
  • + Chaomorph + 10 +
  • +
    + + 2.9 + 0.85 + + +
  • AnimalChaotic
  • +
    +
    + + + + + +
  • + AnimalBaby + 0 +
  • +
  • + AnimalJuvenile + 2.0 +
  • +
  • + AnimalAdult + 4.0 + Pawn_Thrumbo_Call + Pawn_Thrumbo_Angry + Pawn_Thrumbo_Pain + Pawn_Thrumbo_Death +
  • +
    + false + 7 + 3.5 + 220 + 1.00 +
    + +
  • AnimalExotic
  • +
    + +
  • + Special + -1 +
  • +
  • + PM_CThrumboTfThought + PM_ChaothrumboBackstory +
  • +
    +
    + + + +
  • + Pawnmorph.ThingComps.AlwaysMergedPawn +
  • +
    + +
  • + Merge + 10 +
  • +
    + + Chaomeld + true + 2 + OmnivoreAnimal + 0.1 + 1.7 + 1.5 + 0.10 + 0.02 + Chaocow + + +
  • AnimalChaoticMerged
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaoboar.xml b/1.5/Defs/Races/Chaocreatures/Chaoboar.xml new file mode 100644 index 000000000..55fc8e4b0 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaoboar.xml @@ -0,0 +1,195 @@ + + + Chaoboar + + A tusked mix of what seems to be elephantine and porcine features, chaoboars are the result of extreme mutagenic exposure. They have hands of a sort, with thick hoofnails at the end, but they show remarkable aptitude with them if sapient. + +
  • + FormerHumanChaoboar +
  • +
  • + Chaomorph + 10 +
  • +
    + + 10 + -20 + 1200 + + +
  • + + +
  • Scratch
  • + + 14 + 2 + HornAttackTool + +
  • + + +
  • Scratch
  • +
  • Stab
  • + + 30 + 2.6 + TuskAttackTool + +
  • + + +
  • Blunt
  • + + 7 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Blunt
  • + + 10 + 2 + LeftHand + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Blunt
  • + + 10 + 2 + RightHand + + +
  • + Stun + 14 +
  • +
    +
    + +
    + + Chaoboar + true + 1.5 + OmnivoreAnimal, OmnivoreRoughAnimal + 0.30 + Chaocow + 0.3 + 0 + +
    + + Chaoboar + + Chaoboar + 65 + 1.1 + Chaoboar + Chaosow + + 1 + 2 + + +
  • + + kits + + Mobs/Chaoferal/Chaoboar + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Chaoboar + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Things/Pawn/Animal/WildBoar/Dessicated_WildBoar + 1.3 + + + Things/Pawn/Animal/WildBoar/Dessicated_WildBoar + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Chaoboar + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Chaoboar + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Things/Pawn/Animal/WildBoar/Dessicated_WildBoar + 2.15 + + + Things/Pawn/Animal/WildBoar/Dessicated_WildBoar + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Chaoboar + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Chaoboar + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Things/Pawn/Animal/WildBoar/Dessicated_WildBoar + 2.7 + + + Things/Pawn/Animal/WildBoar/Dessicated_WildBoar + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaoboom.xml b/1.5/Defs/Races/Chaocreatures/Chaoboom.xml new file mode 100644 index 000000000..a64550b1e --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaoboom.xml @@ -0,0 +1,194 @@ + + + Chaoboom + + A large, unpredictable beast only found through extreme mutagenic exposure upon a human. Chaobooms produce chemfuel, in higher quantities than boomalopes. + + 4.5 + -30 + 1000 + + +
  • + Chemfuel + 1 + 20 + false +
  • +
    + +
  • + +
  • Bite
  • + + 8.8 + 2.6 + Teeth + 0.7 + +
  • + + +
  • Scratch
  • + + 19 + 2 + HornAttackTool + +
  • + + +
  • Blunt
  • + + 7 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 10 + 2 + FrontLeftLeg + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Scratch
  • + + 10 + 2 + FrontRightLeg + + +
  • + Stun + 14 +
  • +
    +
    + +
    + + Chaoboom + false + EtherGun.DeathActionWorker_MutagenicExplosion + 2.0 + OmnivoreAnimal, OmnivoreRoughAnimal + 0.50 + Chaocow + 0.6 + 0.1 + +
    + + Chaoboom + + Chaoboom + 190 + 1.1 + Chaostag + Chaodoe + + 1 + 2 + + +
  • + + fawns + + Mobs/Chaoferal/chaoboom + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/chaoboom + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Things/Pawn/Animal/Cow/Dessicated_Bull + 1.3 + + + Things/Pawn/Animal/Cow/Dessicated_Cow + 1.25 + +
  • +
  • + + Mobs/Chaoferal/chaoboom + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/chaoboom + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Things/Pawn/Animal/Cow/Dessicated_Bull + 2.15 + + + Things/Pawn/Animal/Cow/Dessicated_Cow + 2.0 + +
  • +
  • + + Mobs/Chaoferal/chaoboom + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/chaoboom + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Things/Pawn/Animal/Cow/Dessicated_Bull + 2.7 + + + Things/Pawn/Animal/Cow/Dessicated_Cow + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaocow.xml b/1.5/Defs/Races/Chaocreatures/Chaocow.xml new file mode 100644 index 000000000..184d1d5ef --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaocow.xml @@ -0,0 +1,202 @@ + + + Chaocow + + A large, unpredictable beast only found through extreme mutagenic exposure upon a human. They cannot breed, but are very powerful fighters. They also produce milk, if only a mutagen-infused strain that you should be careful of eating. + + 4.5 + -30 + 1000 + + +
  • + TFMilk + 1 + 15 +
  • +
    + +
  • + +
  • Bite
  • + + 8.8 + 2.6 + Teeth + 0.7 + +
  • + + +
  • Scratch
  • + + 19 + 2 + HornAttackTool + +
  • + + +
  • Scratch
  • +
  • Stab
  • + + 25 + 2.6 + TuskAttackTool + +
  • + + +
  • Blunt
  • + + 7 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 17 + 2 + FrontLeftPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Scratch
  • + + 17 + 2 + FrontRightPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
    + + Chaocow + false + 2.0 + OmnivoreAnimal, OmnivoreRoughAnimal + 0.50 + chaomeat + 0.5 + 0.05 + +
    + + Chaocow + + Chaocow + 190 + 1.1 + Chaobull + Chaocow + + 1 + 2 + + +
  • + + calves + + Mobs/Chaoferal/Chaobull + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Chaocow + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Things/Pawn/Animal/Cow/Dessicated_Bull + 1.3 + + + Things/Pawn/Animal/Cow/Dessicated_Cow + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Chaobull + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Chaocow + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Things/Pawn/Animal/Cow/Dessicated_Bull + 2.15 + + + Things/Pawn/Animal/Cow/Dessicated_Cow + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Chaobull + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Chaocow + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Things/Pawn/Animal/Cow/Dessicated_Bull + 2.7 + + + Things/Pawn/Animal/Cow/Dessicated_Cow + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaodino.xml b/1.5/Defs/Races/Chaocreatures/Chaodino.xml new file mode 100644 index 000000000..f23cc5e42 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaodino.xml @@ -0,0 +1,190 @@ + + + Chaodino + + A raptor-like, nimble and clawed carnivore terrifies the local populace. Outrunning most prey, the Chaodino is one of the fastest, and fluffiest killers on the rim. If you planned to revert it, you may have trouble — they might eat you first. Like all chaomorphs, they are sterile. However, these chaodinos also produce many clutches of mutagen-infused eggs. + + 15 + -5 + 50 + 1500 + 0.50 + 0.50 + + +
  • + TFEgg + TFEgg + 1 + 2 + 1 + 5 +
  • +
    + +
  • + +
  • Bite
  • + + 15 + 1 + Beak + 0.7 + +
  • + + +
  • Blunt
  • + + 4 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 17 + 0.5 + FrontLeftPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Scratch
  • + + 17 + 0.5 + FrontRightPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
    + + Chaodino + true + true + 1.5 + CarnivoreAnimal, OvivoreAnimal + 0.90 + Chaocow + 1 + 0.1 + +
    + + Chaodino + + Chaodino + 210 + 1.1 + Chaoraptor + Chaohen + + 1 + 2 + + +
  • + + calves + + Mobs/Chaoferal/Chaodino + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Chaodino + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Things/Pawn/Animal/Chicken/Dessicated_Chicken + 1.3 + + + Things/Pawn/Animal/Chicken/Dessicated_Chicken + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Chaodino + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Chaodino + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Things/Pawn/Animal/Chicken/Dessicated_Chicken + 2.15 + + + Things/Pawn/Animal/Chicken/Dessicated_Chicken + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Chaodino + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Chaodino + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Things/Pawn/Animal/Chicken/Dessicated_Chicken + 2.7 + + + Things/Pawn/Animal/Chicken/Dessicated_Chicken + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaofox.xml b/1.5/Defs/Races/Chaocreatures/Chaofox.xml new file mode 100644 index 000000000..46f21500c --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaofox.xml @@ -0,0 +1,180 @@ + + + Chaofox + + A large, graceful creature that most resembles a mix of fox and horse that can move quite swiftly. Like all chaomorphs, they are sterile. Also, the wings are non-functional because wing-powered flight as a concept does not exist on the rim — I mean they're far too heavy. + + 10 + -20 + 1200 + 1.8 + + +
  • + +
  • Bite
  • + + 5.8 + 2.6 + Teeth + 0.7 + +
  • + + +
  • Blunt
  • + + 4 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 7 + 2 + FrontLeftPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • Scratch
  • + + 7 + 2 + FrontRightPaw + + +
  • + Stun + 14 +
  • +
    +
    + +
    + + Chaofox + true + 1.5 + OmnivoreAnimal, OmnivoreRoughAnimal + 0.30 + Chaocow + 0.3 + 0 + true + + + +
    + + Chaofox + + Chaofox + 65 + 1.1 + Chaofox + Chaovix + + 1 + 2 + + +
  • + + kits + + Mobs/Chaoferal/Chaofox + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Chaofox + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Things/Pawn/Animal/Fox_Red/Dessicated_Fox_Red + 1.3 + + + Things/Pawn/Animal/Fox_Red/Dessicated_Fox_Red + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Chaofox + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Chaofox + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Things/Pawn/Animal/Fox_Red/Dessicated_Fox_Red + 2.15 + + + Things/Pawn/Animal/Fox_Red/Dessicated_Fox_Red + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Chaofox + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Chaofox + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Things/Pawn/Animal/Fox_Red/Dessicated_Fox_Red + 2.7 + + + Things/Pawn/Animal/Fox_Red/Dessicated_Fox_Red + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/ChaofusionRhino.xml b/1.5/Defs/Races/Chaocreatures/ChaofusionRhino.xml new file mode 100644 index 000000000..57403d036 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/ChaofusionRhino.xml @@ -0,0 +1,215 @@ + + + ChaofusionRhino + + A towering fusion of two morphs, who first begin their transformation inside a mutagenic chamber, which one is then siphoned to and melded with another. They share two minds, yet one body — so while they have higher consciousness it may take some time for them to get used to their new arragement. This meld is gigantic and terrifyingly efficient in combat. + + 4 + -30 + 40 + 5000 + 0.70 + 0.50 + 0.30 + + +
  • + Pawnmorph.ThingComps.AlwaysMergedPawn +
  • +
    + +
  • + Merge + 10 +
  • +
    + +
  • + +
  • Bite
  • + + 15 + 1 + Teeth + 0.7 + +
  • + +
  • Bite
  • + + 5 + 1 + Teeth + 0.7 + +
  • + + +
  • Blunt
  • + + 4 + 0.3 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Blunt
  • + + 5 + 0.4 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 25 + 2 + HornAttackTool + +
  • + + +
  • Scratch
  • + + 30 + 2 + HornAttackTool + +
    + + OmnivoreAnimal + Chaofusion + 1000 + 0.7 + 1 + 0.05 + 4 + 8 + 2.2 + +
  • + AnimalBaby + 0 +
  • +
  • + AnimalJuvenile + 0.1 +
  • +
  • + AnimalAdult + 0.2 +
  • +
    + Chaocow + Leather_Thrumbo +
    + +
  • AnimalChaoticMerged
  • +
    +
    + + ChaofusionRhino + + ChaofusionRhino + 300 + 1.1 + Chaofusion + Chaofusion + + 1 + 1 + + +
  • + + foals + + Mobs/Chaoferal/rhinomeld + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/rhinomeld + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.3 + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.25 + +
  • +
  • + + Mobs/Chaoferal/rhinomeld + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/rhinomeld + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.15 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.0 + +
  • +
  • + + Mobs/Chaoferal/rhinomeld + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/rhinomeld + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.7 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/ChaomeldCow.xml b/1.5/Defs/Races/Chaocreatures/ChaomeldCow.xml new file mode 100644 index 000000000..93e8fa65e --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/ChaomeldCow.xml @@ -0,0 +1,170 @@ + + + ChaomeldCow + + A fusion of two morphs, who first begin their transformation inside a mutagenic chamber, which one is then siphoned to and melded with another. They share two minds, yet one body — so while they have higher consciousness it may take some time for them to get used to their new arragement. + + 5 + -20 + 40 + 3000 + + +
  • + TFMilk + 1 + 15 + false +
  • +
    + +
  • + +
  • Bite
  • + + 15 + 2.6 + Teeth + 0.7 + +
  • + +
  • Bite
  • + + 5 + 2.6 + Teeth + 0.7 + +
  • + + +
  • Blunt
  • + + 4 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Blunt
  • + + 5 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 19 + 2 + HornAttackTool + +
    +
    + + ChaomeldCow + + ChaomeldCow + 180 + 1.1 + Chaomeld + Chaomeld + + 1 + 1 + + +
  • + + pups + + Mobs/Chaoferal/Cowmeld + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Cowmeld + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.3 + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Cowmeld + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Cowmeld + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.15 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Cowmeld + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Cowmeld + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.7 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/ChaomeldDog.xml b/1.5/Defs/Races/Chaocreatures/ChaomeldDog.xml new file mode 100644 index 000000000..daec19c65 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/ChaomeldDog.xml @@ -0,0 +1,163 @@ + + + ChaomeldDog + + A fusion of two morphs, who first begin their transformation inside a mutagenic chamber, which one is then siphoned to and melded with another. They share two minds, yet one body — so while they have higher consciousness it may take some time for them to get used to their new arragement. Chaodogs produce mutagenic milk. + + 5 + -20 + 40 + 3000 + + +
  • + TFMilk + 1 + 5 +
  • +
    + +
  • + +
  • Bite
  • + + 15 + 2.6 + Teeth + 0.7 + +
  • + +
  • Bite
  • + + 5 + 2.6 + Teeth + 0.7 + +
  • + + +
  • Blunt
  • + + 4 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Blunt
  • + + 5 + 2 + HeadAttackTool + true + 0.2 + +
    + + true + +
    + + ChaomeldDog + + ChaomeldDog + 180 + 1.1 + Chaomeld + Chaomeld + + 1 + 1 + + +
  • + + pups + + Mobs/Chaoferal/Chaodog + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Chaodino + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.3 + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Chaodog + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Chaodog + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.15 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Chaodog + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Chaodog + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.7 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.6 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/ChaomeldDragon.xml b/1.5/Defs/Races/Chaocreatures/ChaomeldDragon.xml new file mode 100644 index 000000000..88961056e --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/ChaomeldDragon.xml @@ -0,0 +1,215 @@ + + + ChaomeldDragon + + A fusion of two morphs, who first begin their transformation inside a mutagenic chamber, which one is then siphoned to and melded with another. They share two minds, yet one body — so while they have higher consciousness it may take some time for them to get used to their new arragement. Chaodragons produce mutagenic eggs very rapidly. + + 5 + -10 + 100 + 3500 + 0.4 + 0.4 + + +
  • + TFEgg + TFEgg + 1 + 0.25 + 1 + 5 +
  • +
    + +
  • + +
  • Bite
  • + + 15 + 2.6 + Teeth + 0.7 + +
  • + +
  • Bite
  • + + 5 + 2.6 + Teeth + 0.7 + +
  • + + +
  • Blunt
  • + + 4 + 5 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Blunt
  • + + 5 + 2 + HeadAttackTool + true + 0.2 + +
  • + + +
  • DragonBreath
  • + + 15 + 0.1 + HeadAttackTool + true + 0.2 + +
  • + + +
  • DragonBreath
  • + + 15 + 0.1 + HeadAttackTool + true + 0.2 + +
  • + + +
  • Scratch
  • + + 19 + 2 + HornAttackTool + +
    + + true + +
    + + ChaomeldDragon + + ChaomeldDragon + 180 + 1.1 + Chaomeld + Chaomeld + + 1 + 1 + + +
  • + + pups + + Mobs/Chaoferal/Chaodragon + 1.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Chaodragon + 1.4 + (200,200,200) + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.3 + + + Mobs/Chaoferal/Dessicated_Chaodog + 1.25 + +
  • +
  • + + Mobs/Chaoferal/Chaodragon + 2.4 + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Chaodragon + 2.2 + (200,200,200) + + (0.6, 0.45, 0.45) + (0,0,-0.25) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.15 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.0 + +
  • +
  • + + Mobs/Chaoferal/Chaodragon + 3 + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Chaodragon + 2.8 + (200,200,200) + + (0.8, 0.6, 0.6) + (0,0,-0.3) + + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.7 + + + Mobs/Chaoferal/Dessicated_Chaodog + 2.6 + +
  • +
    +
    + + DragonBreath + + + DragonBreath + DragonBreath + + Verb_MeleeAttackDamage + Flame + + MeleeAttack + Maneuver_Bite_MeleeHit + Maneuver_Bite_MeleeDeflect + Maneuver_Bite_MeleeMiss + Maneuver_Bite_MeleeDodge + +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaomorph Passes.xml b/1.5/Defs/Races/Chaocreatures/Chaomorph Passes.xml new file mode 100644 index 000000000..ab213a02d --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaomorph Passes.xml @@ -0,0 +1,13 @@ + + + ChaomorphPasses + + Misc + +
  • Map_PlayerHome
  • +
    + Pawnmorph.IncidentWorker_ChaomorphPasses + 0.4 + 20 +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Chaothrumbo.xml b/1.5/Defs/Races/Chaocreatures/Chaothrumbo.xml new file mode 100644 index 000000000..a94c639f3 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Chaothrumbo.xml @@ -0,0 +1,154 @@ + + + PM_Chaothrumbo + + Pawnmorph.Things.Chaothrumbo + A terrifyingly massive type of former human, a chaothrumbo is a relentlessly tough being equipped with claws and horns, including an oversized thrumbo horn. An absolutely formidable foe, pray that it's on your side. + + 6.5 + 10000 + -65 + 50 + 0.90 + 0.60 + 0.50 + + 1.75 + +
  • + + +
  • Scratch
  • +
  • Stab
  • + + 40 + 2 + HornAttackTool + +
  • + +
  • Bite
  • + + 28 + 2.3 + Teeth + 0.7 + +
  • + + +
  • Scratch
  • + + 19 + 2 + FrontLeftLeg + +
  • + + +
  • Scratch
  • + + 19 + 2 + FrontRightLeg + +
  • + + +
  • Blunt
  • + + 17 + 2 + HeadAttackTool + true + 0.2 + +
    + + QuadrupedAnimalWithHoovesAndHorn + 8.0 + OmnivoreAnimal, VegetarianRoughAnimal, DendrovoreAnimal + Leather_Thrumbo + Advanced + Chaocow + 0.585 + +
  • Plant_TreeAnima
  • +
  • Plant_TreeGauranlen
  • +
    + Pawn_Melee_BigBash_HitPawn + Pawn_Melee_BigBash_HitBuilding + Pawn_Melee_BigBash_Miss +
    + +
  • AnimalExotic
  • +
    +
    + + PM_Chaothrumbo + + PM_Chaothrumbo + 700 + false + 1 + +
  • + + thrumbo calves + + Mobs/Chaoferal/Chaothrumbo + 2.5 + + (0.4, 0.3, 0.3) + (0,0,-0.2) + + + + Things/Pawn/Animal/Thrumbo/Dessicated_Thrumbo + 2.5 + +
  • +
  • + + Mobs/Chaoferal/Chaothrumbo + 8.0 + + (0.7, 0.6, 0.4) + (0,0,-0.25) + + + + Things/Pawn/Animal/Thrumbo/Dessicated_Thrumbo + 8.0 + +
  • +
  • + + Mobs/Chaoferal/Chaothrumbo + 9.6 + + (1, 0.8, 0.5) + (0,0,-0.5) + + + + Things/Pawn/Animal/Thrumbo/Dessicated_Thrumbo + 9.6 + + + HornAttackTool + ThrumboHorn + +
  • +
    + +
  • + +
  • +
  • +
  • + FormerHumanChaomorph +
  • +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/Corpse CategoryDef.xml b/1.5/Defs/Races/Chaocreatures/Corpse CategoryDef.xml new file mode 100644 index 000000000..bed5f4300 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/Corpse CategoryDef.xml @@ -0,0 +1,7 @@ + + + ChaoCorpse + + Corpses + + diff --git a/1.5/Defs/Races/Chaocreatures/FleshTypeDef.xml b/1.5/Defs/Races/Chaocreatures/FleshTypeDef.xml new file mode 100644 index 000000000..3efab2550 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/FleshTypeDef.xml @@ -0,0 +1,115 @@ + + + Chaomorph + ChaoCorpse + AteChaoMeatDirect + AteChaoMeatAsIngredient + +
  • + Things/Pawn/Wounds/WoundFleshA +
  • +
  • + Things/Pawn/Wounds/WoundFleshB +
  • +
  • + Things/Pawn/Wounds/WoundFleshC +
  • +
    + +
  • + Things/Pawn/Wounds/BandagedA +
  • +
  • + Things/Pawn/Wounds/BandagedB +
  • +
  • + Things/Pawn/Wounds/BandagedC +
  • +
    + +
  • + Scarification + +
  • + Things/Pawn/Wounds/ScarificationA + true + false + false +
  • +
  • + Things/Pawn/Wounds/ScarificationB + true + false + false +
  • +
  • + Things/Pawn/Wounds/ScarificationC + true + false + false +
  • + + +
  • + MissingBodyPart + +
  • + Things/Pawn/Wounds/MissingEye_Scar_south + Things/Pawn/Wounds/MissingEye_Scar_south + Things/Pawn/Wounds/MissingEye_Scar_east + Things/Pawn/Wounds/MissingEye_Scar_east + true + Eye + LeftEye + South + true + false + 0.7 +
  • +
  • + Things/Pawn/Wounds/MissingEye_Fresh + Things/Pawn/Wounds/MissingEye_Fresh + Things/Pawn/Wounds/MissingEye_Fresh + Things/Pawn/Wounds/MissingEye_Fresh + true + Eye + LeftEye + South + true + 0.7 +
  • + + +
  • + BionicEye + +
  • + Things/Pawn/Wounds/BionicEye_south + Things/Pawn/Wounds/BionicEye_south + Things/Pawn/Wounds/BionicEye_east + Things/Pawn/Wounds/BionicEye_east + true + LeftEye + South + 0.85 +
  • + + +
  • + ArchotechEye + +
  • + Things/Pawn/Wounds/ArchotechEye_south + Things/Pawn/Wounds/ArchotechEye_south + Things/Pawn/Wounds/ArchotechEye_east + Things/Pawn/Wounds/ArchotechEye_east + true + LeftEye + South + 0.85 +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Races/Chaocreatures/LeatherDef.xml b/1.5/Defs/Races/Chaocreatures/LeatherDef.xml new file mode 100644 index 000000000..ec2ffd920 --- /dev/null +++ b/1.5/Defs/Races/Chaocreatures/LeatherDef.xml @@ -0,0 +1,23 @@ + + + Leather_Chao + + The pelt of a chaomorph. Depending on the sourced morph, it can be scaled, furred, spiny, rough, smooth or anything in between (with plenty of overlap). It is a versatile material because of this, however, due to the many different materials composing it, it does not have very high durability. + + (178,100,34) + + + 2 + 0.61 + 0.31 + 10 + + + (178,100,34) + 0.075 + + 0.8 + + + + diff --git a/1.5/Defs/Races/ChaomorphBodies.xml b/1.5/Defs/Races/ChaomorphBodies.xml new file mode 100644 index 000000000..b68c60272 --- /dev/null +++ b/1.5/Defs/Races/ChaomorphBodies.xml @@ -0,0 +1,1599 @@ + + + PawnmorphWing + + 10 + true + +
  • MovingLimbCore
  • +
    +
    + + + Chaoboom + + + Body + Middle + Outside + +
  • + Spine + 0.03 + Inside +
  • +
  • + Stomach + 0.03 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.03 + Inside +
  • +
  • + Lung + right lung + 0.03 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.03 + Inside +
  • +
  • + Neck + 0.32 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye + 0.06 +
  • +
  • + Eye + right eye + 0.06 +
  • +
  • + Ear + left ear + 0.06 +
  • +
  • + Ear + right ear + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + +
    + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + + + + + +
  • + Hump + 0.10 + Top +
  • +
  • + PawnmorphWing + left wing + 0.01 + Bottom +
  • +
  • + PawnmorphWing + right wing + 0.01 + Bottom +
  • +
  • + Leg + front left leg + 0.07 + Bottom + +
  • + Hoof + front left hoof + 0.15 + +
  • FrontLeftLeg
  • + + + + +
  • + Leg + front right leg + 0.07 + Bottom + +
  • + Hoof + front right hoof + 0.15 + +
  • FrontRightLeg
  • + + + + +
  • + Leg + rear left leg + 0.06 + Bottom + +
  • + Hoof + rear left hoof + 0.15 +
  • + + +
  • + Leg + rear right leg + 0.06 + Bottom + +
  • + Hoof + rear right hoof + 0.15 +
  • + + + +
    +
    + + + + Chaocow + + + Body + Middle + Outside + +
  • + Spine + 0.03 + Inside +
  • +
  • + Stomach + 0.03 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.03 + Inside +
  • +
  • + Lung + right lung + 0.03 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.03 + Inside +
  • +
  • + Neck + 0.32 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye + 0.06 +
  • +
  • + Eye + right eye + 0.06 +
  • +
  • + Ear + left ear + 0.06 +
  • +
  • + Ear + right ear + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + +
    + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + +
  • + Tusk + left tusk + 0.4 + +
  • TuskAttackTool
  • + + +
  • + Tusk + right tusk + 0.4 + +
  • TuskAttackTool
  • + + +
    + + + + + +
  • + Leg + front left leg + 0.07 + Bottom + +
  • + Paw + front left paw + 0.15 + +
  • FrontLeftPaw
  • + + + + +
  • + Leg + front right leg + 0.07 + Bottom + +
  • + Paw + front right paw + 0.15 + +
  • FrontRightPaw
  • + + + + +
  • + Leg + rear left leg + 0.06 + Bottom + +
  • + Hoof + rear left hoof + 0.15 +
  • + + +
  • + Leg + rear right leg + 0.06 + Bottom + +
  • + Hoof + rear right hoof + 0.15 +
  • + + + +
    +
    + + + + Chaoboar + + + Body + Middle + Outside + +
  • + Spine + 0.03 + Inside +
  • +
  • + Stomach + 0.03 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.03 + Inside +
  • +
  • + Lung + right lung + 0.03 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.03 + Inside +
  • +
  • + Neck + 0.32 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye + 0.06 +
  • +
  • + Eye + right eye + 0.06 +
  • +
  • + Ear + left ear + 0.06 +
  • +
  • + Ear + right ear + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + +
    + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + +
  • + Tusk + left lower tusk + 0.2 + +
  • TuskAttackTool
  • + + +
  • + Tusk + right lower tusk + 0.2 + +
  • TuskAttackTool
  • + + +
  • + Tusk + left upper tusk + 0.2 + +
  • TuskAttackTool
  • + + +
  • + Tusk + right upper tusk + 0.2 + +
  • TuskAttackTool
  • + + +
    + + + + + +
  • + Shoulder + left shoulder + 0.07 + Top + +
  • + Arm + front left arm + 0.87 + Middle + + +
  • + Hand + left hand + 0.14 + Bottom + +
  • Hands
  • + + +
  • + Finger + left ring hoofnail + 0.07 + +
  • Hands
  • +
  • LeftHand
  • + + +
  • + Finger + left middle hoofnail + 0.08 + +
  • Hands
  • +
  • LeftHand
  • + + +
  • + Finger + left index hoofnail + 0.07 + +
  • Hands
  • +
  • LeftHand
  • + + +
  • + Finger + left thumb + 0.08 + +
  • Hands
  • +
  • LeftHand
  • + + +
    + + + + + +
  • + Shoulder + right shoulder + 0.07 + Top + +
  • + Arm + front right arm + 0.87 + Middle + + +
  • + Hand + right hand + 0.14 + Bottom + +
  • Hands
  • + + +
  • + Finger + right ring hoofnail + 0.07 + +
  • Hands
  • +
  • RightHand
  • + + +
  • + Finger + right middle hoofnail + 0.08 + +
  • Hands
  • +
  • RightHand
  • + + +
  • + Finger + right index hoofnail + 0.07 + +
  • Hands
  • +
  • RightHand
  • + + +
  • + Finger + right thumb + 0.08 + +
  • Hands
  • +
  • RightHand
  • + + +
    + + + + + +
  • + Leg + rear left leg + 0.06 + Bottom + +
  • + Hoof + rear left hoof + 0.15 +
  • + + +
  • + Leg + rear right leg + 0.06 + Bottom + +
  • + Hoof + rear right hoof + 0.15 +
  • + + + +
    +
    + + + + Chaomeld + + + Body + Middle + Outside + +
  • + Spine + 0.03 + Inside +
  • +
  • + Stomach + 0.03 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.03 + Inside +
  • +
  • + Lung + right lung + 0.03 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.03 + Inside +
  • +
  • + Neck + 0.16 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye + 0.06 +
  • +
  • + Eye + right eye + 0.06 +
  • +
  • + Ear + left ear + 0.06 +
  • +
  • + Ear + right ear + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + +
    + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + + + + + + +
  • + Neck + 0.16 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye + 0.06 +
  • +
  • + Eye + right eye + 0.06 +
  • +
  • + Ear + left ear + 0.06 +
  • +
  • + Ear + right ear + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + + + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + + + + + +
  • + Leg + front left leg + 0.07 + Bottom + +
  • + Paw + front left paw + 0.15 + +
  • FrontLeftPaw
  • + + + + +
  • + Leg + front right leg + 0.07 + Bottom + +
  • + Paw + front right paw + 0.15 + +
  • FrontRightPaw
  • + + + + +
  • + Leg + rear left leg + 0.06 + Bottom + +
  • + Hoof + rear left hoof + 0.15 +
  • + + +
  • + Leg + rear right leg + 0.06 + Bottom + +
  • + Hoof + rear right hoof + 0.15 +
  • + + + +
    +
    + + + + Chaofusion + + + Body + Middle + Outside + +
  • + Spine + 0.03 + Inside +
  • +
  • + Stomach + 0.03 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.03 + Inside +
  • +
  • + Lung + right lung + 0.03 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.03 + Inside +
  • +
  • + Neck + 0.16 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye (left head) + 0.06 +
  • +
  • + Eye + right eye (left head) + 0.06 +
  • +
  • + Ear + left ear (left head) + 0.06 +
  • +
  • + Ear + right ear (left head) + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + +
    + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + + + + + + +
  • + Neck + 0.16 + Top + +
  • + Head + 0.80 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.15 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye (right head) + 0.06 +
  • +
  • + Eye + right eye (right head) + 0.06 +
  • +
  • + Ear + left ear (right head) + 0.06 +
  • +
  • + Ear + right ear (right head) + 0.06 +
  • +
  • + Nose + 0.25 + +
  • + Horn + 0.85 + +
  • HornAttackTool
  • + + + + +
  • + AnimalJaw + 0.18 + +
  • Teeth
  • + + + + + + +
  • + Leg + front left leg + 0.07 + Bottom + +
  • + Paw + front left paw + 0.15 + +
  • FrontLeftPaw
  • + + + + +
  • + Leg + front right leg + 0.07 + Bottom + +
  • + Paw + front right paw + 0.15 + +
  • FrontRightPaw
  • + + + + +
  • + Leg + rear left leg + 0.06 + Bottom + +
  • + Hoof + rear left clawhoof + 0.15 +
  • + + +
  • + Leg + rear right leg + 0.06 + Bottom + +
  • + Hoof + rear right clawhoof + 0.15 +
  • + + + +
    +
    + + + + Chaofox + + + Body + Middle + Outside + +
  • + Spine + 0.03 + Inside +
  • +
  • + Stomach + 0.03 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.03 + Inside +
  • +
  • + Lung + right lung + 0.03 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.03 + Inside +
  • +
  • + Neck + 0.22 + Top + +
  • + Head + 0.75 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.25 + Inside + +
  • + Brain + 0.7 + Inside +
  • +
    + +
  • + Eye + left eye + 0.12 +
  • +
  • + Eye + right eye + 0.12 +
  • +
  • + Ear + left ear + 0.08 +
  • +
  • + Ear + right ear + 0.08 +
  • +
  • + Nose + 0.1 +
  • +
  • + AnimalJaw + 0.1 + +
  • Teeth
  • + + +
    + + + +
  • + PawnmorphWing + left wing + 0.01 + Bottom +
  • +
  • + PawnmorphWing + right wing + 0.01 + Bottom +
  • +
  • + Leg + front left leg + 0.07 + Bottom + +
  • FrontLeftPaw
  • + + +
  • + Paw + front left paw + 0.15 +
  • +
    + +
  • + Leg + front right leg + 0.07 + Bottom + +
  • FrontRightPaw
  • + + +
  • + Paw + front right paw + 0.15 +
  • +
    + +
  • + Leg + rear left leg + 0.07 + Bottom + +
  • + Hoof + rear left hoof + 0.15 +
  • + + +
  • + Leg + rear right leg + 0.07 + Bottom + +
  • + Hoof + rear right hoof + 0.15 +
  • + + + +
    +
    + + + Chaodino + + + Body + Middle + Outside + +
  • + Tail + 0.15 +
  • +
  • + Spine + 0.05 + Inside +
  • +
  • + Stomach + 0.04 + Inside +
  • +
  • + Heart + 0.03 + Inside +
  • +
  • + Lung + left lung + 0.04 + Inside +
  • +
  • + Lung + right lung + 0.04 + Inside +
  • +
  • + Kidney + left kidney + 0.03 + Inside +
  • +
  • + Kidney + right kidney + 0.03 + Inside +
  • +
  • + Liver + 0.04 + Inside +
  • +
  • + Neck + 0.2 + Top + +
  • + Head + 0.75 + +
  • HeadAttackTool
  • + + +
  • + Skull + 0.30 + Inside + +
  • + Brain + 0.60 + Inside +
  • +
    + +
  • + Eye + left eye + 0.12 +
  • +
  • + Eye + right eye + 0.12 +
  • +
  • + Beak + 0.25 + +
  • Beak
  • + + +
    + + + +
  • + Leg + left leg + 0.10 + Bottom + +
  • + Foot + left foot + 0.5 + +
  • Feet
  • + + + + +
  • + Leg + right leg + 0.10 + Bottom + +
  • + Foot + right foot + 0.5 + +
  • Feet
  • + + + + +
  • + Shoulder + left shoulder + 0.07 + Top + +
  • + Arm + front left arm + 0.77 + Top + +
  • + Paw + front left paw + 0.15 + +
  • FrontLeftPaw
  • + + + + + + +
  • + Shoulder + right shoulder + 0.07 + Top + +
  • + Arm + front right arm + 0.77 + Top + +
  • + Paw + front right paw + 0.15 + +
  • FrontRightPaw
  • + + + + + + + +
    +
    +
    diff --git a/1.5/Defs/RecipeDefs/Misc.xml b/1.5/Defs/RecipeDefs/Misc.xml new file mode 100644 index 000000000..dfb6d8666 --- /dev/null +++ b/1.5/Defs/RecipeDefs/Misc.xml @@ -0,0 +1,18 @@ + + + PM_TagAnimal + + tag genetic material from an animal + Pawnmorph.RecipeWorkers.TagAnimal + tagging TargetA. + 300 + true + false + false + {0} has successfully tagged {1}. + true + + 2 + + + \ No newline at end of file diff --git a/1.5/Defs/Recipes/AspectInjector.xml b/1.5/Defs/Recipes/AspectInjector.xml new file mode 100644 index 000000000..3c5f9fc5c --- /dev/null +++ b/1.5/Defs/Recipes/AspectInjector.xml @@ -0,0 +1,50 @@ + + + + make injector + Cook + Recipe_Brewing + 2000 + DrugSynthesisSpeed + +
  • + + +
  • MechaniteSlurry
  • + + + 5 + +
  • + + +
  • Neutroamine
  • + + + 50 + +
  • + + +
  • Mutanite
  • + + + 1 + +
    + + +
  • MechaniteSlurry
  • +
    +
    + +
  • MutagenLab
  • +
    + AdvancedExtraction + + 13 + + Intellectual +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Recipes/Recipes_Genekits.xml b/1.5/Defs/Recipes/Recipes_Genekits.xml new file mode 100644 index 000000000..c1c1a4697 --- /dev/null +++ b/1.5/Defs/Recipes/Recipes_Genekits.xml @@ -0,0 +1,35 @@ + + + Make_GenekitColorPicker + + Reshape mechanites into a dermal repigmentation genekit. + Fabricating dermal repigmentation genekit + Cook + Recipe_Brewing + 300 + DrugSynthesisSpeed + +
  • + + +
  • MechaniteSlurry
  • + + + 2 + +
    + + +
  • MechaniteSlurry
  • +
    +
    + + 1 + + AdvancedExtraction + + 8 + + Intellectual +
    +
    diff --git a/1.5/Defs/Recipes/Recipes_SlurryCrafting.xml b/1.5/Defs/Recipes/Recipes_SlurryCrafting.xml new file mode 100644 index 000000000..1c3d706f3 --- /dev/null +++ b/1.5/Defs/Recipes/Recipes_SlurryCrafting.xml @@ -0,0 +1,324 @@ + + + Cook + Recipe_Brewing + DrugSynthesisSpeed + +
  • DrugLab
  • +
  • MutagenLab
  • +
    + MutagenExtraction + Intellectual + true + Pawnmorph.IngredientValueGetter_Mutanite + + +
  • RawMutagen
  • +
    + +
  • Antigen
  • +
  • Glowvine
  • +
  • MechaniteSlurry
  • +
    +
    + + +
  • Root
  • +
    + +
  • Mutanite
  • +
    +
    +
    + + + Make_Slurry + + Make slurry using mechanites from different mutagens. + Refining slurry. + +
  • + + +
  • RawMutagen
  • + + +
  • Antigen
  • +
  • Glowvine
  • +
  • MechaniteSlurry
  • +
    + + 0.5 + +
    + 400 + + 1 + +
    + + + Make_SlurryBulk + + Make slurry using mechanites from different mutagens. + Refining 4 slurry. + +
  • + + +
  • RawMutagen
  • + + +
  • Antigen
  • +
  • Glowvine
  • +
  • MechaniteSlurry
  • +
    + + 2.0 + +
    + 1600 + + 4 + +
    + + + Make_ComponentsFromSlurry + + Process mechanites into components. + Processing components from slurry. + Cook + Recipe_Brewing + 12000 + DrugSynthesisSpeed + +
  • + + +
  • MechaniteSlurry
  • + + + 1 + +
  • + + +
  • Steel
  • + + + 3 + +
    + + +
  • MechaniteSlurry
  • +
    +
    + + 3 + + +
  • MutagenLab
  • +
    + AdvancedExtraction + + 8 + + Intellectual +
    + + + Make_ResurrectorFromMutonite + + Reshape mechanites into a reincarnator serum from slurry. Caution, this may have unintended side-effects being made from mutagenic mechanites. + fabricating reincarnator mech serum + Cook + Recipe_Brewing + 10000 + DrugSynthesisSpeed + +
  • + + +
  • MechaniteSlurry
  • + + + 14 + +
  • + + +
  • Antigen
  • + + + 6 + +
  • + + +
  • MedicineUltratech
  • + + + 6 + +
  • + + +
  • ComponentSpacer
  • + + + 4 + +
  • + + +
  • Mutanite
  • + + + 2 + +
    + + +
  • MechaniteSlurry
  • +
  • Antigen
  • +
    +
    + + 1 + + +
  • MutagenLab
  • +
    + AdvancedExtraction + + 16 + + Intellectual +
    + + + Make_HealerFromMutonite + + Reprogram a large quantity of mutagenic mechanites with healer protocols. Due to the sheer number of mechanites being reprogrammed, a few mechanites will fail to be neutralised and there is a high probability that the restored areas will be mutated as a result. + fabricating mutagenic healer mech serum + Cook + Recipe_Brewing + 5000 + DrugSynthesisSpeed + +
  • + + +
  • MechaniteSlurry
  • + + + 7 + +
  • + + +
  • Antigen
  • + + + 3 + +
  • + + +
  • MedicineUltratech
  • + + + 2 + +
  • + + +
  • ComponentSpacer
  • + + + 1 + +
  • + + +
  • Mutanite
  • + + + 1 + +
    + + +
  • MechaniteSlurry
  • +
  • Antigen
  • +
    +
    + + 1 + + +
  • MutagenLab
  • +
    + AdvancedExtraction + + 13 + + Intellectual +
    + + + Make_GlitterMedsFromMutonite + + Reshape mechanites into glitterworld medicine from antigen. This does require quite a lot. + Refining antigen into glitterworld medicine + Cook + Recipe_Brewing + 3000 + DrugSynthesisSpeed + +
  • + + +
  • Antigen
  • + + + 1 + +
  • + + +
  • Neutroamine
  • + + + 4 + +
  • + + +
  • MedicineIndustrial
  • + + + 2 + +
    + + +
  • Antigen
  • +
    +
    + + 2 + + +
  • MutagenLab
  • +
    + AdvancedExtraction + + 8 + + Intellectual +
    + +
    diff --git a/1.5/Defs/Recipes/Recipes_Surgery.xml b/1.5/Defs/Recipes/Recipes_Surgery.xml new file mode 100644 index 000000000..6503dc172 --- /dev/null +++ b/1.5/Defs/Recipes/Recipes_Surgery.xml @@ -0,0 +1,32 @@ + + + AdministerMutagenicMechSerumHealer + + Administer a mutagenic healer mech serum. + Recipe_AdministerUsableItem + Administering mutagenic healer mech serum. + false + false + 600 + true + 99999 + +
  • + + +
  • MechSerumMutagenicHealer
  • + + + 1 + +
    + + +
  • MechSerumMutagenicHealer
  • +
    +
    + +
  • Human
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Recipes/Silk.xml b/1.5/Defs/Recipes/Silk.xml new file mode 100644 index 000000000..fbc34d9b6 --- /dev/null +++ b/1.5/Defs/Recipes/Silk.xml @@ -0,0 +1,177 @@ + + + PMMake_Hazsilk + + Turn cloth into hazsilk using antigen. + creating hazsilk + Cook + Recipe_Brewing + 2500 + +
  • + + +
  • Cloth
  • + + + 40 + +
  • + + +
  • Antigen
  • + + + 1 + +
    + +
  • MutagenLab
  • +
    + + +
  • MechaniteSlurry
  • +
    +
    + + 40 + + AdvancedExtraction + + 3 + + Crafting +
    + + + PMMake_HazsilkBulk + + Turn cloth into hazsilk using antigen. + creating hazsilk x4 + Cook + Recipe_Brewing + 10000 + +
  • + + +
  • Cloth
  • + + + 160 + +
  • + + +
  • Antigen
  • + + + 4 + +
    + +
  • MutagenLab
  • +
    + + +
  • MechaniteSlurry
  • +
    +
    + + 160 + + AdvancedExtraction + + 3 + + Crafting +
    + + + PMMake_Morphsilk + + Turn cloth into morphskilk using mechanite slurry. + creating morphsilk + Cook + Recipe_Brewing + 2500 + +
  • + + +
  • MechaniteSlurry
  • + + + 1 + +
  • + + +
  • Cloth
  • + + + 40 + +
    + +
  • MutagenLab
  • +
    + + +
  • MechaniteSlurry
  • +
    +
    + + 40 + + AdvancedExtraction + + 3 + + Crafting +
    + + + PMMake_MorphsilkBulk + + Turn cloth into morphskilk using mechanite slurry. + creating morphsilk x4 + Cook + Recipe_Brewing + 10000 + +
  • + + +
  • MechaniteSlurry
  • + + + 4 + +
  • + + +
  • Cloth
  • + + + 160 + +
    + +
  • MutagenLab
  • +
    + + +
  • MechaniteSlurry
  • +
    +
    + + 160 + + AdvancedExtraction + + 3 + + Crafting +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Recipes/Surgeries.xml b/1.5/Defs/Recipes/Surgeries.xml new file mode 100644 index 000000000..f6180adee --- /dev/null +++ b/1.5/Defs/Recipes/Surgeries.xml @@ -0,0 +1,54 @@ + + + PM_ApplyHaltCream + + Apply halt cream to a mutation + Pawnmorph.RecipeWorkers.ApplyHaltingCream + Applying halt cream. + 1000 + false + 99999 + true + +
  • + + +
  • PM_HaltCream
  • + + + 1 + +
    + + +
  • PM_HaltCream
  • +
    +
    +
    + + PM_ApplyAdaptionCream + + Apply adaption cream to a mutation + Pawnmorph.RecipeWorkers.ApplyAdaptationCream + Applying adaption cream. + 1300 + false + 99999 + true + +
  • + + +
  • PM_AdaptionCream
  • + + + 1 + +
    + + +
  • PM_AdaptionCream
  • +
    +
    +
    +
    diff --git a/1.5/Defs/Research/Tabs.xml b/1.5/Defs/Research/Tabs.xml new file mode 100644 index 000000000..f51cba433 --- /dev/null +++ b/1.5/Defs/Research/Tabs.xml @@ -0,0 +1,6 @@ + + + Pawnmorpher + + + \ No newline at end of file diff --git a/1.5/Defs/RulePacks/CoveringMutationLogPacks.xml b/1.5/Defs/RulePacks/CoveringMutationLogPacks.xml new file mode 100644 index 000000000..5f0be7112 --- /dev/null +++ b/1.5/Defs/RulePacks/CoveringMutationLogPacks.xml @@ -0,0 +1,53 @@ + + + + + +
  • action->grew a [bulk_label_group] of
  • +
  • action->was covered in
  • +
  • initial->[PART_label]
  • +
  • bulk_label_group->[bulk_label]
  • +
  • pname->[PAWN_nameDef]
  • +
    +
    +
    + + + FurGrowthLogPack + + +
  • label_text->fur
  • +
  • bulk_label->coat
  • +
    +
    +
    + + + HideGrowthLogPack + + +
  • label_text->hide
  • +
  • bulk_label->layer
  • +
    +
    +
    + + ScaleGrowthLogPack + + +
  • label_text->scales
  • +
  • bulk_label->coating
  • +
    +
    +
    + + + FeatherGrowthLogPack + + +
  • label_text->feathers
  • +
  • bulk_label->layer
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/RulePacks/FormerHumans/FH_AnimalChats.xml b/1.5/Defs/RulePacks/FormerHumans/FH_AnimalChats.xml new file mode 100644 index 000000000..4908615d8 --- /dev/null +++ b/1.5/Defs/RulePacks/FormerHumans/FH_AnimalChats.xml @@ -0,0 +1,75 @@ + + + + SapientAnimalChatRules + + +
  • animalTalk->gruffed a story about [TalkTopicAny] to
  • +
  • animalTalk->sighed softly at
  • +
  • animalTalk->sat down next to
  • +
  • animalTalk->curled up for a moment next to
  • +
  • animalTalk->pawed at
  • +
  • animalTalk->spoke about [TalkTopicAny] with
  • +
  • animalTalk->moaned about [TalkTopicAny] with
  • +
  • animalTalk->lamented about life with
  • +
  • r_logentry->[INITIATOR_nameDef] sat near [RECIPIENT_nameDef] and talked to [RECIPIENT_objective] about [animalLife].
  • +
  • r_logentry->[RECIPIENT_nameDef] lay by [INITIATOR_nameDef] and talked to [INITIATOR_objective] about [animalLife].
  • +
  • r_logentry->[INITIATOR_nameDef] sat near [RECIPIENT_nameDef] and talked to [RECIPIENT_objective] about [TalkTopicAny].
  • +
  • r_logentry->[RECIPIENT_nameDef] lay by [INITIATOR_nameDef] and talked to [INITIATOR_objective] about [TalkTopicAny].
  • +
  • r_logentry->[RECIPIENT_nameDef] talked with [INITIATOR_nameDef] about [TalkTopicAny].
  • +
  • r_logentry->[RECIPIENT_nameDef] talked with [INITIATOR_nameDef] about [animalLife].
  • +
    +
    +
    + + + MostlySapientAnimalChatRules + + +
  • animalTalk->sighed softly at
  • +
  • animalTalk->nuzzled
  • +
  • animalTalk->rubbed against
  • +
  • animalTalk->sat down next to
  • +
  • animalTalk->curled up for a moment next to
  • +
  • animalTalk->pawed at
  • +
  • animalTalk->tried and failed to speak to
  • +
  • animalTalk->attempted to talk to
  • +
  • r_logentry->[INITIATOR_nameDef] sat near [RECIPIENT_nameDef] and talked to [RECIPIENT_objective] about [animalLife].
  • +
  • r_logentry->[INITIATOR_nameDef] sat near [RECIPIENT_nameDef] and talked to [RECIPIENT_objective] about [TalkTopicAny].
  • +
  • r_logentry->[RECIPIENT_nameDef] talked with [INITIATOR_nameDef] about [TalkTopicAny].
  • +
  • r_logentry->[RECIPIENT_nameDef] talked with [INITIATOR_nameDef] about [animalLife].
  • +
    +
    +
    + + + ConflictedAnimalChatRules + + +
  • animalTalk->sighed softly at
  • +
  • animalTalk->whined for attention from
  • +
  • animalTalk->nuzzled
  • +
  • animalTalk->rubbed against
  • +
  • animalTalk->sat down next to
  • +
  • animalTalk->curled up for a moment next to
  • +
  • animalTalk->pawed at
  • +
    +
    +
    + + + MostlyFeralAnimalChatRules + + +
  • animalTalk->whined for attention from
  • +
  • animalTalk->nuzzled
  • +
  • animalTalk->rubbed against
  • +
  • animalTalk->sat down next to
  • +
  • animalTalk->curled up for a moment next to
  • +
  • animalTalk->pawed at
  • +
    +
    +
    + + +
    \ No newline at end of file diff --git a/1.5/Defs/RulePacks/FormerHumans/FH_RecruitAttempts.xml b/1.5/Defs/RulePacks/FormerHumans/FH_RecruitAttempts.xml new file mode 100644 index 000000000..df2be4540 --- /dev/null +++ b/1.5/Defs/RulePacks/FormerHumans/FH_RecruitAttempts.xml @@ -0,0 +1,46 @@ + + + SapientAnimalRecruitSuccess + + +
  • sent->[RECIPIENT_nameDef] has accepted and joined [INITIATOR_nameDef]'s community.
  • +
    +
    +
    + + + MostlySapientAnimalRecruitSuccess + + +
  • sent->[RECIPIENT_nameDef] has accepted and joined [INITIATOR_nameDef]'s community.
  • +
    +
    +
    + + + + + + SapientAnimalRecruitRejected + + +
  • sent->[RECIPIENT_nameDef] refused.
  • +
  • sent->[RECIPIENT_nameDef] told [INITIATOR_objective] to shove it.
  • +
  • sent->[RECIPIENT_nameDef] told [INITIATOR_objective] to get lost.
  • +
  • sent->[RECIPIENT_nameDef] yelled at [INITIATOR_objective].
  • +
  • sent->[RECIPIENT_nameDef] made a rude gesture at [INITIATOR_objective].
  • +
  • sent->[RECIPIENT_nameDef] rolled [RECIPIENT_possessive] eyes at [INITIATOR_objective].
  • +
    +
    +
    + + MostlySapientAnimalRecruitRejected + + +
  • sent->[RECIPIENT_nameDef] refused.
  • +
  • sent->[RECIPIENT_nameDef] made a rude gesture at [INITIATOR_objective].
  • +
  • sent->[RECIPIENT_nameDef] rolled [RECIPIENT_possessive] eyes at [INITIATOR_objective].
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/RulePacks/FormerHumans/FH_Training.xml b/1.5/Defs/RulePacks/FormerHumans/FH_Training.xml new file mode 100644 index 000000000..38d3d2f18 --- /dev/null +++ b/1.5/Defs/RulePacks/FormerHumans/FH_Training.xml @@ -0,0 +1,31 @@ + + + + + + \ No newline at end of file diff --git a/1.5/Defs/RulePacks/MutationCauseRulePacks.xml b/1.5/Defs/RulePacks/MutationCauseRulePacks.xml new file mode 100644 index 000000000..81935e876 --- /dev/null +++ b/1.5/Defs/RulePacks/MutationCauseRulePacks.xml @@ -0,0 +1,16 @@ + + + + InjectorCauseLogPack + + +
  • mutagen_cause->getting jabbed by an injector
  • +
  • mutagen_cause->an injector
  • +
  • caused_by->from
  • +
  • caused_by->caused by
  • +
  • caused_by->because of
  • +
  • caused_by->after
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/RulePacks/MutationPackBases.xml b/1.5/Defs/RulePacks/MutationPackBases.xml new file mode 100644 index 000000000..980704a5c --- /dev/null +++ b/1.5/Defs/RulePacks/MutationPackBases.xml @@ -0,0 +1,100 @@ + + + MutationTaleRulePack + + +
  • mutation_log->on [DATE] [images]. [sentence_group]
  • +
  • images->[image]
  • +
  • sentence_group->[desc_sentence]
  • +
  • circumstance_group->[circumstance_phrase]
  • +
    +
    +
    + + MutationRulePackTaleless + + +
  • mutation_log->[PAWN_nameDef] [MUTATION_label]
  • +
    +
    +
    + + + + + +
  • mutation_log->[pname] [initial] [action_group] [modifier_group] [a_an] [label_group] [caused_by] [mutagen_cause].
  • +
  • action_group->[action]
  • +
  • modifier_group->[modifier]
  • +
  • label_group->[label_text]
  • +
    +
    +
    + + + + + +
  • initial->[PART_label]
  • +
  • label_text->[MUTATION_label]
  • +
  • pname->[PAWN_nameDef]'s
  • +
    +
    +
    + + + + +
  • initial->
  • +
  • label_text->[MUTATION_label]
  • +
  • action->grew
  • +
  • pname->[PAWN_nameDef]
  • +
    +
    +
    + + + DefaultTailMutationLogPack + + +
  • a_an->a
  • +
    +
    +
    + + + DefaultHornMutationLogPack + + +
  • a_an->
  • +
    +
    +
    + + + + DefaultMutationLogPack + + +
  • action->became
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/SapienceStates/FormerHumans.xml b/1.5/Defs/SapienceStates/FormerHumans.xml new file mode 100644 index 000000000..1e1990adb --- /dev/null +++ b/1.5/Defs/SapienceStates/FormerHumans.xml @@ -0,0 +1,28 @@ + + + true + TransformedHuman + + + + + + + FormerHuman + Pawnmorph.SapienceStates.FormerHuman + TransformedHuman + + + + MergedPawn + Pawnmorph.SapienceStates.MergedPawn + 2xMergedHuman + + + + Animalistic + + Animalistic + Pawnmorph.SapienceStates.Animalistic + + \ No newline at end of file diff --git a/1.5/Defs/ScenParts_Pawnmorpher.xml b/1.5/Defs/ScenParts_Pawnmorpher.xml new file mode 100644 index 000000000..6f99f2cc3 --- /dev/null +++ b/1.5/Defs/ScenParts_Pawnmorpher.xml @@ -0,0 +1,20 @@ + + + ForcedAspect + + Pawnmorph.ScenarioParts.ScenPart_ForcedAspect + PlayerPawnModifier + 1.0 + 459 + + + + ForcedSapience + + Pawnmorph.ScenarioParts.ScenPart_ForcedSapience + PlayerPawnModifier + 1.0 + 459 + + + diff --git a/1.5/Defs/StatDefs/Categories.xml b/1.5/Defs/StatDefs/Categories.xml new file mode 100644 index 000000000..21d5b26eb --- /dev/null +++ b/1.5/Defs/StatDefs/Categories.xml @@ -0,0 +1,15 @@ + + + PawnMutagenics + + 15 + true + + + + ThingMutagenics + + 15 + true + + \ No newline at end of file diff --git a/1.5/Defs/StatDefs/Combat.xml b/1.5/Defs/StatDefs/Combat.xml new file mode 100644 index 000000000..fb563d259 --- /dev/null +++ b/1.5/Defs/StatDefs/Combat.xml @@ -0,0 +1,29 @@ + + + PM_NaturalMeleeEffectiveness + + how effect this pawn is using 'natural' weapons like claws and fangs + PawnCombat + true + 1 + 0 + false + PercentZero + FloatOne + 4200 + + + + PM_NaturalMeleeSpeed + + how quick this pawn is using 'natural' weapons like claws and fangs + PawnCombat + true + 1 + 0.1 + false + FloatOne + FloatOne + 4300 + + \ No newline at end of file diff --git a/1.5/Defs/StatDefs/FoodStats.xml b/1.5/Defs/StatDefs/FoodStats.xml new file mode 100644 index 000000000..3ee948a0e --- /dev/null +++ b/1.5/Defs/StatDefs/FoodStats.xml @@ -0,0 +1,27 @@ + + + DangerousFoodSensitivity + + How likely a pawn is to get sick from contaminated, dangerous foods. + BasicsPawn + 1 + 1 + 0 + 1 + PercentZero + 75 + + + + RottenFoodSensitivity + + How likely a pawn is to get sick from contaminated, rotten foods. + BasicsPawn + 1 + 1 + 0 + 1 + PercentZero + 75 + + diff --git a/1.5/Defs/StatDefs/MutagenStats.xml b/1.5/Defs/StatDefs/MutagenStats.xml new file mode 100644 index 000000000..e5355961d --- /dev/null +++ b/1.5/Defs/StatDefs/MutagenStats.xml @@ -0,0 +1,121 @@ + + + + PawnMutagenics + + + + MutationAdaptability + + Multiplier on how well a pawn can adapt to mutations. + 0 + 0 + -2 + 3 + PercentZero + 75 + + + + MutagenSensitivity + + Multiplier on the impact of mutagenic effects on this creature. + 1.0 + 1.0 + 0 + PercentZero + 75 + +
  • + MutagenSensitivity_Apparel +
  • +
    +
    + + + PM_MutagenPainSensitivity + + how much pain a pawn receives from mutations and transformations + 1.0 + 1.0 + 0 + PercentZero + 80 + + + + TransformationSensitivity + + Multiplier on the impact of transformative effects on this pawn. Higher values make full transformations more likely. + 1 + 1 + 0 + PercentZero + 75 + + + + MutationHaltChance + + Stat that determines how likely pawns will stop adapting to mutations. + 0 + 0 + 2 + PercentZero + 75 + + + + MutagenSensitivity_Apparel + + Multiplier on the impact of mutagenic effects on this creature. + StuffStatFactors + 0 + 0 + -1 + PercentZero + 75 + +
  • + MutagenSensitivity_Stuff + MutagenSensitivity_StuffMult +
  • +
    +
    + + MutagenSensitivity_Stuff + + Multiplier on the impact of mutagenic effects on this creature. + StuffStatFactors + 0 + 0 + -1 + PercentZero + 75 + + + MutagenSensitivity_StuffMult + + Multiplier on the impact of mutagenic effects on this creature. + StuffStatFactors + 1 + 1 + 0 + PercentZero + 75 + true + + + + MutaniteConcentration + + The concentration of raw mutanite in this thing. + ThingMutagenics + false + 0 + 0 + 0 + PercentZero + 2500 + +
    diff --git a/1.5/Defs/StatDefs/SapientAnimals.xml b/1.5/Defs/StatDefs/SapientAnimals.xml new file mode 100644 index 000000000..947251d85 --- /dev/null +++ b/1.5/Defs/StatDefs/SapientAnimals.xml @@ -0,0 +1,56 @@ + + + SapientAnimalA + + Controls the degree to which a pawn resists changes in instinct. + + BasicsPawn + 1.0 + 0.0 + 3 + PercentZero + 75 + true + + + + SapientAnimalResistance + + Controls how much control a sapient animal has before going feral. + BasicsPawn + 1.0 + 1.0 + 0 + 3 + FloatOne + 75 + + + + SapienceRecoverFactor + + Controls how much sapience a pawn recovers over time. + BasicsPawn + 0.0 + 0 + -10 + 10 + FloatOne + 75 + + + + SapienceLimit + + The maximum sapience this pawn can have. + BasicsPawn + 1 + 1 + 0 + 1 + PercentZero + 75 + + + + diff --git a/1.5/Defs/StatDefs/Utils.xml b/1.5/Defs/StatDefs/Utils.xml new file mode 100644 index 000000000..d901bf721 --- /dev/null +++ b/1.5/Defs/StatDefs/Utils.xml @@ -0,0 +1,35 @@ + + + PM_HasMorphStat + Pawnmorph.StatWorkers.HasMorphStat + + The morph type that can be tagged from this animal, if any. Tagging a morph allows you to create injectors for that morph at the Injector lab, once the appropriate research has been complete. You can also scan the animal's genome for mutations at a Mutation Sequencer. + PawnMutagenics + 95 + true + + + + + PM_BodySize + + Mutations have caused this pawn to change size. + 1.0 + 1.0 + 0.5 + PercentZero + 75 + + + + PM_Lift + + How much weight mutations currently provide lift for. + 0 + 0 + 0 + PercentZero + 75 + 1 + + diff --git a/1.5/Defs/StyleDefs/BeardDefs.xml b/1.5/Defs/StyleDefs/BeardDefs.xml new file mode 100644 index 000000000..4af0b15a0 --- /dev/null +++ b/1.5/Defs/StyleDefs/BeardDefs.xml @@ -0,0 +1,8 @@ + + + PM_BeardHidden + + Things/Mote/Transparent + Things/Mote/Transparent + + \ No newline at end of file diff --git a/1.5/Defs/StyleDefs/HairDefs.xml b/1.5/Defs/StyleDefs/HairDefs.xml new file mode 100644 index 000000000..ebd621024 --- /dev/null +++ b/1.5/Defs/StyleDefs/HairDefs.xml @@ -0,0 +1,9 @@ + + + PM_HairHidden + + Any + + true + + \ No newline at end of file diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_ArmMutation.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_ArmMutation.xml new file mode 100644 index 000000000..7d8a15649 --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_ArmMutation.xml @@ -0,0 +1,17 @@ + + + ArmBecomsWing + + + +
  • tale_noun->[PAWN_nameDef]'s arms changing
  • +
  • tale_noun->[PAWN_nameDef]'s twisting and contorting into wings
  • +
  • image->[PAWN_nameFull] flaps [PAWN_possessive] arms [circumstance_group]
  • +
  • image->[PAWN_nameFull] tries to lift something [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to unfurl their wings.
  • +
  • desc_sentence->[PAWN_pronoun] tries to lift off the ground.
  • +
  • circumstance_group->while someone pats [PAWN_possessive] head
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_EarMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_EarMutations.xml new file mode 100644 index 000000000..7fd5ca18e --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_EarMutations.xml @@ -0,0 +1,46 @@ + + + + +
  • tale_noun->[PAWN_nameDef]'s ears changing
  • +
  • image->[PAWN_nameFull] examines [PAWN_possessive] ears [circumstance_group]
  • +
  • circumstance_group->as [PAWN_possessive] ears twitch
  • +
  • circumstance_group->while someone touches [PAWN_possessive] ears
  • +
  • desc_sentence->[PAWN_pronoun] is playing with them.
  • +
  • desc_sentence->[PAWN_pronoun] new ears twitch.
  • +
    +
    +
    + + EarsChangedMisc + + + + EarsChangedCanid + + + +
  • tale_noun->[PAWN_nameDef]'s ears growing fur and becoming pointed
  • +
  • tale_noun->[PAWN_nameDef] growing dog ears
  • +
  • tale_noun->[PAWN_nameDef]'s ears changing to those of a canine
  • +
  • image->[PAWN_nameFull] looks distracted by the sounds coming [circumstance_group]
  • +
  • circumstance_group->[PAWN_possessive] canine ears lie flat in fear
  • +
  • circumstance_group->[PAWN_possessive] canine ears pricked up
  • +
  • desc_sentence->[PAWN_pronoun] is distracted by their improved hearing.
  • +
    +
    +
    + + EarsChangedFeline + + + +
  • tale_noun->[PAWN_nameDef]'s ears growing fur and becoming pointed
  • +
  • tale_noun->[PAWN_nameDef] growing cat ears
  • +
  • image->[PAWN_nameFull] ears begin turning toward loud noises [circumstance_group]
  • +
  • image->[PAWN_nameFull] seems distracted by the loud noises [circumstance_group]
  • +
  • circumstance_group->while someone tries to scratch [PAWN_possessive] ears
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_FootMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_FootMutations.xml new file mode 100644 index 000000000..ec7f1cb23 --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_FootMutations.xml @@ -0,0 +1,85 @@ + + + + +
  • image->[PAWN_nameFull]'s feet begin to change [circumstance_group]
  • +
  • circumstance_group->as someone watches [PAWN_possessive] feet change
  • +
  • circumstance_group->while people stare at [PAWN_possessive] feet change
  • +
  • desc_sentence->[PAWN_pronoun] tests [PAWN_possessive] new feet.
  • +
    +
    +
    + + FootBecomesCanidPaw + + + +
  • tale_noun->[PAWN_nameDef] feet becoming paws
  • +
  • image->[PAWN_nameFull]'s toes shorten and grow blunt claws [circumstance_group]
  • +
  • image->the soles of [PAWN_nameFull]'s feet darken and become rough paw pads [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] feels the rough pads of [PAWN_possessive] new feet.
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance them self on [PAWN_possessive] new paws.
  • +
    +
    +
    + + FootBecomesFelinePaw + + + +
  • tale_noun->[PAWN_nameDef] feet becoming paws
  • +
  • image->[PAWN_nameFull]'s toes shorten and grow sharp retractable claws [circumstance_group]
  • +
  • image->the soles of [PAWN_nameFull]'s feet darken and become smooth paw pads [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] feels the smooth pads of [PAWN_possessive] new feet.
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance them self on [PAWN_possessive] new paws.
  • +
    +
    +
    + + FootBecomesHooves + + + +
  • tale_noun->[PAWN_nameDef] feet becoming hooves
  • +
  • image->[PAWN_nameFull]'s toes joining and hardening into a single hoof [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance them self on [PAWN_possessive] new hooves.
  • +
    +
    +
    + + FootBecomesClovenHooves + + + +
  • tale_noun->[PAWN_nameDef] feet becoming cloven hooves
  • +
  • image->[PAWN_nameFull]'s toes joining and hardening into a split hoof [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance them self on [PAWN_possessive] new hooves.
  • +
    +
    +
    + + FootBecomesTrotter + + + +
  • tale_noun->[PAWN_nameDef] feet becoming pig-like trotters
  • +
  • image->[PAWN_nameFull]'s toes shrinking and hardening into a trotter foot [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to balance them self on [PAWN_possessive] new trotters.
  • +
    +
    +
    + + FeetBecomeTalons + + + +
  • tale_noun->[PAWN_nameDef] feet turning into talons
  • +
  • image->the skin on [PAWN_nameFull]'s feet begins to dry out and turn into scales [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s toe nails sharpening into large talons [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s toes lengthening into large avian feet [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries walking with [PAWN_possessive] new talons.
  • +
  • desc_sentence->[PAWN_pronoun] tries to pick something up with [PAWN_possessive] new talons.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_HandMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_HandMutations.xml new file mode 100644 index 000000000..854d408ce --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_HandMutations.xml @@ -0,0 +1,43 @@ + + + + +
  • tale_noun->[PAWN_nameDef]'s hands changing
  • +
  • image->[PAWN_nameFull] examines [PAWN_possessive] hands [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] tries to pick something up.
  • +
  • desc_sentence->[PAWN_pronoun] tests their new hands.
  • +
    +
    +
    + + HandsChangedMisc + + + + HandsBecomePaws + + + +
  • tale_noun->[PAWN_nameDef]'s thumbs shrinking and becoming dewclaws
  • +
  • tale_noun->[PAWN_nameDef]'s hands becoming paws
  • +
  • image->[PAWN_nameFull] tries to grasp something [circumstance_group]
  • +
  • circumstance_group->while someone pats [PAWN_possessive] paws
  • +
  • circumstance_group->while someone rubs [PAWN_possessive] paw pads
  • +
  • desc_sentence->[PAWN_pronoun] mourns the loss of [PAWN_possessive] thumbs.
  • +
    +
    +
    + + HandsBecomeHooves + + + +
  • tale_noun->[PAWN_nameDef]'s hands harding into hoves
  • +
  • tale_noun->[PAWN_nameDef]'s hands becoming near useless hooves
  • +
  • image->[PAWN_nameFull] tries to pull their fingers apart [circumstance_group]
  • +
  • image->[PAWN_nameFull] tries fruitlessly to grasp something [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] mourns the loss of [PAWN_possessive] hands.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml new file mode 100644 index 000000000..f15c5906d --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml @@ -0,0 +1,35 @@ + + + LegBecame + + +
  • tale_noun->[PAWN_nameDef]'s legs became that of an animal
  • +
  • image->[PAWN_nameFull]'s legs begin to change structure [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] seems unsteady on [PAWN_possessive] new legs.
  • +
  • desc_sentence->[PAWN_pronoun] seems remarkably comfortable with [PAWN_possessive] new legs.
  • +
    +
    +
    + + + LegBecameDigitgrade + + + +
  • tale_noun->[PAWN_nameDef]'s legs became digitgrade
  • +
  • image->[PAWN_nameFull]'s legs change structure, forcing [PAWN_possessive] to walk on [PAWN_possessive] toes [circumstance_group]
  • +
    +
    +
    + + + LegBecameUnguligrade + + + +
  • tale_noun->[PAWN_nameDef]'s legs became unguligrade
  • +
  • image->[PAWN_nameFull]'s legs change structure, forcing [PAWN_possessive] to walk on [PAWN_possessive] nails [circumstance_group]
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_MutationBase.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_MutationBase.xml new file mode 100644 index 000000000..6ca42b5cb --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_MutationBase.xml @@ -0,0 +1,17 @@ + + + Volatile + 16 + 0.05 + Tale_SinglePawn + + +
  • image->[PAWN_nameFull] yelling in fright [circumstance_group]
  • +
  • circumstance_phrase->as people look on in horror
  • + +
  • circumstance_phrase->as people laugh nearby
  • +
  • desc_sentence->[PAWN_pronoun] seems surprisingly uncaring about it.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_MuzzleMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_MuzzleMutations.xml new file mode 100644 index 000000000..3e066e2c0 --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_MuzzleMutations.xml @@ -0,0 +1,51 @@ + + + + +
  • tale_noun->[PAWN_nameDef] face becoming a muzzle
  • +
  • image->[PAWN_nameFull] feeling [PAWN_possessive] face [circumstance_group]
  • +
  • image->[PAWN_nameFull] yelling in fright [circumstance_group]
  • +
  • circumstance_phrase->as [PAWN_possessive] face pushes out into a muzzle
  • +
  • desc_sentence->[PAWN_pronoun] looks terrified at the change.
  • +
  • desc_sentence->[PAWN_pronoun] examines their new animal like face.
  • +
    +
    +
    + + GrewMuzzleMisc + + + + GrewCanidMuzzle + + + +
  • tale_noun->[PAWN_nameDef] growing an canine muzzle
  • +
  • tale_noun->[PAWN_nameDef] head taking the shape of a canine
  • +
  • image->[PAWN_nameFull] yells becoming barks [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to sniff intensely at all the new smells [circumstance_group]
  • +
  • desc_sentence->[PAWN_pronoun] face becoming a canine muzzle.
  • +
  • desc_sentence->[PAWN_pronoun] begins to pant once the changes stop.
  • +
  • desc_sentence->[PAWN_pronoun] begins to sniff intensely at something.
  • +
  • desc_sentence->[PAWN_pronoun] begins to pant happily.
  • +
  • desc_sentence->[PAWN_pronoun] whines in fright.
  • +
    +
    +
    + + GrewFelineMuzzle + + + +
  • tale_noun->[PAWN_nameDef] growing a feline muzzle
  • +
  • tale_noun->[PAWN_nameDef]'s face becoming like that of a cat
  • +
  • image->[PAWN_nameFull] yells turn into yowls [circumstance_group]
  • +
  • image->[PAWN_nameFull] nose begins turning pink [circumstance_group]
  • +
  • circumstance_phrase->while someone plays with [PAWN_pronoun] whiskers
  • +
  • desc_sentence->[PAWN_pronoun] begins purring contently.
  • +
  • desc_sentence->[PAWN_pronoun] begins hissing angrily.
  • +
  • desc_sentence->[PAWN_pronoun] tries to talk but all that comes out is are meows.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_SkinMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_SkinMutations.xml new file mode 100644 index 000000000..c35f48e86 --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_SkinMutations.xml @@ -0,0 +1,33 @@ + + + LimbGrowsFur + + + +
  • tale_noun->[PAWN_nameDef] growing a coat of fur
  • +
  • tale_noun->[PAWN_nameDef]'s limb becoming furred
  • +
  • image->the hair on [PAWN_nameFull]'s body begins to thicken into fur [circumstance_group]
  • +
  • image->[PAWN_nameFull]'s hair thickens into animal fur [circumstance_group]
  • +
  • circumstance_group->while someone feels [PAWN_possessive] fur
  • +
  • circumstance_group->as someone nearby begins to brush [PAWN_possessive] fur
  • +
  • desc_sentence->[PAWN_pronoun] seems uncomfortable in [PAWN_possessive] new fur coat.
  • +
  • desc_sentence->[PAWN_pronoun] seems pleased with [PAWN_possessive] new fur coat.
  • +
    +
    +
    + + LimbGrowsHide + + + +
  • tale_noun->[PAWN_nameDef]'s skin becoming thick hide
  • +
  • tale_noun->[PAWN_nameDef] growing thick hide
  • +
  • image->[PAWN_nameFull]'s skin begins to thicken [circumstance_group]
  • +
  • image->[PAWN_nameFull] begins to scratch [PAWN_possessive] skin as it thickens into had [circumstance_group]
  • +
  • circumstance_group->while someone touches [PAWN_pronoun] hide
  • +
  • desc_sentence->[PAWN_pronoun] seems displeased with [PAWN_pronoun] new hide.
  • +
  • desc_sentence->[PAWN_pronoun] seems to like [PAWN_pronoun] thick hide.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_TailMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_TailMutations.xml new file mode 100644 index 000000000..9b7a9c8c9 --- /dev/null +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_TailMutations.xml @@ -0,0 +1,36 @@ + + + + +
  • tale_noun->[PAWN_nameDef] growing a tail
  • +
  • image->[PAWN_nameFull] examining [PAWN_possessive] rear [circumstance_group]
  • +
  • image->[PAWN_nameFull] looking behind [PAWN_possessive]self [circumstance_group]
  • +
  • image->[PAWN_nameFull] yelling in fright [circumstance_group]
  • +
  • circumstance_group->as people look on in horror
  • +
  • circumstance_group->as people laugh nearby
  • +
  • circumstance_group->as people pull at [PAWN_possessive] new tail
  • +
  • desc_sentence->[PAWN_pronoun] seems totally unaware of what is around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_pronoun] looks terrified at the new addition.
  • +
  • desc_sentence->[PAWN_pronoun] is confused at what it's doing there.
  • +
  • desc_sentence->[PAWN_pronoun] is trying to pull it off.
  • +
  • desc_sentence->[PAWN_pronoun] is trying to hide it from view.
  • +
    +
    +
    + + GrewTail + + + +
  • circumstance_phrase->as [PAWN_possessive] tail flicks, obviously
  • +
  • circumstance_phrase->as [PAWN_possessive] tail wags, unwillingly
  • +
  • circumstance_phrase->as [PAWN_possessive] tail wags, excited
  • +
  • circumstance_phrase->as [PAWN_possessive] tail hangs between [PAWN_possessive] legs, scared
  • +
  • circumstance_phrase->as [PAWN_possessive] tail hangs between [PAWN_possessive] legs, embarrased
  • +
  • circumstance_phrase->as people pat the fur on [PAWN_nameDef]'s new tail
  • +
  • circumstance_phrase->while someone pats [PAWN_possessive] new tail
  • +
  • desc_sentence->[PAWN_pronoun] is playing with the fur on it.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/TaleDefs_Feralization.xml b/1.5/Defs/TaleDefs/TaleDefs_Feralization.xml new file mode 100644 index 000000000..e8e4e98e3 --- /dev/null +++ b/1.5/Defs/TaleDefs/TaleDefs_Feralization.xml @@ -0,0 +1,172 @@ + + + Tale_DoublePawn + PAWN + ANIMAL + Volatile + 5 + 0.1 + + + TransformationCanid + + + +
  • tale_noun->[PAWN_nameDef]'s transformation to [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] becoming [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] turning into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming completely into [ANIMAL_nameFull]
  • +
  • tale_noun-> [ANIMAL_nameFull] taking over [PAWN_nameDef]'s body
  • +
  • image->[PAWN_nameFull] doubled over in pain [circumstance_group]
  • +
  • image->[PAWN_nameFull] falling to all fours [circumstance_group]
  • +
  • image->[PAWN_nameFull] looking over their body [circumstance_group]
  • +
  • image->[PAWN_nameFull] on [PAWN_possessive] knees, shouting in pain [circumstance_group]
  • +
  • circumstance_phrase->as [PAWN_possessive]'s hunched form coats with fur
  • +
  • circumstance_phrase->with great shame
  • +
  • circumstance_phrase->trying to cover [PAWN_pronoun]self with hands that shift into paws
  • +
  • circumstance_phrase->as the mechanites in [PAWN_possessive] body work their magic
  • +
  • circumstance_phrase->as others look on
  • +
  • circumstance_phrase->as others look on in terror
  • +
  • circumstance_phrase->as someone looks on, grinning
  • +
  • circumstance_phrase->on canine paws
  • +
  • circumstance_phrase->with [PAWN_possessive] tail between [PAWN_possessive] legs
  • +
  • circumstance_phrase->while their legs reshape
  • +
  • circumstance_phrase->with [PAWN_possessive] feral eyes wide open
  • +
  • circumstance_phrase->with [PAWN_possessive] eyes glued shut
  • +
  • desc_sentence->[PAWN_pronoun] seems totally unaware of what is around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_possessive] face itself seems to be shifting to fit a more animal shape.
  • +
  • desc_sentence->[PAWN_pronoun] is nearly unconscious, [PAWN_possessive] tongue lolling out, drool dripping.
  • +
  • desc_sentence->[PAWN_pronoun] is convulsing violently as [PAWN_objective] body shifts to completion.
  • +
  • desc_sentence->[PAWN_pronoun] looks terrified to start [PAWN_possessive] new life as a [ANIMAL_nameFull].
  • +
  • desc_sentence->[PAWN_pronoun] looks visibly aroused.
  • +
  • desc_sentence->[PAWN_nameDef]'s new tail is wagging, possibly involuntarily.
  • +
  • desc_sentence->[PAWN_nameDef]'s new ears are flicked back in fright.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be enjoying it.
  • +
  • desc_sentence->[PAWN_nameDef]'s clothes fall to the floor around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_pronoun] looks inhuman, with very little left of [PAWN_possessive] human form.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be patting [PAWN_possessive] [ANIMAL_nameFull]-fur.
  • +
  • desc_sentence->[PAWN_nameDef]'s [ANIMAL_nameFull]like muzzle is agape from shock.
  • +
    +
    +
    + + TransformationCow + + + +
  • tale_noun->[PAWN_nameDef]'s transformation to [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] becoming [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] turning into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming completely into [ANIMAL_nameFull]
  • +
  • tale_noun-> [ANIMAL_nameFull] taking over [PAWN_nameDef]'s body
  • +
  • image->[PAWN_nameFull] doubled over in pain [circumstance_group]
  • +
  • image->[PAWN_nameFull] falling to all fours [circumstance_group]
  • +
  • image->[PAWN_nameFull] looking over their body [circumstance_group]
  • +
  • image->[PAWN_nameFull] on [PAWN_possessive] knees, mooing loudly [circumstance_group]
  • +
  • circumstance_phrase->as [PAWN_possessive]'s hunched form thickens to hide
  • +
  • circumstance_phrase->with great shame
  • +
  • circumstance_phrase->trying to cover [PAWN_pronoun]self with hands that shift into hooves
  • +
  • circumstance_phrase->as the mechanites in [PAWN_possessive] body work their magic
  • +
  • circumstance_phrase->as others look on
  • +
  • circumstance_phrase->as others look on in terror
  • +
  • circumstance_phrase->as someone looks on, grinning
  • +
  • circumstance_phrase->on heavy hooves
  • +
  • circumstance_phrase->with [PAWN_possessive] tail between [PAWN_possessive] legs
  • +
  • circumstance_phrase->while their legs reshape
  • +
  • circumstance_phrase->with [PAWN_possessive] feral eyes wide open
  • +
  • circumstance_phrase->with [PAWN_possessive] eyes glued shut
  • +
  • desc_sentence->[PAWN_pronoun] seems totally unaware of what is around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_possessive] face itself seems to be shifting to fit a more animal shape.
  • +
  • desc_sentence->[PAWN_pronoun] is nearly unconscious, [PAWN_possessive] tongue lolling out, drool dripping.
  • +
  • desc_sentence->[PAWN_pronoun] is convulsing violently as [PAWN_objective] body shifts to completion.
  • +
  • desc_sentence->[PAWN_pronoun] looks terrified to start [PAWN_possessive] new life as a [ANIMAL_nameFull].
  • +
  • desc_sentence->[PAWN_pronoun] looks visibly aroused.
  • +
  • desc_sentence->[PAWN_nameDef] is letting out a loud moo.
  • +
  • desc_sentence->[PAWN_nameDef]'s new ears are flicked back in fright.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be enjoying it.
  • +
  • desc_sentence->[PAWN_nameDef]'s clothes fall to the floor around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_pronoun] looks inhuman, with very little left of [PAWN_possessive] human form.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be patting [PAWN_possessive] [ANIMAL_nameFull]-fur.
  • +
  • desc_sentence->[PAWN_nameDef]'s [ANIMAL_nameFull]like snout is agape from shock.
  • +
    +
    +
    + + TransformationChicken + + + +
  • tale_noun->[PAWN_nameDef]'s transformation to [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] becoming [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] turning into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming completely into [ANIMAL_nameFull]
  • +
  • tale_noun-> [ANIMAL_nameFull] taking over [PAWN_nameDef]'s body
  • +
  • image->[PAWN_nameFull] doubled over in pain [circumstance_group]
  • +
  • image->[PAWN_nameFull] looking over their body [circumstance_group]
  • +
  • image->[PAWN_nameFull] on [PAWN_possessive] knees, squacking loudly [circumstance_group]
  • +
  • circumstance_phrase->as [PAWN_possessive]'s bulging form plumes with feathers
  • +
  • circumstance_phrase->with great shame
  • +
  • circumstance_phrase->trying to cover [PAWN_pronoun]self with hands that shift into wings
  • +
  • circumstance_phrase->as the mechanites in [PAWN_possessive] body work their magic
  • +
  • circumstance_phrase->as others look on
  • +
  • circumstance_phrase->as others look on in terror
  • +
  • circumstance_phrase->as someone looks on, grinning
  • +
  • circumstance_phrase->on flexing chicken-feet
  • +
  • circumstance_phrase->while their feet scratch at the dirt
  • +
  • circumstance_phrase->with [PAWN_possessive] feral eyes wide open
  • +
  • circumstance_phrase->with [PAWN_possessive] eyes glued shut
  • +
  • desc_sentence->[PAWN_pronoun] seems totally unaware of what is around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_possessive] face itself seems to be shifting to fit a more animal shape.
  • +
  • desc_sentence->[PAWN_pronoun] is nearly unconscious, [PAWN_possessive] beak pressing out, aghast.
  • +
  • desc_sentence->[PAWN_pronoun] is convulsing violently as [PAWN_objective] body shifts to completion.
  • +
  • desc_sentence->[PAWN_pronoun] looks terrified to start [PAWN_possessive] new life as a [ANIMAL_nameFull].
  • +
  • desc_sentence->[PAWN_pronoun] looks visibly aroused.
  • +
  • desc_sentence->[PAWN_nameDef] is letting out a loud bok!
  • +
  • desc_sentence->[PAWN_nameDef]'s new wings are flapping.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be enjoying it.
  • +
  • desc_sentence->[PAWN_nameDef]'s clothes fall to the floor around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_pronoun] looks inhuman, with very little left of [PAWN_possessive] human form.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be patting [PAWN_possessive] [ANIMAL_nameFull]-fur.
  • +
  • desc_sentence->[PAWN_nameDef]'s [ANIMAL_nameFull]like beak is agape from shock.
  • +
    +
    +
    + + TransformationMisc + + + +
  • tale_noun->[PAWN_nameDef]'s transformation to [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] becoming [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] turning into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming into [ANIMAL_nameFull]
  • +
  • tale_noun->[PAWN_nameDef] transforming completely into [ANIMAL_nameFull]
  • +
  • tale_noun-> [ANIMAL_nameFull] taking over [PAWN_nameDef]'s body
  • +
  • image->[PAWN_nameFull] doubled over in pain [circumstance_group]
  • +
  • image->[PAWN_nameFull] falling to all fours [circumstance_group]
  • +
  • image->[PAWN_nameFull] looking over their body [circumstance_group]
  • +
  • circumstance_phrase->with great shame
  • +
  • circumstance_phrase->trying to cover [PAWN_pronoun]self with hands that shift into wings
  • +
  • circumstance_phrase->as the mechanites in [PAWN_possessive] body work their magic
  • +
  • circumstance_phrase->as others look on
  • +
  • circumstance_phrase->as others look on in terror
  • +
  • circumstance_phrase->as someone looks on, grinning
  • +
  • circumstance_phrase->while their feet scratch at the dirt
  • +
  • circumstance_phrase->with [PAWN_possessive] feral eyes wide open
  • +
  • circumstance_phrase->with [PAWN_possessive] eyes glued shut
  • +
  • desc_sentence->[PAWN_pronoun] seems totally unaware of what is around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_possessive] face itself seems to be shifting to fit a more animal shape.
  • +
  • desc_sentence->[PAWN_pronoun] is convulsing violently as [PAWN_objective] body shifts to completion.
  • +
  • desc_sentence->[PAWN_pronoun] looks terrified to start [PAWN_possessive] new life as a [ANIMAL_nameFull].
  • +
  • desc_sentence->[PAWN_pronoun] looks visibly aroused.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be enjoying it.
  • +
  • desc_sentence->[PAWN_nameDef]'s clothes fall to the floor around [PAWN_objective].
  • +
  • desc_sentence->[PAWN_pronoun] looks inhuman, with very little left of [PAWN_possessive] human form.
  • +
  • desc_sentence->[PAWN_pronoun] seems to be patting [PAWN_possessive] [ANIMAL_nameFull]-fur.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/TaleDefs/TaleDefs_Incidents.xml b/1.5/Defs/TaleDefs/TaleDefs_Incidents.xml new file mode 100644 index 000000000..1c6cd2995 --- /dev/null +++ b/1.5/Defs/TaleDefs/TaleDefs_Incidents.xml @@ -0,0 +1,34 @@ + + + MutationToxicityRevealed + + Tale_SinglePawnAndDef + ILLNESS + Volatile + 4 + + +
  • tale_noun->[PAWN_nameDef]'s body seeming to shift
  • +
  • tale_noun->[PAWN_nameDef] contorting as green dust falls around
  • +
  • image->[PAWN_nameFull] staggering through a field [circumstance_group]
  • +
  • image->[PAWN_nameFull] lying on the ground [circumstance_group]
  • +
  • image->[PAWN_nameFull] lying in bed [circumstance_group]
  • +
  • image->[PAWN_nameFull] crouching next to a fire [circumstance_group]
  • +
  • image->[PAWN_nameFull] trying to light a fire [circumstance_group]
  • +
  • image->[PAWN_nameFull] mindlessly removing [PAWN_possessive] clothes [circumstance_group]
  • +
  • circumstance_phrase->and sweating uncontrollably as fur seems to spread
  • +
  • circumstance_phrase->and shivering uncontrollably while feathers grow in
  • +
  • circumstance_phrase->while both sweating and shivering, seeing their body reshape
  • +
  • circumstance_phrase->with a face pressing out
  • +
  • circumstance_phrase->while vomiting
  • +
  • circumstance_phrase->with a visible tail
  • +
  • desc_sentence->A [Animal] looks very interested.
  • +
  • desc_sentence->[PAWN_nameDef]'s clothes are strewn around [PAWN_pronoun].
  • +
  • desc_sentence->The sky is a murky [Color].
  • +
  • desc_sentence->[Quantity_adjphrase] misshapen [Color] [TerrainFeature]s surround the scene.
  • +
  • desc_sentence->The scene takes place inside a twisted [TreeType] forest.
  • +
  • desc_sentence->A [Animal] gets closer, examining [PAWN_nameDef] carefully.
  • +
    +
    +
    +
    diff --git a/1.5/Defs/Terrain/Mutagenics.xml b/1.5/Defs/Terrain/Mutagenics.xml new file mode 100644 index 000000000..3a56b20b2 --- /dev/null +++ b/1.5/Defs/Terrain/Mutagenics.xml @@ -0,0 +1,269 @@ + + + Mutonite + + Pawnmorph.MutagenicStone + A glowing rock of pure, radiant mechanites. + + Terrain/Muto_Atlas + + +
  • + 3 + (0, 255, 0,0) +
  • +
    + + 900 + + Rare + + false + Mutanite + 1 + 1 + 0.0 + false + +
    + + + Mutanite + + A glowing green hunk of activated mechanites, whatever that means. The smaller lumps are safer to handle than the meteors they come from. + + Things/Item/Resource/Mutastone + Graphic_StackCount + + false + false + Metal_Drop + Metal_Drop + +
  • + 2 + (0,255,0,0) +
  • +
    + + 50 + 0.5 + 0.9 + 0.45 + 0.72 + 3 + 0 + 1 + 1 + 1 + + +
  • RawMutagen
  • +
    + 0.125 + 1 + 1 + false + + +
  • Mutagenic
  • +
    + 0.05 + ConstructMetal + (160,225,60) + BulletImpact_Metal + MeleeHit_Metal_Sharp + MeleeHit_Metal_Blunt + + 1.3 + 2 + 0.0 + +
    +
    + + + MysteriousOoze + + Terrain/Surfaces/Ooze + FadeRough + 300 + + -2 + -2 + + Filth_Dirt + 0 + True + true + MutagenSoil + true + +
  • + + +
  • KickMaterialInEyes
  • + + OozeInEyes + 1.5 + +
    +
    + + + MutagenSoil + + Terrain/Surfaces/MutagenSoil + FadeRough + 340 + 2 + + -1 + -1 + + Rocky + +
  • Light
  • +
  • Medium
  • +
  • Heavy
  • +
  • Diggable
  • +
    + Filth_Dirt + 0.0 + true + True + +
  • + + +
  • KickMaterialInEyes
  • + + TFDirtInEyes + 1.5 + +
    +
    + + + HediffWithComps + TFDirtInEyes + + This feature is unimplemented, so you probably shouldn't be seeeing this hediff. + mutagenic dirt + blind + 1 + +
  • + -0.8 + +
  • + PawnmorphFoxTF + +
  • PawnmorphAlpacaTFPartial
  • +
  • PawnmorphBearTFPartial
  • +
  • PawnmorphBoarTFPartial
  • +
  • PawnmorphBoomalopeTFPartial
  • +
  • PawnmorphChickenTFPartial
  • +
  • PawnmorphCowTFPartial
  • +
  • PawnmorphDeerTFPartial
  • +
  • PawnmorphFoxTFPartial
  • +
  • PawnmorphHuskyTFPartial
  • +
  • PawnmorphPigTFPartial
  • +
  • PawnmorphRatTFPartial
  • +
  • PawnmorphWargTFPartial
  • +
  • PawnmorphWolfTFPartial
  • + + +
  • PawnmorphAlpacaTF
  • +
  • PawnmorphBearTF
  • +
  • PawnmorphBoarTF
  • +
  • PawnmorphBoomalopeTF
  • +
  • PawnmorphChickenTF
  • +
  • PawnmorphCowTF
  • +
  • PawnmorphDeerTF
  • +
  • PawnmorphFoxTF
  • +
  • PawnmorphHuskyTF
  • +
  • PawnmorphPigTF
  • +
  • PawnmorphRatTF
  • +
  • PawnmorphWargTF
  • +
  • PawnmorphWolfTF
  • +
    + 30 + 1.00 + + + +
    + +
  • + 0.05 +
  • +
    +
    + + + HediffWithComps + OozeInEyes + + This feature is unimplemented, so you probably shouldn't be seeeing this hediff. + oozed + blind + 1 + +
  • + -0.8 + +
  • + PawnmorphFoxTF + +
  • PawnmorphAlpacaTFPartial
  • +
  • PawnmorphBearTFPartial
  • +
  • PawnmorphBoarTFPartial
  • +
  • PawnmorphBoomalopeTFPartial
  • +
  • PawnmorphChickenTFPartial
  • +
  • PawnmorphCowTFPartial
  • +
  • PawnmorphDeerTFPartial
  • +
  • PawnmorphFoxTFPartial
  • +
  • PawnmorphHuskyTFPartial
  • +
  • PawnmorphPigTFPartial
  • +
  • PawnmorphRatTFPartial
  • +
  • PawnmorphWargTFPartial
  • +
  • PawnmorphWolfTFPartial
  • + + +
  • PawnmorphAlpacaTF
  • +
  • PawnmorphBearTF
  • +
  • PawnmorphBoarTF
  • +
  • PawnmorphBoomalopeTF
  • +
  • PawnmorphChickenTF
  • +
  • PawnmorphCowTF
  • +
  • PawnmorphDeerTF
  • +
  • PawnmorphFoxTF
  • +
  • PawnmorphHuskyTF
  • +
  • PawnmorphPigTF
  • +
  • PawnmorphRatTF
  • +
  • PawnmorphWargTF
  • +
  • PawnmorphWolfTF
  • +
    + 30 + 1.00 + + + +
    + +
  • + 0.05 +
  • +
    +
    + + + Mutagenic + + BuildingDestroyed_Metal_Small + BuildingDestroyed_Metal_Medium + BuildingDestroyed_Metal_Big + + +
    diff --git a/1.5/Defs/ThingDefs_Buildings/Genebank.xml b/1.5/Defs/ThingDefs_Buildings/Genebank.xml new file mode 100644 index 000000000..7bd544b73 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/Genebank.xml @@ -0,0 +1,46 @@ + + + PM_Genebank + + A morphsilk tape-reel storage device that's optimised for storing genetic information. Can store 64 kMutabytes of information. + + Things/Building/GeneticStorage/GeneticStorage + Graphic_Multi + (2,2) + + MinifiedThing + +
  • BuildingsMisc
  • +
    + South + Building + Impassable + 0.6 + + 70 + 100 + 5 + 0.7 + + (1,1) + + 50 + 2 + 5 + + GR_GeneticsTab + 1 + +
  • Injectors
  • +
    + +
  • + 64 +
  • +
  • + CompPowerTrader + 10 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml b/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml new file mode 100644 index 000000000..98c572f16 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml @@ -0,0 +1,46 @@ + + + PM_GenebankLarge + + A morphsilk tape-reel storage device that's optimised for storing genetic information. This advanced version can store 256 kMutabytes of information. + + Things/Building/GeneticStorageAdvanced/GenebankAdvanced + Graphic_Multi + (2,2) + + MinifiedThing + +
  • BuildingsMisc
  • +
    + South + Building + Impassable + 0.6 + + 70 + 100 + 5 + 0.7 + + (2,1) + + 150 + 5 + 10 + + GR_GeneticsTab + 1 + +
  • MutagenChambers
  • +
    + +
  • + 256 +
  • +
  • + CompPowerTrader + 50 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/InjectorLab.xml b/1.5/Defs/ThingDefs_Buildings/InjectorLab.xml new file mode 100644 index 000000000..bbff3f336 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/InjectorLab.xml @@ -0,0 +1,77 @@ + + + PM_InjectorLab + + A work bench equipped with more advanced components for creating and reverse-engineering mechanite mutagens. + Building_WorkTable + + Things/Building/MutagenBench/InjectorBench + Graphic_Multi + CutoutComplex + (3,1) + + Damage/Corner + Damage/Corner + Damage/Corner + Damage/Corner + + + +
  • ITab_Bills
  • +
    + true + 0.20 + 50 + +
  • Metallic
  • +
    + + 100 + 10 + + Building + 0.5 + True + + 3500 + 120 + 1.0 + + (3,1) + GR_GeneticsTab + PassThroughOnly + 70 + True + (0,0,-1) + Item + 4 + +
  • Make_ComponentsFromSlurry
  • +
  • Make_GenekitColorPicker
  • +
  • Make_ResurrectorFromMutonite
  • +
  • Make_HealerFromMutonite
  • +
  • Make_GlitterMedsFromMutonite
  • +
    + + BillsTab + + +
  • + +
  • ToolCabinet
  • + + +
  • + CompPowerTrader + 120 +
  • +
  • + + +
  • PlaceWorker_ShowFacilitiesConnections
  • + + +
  • Injectors
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml b/1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml new file mode 100644 index 000000000..8a15c9988 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml @@ -0,0 +1,79 @@ + + + MutaniteCentrifuge + + Pawnmorph.Buildings.MutaniteCentrifuge + When mutagenic slurry is piped in, the centrifuge compresses the mechanites extracted from them into mutanite. Consumes a lot of power. Resources are placed in the side chambers and separated into their individual components via centrifuge, before the mechanites are strained out through a morphsilk filter and pumped into the large chamber for slow compression.\n\nThe process is quite lossy.\n\nSetup: Connect the centrifuge to a mutagen tank using slurry pipes. Warning: turning on 'high power mode' causes mutagenic effects in a radius around it. + + Things/Building/MutaniteCentrifuge + Graphic_Single + (4, 4) + + (1.4, 0.4, 1.4) + (0,0,-0.1) + + + + 500 + 50 + 20 + 8 + 1 + + +
  • + CompPowerTrader + 1500 +
  • +
  • + 1 + (0, 255, 0,0) +
  • +
  • +
  • +
  • + 8 + MutagenCloud_Large +
  • +
  • + PM_SlurryNet +
  • +
    + Building + + 1500 + 200 + 1.0 + -10 + 35 + 8000 + + +
  • RewardStandardHighFreq
  • +
    + +
  • Pawnmorph.PlaceWorkers.Centrifuge
  • +
    + Normal + (3, 3) + 1.0 + true + Medium + Impassable + false + false + Sellable + GR_GeneticsTab + +
  • ExoticBuilding
  • +
    + +
  • + 0.5 +
  • +
    + +
  • MutagenCentrifuging
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml b/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml new file mode 100644 index 000000000..7397abe86 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml @@ -0,0 +1,134 @@ + + + PM_NewMutagenicChamber + + A chamber full of mutagenic liquid, capable of transforming pawns into animals in a much shorter period of time. However, it can only make things up to a certain size. A thrumbo does not fit in here. + Pawnmorph.Chambers.MutaChamber + MapMeshAndRealTime + + Things/Building/MutagenChamber/TFChamber_Glass + Graphic_Single + (7,7) + + (0.83, 0.3, 1.7) + + false + + false + MinifiedThing + +
  • MutagenChambers
  • +
    + Pawn + PassThroughOnly + 70 + true + 0.5 + false + +
  • ITab_ContentsCasket
  • +
    + +
  • BuildingsMisc
  • +
    + + 8000 + 200 + 0 + 200 + + Normal + (3,3) + true + (0,0,-1) + +
  • + CompPowerTrader + 300 +
  • +
  • +
  • + 3 + MutagenCloud_Large +
  • +
  • + 1.7 + 1 + true + + +
  • MechaniteSlurry
  • + + + 0 + +
  • + PM_SlurryNet + MechaniteSlurry +
  • +
  • + 4 + (0, 255, 0,0) +
  • +
  • + true + PMAnimalPickerGizmo_Chamber + PMAnimalPickerGizmoDescription_Chamber + +
  • Chaocow
  • +
  • Chaofox
  • +
  • Chaoboom
  • +
  • Chaoboar
  • +
  • Chaodino
  • +
  • PM_Chaothrumbo
  • + + +
  • + (2.3, 2.3) + 10.0 + (0,-0.5,0.2) + 50,200,50,70 +
  • +
  • + + Things/Building/MutagenChamber/TFChamber_Glass_Floor + Graphic_Single + (7,7) + false + + (0,0,0) + LayingPawn +
  • +
  • + + Things/Building/MutagenChamber/TFChamber_Glass_Front + Graphic_Single + (7,7) + false + Transparent + + (0,0,0) + MoteOverhead +
  • + +
  • + (0,0,0.25) + PawnRope +
  • +
    + GR_GeneticsTab + + false + + + 120 + 14 + 3 + 3 + 1 + + Heavy + Misc2 + 10 +
    +
    diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenLab.xml b/1.5/Defs/ThingDefs_Buildings/MutagenLab.xml new file mode 100644 index 000000000..a19111cfc --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/MutagenLab.xml @@ -0,0 +1,95 @@ + + + + + MutagenLab + + A work bench equipped with more advanced components for creating and reverse-engineering mechanite mutagens. + Building_WorkTable + + Things/Building/MutagenBench/MutagenBench + Graphic_Multi + CutoutComplex + (7,4) + + Damage/Corner + Damage/Corner + Damage/Corner + Damage/Corner + + + true + 0.20 + + 150 + 10 + + Building + 0.5 + True + + 3500 + 120 + 1.0 + + (5,2) + GR_GeneticsTab + PassThroughOnly + 70 + True + (0,0,-1) + Item + 4 + +
  • ITab_Bills
  • +
    + +
  • Make_ComponentsFromSlurry
  • +
  • Make_GenekitColorPicker
  • +
  • Make_ResurrectorFromMutonite
  • +
  • Make_HealerFromMutonite
  • +
  • Make_GlitterMedsFromMutonite
  • +
    + + BillsTab + + +
  • + +
  • ToolCabinet
  • + + +
  • + CompPowerTrader + 300 +
  • +
  • + + +
  • PlaceWorker_ShowFacilitiesConnections
  • + + +
  • SerumSynthesis
  • +
    +
    + + + DoBillsProduceMutagen + + WorkGiver_DoBill + Crafting + +
  • Intellectual
  • +
    + 95 + +
  • MutagenLab
  • +
    + produce mutagen + producing mutagen at + +
  • Manipulation
  • +
    + true +
    +
    diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenTank.xml b/1.5/Defs/ThingDefs_Buildings/MutagenTank.xml new file mode 100644 index 000000000..015131fad --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/MutagenTank.xml @@ -0,0 +1,74 @@ + + + PM_MutagenTank + Pawnmorph.Buildings.MutagenTank + MapMeshAndRealTime + + Normal + Stores liquid slurry in quantities enough to supply a chamber. Can be filled via a network of mutagen conduits, supplied by either a mutagen hopper or a vent pump. + + Things/Building/MutagenTank/MutagenTank + Graphic_Single + (2,2) + + Building + Impassable + 0.6 + false + + 70 + 100 + 5 + 0.7 + + (1,1) + + 100 + 10 + 2 + + GR_GeneticsTab + 1 + +
  • PM_MutagenStorage
  • +
    + +
  • + PM_SlurryNet + 10.0 + False + True + True + + Things/Item/Drug/Slurry/Slurry_a + PMExtractSlurryLabel + PMExtractSlurryDesc + 1 + 150 + MechaniteSlurry + 1 + + + + + false + 150 + MechaniteSlurry + 1 + +
  • +
  • + 3 + MutagenCloud_Tiny + 0.4 + 0.7 + PM_Filth_Slurry + 1 + + 30 + 60 + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenicShip.xml b/1.5/Defs/ThingDefs_Buildings/MutagenicShip.xml new file mode 100644 index 000000000..58dd7e13c --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/MutagenicShip.xml @@ -0,0 +1,71 @@ + + + + + + + + CrashedMutagenicShipPart + + A mysterious crashed piece of a spaceship. It may contain any manner of deadly defenders and exotic materials. This one seems to have mutagenic effects. + true + + Things/Building/MutationShipPart + Graphic_Single + (6,3) + + (5.5, 1.0, 2.45) + + + + 5 + 2 + + +
  • Pawnmorph.PlaceWorkers.ShowMutationRadius
  • +
    + +
  • + 12 + (217,80,80,0) +
  • +
  • + + + +
  • 0,10
  • +
  • 1,20
  • +
  • 3,30
  • +
  • 5,35
  • +
  • 10,50
  • +
  • 15,100
  • + + + FullRandomTFAnyOutcome + 1 + +
    +
    + + + + CrashedMutagenicShipPartIncoming + + (6, 3) + + Things/Skyfaller/SkyfallerShadowRectangle + (7, 3.5) + 5 + MutagenCloud_Large + 1 + + 6 + 10 + + + 300 + 400 + + + +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/MutationSequencer.xml b/1.5/Defs/ThingDefs_Buildings/MutationSequencer.xml new file mode 100644 index 000000000..5995fba89 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/MutationSequencer.xml @@ -0,0 +1,69 @@ + + + PM_MutationScanner + + Accesses your genebanks and sequences the animal genomes you've stored. Over time, will unlock mutations to be used in chambers, if manned. + + Things/Building/GenomeSequencer/GenomeSequencer + Graphic_Multi + 2.65 + (0,0,-0.05) + + (1.6875, 0.375, 2.125) + (0,0,-0.12) + + + + 150 + 4 + 1 + + + BuildingDestroyed_Metal_Big + + +
  • +
  • + CompPowerTrader + 700 +
  • +
  • +
  • +
  • + ResearchSpeed + 1 + 2 + ScannerGroundPenetrating_Ambience +
  • +
    + Building + true + + 200 + 12000 + 0.5 + -8 + + true + (0,0,2) + DiningChair + true + 0.40 + false + PassThroughOnly + 50 + GR_GeneticsTab + true + false + (3,3) + Heavy + +
  • PlaceWorker_PreventInteractionSpotOverlap
  • +
    + South + +
  • PM_MutationSequencer
  • +
    + 8 +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/PipenetDef.xml b/1.5/Defs/ThingDefs_Buildings/PipenetDef.xml new file mode 100644 index 000000000..8221f6047 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/PipenetDef.xml @@ -0,0 +1,29 @@ + + + PM_SlurryNet + 1 + + Slurry + + (0.31, 1, 0.33) + True + Things/Item/Drug/Slurry/Slurry_a + + +
  • PM_SlurryPipe
  • +
    + + + (0.31, 1, 0.33) + + +
  • + MechaniteSlurry + 1 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml b/1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml new file mode 100644 index 000000000..8b748c383 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml @@ -0,0 +1,80 @@ + + + PM_SlurryCanner + + Pulls slurry from the network and makes it available for hauling. + Building_Storage + Building + Building + Never + + Things/Building/MutagenChamber/TFChamber_Glass_Floor + Graphic_Single + (2,2) + + Things/Building/MutagenChamber/TFChamber_Glass_Floor + 1 + +
  • ITab_Storage
  • +
    + Item + + true + true + + + true + +
  • MechaniteSlurry
  • +
    +
    +
    + + Important + + true + +
  • MechaniteSlurry
  • +
    +
    +
    +
    + MapMeshOnly + Standable + false + + 80 + 35 + 0.7 + -2 + + + 10 + + +
  • + PM_SlurryNet + MechaniteSlurry + 1 +
  • +
  • +
  • + CompPowerTrader + 10 +
  • +
    + +
  • PM_MutagenStorage
  • +
    + true + false + true + true + BulletImpact_Metal + Light + GR_GeneticsTab + ConstructMetal + false + Misc1 +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/SlurryDecanner.xml b/1.5/Defs/ThingDefs_Buildings/SlurryDecanner.xml new file mode 100644 index 000000000..c462b3092 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/SlurryDecanner.xml @@ -0,0 +1,80 @@ + + + PM_SlurryDecanner + + Drains any slurry canisters placed on it into the connected slurry network. + Building_Storage + Building + Building + Never + + Things/Building/PM_Pipe_Input + Graphic_Single + (1,1) + + Things/Building/PM_Pipe_Input + 1 + +
  • ITab_Storage
  • +
    + Item + + true + true + + + true + +
  • MechaniteSlurry
  • +
    +
    +
    + + Normal + + true + +
  • MechaniteSlurry
  • +
    +
    +
    +
    + MapMeshOnly + Standable + false + + 80 + 35 + 0.7 + -2 + + + 10 + + +
  • + PM_SlurryNet + MechaniteSlurry + 1 +
  • +
  • +
  • + CompPowerTrader + 10 +
  • +
    + +
  • PM_MutagenStorage
  • +
    + true + false + true + true + BulletImpact_Metal + Light + GR_GeneticsTab + ConstructMetal + false + Misc1 +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml b/1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml new file mode 100644 index 000000000..07e8fc845 --- /dev/null +++ b/1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml @@ -0,0 +1,83 @@ + + + PM_SlurryPipe + + A pipe that transmits slurry. + PipeSystem.Building_Pipe + Building + Normal + + Things/Building/MutagenPipe_Atlas + Graphic_Single + Basic + +
  • PowerConduit
  • +
    + + (0,0.35,1,0.3) + +
    + Things/Building/Linked/PowerConduit_MenuIcon + 1 + + false + true + false + + Things/Building/MutagenPipe_Atlas + + + MapMeshOnly + Conduits + Standable + false + + 80 + 35 + 0.7 + -2 + + 1 + + 1 + + +
  • + PM_SlurryNet +
  • +
  • + 1 + (0, 255, 0,0) +
  • + +
    + +
  • PM_MutagenStorage
  • +
    + true + +
  • PipeSystem.PlaceWorker_Pipe
  • +
    + false + true + true + BulletImpact_Metal + Light + GR_GeneticsTab + ConstructMetal + false + Misc1 + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Misc/Filth_Slurry.xml b/1.5/Defs/ThingDefs_Misc/Filth_Slurry.xml new file mode 100644 index 000000000..33c859da2 --- /dev/null +++ b/1.5/Defs/ThingDefs_Misc/Filth_Slurry.xml @@ -0,0 +1,30 @@ + + + + + PM_Filth_Slurry + + A puddle of mutagenic slurry. + Pawnmorph.IncidentWorkers.LiquidSlurry + true + Rare + + -10 + -15 + 150 + 0.0 + + + Things/Filth/PM_LiquidSlurry + + + 35~40 + true + 70 + true + 1 + Interact_CleanFilth_Fluid + + + + diff --git a/1.5/Defs/ThingDefs_Plants/MutagenicPlantsDecorative.xml b/1.5/Defs/ThingDefs_Plants/MutagenicPlantsDecorative.xml new file mode 100644 index 000000000..cc828578b --- /dev/null +++ b/1.5/Defs/ThingDefs_Plants/MutagenicPlantsDecorative.xml @@ -0,0 +1,321 @@ + + + + TFPlantAddiction + + TFPlantAddiction + + + + Chemical_TFPlant + Need_Chemical + + This person is under the strange effects of mutagenic plants. They will require more (which will change them), but failure to keep them sated will push them over the edge. + 45 + 0.15 + + + + TFPlantAddiction + Hediff_Addiction + + This person has a developed a dependancy on mutagenic plants. Take care to not let them go without it, as withdrawal symtoms risk them transforming into an animal. + Chemical_TFPlant + +
  • + -0.0333 +
  • +
    + +
  • +
  • +
  • + + -0.7 + 25 + +
  • + Consciousness + -0.3 +
  • +
  • + Moving + -0.1 +
  • + + +
  • + TransformedHuman + +
  • Alpaca
  • +
  • Bear_Grizzly
  • +
  • Bear_Polar
  • +
  • Boomalope
  • +
  • Cat
  • +
  • Chicken
  • +
  • Cobra
  • +
  • Cougar
  • +
  • Cow
  • +
  • Deer
  • +
  • Fox_Red
  • +
  • Fox_Arctic
  • +
  • Fox_Fennec
  • +
  • Husky
  • +
  • Iguana
  • +
  • Lynx
  • +
  • Monkey
  • +
  • Panther
  • +
  • Pig
  • +
  • Rat
  • +
  • Warg
  • +
  • WildBoar
  • +
  • Wolf_Timber
  • +
  • Wolf_Arctic
  • + + TransformationMisc + +
    + +
  • + Binging_Food + 5 +
  • +
    + + -0.9 + + +
    +
    + + + Plant_MutatedGrass + + Wild, somewhat mutated grass. A product of groundwater contamination. Can be sown, but only useful for decoration. + + 85 + 1.3 + 0.15 + + + Plants/MutatedGrass + Graphic_Random + + 0.5 + + + 0.05 + 0.3 + 2.5 + 40 + 9 + 0.4~0.6 + 0.4 + 1 + +
  • MutagenicPlantSowing
  • +
    + +
  • Ground
  • +
    +
    + +
  • + 2 + (24,183,177,0) +
  • +
    + +
  • + + 1 + + false + + + false + +
  • Plant_Grass
  • + + + + + +
    +
    + + + + Plant_MutatedBrambles + + Tangled, red-thorned, woody shoots topped with blue flowers. Brambles grow in clusters, and slow down anyone moving over them. + + 100 + 0.2 + + 15 + + Plants/MutatedBramble + 1.7 + Graphic_Random + + + + 0.7 + 3 + 60 + 4 + 0.7~0.85 + 0.15 + 4 + 200 + 1 + false + +
  • MutagenicPlantSowing
  • +
    + +
  • Ground
  • +
    +
    + +
  • + 2 + (188,40,41,0) +
  • +
    + +
  • + + 1 + + false + + + false + +
  • Plant_Brambles
  • + + + + + +
    +
    + + + Plant_MutatedBush + + An otherworldly shrub, looks nice but not much use beyond that. + + 85 + 4 + 0.18 + + + Plants/MutatedBush + Graphic_Random + + true + false + 0.20 + 30 + + 0.5 + 0.5 + 6 + 5 + 250 + 0.95~1.7 + 0.3 + 2 + +
  • MutagenicPlantSowing
  • +
    + +
  • Ground
  • +
    +
    + +
  • + + 5 + + false + + + false + +
  • Plant_Bush
  • + + + + + +
    +
    + + + Plant_GnarledTree + + A tree that's been twisted into an eerie shape by mutagens. Gnarled wood is useless, brittle and flaky, disintegrating when chopped. + + 85 + 4 + 0.18 + + + Plants/GnarledTree + Graphic_Random + + true + false + 0.20 + 30 + + 0.5 + 0.5 + 6 + Plants/GnarledTree + Plants/GnarledTree + 5 + 250 + 0.95~1.7 + 0.3 + 2 + + +
  • + + 5 + + true +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThingDefs_Plants/MutagenicPlantsProducing.xml b/1.5/Defs/ThingDefs_Plants/MutagenicPlantsProducing.xml new file mode 100644 index 000000000..ae6d32d18 --- /dev/null +++ b/1.5/Defs/ThingDefs_Plants/MutagenicPlantsProducing.xml @@ -0,0 +1,190 @@ + + + Pawnmorph.Plants.Chaobulb + + A mutagen-infused plant that sprouts odd orange bulbs. Chaobulb plants naturally collect trace amounts of raw resources out of the ground, which are then used by mutagenic mechanites to replicate. The mechanites are stored in the orange bulbs that give the plant its name, which can be harvested and processed into mechanite slurry. + +Chaobulb plants are delicate, and the bulbs are prone to rupturing if harvested incorrectly. They are slow to plant and harvest compared to other plants, and harvest failures have a risk of mutating the hapless farmer. + + 60 + 4 + 0.18 + + + Plants/Chaobulb + Graphic_Random + + true + false + 0.20 + 30 + + 0.7 + 1 + 10 + Plants/Leafless/Chaobulb + Plants/Leafless/Chaobulb + Chaobulb + false + 3 + 300 + Standard + 0.3 + 2 + + +
  • + 2 + (219,214,81,0) +
  • +
    +
    + + Plant_ChaoBulb + + 5 + 250 + 0.95~1.75 + + + +
  • + + 10 + + true +
  • +
    +
    + + Plant_ChaoBulb_Domestic + + 700 + 7 + +
  • MutagenicPlantSowing
  • +
    + 0.95~1.7 + +
  • Ground
  • +
  • Hydroponic
  • +
    +
    + +
  • + true +
  • +
    +
    + + + Pawnmorph.Things.ExpandedPlant + + A mutagen-infused plant that sprouts odd blue bulbs, glowvines are a form of healroot that has been mutated by exposure to mechanite contamination. Similar to chaobulbs, they produce glowing bulbs full of mechanites. However, the mechanites within glowvines have been altered somehow by the substances in the healroot, and as a result they now have an anti-mutagenic effect. The bulbs can be harvested and processed into antigen. + +Antigen plants are delicate and sensitive to temperature. They take a long time to sow and harvest compared to other plants, and they will only grow in moderately cold temperatures. However, mutation has rendered them capable of growing without light, and so they are commonly grown within refridgerated darkhouses or caves. + + 50 + 10 + 0.18 + + + Plants/Glowvine + Graphic_Random + + true + false + 0.20 + 30 + + 0.9 + 1 + false + false + Plants/Leafless/Glowvine + Plants/Leafless/Glowvine + Glowvine + 12 + 0 + 0 + 2 + 400 + Standard + 3 + 250 + 0.95~1.7 + 0.3 + 2 + + +
  • + 2 + (45,200,255,0) +
  • +
    + +
  • + -20 + 0 + 17 + 30 + -200 + -22 +
  • +
    +
    + + + Plant_Glowvine + +
  • + + 1 + + true + + + false + + +
  • Plant_Healroot
  • +
  • Plant_HealrootWild
  • + + + + + +
    +
    + + + Plant_Glowvine_Domestic + + 800 + 8 + +
  • MutagenicPlantSowing
  • +
    + +
  • Ground
  • +
  • Hydroponic
  • +
    +
    + +
  • + true +
  • +
    +
    +
    diff --git a/1.5/Defs/ThingDefs_Plants/MutantPlantProducts.xml b/1.5/Defs/ThingDefs_Plants/MutantPlantProducts.xml new file mode 100644 index 000000000..996656a13 --- /dev/null +++ b/1.5/Defs/ThingDefs_Plants/MutantPlantProducts.xml @@ -0,0 +1,134 @@ + + + +
  • + 20 + true +
  • +
    + DrugPolicies + false + + NeverForNutrition + Seed + 1 + + +
  • + + + + + + + Chaobulb + + A bulbous, warty-looking seed pod from a chaovine. Orange in colour and pungent in smell, it is said to be uncomfortably delicious, and leaves a fuzzy aftertaste in the mouth. Mutagenic mechanites replicate within chaobulb plants and congregate in their bulbs, making it a simple, if work-intensive, way to produce more of them. + +Raw chaobulbs are often used by tribes to connect with nature and bring out their inner warrior animal. + + Plants/Items/ChaobulbFruit + Graphic_StackCount + + +
  • + 1010 +
  • + + +
  • PlantMatter
  • +
  • RawMutagen
  • +
  • Drugs
  • +
    + + Chemical + 0.40 + Hard + +
  • + +
  • FullRandomTF
  • + + +
  • FullRandomTFAnyOutcome
  • +
    + 1 + +
    +
    + + 9 + 0.045 + 0.2 + 0.0 + 0.1 + + +
  • + + + + + + + Glowvine + + A blue seedpod harvested from a mutated healroot plant. It contains a naturally-occuring strain of mutagenic mechanites known as antigen, which have dampening effects on most other kinds of mutagenic mechanites. Antigen can be extracted and refined into various anti-mutagenic drugs. + +When eaten in its raw form, glowvine will slow down the effects of mutagenic mechanites, though it's not powerful to halt them completely. Tribes often use them as a low-tech treatment to lessen the effects of mutagenic diseases and buildup. + + Plants/Items/GlowvineFruit + Graphic_StackCount + + +
  • + 1010 +
  • + + +
  • PlantMatter
  • +
  • RawMutagen
  • +
    + + +
  • + StabiliserLow + 1.0 +
  • +
    + None +
    + + 18 + 0.045 + 0.2 + 0.0 + 0.0 + +
    + + + StabiliserLow + This pawn has unrefined antigen circulating in their system, slowing the effects of mutagenic mechanites. This lasts for a day. + HediffWithComps + + (179,86,132) + true + 1.0 + false + +
  • + -1 +
  • +
    + +
  • + + -0.5 + -0.5 + 0.25 + +
  • +
    +
    +
    diff --git a/1.5/Defs/Things/AnimalGenome.xml b/1.5/Defs/Things/AnimalGenome.xml new file mode 100644 index 000000000..a04fc7b49 --- /dev/null +++ b/1.5/Defs/Things/AnimalGenome.xml @@ -0,0 +1,67 @@ + + + Pawnmorph.Things.Genome_Animal + Item + + Graphic_Single + Things/Item/Genecard + + Middle + 10 + +
  • PM_MutationGenome
  • +
    + +
  • Genome
  • +
    + true + Item + Never + false + 14 + true + +
  • Genome
  • +
    + + 100 + 1 + 0.3 + + +
  • +
  • + + + + + PM_AnimalGenome + + Contains an animal's genome that can be downloaded into genebank. + + 100 + 0.1 + + +
  • + true +
  • + +
    + + + + PM_RestrictedAnimalGenome + + Contains a restricted animal's genome that can be downloaded into genebank. + + 1000 + 0.2 + + +
  • + true +
  • +
    +
    +
    diff --git a/1.5/Defs/Things/ExperimentalWeapons.xml b/1.5/Defs/Things/ExperimentalWeapons.xml new file mode 100644 index 000000000..3a356df7a --- /dev/null +++ b/1.5/Defs/Things/ExperimentalWeapons.xml @@ -0,0 +1,17 @@ + + + XM_MutagenicBullet + + + Things/Projectile/Bullet_Small + Graphic_Single + + + false + MutagenicBulletDamage + 1 + 5 + 25 + + + diff --git a/1.5/Defs/Things/Morph Products.xml b/1.5/Defs/Things/Morph Products.xml new file mode 100644 index 000000000..a5212359e --- /dev/null +++ b/1.5/Defs/Things/Morph Products.xml @@ -0,0 +1,123 @@ + + + +
  • + 20 + true +
  • +
    + DrugPolicies + false + +
  • RawMutagen
  • +
  • AnimalProductRaw
  • +
    + + None + DesperateOnly + AnimalProduct, Fluid + 1 + + + 7 + 0.045 + 0.2 + 0.05 + 0.02 + 0.1 + + +
  • +
  • + + + + + + + TFMilk + + This milk smells odd, but not off. Saturated with mutagenic mechanites that the original species can no longer be determined. Drinking this will probably cause unpredictable though milk-related mutations. + + Things/Item/Resource/Milk + + +
  • + 1010 +
  • + + + +
  • + +
  • PawnmorphCowTFPartial
  • +
  • PawnmorphGoatTFPartial
  • +
  • PawnmorphYakTFPartial
  • + + +
  • PawnmorphCowTF
  • +
  • PawnmorphGoatTF
  • +
  • PawnmorphYakTF
  • +
    + 1 + +
    +
    + +
  • + + +
  • mutagen_cause->drinking strange milk
  • +
  • caused_by->after
  • + + + +
    +
    + + + + + TFEgg + + A strange egg usually laid by some avian morphs. It's basically a normal egg, but saturated with enough mutagenic mechanites that the original species can no longer be determined. Eating it can cause unpredictable avian-based mutations unless properly cooked into a meal. + + Graphic_StackCount + Things/Item/Resource/TFEgg + (245,245,245) + + +
  • + 1010 +
  • +
    + + +
  • + +
  • PawnmorphChickenTFPartial
  • +
  • PawnmorphDuckTFPartial
  • +
  • PawnmorphGooseTFPartial
  • + + +
  • PawnmorphChickenTF
  • +
  • PawnmorphDuckTF
  • +
  • PawnmorphGooseTF
  • +
    + 1 + +
    +
    + +
  • + + +
  • mutagen_cause->eating a strange egg
  • +
  • caused_by->after
  • + + + +
    +
    + +
    diff --git a/1.5/Defs/Things/Motes.xml b/1.5/Defs/Things/Motes.xml new file mode 100644 index 000000000..5859c5bf9 --- /dev/null +++ b/1.5/Defs/Things/Motes.xml @@ -0,0 +1,14 @@ + + + Mote_MagicPuff + + Enviro/MagicPuff + + MoteOverhead + + 0.04 + 0.03 + 5 + + + \ No newline at end of file diff --git a/1.5/Defs/Things/Mutagenic_Projectiles.xml b/1.5/Defs/Things/Mutagenic_Projectiles.xml new file mode 100644 index 000000000..f90704c85 --- /dev/null +++ b/1.5/Defs/Things/Mutagenic_Projectiles.xml @@ -0,0 +1,24 @@ + + + Bullet_MutagenicRocket + + + Things/Projectile/Rocket_Big + Graphic_Single + TransparentPostLight + + Projectile_Explosive + + MutagenCloud_Large + 8.5 + true + 12 + 55 + true + ExtinguisherExplosion + PM_Filth_Slurry + 0.4 + 2 + + + \ No newline at end of file diff --git a/1.5/Defs/Things/Silk.xml b/1.5/Defs/Things/Silk.xml new file mode 100644 index 000000000..1160a2bd9 --- /dev/null +++ b/1.5/Defs/Things/Silk.xml @@ -0,0 +1,84 @@ + + + Morphsilk + + Scraps of fabric that have been impregnated with mutagenic nanites. The nanites will passively link with and boost any mutagenic mechanites in the bloodstream, increasing the rate of mutation of the pawn wearing it. Despite its improved flexibility and durability compared to regular fabric, it’s not recommended to make clothing out of this. + +Morphsilk is commonly created as a byproduct of full-body transformations, as the hapless victim sheds large amounts of mechanites into their clothing before tearing it apart upon transforming. Because of the risk it poses to the wearer and how commonly it can be found at any mutagenic battleground, most merchants will pay but a pittance for morphsilk. + + Things/Item/Resource/Morphsilk + Graphic_StackCount + + + 0.46 + 0 + 0.28 + 25 + 25 + 140 + 2.8 + 0.026 + 1.2 + 2 + 0.1 + 0.20 + + true + false + 30 + + (0.74,1,0.5) + + 1.2 + + +
  • Fabric
  • +
    + 0.4 +
    + +
  • Textiles
  • +
    +
    + + + PM_Hazsilk + + By doping morphsilk with antigen, the mechanites active in the fibres have been reconfigured to reduce mutagen sensitivity rather than increase it. Hazsilk is not much more protective against physical damage than cloth, but it can be used to create special clothing that protects the user from mutagenic weaponry and other mutagenic hazards. + +Hazsilk is often used as a protective underlayer for soldiers going into battle against enemies known to use mutagenic weaponry. + + Things/Item/Resource/Hazsilk + Graphic_StackCount + + + 0.46 + 0 + 0.28 + 25 + 25 + 140 + 3.9 + 0.026 + 0.9 + 2 + -0.35 + + true + false + 30 + + (0.2,.96,0.99) + + 0.9 + + +
  • Fabric
  • +
    + 0.2 +
    + +
  • Textiles
  • +
    +
    +
    diff --git a/1.5/Defs/Things/Skyfallers.xml b/1.5/Defs/Things/Skyfallers.xml new file mode 100644 index 000000000..61524995a --- /dev/null +++ b/1.5/Defs/Things/Skyfallers.xml @@ -0,0 +1,31 @@ + + + + FlightIncoming + + + Decelerate + true + Things/Skyfaller/SkyfallerShadowDropPod + (2, 2) + DropPod_Fall + 100 + 0 + + + + + FlightLeaving + + + Decelerate + true + true + Things/Skyfaller/SkyfallerShadowDropPod + (2, 2) + DropPod_Leaving + -10 + -10 + + + \ No newline at end of file diff --git a/1.5/Defs/Things/TFWeapons.xml b/1.5/Defs/Things/TFWeapons.xml new file mode 100644 index 000000000..26857ff70 --- /dev/null +++ b/1.5/Defs/Things/TFWeapons.xml @@ -0,0 +1,525 @@ + + + RimWorld.Gas + + Gas + Gas + false + Normal + + Graphic_Gas + Transparent + + + + + + Gas_Mutagen + + + Things/Gas/Puff + 2.2 + (0.0,1.0,0.0,0.5) + + + + 29 + 31 + + + 10 + + + + + MutagenicArrow + + + Things/Projectiles/MutagenArrow + Graphic_Single + + + MutagenicArrowDamage + 1 + 44 + + + + + Mutabow + + A bow that fires arrows with mutanite arrowhead, mutating the victim. + + Things/Item/MutagenBow + Graphic_Single + + Bow_Small + + 95 + 2600 + 0.8 + 0.75 + 0.65 + 0.45 + 0.25 + 1.65 + + +
  • PawnmorpherGun
  • +
  • PMTribalRangedMutagenic
  • +
    + + +
  • CraftingSpot
  • +
    + + 5 + +
    + + 1 + 30 + + +
  • + Verb_Shoot + true + MutagenicArrow + 1.35 + 22.9 + Bow_Small +
  • +
    + +
  • + + +
  • Blunt
  • +
  • Poke
  • + + 9 + 2 + +
    +
    + + + Mutarifle + + A rifle that fires balls of jellied mutanite, which mutate on contact. + + Things/Item/mutarifle_1 + Graphic_Single + + Interact_Revolver + + 650 + 8000 + 1.2 + 0.90 + 0.65 + 0.45 + 0.35 + 1 + + +
  • PawnmorpherGun
  • +
  • PMGunMutagenic
  • +
    + + MutagenicWeapons + + 8 + + + + 5 + 50 + 3 + + +
  • + Verb_Shoot + true + XM_MutagenicBullet + 0.3 + 25.9 + Shot_Autopistol + 3 + GunTail_Light + 9 +
  • +
    + +
  • + + +
  • Blunt
  • + + 9 + 2 + +
  • + + +
  • Blunt
  • +
  • Poke
  • + + 9 + 2 + +
    +
    + + + Bullet_EtherGun + EtherGun.Projectile_EtherBullet + + + Things/Projectiles/GelCapsule + Graphic_Single + + + false + Bullet + 1 + 10 + 50 + + 0.7 + SyringeRifleHediff + + + + + Bullet_TaggingGun + EtherGun.Projectile_TaggingBullet + + + Things/Projectiles/GelCapsule + Graphic_Single + + + false + Bullet + 1 + 10 + 50 + + + + + TST_Gun_EtherGun + + Forged from mutanite and charged with mutagenic syringes, the Mutagun can force a person hit by it to begin to mutate. + + Things/Item/TFGun + Graphic_Single + + Interact_Revolver + + 650 + 8000 + 3 + 80 + 70 + 60 + 50 + 4 + + +
  • PawnmorpherGun
  • +
    + + 5 + 50 + 3 + + + MutagenicWeapons + + 8 + + + +
  • + Verb_Shoot + true + Bullet_EtherGun + 4 + 30 + Shot_ChargeRifle + GunTail_Light + 9 +
  • +
    + +
  • + + +
  • Blunt
  • + + 9 + 2 + +
  • + + +
  • Blunt
  • +
  • Poke
  • + + 9 + 2 + +
    + +
  • + true + PMAnimalPickerGizmo_Mutagun + PMAnimalPickerGizmoDescription_Mutagun + true + + +
  • PM_Chaothrumbo
  • + + + +
    +
    + + + TST_Gun_TaggingGun + + Use this rifle to add animals to your genetic database. Not to be used as an actual weapon, but can still trigger manhunter as, well, it does kinda hurt to be shot by it. + + Things/Item/TaggingRifle + Graphic_Single + + +
  • TaggingGun
  • +
    + Interact_Revolver + + 650 + 8000 + 3 + 80 + 70 + 60 + 50 + 4 + + + 1 + 25 + 1 + + + Injectors + + 5 + + + +
  • + Pawnmorph.Verbs.Tag + true + Bullet_TaggingGun + 4 + 30 + true + Shot_ChargeRifle + GunTail_Light + 9 +
  • +
  • + Verb_Shoot + true + Bullet_BoltActionRifle + 1.7 + 36.9 + Shot_BoltActionRifle + GunTail_Heavy + 9 +
  • +
    + +
  • + + +
  • Blunt
  • + + 9 + 2 + +
  • + + +
  • Blunt
  • +
  • Poke
  • + + 9 + 2 + +
    +
    + + + Weapon_GrenadeTF + + A highly presurized canister filled with DNA and mechanites that aerosolizes when thrown. The resulting mist can mutate any organics caught in it. + + MutagenicWeapons + + Normal + + Things/Item/MutagenGrenadeBelt + Graphic_Single + + Interact_Grenade + Industrial + + 1 + 2.66 + 12000 + + +
  • PawnmorpherGun
  • +
  • PMGrenadeMutagenic
  • +
    + + 20 + 5 + + +
  • Grenades
  • +
    + +
  • + + Verb_LaunchProjectile + true + 12.9 + 1.9 + 1.5 + 4 + false + ThrowGrenade + + true + + Proj_GrenadeTF + Combat_RangedFire_Thrown +
  • +
    + +
  • + 2.66 + MutagenCloud + Flame + 0.7 + PawnmorphGunshotTF + +
  • +
    +
    + + + Proj_GrenadeTF + + + Things/Projectiles/MutagenGrenade + Graphic_Single + + + 3.5 + MutagenCloud + 100 + true + ExtinguisherExplosion + PM_Filth_Slurry + 0.2 + 2 + + 0.7 + + + + + Shell_TF + + A shell filled with a chaotic mix of DNA and mechanites that aerosolizes on impact. The mist can mutate any organics caught in it. Can be fired from mortars or installed as a trap. Bursts when damaged. + + Things/Item/Resource/TFShell + Graphic_StackCount + + +
  • + 2.9 + MutagenCloud_Large + 0.4 + ExtinguisherExplosion + PM_Filth_Slurry + 0.6 + 3 + 0.7 + + 30 + 60 + +
  • +
    + +
  • TF_Shell
  • +
    + Bullet_Shell_TF + + MutagenicWeapons + + + 20 + 2 + +
    + + + Bullet_Shell_TF + + + Things/Projectiles/ShellMutagenic + Graphic_Single + TransparentPostLight + + Projectile_Explosive + + MutagenCloud_Large + 41 + 5.5 + true + Artillery_HitThickRoof + Explosion_EMP + MortarRound_PreImpact + MortarRound_Ambient + ExtinguisherExplosion + PM_Filth_Slurry + 0.4 + 3 + true + + 0.7 + PawnmorphGunshotTF + +
    diff --git a/1.5/Defs/Things/TFWeapons_Melee.xml b/1.5/Defs/Things/TFWeapons_Melee.xml new file mode 100644 index 000000000..359f66b3a --- /dev/null +++ b/1.5/Defs/Things/TFWeapons_Melee.xml @@ -0,0 +1,113 @@ + + + MeleeWeapon_MutaniteKnife + + Neolithic + A shaped piece of mutanite with a handle for safe operation. Tends to mutate anyone who's on the receiving end of the blade. + + Things/Item/Equipment/WeaponMelee/Knife + Graphic_Single + + +
  • PMMutagenicMelee
  • +
  • PMMutagenicMeleeAdvanced
  • +
    + 30 + + 2 + + + 1800 + 0.5 + + -65 + +
  • Metallic
  • +
    + +
  • + + +
  • Blunt
  • + + 8 + 2 + +
  • + + +
  • MutagenicCut
  • + + 10 + 1.5 + +
  • + + +
  • MutagenicStab
  • + + 10 + 2 + +
    + + +
  • CraftingSpot
  • +
    +
    +
    + + + MeleeWeapon_MutaniteSpear + + A long rod is tipped with a pointed piece of mutanite, which tends to mutate anyone who gets stabbed by it. + + Things/Item/Equipment/WeaponMelee/Spear + Graphic_Single + + Neolithic + +
  • MutagenicMelee
  • +
    + 75 + + 4 + + + 12000 + 2 + + -25 + +
  • Metallic
  • +
  • Woody
  • +
    + +
  • + + +
  • Blunt
  • +
  • MutagenicPoke
  • + + 8 + 2.6 + +
  • + + +
  • MutagenicStab
  • + + 15 + 0.50 + 2.6 + +
    + + LongBlades + + 4 + + +
    + +
    diff --git a/1.5/Defs/Things/TFWeapons_Special.xml b/1.5/Defs/Things/TFWeapons_Special.xml new file mode 100644 index 000000000..11b812cb0 --- /dev/null +++ b/1.5/Defs/Things/TFWeapons_Special.xml @@ -0,0 +1,116 @@ + + + Gun_MutagenicRocketLauncher + + A single-use rocket launcher that fires a massive mutagenic explosive projectile. Good against large groups targets.\n\nVery rapidly mutates anyone caught in the blast radius which is a very painful situation to be in. + Normal + Spacer + false + + Things/Item/mutalauncher + Graphic_Single + + + 1200 + 8 + 4.5 + + +
  • PMMutaRocket
  • +
    + +
  • ExoticMisc
  • +
    + +
  • SingleUseWeapon
  • +
    + +
  • + Verb_ShootOneUse + true + Bullet_MutagenicRocket + 1.9 + 4.5 + 8 + 35.9 + 1 + InfernoCannon_Fire + GunTail_Heavy + true + + true + + 14 +
  • +
    + +
  • + + +
  • Blunt
  • + + 11.7 + 2.6 + +
    + +
  • + 7.8 + Bomb + Flame +
  • +
    +
    + + + MeleeWeapon_MutagenicStunStick + + Electricity hums through a machined crystalline form of mutanite, causing mutations in anyone struck by it as well as stunning them with a shock. + + Things/Item/mutaprod + Graphic_Single + + Medieval + 50 + + 6000 + 1.25 + + -65 + + + 3 + + MutagenicWeapons + + +
  • Metallic
  • +
  • Woody
  • +
    + + 2 + + +
  • MutagenicMeleeAdvanced
  • +
    + +
  • + + +
  • Poke
  • + + 3 + 2 + +
  • + + false + +
  • MutagenicStun
  • + + 8 + 2 + +
    +
    +
    diff --git a/1.5/Defs/Things/TransformerIED.xml b/1.5/Defs/Things/TransformerIED.xml new file mode 100644 index 000000000..8bcf9a42d --- /dev/null +++ b/1.5/Defs/Things/TransformerIED.xml @@ -0,0 +1,32 @@ + + + TrapIED_TF + + A pair of mutagenic shells connected to a trigger which detonates on touch or bullet impact. The explosion can mutate organics caught in the blast. Since it is hidden in the surrounding terrain, it cannot be placed adjacent to other traps. Animals can sense these when calm. + + Things/Building/tfIED + + + 2 + + Misc12 + +
  • + 5.9 + MutagenCloud_Large + 0.2 + true + 15~15 + PM_Filth_Slurry + 0.5 + 3 + +
  • Bullet
  • +
  • Arrow
  • +
  • ArrowHighVelocity
  • + + +
    + 5.9 +
    +
    diff --git a/1.5/Defs/ThinkTrees/AnimalisticPawns.xml b/1.5/Defs/ThinkTrees/AnimalisticPawns.xml new file mode 100644 index 000000000..3e8a02653 --- /dev/null +++ b/1.5/Defs/ThinkTrees/AnimalisticPawns.xml @@ -0,0 +1,198 @@ + + + AnimalisticColonist + + +
  • + +
  • + TrainedAnimalBehavior + + +
  • + Obedience + +
  • + +
  • + true +
  • +
  • +
  • + +
  • +
    + + + +
  • + Rescue + +
  • + 75 +
  • + + + + + + + +
  • + RestingForMedicalReasons + +
  • + +
  • + +
  • +
  • + + +
  • + +
    +
    + + + AnimalisticColonistMain + Humanlike_PreMain + + + +
  • + +
  • + Misc + +
  • + +
  • +
    + + + +
  • + 1.5 + +
  • + +
  • Manipulation
  • + + +
  • + Haul + +
  • + TrainedAnimalBehavior + +
  • + +
  • +
    + + + + + + +
    +
    + + + MainWildManBehaviorCoreFixed + + + +
  • + true + + +
  • + +
  • + +
  • +
    + + + +
  • + 10 + +
  • + +
  • + + +
  • + SatisfyingNeeds + +
  • + +
  • +
  • +
  • +
  • + +
  • + +
  • + + + + + +
    +
    + + + + AnimalisticColonistWonder + Humanlike_PostMain + + + +
  • + Idle + + +
  • + +
  • + None + 120~240 +
  • +
    + + + +
  • + None + 120~240 +
  • + + + +
    +
    + + + SapientAnimalFleeMap + Animal_PreWander + + MostlySapient + +
  • + Misc + +
  • + Walk +
  • +
    + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/ThinkTrees/SapientAnimals.xml b/1.5/Defs/ThinkTrees/SapientAnimals.xml new file mode 100644 index 000000000..b8c5523d5 --- /dev/null +++ b/1.5/Defs/ThinkTrees/SapientAnimals.xml @@ -0,0 +1,95 @@ + + + + PM_AnimalConstant + + +
  • + Despawned +
  • +
  • + + false + +
  • Conflicted
  • +
  • MostlyFeral
  • +
  • Feral
  • +
  • PermanentlyFeral
  • + + + +
  • + AnimalConstant +
  • +
    + +
  • + + true + +
  • Conflicted
  • +
  • MostlyFeral
  • +
  • Feral
  • +
  • PermanentlyFeral
  • + + + +
  • + HumanlikeConstant +
  • +
    + +
    +
    +
    + + + + FormerHumanThinkTreeSegment + Animal_PreWander + + +
  • + + true + +
  • PermanentlyFeral
  • +
  • Feral
  • + + + +
  • + +
  • + SatisfyingNeeds + +
  • + +
  • +
    + +
    + + +
    +
    + + + SapientAnimalMainTreeSegment + Animal_PreMain + + true + true + +
  • + +
  • + MainColonistBehaviorCore + true +
  • +
    + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/AnimalisticThoughts/Bases.xml b/1.5/Defs/Thoughts/AnimalisticThoughts/Bases.xml new file mode 100644 index 000000000..a5ce722ae --- /dev/null +++ b/1.5/Defs/Thoughts/AnimalisticThoughts/Bases.xml @@ -0,0 +1,6 @@ + + + Pawnmorph.Thoughts.SapienceMemory + 1 + + \ No newline at end of file diff --git a/1.5/Defs/Thoughts/AnimalisticThoughts/Food.xml b/1.5/Defs/Thoughts/AnimalisticThoughts/Food.xml new file mode 100644 index 000000000..2934c24a8 --- /dev/null +++ b/1.5/Defs/Thoughts/AnimalisticThoughts/Food.xml @@ -0,0 +1,112 @@ + + + AnimalisticWargMorphAteCorpse + true + Things/Mote/ThoughtSymbol/Food + +
  • + + Ugh, this is disgusting. I don't want to do this... + -5 +
  • +
  • + + Ugh, this isn't the best meal ever...but it's tasty. + -2 +
  • +
  • + + Something wants me to like the taste...and I think I do. + 2 +
  • +
  • + + Mmhh...it's so succulent and meaty... + 5 +
  • +
  • + + + ...food! + 5 +
  • +
    + +
  • + + false + +
  • Warg
  • + + + +
    +
    + + + AnimalisticPawnAteRawFood + 1 + +
  • + + I had to eat raw food. We should be cooking that kind of food before eating it. We're not animals. + -4 +
  • +
  • + + It's alright...still gross, but it's more tolerable than before. + -2 +
  • +
  • + + Hm...it's decent...it's just hard to think normally when I'm eating it... + 1 +
  • +
  • + + It's good...mmm! + 3 +
  • +
    + +
  • + Animalistic +
  • +
    +
    + + + AnimalisticAteKibble + true + Things/Mote/ThoughtSymbol/Food + 1 + +
  • + + I had to eat animal kibble. It's like I don't get to be human any more. + -5 +
  • +
  • + + I had to eat animal kibble. It's like I don't get to be human any more. + -3 +
  • +
  • + + I ate animal feed, and it was...alright? That should concern me. + -1 +
  • +
  • + + It's food? + 0 +
  • +
    + +
  • + Animalistic +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/AnimalisticThoughts/NakedThoughts.xml b/1.5/Defs/Thoughts/AnimalisticThoughts/NakedThoughts.xml new file mode 100644 index 000000000..2999268d1 --- /dev/null +++ b/1.5/Defs/Thoughts/AnimalisticThoughts/NakedThoughts.xml @@ -0,0 +1,61 @@ + + + Pawnmorph.Thoughts.Worker_SapientNaked + true + +
  • Nudist
  • +
    + +
  • + Animalistic +
  • +
    +
    + + + Pawnmorph.Thoughts.Worker_SapientNaked + true + +
  • Nudist
  • +
    + +
  • + Animalistic +
  • +
    +
    + + + + AniamlisticAnimalNaked + +
  • + + I'm naked. This is humiliating. + -5 +
  • + +
  • + + I'm naked. This is humiliating. + -4 +
  • +
  • + + Why do I feel weird out and about? Oh! Clothes! + -3 +
  • +
  • + + There's no other option right? + -2 +
  • +
  • + + Clothes? + 0 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/AnimalisticThoughts/Naked_Nudist.xml b/1.5/Defs/Thoughts/AnimalisticThoughts/Naked_Nudist.xml new file mode 100644 index 000000000..25639e444 --- /dev/null +++ b/1.5/Defs/Thoughts/AnimalisticThoughts/Naked_Nudist.xml @@ -0,0 +1,35 @@ + + + AnimalisticHappyNude + true + + +
  • + + I'm nude and loving it! I feel so free and unconstrained and in touch with my surroundings! + 20 +
  • +
  • + + Nothin' between me and the world, it's just right. + 4 +
  • +
  • + + There's no other option right? + 3 +
  • +
  • + + Why would they want to put stuff over their fur... + 2 +
  • +
  • + + Clothes? + 0 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/AnimalisticThoughts/Persistant.xml b/1.5/Defs/Thoughts/AnimalisticThoughts/Persistant.xml new file mode 100644 index 000000000..5236526c8 --- /dev/null +++ b/1.5/Defs/Thoughts/AnimalisticThoughts/Persistant.xml @@ -0,0 +1,231 @@ + + + + + + Pawnmorph.Thoughts.Worker_Sapience + +
  • + Animalistic +
  • +
    +
    + + + AnimalisticThoughtPersistant + +
  • MutationAffinity
  • +
  • BodyPurist
  • +
    + + +
  • + + + I can think clearly, whatever. + 0 +
  • +
  • + + + My head feels weird...it's like a strange voice in the back of my mind. + -3 +
  • +
  • + + + I think I should just...get on all fours. + -5 +
  • +
  • + + + Should I...give in to the thoughts? + -3 +
  • +
  • + + + ...food? + -1 +
  • +
    + + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + + MA_AnimalisticThoughtPersistant + +
  • BodyPurist
  • +
    + +
  • MutationAffinity
  • +
    + +
  • + + + My human mind is as strong as ever! + 0 +
  • +
  • + + + A gentle tug at my mind, telling me to let go. It's tempting. + 1 +
  • +
  • + + + I think these mutations are...starting to get the better of my mind. + 2 +
  • +
  • + + + Should keep...focused. But...why? + 1 +
  • +
  • + + + ...food? + 1 +
  • +
    + + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + + BP_AnimalisticThoughtPersistant + +
  • MutationAffinity
  • +
    + +
  • BodyPurist
  • +
    + +
  • + + + My human mind is as strong as ever! + 0 +
  • +
  • + + + Why do I feel so strange? Like my mind is melting... + -8 +
  • +
  • + + + These sights and smells are overwhelming and horrid! + -10 +
  • +
  • + + + No! I can't...give up now...but this instinct is strong! + -5 +
  • +
  • + + + ...food? + -1 +
  • +
    + + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + + PW_AnimalisticThoughtPersistant + +
  • BodyPurist
  • +
    + +
  • + + + My human mind is as strong as ever...which is boring. + -2 +
  • +
  • + + + My senses feel keener, and these animal thoughts are electric! + 10 +
  • +
  • + + + Everything is so rich...a new experience...I could get used to this...! + 15 +
  • +
  • + + + Hard to keep my focus...but why should I? + 20 +
  • +
  • + + + ...happy! + 50 +
  • +
    + +
  • + +
  • + PrimalWish +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Thoughts/ChaothrumboThoughts.xml b/1.5/Defs/Thoughts/ChaothrumboThoughts.xml new file mode 100644 index 000000000..756c8778e --- /dev/null +++ b/1.5/Defs/Thoughts/ChaothrumboThoughts.xml @@ -0,0 +1,65 @@ + + + true + Things/Mote/ThoughtSymbol/Skull + 2 + 2 + + + + PM_CThrumboAmbient + Pawnmorph.Thoughts.Memory_FactionObservation + +
  • + + It's a little terrifying, but it's not coming after us. + true + 0 +
  • +
  • + + It's on our side, we're practically unstoppable. + true + 5 +
  • +
  • + + Oh gods, it's huge! How in the hell do we stop that thing?! + true + -5 +
  • +
    +
    + + + + PM_CThrumboTfThought + +
  • + + I...I'm a massive, unnatural creature...this is going to take some time to get used to. + true + -5 +
  • +
  • + + I'm a massive, hulking mountain of flesh and fur and horns...I feel so powerful! + true + 10 +
  • +
  • + + I'm a massive, hulking pile of flesh and fur and horns...this is horrific...I want to be my old self again, please! + true + -20 +
  • +
  • + + I'm a massive, hulking titan of flesh and fur and horns...this is the best thing that's ever happened to me! + true + 30 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/FormerHumanJoinThoughts.xml b/1.5/Defs/Thoughts/FormerHumanJoinThoughts.xml new file mode 100644 index 000000000..d1281ee21 --- /dev/null +++ b/1.5/Defs/Thoughts/FormerHumanJoinThoughts.xml @@ -0,0 +1,121 @@ + + + + Pawnmorph.Thoughts.Thought_RelatedFormerHuman_Accepted + 10 + 10 + true + 1 + +
  • Psychopath
  • +
    +
    + + + + PMFormerHumanAccepted_VeryClose + +
  • + + A close relative of mine was turned into an animal and came to us for help. I'm glad we took them in. + 6 +
  • +
    +
    + + + + PMFormerHumanAccepted_Close + +
  • + + A close relative of mine was turned into an animal and came to us for help. I'm glad we took them in. + 4 +
  • +
    +
    + + + + PMFormerHumanAccepted_Moderate + +
  • + + A relative of mine was turned into an animal and came to us for help. I'm glad we took them in. + 3 +
  • +
    +
    + + + + PMFormerHumanAccepted_Distant + +
  • + + A distant relative of mine was turned into an animal and came to us for help. I'm glad we took them in. + 2 +
  • +
    +
    + + + + Pawnmorph.Thoughts.Thought_RelatedFormerHuman_Rejected + 15 + 10 + true + 1 + +
  • Psychopath
  • +
    +
    + + + + PMFormerHumanRejected_VeryClose + +
  • + + A close relative of mine was turned into an animal and came to us for help, but the colony just left them out in the wild! + -10 +
  • +
    +
    + + + + PMFormerHumanRejected_Close + +
  • + + A close relative of mine was turned into an animal and came to us for help, but the colony just left them out in the wild. + -6 +
  • +
    +
    + + + + PMFormerHumanRejected_Moderate + +
  • + + A relative of mine was turned into an animal and came to us for help, but the colony rejected them. + -4 +
  • +
    +
    + + + + PMFormerHumanRejected_Distant + +
  • + + A distant relative of mine was turned into an animal and came to us for help, but the colony rejected them. + -2 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/GeneralMutationThoughts.xml b/1.5/Defs/Thoughts/GeneralMutationThoughts.xml new file mode 100644 index 000000000..74c5c74f2 --- /dev/null +++ b/1.5/Defs/Thoughts/GeneralMutationThoughts.xml @@ -0,0 +1,184 @@ + + + + 1 + EtherThickHideLimb + +
  • + + My skin feels like hard leather, it's a little uncomfortable. + true + -1 +
  • +
  • + + Nobody will be able to hurt me like this! Except emotionally... + true + 1 +
  • +
  • + + Eww, it's so dense and wrinkled, like a giant callous... + true + -2 +
  • +
    +
    + + + 1 + EtherScaledLimb + +
  • + + I wish I didn't ssssshed sssso much... + true + -1 +
  • +
  • + + Built-in armor isss alwayssss handy... + true + 2 +
  • +
  • + + They're coarse and rough and irritating and they're EVERYWHERE!!! + true + -3 +
  • +
    +
    + + + 1 + EtherColdBlooded + +
  • + + I just can't ever get myself warm enough. + true + -1 +
  • +
  • + + Nothing feels quite like sunning myself on a warm rock. + true + 2 +
  • +
  • + + I'm freaking c-c-c-cold all the time now! + true + -3 +
  • +
    +
    + + + 1 + EtherFeatheredLimb + +
  • + + They're itchy as hell and get in the way of clothes... + true + -1 +
  • +
  • + + I could preen them all day. + true + 2 +
  • +
  • + + I keep pulling them out but they keep regrowing! They're so itchy, aaghhh! + true + -3 +
  • +
    +
    + + + 1 + EtherWing + +
  • + + How am I supposed to do anything with wings for arms?! + true + -5 +
  • +
  • + + Wait, I can't fly with these, AND I lose my hands...? I'm starting to rethink this now... + true + -3 +
  • +
  • + + Why, Randy, why?! I'm completely useless without my arms! + true + -10 +
  • +
    +
    + + + 1 + EtherAvianFoot + +
  • + + They're so...animal, and I leave scratches on wooden floors. + true + -1 +
  • +
  • + + I can be really quick on these, and maybe do some damage! + true + 2 +
  • +
  • + + No, not bird feet! Eugh! + true + -3 +
  • +
    +
    + + + 1 + EtherPawFoot + +
  • + + It's not too different, I suppose I can get used to standing on it. + true + -1 +
  • +
  • + + They're so soft, and I can run barefoot on gravel! + true + 2 +
  • +
  • + + No no no, I want my regular, non-animal feet back! + true + -3 +
  • +
  • + + They look just like an animal's feet, this is exactly what I want! + true + 1 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/GroupThoughts/HerdThoughts.xml b/1.5/Defs/Thoughts/GroupThoughts/HerdThoughts.xml new file mode 100644 index 000000000..2b19028b3 --- /dev/null +++ b/1.5/Defs/Thoughts/GroupThoughts/HerdThoughts.xml @@ -0,0 +1,166 @@ + + + + + HerdMindedAThought + HerdMind + + +
  • + + I'm the only one of my kind. I feel so unsafe being all alone. + -2 +
  • +
  • + + There's another like me, but we're still only a small herd. I still don't feel very safe. + -1 +
  • +
  • + + There's a decent number of people in my herd. Safety in numbers! + true + 1 +
  • +
  • + + There's plenty of people in my herd. There's nothing to fear! + 5 +
  • +
    +
    + + + PM_HerdMindedBedroom + +
  • + + I had to sleep alone in an awful room, without even my herd to keep me safe. + -7 +
  • +
  • + + I had to sleep alone in an dull room, without even my herd to keep me safe. + -5 +
  • + +
  • + + I had to sleep in a room all by myself, away from the safety of the herd. + -4 + +
  • + +
  • + + I had to sleep in a room all by myself, away from the safety of the herd. + -3 +
  • +
  • + + I had to sleep on my own in a slightly impressive bedroom. It was alright, but I felt unsafe without the rest of my herd. + -1 +
  • +
  • + + I slept on my own in an impressive bedroom. It was fine, but I would have felt safer with the rest of my herd. + 1 +
  • +
  • + + I slept in a very impressive bedroom on my own. It's nice, but I miss my herd. + 2 +
  • +
  • + + I slept in an extremely impressive bedroom. It's great, but I wish my herdmates were there. + 3 +
  • +
  • + + I slept in an unbelievably impressive bedroom. It was marvelous, but I felt like something was missing without my herd. + 4 +
  • +
  • + + I slept in a heavenly bedroom. It was so astounding, I didn't even mind sleeping away from the rest of the herd. + 5 +
  • +
    +
    + + + PM_HerdMindedBarrack + + +
  • + + The herd had to sleep in an awful barrack, but at least we had safety in numbers. + -4 +
  • +
  • + + The herd had to sleep in a dull barrack, but at least we had safety in numbers. + -2 +
  • +
  • + + I slept together with the herd in a mediocre barrack. It's safer than sleeping alone, at least. + 0 + true +
  • +
  • + + I slept together together with the herd in a decent barrack. It was safe and comforting. + 2 +
  • +
  • + + I slept in a pretty nice barrack with the rest of my herd. This is great. + 3 +
  • +
  • + + I slept in an impressive barrack with the rest of my herd. I love it. + 4 +
  • +
  • + + I got to sleep in a very impressive barrack with my herd. It was wonderful. + 5 +
  • +
  • + + I got to sleep in an extremely impressive barrack with my herd. It was truly marvelous. + 6 +
  • +
  • + + I got to sleep in a barrack that was unbelievably impressive, and I even got to share it with my herd. + 7 +
  • +
  • + + The herd got to share a barrack that was simply wondrous. I could just stay here with my herd forever. + 8 +
  • +
    +
    + + + PM_HerdMindedAscetic + + +
  • + + I had to sleep in a room by myself, away from the safety of my herd. + -4 +
  • +
  • + + I was able to share a barrack with my herd. It felt safe and comfy. + 4 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/GroupThoughts/PackThoughts.xml b/1.5/Defs/Thoughts/GroupThoughts/PackThoughts.xml new file mode 100644 index 000000000..229223f0d --- /dev/null +++ b/1.5/Defs/Thoughts/GroupThoughts/PackThoughts.xml @@ -0,0 +1,166 @@ + + + + PackMindAThought + CanidMind + + +
  • + + I'm the only one of my kind. I feel so alone without a proper pack. + -2 +
  • +
  • + + There's another like me, but we're still only a small pack. It's a bit lonely. + -1 +
  • +
  • + + There's a decent number people in my pack. I'm glad to have them. + true + 1 +
  • +
  • + + There's plenty of people in my pack. This is great! + 5 +
  • +
    +
    + + + PM_PackMindedBedroom + +
  • + + I had to sleep in an awful room, and I didn't even get to share it with my pack. + -7 +
  • +
  • + + I had to sleep in an dull room, and I didn't even get to share it with my pack. + -5 +
  • + +
  • + + I had to sleep on my own, separated from my pack. + -4 + +
  • + +
  • + + I had to sleep on my own, separated from my pack. + -3 +
  • +
  • + + I had to sleep on my own in a slightly impressive bedroom. It was alright, but I'd prefer to sleep with my pack. + -1 +
  • +
  • + + I slept on my own in an impressive bedroom. It was fine, but I miss my pack. + 1 +
  • +
  • + + I slept in a very impressive bedroom on my own. It was nice, but it would have been better with the rest of the pack. + 2 +
  • +
  • + + I slept in an extremely impressive bedroom. It was great, but I wish I could have shared it with my pack. + 3 +
  • +
  • + + I slept in an unbelievably impressive bedroom. It was marvelous, but it just didn't feel complete without the rest of my pack. + 4 +
  • +
  • + + I slept in a heavenly bedroom. It was so astounding, I could almost forget I had to sleep away from the pack. + 5 +
  • +
    +
    + + + PM_PackMindedBarrack + + +
  • + + We had to sleep in an awful barrack, but at least the pack slept together. + -4 +
  • +
  • + + We had to sleep in a dull barrack, but at least the pack slept together. + -2 +
  • +
  • + + The pack slept together in a mediocre barrack. It beats sleeping alone. + 0 + true +
  • +
  • + + The pack slept together in a decent barrack. This feels nice. + 2 +
  • +
  • + + The pack slept together in a pretty nice barrack. This is great. + 3 +
  • +
  • + + The pack slept together in an impressive barrack. We loved it. + 4 +
  • +
  • + + The pack got to sleep together in a very impressive barrack. It was wonderful. + 5 +
  • +
  • + + The pack got to sleep together in an extremely impressive barrack. It was truly marvelous. + 6 +
  • +
  • + + The pack got to share a barrack that was unbelievably impressive. There's nothing better than sleeping with my pack in a room like this. + 7 +
  • +
  • + + The pack got to share a barrack that was simply wondrous. I could just stay here with my pack forever. + 8 +
  • +
    +
    + + + PM_PackMindedAscetic + + +
  • + + I had to sleep in a room by myself, away from my pack. + -4 +
  • +
  • + + I was able to share a barrack with my pack. It was nice and cozy together. + 4 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/JealousThought.xml b/1.5/Defs/Thoughts/JealousThought.xml new file mode 100644 index 000000000..e46b22dfd --- /dev/null +++ b/1.5/Defs/Thoughts/JealousThought.xml @@ -0,0 +1,17 @@ + + + PM_JeleausThought + Pawnmorph.Thoughts.Worker_JealousMorph + +
  • Jealous
  • +
  • MutationAffinity
  • +
    + +
  • + + Other people are mutated and I'm not yet. It's not fair! + -2 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/Memories_MutationBase.xml b/1.5/Defs/Thoughts/Memories_MutationBase.xml new file mode 100644 index 000000000..405b6a4b0 --- /dev/null +++ b/1.5/Defs/Thoughts/Memories_MutationBase.xml @@ -0,0 +1,99 @@ + + + + false + 4 + Pawnmorph.Thoughts.MutationMemory + + + + + CanidPawHandMemory + +
  • + + How am I supposed to do anything with paws for hands? + -3 +
  • +
  • + + Sure they're not as flexible...but they're cute. That's all that matters, right? + +3 +
  • +
  • + + Not my hands, not my damned hands! + -6 +
  • +
    +
    + + + HoofHandMemory + +
  • + + I can't do anything with hooves! + -5 +
  • +
  • + + + They're kinda cool. Useless, but cool? + +1 +
  • +
  • + + + They're horrific and beastly, I'm useless! + -10 +
  • +
    +
    + + + StumpHandMemory + +
  • + + I break everything I touch! + -5 +
  • +
  • + + + I will smash through every wall there is. + +3 +
  • +
  • + + + I can't even pat a dog without hurting it! + -10 +
  • +
    +
    + + + WingTipMemory + +
  • + + I don't have any fingers, what am I supposed to do?! + -5 +
  • +
  • + + + Flap flap. Flap flap. They are admittedly difficult to work with. + +1 +
  • +
  • + + + WHY ME?! + -10 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/MergedPawns/FH_Persistent.xml b/1.5/Defs/Thoughts/MergedPawns/FH_Persistent.xml new file mode 100644 index 000000000..97e78cbea --- /dev/null +++ b/1.5/Defs/Thoughts/MergedPawns/FH_Persistent.xml @@ -0,0 +1,180 @@ + + + Pawnmorph.Thoughts.Worker_MergedPawn + + + + MergedPawnPersistentThoughtDefault + +
  • BodyPurist
  • +
  • MutationAffinity
  • +
    + +
  • + + What on earth?! I can hear you...me...us? I need some space. + -5 +
  • +
  • + + You, stop thinking about it or we're both going to be in trouble. + -3 +
  • +
  • + + C'mon, stop acting like this...I can't think clearly. + -1 +
  • +
  • + + You're...making this worse for both of us...we...I need to sleep. +
  • +
  • + + ...food? + 5 +
  • +
  • + + Food! +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + MergedPawnPersistentThoughtMA + +
  • MutationAffinity
  • +
    + +
  • + + Hey friend, I don't know how you feel about this but I think it's pretty cool. + 1 +
  • +
  • + + Hmm...we could get used to this. What, you don't like that 'we'? + 2 +
  • +
  • + + Listen to the call of the wild...you'll feel better about this. + 4 +
  • +
  • + + My other mind wants to stay focused...but I want to enjoy the instinct...just become 'I'. + 6 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + MergedPawnPersistentThoughtBP + +
  • BodyPurist
  • +
    + +
  • + + This is the worst thing I can imagine, welded to someone else in a freakish body! + -30 +
  • +
  • + + Don't think about it! You're making me feel worse! + -20 +
  • +
  • + + My other mind...wants to give in...but I can't! + -15 +
  • +
  • + + Gotta...keep...going...but...can't... + -5 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    +
    + + + MergedPawnPersistentThoughtPW + +
  • + + This is...amazing. Hey, second-head, want to be friends? + 10 +
  • +
  • + + We're enjoying this feeling...or at least, I think second-head is. + 15 +
  • +
  • + + I'm confused, is it 'we' or 'I'? I could use either... + 10 +
  • +
  • + + Might...just...give...in...sorry other-head. + 5 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + +
  • + PrimalWish +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Thoughts/MiscMutationMemories.xml b/1.5/Defs/Thoughts/MiscMutationMemories.xml new file mode 100644 index 000000000..2649e535d --- /dev/null +++ b/1.5/Defs/Thoughts/MiscMutationMemories.xml @@ -0,0 +1,285 @@ + + + + 1 + EtherFurredLimb + +
  • + + People aren't supposed to have fur. + true + -1 +
  • +
  • + + So soft, so warm... + true + 1 +
  • +
  • + + I'm too hot like this, and I don't like how animal it makes me look! + true + -2 +
  • +
    +
    + + + 1 + EtherWingMemory + +
  • + + How am I supposed to use these things? + -1 +
  • +
  • + + Okay sure, they might not be practical for lifting things, or flying, or really anything I guess; but they do allow me to do an even better imitation of a dodo! + 2 +
  • +
  • + + How am I supposed to do anything with wings? They don't even let me fly! + -3 +
  • +
    +
    + + + 1 + EtherHoofHand + +
  • + + Not hooves, what am I meant to do with these?! + true + -1 +
  • +
  • + + Hm. Well, I can't say it was unexpected... + true + 2 +
  • +
  • + + MY HANDS! Please, no! + true + -3 +
  • +
  • + + One step closer to all fours. This is great! + true + 1 +
  • +
    +
    + + + 1 + EtherDigitigradeLeg + +
  • + + Are they bent a different way, or is that my heel? + true + -1 +
  • +
  • + + I can be so much faster like this! Once I get used to it. + true + 2 +
  • +
  • + + My knee's bending backwards now! What? That's my heel, not my knee? Even worse! + true + -3 +
  • +
  • + + Just a bit further, and I won't be able to stand up! How about that? + true + 1 +
  • +
    +
    + + + PawFootMemory + +
  • + + Well, at least I won't have a problem walking over gravel. + -1 +
  • +
  • + + Look at my cute little paws! + 2 +
  • +
  • + + Wait, whats happened to my feet? They look like a beasts! + -3 +
  • +
    +
    + + + AvianFootMemory + +
  • + + It's a bit wierd walking around on chicken-feet. + -1 +
  • +
  • + + I am suprised just how nimble these avian claws are, I haven't missed a step! + 2 +
  • +
  • + + My feet look like a chickens. I wonder if I'm starting to taste like one too? + -3 +
  • +
    +
    + + + 1 + EtherClovenHoofFoot + +
  • + + Well, at least I don't need shoes anymore. + true + 1 +
  • +
  • + + No more shoes! Awesome! + true + 2 +
  • +
  • + + I can't even sneak away from the humiliation anymore... these things cause a racket wherever I go! + true + -3 +
  • +
    +
    + + + 1 + EtherWooly + +
  • + + Everything is so itchy! + true + -1 +
  • +
  • + + It's so soft and warm. + true + 2 +
  • +
  • + + I really need a shave. + true + -3 +
  • +
    +
    + + + 1 + EtherThickFurLimb + +
  • + + It's pretty stuffy under here. + true + -1 +
  • +
  • + + A thick pelt, for soft hugs. + true + 2 +
  • +
  • + + It's unbearably hot under this hideous pelt! + true + -3 +
  • +
    +
    + + + 1 + EtherEarHole + +
  • + + What the, where are my ears? + true + -1 +
  • +
  • + + I suppose they're more streamlined now? + true + 1 +
  • +
  • + + My ears?! This is a nightmare! I look like a monster! + true + -2 +
  • +
    +
    + + + 1 + EtherEggLayer + +
  • + + How is this even possible? It feels so weird... + true + -5 +
  • +
  • + + This is taking it too far. People weren't meant to lay eggs! + true + -3 +
  • +
  • + + How!? Why!? What has become of me!? + true + -10 +
  • +
  • + + I know I wanted this, but I'm not entirely sure now. + true + 0 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/MutationThoughts/DefaultMorphReactions.xml b/1.5/Defs/Thoughts/MutationThoughts/DefaultMorphReactions.xml new file mode 100644 index 000000000..d02bbdbcb --- /dev/null +++ b/1.5/Defs/Thoughts/MutationThoughts/DefaultMorphReactions.xml @@ -0,0 +1,23 @@ + + + DefaultMorphTfMemory + +
  • + + Not much seems to be different... + true +
  • +
  • + + Wait a minute, those things weren't there before. + true +
  • +
  • + + What's happening to me? I barely even look human anymore! + true +
  • +
    + +
    +
    diff --git a/1.5/Defs/Thoughts/MutationThoughts/RevertToHumanThoughts.xml b/1.5/Defs/Thoughts/MutationThoughts/RevertToHumanThoughts.xml new file mode 100644 index 000000000..ec51f6075 --- /dev/null +++ b/1.5/Defs/Thoughts/MutationThoughts/RevertToHumanThoughts.xml @@ -0,0 +1,19 @@ + + + + + + + DefaultMorphRevertsToHuman + +
  • + + That was...an experience, to say the least. I'm glad to be back to my old self again, though. + true +
  • +
    +
    + + + +
    diff --git a/1.5/Defs/Thoughts/MutationTraitsSocialThoughts.xml b/1.5/Defs/Thoughts/MutationTraitsSocialThoughts.xml new file mode 100644 index 000000000..2ac4f870c --- /dev/null +++ b/1.5/Defs/Thoughts/MutationTraitsSocialThoughts.xml @@ -0,0 +1,63 @@ + + + + FurryAppreciation + Thought_SituationalSocial + Pawnmorph.Thoughts.Worker_FurryAppreciation + true + + +
  • + + 2 +
  • +
  • + + 5 +
  • +
  • + + 10 +
  • +
  • + + 12 +
  • +
  • + + 15 +
  • +
    +
    + + + + BodyPuristDisgustMutation + Thought_SituationalSocial + Pawnmorph.Thoughts.Worker_BodyPuristDisgust + true + + +
  • + + -8 +
  • +
  • + + -16 +
  • +
  • + + -24 +
  • +
  • + + -32 +
  • +
  • + + -40 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Pawnmorpher_DefaultReactions.xml b/1.5/Defs/Thoughts/Pawnmorpher_DefaultReactions.xml new file mode 100644 index 000000000..6bcdc12c1 --- /dev/null +++ b/1.5/Defs/Thoughts/Pawnmorpher_DefaultReactions.xml @@ -0,0 +1,149 @@ + + + 10 + +
  • Psychopath
  • +
    + +
    + + + DefaultTransformationReaction + +
  • + + I'm not sure whether this is better or worse for them, but at least they're better equipped to survive. +
  • +
  • + + A colonist was turned into an animal. That's not right. + -4 +
  • +
  • + + We turned a captive into an animal. I know they're our prisoner, but it seems wrong. + -1 +
  • +
  • + + Someone came to our colony, and we betrayed that trust. + -2 +
  • +
  • + + A slave became an animal. They may be a slave, but this feels so wrong. + -1 +
  • +
  • + + This is bad to turn a prisonner into an animal, but I also feel like they deserved it. +
  • +
    +
    + + + DefaultMergedThought + +
  • + + I really don't think they appreciated that at all. +
  • +
  • + + We did mad science on one of our own, and now they're...horrifying. + -8 + +
  • +
  • + + We did mad science on a captive. It's wrong to make them into a monster. + -4 + +
  • +
  • + + Someone came to our colony for hospitality, and now they're an abomination. + -8 +
  • +
  • + + Being a slave does not mean it's ok to become a freak. + -4 +
  • +
  • + + While it must be painful, I do not feel bad for them. +
  • +
    +
    + + + + DefaultRevertedPawnReaction + +
  • + + A wild person is human again. We did a good deed. + 3 +
  • +
  • + + A colonist is human again. We did a good deed. + 5 +
  • +
  • + + At least it can be undone. + 1 +
  • +
  • + + A guest is human again. Hopefully they'll trust us again, eventually. + 3 +
  • +
  • + + They are at least freed from animality. + 1 +
  • +
  • + + This is good for them, I guess? +
  • +
    +
    + + + DefaultPermanentlyFeralReaction + +
  • + + Wild forever more, I suppose. + -1 +
  • +
  • + + We knew it was coming...but now they can never be human again. + -2 +
  • +
  • + + Did we really expect to turn them back? + true +
  • +
  • + + Uh, whoops... + -1 +
  • +
  • + + Let's wish they can be free in nature. +
  • +
  • + + I guess this is a punishment for their crimes. +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Pawnmorpher_Merge_Thoughts.xml b/1.5/Defs/Thoughts/Pawnmorpher_Merge_Thoughts.xml new file mode 100644 index 000000000..d57f8998e --- /dev/null +++ b/1.5/Defs/Thoughts/Pawnmorpher_Merge_Thoughts.xml @@ -0,0 +1,28 @@ + + + FriendMergedThought + 10 + +
  • Psychopath
  • +
    + +
  • + + The colony did mad science on my friend and now they're a monster! + -8 +
  • +
    +
    + + + RivalMergedThought + 10 + +
  • + + We did mad science on my rival. Serves them right. + 8 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Pawnmorpher_Perm_feral_Thoughts.xml b/1.5/Defs/Thoughts/Pawnmorpher_Perm_feral_Thoughts.xml new file mode 100644 index 000000000..a15966335 --- /dev/null +++ b/1.5/Defs/Thoughts/Pawnmorpher_Perm_feral_Thoughts.xml @@ -0,0 +1,29 @@ + + + + + FriendPermFeralThought + 10 + +
  • Psychopath
  • +
    + +
  • + + My friend is stuck in the body of an animal...forever! + -2 +
  • +
    +
    + + RivalPermFeralThought + 10 + +
  • + + My rival can never come back from that beastly form now. It suits them. + 3 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Pawnmorpher_Reversion_Thoughts.xml b/1.5/Defs/Thoughts/Pawnmorpher_Reversion_Thoughts.xml new file mode 100644 index 000000000..3bebe8bf5 --- /dev/null +++ b/1.5/Defs/Thoughts/Pawnmorpher_Reversion_Thoughts.xml @@ -0,0 +1,25 @@ + + + FriendRevertedThought + 10 + +
  • + + My friend is human again! Praise Randy! + 15 +
  • +
    +
    + + + RivalRevertedThought + 10 + +
  • + + Agh, it was somewhat fun seeing them on all-fours though! + -3 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Pawnmorpher_TF_Reactions.xml b/1.5/Defs/Thoughts/Pawnmorpher_TF_Reactions.xml new file mode 100644 index 000000000..8fd232656 --- /dev/null +++ b/1.5/Defs/Thoughts/Pawnmorpher_TF_Reactions.xml @@ -0,0 +1,174 @@ + + + RivalTransformedThought + 10 + 1 + +
  • + + My rival is on all fours. Serves them right! I think I like them better like this. + 5 +
  • +
    +
    + + + FriendTransformedThought + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My friend turned into a dumb animal! + -4 +
  • +
    +
    + + + FatherTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My dad is an animal...I don't know how to feel about this. + -6 +
  • +
    +
    + + + MotherTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My poor mother is nothing but an animal now... + -6 +
  • +
    +
    + + + HusbandTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My husband was turned into an animal! He's not sleeping in my bed like that. + -6 +
  • +
    +
    + + + WifeTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My wife was turned into an animal! Guess I'll have to find somewhere else to sleep. + -6 +
  • +
    +
    + + + BrotherTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My brother was transformed into an animal! This is like that weird movie... + -5 +
  • +
    +
    + + + SisterTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My sister was turned into an animal! It should have been me instead... + -5 +
  • +
    +
    + + + SonTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My son was turned into an animal! My poor boy... + -5 +
  • +
    +
    + + + DaughterTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My daughter was turned into an animal! My darling girl... + -5 +
  • +
    +
    + + + FriendTransformed + 10 + 1 + +
  • Psychopath
  • +
    + +
  • + + My friend turned into a dumb animal! + -4 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/PreceptThoughts.xml b/1.5/Defs/Thoughts/PreceptThoughts.xml new file mode 100644 index 000000000..c76d58de8 --- /dev/null +++ b/1.5/Defs/Thoughts/PreceptThoughts.xml @@ -0,0 +1,320 @@ + + + + + + + 5 + Pawnmorph.Thoughts.MutationMemory + + + Pawnmorph.Thoughts.Precept.MutationMemory_VeneratedAnimal + +
  • + + + + PM_FleshPuristMutated + +
  • + + My body is tainted by grotesque mutations. + -8 +
  • +
  • + + I shouldn't be as carefree about these changes as I am. + -1 +
  • +
  • + + These abhorrent mutations are an unholy stain on my humanity! + -15 +
  • + + +
    + + + PM_NaturePrimacyMutated + +
  • + + I feel closer to nature with these mutations. + 8 +
  • +
  • + + I am one with nature. I feel intimately connected with the world around me like this. + 15 +
  • +
  • + + As much as I feel tainted by them, I am more connected to nature with these changes. + -3 +
  • +
    +
    + + + PM_HumanPrimacyMutated + +
  • + + I feel less than human like this. + -8 +
  • +
  • + + I shouldn't be as carefree about these changes as I am. + -1 +
  • +
  • + + I am stained by the tarnish of animalism on my human form. + -15 +
  • +
    +
    + + + + PM_GainedVeneratedMutation + +
  • + + It's certainly eye-catching. + 5 +
  • +
  • + + If I change enough, will people venerate me?. + 10 +
  • +
  • + + I venerate them, I don't necessarily want to *be* them! + -2 +
  • +
  • + + When I change enough, people will venerate *me*. + 15 +
  • +
    +
    + + + + + PM_FleshPuristTransformed + +
  • + + My pure body is permanently stained by this horrific transformation! + -15 +
  • +
  • + + I feel so different. Can I still be pure like this? Surely not... + -3 +
  • +
  • + + UNCLEAN! UNCLEAN! UNCLEAN! + -25 +
  • +
    +
    + + + PM_NaturePrimacyTransformed + +
  • + + A little on the extreme side, but if this is what must be done for nature to be prime, then I am all for it. + 15 +
  • +
  • + + I am more than one with nature, I *am* nature. + 25 +
  • +
  • + + Sure, I'm part of nature now, but what if nature thinks we're impostors? I'm not sold... + -5 +
  • +
    +
    + + PM_HumanPrimacyTransformed + +
  • + + Well, there go my weekend plans for BEING A PURE HUMAN BEING. + -15 +
  • +
  • + + I feel so very different. I'm surely impure like this. + -5 +
  • +
  • + + I am a HUMAN BEING, not an animal, this is the unholiest thing I can imagine. + -25 +
  • +
    +
    + + + + + + + + PM_FleshPuristReverted + +
  • + + Their flesh is restored. They are once again clean. + 3 +
  • +
    +
    + + + PM_NaturePrimacyReverted + +
  • + + But at last I felt closer to nature... + -3 +
  • +
    +
    + + PM_HumanPrimacyReverted + +
  • + + Humanity can conquer any adversity, including not being human. Checkmate, nature. + 3 +
  • +
    +
    + + + + PM_VeneratedAnimalReverted + +
  • + + It might be for the best, but having more {ANIMALKIND}s around was nice. + -1 +
  • +
    +
    + + + + + PM_FleshPuristMorphed + +
  • + + My body is cursed and animalistic. + -15 +
  • +
    +
    + + + PM_NaturePrimacyMorphed + +
  • + + My body is a temple to nature. + 8 +
  • +
    +
    + + PM_HumanPrimacyMorphed + +
  • + + My body is cursed and animalistic. + -15 +
  • +
    +
    + + + + PM_VeneratedAnimalMorphed + +
  • + + I am blessed to become closer to the wonderful {ANIMALKIND}. + 8 +
  • +
    +
    + + + + + + PM_FleshPuristMorphedReverted + +
  • + + My pure flesh is restored. + 5 +
  • +
    +
    + + + PM_NaturePrimacyMorphedReverted + +
  • + + I am no longer a holy middle point between human and nature. + -5 +
  • +
    +
    + + + PM_HumanPrimacyMorphedReverted + +
  • + + My humanity is restored. + 5 +
  • +
    +
    + + + + PM_VeneratedAnimalMorphedReverted + +
  • + + I could have had a higher social status for that... + -5 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/AspectRelated.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/AspectRelated.xml new file mode 100644 index 000000000..38bb2c29d --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/AspectRelated.xml @@ -0,0 +1,32 @@ + + + BeastmasterThoughts + Pawnmorph.Thoughts.Worker_BeastMaster + Thought_Situational + true + +
  • Psychopath
  • +
    + +
  • + + It feels good being with a former human. It's easier, them being an animal. + 5 +
  • +
  • + + It's nice to be around animals that understand you. They were humans once. + 5 +
  • +
    + +
  • + +
  • + Beastmaster +
  • + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Bases.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Bases.xml new file mode 100644 index 000000000..78b548767 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Bases.xml @@ -0,0 +1,6 @@ + + + Pawnmorph.Thoughts.FormerHumanMemory + 1 + + \ No newline at end of file diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedMaster.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedMaster.xml new file mode 100644 index 000000000..89f6978f1 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedMaster.xml @@ -0,0 +1,32 @@ + + + Pawnmorph.Thoughts.Worker_SapientAnimalBondedMaster + + + + SapientAnimalBondedMaster + +
  • + + My bonded friend is great, helping me to get used to life like this. + 10 +
  • +
  • + + My bonded friend is great, even though I can't express it with words. + 10 +
  • +
  • + + My bonded friend...or is it master? Great person...want to be close. + 10 +
  • +
  • + + Nice person...my master. Feeds me. + 10 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedNonMaster.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedNonMaster.xml new file mode 100644 index 000000000..55c745636 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_BondedNonMaster.xml @@ -0,0 +1,31 @@ + + + Pawnmorph.Thoughts.Worker_SapientAnimalBondedNonMaster + + + + SapientAnimalBondedNonMaster + +
  • + + I have a special bond with my friend, but they're not by my side. + -12 +
  • +
  • + + I have a special bond with my friend, but they're not by my side. + -12 +
  • +
  • + + I think...they're my master...but they're not here. + -12 +
  • +
  • + + Where's master? Want food... + -12 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FeralPills.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FeralPills.xml new file mode 100644 index 000000000..d47d509b7 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FeralPills.xml @@ -0,0 +1,159 @@ + + + FeralPillSapienceDrop + Pawnmorph.Thoughts.Worker_FormerHumanHediff + +
  • +
    +
    + + + FeralPillThought + +
  • MutationAffinity
  • +
    + +
  • + + What was that?! The call of instinct is so much stronger now. + -10 +
  • +
  • + + Oh no...it's too strong to ignore, they're taking my mind! + -15 +
  • +
  • + + It's hard to keep focused...maybe I should just give in? + -5 +
  • +
  • + + Feeling...fuzzy...give up... + -2 +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + FeralPillThoughtMutationAffinity + +
  • MutationAffinity
  • +
    + +
  • + + The instinct is getting stronger...I never said I wanted to lose it! + -3 +
  • +
  • + + The scents and feelings are hard to ignore... + -1 +
  • +
  • + + It's hard to keep focused...maybe I should just give in? + 2 +
  • +
  • + + Feeling...fuzzy...OK to give up... + 5 +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + FeralPillThoughtBodyPurist + +
  • BodyPurist
  • +
    + +
  • + + What was that thing?! I feel lightheaded and...NO! + -10 +
  • +
  • + + They're taking the last human part of me, you animals! This is hell on earth! + -20 +
  • +
  • + + No...! I can't...won't...go! + -30 +
  • +
  • + + Feeling...fuzzy...can't give up... + -10 +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + FeralPillThoughtPrimalWish + +
  • + + The rush of instinct is amazing! I feel alive! + 5 +
  • +
  • + + Instinct getting stronger...I need more... + 5 +
  • +
  • + + This is...what I wanted...right? + 5 +
  • +
  • + + Feeling...fuzzy...good... + 5 +
  • +
    + +
  • + +
  • + PrimalWish +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Food.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Food.xml new file mode 100644 index 000000000..15b5e5dce --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Food.xml @@ -0,0 +1,112 @@ + + + WargAteCorpse + true + Things/Mote/ThoughtSymbol/Food + +
  • + + Ugh, this is disgusting. I don't want to do this... + -5 +
  • +
  • + + Ugh, this isn't the best meal ever...but it's tasty. + -2 +
  • +
  • + + Something wants me to like the taste...and I think I do. + 2 +
  • +
  • + + Mmhh...it's so succulent and meaty... + 5 +
  • +
  • + + + ...food! + 5 +
  • +
    + +
  • + + false + +
  • Warg
  • + + + +
    +
    + + + SapientAnimalAteRawFood + 1 + +
  • + + Being an animal doesn't make this taste any more appealing. + -4 +
  • +
  • + + It's alright...still gross, but more tolerable than before. + -2 +
  • +
  • + + Hm...it's decent...it's just hard to think normally when I'm eating it... + 1 +
  • +
  • + + It's good...mmm! + 3 +
  • +
    + +
  • + +
  • +
    +
    + + + SapientAnimalAteKibble + true + Things/Mote/ThoughtSymbol/Food + 1 + +
  • + + I had to eat animal feed, now that I'm like this. I still want proper meals! + -5 +
  • +
  • + + I had to eat animal feed, now that I'm like this. + -3 +
  • +
  • + + I ate animal feed, and it was...alright? That should concern me... + -1 +
  • +
  • + + It's food? + 0 +
  • +
    + +
  • + +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FoodThoughts.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FoodThoughts.xml new file mode 100644 index 000000000..b3b5249bf --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_FoodThoughts.xml @@ -0,0 +1,140 @@ + + + 1 + +
  • Cannibal
  • +
    + Pawnmorph.Thoughts.FormerHumanMemory +
    + + + 1 + +
  • Cannibal
  • +
    + Pawnmorph.Thoughts.FormerHumanMemory +
    + + + FHDefaultCannibalThought_Direct + +
  • + + + It's unsettling eating a {animal} raw. That could be me! + -10 +
  • +
  • + + + It's pretty good. Wait! I'm a {animal}! + -5 +
  • +
  • + + + I'm eating {animal} meat raw, but I'm a {animal}... Does that matter? + -3 +
  • +
  • + + + MMmmm. + 0 + true +
  • +
    +
    + + + FHDefaultCannibalGoodThought_Direct + +
  • + + + It's not another person... But I'm a {animal} so it's close enough! + 10 +
  • +
  • + + + It's pretty good! Oh I'm a {animal} too, that's even better! + 5 +
  • +
  • + + + I'm eating {animal} meat raw, I'm a {animal}. That's good! + 3 +
  • +
  • + + + MMmmm. + 0 + true +
  • +
    +
    + + + FHDefaultCannibalThought_Ingredient + +
  • + + + It's unsettling eating a meal made from {animal} meat. That could be me! + -10 +
  • +
  • + + + It's pretty good. Wait, this was a {animal} right? This feels so weird. + -5 +
  • +
  • + + + This was made from a {animal}... I'm a {animal}... Does that matter? + -3 +
  • +
  • + + + MMmmm. + 0 + true +
  • +
    +
    + + FHDefaultCannibalGoodThought_Ingredient + +
  • + + + It's not human, but I'm a {animal} so it's close enough! It'd be better raw though. + 5 +
  • +
  • + + + It's pretty good! Oh it was made with {animal} too, that's even better! + 3 +
  • +
  • + + + This was a {animal}, I'm a {animal}. Nice. + 2 +
  • +
  • + + + MMmmm. + 0 + true +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_HuntingThoughts.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_HuntingThoughts.xml new file mode 100644 index 000000000..33abe4969 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_HuntingThoughts.xml @@ -0,0 +1,99 @@ + + + + SapientAnimalHuntingMemory + Pawnmorph.Thoughts.FormerHumanMemory + 1 + +
  • + + I was so hungry I...can't believe I did that. I'm covered in blood and I want to hide. + true + -10 +
  • +
  • + + It's hard to fight off instinct, let alone hunger. I'm bloody, but I'm fed. + -3 +
  • +
  • + + The taste is starting to grow on me...I think I could keep hunting. + 2 +
  • +
  • + + Made a kill. Fed. Tastes good. + 10 +
  • +
    +
    + + + + + + SapientAnimalHuntingMemoryPrimalWish + Pawnmorph.Thoughts.FormerHumanMemory + 1 + +
  • + + I don't want to get that hungry again...but hunting is fun! + true + 5 +
  • +
  • + + Nothing like a good hunt to get the blood flowing. + 8 +
  • +
  • + + What a rush! Tastes good. + 10 +
  • +
  • + + Primal feelings...so strong, more hunt! + 20 +
  • +
    +
    + + + SapientAnimalHuntingBreakCatharsis + Pawnmorph.Thoughts.FormerHumanMemory + 1 + +
  • + + I feel better now...and a little foggier, I guess. + true + 20 +
  • +
  • + + I know I shouldn't, but...I feel so alive! + 30 +
  • +
  • + + Getting that out of my system...felt good. And I got fed. + 40 +
  • +
  • + + Grr...went hunting...sniff sniff, bite...feel alive! + 40 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Interactions.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Interactions.xml new file mode 100644 index 000000000..20e53652b --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Interactions.xml @@ -0,0 +1,81 @@ + + + FormerHumanInteractedThought + +
  • + + Someone took the time to talk to me, telling me everything would be ok. I think I can manage, if they're going to help me cope with this. + 10 +
  • +
  • + + Even though I couldn't talk back, it was nice to have someone sit and chat with me. + 5 +
  • +
  • + + Nice of them, but I think I want belly rubs now... + 2 +
  • +
  • + + Talking at me...what are they saying? + 1 +
  • + +
    +
    + + + + FormerHumanTrainThought + +
  • + + They're trying to train me like an animal! I don't need your handouts! + -5 +
  • +
  • + + I suppose it's not all bad, at least I get treats...but also, how dare you. + -2 +
  • +
  • + + I'd better get used to this...at least there's food involved. + 1 +
  • +
  • + + Treat! I'll do tricks for treats... + 5 +
  • +
    +
    + + + FormerHumanTameThought + +
  • + + I can talk, you know. You don't need to be condescending if you want me to stick around. + -2 +
  • +
  • + + Thanks for the snack, but keep your hands off me. + -1 +
  • +
  • + + Maybe they can...help me... + 3 +
  • +
  • + + Food? You got...food? + 5 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_NakedThoughts.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_NakedThoughts.xml new file mode 100644 index 000000000..f8db69a0c --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_NakedThoughts.xml @@ -0,0 +1,146 @@ + + + Pawnmorph.Thoughts.Worker_FHNaked + true + +
  • Nudist
  • +
    +
    + + + Pawnmorph.Thoughts.Worker_FHNaked + true + +
  • Nudist
  • +
    +
    + + SapientAnimalNaked + +
  • + + I know I'm covered in fur but...c'mon! + -5 +
  • + +
  • + + It would help if I could put something on, even just to pretend... + -4 +
  • +
  • + + Why do I feel weird out and about? Oh! Clothes! + -3 +
  • +
  • + + There's no other option, right? + -2 +
  • +
  • + + Clothes? + 0 +
  • +
    + +
  • + + + true + +
  • Chicken
  • +
  • Iguana
  • +
  • Cobra
  • + + + +
    +
    + + + SapientChickenNaked + +
  • + + I know I'm covered in feathers but...c'mon! + -5 +
  • +
  • + + It would help if I could put something on, even just to pretend... + -4 +
  • +
  • + + Why do I feel weird out and about? Oh! Clothes! + -3 +
  • +
  • + + There's no other option, right? + -2 +
  • +
  • + + Clothes? + 0 +
  • +
    + +
  • + + + false + +
  • Chicken
  • + + + +
    +
    + + + SapientReptileNaked + +
  • + + I know I'm covered in scales but...c'mon! + -5 +
  • +
  • + + It would help if I could put something on, even just to pretend... + -4 +
  • +
  • + + Why do I feel weird out and about? Oh! Clothes! + -3 +
  • +
  • + + There's no other option, right? + -2 +
  • +
  • + + Clothes? + 0 +
  • +
    + +
  • + + + false + +
  • Iguana
  • +
  • Cobra
  • + + + +
    +
    +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Naked_Nudist.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Naked_Nudist.xml new file mode 100644 index 000000000..96fca3fda --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Naked_Nudist.xml @@ -0,0 +1,134 @@ + + + + NudistSapientAnimalNaked + +
  • + + Eh, I'm covered in fur, I don't care. This is more natural! + 5 +
  • + +
  • + + Nothin' between me and the world, it's just right. + 4 +
  • +
  • + + There's no other option right? + 3 +
  • +
  • + + Why would they want to put stuff over their fur... + 2 +
  • +
  • + + Clothes? + 0 +
  • + + +
    + +
  • + + + true + +
  • Chicken
  • +
  • Iguana
  • +
  • Cobra
  • + + + +
    +
    + + + NudistSapientChickenNaked + +
  • + + Eh, I'm covered in feathers, I don't care. This is more natural! + 2 +
  • +
  • + + Nothin' between me and the world, it's just right. + 4 +
  • +
  • + + There's no other option right? + 3 +
  • +
  • + + Why would they want to put stuff over their feathers... + 2 +
  • +
  • + + Clothes? + 0 +
  • +
    + +
  • + + + false + +
  • Chicken
  • + + + +
    +
    + + + NudistSapientReptileNaked + +
  • + + Eh, I'm covered in scales, I don't care. This is more natural! + 2 +
  • +
  • + + Nothin' between me and the world, it's just right. + 4 +
  • +
  • + + There's no other option right? + 3 +
  • +
  • + + Why would they want to put stuff over their scales... + 2 +
  • +
  • + + Clothes? + 0 +
  • +
    + +
  • + + + false + +
  • Iguana
  • +
  • Cobra
  • + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Pals.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Pals.xml new file mode 100644 index 000000000..f800b0ec0 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Pals.xml @@ -0,0 +1,59 @@ + + + + + FormerHumanAnimalPalsThought + Pawnmorph.Thoughts.AnimalPalsWorker + +
  • + + I never thought I'd share the perspective of my bonded animal. + 10 +
  • +
  • + + They're an animal like me, but I'm glad they still recognise me for me... + 10 +
  • +
  • + + Animal friend...my friend. We're closer like this... + 10 +
  • +
  • + + Even closer friends now...both animals. + 10 +
  • +
    +
    + + + + FormerHumanPalsThought + Pawnmorph.Thoughts.FormerHumanPalsWorker + +
  • + + I'm in the same boat as them now, though I never thought it'd happen... + 10 +
  • +
  • + + Both of us being like this makes our bond stronger. + 10 +
  • +
  • + + We'll both figure out...how to live like...this...before we both eventually turn feral... + 10 +
  • +
  • + + Good friend...pal...closer now as animals. + 10 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Persistent.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Persistent.xml new file mode 100644 index 000000000..257f2d775 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/FH_Persistent.xml @@ -0,0 +1,180 @@ + + + Pawnmorph.Thoughts.Worker_FormerHuman + + + + FH_PersistentThoughtDefault + +
  • BodyPurist
  • +
  • MutationAffinity
  • +
    + +
  • + + I can hardly believe my eyes. I'm a goddamn animal! + -5 +
  • +
  • + + Something's tugging at my mind...it's the animal. + -3 +
  • +
  • + + I shouldn't give in but it's...getting cloudy in here. + -1 +
  • +
  • + + Gotta...stay...focused. All I want to do is eat and sleep! +
  • +
  • + + ...food? + 5 +
  • +
  • + + Food! +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + FH_PersistentThoughtMA + +
  • MutationAffinity
  • +
    + +
  • + + This is a little bit more extreme than I wanted, but ok. + 1 +
  • +
  • + + Hmm...I could get used feeling like an animal. + 2 +
  • +
  • + + The call of the wild is getting stronger...and I don't really mind it. + 4 +
  • +
  • + + I should stay focused, but...I'm comfortable like this. + 6 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + FH_PersistentThoughtBP + +
  • BodyPurist
  • +
    + +
  • + + This is not what I wanted at all, for the love of all that is good, please, someone turn me back! + -20 +
  • +
  • + + I need to stay strong, but it's difficult when every sense is overwhelmed! + -15 +
  • +
  • + + No, god, no...the animal in my mind is taking over...getting foggy in here... + -10 +
  • +
  • + + Gotta...keep...going...but...can't... + -5 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    +
    + + + FH_PersistentThoughtPW + +
  • + + I got exactly what I wanted. Now, when does the instinct kick in? + 5 +
  • +
  • + + Hmm, all these sights and smells from a different viewpoint is extremely interesting! + 10 +
  • +
  • + + Wow, this uh...this instinct is getting strong. I think I'm still ok with it... + 15 +
  • +
  • + + Might...just...give...in... + 5 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + +
  • + PrimalWish +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Thoughts/SapientAnimalThoughts/MiscThoughts.xml b/1.5/Defs/Thoughts/SapientAnimalThoughts/MiscThoughts.xml new file mode 100644 index 000000000..84c296f98 --- /dev/null +++ b/1.5/Defs/Thoughts/SapientAnimalThoughts/MiscThoughts.xml @@ -0,0 +1,50 @@ + + + + SapientAnimalSleptOnGround + 1 + +
  • + + I don't even have a pillow anymore, I have to sleep on the ground! + -4 +
  • +
    + +
  • +
  • +
    +
    + + + SapientAnimalMilked + 1 + +
  • + + Get your hands off me you damn dirty ape! + -10 +
  • +
    + +
  • +
  • +
    +
    + + SapientAnimalGotSomeSnuggling + Thought_MemorySocial + 3 + 10 + 0.75 + +
  • + + There's nothing like a good snuggle to lift the mood. + 8 + 6 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/TfWitnessThoughts.xml b/1.5/Defs/Thoughts/TfWitnessThoughts.xml new file mode 100644 index 000000000..a0332ef2b --- /dev/null +++ b/1.5/Defs/Thoughts/TfWitnessThoughts.xml @@ -0,0 +1,148 @@ + + + Things/Mote/ThoughtSymbol/Skull + true + 2 + 5 + + + + 1 + PM_WitnessedAllyTf + +
  • + + + It's still them, but the change is slightly offputting. + true + -1 +
  • +
  • + + + Yes, another one to join us... + true + 3 +
  • +
  • + + + That was horrific to watch, we're doing these insane experiments on our own people! + true + -5 +
  • +
  • + + + God I wish that were me. + true + -3 +
  • +
    +
    + + 1 + PM_WitnessedNonAllyTf + +
  • + + + That was disturbing to watch. + true + -1 +
  • +
  • + + + I'm glad outsiders are so open to becoming animals. + true + 3 +
  • +
  • + + + That was horrific to watch, doing insane experiments on people! + true + -3 +
  • +
  • + + + God I wish that were me! + true + -3 +
  • +
    +
    + + + 1 + PM_WitnessedRivalTf + +
  • + + + As bad as it sounds, it was theraputic to see it. + true + 2 +
  • +
  • + + + People I don't like shouldn't get to experience it. + true + -1 +
  • +
  • + + + However horrific it is to watch, I feel like they deserve it. + true + 2 +
  • +
  • + + + Why do they get all the fun?! + true + -8 +
  • +
    +
    + + + + 1 + PM_WitnessedFriendTf + +
  • + + + My friend, subjected to that horrible change... + true + -3 +
  • +
  • + + + Good for them, I hope they enjoy themselves! + true + 8 +
  • +
  • + + + That was absolutely horrific! A person I've known for so long becoming something they're not! + true + -10 +
  • +
  • + + + Good for them! Me next? + true + 2 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/Thoughts_Bases.xml b/1.5/Defs/Thoughts/Thoughts_Bases.xml new file mode 100644 index 000000000..588ca55cf --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_Bases.xml @@ -0,0 +1,31 @@ + + + Pawnmorph.Thoughts.MutationMemory + 1 + + + + + + 1 + 1 + + + + + \ No newline at end of file diff --git a/1.5/Defs/Thoughts/Thoughts_BodyPurist.xml b/1.5/Defs/Thoughts/Thoughts_BodyPurist.xml new file mode 100644 index 000000000..502d45eeb --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_BodyPurist.xml @@ -0,0 +1,43 @@ + + + + BodyPuristMutationSad + Pawnmorph.Thoughts.Worker_HasMutations + true + +
  • BodyPurist
  • +
    + +
  • + + I hate these mutations. + -5 +
  • +
  • + + I'm a mutated freak. + -10 +
  • +
  • + + I feel grossed out looking at the changes! No more, please! + -15 +
  • +
  • + + I feel sick in my own skin. I want to be human again. + -20 +
  • +
  • + + I look hardly anything like my old self, I'm terrfied! + -25 +
  • +
  • + + There is nothing human left of me. I am an abomination. + -30 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Thoughts_EtherStates_Examples.xml b/1.5/Defs/Thoughts/Thoughts_EtherStates_Examples.xml new file mode 100644 index 000000000..9833e058c --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_EtherStates_Examples.xml @@ -0,0 +1,31 @@ + + + + EtherThoughtMemoryExample + Pawnmorph.Thoughts.Thought_EtherMemory + 60 + 1 + + +
  • + + I have am neither bonded or broken + -4 + +
  • +
  • + + I have EtherBroken hediff + 0 + true + +
  • +
  • + + I have EtherBond hediff + 4 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/Thoughts/Thoughts_ExAnimal.xml b/1.5/Defs/Thoughts/Thoughts_ExAnimal.xml new file mode 100644 index 000000000..2e1350fb1 --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_ExAnimal.xml @@ -0,0 +1,69 @@ + + + 4 + + + + WasAnimal + +
  • + + AHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH I'M A DOG FOREVER (also you should never see this thought) + -100 +
  • +
  • + + I was trapped as a beast, mindless and feral! I'm human again, but I don't think I'll get over this for a long time. + -3 +
  • +
  • + + I'm glad to be human again. I didn't know what to do as a beast...and I can still feel the instincts tugging at my mind. + -1 +
  • +
  • + + I'm sorry...I couldn't control myself from the blind rage! You'd feel it too if you went through what I did. + -3 +
  • +
    +
    + + + WasAnimalPrimalWish + +
  • + + I'm human again? But c'mon, that wa awesome! Put me back in, coach! + -1 + +
  • +
    +
    + + + WasAnimalRelieved + +
  • + + I shouldn't have this thought, but it was exhilarating to know I'd never turn back. + 100 +
  • +
  • + + I was trapped as a beast, mindless and feral! I'm human again, but the experience was...not as bad as I thought? + 3 +
  • +
  • + + I'm glad to be human again. I didn't know what to do as a beast, but it did give me some valuable perspective. + 5 +
  • +
  • + + Wow, it felt great to let out all my anger like that! + 10 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Thoughts_ExMerged.xml b/1.5/Defs/Thoughts/Thoughts_ExMerged.xml new file mode 100644 index 000000000..da4cb1a26 --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_ExMerged.xml @@ -0,0 +1,170 @@ + + + Pawnmorph.PawnRelationWorker_MergeMate + MergeMate + + 200 + MyMergeMateDied + KilledMyMergeMate + +
  • SoldMyMergeMate
  • +
    + 35 + 0 + false + true +
    + + + Pawnmorph.PawnRelationWorker_ExMerged + ExMerged + + 200 + MyExMergeDied + KilledMyExMerge + +
  • SoldMyExMerge
  • +
    + -35 + 0 + false + true +
    + + + MyMergeMateDied + +
  • + + My meldmate died. It feels a bit like dying myself. + -16 +
  • +
    +
    + + + KilledMyMergeMate + Thought_MemorySocial + 120 + 300 + 10 + +
  • + + -50 +
  • +
    +
    + + + SoldMyMergeMate + Thought_MemorySocial + 120 + 10 + 2 + +
  • + + sold my meldmate + My other half was sold to a trader! It was like I was sold too! + -10 + -10 +
  • +
    +
    + + + MyExMergeDied + +
  • + + The person I was melded to died. It feels sort of good that my darkest secrets are now only mine. + 5 +
  • +
    +
    + + + KilledMyExMerge + Thought_MemorySocial + 120 + 300 + 10 + +
  • + + 10 +
  • +
    +
    + + + SoldMyExMerge + Thought_MemorySocial + 120 + 10 + 2 + +
  • + + sold my ex-meld + We're better off apart, with all that we know about each other. + 10 + 3 +
  • +
    +
    + + + WasMerged + +
  • + + This thought should like, never happen. + 3 +
  • +
  • + + It was surreal...I was merged with another person and left with the combined minds of two animals. I feel like we know each other better. + 3 +
  • +
  • + + I'm glad to be human again, yet I have to say the experience was enlightening. I feel closer to my meldmate than ever! + 8 +
  • +
  • + + It felt great to let out all that anger with another person! + 2 +
  • +
    +
    + + + WasMergedRelieved + + +
  • + + This thought should like, never happen. + 3 +
  • +
  • + + I was trapped as a beast in the same body as another! It was horribly uncomfortable to forget my humanity and I can't look them in the eyes for the things they made us do! + -8 +
  • +
  • + + I was trapped in the body of a beast with another person right next to me! I knew what they were thinking and they knew everything about me. I'm almost traumatised! + 15 +
  • +
  • + + I'm sorry! It was the other guy, I swear! + -4 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Thoughts_ExoticProduction.xml b/1.5/Defs/Thoughts/Thoughts_ExoticProduction.xml new file mode 100644 index 000000000..03c9580fb --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_ExoticProduction.xml @@ -0,0 +1,40 @@ + + + + + ExoticProduced + 0.2 + +
  • + + This is humiliating. + -10 +
  • +
    +
    + + + ExoticProducedBond + 0.2 + +
  • + + Buh...better... + +10 +
  • +
    +
    + + + ExoticProducedBroken + 0.2 + +
  • + + W...what did I... + -1 +
  • +
    +
    + +
    diff --git a/1.5/Defs/Thoughts/Thoughts_Food.xml b/1.5/Defs/Thoughts/Thoughts_Food.xml new file mode 100644 index 000000000..d028dfb9e --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_Food.xml @@ -0,0 +1,83 @@ + + + MorphAteAnimalMeatDirect + true + 0.7 + Things/Mote/ThoughtSymbol/Food + +
  • Cannibal
  • +
    + +
  • + + I ate the raw flesh of an animal that I look a lot like I do now... + -5 +
  • +
    +
    + + + MorphAteAnimalMeatAsIngredient + true + 0.7 + Things/Mote/ThoughtSymbol/Food + +
  • Cannibal
  • +
    + +
  • + + I ate meat from an animal that looked a lot like I do now... + -3 +
  • +
    +
    + + + WargMorphAteCorpse + Things/Mote/ThoughtSymbol/Food + true + 0.5 + +
  • + + I gave in to my beastly thoughts and ate the raw corpse of a fresh kill. Eugh. + -6 +
  • +
    +
    + + + AteChaoMeatDirect + Things/Mote/ThoughtSymbol/Food + true + 0.5 + +
  • Cannibal
  • +
    + +
  • + + It's slimy, raw meat...and didn't these things used to be human?! + -5 +
  • +
    +
    + + + AteChaoMeatAsIngredient + Things/Mote/ThoughtSymbol/Food + true + 0.3 + +
  • Cannibal
  • +
    + +
  • + + It tastes alright, but didn't these things used to be human?! + -2 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Thoughts_MorphGroups.xml b/1.5/Defs/Thoughts/Thoughts_MorphGroups.xml new file mode 100644 index 000000000..54d871f7f --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_MorphGroups.xml @@ -0,0 +1,5 @@ + + + Pawnmorph.Thoughts.Worker_HasAspect + + \ No newline at end of file diff --git a/1.5/Defs/Thoughts/Thoughts_MutationAffinity.xml b/1.5/Defs/Thoughts/Thoughts_MutationAffinity.xml new file mode 100644 index 000000000..c5399b832 --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_MutationAffinity.xml @@ -0,0 +1,59 @@ + + + FurryNoMutations + Pawnmorph.Thoughts.Worker_MorphFrustrated + true + +
  • MutationAffinity
  • +
    + +
  • + + The human genome is so simple, and I could be so much more. + -4 +
  • +
    +
    + + + + FurryMutationThoughtsHappy + Pawnmorph.Thoughts.Worker_HasMutations + true + +
  • MutationAffinity
  • +
    + +
  • + + Oh man, it's happening! + 4 +
  • +
  • + + I'm already looking great, can't wait for more! + 7 +
  • +
  • + + This is so cool. My dream is coming true! + 9 +
  • +
  • + + From my head to my toes, I can feel the changes all over. This is incredible! + 11 +
  • +
  • + + I'm a beastly freak... and I love it! + 12 +
  • +
  • + + I knew life was better on the wild side. This is the best thing ever! + 13 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/Thoughts_Production.xml b/1.5/Defs/Thoughts/Thoughts_Production.xml new file mode 100644 index 000000000..f73960f09 --- /dev/null +++ b/1.5/Defs/Thoughts/Thoughts_Production.xml @@ -0,0 +1,197 @@ + + + ProductiveBliss + 0.2 + +
  • + + Can't think...feeling so good... + +50 +
  • +
    +
    + + + + LaidEgg + 0.2 + +
  • + + This is humiliating...and it doesn't feel like it'll be the last. + -10 +
  • +
    +
    + + + LaidEggMale + 0.2 + +
  • + + This is humiliating...how does this even work? + -20 +
  • +
    +
    + + + LaidEggBond + 0.2 + +
  • + + Egg...! Bok bwark! + +10 +
  • +
    +
    + + + LaidEggBroken + 0.2 + +
  • + + B..bok...egg...gh..bwark... + -1 +
  • +
    +
    + + + + MilkedMyself + 1 + +
  • + + I'm so embarrased. + -10 +
  • +
    +
    + + MilkedMyselfMale + 1 + +
  • + + For the love of...not milk! + -20 +
  • +
    +
    + + + MilkedMyselfBond + 0.2 + +
  • + + Mmmmooooooo! + +10 +
  • +
    +
    + + + MilkedMyselfBroken + 0.2 + +
  • + + Mm..mooo...mmilk...? + -1 +
  • +
    +
    + + + + ChemMilkedMyself + 1 + +
  • + + This is disgusting. + -10 +
  • +
    +
    + + + ChemMilkedMyselfBond + 0.2 + +
  • + + Boom! + +10 +
  • +
    +
    + + + ChemMilkedMyselfBroken + 0.2 + +
  • + + B...boom...b..oom? + -1 +
  • +
    +
    + + + + ShavedMyself + 1 + +
  • + + That was a lot of hair. I hope this ends soon. + -5 +
  • +
    +
    + + + ShavedMyselfBond + 1 + +
  • + + It's weird, but it feels kinda good to shave all that wool off. + 5 +
  • +
    +
    + + + ShavedMyselfBroken + 1 + +
  • + + This will end, right? + -1 +
  • +
    +
    + + + + FoundTruffles + 0.5 + +
  • + + I managed to find some food while sniffing around in the dirt. Kinda dirty, but tasty. + 5 +
  • +
    +
    +
    diff --git a/1.5/Defs/Thoughts/VeneratedAnimal.xml b/1.5/Defs/Thoughts/VeneratedAnimal.xml new file mode 100644 index 000000000..6817c9000 --- /dev/null +++ b/1.5/Defs/Thoughts/VeneratedAnimal.xml @@ -0,0 +1,187 @@ + + + Pawnmorph.Thoughts.Worker_IsVeneratedAnimal + + + + + Pawnmorph.Thoughts.Precept.Worker_VeneratedFormerHuman + Pawnmorph.Thoughts.Precept.Thought_Precept_VeneratedFormerHuman + + + + FH_PersistentThoughtVeneratedAnimal + +
  • BodyPurist
  • +
  • MutationAffinity
  • +
    + +
  • + + A bit extreme, but at least I feel safe like this around my fellow ideoligion members. + 2 +
  • +
  • + + Everyone likes me, they really like me! Not sure why I should care about being like this... + 5 +
  • +
  • + + This is good...right, yes... + 10 +
  • +
  • + + I like the attention... + 15 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + FH_PersistentThoughtMAVeneratedAnimal + +
  • MutationAffinity
  • +
    + +
  • + + Look at me, I am venerated now. + 5 +
  • +
  • + + More patting, yes. It just feels right. + 8 +
  • +
  • + + I love the attention... + 10 +
  • +
  • + + What is...worship...? + 6 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + true + +
  • + PrimalWish +
  • + + +
    +
    + + + FH_PersistentThoughtBPVeneratedAnimal + +
  • BodyPurist
  • +
    + +
  • + + Venerate me all you want you twisted weirdos, I just want to be human again. + -10 +
  • +
  • + + Ugh, I can hear the whispered thoughts of instinct nibbling at my brain. And stop patting me! + -15 +
  • +
  • + + Ghh...I'm human...I'm human...leave me alone... + -10 +
  • +
  • + + I'm hu...man...I think...no...wrong... + -5 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    +
    + + + FH_PersistentThoughtPWVeneratedAnimal + +
  • + + I am your god now, and I want nothing less than the respect I deserve. + 30 +
  • +
  • + + I am your god, so give me pats and treats. + 30 +
  • +
  • + + I'm ok...with this life... + 30 +
  • +
  • + + I can finally...relax and...enjoy life... + 30 +
  • +
  • + + ...food? +
  • +
  • + + Food! +
  • +
    + +
  • + +
  • + PrimalWish +
  • + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Defs/ToolCapacityDefs.xml b/1.5/Defs/ToolCapacityDefs.xml new file mode 100644 index 000000000..86faa06e3 --- /dev/null +++ b/1.5/Defs/ToolCapacityDefs.xml @@ -0,0 +1,16 @@ + + + MutagenicCut + + + MutagenicStab + + + + MutagenicPoke + + + + MutagenicStun + + \ No newline at end of file diff --git a/1.5/Defs/Traits/HybridTraits.xml b/1.5/Defs/Traits/HybridTraits.xml new file mode 100644 index 000000000..7ffb85999 --- /dev/null +++ b/1.5/Defs/Traits/HybridTraits.xml @@ -0,0 +1,22 @@ + + + NaturalHunter + 0.01 + +
  • + + {PAWN_nameDef} is now a natural hunter. + +
  • + Shooting + 1 +
  • +
  • + Animals + 1 +
  • + + +
    +
    +
    diff --git a/1.5/Defs/Traits/MutationTraits.xml b/1.5/Defs/Traits/MutationTraits.xml new file mode 100644 index 000000000..7158bc550 --- /dev/null +++ b/1.5/Defs/Traits/MutationTraits.xml @@ -0,0 +1,19 @@ + + + MutationAffinity + 0.9 + +
  • + + {PAWN_nameDef} is intrigued by the idea of becoming something other than human. +
  • +
    + +
  • Transhumanist
  • +
  • BodyPurist
  • +
    + +
  • + + + diff --git a/1.5/Defs/Traits/Prideful(MaybeUnused).xml b/1.5/Defs/Traits/Prideful(MaybeUnused).xml new file mode 100644 index 000000000..251da0c46 --- /dev/null +++ b/1.5/Defs/Traits/Prideful(MaybeUnused).xml @@ -0,0 +1,13 @@ + + + PM_PridefulTrait + 0 + +
  • + + [PAWN_nameDef]'s sees [PAWN_objective]self as the natural leader of [PAWN_possessive] pride and as a consequence looks down on others and is easily offended. + 4 +
  • + +
    +
    \ No newline at end of file diff --git a/1.5/Defs/UpdateFeatures.xml.hidden b/1.5/Defs/UpdateFeatures.xml.hidden new file mode 100644 index 000000000..150849e66 --- /dev/null +++ b/1.5/Defs/UpdateFeatures.xml.hidden @@ -0,0 +1,19 @@ + + + Pawnmorpher + Pawnmorpher + https://discord.gg/BK2S5tQ + + + Pawnmorpher_1_6_0 + 1.6.0 + |img:UI/SapientUpdate|Pawnmorpher has a Discord server! Click 'Link' at the top to join. Get an early look at new features only from here!|<b>WHAT'S NEW?</b>|- Revamped <b>Sapient Animal System</b>. Former humans now have intelligence ranging from feral to sapient. Anything but feral is draftable, has mood and has needs. Keep sapient animals happy to prevent them from having mental breaks which will push them towards feral. Sapient animals can do work, interact with pawns, play chess and the like. Mental breaks (and feral pills) will reduce their sapience -- so keep them happy!|- Added <b>Free Morph Enclaves</b>, a neutral faction populated entirely by morphs.|- Added <b>7 new aspects</b> which can be encountered randomly from mutations. Discover all their wondrous effects!|- Revamped <b>mutagenic weapons</b>. We added some melee weapons, a rocket launcher, as well as the Mutarifle which does a small amount of damage but inflicts mutagenic buildup. Mutagenic grenades and mortar shells will now add mutagenic buildup, and on a direct hit might sometimes instantly transform a victim.|- Added <b>morphsilk</b>, a fabric that's better than regular cloth for clothing, but also increases the rate at which pawns gain mutations if worn. Does not give mutations by itself.|- Added extra stages for some parts that need them, paws will start at 'clawed' for hands etc.|- Added 'Dry' pills so pawns won't produce resources (so Etherbond/broken can be avoided)|- Added 'X-Asepct' pills to remove Etherbond/Broken and any other aspects a pawn may have -- note that this also removes any production boosts.|- Added Sheepmorphs if you have the Livestock module of Vanilla Animals Extended. Additional morphs will be rolled out.|- Changed resurrector made at the drug lab to a 'reincarnation' serum.|- Added Chaobulbs, a plant which can be found growing next to mutanite, or around crashed mutagenic ship parts. Allows for tribal acquisition of mutations, and can be refined into slurry.|- Added the Chaoboar. If sapient, it can do useful types of work.|+ Other various tweaks and bug fixes.|Once again, thanks to everyone who's using Pawnmorpher! Come and join us on the Discord server and show us what you got! + + + + Pawnmorpher_1_5_0 + 1.5.0 + |img:UI/AspectUpdate|Pawnmorpher now has a Discord server! Click 'Link' at the top to join.|<b>WHAT'S NEW?</b>| - Added <b>iTab</b> for mutations, which tracks morph influences, production and 'aspects'. Shows up when a pawn gains a mutation.| - Added <b>log entries</b> for mutations, viewable from the mutation tab.| - Added <b>aspects system</b>, a mix between hediffs and traits so we don't clutter the health tab. Viewable from the tab.| - Added a <b>new trait</b> called 'mutation affinity'. Like transhumanist, but for mutations. Also, Body Purists hate being or seeing mutants now.| - Factions <b>will care</b> if you mutate their people!| - Fur/feather/hide mutations now spread to other parts. |Mech healer serum now also mutates parts it heals.|+ Other various tweaks and bug fixes.|Thank you all for playing and enjoying Pawnmorpher! We'd love to see your unethical madness over on our Discord. :) + + + \ No newline at end of file diff --git a/1.5/Defs/WorkGiverDefs/WorkGiversMachineOperation.xml b/1.5/Defs/WorkGiverDefs/WorkGiversMachineOperation.xml new file mode 100644 index 000000000..146ba6bd2 --- /dev/null +++ b/1.5/Defs/WorkGiverDefs/WorkGiversMachineOperation.xml @@ -0,0 +1,47 @@ + + + PM_OperateMutationSequencer + + Pawnmorph.Work.Giver_WorkAtSequencer + Research + 50 + sequencing + sequencing at + PM_MutationScanner + +
  • Manipulation
  • +
    +
    + + PM_DeliverSpecialThingsToWaitingChamber + + Pawnmorph.Work.Giver_DeliverSpecialThingsToChambers + Hauling + refuel + refueling + 140 + +
  • Manipulation
  • +
    + true +
    + + DoBillsProduceSyringes + + WorkGiver_DoBill + Crafting + +
  • Intellectual
  • +
    + 95 + +
  • PM_InjectorLab
  • +
    + produce syringe + producing syringe at + +
  • Manipulation
  • +
    + true +
    +
    \ No newline at end of file diff --git a/1.5/Defs/WorkGiverDefs/WorkGiversPawnInteraction.xml b/1.5/Defs/WorkGiverDefs/WorkGiversPawnInteraction.xml new file mode 100644 index 000000000..c8d4c1031 --- /dev/null +++ b/1.5/Defs/WorkGiverDefs/WorkGiversPawnInteraction.xml @@ -0,0 +1,29 @@ + + + RecruitSapientFormerHuman + + Pawnmorph.Work.Giver_RecruitSapientAnimal + Warden + recruit + recruiting + 80 + Fieldwork + +
  • Talking
  • +
  • Manipulation
  • +
    +
    + + PM_TransformPrisoner + + Pawnmorph.Work.Giver_TransformPrisoner + Warden + transform + transforming + 100 + +
  • Manipulation
  • +
    + ReleasePrisoner +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml b/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml new file mode 100644 index 000000000..b6543be61 --- /dev/null +++ b/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml @@ -0,0 +1,68 @@ + + + + + Defs/ThingDef[@Name="PMChaocreatureBase"]/recipes + + Defs/ThingDef[@Name="PMChaocreatureBase" or + @ParentName="PMChaocreatureBase" or + @ParentName="PMChaomorphBase" or + @ParentName="PMSpecialChaomorphBase" or + @ParentName="PMChaomeldBase"] + + + + + + + + + +
  • + Defs/ThingDef[@Name="PMChaocreatureBase"]/recipes + +
  • InstallBionicAnimalStomach
  • +
  • InstallBionicAnimalKidney
  • +
  • InstallBionicAnimalLiver
  • +
  • InstallBionicAnimalLung
  • +
  • InstallBionicAnimalHeart
  • +
  • InstallAnimalBrainStimulator
  • +
  • InstallSpineAnimalBionic
  • +
  • InstallSpineAnimalSimple
  • +
  • InstallJawAnimalBionic
  • +
  • InstallJawAnimalSimple
  • +
  • InstallNoseAnimalSimple
  • +
  • InstallBionicEyeAnimal
  • +
  • InstallEarAnimalSimple
  • +
  • InstallEarAnimalBionic
  • +
  • InstallPegLegAnimal
  • +
  • InstallSimpleProstheticLegAnimal
  • +
  • InstallBionicLegAnimal
  • + + + +
  • + Defs/ThingDef[defName="Chaodino"]/recipes + +
  • InstallSimpleProstheticTailAnimal
  • + + + +
  • + Defs/ThingDef[defName="Chaoboar" + or defName="Chaodino"]/recipes + +
  • InstallSimpleProstheticArmAnimal
  • +
  • InstallBionicArmAnimal
  • + + + +
  • + Defs/HediffDef[@Name="addedPartAnimal"] + + true + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml b/1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml new file mode 100644 index 000000000..bf7987307 --- /dev/null +++ b/1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml @@ -0,0 +1,75 @@ + + + + + Ammo_40x46mmGrenade_Mutagenic + + + Things/Ammo/GrenadeLauncher/Mutagenic + Graphic_StackCount + + + 2.16 + + GrenadeMutagenic + 0 + Bullet_40x46mmGrenade_Mutagenic + + + + Bullet_40x46mmGrenade_Mutagenic + + + 2 + MutagenCloud + Gas_Mutagen + 1 + PM_Filth_Slurry + 0.8 + + + + + MakeAmmo_40x46mmGrenade_Mutagenic + + Craft 100 40x46mm mutagenic grenades. + Making 40x46mm mutagenic grenades. + +
  • + + +
  • Steel
  • + + + 50 + +
  • + + +
  • MechaniteSlurry
  • + + + 3 + +
  • + + +
  • ComponentIndustrial
  • + + + 2 + +
    + + +
  • Steel
  • +
  • MechaniteSlurry
  • +
  • ComponentIndustrial
  • +
    +
    + + 100 + + 7400 +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml b/1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml new file mode 100644 index 000000000..e960cc36c --- /dev/null +++ b/1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml @@ -0,0 +1,107 @@ + + + + + + PM_AmmoSet_MutagenCapsule + + + PM_Bullet_68Mutagen_Ball + + + + + PM_Ammo_68Mutagen_Ball + + Small capsules that contain jellied mutanite surrounded by a thin membrane that bursts on impact, intended for use in low pressure airguns. + + 0.003 + 0.02 + 0.28 + + +
  • CE_AutoEnableTrade
  • +
  • CE_AutoEnableCrafting_DrugLab
  • +
    + +
  • AmmoAdvanced
  • +
    + + Things/Ammo/LowPressureMCapsule/Ball + Graphic_StackCount + + PM_Mutagenic + + Processed, Fluid + NeverForNutrition + Meal_Eat + 0 + +
  • + MutagenicBuildup_Weapon + 0.2 +
  • +
    +
    + +
  • + 3 + MutagenCloud_Tiny + 0.5 + true +
  • +
    + false +
    + + + PM_Bullet_68Mutagen_Ball + + + Things/Projectiles/MutagenBullet_Small + Graphic_Single + + + MutagenicBulletDamage + 28 + 5 + 0 + 0.56 + + + + + MakePM_Ammo_68Mutagen_Ball + + Craft 500 .68 mutagel balls. + Making .68 mutagel balls. + 3600 + +
  • + + +
  • Mutanite
  • + + + 5 + +
  • + + +
  • Neutroamine
  • + + + 10 + +
    + + +
  • Mutanite
  • +
  • Neutroamine
  • +
    +
    + + 500 + +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml b/1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml new file mode 100644 index 000000000..ac3cf3249 --- /dev/null +++ b/1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml @@ -0,0 +1,85 @@ + + + + + Ammo_Arrow_Mutanite + + + Things/Ammo/Neolithic/Arrow/Venom + Graphic_StackCount + + + 2.58 + + MutaniteArrow + 0 + + + + Projectile_Arrow_Mutanite + + + Things/Projectiles/MutagenArrow + Graphic_Single + + + MutagenicArrowDamage + 7 + 0.5 + 3.02 + 0.666 + Ammo_Arrow_Mutanite + + + + Projectile_StreamlinedArrow_Mutanite + + + Things/Projectiles/MutagenArrow + Graphic_Single + + + MutagenicArrowDamage + 9 + 1.0 + 5.9 + 0.6 + Ammo_Arrow_Mutanite + + + + + MakeAmmo_Arrow_Mutanite + + Craft 10 mutanite arrows. + Making mutanite arrows. + 300 + +
  • + + +
  • WoodLog
  • + + + 1 + +
  • + + +
  • Mutanite
  • + + + 2 + +
    + + +
  • WoodLog
  • +
  • Mutanite
  • +
    +
    + + 10 + +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml b/1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml new file mode 100644 index 000000000..40415ffa8 --- /dev/null +++ b/1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml @@ -0,0 +1,69 @@ + + + + + Ammo_GreatArrow_Mutanite + + + Things/Ammo/Neolithic/Arrow/Venom + Graphic_StackCount + + + 4.76 + + MutaniteArrow + 0 + + + + Projectile_GreatArrow_Mutanite + + + Things/Projectiles/MutagenArrow + Graphic_Single + + + MutagenicArrowDamage + 10 + 3.18 + 2 + 0.6 + Ammo_GreatArrow_Mutanite + + + + + MakeAmmo_GreatArrow_Mutanite + + Craft 10 mutanite great arrows. + Making mutanite great arrows. + 400 + +
  • + + +
  • WoodLog
  • + + + 2 + +
  • + + +
  • Mutanite
  • + + + 2 + +
    + + +
  • WoodLog
  • +
  • Mutanite
  • +
    +
    + + 10 + +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml b/1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml new file mode 100644 index 000000000..79dcb5051 --- /dev/null +++ b/1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml @@ -0,0 +1,22 @@ + + + + PM_Mutagenic + + mutagen + Mutates organic targets on contact. + + + GrenadeMutagenic + + mutagen + Filled with a chaotic mix of DNA and mechanites that aerosolizes on impact. The mist can mutate any organics caught in it. + + + MutaniteArrow + + mutanite + The arrow head is made from mutanite which mutates the victim. + true + + \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml new file mode 100644 index 000000000..270c3128d --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml @@ -0,0 +1,1216 @@ + + + + Always + + + +
  • + Defs/ThingDef[@Name="PMChaomorphBase"]/race/baseBodySize + + 2.1 + +
  • +
  • + Defs/ThingDef[@Name="PMChaomeldBase"]/race/baseBodySize + + 2.15 + +
  • + +
  • + Defs/ThingDef[defName="Chaoboar"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="Chaoboar"]/statBases + + 0.16 + 0.09 + 0.07 + +
  • +
  • + Defs/ThingDef[defName="Chaoboar"]/tools + + +
  • + + +
  • Stab
  • + + 26 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Blunt
  • + + 8 + 1.85 + HeadAttackTool + 0.2 + 1 + +
  • + + +
  • Cut
  • + + 25 + 2 + TuskAttackTool + 0.208 + 1.5 + +
  • + + +
  • Stab
  • + + 22 + 1.89 + 0.65 + TuskAttackTool_2 + 0.39 + 2.940 + +
  • + + +
  • Blunt
  • + + 4 + 1.26 + LeftHand + 2.250 + +
  • + + +
  • Blunt
  • + + 4 + 1.26 + RightHand + 2.250 + + + + + +
  • + Defs/ThingDef[defName="Chaoboom"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="Chaoboom"]/statBases + + 0.04 + 0.11 + 0.18 + +
  • +
  • + Defs/ThingDef[defName="Chaoboom"]/comps + +
  • + CombatExtended.CompShearableRenameable + Secretion level + 10 + 18 + FSX +
  • + + +
  • + Defs/ThingDef[defName="Chaoboom"] + + + 21 + + +
  • +
  • + Defs/ThingDef[defName="Chaoboom"]/tools + + +
  • + +
  • Bite
  • + + 13 + 1.65 + 0.6 + Teeth + 0.203 + 0.6 + +
  • + + +
  • Stab
  • + + 20 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Blunt
  • + + 11 + 1.65 + 0.2 + HeadAttackTool + 6 + +
  • + + +
  • Blunt
  • + + 9 + 1.2 + 2.250 + FrontLeftLeg + +
  • + + +
  • Blunt
  • + + 9 + 1.2 + 2.250 + FrontRightLeg + + + + + +
  • + Defs/ThingDef[defName="Chaocow"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="Chaocow"]/race/baseHealthScale + + 2.3 + +
  • +
  • + Defs/ThingDef[defName="Chaocow"]/statBases + + 0.09 + 0.38 + 0.27 + 0.43 + 0.15 + +
  • +
  • + Defs/ThingDef[defName="Chaocow"]/tools + + +
  • + +
  • Bite
  • + + 13 + 1.65 + 0.6 + Teeth + 0.203 + 0.6 + +
  • + + +
  • Stab
  • + + 20 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Cut
  • + + 25 + 2 + TuskAttackTool + 0.208 + 1.5 + +
  • + + +
  • Stab
  • + + 22 + 1.89 + 0.65 + TuskAttackTool_2 + 0.39 + 2.940 + +
  • + + +
  • Blunt
  • + + 11 + 1.65 + 0.2 + HeadAttackTool + 6 + +
  • + + +
  • Scratch
  • + + 18 + 1.65 + FrontLeftPaw + + +
  • + Stun + 20 +
  • +
    +
    + 0.178 + 0.423 + +
  • + + +
  • Scratch
  • + + 18 + 1.65 + FrontRightPaw + + +
  • + Stun + 20 +
  • +
    +
    + 0.178 + 0.423 + + + + + +
  • + Defs/ThingDef[defName="Chaofox"]/statBases/MoveSpeed + + 7.9 + + +
  • +
  • + Defs/ThingDef[defName="Chaofox"]/statBases + + 0.18 + 0.63 + 0.23 + +
  • +
  • + Defs/ThingDef[defName="Chaofox"]/tools + + +
  • + +
  • Bite
  • + + 10 + 1.65 + Teeth + + +
  • + Stun + 20 +
  • +
    +
    + 1.440 + 0.203 + +
  • + + +
  • Blunt
  • + + 8 + 1.45 + HeadAttackTool + 0.2 + 0.250 + +
  • + + +
  • Scratch
  • + + 8 + 1.65 + FrontLeftPaw + + +
  • + Stun + 20 +
  • +
    +
    + 0.267 + 0.178 + +
  • + + +
  • Scratch
  • + + 8 + 1.65 + FrontRightPaw + + +
  • + Stun + 20 +
  • +
    +
    + 0.267 + 0.178 + + + + +
  • + Defs/ThingDef[defName="Chaofox"] + +
  • + Quadruped +
  • + + + +
  • + Defs/ThingDef[defName="Chaodino"]/statBases/MoveSpeed + + 12.9 + + +
  • +
  • + Defs/ThingDef[defName="Chaodino"] + +
  • + Birdlike +
  • + + +
  • + Defs/ThingDef[defName="Chaodino"]/statBases + + 0.23 + 2.07 + 0.28 + +
  • +
  • + Defs/ThingDef[defName="Chaodino"]/statBases/ArmorRating_Blunt + + 1 + +
  • +
  • + Defs/ThingDef[defName="Chaodino"]/statBases/ArmorRating_Sharp + + 0.25 + +
  • +
  • + Defs/ThingDef[defName="Chaodino"]/tools + + +
  • + +
  • Bite
  • + + 19.2 + 1.93 + Beak + + +
  • + Stun + 14 +
  • +
    +
    + 0.6 + 0.213 + 1.250 + +
  • + + +
  • Blunt
  • + + 8 + 1.85 + HeadAttackTool + 0.2 + 1 + +
  • + + +
  • Scratch
  • + + 18 + 0.5 + FrontLeftPaw + + +
  • + Stun + 20 +
  • +
    +
    + 0.225 + 0.4 + +
  • + + +
  • Scratch
  • + + 18 + 0.5 + FrontRightPaw + + +
  • + Stun + 20 +
  • +
    +
    + 0.225 + 0.4 + + + + + +
  • + Defs/ThingDef[defName="ChaomeldDog"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="ChaomeldDog"]/statBases + + 0.09 + 0.47 + 0.28 + +
  • +
  • + Defs/ThingDef[defName="ChaomeldDog"]/tools + + +
  • + +
  • Bite
  • + + 19.2 + 1.65 + 0.7 + Teeth + 1.440 + 0.213 + +
  • + +
  • Bite
  • + + 10 + 1.65 + Teeth + 0.7 + + +
  • + Stun + 20 +
  • +
    +
    + 1.440 + 0.203 + +
  • + + +
  • Blunt
  • + + 8 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Blunt
  • + + 10 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Stab
  • + + 20 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Blunt
  • + + 24 + 1.65 + HornAttackTool_2 + 0.221 + + + + + +
  • + Defs/ThingDef[defName="ChaomeldDragon"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="ChaomeldDragon"]/statBases + + 0.09 + 0.47 + 0.28 + +
  • +
  • + Defs/ThingDef[defName="ChaomeldDragon"]/statBases/ArmorRating_Sharp + + 0.2 + +
  • +
  • + Defs/ThingDef[defName="ChaomeldDragon"]/statBases/ArmorRating_Blunt + + 1 + +
  • +
  • + Defs/ThingDef[defName="ChaomeldDragon"]/tools + + +
  • + +
  • Bite
  • + + 19.2 + 1.65 + Teeth + 0.7 + 1.440 + 0.203 + +
  • + +
  • Bite
  • + + 10 + 1.65 + Teeth + 0.7 + 0.203 + 1.440 + +
  • + + +
  • Blunt
  • + + 8 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Blunt
  • + + 10 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • DragonBreath
  • + + 23.4 + 0.1 + HeadAttackTool + true + 0.2 + 0 + +
  • + + +
  • DragonBreath
  • + + 23.4 + 0.1 + HeadAttackTool + true + 0.2 + 0 + +
  • + + +
  • Stab
  • + + 20 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Poke
  • + + 24 + 1.65 + HornAttackTool_2 + 0.1 + 0.221 + + + + + +
  • + Defs/ThingDef[defName="ChaomeldCow"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="ChaomeldCow"]/statBases + + 0.09 + 0.38 + 0.27 + +
  • +
  • + Defs/ThingDef[defName="ChaomeldCow"]/tools + + +
  • + +
  • Bite
  • + + 19.2 + 1.65 + Teeth + 0.7 + 1.440 + 0.203 + +
  • + +
  • Bite
  • + + 10 + 1.65 + Teeth + 0.7 + 0.203 + 1.440 + +
  • + + +
  • Blunt
  • + + 8 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Blunt
  • + + 10 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Stab
  • + + 20 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Poke
  • + + 24 + 1.65 + HornAttackTool_2 + 0.1 + 0.221 + + + + + +
  • + Defs/ThingDef[defName="ChaofusionRhino"] + +
  • + Birdlike +
  • + + +
  • + Defs/ThingDef[defName="ChaofusionRhino"]/statBases/ArmorRating_Blunt + + 1 + +
  • +
  • + Defs/ThingDef[defName="ChaofusionRhino"]/statBases/ArmorRating_Sharp + + 0.35 + +
  • +
  • + Defs/ThingDef[defName="ChaofusionRhino"]/race/baseHealthScale + + 5 + +
  • +
  • + Defs/ThingDef[defName="ChaofusionRhino"]/statBases + + 0.07 + 0.54 + 0.50 + +
  • +
  • + Defs/ThingDef[defName="ChaofusionRhino"]/tools + + +
  • + +
  • Bite
  • + + 19.2 + 1.65 + Teeth + 0.7 + 1.440 + 0.203 + +
  • + +
  • Bite
  • + + 10 + 1.65 + Teeth + 0.7 + 0.203 + 1.440 + +
  • + + +
  • Blunt
  • + + 8 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Blunt
  • + + 10 + 1.65 + HeadAttackTool + 0.2 + 0.125 + +
  • + + +
  • Stab
  • + + 26 + 1.65 + HornAttackTool + 0.341 + 6 + +
  • + + +
  • Poke
  • + + 30 + 1.65 + HornAttackTool_2 + 0.221 + 6 + +
  • + + +
  • Cut
  • + + 37 + 1.85 + HornAttackTool + 0.243 + 6 + +
  • + + +
  • Stab
  • + + 37 + 1.85 + 0.65 + HornAttackTool_2 + 0.457 + 6 + + + + + +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases + + 0.09 + 0.76 + 0.45 + 0.6 + +
  • +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases/ArmorRating_Blunt + + 25 + +
  • +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases/ArmorRating_Sharp + + 18 + +
  • +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases/ArmorRating_Heat + + 0.8 + +
  • +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"]/race/baseHealthScale + + 5 + +
  • +
  • + Defs/ThingDef[defName="PM_Chaothrumbo"]/tools + + +
  • + + +
  • Cut
  • + + 62 + 2.52 + HornAttackTool + 6 + 20 + +
  • + + +
  • Stab
  • + + 57 + 2.52 + 0.65 + HornAttackTool_2 + 16 + 12 + +
  • + + +
  • Scratch
  • + + 22 + 2.13 + FrontLeftLeg + 4.2 + 14.640 + +
  • + + +
  • Scratch
  • + + 22 + 2.13 + FrontRightLeg + 4.2 + 14.640 + +
  • + +
  • Bite
  • + + 19 + 1.62 + 0.7 + Teeth + 0.09 + 2.016 + +
  • + + +
  • Blunt
  • + + 11 + 2.52 + HeadAttackTool + 0.2 + 6 + + + + + +
  • + Defs/ThingDef[defName="EtherHellhound"] + +
  • + Quadruped +
  • + + +
  • + Defs/ThingDef[defName="EtherHellhound"]/statBases/MoveSpeed + + 7 + +
  • +
  • + Defs/ThingDef[defName="EtherHellhound"]/statBases + + 0.075 + 0.05 + 0.21 + 0.20 + 0.09 + +
  • +
  • + Defs/ThingDef[defName="EtherHellhound"]/tools + + +
  • + + +
  • Scratch
  • + + 11 + 1.19 + FrontLeftPaw + + +
  • + Stun + 20 +
  • +
    +
    + 2.250 + 0.75 + +
  • + + +
  • Scratch
  • + + 11 + 1.19 + FrontRightPaw + + +
  • + Stun + 20 +
  • +
    +
    + 2.250 + 0.75 + +
  • + + +
  • Bite
  • + + 24 + 1.46 + Teeth + + +
  • + Stun + 20 +
  • +
    +
    + 2 + 1.6 + 8.863 + +
  • + + +
  • Blunt
  • + + 4 + 3.2 + HeadAttackTool + 0.2 + 1.225 + + + + +
  • + Defs/ThingDef[defName="EtherHellhound"]/race/baseHealthScale + + 1.25 + +
  • +
  • + Defs/PawnKindDef[defName="EtherHellhound"]/combatPower + + 140 + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml new file mode 100644 index 000000000..e42c067b5 --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml @@ -0,0 +1,12 @@ + + + + Always + + +
  • + Defs/FactionDef[defName="Pirate"]/pawnGroupMakers/li/*/Muta_Grenadier_Smoke +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml new file mode 100644 index 000000000..da12672a5 --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml @@ -0,0 +1,1117 @@ + + + + Always + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="CapridHornPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Blunt
  • + + 10 + 2.13 + HeadAttackTool + 3.630 + true + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="CapridHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 0.5 + 10 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherSheepHorns"]/stages/li[key="paragon"]/verbOverrides + + +
  • + + 0.5 + 10 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="CervidHornPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Blunt
  • + + 8 + 1.66 + HeadAttackTool + 0.03 + 0.750 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="SmallCervidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 1 + 8 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="BigCervidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 13 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="BovidHornPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Stab
  • + + 18 + 2.0 + 0.65 + HeadAttackTool + 0.25 + 6 + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="DomesticatedBovidHornPart"]/stagePatches/li[stageKey="short"]/values/verbOverrides + + +
  • + + 0.5 + 14 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="DomesticatedBovidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 18 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="WildBovidHornPart"]/stagePatches/li[stageKey="short"]/values/verbOverrides + + +
  • + + 0.5 + 14 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="WildBovidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 27 + 3.2 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="WildBovidHornPart"]/stages/li[key="paragon"]/verbOverrides + + +
  • + + 27 + 3.2 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherHoofHand"]/comps + + Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherHoofHand"] + + + + +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherHoofHand"]/comps + +
  • + +
  • + + False + +
  • Blunt
  • + + 4 + 1.26 + 1.125 + true + +
  • + + False + +
  • Poke
  • + + 4 + 1.26 + 1.125 + true + + + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherSnakeJaw"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • ToxicBite
  • +
  • MutagenicStab
  • + + 4 + 1.11 + + +
  • + Stun + 21 +
  • +
    +
    + 0.25 + 1.2 + Teeth + true + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherSnakeJaw"]/stagePatches/li[stageKey="growing" or stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 4 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="TestudinidaeJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Bite
  • + + 8 + 2.23 + Teeth + 0.02 + 0.640 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="PawnmorphShell"]/stagePatches/li[stageKey="grown"]/values/statOffsets + + + 1.5 + 1 + + +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="PawnmorphShell"]/stages/li[key="paragon"]/statOffsets + + + 1.5 + 1 + + +
  • + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptileHandclaws"]/stagePatches/li[stageKey="readjusting" or stageKey="unfamiliar" or stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 4 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptileHandclaws"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Scratch
  • + + 4 + 1.5 + 0.03 + 0.5 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptillianClawFoot"]/stagePatches/li[stageKey="adapting"]/values/statOffsets/MeleeDodgeChance + + -0.3 + +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptillianClawFoot"]/stagePatches/li[stageKey="adapted"]/values/statOffsets/MeleeDodgeChance + + -0.075 + +
  • + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothTail"]/stagePatches/li[stageKey="grown"]/values/verbOverrides + + +
  • + + 1 + 10 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothTail"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Blunt
  • + + 10 + 2.78 + 2.6 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 19 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Scratch
  • + + 19 + 2 + 1.25 + 10 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMassiveFootClaw"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 24 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMassiveFootClaw"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Scratch
  • + + 24 + 2.34 + 1.25 + 10 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThrumboHorn"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 1 + 38 +
  • +
  • + + 1 + 34 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThrumboHorn"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Cut
  • + + 38 + 2.52 + 3 + 16 + true + +
  • + + +
  • Stab
  • + + 34 + 2.52 + 0.65 + 10 + 8 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="ElephantidaeJawPart"]/stagePatches/li[stageKey="adapted" or stageKey="paragon"]/values/statOffsets +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="ElephantidaeJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 1 + 32 +
  • +
  • + + 0.2 + 8 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="ElephantidaeJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Poke
  • + + 32 + 3.37 + 40.226 + true + +
  • + + +
  • Blunt
  • + + 8 + 3.69 + HeadAttackTool + 36 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/stagePatches/li[stageKey="adapted" or stageKey="paragon"]/values/statOffsets +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 24 +
  • +
  • + + 1 + 20 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/stagePatches/li[stageKey="paragon"]/values/verbOverrides + + +
  • + + 1 + 28 +
  • +
  • + + 1 + 24 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Poke
  • + + 24 + 2.67 + 16 + true + +
  • + + +
  • Blunt
  • + + 20 + 2.37 + 16 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherElephantHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/statOffsets/MeleeWeapon_AverageArmorPenetration +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherElephantHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Blunt
  • + + 8 + 1.5 + 10 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThickHideFoot"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 28 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThickHideFoot"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Blunt
  • + + 28 + 2.37 + 25.960 + true + + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="AvianJawPart"]/stagePatches/li[stageKey="growing"]/values/verbOverrides + + +
  • + + 1 + 2 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="AvianJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 1 + 4 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="AvianJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Bite
  • + + 4 + 1.97 + + +
  • + Stun + 14 +
  • +
    +
    + 0.01 + 0.480 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="RatiteJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 1 + 8 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherAvianFootBase"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Scratch
  • + + 6 + 1.42 + + +
  • + Stun + 14 +
  • +
    +
    + 0.1 + 0.480 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherLargeAvianFoot"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/statOffsets +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherLargeAvianFoot"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 9 +
  • + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="UrsineJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Bite
  • + + 28 + 2 + + +
  • + Stun + 21 +
  • +
    +
    + 0.5 + 1.25 + 9.5 + true + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="UrsineJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 0.5 + 28 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBearPawHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/statOffsets/MeleeHitChance +
  • +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBearPawHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 12 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBearPawHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Scratch
  • + + 12 + 1.3 + + +
  • + Stun + 21 +
  • +
    +
    + 0.3 + 5 + true + + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="CarnivoraJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Bite
  • + + 13 + 1.73 + Teeth + + +
  • + Stun + 20 +
  • +
    +
    + 0.55 + 4.225 + true + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="CarnivoraJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 0.5 + 13 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[@Name="ScavengerJawPart"]/stagePatches/li[stageKey="adapted" or stageKey="paragon"]/values/verbOverrides + + +
  • + + 1.46 + 22 +
  • + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="PM_HellhoundPaws"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Scratch
  • + + 11 + 1.19 + 2.250 + 0.75 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="PM_HellhoundHorns"]/stagePatches/li[stageKey="horns"]/values/verbOverrides + + +
  • + + 1 + 21 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="PM_HellhoundHorns"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + +
  • Stab
  • + + 21 + 2 + HeadAttackTool + 0.25 + 6 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherPawHand"]/stagePatches/li[stageKey="unfamiliar" or stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 6 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherPawHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Scratch
  • + + 6 + 0.8 + + +
  • + Stun + 20 +
  • +
    +
    + 0.07 + 0.450 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherFelineClaws"]/stagePatches/li[stageKey="unfamiliar" or stageKey="adapting" or stageKey="adapted"]/values/verbOverrides + + +
  • + + 1 + 6 +
  • + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherFelineClaws"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Scratch
  • + + 6 + 0.92 + + +
  • + Stun + 20 +
  • +
    +
    + 0.07 + 0.338 + true + + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherComboHornbill"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Bite
  • + + 8 + 1.97 + + +
  • + Stun + 14 +
  • +
    +
    + 0.01 + 0.480 + true + +
  • + + +
  • Stab
  • + + 10 + 2.13 + HeadAttackTool + 3.630 + true + + + + + +
  • + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherComboWolfSpike"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools + + +
  • + + False + +
  • Bite
  • + + 13 + 1.73 + Teeth + + +
  • + Stun + 20 +
  • +
    +
    + 0.55 + 4.225 + true + +
  • + + +
  • Stab
  • + + 10 + 2.13 + HeadAttackTool + 3.630 + true + + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml new file mode 100644 index 000000000..b3a732a2c --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml @@ -0,0 +1,445 @@ + + + + Always + + +
  • + Defs/PawnKindDef[defName="PMEnclaveVillager" or defName="PMEnclaveTown_Trader" or defName="PMEnclaveTown_Councilman"] + +
  • + + 1 + 2 + + +
  • + 0.5 + + 20 + 120 + + +
  • CE_Sidearm_Melee
  • + + + + + + +
  • + Defs/PawnKindDef[defName="PMEnclaveTown_Guard"] + +
  • + + 2 + 4 + + +
  • + 0.5 + + 20 + 120 + + +
  • CE_Sidearm_Melee
  • + + + + + + +
  • + Defs/PawnKindDef[defName="PMEnclaveMercenary/weaponMoney"] + + 415~550 + +
  • +
  • + Defs/PawnKindDef[defName="PMEnclaveMercenary"] + +
  • + + 3 + 5 + + + 200 + 600 + + +
  • OutlanderShield
  • + + 0.8 + +
  • + 1 + + 60 + 150 + + +
  • CE_Sidearm_Melee
  • + + +
  • + 0.5 + + 80 + 120 + + +
  • CE_Sidearm
  • + + +
  • + 0.075 + + 10 + 100 + + +
  • CE_FlareLauncher
  • + + + 1 + 3 + + +
    + + + +
  • + Defs/PawnKindDef[defName="PMEnclaveHeavyMercenary/weaponMoney"] + + 1200~1200 + +
  • +
  • + Defs/PawnKindDef[defName="PMEnclaveHeavyMercenary"]/weaponTags + + +
  • GunHeavy
  • +
  • GunSingleUse
  • + + + +
  • + Defs/PawnKindDef[defName="PMEnclaveHeavyMercenary"] + +
  • + + 1 + 4 + + + + 150 + 350 + + +
  • CE_SMG
  • + + + 0 + 1 + + + +
  • + 0.5 + + 60 + 150 + + +
  • CE_Sidearm_Melee
  • + + +
    + + + +
  • + /Defs/PawnKindDef[defName="PMEnclaveEliteMercenary"]/skills + + /Defs/PawnKindDef[defName="PMEnclaveEliteMercenary"] + + +
  • + Shooting + 6~14 +
  • + + + + +
  • + Defs/PawnKindDef[defName = "PMEnclaveEliteMercenary"]/weaponMoney + + + 850 + 1100 + + +
  • +
  • + /Defs/PawnKindDef[defName="PMEnclaveEliteMercenary"]/weaponTags + +
  • SpacerGun
  • + + +
  • + Defs/PawnKindDef[defName = "PMEnclaveEliteMercenary"] + +
  • + + 3 + 5 + + + 1000 + 1600 + + +
  • OutlanderShield
  • + + 0.9 + +
  • + + 400 + 800 + + +
  • CE_Sidearm_Melee
  • + + +
    + + + + + +
  • + Defs/PawnKindDef[defName="Muta_Mercenary_Rocket"] + +
  • + + 1 + 4 + + + + 150 + 350 + + +
  • CE_SMG
  • + + + 0 + 1 + + + +
  • + 0.5 + + 60 + 150 + + +
  • CE_Sidearm_Melee
  • + + +
    + + + + +
  • + Defs/PawnKindDef[defName="Muta_Grenadier_Mutagenic" or defName="Muta_Grenadier_EMP"] + +
  • + + 10 + 30 + + + + 100 + 250 + + +
  • CE_Sidearm
  • + + + 2 + 5 + + + + + +
  • + Defs/PawnKindDef[defName="Muta_Grenadier_Destructive"] + +
  • + + 10 + 30 + + + 200 + 600 + + +
  • OutlanderShield
  • + + 0.5 + + + 150 + 350 + + +
  • CE_Sidearm_Melee
  • +
    +
    + + + +
  • + Defs/PawnKindDef[defName="Muta_Grenadier_EMP"]/label + + + +
  • +
  • + Defs/PawnKindDef[defName="Muta_Grenadier_EMP"]/weaponTags + +
  • CE_GrenadeFlashbang
  • +
  • GrenadeSmoke
  • +
  • GrenadeDestructive
  • + + +
  • + Defs/PawnKindDef[defName="Muta_Grenadier_EMP"]/combatPower + + 85 + +
  • + +
  • + Defs/PawnKindDef[defName="Muta_Mercenary_Gunner"]/weaponMoney + + 250~350 + +
  • +
  • + Defs/PawnKindDef[defName="Muta_Mercenary_Gunner" or defName="Muta_Mercenary_Mutagunner"] + +
  • + + 2 + 4 + + + 200 + 600 + + +
  • OutlanderShield
  • + + 0.8 + +
  • + 0.5 + + 20 + 120 + + +
  • CE_Sidearm_Melee
  • + + +
  • + 0.075 + + 10 + 100 + + +
  • CE_FlareLauncher
  • + + + 1 + 3 + + +
    + + + + +
  • + Defs/PawnKindDef[defName="Muta_Mercenary_Sniper"] + + 415~550 + +
  • +
  • + Defs/PawnKindDef[defName="Muta_Mercenary_Sniper"] + +
  • + + 3 + 5 + + +
  • + 1 + + 60 + 150 + + +
  • CE_Sidearm_Melee
  • + + +
  • + 0.5 + + 80 + 120 + + +
  • CE_Sidearm
  • + + + + + + + +
  • + Defs/PawnKindDef[defName = "Muta_Mercenary_Slasher" or defName="Muta_Mercenary_Mutaslasher"] + +
  • + + 500 + 1400 + + +
  • OutlanderShield
  • + + 0.9 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml new file mode 100644 index 000000000..e0cb9c207 --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml @@ -0,0 +1,61 @@ + + + + Always + + +
  • + Defs/ThingDef[defName="SnakeMorph"]/tools + + +
  • + + +
  • Blunt
  • + + 1 + 1.26 + LeftHand + 0.5 + +
  • + + +
  • Blunt
  • + + 1 + 1.26 + RightHand + 0.5 + +
  • + + +
  • Bite
  • + + 1 + 2 + Teeth + 0.07 + Pawn_Melee_HumanBite_Hit + Pawn_Melee_HumanBite_Miss + 0.15 + 1.0 + +
  • + + +
  • Blunt
  • + + 2 + 4.49 + HeadAttackTool + 0.2 + 0.625 + + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml new file mode 100644 index 000000000..5c9a4bf58 --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml @@ -0,0 +1,58 @@ + + + + Always + + +
  • + Defs/ThingDef[defName="Mutanite"]/statBases + + 0.03 + +
  • +
  • + Defs/ThingDef[defName="Mutanite"]/statBases/StuffPower_Armor_Sharp + + 1 + +
  • +
  • + Defs/ThingDef[defName="Mutanite"]/statBases/StuffPower_Armor_Blunt + + 1.5 + +
  • +
  • + Defs/ThingDef[defName="Mutanite"]/statBases/StuffPower_Armor_Heat + + 0 + +
  • + +
  • + Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases/StuffPower_Armor_Sharp + + 0.012 + +
  • +
  • + Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases/StuffPower_Armor_Blunt + + 0.015 + +
  • +
  • + Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases/StuffPower_Armor_Heat + + 0.048 + +
  • +
  • + Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases + + 0.05 + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml new file mode 100644 index 000000000..f48125d32 --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml @@ -0,0 +1,29 @@ + + + + Always + + +
  • + Defs/ScenarioDef[defName="Escaped Morphs"]/scenario/parts + +
  • + StartingThing_Defined + Ammo_303British_FMJ + 100 +
  • +
  • + StartingThing_Defined + Ammo_44Magnum_FMJ + 60 +
  • +
  • + StartingThing_Defined + PM_Ammo_68Mutagen_Ball + 300 +
  • + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml new file mode 100644 index 000000000..2ee08ef19 --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml @@ -0,0 +1,267 @@ + + + + Always + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/stuffCategories + + +
  • Metallic_Weapon
  • + + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/stuffCategories +
  • +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/costStuffCount +
  • +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/costList + + 50 + +
  • + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/tools + + +
  • + + +
  • Poke
  • + + 1 + 1.26 + 0.250 + Handle + +
  • + + +
  • MutagenicCut
  • + + 10 + 1.18 + 0.36 + 0.32 + Blade + +
  • + + +
  • MutagenicStab
  • + + 11 + 1.2 + 1.33 + 0.25 + 0.42 + Point + + + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/statBases + + 1 + 0.15 + +
  • +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"] + + + 0.5 + 0.15 + 0.05 + + +
  • + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/weaponTags + +
  • CE_OneHandedWeapon
  • + + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteSpear"]/tools + + +
  • + + +
  • Blunt
  • + + 7 + 1.35 + 0.15 + 2.25 + Shaft + +
  • + + +
  • Poke
  • + + 4 + 1.78 + 0.05 + 1 + Point + +
  • + + +
  • MutagenicStab
  • + + 18 + 1.19 + 1.00 + 2.25 + 1.5 + Head + + + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteSpear"]/statBases + + 10 + 1.68 + +
  • +
  • + Defs/ThingDef[defName="MeleeWeapon_MutaniteSpear"] + + + 0.24 + 1.45 + 0.9 + + +
  • + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"] + ParentName + BaseMeleeWeapon +
  • +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"] + + +
  • MeleeBlunt
  • + + + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/tools + + +
  • + + +
  • Poke
  • + + 2 + 1.59 + 0.625 + Handle + +
  • + + +
  • MutagenicStun
  • + + 8 + 1.19 + 1.33 + 0 + Head + + + + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/statBases + + 3.5 + 0.24 + +
  • +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"] + + + 0.42 + 0.24 + 0.2 + + +
  • + +
  • + Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/weaponTags + +
  • CE_OneHandedWeapon
  • + + + +
  • + Defs/DamageDef[defName="MutagenicStun"]/hediff + + ElectricalBurn + +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"]/hediffSkin +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"]/hediffSolid +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"] + + false + false + +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"]/impactSoundType + + Electric + +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"]/armorCategory + + Electric + +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"]/deathMessage + + {0} has been electrocuted. + +
  • +
  • + Defs/DamageDef[defName="MutagenicStun"] + +
  • + true +
  • + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml new file mode 100644 index 000000000..b2b4a57ac --- /dev/null +++ b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml @@ -0,0 +1,642 @@ + + + + Always + + +
  • + Defs/DamageDef[defName="MutagenicBulletDamage"]/hediff + + Bruise + +
  • +
  • + Defs/DamageDef[defName="MutagenicBulletDamage"]/externalViolence + + false + false + +
  • +
  • + Defs/DamageDef[defName="MutagenicBulletDamage"]/armorCategory + + Blunt + +
  • +
  • + Defs/DamageDef[defName="MutagenicBulletDamage"]/overkillPctToDestroyPart + + 0.4~1.0 + +
  • +
  • + Defs/DamageDef[defName="MutagenicBulletDamage"] + +
  • + true +
  • + + +
  • + Defs/DamageDef[defName="MutagenicBulletDamage"]/modExtensions/li[@Class="Pawnmorph.Damage.MutagenicDamageExtension"]/severityPerDamage + + 0.01 + +
  • + + + +
  • + Defs + + + + + + + + + + + PM_Bullet_TaggingGun_Dart + EtherGun.Projectile_TaggingBullet + + + Things/Projectiles/GelCapsule + Graphic_Single + + + Bullet + 1 + 1.85 + 12.85 + 30 + + + + + + + +
  • + +
  • + Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_40x46mmGrenade"]/ammoTypes + + Bullet_40x46mmGrenade_Mutagenic + +
  • + +
  • + Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_Arrow"]/ammoTypes + + Projectile_Arrow_Mutanite + +
  • +
  • + Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_StreamlinedArrow"]/ammoTypes + + Projectile_StreamlinedArrow_Mutanite + +
  • +
  • + Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_GreatArrow"]/ammoTypes + + Projectile_GreatArrow_Mutanite + +
  • + +
  • + Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_81mmMortarShell"]/ammoTypes + + Bullet_81mmMortarShell_TF + +
  • +
  • + Defs + + + GrenadeMutagenic + + Filled with a chaotic mix of DNA and mechanites that aerosolizes on impact. The mist can mutate any organics caught in it. + + + + Shell_TF + + + Things/Ammo/Mortar/MutagenShell + Graphic_StackCount + + + 112.42 + 5.27 + 8.17 + + GrenadeMutagenic + + +
  • + 2.9 + MutagenCloud_Large + + ExtinguisherExplosion + PM_Filth_Slurry + 0.6 + True + 0.7 + + 30 + 60 + +
  • + + + + Bullet_81mmMortarShell_TF + + + Things/Projectiles/Mortar/MutagenShell + Graphic_Single + + + MutagenCloud_Large + 156 + 0 + 0 + true + 5.5 + Explosion_EMP + true + + + + MakeShell_TF + + Craft 5 81mm mutagenic mortar shells. + Making 81mm mutagenic mortar shells. + MutagenicWeapons + +
  • + + +
  • Steel
  • + + + 54 + +
  • + + +
  • MechaniteSlurry
  • + + + 10 + +
  • + + +
  • ComponentIndustrial
  • + + + 2 + +
    + + +
  • Steel
  • +
  • MechaniteSlurry
  • +
  • ComponentIndustrial
  • +
    +
    + + 5 + + 13800 +
    + + + + +
  • + Defs/ThingDef[defName="Mutabow"] +
  • + +
  • + Defs/ThingDef[defName="TST_Gun_TaggingGun"]/verbs/li[verbClass="Pawnmorph.Verbs.Tag"] +
  • +
  • + TST_Gun_TaggingGun + + 3 + 1.17 + 1.1 + 0.21 + 1.33 + 10.03 + + + 60 + 3 + 1 + + + Pawnmorph.Verbs.Tag + true + PM_Bullet_TaggingGun_Dart + 1.1 + 55 + Shot_ChargeRifle + GunTail_Light + + + + +
  • CE_AI_SR
  • + + false + +
  • + Defs/ThingDef[defName="TST_Gun_TaggingGun"]/label + + + +
  • +
  • + Defs/ThingDef[defName="TST_Gun_TaggingGun"]/graphicData/texPath + + Things/Item/Dartgun + +
  • +
  • + Defs/ThingDef[defName="TST_Gun_TaggingGun"] + +
  • + 1.34,1.34 + 0.12,-0.10 +
  • + + + +
  • + Mutarifle + + 2.15 + 0.35 + 1.00 + 0.14 + 0.94 + 4.2 + 24500 + + + 30 + 5 + + + 1.20 + CombatExtended.Verb_ShootCE + true + PM_Bullet_68Mutagen_Ball + 0.6 + 15 + 6 + 6 + Shot_Autopistol + GunTail_Light + 9 + + + 30 + 4 + PM_AmmoSet_MutagenCapsule + + + 3 + FALSE + Snapshot + + +
  • CE_SMG
  • +
  • CE_AI_BROOM
  • + + MutagenicWeapons + +
  • + Defs/ThingDef[defName="Mutarifle" or defName="TST_Gun_TaggingGun" or defName="TST_Gun_EtherGun"]/tools + + +
  • + + +
  • Blunt
  • + + 8 + 1.55 + 1.5 + 2.755 + Stock + +
  • + + +
  • Blunt
  • + + 5 + 2.02 + 1.630 + Barrel + +
  • + + +
  • Poke
  • + + 8 + 1.55 + 2.755 + Muzzle + + + + + +
  • + Defs/ThingDef[defName="Gun_MutagenicRocketLauncher"] + ParentName + BaseMakeableGun +
  • +
  • + Defs/ThingDef[defName="Gun_MutagenicRocketLauncher"]/statBases/MarketValue +
  • +
  • + Defs/ThingDef[defName="Gun_MutagenicRocketLauncher"]/tools + + +
  • + + +
  • Blunt
  • + + 10 + 2.44 + 3.5 + Barrel + + + + + +
  • + Defs/ThingDef[defName="Bullet_MutagenicRocket"]/thingClass + + CombatExtended.ProjectileCE_Explosive + +
  • +
  • + Defs/ThingDef[defName="Bullet_MutagenicRocket"]/projectile + + + MutagenCloud_Large + 8.5 + true + 12 + 3.0 + 2.0 + 100 + true + ExtinguisherExplosion + PM_Filth_Slurry + 0.4 + 2 + + +
  • + +
  • + Gun_MutagenicRocketLauncher + + 20.00 + 1.5 + 2.24 + 0.2 + 3.24 + 13.0 + 49500 + + + 125 + 8 + 5 + + + CombatExtended.Verb_ShootCEOneUse + true + Bullet_MutagenicRocket + 2.1 + 48 + 1 + InfernoCannon_Fire + GunTail_Heavy + true + + true + + 14 + + + AimedShot + + +
  • CE_AI_AOE
  • + + CE_AdvancedLaunchers + false + + + +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"] + ParentName + BaseWeapon +
  • +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"]/recipeMaker +
  • + +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"] + + +
  • + + +
  • Blunt
  • + + 2 + 1.75 + 1.0 + Base + + + + + +
  • + Defs/ThingDef[defName="Proj_GrenadeTF"] + Class +
  • +
  • + Defs/ThingDef[defName="Proj_GrenadeTF"]/AddHediffChance +
  • +
  • + Defs/ThingDef[defName="Proj_GrenadeTF"]/projectile + + + 3.5 + MutagenCloud + 100 + ExtinguisherExplosion + PM_Filth_Slurry + 0.8 + Gas_Mutagen + 1 + 12 + 0 + 3.0 + 2.0 + 0.25 + + +
  • + +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"]/label + + + +
  • +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"]/graphicData + + + Things/Ammo/HandGrenades/Mutagenic + Graphic_StackCount + 0 + + +
  • +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"] + + CombatExtended.AmmoThing + 75 + First + +
  • +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"] + Class + CombatExtended.AmmoDef +
  • +
  • + Defs/ThingDef[defName="Weapon_GrenadeTF"]/comps + + +
  • + 3.5 + MutagenCloud + PM_Filth_Slurry + 0.8 + Gas_Mutagen + 1 +
  • + + + +
  • + Weapon_GrenadeTF + + 0.75 + 1.05 + 15.33 + 1 + 0.65 + + + + CombatExtended.Verb_ShootCEOneUse + true + 10 + 0.8 + 4 + false + ThrowGrenade + + true + + Proj_GrenadeTF + true + true + 3 + + +
  • CE_AI_AOE
  • +
  • CE_OneHandedWeapon
  • +
  • PawnmorpherGun
  • +
  • PMGrenadeMutagenic
  • + + + +
  • + Defs + + + MakeMutagenicGrenades + + Craft 10 mutagenic grenades. + Making mutagenic grenades. + 4400 + +
  • + + +
  • Steel
  • + + + 8 + +
  • + + +
  • MechaniteSlurry
  • + + + 4 + +
  • + + +
  • ComponentIndustrial
  • + + + 2 + + + + +
  • Steel
  • +
  • MechaniteSlurry
  • +
  • ComponentIndustrial
  • +
    +
    + + 10 + + MutagenicWeapons + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml b/1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml new file mode 100644 index 000000000..51f670e81 --- /dev/null +++ b/1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml @@ -0,0 +1,137 @@ + + + + + +
  • + /Defs/ThingDef[defName = "Chaocow"]/comps + +
  • + + + Mobs/Chaoferal/Saddles/chaocowsaddle_east + Graphic_Single + 3 + false + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaocowsaddle_south + Graphic_Single + 3 + false + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaocowsaddle_north + Graphic_Single + 3 + false + + (0,0,0,0) + +
  • + + +
  • + /Defs/ThingDef[defName = "Chaocow"] + +
  • + 0,0,0 + 0,0,0 +
  • + + +
  • + /Defs/ThingDef[defName = "Chaofox"]/comps + +
  • + + + Mobs/Chaoferal/Saddles/chaofoxsaddle_east + Graphic_Single + 3 + false + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaofoxsaddle_south + Graphic_Single + 3 + false + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaofoxsaddle_north + Graphic_Single + 3 + false + + (0,0,0,0) + +
  • + + +
  • + /Defs/ThingDef[defName = "Chaofox"] + +
  • + 0,0,0 + 0,0,0 +
  • + + +
  • + /Defs/ThingDef[defName = "Chaodino"]/comps + +
  • + + + Mobs/Chaoferal/Saddles/chaodinosaddle_east + Graphic_Single + 3 + false + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaodinosaddle_south + Graphic_Single + 3 + false + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaodinosaddle_north + Graphic_Single + 3 + false + + (0,0,0,0) + +
  • + + +
  • + /Defs/ThingDef[defName = "Chaodino"] + +
  • + 0,0,0 + 0,0,0 +
  • + + +
    +
    +
    diff --git a/1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml b/1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml new file mode 100644 index 000000000..5984e3c06 --- /dev/null +++ b/1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml @@ -0,0 +1,161 @@ + + + + Always + +
  • + /Defs/ThingDef[defName = "Chaocow"]/comps + +
  • + + + Mobs/Chaoferal/Saddles/chaocowsaddle_east + Graphic_Single + 3 + false + + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaocowsaddle_south + Graphic_Single + 3 + false + + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaocowsaddle_north + Graphic_Single + 3 + false + + + (0,0,0,0) + + +
  • + + + +
  • + /Defs/ThingDef[defName = "Chaocow"] + +
  • + + 0,0,0 + 0,0,0 + + +
  • + + +
  • + /Defs/ThingDef[defName = "Chaofox"]/comps + +
  • + + + Mobs/Chaoferal/Saddles/chaofoxsaddle_east + Graphic_Single + 3 + false + + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaofoxsaddle_south + Graphic_Single + 3 + false + + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaofoxsaddle_north + Graphic_Single + 3 + false + + + (0,0,0,0) + + +
  • + + + +
  • + /Defs/ThingDef[defName = "Chaofox"] + +
  • + + 0,0,0 + 0,0,0 + + +
  • + + +
  • + /Defs/ThingDef[defName = "Chaodino"]/comps + +
  • + + + Mobs/Chaoferal/Saddles/chaodinosaddle_east + Graphic_Single + 3 + false + + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaodinosaddle_south + Graphic_Single + 3 + false + + + (0,0,0,0) + + + + Mobs/Chaoferal/Saddles/chaodinosaddle_north + Graphic_Single + 3 + false + + + (0,0,0,0) + + +
  • + + + +
  • + /Defs/ThingDef[defName = "Chaodino"] + +
  • + + 0,0,0 + 0,0,0 + + +
  • + + +
    +
    +
    diff --git a/1.5/Mods/Ideology/Defs/Issues.xml b/1.5/Mods/Ideology/Defs/Issues.xml new file mode 100644 index 000000000..626a4a9c9 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Issues.xml @@ -0,0 +1,32 @@ + + + PM_Mutation + + UI/Precepts/MutationPrecept + + + + PM_Transformation + + UI/Precepts/TransformationPrecept + + + + PM_Reversion + + UI/Precepts/ReversionPrecept + + + + PM_FormerHuman_Nudity + + UI/Precepts/FormerHumanTreatment + + + + PM_SapienceLoss + + UI/Precepts/SapiencePrecept + + + \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Precepts_FormerHumans.xml b/1.5/Mods/Ideology/Defs/Precepts_FormerHumans.xml new file mode 100644 index 000000000..d8981c311 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Precepts_FormerHumans.xml @@ -0,0 +1,129 @@ + + + PM_FormerHuman_Nudity + Medium + 750 + 120 + + + + PM_FormerHumanNudityDisliked + + They can't do anything about it, but it doesn't mean we have to be ok with it. + +
  • HumanPrimacy
  • +
    + +
  • NaturePrimacy
  • +
    + +
  • + PM_Precept_SapientAnimalNakedDisliked +
  • +
  • + FormerHumanHunted + SapientAnimalHuntingMemory +
  • +
  • + FormerHumanGrazed + PM_Precept_SapientAnimalGrazingMemoryDisliked +
  • +
  • + FormerHumanAteCorpse + PM_Precept_FormerHumanAteCorpseHumanlike +
  • +
    +
    + + PM_FormerHumanNudityNeutral + + Low + It is up to the individual as to whether they think fur is an adequate covering. + 1 + false + +
  • NaturePrimacy
  • +
    + +
  • + FormerHumanHunted + SapientAnimalHuntingMemory +
  • +
  • + FormerHumanGrazed + PM_Precept_SapientAnimalGrazingMemoryDisliked +
  • +
  • + FormerHumanAteCorpse + PM_Precept_FormerHumanAteCorpseHumanlike +
  • +
    +
    + + + PM_FormerHumanNudityLiked + + Former humans shouldn't reject the instincts of their new bodies + 1 + true + +
  • NaturePrimacy
  • +
    + +
  • HumanPrimacy
  • +
    + +
  • + PM_Precept_SapientAnimalNakedLiked +
  • +
  • + FormerHumanHunted + PM_Precept_SapientAnimalHuntingMemoryAnimallike +
  • +
  • + FormerHumanGrazed + PM_Precept_SapientAnimalGrazingMemoryAnimallike +
  • +
  • + FormerHumanAteCorpse + PM_Precept_FormerHumanAteCorpseAnimallike +
  • +
    +
    + + + PM_FormerHuman_StronglyAnimalistic + + Former humans should be as the animals are + 1 + true + + +
  • NaturePrimacy
  • +
    + +
  • HumanPrimacy
  • +
    + +
  • + PM_Precept_SapientAnimalNakedLiked +
  • +
  • + FormerHumanHunted + PM_Precept_SapientAnimalHuntingMemoryStronglyAnimallike +
  • +
  • + FormerHumanGrazed + PM_Precept_SapientAnimalGrazingMemoryStronglyAnimallike +
  • +
  • + FormerHumanAteCorpse + PM_Precept_FormerHumanAteCorpseStronglyAnimallike +
  • +
  • + +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Precepts_Mutation.xml b/1.5/Mods/Ideology/Defs/Precepts_Mutation.xml new file mode 100644 index 000000000..417757e03 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Precepts_Mutation.xml @@ -0,0 +1,133 @@ + + + + + + PM_MutationsAbhorrent + PM_Mutation + + The physical alteration of the human form via mutagens is a digusting practice that violates the body and invites unwanted animal impulses. + Medium + 20 + 1000 + +
  • HumanPrimacy
  • +
  • FleshPurity
  • +
    + +
  • + MutationGained + PM_FleshPuristMutated + +
  • + HumanPrimacy + PM_HumanPrimacyMutated +
  • + + +
  • + Morphed + PM_FleshPuristMorphed + +
  • + HumanPrimacy + PM_HumanPrimacyMorphed +
  • + + +
  • + DeMorphed + PM_FleshPuristMorphedReverted + +
  • + HumanPrimacy + PM_HumanPrimacyMorphedReverted +
  • + + +
  • + PM_HasMutation_Disapprove_Social +
  • +
    +
    + + + PM_MutationsDisliked + PM_Mutation + + People should not alter their body with dangerous and untested mutagens that cannot be easily reversed. + 1 + Medium + 20 + 1000 + +
  • + Morphed + PM_FleshPuristMorphed + +
  • + HumanPrimacy + PM_HumanPrimacyMorphed +
  • + + +
  • + DeMorphed + PM_FleshPuristMorphedReverted + +
  • + HumanPrimacy + PM_HumanPrimacyMorphedReverted +
  • + + +
    +
    + + + PM_MutationsNeutral + PM_Mutation + + false + Alteration of the body via mutagens is a part of life on this world. Those affected by it should be neither hated nor praised. Anyone choosing to alter their form is doing so at their own risk. + 1 + Low + 20 + 1000 + + + + PM_MutationsLoved + PM_Mutation + + The human form is limiting, and the power of mutagens will enable people to advance themselves and become who they want to be. + Medium + 20 + 1000 + +
  • NaturePrimacy
  • +
    + +
  • HumanPrimacy
  • +
  • FleshPurity
  • +
    + +
  • + MutationGained + PM_NaturePrimacyMutated +
  • +
  • + Morphed + PM_NaturePrimacyMorphed +
  • +
  • + DeMorphed + PM_NaturePrimacyMorphedReverted +
  • +
  • + PM_HasMutation_Approved_Social +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Precepts_Reversion.xml b/1.5/Mods/Ideology/Defs/Precepts_Reversion.xml new file mode 100644 index 000000000..8f3595ffb --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Precepts_Reversion.xml @@ -0,0 +1,62 @@ + + + + + + PM_Reversion + Medium + + + + PM_ReversionHated + + Reversion goes against the will of nature, we should let the chips fall where they may. + +
  • HumanPrimacy
  • +
  • FleshPurity
  • +
  • Transhumanist
  • +
    + +
  • + Reverted + PM_NaturePrimacyMorphedReverted +
  • +
  • + Reverted + PM_ReversionHatedPrecept_RevertedPawnReaction +
  • +
    +
    + + + PM_ReversionNeutral + + Low + false + Reverting a morph or animal back to a human should be done when possible, but we shouldn't go to any great lengths to do. + 1 + + + + PM_ReversionLiked + + Reverting people is a noble goal and one we should take extra measures to do when possible. + +
  • + Reverted + PM_FleshPuristTransformed + +
  • + HumanPrimacy + PM_HumanPrimacyReverted +
  • + + +
  • + Reverted + DefaultRevertedPawnReaction +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Precepts_Sapience.xml b/1.5/Mods/Ideology/Defs/Precepts_Sapience.xml new file mode 100644 index 000000000..f23724567 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Precepts_Sapience.xml @@ -0,0 +1,53 @@ + + + + PM_SapienceLoss + Low + + + + SapienceLossNeutral + + +
  • NaturePrimacy
  • +
    + +
  • HumanPrimacy
  • +
    +
    + + + SapienceLossLiked + + +
  • NaturePrimacy
  • +
    + +
  • HumanPrimacy
  • +
    + +
  • + PermanentlyFeral + PM_SapienceLossLikedPrecept_PermanentlyFeralReaction +
  • +
    +
    + + + SapienceLossAbhorrent + + +
  • HumanPrimacy
  • +
    + +
  • NaturePrimacy
  • +
    + +
  • + PermanentlyFeral + PM_SapienceLossAbhorrentPrecept_PermanentlyFeralReaction +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Precepts_Transformation.xml b/1.5/Mods/Ideology/Defs/Precepts_Transformation.xml new file mode 100644 index 000000000..ff2c6f9a3 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Precepts_Transformation.xml @@ -0,0 +1,90 @@ + + + + + + PM_Transformation + Medium + 20 + 1000 + + + + PM_TransformationAbhorrent + + Changing a person into an animal is a crime against nature and must be avoided at all costs. It is a truly despicable act that violates several human rights. + +
  • NaturePrimacy
  • +
    + +
  • HumanPrimacy
  • +
  • FleshPurity
  • +
    + +
  • + Transformed + PM_FleshPuristTransformed + +
  • + HumanPrimacy + PM_HumanPrimacyTransformed +
  • + + +
  • + Transformed + DefaultTransformationReaction +
  • +
  • + PM_FormerHuman_Disapprove_Social +
  • +
    +
    + + + PM_TransformationDisliked + + A person becoming an animal is undesirable and is a violation of bodily autonomy. + 1 + +
  • + Transformed + DefaultTransformationReaction +
  • +
    +
    + + + PM_TransformationNeutral + + Low + false + There are many trials on this world, and becoming an animal via mutagens is one of them. We should neither object to or venerate those whom this happens to. + 1 + + + + PM_TransformationLoved + + Nature claims those whom it needs. With the power of mutagens, we are able to become one with nature by becoming animals themselves. + +
  • FleshPurity
  • +
  • HumanPrimacy
  • +
  • Transhumanist
  • +
    + +
  • + Transformed + PM_NaturePrimacyTransformed +
  • +
  • + Transformed + PM_TfLovedPrecept_TransformationReaction +
  • +
  • + PM_FormerHuman_Approve_Social +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Rituals/AttachableOutcomeEffects.xml b/1.5/Mods/Ideology/Defs/Rituals/AttachableOutcomeEffects.xml new file mode 100644 index 000000000..ec7e38017 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Rituals/AttachableOutcomeEffects.xml @@ -0,0 +1,20 @@ + + + PM_AddVeneratedMutationsToTarget + Pawnmorph.Rituals.AttachableOutcomeEffectWorkers.AddRandomVeneratedMutation + + some pawns will be given mutations from one of your venerated animals + {Count} {Member} were affected by the ritual + true + +
  • + + +
  • mutagen_cause->participating in [precept_name]
  • + + + +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Thoughts/FH_OthersTfdPreceptThoughts.xml b/1.5/Mods/Ideology/Defs/Thoughts/FH_OthersTfdPreceptThoughts.xml new file mode 100644 index 000000000..be2615dbc --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Thoughts/FH_OthersTfdPreceptThoughts.xml @@ -0,0 +1,188 @@ + + + 10 + + + + PM_TfLovedPrecept_TransformationReaction + +
  • + + Now they have truly returned to nature. + 2 +
  • +
  • + + They are closer to nature now. + 3 +
  • +
  • + + Our prisoners should bend the knee to the natural world in their own form. + 3 +
  • +
  • + + Our guests are guests of the natural world, and they should look the part. + 3 +
  • +
  • + + A gift to the natural world. + 2 +
  • +
  • + + Those that wrong us will serve the natural world once more. + 5 +
  • +
    +
    + + + PM_TfLovedPrecept_MergedThought + +
  • + + They will feel less lonely now. + 2 +
  • +
  • + + One of our own colonist participated into a successful science experiment! + 3 + +
  • +
  • + + They were not punished, but blessed by science! + 3 + +
  • +
  • + + We welcome heartily guests to our experiments. + 3 +
  • +
  • + + Slaves make perfect test subjects! + 2 +
  • +
  • + + They were wrong, but they redeem themselves by helping science! + 5 +
  • +
    +
    + + + + PM_ReversionHatedPrecept_RevertedPawnReaction + +
  • + + They should remain as they were. + -3 +
  • +
  • + + They should remain as they were. + -5 +
  • +
  • + + They should remain as they were. + -3 +
  • +
  • + + They should remain as they were. + -3 +
  • +
  • + + They should remain as they were. + -3 +
  • +
  • + + They should remain as they were. + -3 +
  • +
    +
    + + + PM_SapienceLossLikedPrecept_PermanentlyFeralReaction + +
  • + + They are one with the natural world now. + 2 +
  • +
  • + + They are now forever freed from responsabilities. + 3 +
  • +
  • + + Our prisoners now understand the greatness of the natural world. + 3 +
  • +
  • + + We welcomed our guests to the natural world, and now they feel home. + 3 +
  • +
  • + + Being one with the natural world made them totally free. + 2 +
  • +
  • + + They took the wrong path, but now they will follow the path of the natural world. + 5 +
  • +
    +
    + + + PM_SapienceLossAbhorrentPrecept_PermanentlyFeralReaction + +
  • + + Alone in the wild, how can they survive now? + -3 +
  • +
  • + + We did everything we could... I am sorry. + -5 +
  • +
  • + + Letting our captives lose their humanity is a crime we should feel guilty of. + -3 +
  • +
  • + + What their friends will think of us now? This is horrible. + -3 +
  • +
  • + + They are now forever enslaved in anto animal form... This is inhumane. + -3 +
  • +
  • + + They needed to be punished for their crimes, NOT to be deprived from their humanity. + -3 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Thoughts/FH_PreceptThoughts.xml b/1.5/Mods/Ideology/Defs/Thoughts/FH_PreceptThoughts.xml new file mode 100644 index 000000000..720522e48 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Thoughts/FH_PreceptThoughts.xml @@ -0,0 +1,342 @@ + + + Pawnmorph.Thoughts.Precept.PWorker_FormerHuman + + + + PM_Precept_SapientAnimalNakedDisliked + +
  • + + I know I'm covered in fur but...c'mon! + -5 +
  • + +
  • + + It would help if I could put something on, even just to pretend... + -4 +
  • +
  • + + Why do I feel weird out and about? Oh! Clothes! + -3 +
  • +
  • + + There's no other option, right? + -2 +
  • +
  • + + Clothes? + 0 +
  • +
    +
    + + + PM_Precept_SapientAnimalNakedLiked + +
  • + + Eh, I'm covered in fur, I don't care. This is more natural! + 5 +
  • +
  • + + Nothin' between me and the world, it's just right. + 4 +
  • +
  • + + There's no other option right? + 3 +
  • +
  • + + Why would they want to put stuff over their fur... + 2 +
  • +
  • + + Clothes? + 0 +
  • +
    +
    + + + + + Pawnmorph.Thoughts.FormerHumanMemory + 1 + + + + PM_Precept_SapientAnimalHuntingMemoryAnimallike + + + +
  • + + I don't want to get that hungry again...but hunting is fun! + true + 5 +
  • +
  • + + Nothing like a good hunt to get the blood flowing. + 8 +
  • +
  • + + What a rush! Tastes good. + 10 +
  • +
  • + + Primal feelings...so strong, more hunt! + 20 +
  • +
    +
    + + + PM_Precept_SapientAnimalHuntingMemoryStronglyAnimallike + + +
  • + + Yes! I am truly becoming part of the circle of life! + true + 5 +
  • +
  • + + The thrill of the hunt makes me feel alive! + 10 +
  • +
  • + + What a rush! Tastes good. + 8 +
  • +
  • + + Primal feelings...so strong, more hunt! + 5 +
  • +
    +
    + + + + Things/Mote/ThoughtSymbol/Food + true + + + + PM_Precept_FormerHumanAteCorpseDisliked + + +
  • + + I gave in to my hunger and ate the raw corpse of a fresh kill. Eugh. + -6 +
  • +
  • + + I gave in to my beastly thoughts and ate the raw corpse of a fresh kill. Eugh. + -3 +
  • +
  • + + What a rush! Tastes good. + 1 +
  • +
    +
    + + + + PM_Precept_FormerHumanAteCorpseHumanlike + +
  • + + I gave in to my hunger and ate the raw corpse of a fresh kill. Eugh. + -8 +
  • +
  • + + I gave in to my beastly thoughts and ate the raw corpse of a fresh kill. Eugh. + -6 +
  • +
  • + + What a rush! Tastes good. + 0 + true +
  • +
    +
    + + + PM_Precept_FormerHumanAteCorpseAnimallike + +
  • + + Hmm.. It’s kind of like juicy cold cuts.. + -1 +
  • +
  • + + The trick is to eat AROUND the hair + 4 +
  • +
  • + + What a rush! Tastes good. + 2 +
  • +
  • + + 2 + Maybe I could bury the leftovers.. Keep it for myself +
  • +
  • + + 2 + Creamy marrow. Crunchy bones. +
  • +
    +
    + + + PM_Precept_FormerHumanAteCorpseStronglyAnimallike + +
  • + + Butchers have been perpetrating a sick scam on us since the dawn of time! + 6 +
  • +
  • + + I like my meat fresh. REALLY fresh. + 12 +
  • +
  • + + Humans like to hide from what they’re eating. I like to face it + 4 +
  • +
  • + + 2 + Maybe I could bury the leftovers.. Keep it for myself +
  • +
  • + + 2 + After the hunt… going back for more meat. +
  • +
    +
    + + + + + + PM_Precept_SapientAnimalGrazingMemoryDisliked + +
  • + + This is demeaning. Salads were bad enough as it is! + true + -5 +
  • +
  • + + Could I at least get a dressing to go with this? + -3 +
  • +
  • + + I’m becoming a damn lawn-mower! + -2 +
  • +
  • + + Eugh, I’m so gassy. + -1 +
  • +
  • + + Grass… Tastes bad + 0 + true +
  • +
    +
    + + + PM_Precept_SapientAnimalGrazingMemoryAnimallike + +
  • + + I guess there IS such a thing as a free lunch! + true + 3 +
  • +
  • + + There’s a lot of chewing to do, but hey, it fills the time! + 1 + true +
  • +
  • + + Grass, grass, or grass… I ride for free + 1 + true +
  • +
  • + + Fresh and clean, tasty leaves. + true + 1 +
  • +
    +
    + + + PM_Precept_SapientAnimalGrazingMemoryStronglyAnimallike + +
  • + + I form a crucial part in the circle of life! My duty is sacred! + true + 5 +
  • +
  • + + Nature’s bounty is mine to claim. + 10 + true +
  • +
  • + + This is how it should be. Eating the rays of the sun. + 5 + true +
  • +
  • + + Crunch crunch crunch. + true + 1 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Defs/Thoughts/Social/SocialPreceptThoughts.xml b/1.5/Mods/Ideology/Defs/Thoughts/Social/SocialPreceptThoughts.xml new file mode 100644 index 000000000..7037f5e97 --- /dev/null +++ b/1.5/Mods/Ideology/Defs/Thoughts/Social/SocialPreceptThoughts.xml @@ -0,0 +1,122 @@ + + + Pawnmorph.Thoughts.Precept.Worker_FormerHuman_Social + Thought_SituationalSocial + + + + Pawnmorph.Thoughts.Precept.Worker_VeneratedFormerHuman_Social + + + + Pawnmorph.Thoughts.Precept.Worker_VeneratedMutation_Social + Thought_SituationalSocial + + + + Pawnmorph.Thoughts.Precept.Worker_HasMutations_Social + Thought_SituationalSocial + + + + + + PM_FormerHuman_Disapprove_Social + +
  • + + -18 +
  • +
    +
    + + + + PM_FormerHuman_Approve_Social + +
  • + + 18 +
  • +
    +
    + + + PM_FormerHuman_Venerated_Social + +
  • + + 10 +
  • +
    +
    + + + + + PM_HasMutation_Approved_Social + +
  • + + 2 +
  • +
  • + + 4 +
  • +
  • + + 4 +
  • +
  • + + 8 +
  • +
    +
    + + + PM_HasMutation_Disapprove_Social + +
  • + + -2 +
  • +
  • + + -4 +
  • +
  • + + -4 +
  • +
  • + + -8 +
  • +
    +
    + + + PM_HasMutation_Venerated_Approved_Social + +
  • + + 4 +
  • +
  • + + 8 +
  • +
  • + + 8 +
  • +
  • + + 16 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Patches/AddPlantComps.xml b/1.5/Mods/Ideology/Patches/AddPlantComps.xml new file mode 100644 index 000000000..b444ebe97 --- /dev/null +++ b/1.5/Mods/Ideology/Patches/AddPlantComps.xml @@ -0,0 +1,26 @@ + + + Always + +
  • + Defs/ThingDef[@Name="PlantBaseNonEdible"]/comps + Invert +
  • +
  • + Defs/ThingDef[@Name="PlantBaseNonEdible"] + + + +
  • +
    +
    + + + /Defs/ThingDef[@Name="PlantBaseNonEdible"]/comps + +
  • + Pawnmorph.ThingComps.PlantIngesterListener +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Patches/BanDryadsFromMutations.xml b/1.5/Mods/Ideology/Patches/BanDryadsFromMutations.xml new file mode 100644 index 000000000..00307f729 --- /dev/null +++ b/1.5/Mods/Ideology/Patches/BanDryadsFromMutations.xml @@ -0,0 +1,10 @@ + + + Defs/ThingDef[race/animalType="Dryad"] + +
  • + true +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Ideology/Patches/PreceptPatches.xml b/1.5/Mods/Ideology/Patches/PreceptPatches.xml new file mode 100644 index 000000000..be3b613ef --- /dev/null +++ b/1.5/Mods/Ideology/Patches/PreceptPatches.xml @@ -0,0 +1,58 @@ + + + +
  • + /Defs/PreceptDef[defName="AnimalVenerated"]/comps + +
  • + PM_GainedVeneratedMutation + MutationGained +
  • +
  • + true + PM_VeneratedAnimalMorphedReverted + DeMorphed +
  • +
  • + false + PM_VeneratedAnimalMorphed + Morphed +
  • +
  • + PM_VeneratedAnimalReverted + Reverted +
  • +
  • + PM_FormerHuman_Venerated_Social +
  • +
  • + PM_HasMutation_Venerated_Approved_Social +
  • + + +
  • + /Defs/MemeDef[defName="Transhumanist" or defName="FleshPurity"]/disagreeableTraits + +
  • MutationAffinity
  • + + +
  • + /Defs/MemeDef[defName="HumanPrimacy"]/disagreeableTraits + + /Defs/MemeDef[defName="HumanPrimacy"] + + +
  • MutationAffinity
  • + + + + + /Defs/MemeDef[defName="HumanPrimacy"]/disagreeableTraits + +
  • MutationAffinity
  • +
    +
    + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Aspects.xml b/1.5/Mods/Martens/Defs/Aspects.xml new file mode 100644 index 000000000..548790707 --- /dev/null +++ b/1.5/Mods/Martens/Defs/Aspects.xml @@ -0,0 +1,21 @@ + + + MartenAspect + + Martenmorphs are widely known to be agile and intelligent hunters, capable of incredible feats of skill and agility. They are more than capable of taking on opponents several times their size in hand to hand combat. + +
  • + +
  • + Moving + 0.15 +
  • + + + 35 + 0.35 + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Full.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Full.xml new file mode 100644 index 000000000..af5d96bd8 --- /dev/null +++ b/1.5/Mods/Martens/Defs/Marten/Marten_Full.xml @@ -0,0 +1,88 @@ + + + PawnmorphMartenTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a martenmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more marten than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + +
  • ZGF_BeechMart
  • +
  • ZGF_JapaneseMart
  • +
  • ZGF_NilgiriMart
  • +
  • ZGF_PineMart
  • +
  • ZGF_RimMart
  • +
  • ZGF_Sable
  • +
  • ZGF_YellowMart
  • +
  • ZGF_MegaMart
  • +
  • ZGF_Boommarten
  • +
    +
    + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MartenMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml new file mode 100644 index 000000000..6bf7c446b --- /dev/null +++ b/1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml @@ -0,0 +1,57 @@ + + + MartenTransformationMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
  • + + The world looks so much bigger than me... + -3 +
  • +
  • + + Oh, I feel so agile! + 3 +
  • +
  • + + Why a marten?! That's like one step away from being a skunk! + -5 +
  • +
  • + + While this does feel amazing, I can't help but wonder what being a full fledged marten would be like... + 1 +
  • +
    +
    + + + MartenRevertedMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
  • + + Phew, back to being the same size as everyone else. + 3 +
  • +
  • + + Aww, now I'm just a normal, clumsy human again... + -3 +
  • +
  • + + Yes! I'm human again! Who would want to be a stupid marten anyway? + 10 +
  • +
  • + + Well, this is one step farther away from becoming a marten, but I suppose it's a step toward becoming every other animal, right? + -1 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml b/1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml new file mode 100644 index 000000000..4f710edf4 --- /dev/null +++ b/1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml @@ -0,0 +1,42 @@ + + + MartenMorph + + The product of a mad scientist's attempt to create an army of super (cute) soldiers, martenmorphs are deceptively strong fighters, with suprising agility that makes them nigh untouchable in melee. + ZGF_RimMart + +
  • ZGF_BeechMart
  • +
  • ZGF_JapaneseMart
  • +
  • ZGF_NilgiriMart
  • +
  • ZGF_PineMart
  • +
  • ZGF_Sable
  • +
  • ZGF_YellowMart
  • +
  • ZGF_MegaMart
  • +
  • ZGF_Boommarten
  • +
    + Carnivora + +
  • Cold
  • +
  • Temperate
  • +
  • Combat
  • +
    + PawnmorphMartenTF + PawnmorphMartenTFPartial + +
  • + MartenAspect + false +
  • +
    + + + (142,95,57) + (254,154,71) + + + + MartenTransformationMemory + MartenRevertedMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml new file mode 100644 index 000000000..ba4d8d7e0 --- /dev/null +++ b/1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphMartenTFPartial + + This person has mechanites in their blood that are providing them with marten-esk mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + MartenMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml new file mode 100644 index 000000000..5086351fa --- /dev/null +++ b/1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml @@ -0,0 +1,168 @@ + + + MartenMorph + EtherMartenJaw + + +
  • Jaw
  • +
    + + Parts/Marten/Marten_Muzzle + + +
  • + adapting + + [PAWN_nameDef]'s jaw has reshaped into one resembling a mustlid's, complete with razor sharp teeth. The strange shape makes speaking very difficult. + +
  • +
  • + adapted + + [PAWN_nameDef]'s jaw has reshaped into one resembling a mustlid's, complete with razor sharp teeth. Adapting to it has made speaking less frustrating. + +
  • +
  • + paragon + + [PAWN_nameDef]'s jaw has reshaped into one resembling a mustlid's, complete with razor sharp teeth. With further adaptation, [PAWN_nameDef] has learned to speak normally. + +
  • +
    +
    + + + MartenMorph + EtherMartenEar + + +
  • Ear
  • +
    + + Parts/Marten/Marten_Ear_Left + Parts/Marten/Marten_Ear_Left_Behind + Parts/Marten/Marten_Ear_Right + Parts/Marten/Marten_Ear_Right_Behind + + +
  • + grown + + Trangular, furry ears sit atop [PAWN_nameDef]'s head, like a marten's. + +
  • + Hearing + 0.1 +
  • + + + +
    +
    + + + MartenMorph + EtherMartenTail + + +
  • Tail
  • +
  • MorphTail
  • +
    + + Parts/Raccoon/Raccoon_Tail + + +
  • + grown + + A long fluffy marten tail. It's great for helping [PAWN_nameDef] keep [PAWN_objective] balance. + +
  • + Moving + 0.10 +
  • + + + +
    +
    + + +
    \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Races.xml b/1.5/Mods/Martens/Defs/Races.xml new file mode 100644 index 000000000..9b3cd273b --- /dev/null +++ b/1.5/Mods/Martens/Defs/Races.xml @@ -0,0 +1,168 @@ + + + + + ZGF_Chaomart + + TODO + + 6.2 + 1200 + 19 + -60 + 45 + + +
  • + + +
  • Scratch
  • + + 6.5 + 1.8 + FrontLeftPaw + +
  • + + +
  • Scratch
  • + + 6.5 + 1.8 + FrontRightPaw + +
  • + + +
  • Bite
  • + + 7 + 1.8 + Teeth + 0.9 + +
  • + + +
  • ToxicBite
  • + + 12 + 2 + + +
  • + Stun + 14 +
  • +
    +
    + +
  • + + +
  • MutagenicStab
  • + + 12 + 1.5 + + +
  • + Stun + 14 +
  • +
    +
    + +
    + + QuadrupedAnimalWithPawsAndTail + true + 0.9 + 0.4 + 0.35 + 0.8 + 1.0 + OmnivoreAnimal,OvivoreAnimal + Advanced + 0.7 + 240 + 1 + 0.05 + 0.25 + 18 + +
  • + AnimalBabyTiny + 0 + +
  • +
  • + AnimalJuvenile + 0.1 +
  • +
  • + AnimalAdult + 0.3 + +
  • +
    + Pawn_Melee_SmallScratch_HitPawn + Pawn_Melee_SmallScratch_HitBuilding + Pawn_Melee_SmallScratch_Miss +
    + +
  • AnimalFighter
  • +
    +
    + + + ZGF_Chaomart + + ZGF_Chaomart + 60 + 0.3 + + 1 + 1 + + +
  • + + + Mobs/Chaoferal/Chaomart + 1.2 + + + Things/Pawn/Animal/Marten/Dessicated_Marten + 1.2 + +
  • +
  • + + Mobs/Chaoferal/Chaomart + 1.5 + + + Things/Pawn/Animal/Marten/Dessicated_Marten + 1.5 + +
  • +
  • + + Mobs/Chaoferal/Chaomart + 1.8 + + (0.3, 0.4, 0.3) + (0,0,-0.05) + + + + Things/Pawn/Animal/Marten/Dessicated_Marten + 1.8 + +
  • +
    +
    + + +
    diff --git a/1.5/Mods/Martens/Patches/Addpaws.xml b/1.5/Mods/Martens/Patches/Addpaws.xml new file mode 100644 index 000000000..5dbd0363d --- /dev/null +++ b/1.5/Mods/Martens/Patches/Addpaws.xml @@ -0,0 +1,8 @@ + + + Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherDextrousPawHand"]/classInfluences + +
  • MartenMorph
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/RemoteTech/Defs/Things.xml b/1.5/Mods/RemoteTech/Defs/Things.xml new file mode 100644 index 000000000..a51c6aaf5 --- /dev/null +++ b/1.5/Mods/RemoteTech/Defs/Things.xml @@ -0,0 +1,106 @@ + + + pawnmutategas + + Mutates living beings when exposed to them. + Rapidly dissipates when under an open sky. + RemoteTech.GasCloud_HediffGiver + Ethereal + RealtimeOnly + + rxGasCloud + RemoteTech.Graphic_GasCloud + Mote + (1.3,1.3) + (50,205,50) + + MoteOverhead + + + 30 + + 2 + + 1 + + 200 + + 1000 + + 1 + + 25 + + .225 + + + 4 + 6 + + + true + .5 + MutagenicBuildup + + 0.0050 + 0.0267 + + +
  • rxApparel_GasMask
  • +
  • Apparel_PowerArmorHelmet
  • +
    +
    + true + Never + false + false + false +
    + + + pawnmorphMutagasPlaced + + RemoteTech.Building_RemoteExplosive + + Things/Building/tfIED + Graphic_Single + (0, 0, 0) + + (.75, 0.15, .75) + + + A remotely triggered canister filled with mutagen gas. + Arm, then detonate from the Remote Explosives Console. + +
  • rxRemoteDetonator
  • +
  • MutagenExtraction
  • +
    + + 60 + 1 + 2 + + +
  • +
  • + RemoteTech.CompChemicalExplosive + + 50 + 50 + + 0 + .2 + rxGlassBreak + pawnmutategas + 80000 +
  • +
  • +
  • + + + true + Utility + false + + + \ No newline at end of file diff --git a/1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml b/1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml new file mode 100644 index 000000000..a38a73d69 --- /dev/null +++ b/1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml @@ -0,0 +1,29 @@ + + + Always + +
  • + /Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBoarSnout"]/comps/li[@Class = "Pawnmorph.Hediffs.CompProperties_TerrainProduction"]/entries + +
  • + SoilRich + RC2_RawTruffles + 2.4 + 10 +
  • + + +
  • + /Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherPigSnout"]/comps/li[@Class = "Pawnmorph.Hediffs.CompProperties_TerrainProduction"]/entries + +
  • + SoilRich + RC2_RawTruffles + 10.4 + 10 +
  • + + + + + \ No newline at end of file diff --git a/1.5/Mods/Royalty/Patches/TransferPsychic.xml b/1.5/Mods/Royalty/Patches/TransferPsychic.xml new file mode 100644 index 000000000..9c8bdbfb3 --- /dev/null +++ b/1.5/Mods/Royalty/Patches/TransferPsychic.xml @@ -0,0 +1,14 @@ + + + Defs/HediffDef[defName="PsychicAmplifier"] + +
  • + + + + Defs/AbilityDef[@Name="PsycastBase"] + +
  • + + + \ No newline at end of file diff --git a/1.5/Mods/VBE/Defs/Backgrounds.xml b/1.5/Mods/VBE/Defs/Backgrounds.xml new file mode 100644 index 000000000..66c08eacf --- /dev/null +++ b/1.5/Mods/VBE/Defs/Backgrounds.xml @@ -0,0 +1,9 @@ + + + EtherBackground + + MutaCorp Datalog FH-27b: We made something we couldn't control. No way we're keeping our funding after this. + Backgrounds/PM_BG + UI/MutagenicHazard + + \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Recipes.xml b/1.5/Mods/VCE/Defs/Recipes.xml new file mode 100644 index 000000000..ccb19267d --- /dev/null +++ b/1.5/Mods/VCE/Defs/Recipes.xml @@ -0,0 +1,54 @@ + + + VCE_PM_MutaniteSalt + + Create a lot of green seasoning from lumps of mutanite. Added to meals after cooking for an extra kick. + Grinding mutanite into salt. + CookSpeed + Cook + Recipe_CookMeal + 200 + +
  • VCE_CondimentPrepTable
  • + + +
  • + + +
  • Mutanite
  • + + + 1 + +
    + + +
  • Mutanite
  • +
    +
    + + 10 + + VCE_CondimentsResearch + + + VCE_CowmorphMilkIntoCheese + VCE_CheesePress + +
  • TFMilk
  • +
    + +
  • 25
  • +
    + Mutacheese + 1 + true + 10 + 15 + 25 + 35 + 40 + 45 + 100 +
    +
    \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Things.xml b/1.5/Mods/VCE/Defs/Things.xml new file mode 100644 index 000000000..200acb5fa --- /dev/null +++ b/1.5/Mods/VCE/Defs/Things.xml @@ -0,0 +1,58 @@ + + + Mutasalt + + Mutanite that's been ground up into a fine powder, that can be sprinked over foods to give chaotic mutations to anyone who eats them... + + Things/Item/Resource/Mutasalt + Graphic_StackCount + + + 100 + 1 + 1.3 + + +
  • VCE_Condiments
  • +
    + + NeverForNutrition + PM_ConsumedDigestibleFullRandomTF + +
    + + Mutacheese + + A mutagenic mechanite cheese created by pressing cowmorph milk. This isn't edible, but if consumed it will act as an organic equivalent of a cowmorph syringe. + + Things/Item/Resource/Mutacheese + Graphic_StackCount + + Sellable + 10 + + 500 + 1 + 0.9 + + +
  • VCE_Cheese
  • +
    + + Meal + NeverForNutrition + VCE_PM_AteCowmorphCheese + EatMeat + Meal_Eat + 1 + 0.03 + Gluttonous + + +
  • + CompQuality +
  • +
  • + + + \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Thoughts.xml b/1.5/Mods/VCE/Defs/Thoughts.xml new file mode 100644 index 000000000..f00027cc4 --- /dev/null +++ b/1.5/Mods/VCE/Defs/Thoughts.xml @@ -0,0 +1,31 @@ + + + + + + VCE_PM_AteCowmorphCheese + VanillaCookingExpanded.Thought_Hediff + PawnmorphCowTF + true + +
  • + + That... was... huh... My whoooole body feels hooooot... + -3 +
  • + + + + VanillaCookingExpanded.Thought_Hediff + PM_ConsumedDigestibleFullRandomTF + FullRandomTF + 0.5 + +
  • + + I'm not sure the salt on that meal was really salt... + -1 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/VCE/Patches/Patch.xml b/1.5/Mods/VCE/Patches/Patch.xml new file mode 100644 index 000000000..23d39acdf --- /dev/null +++ b/1.5/Mods/VCE/Patches/Patch.xml @@ -0,0 +1,10 @@ + + + + Always + /Defs/ItemProcessor.ItemAcceptedDef[defName = "IP_CheesePressFirstItem"]/items + +
  • TFMilk
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/VEF/Defs/ModDef.xml b/1.5/Mods/VEF/Defs/ModDef.xml new file mode 100644 index 000000000..c634346b3 --- /dev/null +++ b/1.5/Mods/VEF/Defs/ModDef.xml @@ -0,0 +1,13 @@ + + + PM_Pawnmorpher + + cross compatiblity + +
  • RangedAnimals
  • +
  • HediffVerbs
  • +
  • IntegratedToggle
  • +
  • ExtraEquipmentVerbs
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml new file mode 100644 index 000000000..20bbcdfee --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphLeopardTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a leopardmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + LeopardMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + LeopardMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml new file mode 100644 index 000000000..eeb082a80 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml @@ -0,0 +1,30 @@ + + + LeopardTransformationMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
  • + + I feel like I should be out hunting... + -3 +
  • +
  • + + Rrowwl! I feel so sleek and powerful. + +3 +
  • +
  • + + I'm a big stupid cat! I don't wanna be a big stupid cat! + -5 +
  • +
  • + + Now how about giving me the full experience? + +1 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml new file mode 100644 index 000000000..35acc32ef --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml @@ -0,0 +1,17 @@ + + + LeopardMorph + + + +
  • Temperate
  • +
    + PawnmorphLeopardTF + PawnmorphLeopardTFPartial + + + (215,147,96) + + +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml new file mode 100644 index 000000000..7dceb3931 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphLeopardTFPartial + + This person has mechanites in their blood that are providing them with leopard-esk mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + LeopardMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml new file mode 100644 index 000000000..fbd3c5069 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml @@ -0,0 +1,19 @@ + + + EtherLeopardJaw + LeopardMorph + EtherLeopardJaw + + + + EtherLeopardEar + LeopardMorph + EtherLeopardEar + + + + EtherLeopardTail + LeopardMorph + EtherLeopardTail + + \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml new file mode 100644 index 000000000..77e2bcc57 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml @@ -0,0 +1,29 @@ + + + LeopardRevertedMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
  • + + It's good to be back to normal. + 3 +
  • +
  • + + Dammit, I wanted to be a big cat! + -3 +
  • +
  • + + Finally, I'm back to my normal self... + 10 +
  • +
  • + + Dammit, I wanted to be a big cat! + -3 +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml new file mode 100644 index 000000000..d61c58e17 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml @@ -0,0 +1,10 @@ + + + A suprisingly docile morph, Leopardmorphs act alot like an oversized and overconfident house cat. Be wary though, unlike their domesticated kin their hunting instincts are sharp and their claws yet sharper. + + LeopardTransformationMemory + LeopardRevertedMemory + + + + \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml new file mode 100644 index 000000000..212bd4a54 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml @@ -0,0 +1,41 @@ + + + + + Parts/Leopard/Leopard_Muzzle + + + + + + + Parts/Leopard/Leopard_Ear_Left + Parts/Leopard/Leopard_Ear_Left_Behind + Parts/Leopard/Leopard_Ear_Right + Parts/Leopard/Leopard_Ear_Right_Behind + + +
  • + grown + + A triangular, fuzzy ear graces [PAWN_nameDef]'s head. It coils back when [PAWN_pronoun] is getting ready to pounce. + +
  • +
    +
    + + + + + Parts/Leopard/Leopard_Tail + + +
  • + grown + + A long, spotted tail. It flicks back and forth whenever [PAWN_nameDef] is displeased with something. + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml new file mode 100644 index 000000000..cb0e61632 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphSnowLeopardTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a snowy variety of leopardmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
  • + + 0.05 + +
  • + Moving + -0.05 +
  • + + + SnowLeopardMorph + + + + TransformationMisc + + + 0.1 + + +
  • + + 0.6 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + +
  • + + 0.65 + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SnowLeopardMorph + + + 5 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml new file mode 100644 index 000000000..cfad53cfc --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml @@ -0,0 +1,28 @@ + + + SnowLeopardMorphTranformationMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
  • + + I feel like I should be jumping around in the snow. + True + 0 +
  • +
  • + + I've got a built-in winter coat, with a cool design to boot! + True + 5 +
  • +
  • + + Ughhh... why am I so clumsy now? + True + -5 +
  • +
    +
    + +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml new file mode 100644 index 000000000..c711f550d --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml @@ -0,0 +1,20 @@ + + + SnowLeopardMorph + + + +
  • Cold
  • +
    + PawnmorphSnowLeopardTF + PawnmorphSnowLeopardTFPartial + + + (204,204,204) + + + + SnowLeopardMorphTranformationMemory + +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml new file mode 100644 index 000000000..85a49f9b2 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphSnowLeopardTFPartial + + This person has mechanites in their blood that are providing them with snow leopard-esk mutations. + +
  • + 0.1 + 1 + +
  • + Moving + -0.05 +
  • +
  • + Sight + -0.05 +
  • +
  • + Manipulation + -0.05 +
  • + + + SnowLeopardMorph + + + 7.7 + + + +
    +
    +
    \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml new file mode 100644 index 000000000..3aa4c3727 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml @@ -0,0 +1,19 @@ + + + EtherSnowLeopardJaw + SnowLeopardMorph + EtherSnowLeopardJaw + + + + EtherSnowLeopardEar + SnowLeopardMorph + EtherSnowLeopardEar + + + + EtherSnowLeopardTail + SnowLeopardMorph + EtherSnowLeopardTail + + \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml b/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml new file mode 100644 index 000000000..b3a9a93dc --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml @@ -0,0 +1,40 @@ + + + +
  • + + +
  • + Defs/Pawnmorph.MorphDef[defName="LeopardMorph"]/race + + ACPAmurLeopard + +
  • +
  • + Defs/Pawnmorph.MorphDef[defName="SnowLeopardMorph"]/race + + ACPSnowLeopard + +
  • +
    + +
  • + + +
  • + Defs/Pawnmorph.MorphDef[defName="LeopardMorph"]/race + + Leopard + +
  • +
  • + Defs/Pawnmorph.MorphDef[defName="SnowLeopardMorph"]/race + + SnowLeopard + +
  • + + + +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Addon_FixVanillaGeneticsExpanded.xml b/1.5/Patches/Addon_FixVanillaGeneticsExpanded.xml new file mode 100644 index 000000000..2cb652a96 --- /dev/null +++ b/1.5/Patches/Addon_FixVanillaGeneticsExpanded.xml @@ -0,0 +1,19 @@ + + + +
  • Vanilla Genetics Expanded
  • +
    + + +
  • + Defs/ThingDef[race/fleshType="GR_Mechanoid"] + +
  • + true +
  • + + +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Addon_GasTrapsAndShells.xml b/1.5/Patches/Addon_GasTrapsAndShells.xml new file mode 100644 index 000000000..e58c1b66b --- /dev/null +++ b/1.5/Patches/Addon_GasTrapsAndShells.xml @@ -0,0 +1,147 @@ + + + +
  • Gas Traps And Shells
  • +
    + + + +
  • + Defs + + + Shell_GasTF + + A shell filled with aerosolized slurry. Can be fired from mortars. + + Things/Item/Resource/TFShell + Graphic_StackCount + + +
  • + 5.9 + Smoke + 0.4 + 0.333 + EtherMutagenicGas + 1.0 + + 10 + 30 + +
  • + + Bullet_Shell_GasMutagenic + + 20 + 10 + 1 + + + + + Bullet_Shell_GasMutagenic + + + Things/Projectile/ShellHighExplosive + Graphic_Single + TransparentPostLight + + Projectile_Explosive + + Smoke + 0 + 41 + 5.9 + true + EtherMutagenicGas + 1.0 + Artillery_HitThickRoof + Explosion_Stun + MortarRound_PreImpact + MortarRound_Ambient + + + + + EtherMutagenicGas + + + Things/Gas/Puff + 2.5 + (0.0,0.8,0.0,0.4) + + + GasTrap.Thing_AddsHediff + MutagenicBuildup + 1.0 + 0.05 + 30 + + + + + 50 + 60 + + true + 0.4 + 5 + + + + + GasTrapMutagenic + + GasTrap.Building_GasTrap + + Things/Building/tfIEDGas + Graphic_Single + + (0.1,0,0.8,0.3) + + + Building + RealtimeOnly + false + Normal + false + EtherMutagenicGas + Smoke + 1 + 4.9 + + true + true + false + + 40 + 2000 + -4 + + + This trap releases mutagenic gas when a hapless human gets too close. They won't be human for too long after inhaling the aerosolised mechanites contained in this trap. + + 1 + 1 + 10 + + Security +
  • IEDs
  • MutagenicWeapons
  • + + true + +
    + + +
    +
    +
    + +
    diff --git a/1.5/Patches/Core/Core_AddSurgeries.xml b/1.5/Patches/Core/Core_AddSurgeries.xml new file mode 100644 index 000000000..00f677814 --- /dev/null +++ b/1.5/Patches/Core/Core_AddSurgeries.xml @@ -0,0 +1,15 @@ + + + /Defs/ThingDef[@Name="AnimalThingBase"]/recipes + +
  • PM_TagAnimal
  • +
    +
    + + /Defs/ThingDef[defName="Human"]/recipes + +
  • PM_ApplyHaltCream
  • +
  • PM_ApplyAdaptionCream
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Core/Core_AnimalThinkTree.xml b/1.5/Patches/Core/Core_AnimalThinkTree.xml new file mode 100644 index 000000000..e68c714dc --- /dev/null +++ b/1.5/Patches/Core/Core_AnimalThinkTree.xml @@ -0,0 +1,150 @@ + + + /Defs/ThinkTreeDef[defName="Animal"]/thinkRoot/subNodes/li[@Class="ThinkNode_QueuedJob"] + Append + + +
  • + true + +
  • + DraftedOrder + +
  • +
  • + +
  • + + +
    +
    + + /Defs/ThinkTreeDef[defName="Animal"]/thinkRoot/subNodes + Prepend + + +
  • + true + +
  • + +
  • + +
  • + SatisfyingNeeds + +
  • + +
  • + + + + + + +
    +
    + + /Defs/ThinkTreeDef[defName="Animal"]/thinkRoot/subNodes/li[@Class="ThinkNode_ConditionalHasFaction"][1] + Append + + +
  • + true + +
  • + HighPriority + +
  • + LordDuty +
  • + + + + + + +
  • + Animal_PostDuty +
  • +
    +
    + + + /Defs/ThinkTreeDef[defName="Animal"]/thinkRoot/subNodes/li[@Class="ThinkNode_SubtreesByTag"][1] + Prepend + + +
  • + true + + + +
  • + true + true +
  • + + +
  • + SapientAnimal_EmergencyWork +
  • + +
  • + MediumPriority + +
  • + LordDuty +
  • + + + + +
    +
    + + + +
  • + /Defs/ThinkTreeDef[defName="Humanlike"]/thinkRoot/subNodes/li[@Class="ThinkNode_ConditionalPawnKind" and subNodes/li/treeDef="MainWildManBehaviorCore"] + Prepend + +
  • + AnimalisticColonist + true +
  • + + +
  • + /Defs/ThinkTreeDef[defName="Humanlike"]/thinkRoot/subNodes/li[@Class="ThinkNode_ConditionalPawnKind"][./subNodes/li/treeDef[text()="MainWildManBehaviorCore"]] + Prepend + +
  • + +
  • + MainWildManBehaviorCore + true +
  • + + + + +
    +
    + + + /Defs/ThingDef/race[thinkTreeConstant="AnimalConstant"]/thinkTreeConstant + + PM_AnimalConstant + + + + + +
    \ No newline at end of file diff --git a/1.5/Patches/Core/Core_FactionPatches.xml b/1.5/Patches/Core/Core_FactionPatches.xml new file mode 100644 index 000000000..1009e4bc3 --- /dev/null +++ b/1.5/Patches/Core/Core_FactionPatches.xml @@ -0,0 +1,35 @@ + + + + + + +
  • + Defs/FactionDef[defName="Pirate"]/pawnGroupMakers + + +
  • + + Combat + 15 + + 5 + 4 + 4 + 2 + 2 + 10 + 5 + 5 + 10 + 5 + 5 + 5 + +
  • + + + +
    +
    +
    diff --git a/1.5/Patches/Core/Core_FixHarmonizerThought.xml b/1.5/Patches/Core/Core_FixHarmonizerThought.xml new file mode 100644 index 000000000..b020f8ba7 --- /dev/null +++ b/1.5/Patches/Core/Core_FixHarmonizerThought.xml @@ -0,0 +1,13 @@ + + + +
  • Royalty
  • +
    + + /Defs/ThoughtDef[defName="PsychicHarmonization"] + +
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Core/Core_FormerHumanAddon.xml b/1.5/Patches/Core/Core_FormerHumanAddon.xml new file mode 100644 index 000000000..1c98dccca --- /dev/null +++ b/1.5/Patches/Core/Core_FormerHumanAddon.xml @@ -0,0 +1,21 @@ + + + /Defs/ThingDef[@Name="AnimalThingBase"]/comps + + /Defs/ThingDef[@Name="AnimalThingBase"] + + +
  • + + + + + + /Defs/ThingDef[@Name="AnimalThingBase"]/comps + +
  • + + + + + diff --git a/1.5/Patches/Core/Core_KillNarrowHeads.xml b/1.5/Patches/Core/Core_KillNarrowHeads.xml new file mode 100644 index 000000000..f1375bffb --- /dev/null +++ b/1.5/Patches/Core/Core_KillNarrowHeads.xml @@ -0,0 +1,20 @@ + + + /Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/headTypes/li[text()="Male_NarrowNormal"] + + + /Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/headTypes/li[text()="Male_NarrowPointy"] + + + /Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/headTypes/li[text()="Male_NarrowWide"] + + + /Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/headTypes/li[text()="Female_NarrowNormal"] + + + /Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/headTypes/li[text()="Female_NarrowPointy"] + + + /Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/headTypes/li[text()="Female_NarrowWide"] + + diff --git a/1.5/Patches/Core/Core_MutagenicInfections.xml b/1.5/Patches/Core/Core_MutagenicInfections.xml new file mode 100644 index 000000000..99ebe0754 --- /dev/null +++ b/1.5/Patches/Core/Core_MutagenicInfections.xml @@ -0,0 +1,8 @@ + + + /Defs/HediffDef[defName="WoundInfection"]/comps + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Core/Core_StatWorkerPatches.xml b/1.5/Patches/Core/Core_StatWorkerPatches.xml new file mode 100644 index 000000000..856e4dd2c --- /dev/null +++ b/1.5/Patches/Core/Core_StatWorkerPatches.xml @@ -0,0 +1,8 @@ + + + /Defs/StatDef[@Name="MarketValueBase"]/parts + +
  • + + + \ No newline at end of file diff --git a/1.5/Patches/Core_FixEmpireHostility.xml b/1.5/Patches/Core_FixEmpireHostility.xml new file mode 100644 index 000000000..f43938ec0 --- /dev/null +++ b/1.5/Patches/Core_FixEmpireHostility.xml @@ -0,0 +1,14 @@ + + + +
  • Royalty
  • + + + /Defs/FactionDef[defName="Empire"]/permanentEnemyToEveryoneExcept + +
  • PawnmorpherPlayerColony
  • +
  • PawnmorpherEnclave
  • +
    +
    +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Core_HumanColorChannels.xml b/1.5/Patches/Core_HumanColorChannels.xml new file mode 100644 index 000000000..0767d3454 --- /dev/null +++ b/1.5/Patches/Core_HumanColorChannels.xml @@ -0,0 +1,16 @@ + + + Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/colorChannels + +
  • + SkinHair + + skin_1 + + + hair_1 + +
  • +
    +
    +
    \ No newline at end of file diff --git a/1.5/Patches/Core_HumanHedifGraphics.xml b/1.5/Patches/Core_HumanHedifGraphics.xml new file mode 100644 index 000000000..285019172 --- /dev/null +++ b/1.5/Patches/Core_HumanHedifGraphics.xml @@ -0,0 +1,841 @@ + + + Defs/ThingDef[defName="Human"]/alienRace/generalSettings/alienPartGenerator/bodyAddons + +
  • + + false + Muzzle + SkinHair + Parts/None/None + Jaw + true + false + +
  • FullHead
  • + + + + + + -0.328 + + + -0.01 + + + -0.328 + + + +
  • + + false + MuzzleMale + SkinHair + Parts/None/None + Jaw + true + false + true + false + +
  • FullHead
  • + + + + -0.328 + + + -0.01 + + + -0.328 + + + + + +
  • + + false + MuzzleFemale + SkinHair + Parts/None/None + Jaw + true + false + false + true + +
  • FullHead
  • + + + + -0.328 + + + -0.01 + + + -0.328 + + + + + +
  • + + false + BirdJawOrnament + SkinHair + Parts/None/None + Jaw + true + false + false + +
  • FullHead
  • + + + + -0.328 + + + -0.01 + + + -0.328 + + + + + +
  • + + false + Parts/None/None + LeftEar + SkinHair + Ear + left ear + true + true + + +
  • +
  • + + false + Parts/None/None + Ear + left ear + LeftEarBehind + SkinHair + true + false + + +
  • +
  • + + false + Parts/None/None + Ear + right ear + true + true + RightEar + SkinHair + + +
  • +
  • + + false + Parts/None/None + Ear + right ear + true + RightEarBehindHead + SkinHair + false + + +
  • +
  • + + false + Tail + SkinHair + Parts/None/None + tail + true + false + false + true + true + + + + (0,-0.02) + (0,-0.06) + (0,-0.02) + (0,-0.06) + (0,-0.06) + + + + + (0,-0.35) + (0,-0.39) + (0,-0.35) + (0,-0.39) + (0,-0.39) + + + + + (0.2,-0.26) + (0.31,-0.28) + (0.22,-0.26) + (0.4,-0.45) + (0.46,-0.22) + + + + + +
  • +
  • + + false + MaleTail + SkinHair + Parts/None/None + tail + true + false + false + true + false + + + + + (0,-0.02) + (0,-0.06) + (0,-0.02) + (0,-0.06) + (0,-0.06) + + + + + (0,-0.35) + (0,-0.39) + (0,-0.35) + (0,-0.39) + (0,-0.39) + + + + -0.29 + + (0.2,-0.26) + (0.31,-0.28) + (0.22,-0.26) + (0.4,-0.45) + (0.46,-0.22) + + + + + +
  • +
  • + + false + FemaleTail + SkinHair + Parts/None/None + tail + true + false + false + false + true + + + + + (0,-0.02) + (0,-0.06) + (0,-0.02) + (0,-0.06) + (0,-0.06) + + + + + (0,-0.35) + (0,-0.39) + (0,-0.35) + (0,-0.39) + (0,-0.39) + + + + + (0.2,-0.26) + (0.31,-0.28) + (0.22,-0.26) + (0.4,-0.45) + (0.46,-0.22) + + + + + +
  • +
  • + + false + Parts/None/None + BehindBodyTail + SkinHair + tail + false + false + false + + + + (0,-0.18) + (0,-0.22) + (0,-0.18) + (0,-0.22) + (0,-0.22) + + + + + (0,-0.35) + (0,-0.39) + (0,-0.35) + (0,-0.39) + (0,-0.39) + + + + + (0.2,-0.26) + (0.31,-0.28) + (0.22,-0.26) + (0.4,-0.45) + (0.46,-0.22) + + + + + +
  • +
  • + + false + Parts/None/None + tail + true + false + false + BodyExtendingTail + SkinHair + + + + (0,-0.35) + (0,-0.39) + (0,-0.35) + (0,-0.39) + (0,-0.39) + + + + -0.29 + + (0.22,-0.24) + (0.18,-0.31) + (0.17,-0.24) + (0.36,-0.45) + (0.44,-0.27) + + + + + +
  • +
  • + + false + Headspikes + SkinHair + Parts/None/None + Head + true + true + false +
  • +
  • + + false + Skullspike + SkinHair + Parts/None/None + Head + true + true + false + + +
  • +
  • + + false + Horns + SkinHair + Parts/None/None + Skull + true + true + + + 0.1 + + + + + Parts/COMBINATIONS/Hornbill/Hornbill + + +
  • +
  • + + false + CobraHood + SkinHair + Parts/None/None + Head + true + true + false + +
  • UpperHead
  • +
  • FullHead
  • + + + + +
  • + + false + CobraHoodBackground + SkinHair + Parts/None/None + Head + true + false + +
  • UpperHead
  • +
  • FullHead
  • + + + + +
  • + + Udders + SkinHair + false + Parts/None/None + Waist + true + false + + + + (0,-0.05) + (0,-0.21) + (-0.005,-0.06) + + + + + + (0.03,-0.06) + (0.05,0) + (0,-0.21) + (-0.25,-0.09) + + + + + +
  • +
  • + + false + Parts/None/None + Arm + Wings + SkinHair + true + false + + + + + + (0.18,-0.02) + (0.18,-0.02) + (0.18,-0.02) + (0.18,-0.02) + (0.18,-0.02) + + + + + +
  • +
  • + + false + Spines + SkinHair + Parts/None/None + Spine + true + false + + + + + + (-0.06,0) + (0.09,0) + (0.09,0) + + + + + +
  • +
  • + + false + SpinesBehind + SkinHair + Parts/None/None + Spine + false + false + false + + + + (0,0.12) + (0,0.02) + (0,0.12) + (0,0.12) + (-0.005,0.08) + + + + + + + +
  • +
  • + + false + Torso + SkinHair + Parts/None/None + Torso + true + false + false + + + + + + + + (-0.06,0) + (0.09,0) + (0.09,0) + + + + + +
  • +
  • + + false + TorsoBehind + SkinHair + Parts/None/None + Torso + false + false + false + + + + (0,0.12) + (0,0.02) + (0,0.12) + (0,0.12) + (-0.005,0.08) + + + + + + + +
  • +
  • + + Parts/None/None + LeftArm + SkinHair + Arm + left arm + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + + + true +
  • +
  • + + Parts/None/None + LeftArmBehind + SkinHair + Arm + left arm + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + false + + +
  • +
  • + + Parts/None/None + RightArm + SkinHair + Arm + right arm + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + -0.1 + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + true + + +
  • +
  • + + Parts/None/None + RightArmBehind + SkinHair + Arm + right arm + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + (0,0) + (0,0) + (-0,0) + (-0,0) + (-0,0) + + + + + + false +
  • +
  • + + Parts/None/None + LeftEye + SkinHair + Eye + left eye + true + true + + +
  • +
  • + + Parts/None/None + Eye + right eye + RightEye + SkinHair + true + true + + +
  • +
    +
    +
    diff --git a/1.5/Patches/ModAddons/LeeniTest.xml b/1.5/Patches/ModAddons/LeeniTest.xml new file mode 100644 index 000000000..4211ced90 --- /dev/null +++ b/1.5/Patches/ModAddons/LeeniTest.xml @@ -0,0 +1,31 @@ + + + +
  • Leeani Playable Race
  • +
    + + /Defs/AlienRace.ThingDef_AlienRace[defName="Alien_Leeani"] + +
  • + + + +
  • + FoxMorph +
  • + + + +
    +
    +
    +
    \ No newline at end of file diff --git a/About/About.xml b/About/About.xml index 2cf0c1a51..5089973d0 100644 --- a/About/About.xml +++ b/About/About.xml @@ -7,6 +7,7 @@
  • 1.2
  • 1.3
  • 1.4
  • +
  • 1.5
  • Become a mad scientist and unleash the power of mechanite mutagen upon the world. From 276313dd6d63dde013c84021710141dfc133ffbd Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Thu, 14 Mar 2024 16:42:49 +0100 Subject: [PATCH 02/24] WIP 1.5 migration --- .../Esoteria/Abilities/MutationAbility.cs | 2 +- .../Abilities/Skyfallers/FlightSkyFaller.cs | 2 +- .../Pawnmorphs/Esoteria/Aspects/Coloration.cs | 19 +- .../Esoteria/Buildings/MutagenTank.cs | 5 +- .../Esoteria/Chambers/MutaChamber.cs | 7 +- .../Comp_MutagenicFixWorstCondition.cs | 5 +- .../DeathActionWorker_MutagenicExplosion.cs | 3 +- .../DebugUtils/DebugLogUtils.Aliens.cs | 1 + .../DebugLogUtils.FoodOptimizations.cs | 1 + .../DebugLogUtils.FormerHumanLogging.cs | 1 + .../DebugUtils/DebugLogUtils.Hediffs.cs | 1 + .../DebugLogUtils.MutationLogging.cs | 1 + .../DebugLogUtils.ThoughtListing.cs | 1 + .../Esoteria/DebugUtils/DebugLogUtils.cs | 1 + .../DebugUtils/DebugMenu_AddMutation.cs | 7 +- .../DebugUtils/DebugMenu_AddMutations.cs | 8 +- .../Esoteria/DebugUtils/PMDebugActions.cs | 1 + ...awnmorpher_InteractionWeightLogDialogue.cs | 6 +- .../Esoteria/DefOfs/PM_BodyPartDefOf.cs | 29 ++ .../Esoteria/HPatches/DrupPolicyPatches.cs | 2 +- .../Esoteria/HPatches/FoodUtilityPatches.cs | 2 +- .../Esoteria/HPatches/Optional/PawnScaling.cs | 409 +++++++++--------- .../Esoteria/HPatches/PawnGraphicSetPatch.cs | 28 -- .../HPatches/PawnGraphicsSetPatches.cs | 26 +- .../PawnRenderNode_AnimalPartPatch.cs | 28 ++ .../Esoteria/Hediff_AddedMutation.cs | 11 +- .../AddMorphCategoryTfHediff.cs | 2 +- .../IngestionOutcomeDoer_AddAspect.cs | 2 +- .../IngestionOutcomeDoer_AddMorphTf.cs | 2 +- .../IngestionOutcomeDoer_AddRandomAspect.cs | 2 +- .../IngestionOutcomeDoer_BoostSeverity.cs | 2 +- .../IngestionOutcomeDoer_CompleteTF.cs | 2 +- .../IngestionOutcomeDoer_EsotericRevert.cs | 3 +- .../IngestionOutcomeDoer_GiveHediff.cs | 2 +- .../IngestionOutcomeDoer_GiveHediffAll.cs | 2 +- ...tionOutcomeDoer_GiveHediffIfNonePresent.cs | 2 +- .../IngestionOutcomeDoer_GiveHediffRandom.cs | 2 +- .../IngestionOutcomeDoer_RemoveAspect.cs | 2 +- .../Esoteria/Jobs/Driver_MutagenicSow.cs | 2 +- Source/Pawnmorphs/Esoteria/PMTraitDefOf.cs | 2 + Source/Pawnmorphs/Esoteria/Pawnmorph.csproj | 7 +- .../Pawnmorphs/Esoteria/PawnmorphGameComp.cs | 5 +- .../Pawnmorphs/Esoteria/PawnmorphPatches.cs | 4 +- .../AddRandomVeneratedMutation.cs | 11 +- .../Esoteria/TfSys/TransformedPawn.cs | 2 +- .../Esoteria/Things/ExpandedPlant.cs | 2 +- .../UserInterface/Genebank/Tabs/AnimalsTab.cs | 4 +- .../Genebank/Tabs/MutationsTab.cs | 2 +- .../Esoteria/Work/Giver_TransformPrisoner.cs | 4 +- 49 files changed, 367 insertions(+), 310 deletions(-) create mode 100644 Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs delete mode 100644 Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicSetPatch.cs create mode 100644 Source/Pawnmorphs/Esoteria/HPatches/PawnRenderNode_AnimalPartPatch.cs diff --git a/Source/Pawnmorphs/Esoteria/Abilities/MutationAbility.cs b/Source/Pawnmorphs/Esoteria/Abilities/MutationAbility.cs index 131d34eb3..5ef6876a1 100644 --- a/Source/Pawnmorphs/Esoteria/Abilities/MutationAbility.cs +++ b/Source/Pawnmorphs/Esoteria/Abilities/MutationAbility.cs @@ -194,7 +194,7 @@ private void IsDisabled() { string disabledReason = OnIsDisabled(); if (String.IsNullOrWhiteSpace(disabledReason)) - Gizmo.disabled = false; + Gizmo.Disabled = false; else { Gizmo.Disable(disabledReason); diff --git a/Source/Pawnmorphs/Esoteria/Abilities/Skyfallers/FlightSkyFaller.cs b/Source/Pawnmorphs/Esoteria/Abilities/Skyfallers/FlightSkyFaller.cs index 34b465bd8..6017c51da 100644 --- a/Source/Pawnmorphs/Esoteria/Abilities/Skyfallers/FlightSkyFaller.cs +++ b/Source/Pawnmorphs/Esoteria/Abilities/Skyfallers/FlightSkyFaller.cs @@ -27,7 +27,7 @@ public FlightSkyFaller(LocalTargetInfo target) _target = target; } - public override void DrawAt(Vector3 drawLoc, bool flip = false) + protected override void DrawAt(Vector3 drawLoc, bool flip = false) { Pawn pawn = innerContainer[0] as Pawn; diff --git a/Source/Pawnmorphs/Esoteria/Aspects/Coloration.cs b/Source/Pawnmorphs/Esoteria/Aspects/Coloration.cs index ef9fd7a78..d19da2f3c 100644 --- a/Source/Pawnmorphs/Esoteria/Aspects/Coloration.cs +++ b/Source/Pawnmorphs/Esoteria/Aspects/Coloration.cs @@ -116,8 +116,8 @@ public void UpdatePawn() } else { - this.Pawn.Drawer.renderer.graphics.SetAllGraphicsDirty(); - this.Pawn.Drawer.renderer.graphics.ResolveAllGraphics(); + this.Pawn.Drawer.renderer.SetAllGraphicsDirty(); + //this.Pawn.Drawer.renderer.ResolveAllGraphics(); } } else @@ -130,20 +130,21 @@ public void UpdatePawn() /// Apply this coloration to a pawn directly. /// /// Pawn's graphics set - public void TryDirectRecolorAnimal(PawnGraphicSet graphics) + public Graphic TryDirectRecolorAnimal(Graphic graphics) { if (this.Pawn != null && this.Pawn.RaceProps != null && !this.Pawn.RaceProps.Humanlike) { if (ColorSet.skinColor.HasValue || ColorSet.skinColorTwo.HasValue) { - graphics.nakedGraphic = graphics.nakedGraphic.GetColoredVersion(graphics.nakedGraphic.Shader, ColorSet.skinColor.HasValue ? ColorSet.skinColor.Value : graphics.nakedGraphic.color, ColorSet.skinColorTwo.HasValue ? ColorSet.skinColorTwo.Value : graphics.nakedGraphic.colorTwo); - } - if (this.Pawn.IsColonist || this.Pawn.IsColonistAnimal()) - { - PortraitsCache.SetDirty(this.Pawn); - Find.ColonistBar.MarkColonistsDirty(); + return graphics.GetColoredVersion(graphics.Shader, ColorSet.skinColor.HasValue ? ColorSet.skinColor.Value : graphics.color, ColorSet.skinColorTwo.HasValue ? ColorSet.skinColorTwo.Value : graphics.colorTwo); } + //if (this.Pawn.IsColonist || this.Pawn.IsColonistAnimal()) + //{ + // PortraitsCache.SetDirty(this.Pawn); + // Find.ColonistBar.MarkColonistsDirty(); + //} } + return graphics; } /// diff --git a/Source/Pawnmorphs/Esoteria/Buildings/MutagenTank.cs b/Source/Pawnmorphs/Esoteria/Buildings/MutagenTank.cs index 5d7389e5c..045f73b87 100644 --- a/Source/Pawnmorphs/Esoteria/Buildings/MutagenTank.cs +++ b/Source/Pawnmorphs/Esoteria/Buildings/MutagenTank.cs @@ -23,10 +23,11 @@ public class MutagenTank : Building /// /// Draws this instance. /// - public override void Draw() + protected override void DrawAt(Vector3 drawLoc, bool flip = false) { + base.DrawAt(drawLoc, flip); + const float upFactor = 0.05f; - base.Draw(); CompResourceStorage comp = GetComp(); GenDraw.FillableBarRequest r = new GenDraw.FillableBarRequest { diff --git a/Source/Pawnmorphs/Esoteria/Chambers/MutaChamber.cs b/Source/Pawnmorphs/Esoteria/Chambers/MutaChamber.cs index 5f497d640..fe4244199 100644 --- a/Source/Pawnmorphs/Esoteria/Chambers/MutaChamber.cs +++ b/Source/Pawnmorphs/Esoteria/Chambers/MutaChamber.cs @@ -7,6 +7,7 @@ using System.Text; using AlienRace; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Hediffs; using Pawnmorph.TfSys; using Pawnmorph.ThingComps; @@ -264,10 +265,10 @@ private AnimalSelectorComp SelectorComp /// /// Draws this instance. /// - public override void Draw() + protected override void DrawAt(Vector3 drawLoc, bool flip = false) { FillableDrawer?.PreDraw(); - base.Draw(); + base.DrawAt(drawLoc, flip); } @@ -1105,7 +1106,7 @@ private void WindowClosed(Dialog_PartPicker sender, IReadOnlyAddedMutations adde private void UpdateGlow(CompGlower glowerComp, Map map, bool lit) { - map.mapDrawer.MapMeshDirty(Position, MapMeshFlag.Things); + map.mapDrawer.MapMeshDirty(Position, MapMeshFlagDefOf.Things); if (lit) map.glowGrid.RegisterGlower(glowerComp); diff --git a/Source/Pawnmorphs/Esoteria/Comp_MutagenicFixWorstCondition.cs b/Source/Pawnmorphs/Esoteria/Comp_MutagenicFixWorstCondition.cs index dea0e4c6a..5f10913be 100644 --- a/Source/Pawnmorphs/Esoteria/Comp_MutagenicFixWorstCondition.cs +++ b/Source/Pawnmorphs/Esoteria/Comp_MutagenicFixWorstCondition.cs @@ -6,6 +6,7 @@ using System.Linq; using JetBrains.Annotations; using Pawnmorph.DefExtensions; +using Pawnmorph.DefOfs; using Pawnmorph.Hediffs; using RimWorld; using Verse; @@ -43,7 +44,7 @@ public CompProps_MutagenicFixWorstCondition Props } private float HandCoverageAbsWithChildren => - ThingDefOf.Human.race.body.GetPartsWithDef(BodyPartDefOf.Hand).First().coverageAbsWithChildren; + ThingDefOf.Human.race.body.GetPartsWithDef(PM_BodyPartDefOf.Hand).First().coverageAbsWithChildren; /// /// Does the effect. @@ -89,7 +90,7 @@ public override void DoEffect(Pawn usedBy) } Hediff_Injury hediff_Injury2 = FindPermanentInjury(usedBy, from x in usedBy.health.hediffSet.GetNotMissingParts() - where x.def == BodyPartDefOf.Eye + where x.def == PM_BodyPartDefOf.Eye select x); if (hediff_Injury2 != null) { diff --git a/Source/Pawnmorphs/Esoteria/DeathActionWorker_MutagenicExplosion.cs b/Source/Pawnmorphs/Esoteria/DeathActionWorker_MutagenicExplosion.cs index 5101f7f91..b0c5cdb56 100644 --- a/Source/Pawnmorphs/Esoteria/DeathActionWorker_MutagenicExplosion.cs +++ b/Source/Pawnmorphs/Esoteria/DeathActionWorker_MutagenicExplosion.cs @@ -4,6 +4,7 @@ using Pawnmorph.Hediffs; using RimWorld; using Verse; +using Verse.AI.Group; namespace EtherGun { @@ -33,7 +34,7 @@ public class DeathActionWorker_MutagenicExplosion : DeathActionWorker /// called when the attached pawn dies. /// /// The corpse. - public override void PawnDied(Corpse corpse) + public override void PawnDied(Corpse corpse, Lord _) { GenExplosion.DoExplosion(radius: (corpse.InnerPawn.ageTracker.CurLifeStageIndex == 0) ? 2.9f : ((corpse.InnerPawn.ageTracker.CurLifeStageIndex != 1) ? 5.9f : 3.9f), center: corpse.Position, map: corpse.Map, damType: DamageDefOf.Flame, instigator: corpse.InnerPawn); List thingList = GenRadial.RadialDistinctThingsAround(corpse.PositionHeld, corpse.Map, (corpse.InnerPawn.ageTracker.CurLifeStageIndex == 0) ? 2.9f : ((corpse.InnerPawn.ageTracker.CurLifeStageIndex != 1) ? 5.9f : 3.9f), true).ToList(); diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Aliens.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Aliens.cs index e114d44b3..d0cfeb5e3 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Aliens.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Aliens.cs @@ -6,6 +6,7 @@ using System.Text; using AlienRace; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Hediffs; using RimWorld; using Verse; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FoodOptimizations.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FoodOptimizations.cs index 0169103e8..658555509 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FoodOptimizations.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FoodOptimizations.cs @@ -8,6 +8,7 @@ using System.Text; using HarmonyLib; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Utilities; using RimWorld; using UnityEngine; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FormerHumanLogging.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FormerHumanLogging.cs index 5b8080568..13e3496d6 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FormerHumanLogging.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.FormerHumanLogging.cs @@ -7,6 +7,7 @@ using System.Text; using HarmonyLib; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Utilities; using RimWorld; using Verse; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Hediffs.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Hediffs.cs index 9944aa6d8..94ab303e6 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Hediffs.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.Hediffs.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using LudeonTK; using Pawnmorph.Utilities; using Verse; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.MutationLogging.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.MutationLogging.cs index d9747c283..0355e24cf 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.MutationLogging.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.MutationLogging.cs @@ -7,6 +7,7 @@ using System.Text; using HarmonyLib; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Hediffs; using Pawnmorph.Utilities; using RimWorld; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.ThoughtListing.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.ThoughtListing.cs index ba33c6a2f..eab6b4811 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.ThoughtListing.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.ThoughtListing.cs @@ -6,6 +6,7 @@ using System.Text; using HarmonyLib; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Hediffs; using Pawnmorph.Thoughts; using RimWorld; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.cs index bdde017a0..8ae493d67 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugLogUtils.cs @@ -9,6 +9,7 @@ using System.Text; using HarmonyLib; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Chambers; using Pawnmorph.Hediffs; using Pawnmorph.Utilities; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutation.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutation.cs index 8cfc4845a..7aad457a0 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutation.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutation.cs @@ -4,7 +4,9 @@ using System; using System.Collections.Generic; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Hediffs; +using UnityEngine; using Verse; namespace Pawnmorph.DebugUtils @@ -61,12 +63,11 @@ void AddAllMutations() MutationUtilities.AddMutation(_pawn, _mutationDef); } - - protected override void DoListingItems() + protected override void DoListingItems(Rect inRect, float columnWidth) { foreach ((string label, Action action) in GenerateActions()) { - DebugAction(label, action, false); + DebugAction(label, columnWidth, action, false); } } diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutations.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutations.cs index b9be710ee..b6937b59f 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutations.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/DebugMenu_AddMutations.cs @@ -3,7 +3,9 @@ using System.Linq; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Hediffs; +using UnityEngine; using Verse; namespace Pawnmorph.DebugUtils @@ -22,18 +24,18 @@ void AddMutationAction([NotNull] MutationDef mutationDef) Find.WindowStack.Add(new DebugMenu_AddMutation(mutationDef, _pawn)); } - protected override void DoListingItems() + protected override void DoListingItems(Rect inRect, float columnWidth) { var grouping = MutationDef.AllMutations.SelectMany(x => x.ClassInfluences.Select(y => (x, y))).GroupBy(m => m.y, m => m.x); foreach (IGrouping group in grouping) { var label = group.Key.defName; - DoLabel(label); + DebugLabel(label, columnWidth); foreach (MutationDef mutationDef in group) { var mDef = mutationDef; - DebugAction(mDef.defName, () => AddMutationAction(mDef), false); + DebugAction(mDef.defName, columnWidth, () => AddMutationAction(mDef), false); } } } diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs index 3fcd47ba6..806b16d6d 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs @@ -8,6 +8,7 @@ using AlienRace; using HarmonyLib; using JetBrains.Annotations; +using LudeonTK; using Pawnmorph.Chambers; using Pawnmorph.FormerHumans; using Pawnmorph.Genebank.Model; diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/Pawnmorpher_InteractionWeightLogDialogue.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/Pawnmorpher_InteractionWeightLogDialogue.cs index 37075329c..c7724f47d 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/Pawnmorpher_InteractionWeightLogDialogue.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/Pawnmorpher_InteractionWeightLogDialogue.cs @@ -4,8 +4,10 @@ using System.Collections.Generic; using System.Linq; using System.Text; +using LudeonTK; using Pawnmorph.Social; using RimWorld; +using UnityEngine; using Verse; #pragma warning disable 01591 @@ -53,13 +55,13 @@ void ListInteractionWeights(PMInteractionDef def) /// /// Does the listing items. /// - protected override void DoListingItems() + protected override void DoListingItems(Rect inRect, float columnWidth) { if (Current.ProgramState == ProgramState.Playing) { foreach (PMInteractionDef pmInteractionDef in _interactionDefs) { - DebugAction(pmInteractionDef.defName, () => ListInteractionWeights(pmInteractionDef), false); + DebugAction(pmInteractionDef.defName, columnWidth, () => ListInteractionWeights(pmInteractionDef), false); } } } diff --git a/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs b/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs new file mode 100644 index 000000000..c6b3c76d7 --- /dev/null +++ b/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs @@ -0,0 +1,29 @@ +// AnimalClassDefOf.cs modified by Iron Wolf for Pawnmorph on 01/10/2020 5:25 PM +// last updated 01/10/2020 5:25 PM + +using RimWorld; +using Verse; + +#pragma warning disable 1591 + +// ReSharper disable NotNullMemberIsNotInitialized + +namespace Pawnmorph.DefOfs +{ + /// + /// def of for animal classifications + /// + [DefOf] + public static class PM_BodyPartDefOf + { + static PM_BodyPartDefOf() + { + DefOfHelper.EnsureInitializedInCtor(typeof(BodyPartDefOf)); + } + + public static BodyPartDef Jaw; + public static BodyPartDef Head; + public static BodyPartDef Eye; + public static BodyPartDef Hand; + } +} \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/HPatches/DrupPolicyPatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/DrupPolicyPatches.cs index 73e64e61b..274ed980a 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/DrupPolicyPatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/DrupPolicyPatches.cs @@ -7,7 +7,7 @@ namespace Pawnmorph.HPatches { - [HarmonyPatch(typeof(DrugPolicy), nameof(DrugPolicy.InitializeIfNeeded))] + [HarmonyPatch(typeof(DrugPolicy), "InitializeIfNeeded")] static class DrupPolicyPatches { static void Prefix(bool overwriteExisting, ref List ___entriesInt) diff --git a/Source/Pawnmorphs/Esoteria/HPatches/FoodUtilityPatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/FoodUtilityPatches.cs index 937f4e0af..9caae1be7 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/FoodUtilityPatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/FoodUtilityPatches.cs @@ -36,7 +36,7 @@ static bool Prefix(Pawn pawn, FoodPoisonCause cause) } - [HarmonyPatch(typeof(FoodUtility), nameof(FoodUtility.BestFoodSourceOnMap_NewTemp))] + [HarmonyPatch(typeof(FoodUtility), nameof(FoodUtility.BestFoodSourceOnMap))] static class FixBestFoodSourceForFormerHumans { [NotNull] diff --git a/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs b/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs index 0f00286c8..c071f165a 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs @@ -1,204 +1,205 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using AlienRace; -using Pawnmorph.Interfaces; -using Pawnmorph.UserInterface.TreeBox; -using Pawnmorph.Utilities; -using RimWorld; -using UnityEngine; -using Verse; -using static AlienRace.AlienPartGenerator; - -namespace Pawnmorph.HPatches.Optional -{ - [OptionalPatch("PMPawnScalingCaption", "PMPawnScalingDescription", nameof(_enabled), false)] - [HarmonyLib.HarmonyPatch] - class PawnScaling : IConfigurableObject - { - static bool _enabled = false; - static Pawn _currentPawn; - static float _currentScaledBodySize; - static float _scaleMultiplier = 1f; - static float _maxSize = 5f; - static float _minSize = 0.3f; - static bool _useBodysize; - - public string Caption => "PMPawnScalingCaption".Translate(); - - - - [DebugAction(category = "Pawnmorpher", actionType = DebugActionType.Action)] - static void ResetScaleCache() - { - var curMap = Find.CurrentMap; - foreach (Pawn pawn in curMap.mapPawns.AllPawnsSpawned) - { - if (pawn.def.race.Humanlike) - ResolveAllGraphics(pawn); - } - } - - static bool Prepare(MethodBase original) - { - if (original == null && _enabled) - { - StatsUtility.GetEvents(PMStatDefOf.PM_BodySize).StatChanged += PawnScaling_StatChanged; - } - - return _enabled; - } - - // Trigger pawn graphics update at the end of the tick if body size stat changes. - private static void PawnScaling_StatChanged(Verse.Pawn pawn, RimWorld.StatDef stat, float oldValue, float newValue) - { - LongEventHandler.ExecuteWhenFinished(() => - { - _currentPawn = null; - ResolveAllGraphics(pawn); - }); - } - - // Updates all draw sizes on comp to specified size. - private static void SetCompScales(AlienComp comp, Pawn pawn, float bodysize) - { - float sizeOffset = bodysize; - - var partGenerator = (pawn.def as ThingDef_AlienRace).alienRace.generalSettings.alienPartGenerator; - Vector2 sizeOffsetVector = new Vector2(sizeOffset, sizeOffset); - - comp.customDrawSize = partGenerator.customDrawSize * sizeOffsetVector; - comp.customHeadDrawSize = partGenerator.customHeadDrawSize * sizeOffsetVector; - comp.customPortraitDrawSize = partGenerator.customPortraitDrawSize * sizeOffsetVector; - comp.customPortraitHeadDrawSize = partGenerator.customPortraitHeadDrawSize * sizeOffsetVector; - } - - // Override HAR comp scales. - [HarmonyLib.HarmonyPatch(typeof(AlienComp), nameof(AlienComp.PostSpawnSetup)), HarmonyLib.HarmonyPostfix] - private static void PostSpawnSetup(AlienComp __instance) - { - SetCompScales(__instance, (Pawn)__instance.parent, GetScale((Pawn)__instance.parent)); - } - - - [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] - [HarmonyLib.HarmonyPatch(typeof(Verse.PawnGraphicSet), nameof(Verse.PawnGraphicSet.ResolveAllGraphics)), HarmonyLib.HarmonyPostfix] - private static void ResolveAllGraphics(Pawn ___pawn) - { - float bodysize = GetScale(___pawn); - if (bodysize == 1) - return; - - AlienComp comp = CompCacher.GetCompCached(___pawn); - if (comp != null) - { - // Set draw sizes - SetCompScales(comp, ___pawn, bodysize); - }; - } - - // Apply scale to body addon offsets. - [HarmonyLib.HarmonyPatch(typeof(AlienRace.HarmonyPatches), nameof(AlienRace.HarmonyPatches.DrawAddonsFinalHook)), HarmonyLib.HarmonyPostfix] - private static void DrawAddonsFinalHook(Pawn pawn, ref Vector3 offsetVector) - { - float value = GetScale(pawn); - offsetVector.x *= value; - // Don't affect y layer - offsetVector.z *= value; - } - - - [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] - [HarmonyLib.HarmonyPatch(typeof(RimWorld.PawnCacheRenderer), nameof(RimWorld.PawnCacheRenderer.RenderPawn)), HarmonyLib.HarmonyPrefix] - private static void CacheRenderPawnPrefix(Pawn pawn, ref float cameraZoom, bool portrait) - { - if (portrait) - { - cameraZoom *= 1f / GetScale(pawn); - } - } - - [HarmonyLib.HarmonyPatch(typeof(GlobalTextureAtlasManager), nameof(GlobalTextureAtlasManager.TryGetPawnFrameSet)), HarmonyLib.HarmonyPrefix] - private static bool TryGetPawnFrameSetPrefix(Pawn pawn) - { - if (GetScale(pawn) > 1.0f) - return false; - - return true; - } - - - // Calculate the scale multiplier based on Pawnmorpher's BodySize multiplier - // TODO: Add a toggle to allow scaling by any body size difference compared to normal instead - [MethodImpl(MethodImplOptions.AggressiveInlining)] - private static float GetScale(Pawn pawn) - { - if (_currentPawn != pawn) - { - _currentPawn = pawn; - - if (_useBodysize) - { - _currentScaledBodySize = pawn.BodySize / pawn.RaceProps.baseBodySize; - } - else - _currentScaledBodySize = StatsUtility.GetStat(pawn, PMStatDefOf.PM_BodySize, 300) ?? 1f; - - _currentScaledBodySize = Mathf.Sqrt(_currentScaledBodySize); - _currentScaledBodySize = (_currentScaledBodySize - 1) * _scaleMultiplier + 1; - _currentScaledBodySize = Mathf.Clamp(_currentScaledBodySize, _minSize, _maxSize); - } - - return _currentScaledBodySize; - } - - // Offset rendered pawn from actual position to move selection box to their feet. - [HarmonyLib.HarmonyPatch(typeof(Pawn), nameof(Pawn.DrawAt)), HarmonyLib.HarmonyPrefix] - private static void DrawAt(ref Vector3 drawLoc, Pawn __instance) - { - float bodySize = GetScale(__instance); - // Don't offset draw position of animals sprites, and only care about those with more than 1 body size. - if (__instance.RaceProps.Humanlike && bodySize > 1) - { - // Draw location is the full position not an offset, so find offset based on scale assing a ratio of 1 to 1. - // Offset drawn pawn sprite with half the height upward. 1 bodysize = 1 height. - // Only offset when standing. - if (__instance.GetPosture() == RimWorld.PawnPosture.Standing) - { - drawLoc.z += bodySize / 4f; - } - } - } - - // Apply scale offset to head position. - [HarmonyLib.HarmonyPatch(typeof(PawnRenderer), nameof(PawnRenderer.BaseHeadOffsetAt)), HarmonyLib.HarmonyPostfix] - private static void BaseHeadOffsetAt(ref Vector3 __result, Pawn ___pawn) - { - float bodySize = GetScale(___pawn); - if (bodySize == 1) - return; - - float size = Mathf.Floor(bodySize * 10) / 10; - __result.z = __result.z * size; - __result.x = __result.x * size; - } - - public void GenerateMenu(TreeNode_FilterBox node) - { - if (_enabled == false) - return; - - node.AddChild("PMPawnScalingScaleMultiplier", "PMPawnScalingScaleMultiplierTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _scaleMultiplier, new FloatRange(0.5f, 3), _scaleMultiplier.ToStringPercent(), 0.1f)); - node.AddChild("PMPawnScalingMaxScale", "PMPawnScalingMaxScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _maxSize, new FloatRange(1, 5), _maxSize.ToStringPercent(), 0.1f)); - node.AddChild("PMPawnScalingMinScale", "PMPawnScalingMinScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _minSize, new FloatRange(0.3f, 1), _minSize.ToStringPercent(), 0.1f)); - node.AddChild("PMPawnScalingUseBodysize", "PMPawnScalingUseBodysizeTooltip", callback: (in Rect x) => Widgets.Checkbox(x.position, ref _useBodysize)); - } - - public void ExposeData() - { - Scribe_Values.Look(ref _scaleMultiplier, "PM_ScaleMultiplier", 1); - Scribe_Values.Look(ref _maxSize, "PM_maxScale", 5); - Scribe_Values.Look(ref _minSize, "PM_minScale", 0.3f); - Scribe_Values.Look(ref _useBodysize, "PM_useBodysize", false); - } - } -} +//using System.Reflection; +//using System.Runtime.CompilerServices; +//using AlienRace; +//using LudeonTK; +//using Pawnmorph.Interfaces; +//using Pawnmorph.UserInterface.TreeBox; +//using Pawnmorph.Utilities; +//using RimWorld; +//using UnityEngine; +//using Verse; +//using static AlienRace.AlienPartGenerator; + +//namespace Pawnmorph.HPatches.Optional +//{ +// [OptionalPatch("PMPawnScalingCaption", "PMPawnScalingDescription", nameof(_enabled), false)] +// [HarmonyLib.HarmonyPatch] +// class PawnScaling : IConfigurableObject +// { +// static bool _enabled = false; +// static Pawn _currentPawn; +// static float _currentScaledBodySize; +// static float _scaleMultiplier = 1f; +// static float _maxSize = 5f; +// static float _minSize = 0.3f; +// static bool _useBodysize; + +// public string Caption => "PMPawnScalingCaption".Translate(); + + + +// [DebugAction(category = "Pawnmorpher", actionType = DebugActionType.Action)] +// static void ResetScaleCache() +// { +// var curMap = Find.CurrentMap; +// foreach (Pawn pawn in curMap.mapPawns.AllPawnsSpawned) +// { +// if (pawn.def.race.Humanlike) +// ResolveAllGraphics(pawn); +// } +// } + +// static bool Prepare(MethodBase original) +// { +// if (original == null && _enabled) +// { +// StatsUtility.GetEvents(PMStatDefOf.PM_BodySize).StatChanged += PawnScaling_StatChanged; +// } + +// return _enabled; +// } + +// // Trigger pawn graphics update at the end of the tick if body size stat changes. +// private static void PawnScaling_StatChanged(Verse.Pawn pawn, RimWorld.StatDef stat, float oldValue, float newValue) +// { +// LongEventHandler.ExecuteWhenFinished(() => +// { +// _currentPawn = null; +// ResolveAllGraphics(pawn); +// }); +// } + +// // Updates all draw sizes on comp to specified size. +// private static void SetCompScales(AlienComp comp, Pawn pawn, float bodysize) +// { +// float sizeOffset = bodysize; + +// var partGenerator = (pawn.def as ThingDef_AlienRace).alienRace.generalSettings.alienPartGenerator; +// Vector2 sizeOffsetVector = new Vector2(sizeOffset, sizeOffset); + +// comp.customDrawSize = partGenerator.customDrawSize * sizeOffsetVector; +// comp.customHeadDrawSize = partGenerator.customHeadDrawSize * sizeOffsetVector; +// comp.customPortraitDrawSize = partGenerator.customPortraitDrawSize * sizeOffsetVector; +// comp.customPortraitHeadDrawSize = partGenerator.customPortraitHeadDrawSize * sizeOffsetVector; +// } + +// // Override HAR comp scales. +// [HarmonyLib.HarmonyPatch(typeof(AlienComp), nameof(AlienComp.PostSpawnSetup)), HarmonyLib.HarmonyPostfix] +// private static void PostSpawnSetup(AlienComp __instance) +// { +// SetCompScales(__instance, (Pawn)__instance.parent, GetScale((Pawn)__instance.parent)); +// } + +// // Might be able to replace with GraphicMeshSet GetHumanlikeBodySetForPawn +// [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] +// [HarmonyLib.HarmonyPatch(typeof(Verse.PawnGraphicSet), nameof(Verse.PawnGraphicSet.ResolveAllGraphics)), HarmonyLib.HarmonyPostfix] +// private static void ResolveAllGraphics(Pawn ___pawn) +// { +// float bodysize = GetScale(___pawn); +// if (bodysize == 1) +// return; + +// AlienComp comp = CompCacher.GetCompCached(___pawn); +// if (comp != null) +// { +// // Set draw sizes +// SetCompScales(comp, ___pawn, bodysize); +// }; +// } + +// // Apply scale to body addon offsets. +// [HarmonyLib.HarmonyPatch(typeof(AlienRace.HarmonyPatches), nameof(AlienRace.HarmonyPatches.DrawAddonsFinalHook)), HarmonyLib.HarmonyPostfix] +// private static void DrawAddonsFinalHook(Pawn pawn, ref Vector3 offsetVector) +// { +// float value = GetScale(pawn); +// offsetVector.x *= value; +// // Don't affect y layer +// offsetVector.z *= value; +// } + + +// [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] +// [HarmonyLib.HarmonyPatch(typeof(RimWorld.PawnCacheRenderer), nameof(RimWorld.PawnCacheRenderer.RenderPawn)), HarmonyLib.HarmonyPrefix] +// private static void CacheRenderPawnPrefix(Pawn pawn, ref float cameraZoom, bool portrait) +// { +// if (portrait) +// { +// cameraZoom *= 1f / GetScale(pawn); +// } +// } + +// [HarmonyLib.HarmonyPatch(typeof(GlobalTextureAtlasManager), nameof(GlobalTextureAtlasManager.TryGetPawnFrameSet)), HarmonyLib.HarmonyPrefix] +// private static bool TryGetPawnFrameSetPrefix(Pawn pawn) +// { +// if (GetScale(pawn) > 1.0f) +// return false; + +// return true; +// } + + +// // Calculate the scale multiplier based on Pawnmorpher's BodySize multiplier +// // TODO: Add a toggle to allow scaling by any body size difference compared to normal instead +// [MethodImpl(MethodImplOptions.AggressiveInlining)] +// private static float GetScale(Pawn pawn) +// { +// if (_currentPawn != pawn) +// { +// _currentPawn = pawn; + +// if (_useBodysize) +// { +// _currentScaledBodySize = pawn.BodySize / pawn.RaceProps.baseBodySize; +// } +// else +// _currentScaledBodySize = StatsUtility.GetStat(pawn, PMStatDefOf.PM_BodySize, 300) ?? 1f; + +// _currentScaledBodySize = Mathf.Sqrt(_currentScaledBodySize); +// _currentScaledBodySize = (_currentScaledBodySize - 1) * _scaleMultiplier + 1; +// _currentScaledBodySize = Mathf.Clamp(_currentScaledBodySize, _minSize, _maxSize); +// } + +// return _currentScaledBodySize; +// } + +// // Offset rendered pawn from actual position to move selection box to their feet. +// [HarmonyLib.HarmonyPatch(typeof(Pawn), "DrawAt"), HarmonyLib.HarmonyPrefix] +// private static void DrawAt(ref Vector3 drawLoc, Pawn __instance) +// { +// float bodySize = GetScale(__instance); +// // Don't offset draw position of animals sprites, and only care about those with more than 1 body size. +// if (__instance.RaceProps.Humanlike && bodySize > 1) +// { +// // Draw location is the full position not an offset, so find offset based on scale assing a ratio of 1 to 1. +// // Offset drawn pawn sprite with half the height upward. 1 bodysize = 1 height. +// // Only offset when standing. +// if (__instance.GetPosture() == RimWorld.PawnPosture.Standing) +// { +// drawLoc.z += bodySize / 4f; +// } +// } +// } + +// // Apply scale offset to head position. +// [HarmonyLib.HarmonyPatch(typeof(PawnRenderer), nameof(PawnRenderer.BaseHeadOffsetAt)), HarmonyLib.HarmonyPostfix] +// private static void BaseHeadOffsetAt(ref Vector3 __result, Pawn ___pawn) +// { +// float bodySize = GetScale(___pawn); +// if (bodySize == 1) +// return; + +// float size = Mathf.Floor(bodySize * 10) / 10; +// __result.z = __result.z * size; +// __result.x = __result.x * size; +// } + +// public void GenerateMenu(TreeNode_FilterBox node) +// { +// if (_enabled == false) +// return; + +// node.AddChild("PMPawnScalingScaleMultiplier", "PMPawnScalingScaleMultiplierTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _scaleMultiplier, new FloatRange(0.5f, 3), _scaleMultiplier.ToStringPercent(), 0.1f)); +// node.AddChild("PMPawnScalingMaxScale", "PMPawnScalingMaxScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _maxSize, new FloatRange(1, 5), _maxSize.ToStringPercent(), 0.1f)); +// node.AddChild("PMPawnScalingMinScale", "PMPawnScalingMinScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _minSize, new FloatRange(0.3f, 1), _minSize.ToStringPercent(), 0.1f)); +// node.AddChild("PMPawnScalingUseBodysize", "PMPawnScalingUseBodysizeTooltip", callback: (in Rect x) => Widgets.Checkbox(x.position, ref _useBodysize)); +// } + +// public void ExposeData() +// { +// Scribe_Values.Look(ref _scaleMultiplier, "PM_ScaleMultiplier", 1); +// Scribe_Values.Look(ref _maxSize, "PM_maxScale", 5); +// Scribe_Values.Look(ref _minSize, "PM_minScale", 0.3f); +// Scribe_Values.Look(ref _useBodysize, "PM_useBodysize", false); +// } +// } +//} diff --git a/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicSetPatch.cs b/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicSetPatch.cs deleted file mode 100644 index 02a8c072c..000000000 --- a/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicSetPatch.cs +++ /dev/null @@ -1,28 +0,0 @@ -using HarmonyLib; -using Verse; - -namespace Pawnmorph.HPatches -{ - static class PawnGraphicSetPatch - { - - [HarmonyPatch(typeof(PawnGraphicSet), nameof(PawnGraphicSet.ResolveAllGraphics))] - static class ResolveAllGraphicsPatch - { - - [HarmonyPostfix] - static void Postfix(PawnGraphicSet __instance) - { - Pawn pawn = __instance.pawn; - var colorationAspect = pawn?.GetAspectTracker()?.GetAspect(); - if (colorationAspect != null) - { - if (!pawn.RaceProps.Humanlike) - colorationAspect.TryDirectRecolorAnimal(__instance); - } - } - - } - - } -} diff --git a/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicsSetPatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicsSetPatches.cs index 860aa1026..bdecacc02 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicsSetPatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/PawnGraphicsSetPatches.cs @@ -6,18 +6,18 @@ namespace Pawnmorph.HPatches { - [HarmonyPatch(typeof(PawnGraphicSet))] - static class PawnGraphicsSetPatches - { - [HarmonyPatch("ResolveApparelGraphics"), HarmonyPrefix] - static bool FixResolveApparelGraphics(PawnGraphicSet __instance) - { - if (__instance.pawn.apparel == null) - { - return false; - } + //[HarmonyPatch(typeof(PawnGraphicSet))] + //static class PawnGraphicsSetPatches + //{ + // [HarmonyPatch("ResolveApparelGraphics"), HarmonyPrefix] + // static bool FixResolveApparelGraphics(PawnGraphicSet __instance) + // { + // if (__instance.pawn.apparel == null) + // { + // return false; + // } - return true; - } - } + // return true; + // } + //} } \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/HPatches/PawnRenderNode_AnimalPartPatch.cs b/Source/Pawnmorphs/Esoteria/HPatches/PawnRenderNode_AnimalPartPatch.cs new file mode 100644 index 000000000..57f4b8334 --- /dev/null +++ b/Source/Pawnmorphs/Esoteria/HPatches/PawnRenderNode_AnimalPartPatch.cs @@ -0,0 +1,28 @@ +using HarmonyLib; +using Verse; + +namespace Pawnmorph.HPatches +{ + static class PawnRenderNode_AnimalPartPatch + { + + [HarmonyPatch(typeof(PawnRenderNode_AnimalPart), nameof(PawnRenderNode_AnimalPart.GraphicFor))] + static class GraphicForPatch + { + + [HarmonyPostfix] + static void Postfix(Graphic __result, PawnRenderNode_AnimalPart __instance) + { + Pawn pawn = __instance.tree.pawn; + var colorationAspect = pawn?.GetAspectTracker()?.GetAspect(); + if (colorationAspect != null) + { + if (!pawn.RaceProps.Humanlike) + colorationAspect.TryDirectRecolorAnimal(__result); + } + } + + } + + } +} diff --git a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs index f512a7aa3..ee810dbf3 100644 --- a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs +++ b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs @@ -3,6 +3,7 @@ using System.Linq; using System.Text; using JetBrains.Annotations; +using Pawnmorph.DefOfs; using Pawnmorph.GraphicSys; using Pawnmorph.Hediffs; using Pawnmorph.Interfaces; @@ -424,7 +425,7 @@ public void ApplyVisualAdjustment() { if (Def.RemoveComp?.layer == MutationLayer.Core) { - if (Part.def == BodyPartDefOf.Head && pawn.story.hairDef != PMStyleDefOf.PM_HairHidden) + if (Part.def == PM_BodyPartDefOf.Head && pawn.story.hairDef != PMStyleDefOf.PM_HairHidden) { // Hide hair var initialGraphics = pawn.GetComp(); @@ -432,7 +433,7 @@ public void ApplyVisualAdjustment() initialGraphics.HairDef = pawn.story.hairDef; pawn.story.hairDef = PMStyleDefOf.PM_HairHidden; } - else if (Part.def == BodyPartDefOf.Jaw && pawn.style.CanWantBeard && pawn.style.beardDef != PMStyleDefOf.PM_BeardHidden) + else if (Part.def == PM_BodyPartDefOf.Jaw && pawn.style.CanWantBeard && pawn.style.beardDef != PMStyleDefOf.PM_BeardHidden) { // Hide beard var initialGraphics = pawn.GetComp(); @@ -460,12 +461,12 @@ public override void PostRemoved() var initialGraphics = pawn.GetComp(); if (initialGraphics != null) { - if (Part.def == BodyPartDefOf.Head) + if (Part.def == PM_BodyPartDefOf.Head) { // Revert hair pawn.story.hairDef = initialGraphics.HairDef; } - else if (Part.def == BodyPartDefOf.Jaw) + else if (Part.def == PM_BodyPartDefOf.Jaw) { // Revert beard pawn.style.beardDef = initialGraphics.BeardDef; @@ -532,7 +533,7 @@ private void UpdatePawnInfo() && MutationUtilities.AllMutationsWithGraphics.Contains(def) && pawn.IsColonist) { - pawn.Drawer.renderer.graphics.ResolveAllGraphics(); + pawn.Drawer.renderer.SetAllGraphicsDirty(); PortraitsCache.SetDirty(pawn); } } diff --git a/Source/Pawnmorphs/Esoteria/IngestionEffects/AddMorphCategoryTfHediff.cs b/Source/Pawnmorphs/Esoteria/IngestionEffects/AddMorphCategoryTfHediff.cs index ce787a49d..dd64631db 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionEffects/AddMorphCategoryTfHediff.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionEffects/AddMorphCategoryTfHediff.cs @@ -70,7 +70,7 @@ List AllHediffs /// /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { if (pawn?.health == null) return; diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddAspect.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddAspect.cs index 109bb34f7..bac2b19b8 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddAspect.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddAspect.cs @@ -30,7 +30,7 @@ public class IngestionOutcomeDoer_AddAspect : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { var aspectT = pawn.GetAspectTracker(); if (aspectT == null) return; diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddMorphTf.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddMorphTf.cs index 139c0f10b..03e43d87c 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddMorphTf.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddMorphTf.cs @@ -95,7 +95,7 @@ private bool ValidMorph(MorphDef m) /// /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { var tf = TfDefs.RandomElementWithFallback(); if (tf != null) diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddRandomAspect.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddRandomAspect.cs index baa739e8b..3c5fbda52 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddRandomAspect.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_AddRandomAspect.cs @@ -21,7 +21,7 @@ public class IngestionOutcomeDoer_AddRandomAspect : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { if (entries.Count == 0) return; diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_BoostSeverity.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_BoostSeverity.cs index 133cc7252..a3d598462 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_BoostSeverity.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_BoostSeverity.cs @@ -33,7 +33,7 @@ bool PassesFilters(Hediff hediff) /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { var hediffs = pawn.health.hediffSet.hediffs.Where(PassesFilters); foreach (var hediff in hediffs) diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_CompleteTF.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_CompleteTF.cs index 064ac77b8..71ca584de 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_CompleteTF.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_CompleteTF.cs @@ -19,7 +19,7 @@ public class IngestionOutcomeDoer_CompleteTF : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { if (pawn.HasSapienceState()) { diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_EsotericRevert.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_EsotericRevert.cs index 24b7ae29b..3ac7e2af3 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_EsotericRevert.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_EsotericRevert.cs @@ -22,7 +22,8 @@ public class IngestionOutcomeDoer_EsotericRevert : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + /// The ingested amount. + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int ingestedCount) { var gComp = Find.World.GetComponent(); diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediff.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediff.cs index 00fcf001b..18dcb42a3 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediff.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediff.cs @@ -25,7 +25,7 @@ public class IngestionOutcomeDoer_GiveHediff : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { severity = severity < 0 ? hediffDef.initialSeverity : severity; var h = HediffMaker.MakeHediff(hediffDef, pawn); diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs index 4667b2e79..1b676a592 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs @@ -22,7 +22,7 @@ public class IngestionOutcomeDoer_GiveHediffAll : IngestionOutcomeDoer_MultipleT /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { foreach (HediffDef h in AllCompleteDefs.Concat(AllPartialDefs)) { diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs index 776a4f594..7b3417166 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs @@ -34,7 +34,7 @@ public class IngestionOutcomeDoer_GiveHediffIfNonePresent : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { if (!pawn.health.hediffSet.hediffs.Any(x => hediffDefs.Contains(x.def))) { diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs index 293afc47c..0687021ce 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs @@ -25,7 +25,7 @@ public class IngestionOutcomeDoer_GiveHediffRandom : IngestionOutcomeDoer_Multip /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { float completeChance = LoadedModManager.GetMod().GetSettings().partialChance; _scratchList.Clear(); diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_RemoveAspect.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_RemoveAspect.cs index 98f0a145d..82320a76c 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_RemoveAspect.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_RemoveAspect.cs @@ -17,7 +17,7 @@ public class IngestionOutcomeDoer_RemoveAspects : IngestionOutcomeDoer /// Does the ingestion outcome special. /// The pawn. /// The ingested. - protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested) + protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int count) { var aspectT = pawn.GetAspectTracker(); if (aspectT == null) return; diff --git a/Source/Pawnmorphs/Esoteria/Jobs/Driver_MutagenicSow.cs b/Source/Pawnmorphs/Esoteria/Jobs/Driver_MutagenicSow.cs index 6345ae870..fd32a83f2 100644 --- a/Source/Pawnmorphs/Esoteria/Jobs/Driver_MutagenicSow.cs +++ b/Source/Pawnmorphs/Esoteria/Jobs/Driver_MutagenicSow.cs @@ -98,7 +98,7 @@ private void WorkPlant([NotNull] Pawn actor) private void SowPlant(Pawn actor, Plant plantSowed) { plantSowed.Growth = 0.0001f; - Map.mapDrawer.MapMeshDirty(plantSowed.Position, MapMeshFlag.Things); + Map.mapDrawer.MapMeshDirty(plantSowed.Position, MapMeshFlagDefOf.Things); actor.records.Increment(RecordDefOf.PlantsSown); Find.HistoryEventsManager.RecordEvent(new HistoryEvent(HistoryEventDefOf.SowedPlant, actor.Named(HistoryEventArgsNames.Doer))); diff --git a/Source/Pawnmorphs/Esoteria/PMTraitDefOf.cs b/Source/Pawnmorphs/Esoteria/PMTraitDefOf.cs index fd4030706..2266ae5cd 100644 --- a/Source/Pawnmorphs/Esoteria/PMTraitDefOf.cs +++ b/Source/Pawnmorphs/Esoteria/PMTraitDefOf.cs @@ -17,5 +17,7 @@ static PMTraitDefOf() public static TraitDef MutationAffinity; public static TraitDef PM_PridefulTrait; + + public static TraitDef Cannibal; } } \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj index a3ae2f171..4a218f7f1 100644 --- a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj +++ b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj @@ -333,6 +333,7 @@ + @@ -555,7 +556,7 @@ - + @@ -1007,12 +1008,12 @@ - 1.4.3682 + 1.5.4033-beta - 2.2.2 + 2.3.1.1 diff --git a/Source/Pawnmorphs/Esoteria/PawnmorphGameComp.cs b/Source/Pawnmorphs/Esoteria/PawnmorphGameComp.cs index c6861c3a3..06e826828 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorphGameComp.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorphGameComp.cs @@ -6,6 +6,7 @@ using System.Linq; using System.Text; using AlienRace; +using HarmonyLib; using JetBrains.Annotations; using Pawnmorph.Chambers; using Pawnmorph.Hybrids; @@ -96,9 +97,11 @@ private void CheckForBadDrugPolicies() return; } + System.Reflection.MethodInfo initIfNeeded = AccessTools.Method(typeof(DrugPolicy), "InitializeIfNeeded"); + object[] arguments = [true]; foreach (DrugPolicy drugPolicy in drugDB.AllPolicies.MakeSafe()) { - drugPolicy.InitializeIfNeeded(true); + initIfNeeded.Invoke(drugPolicy, arguments); } } diff --git a/Source/Pawnmorphs/Esoteria/PawnmorphPatches.cs b/Source/Pawnmorphs/Esoteria/PawnmorphPatches.cs index 51a552dc8..d0391324d 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorphPatches.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorphPatches.cs @@ -669,7 +669,7 @@ private static void ApplyMorphFoodThoughts(Pawn ingester, Thing foodSource, List AteThought cannibalThought = morphDef.raceSettings?.thoughtSettings?.ateAnimalThought; if (cannibalThought == null) return; if (ingester?.story?.traits == null) return; - bool cannibal = ingester.story.traits.HasTrait(TraitDefOf.Cannibal); + bool cannibal = ingester.story.traits.HasTrait(PMTraitDefOf.Cannibal); if (cannibal == false) { @@ -733,7 +733,7 @@ private static ThoughtDef GetCannibalThought(Pawn ingester, Thing foodSource, Th var ext = ingester.def.GetModExtension(); FoodThoughtSettings foodSettings = ext?.foodThoughtSettings; - bool isCannibal = ingester.story?.traits?.HasTrait(TraitDefOf.Cannibal) ?? false; + bool isCannibal = ingester.story?.traits?.HasTrait(PMTraitDefOf.Cannibal) ?? false; //assign the correct cannibal thoughts, one for pawns without the cannibal trait the other for pawns with it diff --git a/Source/Pawnmorphs/Esoteria/Rituals/AttachableOutcomeEffectWorkers/AddRandomVeneratedMutation.cs b/Source/Pawnmorphs/Esoteria/Rituals/AttachableOutcomeEffectWorkers/AddRandomVeneratedMutation.cs index 474e824c8..0b4fb30d8 100644 --- a/Source/Pawnmorphs/Esoteria/Rituals/AttachableOutcomeEffectWorkers/AddRandomVeneratedMutation.cs +++ b/Source/Pawnmorphs/Esoteria/Rituals/AttachableOutcomeEffectWorkers/AddRandomVeneratedMutation.cs @@ -34,6 +34,7 @@ public class AddRandomVeneratedMutation : RitualAttachableOutcomeEffectWorker /// protected const string MEMBER_TAG = "Member"; + /// /// Applies the effect on the given ritual . /// @@ -43,7 +44,7 @@ public class AddRandomVeneratedMutation : RitualAttachableOutcomeEffectWorker /// The extra outcome desc. /// The letter look targets. /// - public override void Apply(Dictionary totalPresence, LordJob_Ritual jobRitual, OutcomeChance outcome, + public override void Apply(Dictionary totalPresence, LordJob_Ritual jobRitual, RitualOutcomePossibility outcome, out string extraOutcomeDesc, ref LookTargets letterLookTargets) { @@ -115,7 +116,7 @@ public override AcceptanceReport CanApplyNow(Precept_Ritual ritual, Map map) /// The pawn. /// The outcome chance. /// - protected virtual int GetMutationCount([NotNull] Pawn pawn, [NotNull] OutcomeChance outcomeChance) + protected virtual int GetMutationCount([NotNull] Pawn pawn, [NotNull] RitualOutcomePossibility outcomeChance) { return outcomeChance.positivityIndex * Rand.Range(1, 3); } @@ -131,7 +132,7 @@ protected virtual int GetMutationCount([NotNull] Pawn pawn, [NotNull] OutcomeCha /// [NotNull] protected virtual IEnumerable GetMutationsToAdd([NotNull] Pawn target, [NotNull] LordJob_Ritual jobRitual, - [NotNull] OutcomeChance outcome, out ThingDef chosenAnimal) + [NotNull] RitualOutcomePossibility outcome, out ThingDef chosenAnimal) { Ideo ideo = jobRitual.Ritual.ideo; if (ideo == null) @@ -165,7 +166,7 @@ protected virtual IEnumerable GetMutationsToAdd([NotNull] Pawn targ /// The outcome. /// [NotNull] - protected virtual IEnumerable GetTargets([NotNull] LordJob_Ritual jobRitual, [NotNull] OutcomeChance outcome) + protected virtual IEnumerable GetTargets([NotNull] LordJob_Ritual jobRitual, [NotNull] RitualOutcomePossibility outcome) { RitualRole role = jobRitual.GetRole(RoleTags.TARGET_TAG); IEnumerable enumer; @@ -229,7 +230,7 @@ float GetSelectionWeight([NotNull] Pawn p, [NotNull] Ideo ideo) /// /// The ritual. /// The outcome. - protected virtual void InitRitual([NotNull] LordJob_Ritual ritual, [NotNull] OutcomeChance outcome) + protected virtual void InitRitual([NotNull] LordJob_Ritual ritual, [NotNull] RitualOutcomePossibility outcome) { } } diff --git a/Source/Pawnmorphs/Esoteria/TfSys/TransformedPawn.cs b/Source/Pawnmorphs/Esoteria/TfSys/TransformedPawn.cs index 915283aa0..c049def25 100644 --- a/Source/Pawnmorphs/Esoteria/TfSys/TransformedPawn.cs +++ b/Source/Pawnmorphs/Esoteria/TfSys/TransformedPawn.cs @@ -405,7 +405,7 @@ public override bool CanRevert public override void ExposeData() { base.ExposeData(); - Scribe_Collections.Look(ref originals, true, nameof(originals), LookMode.Deep); + Scribe_Collections.Look(ref originals, nameof(originals), true, LookMode.Deep); Scribe_References.Look(ref meld, nameof(meld), true); Scribe_References.Look(ref factionResponsible, nameof(factionResponsible)); } diff --git a/Source/Pawnmorphs/Esoteria/Things/ExpandedPlant.cs b/Source/Pawnmorphs/Esoteria/Things/ExpandedPlant.cs index 641526f68..889c933f6 100644 --- a/Source/Pawnmorphs/Esoteria/Things/ExpandedPlant.cs +++ b/Source/Pawnmorphs/Esoteria/Things/ExpandedPlant.cs @@ -100,7 +100,7 @@ public override void TickLong() //need this copy-paste nonsense because of hardc growthInt += GrowthPerTick * 2000f; if (growthInt > 1f) growthInt = 1f; if ((!wasMature && LifeStage == PlantLifeStage.Mature || (int)(oldGrowthInt * 10f) != (int)(growthInt * 10f)) - && CurrentlyCultivated()) Map.mapDrawer.MapMeshDirty(Position, MapMeshFlag.Things); + && CurrentlyCultivated()) Map.mapDrawer.MapMeshDirty(Position, MapMeshFlagDefOf.Things); } if (!HasEnoughLightToGrow) diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/AnimalsTab.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/AnimalsTab.cs index 235024cce..c3c902aa5 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/AnimalsTab.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/AnimalsTab.cs @@ -100,7 +100,7 @@ public override void GenerateTable(Table table) x.OrderBy(y => int.Parse(y[column].Replace("$", ""))); else x.OrderByDescending(y => int.Parse(y[column].Replace("$", ""))); - });); + }); var colMutations = table.AddColumn(TAB_COLUMN_MUTATIONS, TAB_COLUMN_MUTATIONS_SIZE); //Nutrition requirements? @@ -197,7 +197,7 @@ private void UpdateDetails(IReadOnlyList selectedRows) _stringBuilder.Clear(); foreach (StatDrawEntry item in selectedRace.RaceProps.SpecialDisplayStats(selectedRace.race, StatRequest.ForEmpty())) { - if (item.ShouldDisplay) + if (item.ShouldDisplay()) _stringBuilder.AppendLine(item.LabelCap + ": " + item.ValueString); } diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/MutationsTab.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/MutationsTab.cs index 33065065c..8beb85144 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/MutationsTab.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Genebank/Tabs/MutationsTab.cs @@ -247,7 +247,7 @@ private void SelectStage(int stageIndex) foreach (StatDrawEntry item in Verse.HediffStatsUtility.SpecialDisplayStats(stage, null)) { - if (item.ShouldDisplay) + if (item.ShouldDisplay()) _stringBuilder.AppendLine(item.LabelCap + ": " + item.ValueString); } diff --git a/Source/Pawnmorphs/Esoteria/Work/Giver_TransformPrisoner.cs b/Source/Pawnmorphs/Esoteria/Work/Giver_TransformPrisoner.cs index f3a0c364f..d6b62bd75 100644 --- a/Source/Pawnmorphs/Esoteria/Work/Giver_TransformPrisoner.cs +++ b/Source/Pawnmorphs/Esoteria/Work/Giver_TransformPrisoner.cs @@ -24,7 +24,7 @@ bool EnsurePrisonerIsTransformable([NotNull] Pawn prisoner) if (!MutagenDefOf.MergeMutagen.CanTransform(prisoner)) { Messages.Message(NON_TRANSFORMABLE_PAWN_MESSAGE.Translate(prisoner), prisoner, MessageTypeDefOf.RejectInput); - guest.interactionMode = PrisonerInteractionModeDefOf.NoInteraction; + guest.SetExclusiveInteraction(PrisonerInteractionModeDefOf.MaintainOnly); return false; } @@ -85,7 +85,7 @@ public override Job JobOnThing(Pawn pawn, Thing t, bool forced = false) return null; } - if (guest.interactionMode != PMPrisonerInteractionModeDefOf.PM_Transform) + if (guest.ExclusiveInteractionMode != PMPrisonerInteractionModeDefOf.PM_Transform) { if (logging) Log.Message($"{prisoner.Name} is not set to be transformed"); From 550b93fdfa72bf032e06e031522ce0d95bc4b5ec Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 16 Mar 2024 15:51:46 +0100 Subject: [PATCH 03/24] Updated HAR integration --- ...xml => Core_FormerHumanAddon.xml.disabled} | 0 Source/Dependencies/AlienRace.dll | Bin 307712 -> 325632 bytes .../CompTargetable_TransformableCorpse.cs | 2 +- .../Esoteria/DefOfs/PM_BodyPartDefOf.cs | 2 +- .../Esoteria/DefOfs/PM_ThoughtDefOf.cs | 26 +++ .../Esoteria/Dialogs/ColonistColorPicker.cs | 4 +- .../GameCondition_MutagenicFallout.cs | 2 +- .../Esoteria/Graphics/MorphGraphicsUtils.cs | 3 +- .../Esoteria/HPatches/GizmoPatches.cs | 2 +- .../HediffGiver_Esoteric_RandomList.cs | 2 +- .../Esoteria/Hediffs/Hediff_MutagenicBase.cs | 1 - .../Esoteria/Hybrids/HybridRaceSettings.cs | 9 +- .../Esoteria/Hybrids/RaceGenerator.cs | 36 ++-- .../Esoteria/Hybrids/RaceShiftUtilities.cs | 21 +- .../IngestionOutcomeDoer_GiveHediffAll.cs | 2 +- ...tionOutcomeDoer_GiveHediffIfNonePresent.cs | 2 +- .../IngestionOutcomeDoer_GiveHediffRandom.cs | 2 +- .../Esoteria/Jobs/Driver_ResurrectTf.cs | 2 +- .../Esoteria/Jobs/Driver_SowMutagenicPlant.cs | 2 +- .../Esoteria/Jobs/Driver_TransformPrisoner.cs | 2 +- .../Pawnmorphs/Esoteria/MutationUtilities.cs | 2 +- Source/Pawnmorphs/Esoteria/Pawnmorph.csproj | 3 +- .../Pawnmorphs/Esoteria/PawnmorpherModInit.cs | 48 ++--- Source/Pawnmorphs/Esoteria/SapienceState.cs | 4 +- .../Esoteria/ThingComps/DrawStoredPawnComp.cs | 2 +- .../UserInterface/Dialog_PartPicker.cs | 188 +++++++++--------- .../UserInterface/Preview/HumanlikePreview.cs | 2 +- .../UserInterface/Preview/PawnPreview.cs | 2 +- .../UserInterface/Preview/ThingPreview.cs | 2 +- 29 files changed, 186 insertions(+), 189 deletions(-) rename 1.5/Patches/Core/{Core_FormerHumanAddon.xml => Core_FormerHumanAddon.xml.disabled} (100%) create mode 100644 Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs diff --git a/1.5/Patches/Core/Core_FormerHumanAddon.xml b/1.5/Patches/Core/Core_FormerHumanAddon.xml.disabled similarity index 100% rename from 1.5/Patches/Core/Core_FormerHumanAddon.xml rename to 1.5/Patches/Core/Core_FormerHumanAddon.xml.disabled diff --git a/Source/Dependencies/AlienRace.dll b/Source/Dependencies/AlienRace.dll index 9bc7a11773b86bf2599553186f9a79ff082d9452..5a3129b0fdf3bed99ff0b4aede7edd83e130e735 100644 GIT binary patch literal 325632 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/r91TiSC?~h{hJ=^g>8fuSVISMqW)i(OLqc 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⁣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 literal 307712 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
      ~iVkwIW3=Ju^pTJP=kxa7M?Ng%-JL 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%0DtYlc9b@Qwi&d|plt?iGiX~t+XC7a(6)fK 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%0Ae3=2GJ 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�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 GetTargets(Thing targetChosenByPlayer = null) diff --git a/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs b/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs index c6b3c76d7..8b6b0ae79 100644 --- a/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs +++ b/Source/Pawnmorphs/Esoteria/DefOfs/PM_BodyPartDefOf.cs @@ -11,7 +11,7 @@ namespace Pawnmorph.DefOfs { /// - /// def of for animal classifications + /// def of for body parts /// [DefOf] public static class PM_BodyPartDefOf diff --git a/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs b/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs new file mode 100644 index 000000000..0328f5194 --- /dev/null +++ b/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs @@ -0,0 +1,26 @@ +using RimWorld; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Verse; + +#pragma warning disable 1591 + +namespace Pawnmorph.DefOfs +{ + [DefOf] + public static class PM_ThoughtDefOf + { + static PM_ThoughtDefOf() + { + DefOfHelper.EnsureInitializedInCtor(typeof(ThoughtDef)); + } + + public static ThoughtDef AteHumanlikeMeatDirect; + public static ThoughtDef AteHumanlikeMeatAsIngredient; + public static ThoughtDef ButcheredHumanlikeCorpse; + public static ThoughtDef KnowButcheredHumanlikeCorpse; + } +} diff --git a/Source/Pawnmorphs/Esoteria/Dialogs/ColonistColorPicker.cs b/Source/Pawnmorphs/Esoteria/Dialogs/ColonistColorPicker.cs index 03ff6f68a..4b15b6943 100644 --- a/Source/Pawnmorphs/Esoteria/Dialogs/ColonistColorPicker.cs +++ b/Source/Pawnmorphs/Esoteria/Dialogs/ColonistColorPicker.cs @@ -174,9 +174,9 @@ private Color getOriginalColor(PawnColorSlot slot) switch (slot) { case PawnColorSlot.SkinFirst: - return initialGraphicsComp != null ? initialGraphicsComp.SkinColor : targetPawn.Drawer.renderer.graphics.nakedGraphic.Color; + return initialGraphicsComp != null ? initialGraphicsComp.SkinColor : targetPawn.Drawer.renderer.BodyGraphic.color; case PawnColorSlot.SkinSecond: - return initialGraphicsComp != null ? initialGraphicsComp.SkinColorSecond : targetPawn.Drawer.renderer.graphics.nakedGraphic.ColorTwo; + return initialGraphicsComp != null ? initialGraphicsComp.SkinColorSecond : targetPawn.Drawer.renderer.BodyGraphic.ColorTwo; case PawnColorSlot.HairFirst: return initialGraphicsComp != null ? initialGraphicsComp.HairColor : targetPawn.story.HairColor; case PawnColorSlot.HairSecond: diff --git a/Source/Pawnmorphs/Esoteria/GameCondition_MutagenicFallout.cs b/Source/Pawnmorphs/Esoteria/GameCondition_MutagenicFallout.cs index d7e557b04..24d5c6964 100644 --- a/Source/Pawnmorphs/Esoteria/GameCondition_MutagenicFallout.cs +++ b/Source/Pawnmorphs/Esoteria/GameCondition_MutagenicFallout.cs @@ -53,7 +53,7 @@ public override void GameConditionTick() private void DoPawnsMutagenicDamage(Map map) { - List allPawnsSpawned = map.mapPawns.AllPawnsSpawned; + IReadOnlyList allPawnsSpawned = map.mapPawns.AllPawnsSpawned; var mutagen = def.GetModExtension()?.mutagen ?? MutagenDefOf.defaultMutagen; for (int i = 0; i < allPawnsSpawned.Count; i++) { diff --git a/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs b/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs index 1db02d747..fa1162e9b 100644 --- a/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs +++ b/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs @@ -284,9 +284,8 @@ public static void RefreshGraphics([NotNull] this Pawn pawn) { if (Current.ProgramState != ProgramState.Playing) return; //make sure we don't refresh the graphics while the game is loading - pawn.Drawer.renderer.graphics.ResolveAllGraphics(); + pawn.Drawer.renderer.SetAllGraphicsDirty(); if (pawn.jobs == null) return; //needed for weird bug where jobs is null on initialization - if (pawn.IsColonist) PortraitsCache.SetDirty(pawn); } } } \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/HPatches/GizmoPatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/GizmoPatches.cs index 5d2fbb3a7..c80c1dd39 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/GizmoPatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/GizmoPatches.cs @@ -68,7 +68,7 @@ static bool GetGizmoVisible(bool __result, Gizmo __instance) if (_registeredGizmosMerged.TryGetValue(__instance, out bool merged) && merged) { - __instance.disabled = true; + __instance.Disable(); return false; } diff --git a/Source/Pawnmorphs/Esoteria/HediffGiver_Esoteric_RandomList.cs b/Source/Pawnmorphs/Esoteria/HediffGiver_Esoteric_RandomList.cs index 3dd8a04a7..935530dd0 100644 --- a/Source/Pawnmorphs/Esoteria/HediffGiver_Esoteric_RandomList.cs +++ b/Source/Pawnmorphs/Esoteria/HediffGiver_Esoteric_RandomList.cs @@ -39,7 +39,7 @@ public override void OnIntervalPassed(Pawn pawn, Hediff cause) if (divideByBodySize) num /= pawn.BodySize; - AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num); + AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num, false); hediff.Severity = num; pawn.health.AddHediff(hediff); } diff --git a/Source/Pawnmorphs/Esoteria/Hediffs/Hediff_MutagenicBase.cs b/Source/Pawnmorphs/Esoteria/Hediffs/Hediff_MutagenicBase.cs index 0bb14ab0e..1befb7c70 100644 --- a/Source/Pawnmorphs/Esoteria/Hediffs/Hediff_MutagenicBase.cs +++ b/Source/Pawnmorphs/Esoteria/Hediffs/Hediff_MutagenicBase.cs @@ -357,7 +357,6 @@ protected MutationResult TryMutate() foreach (Hediff_AddedMutation res in mutationResult) //make sure the mutation knows where it came from { //should this be a part of AddMutationAndAspects? so many overloads already, need a good solution - res.source = _causes.GetAllCauses().FirstOrDefault()?.causeDef; res.sourceHediffDef = def; res.Causes.Add(_causes); res.Causes.Add(MutationCauses.HEDIFF_PREFIX, def); diff --git a/Source/Pawnmorphs/Esoteria/Hybrids/HybridRaceSettings.cs b/Source/Pawnmorphs/Esoteria/Hybrids/HybridRaceSettings.cs index c98b8d22c..06272da70 100644 --- a/Source/Pawnmorphs/Esoteria/Hybrids/HybridRaceSettings.cs +++ b/Source/Pawnmorphs/Esoteria/Hybrids/HybridRaceSettings.cs @@ -5,6 +5,7 @@ using System.Collections.Generic; using AlienRace; using JetBrains.Annotations; +using Pawnmorph.DefOfs; using Pawnmorph.Hediffs; using RimWorld; using UnityEngine; @@ -301,10 +302,10 @@ public ThoughtSettings GenerateThoughtSettings(ThoughtSettings humanDefault, Mor { blackList = blackList ?? new List(); - blackList.Add(ThoughtDefOf.AteHumanlikeMeatDirect); - blackList.Add(ThoughtDefOf.AteHumanlikeMeatAsIngredient); - blackList.Add(ThoughtDefOf.ButcheredHumanlikeCorpse); - blackList.Add(ThoughtDefOf.KnowButcheredHumanlikeCorpse); + blackList.Add(PM_ThoughtDefOf.AteHumanlikeMeatDirect); + blackList.Add(PM_ThoughtDefOf.AteHumanlikeMeatAsIngredient); + blackList.Add(PM_ThoughtDefOf.ButcheredHumanlikeCorpse); + blackList.Add(PM_ThoughtDefOf.KnowButcheredHumanlikeCorpse); } if (thoughtSettings.canEatRaw) diff --git a/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs b/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs index faadc3e03..689b2d557 100644 --- a/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs +++ b/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs @@ -99,7 +99,7 @@ private static RaceProperties GenerateHybridProperties([NotNull] RaceProperties meatDef = animal.meatDef, meatLabel = animal.meatLabel, useMeatFrom = animal.useMeatFrom, - deathActionWorkerClass = animal.deathActionWorkerClass, // Boommorphs should explode. + deathAction = animal.deathAction, // Boommorphs should explode. corpseDef = human.corpseDef, packAnimal = animal.packAnimal }; @@ -308,7 +308,7 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum bodyTypes = human.bodyTypes.MakeSafe().ToList(), headTypes = human.headTypes.MakeSafe().ToList(), headOffset = human.headOffset, - headOffsetSpecific = human.headOffsetSpecific, + headOffsetDirectional = human.headOffsetDirectional, bodyAddons = GenerateBodyAddons(human.bodyAddons, morph), colorChannels = human.colorChannels, alienProps = impliedRace @@ -368,7 +368,7 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum foreach (AlienPartGenerator.BodyAddon addon in human) { addon.scaleWithPawnDrawsize = true; - + AlienPartGenerator.BodyAddon temp = new AlienPartGenerator.BodyAddon() { path = addon.path, @@ -378,23 +378,27 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum angle = addon.angle, inFrontOfBody = addon.inFrontOfBody, layerInvert = addon.layerInvert, - drawnOnGround = addon.drawnOnGround, - drawnInBed = addon.drawnInBed, - drawForMale = addon.drawForMale, - drawForFemale = addon.drawForFemale, drawSize = addon.drawSize, variantCount = addon.variantCount, defaultOffset = addon.defaultOffset, defaultOffsets = addon.defaultOffsets, - hediffGraphics = addon.hediffGraphics, - backstoryGraphics = addon.backstoryGraphics, - hiddenUnderApparelFor = addon.hiddenUnderApparelFor, - hiddenUnderApparelTag = addon.hiddenUnderApparelTag, - backstoryRequirement = addon.backstoryRequirement, drawRotated = addon.drawRotated, drawSizePortrait = addon.drawSizePortrait, scaleWithPawnDrawsize = addon.scaleWithPawnDrawsize, - alignWithHead = addon.alignWithHead + alignWithHead = addon.alignWithHead, + allowColorOverride = addon.allowColorOverride, + bodyPartLabel = addon.bodyPartLabel, + colorOverrideOne = addon.colorOverrideOne, + colorOverrideTwo = addon.colorOverrideTwo, + colorPostFactor = addon.colorPostFactor, + conditions = addon.conditions, + extendedGraphics = addon.extendedGraphics, + femaleOffsets = addon.femaleOffsets, + paths = addon.paths, + pathsFallback = addon.pathsFallback, + userCustomizable = addon.userCustomizable, + useSkipFlags = addon.useSkipFlags, + }; if (temp.ColorChannel != addon.ColorChannel) colorChannel.SetValue(temp, addon.ColorChannel); @@ -504,11 +508,11 @@ private static ThingDef_AlienRace.AlienSettings GenerateHybridAlienSettings(Thin private static GraphicPaths GenerateGraphicPaths(GraphicPaths humanGraphicPaths, MorphDef morph, GeneralSettings generalSettings) { GraphicPaths temp = new GraphicPaths(); - - temp.head.headtypeGraphics = new List(); + + temp.head.extendedGraphics = new List(); foreach (HeadTypeDef item2 in DefDatabase.AllDefsListForReading) { - temp.head.headtypeGraphics.Add(new AlienPartGenerator.ExtendedHeadtypeGraphic + temp.head.extendedGraphics.Add(new AlienPartGenerator.ExtendedHeadtypeGraphic { headType = item2, path = item2.graphicPath, diff --git a/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs b/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs index c371701bd..657b12cc8 100644 --- a/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs +++ b/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs @@ -541,7 +541,7 @@ private static void ValidateGenes([NotNull] Pawn pawn, [NotNull] ThingDef_AlienR if (pawn.genes.GetHairColorGene() == null) { Color? hairColor; - GeneDef geneDef2 = PawnHairColors.RandomHairColorGene(pawn.story.SkinColorBase); + GeneDef geneDef2 = PawnHairColors.RandomHairColorGeneFor(pawn); if (geneDef2 != null) { pawn.genes.AddGene(geneDef2, xenogene: false); @@ -605,9 +605,6 @@ private static void ValidateGraphicsPaths([NotNull] Pawn pawn, [NotNull] ThingDe // Regenerate in case target race has different channels. // Default is "skin" and "hair" but might also have "eyes" or "tail" alienComp.ColorChannels.Clear(); - - // Update hair with new hairstyle. - pawn.Drawer.renderer.graphics.CalculateHairMats(); } @@ -687,7 +684,7 @@ static void ReRollRaceTraits(Pawn pawn, ThingDef_AlienRace newRace) var traitsToAdd = allAlienTraits; foreach (AlienChanceEntry alienTraitEntry in traitsToAdd) { - var trait = alienTraitEntry.defName; + var trait = alienTraitEntry.entry; if (traitSet.HasTrait(trait.def)) continue; //don't add traits that are already added var add = (Rand.RangeInclusive(0, 100) <= alienTraitEntry.chance); @@ -706,12 +703,6 @@ static void ReRollRaceTraits(Pawn pawn, ThingDef_AlienRace newRace) { int traitDegree = trait.degree; - // Handle legacy mods. -#pragma warning disable CS0618 // Type or member is obsolete - if (traitDegree == 0) - traitDegree = alienTraitEntry.degree; -#pragma warning restore CS0618 // Type or member is obsolete - // If trait has degrees and the degree is not valid, then get degree of first trait entry. if (trait.def.degreeDatas.Count > 0 && trait.def.degreeDatas.Any(x => x.degree == traitDegree) == false) { @@ -727,15 +718,15 @@ static void ReRollRaceTraits(Pawn pawn, ThingDef_AlienRace newRace) } } - static void UpdateSkillsPostAdd(Pawn pawn, Dictionary skillDict) + static void UpdateSkillsPostAdd(Pawn pawn, IList skillgains) { var skills = pawn.skills; if (skills == null) return; - foreach (KeyValuePair keyValuePair in skillDict) + foreach (SkillGain skill in skillgains) { - var skRecord = skills.GetSkill(keyValuePair.Key); - skRecord.Level += keyValuePair.Value; + var skRecord = skills.GetSkill(skill.skill); + skRecord.Level += skill.amount; } } diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs index 1b676a592..522260c58 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffAll.cs @@ -36,7 +36,7 @@ protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int else num = h.initialSeverity; if (divideByBodySize) num /= pawn.BodySize; - AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num); + AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num, false); hediff.Severity = num; if (hediff is ICaused caused) diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs index 7b3417166..56e953379 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffIfNonePresent.cs @@ -55,7 +55,7 @@ protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int else num = _hediffDef.initialSeverity; if (divideByBodySize) num /= pawn.BodySize; - AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num); + AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num, false); hediff.Severity = num; diff --git a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs index 0687021ce..2bb68753c 100644 --- a/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs +++ b/Source/Pawnmorphs/Esoteria/IngestionOutcomeDoer_GiveHediffRandom.cs @@ -46,7 +46,7 @@ protected override void DoIngestionOutcomeSpecial(Pawn pawn, Thing ingested, int num = hediffDef.initialSeverity; if (divideByBodySize) - AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num); + AddictionUtility.ModifyChemicalEffectForToleranceAndBodySize(pawn, toleranceChemical, ref num, false); hediff.Severity = num; diff --git a/Source/Pawnmorphs/Esoteria/Jobs/Driver_ResurrectTf.cs b/Source/Pawnmorphs/Esoteria/Jobs/Driver_ResurrectTf.cs index 1eb2e75cd..80c40521a 100644 --- a/Source/Pawnmorphs/Esoteria/Jobs/Driver_ResurrectTf.cs +++ b/Source/Pawnmorphs/Esoteria/Jobs/Driver_ResurrectTf.cs @@ -82,7 +82,7 @@ protected override IEnumerable MakeNewToils() private void Resurrect() { Pawn innerPawn = this.Corpse.InnerPawn; - ResurrectionUtility.Resurrect(innerPawn); //make sure pawn is alive again + ResurrectionUtility.TryResurrect(innerPawn); //make sure pawn is alive again var mutagen = MutagenDefOf.defaultMutagen; PawnKindDef animalKind; diff --git a/Source/Pawnmorphs/Esoteria/Jobs/Driver_SowMutagenicPlant.cs b/Source/Pawnmorphs/Esoteria/Jobs/Driver_SowMutagenicPlant.cs index af6068aa8..c77dd0683 100644 --- a/Source/Pawnmorphs/Esoteria/Jobs/Driver_SowMutagenicPlant.cs +++ b/Source/Pawnmorphs/Esoteria/Jobs/Driver_SowMutagenicPlant.cs @@ -88,7 +88,7 @@ private void IncrementSowWork(Pawn actor) private void SowPlant(Plant lPlant, Pawn actor) { lPlant.Growth = 0.0001f; - Map.mapDrawer.MapMeshDirty(lPlant.Position, MapMeshFlag.Things); + Map.mapDrawer.MapMeshDirty(lPlant.Position, MapMeshFlagDefOf.Things); actor.records.Increment(RecordDefOf.PlantsSown); Find.HistoryEventsManager.RecordEvent(new HistoryEvent(HistoryEventDefOf.SowedPlant, actor.Named(HistoryEventArgsNames.Doer))); diff --git a/Source/Pawnmorphs/Esoteria/Jobs/Driver_TransformPrisoner.cs b/Source/Pawnmorphs/Esoteria/Jobs/Driver_TransformPrisoner.cs index 1c4065dad..a6807164b 100644 --- a/Source/Pawnmorphs/Esoteria/Jobs/Driver_TransformPrisoner.cs +++ b/Source/Pawnmorphs/Esoteria/Jobs/Driver_TransformPrisoner.cs @@ -40,7 +40,7 @@ protected override IEnumerable MakeNewToils() { this.FailOnDestroyedOrNull(TargetIndex.A); this.FailOnBurningImmobile(TargetIndex.B); - this.FailOn(() => ((Pawn)(Thing)GetActor().CurJob.GetTarget(TargetIndex.A)).guest.interactionMode != PMPrisonerInteractionModeDefOf.PM_Transform); + this.FailOn(() => ((Pawn)(Thing)GetActor().CurJob.GetTarget(TargetIndex.A)).guest.ExclusiveInteractionMode != PMPrisonerInteractionModeDefOf.PM_Transform); this.FailOnAggroMentalState(TargetIndex.A); yield return Toils_Goto.GotoThing(TargetIndex.A, PathEndMode.ClosestTouch).FailOn(() => !Prisoner.IsPrisonerOfColony || !Prisoner.guest.PrisonerIsSecure).FailOnSomeonePhysicallyInteracting(TargetIndex.A); yield return Toils_Haul.StartCarryThing(TargetIndex.A); diff --git a/Source/Pawnmorphs/Esoteria/MutationUtilities.cs b/Source/Pawnmorphs/Esoteria/MutationUtilities.cs index 30ceae7dc..177d454f5 100644 --- a/Source/Pawnmorphs/Esoteria/MutationUtilities.cs +++ b/Source/Pawnmorphs/Esoteria/MutationUtilities.cs @@ -1128,7 +1128,7 @@ private static IEnumerable GetAllMutationsWithGraphics() List bodyAddons = ((ThingDef_AlienRace)ThingDefOf.Human).alienRace.generalSettings.alienPartGenerator.bodyAddons; var hediffDefs = - bodyAddons.SelectMany(add => add.hediffGraphics ?? Enumerable.Empty()) + bodyAddons.SelectMany(add => add.extendedGraphics.OfType() ?? Enumerable.Empty()) .Select(h => h.hediff); return hediffDefs; diff --git a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj index 4a218f7f1..47e81ca31 100644 --- a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj +++ b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj @@ -334,6 +334,7 @@ + @@ -1008,7 +1009,7 @@ - 1.5.4033-beta + 1.5.4035-beta diff --git a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs index 9e79293cb..d66a7ec64 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs @@ -276,10 +276,10 @@ private static void InjectGraphics() foreach (TaggedBodyAddon addon in dict[anchor]) { - if (addon.hediffGraphics == null) - addon.hediffGraphics = new List(); + if (addon.extendedGraphics == null) + addon.extendedGraphics = new List(); - addon.hediffGraphics.Add(hediffGraphic); + addon.extendedGraphics.Add(hediffGraphic); AppendPools(hediffGraphic, addon); } @@ -298,7 +298,7 @@ private static void AppendPools(HediffGraphic hediffGraphic, BodyAddon addon) { Stack> stack = new Stack>(); AppendPools(addon, hediffGraphic, hediffGraphic); - stack.Push(hediffGraphic.GetSubGraphics()); + stack.Push(hediffGraphic.GetSubGraphics().GetEnumerator()); while (stack.Count > 0) { IEnumerator enumerator = stack.Pop(); @@ -311,7 +311,7 @@ private static void AppendPools(HediffGraphic hediffGraphic, BodyAddon addon) } AppendPools(addon, hediffGraphic, current); - stack.Push(current.GetSubGraphics()); + stack.Push(current.GetSubGraphics().GetEnumerator()); //Log.Warning($"No hediff graphics found at {hediffGraphic.path} at severity {hediffGraphic.severity} for hediff {hediffGraphic.hediff} in "); } } @@ -372,16 +372,7 @@ private static HediffGraphic GenerateGraphicsFor([NotNull] List m // If no graphics are defined on stage then default to whatever is set on mutation. stageGraphics = new MutationStageGraphicsData(); stageGraphics.path = hGraphic.path; - stageGraphics.hediffGraphics = hGraphic.hediffGraphics; - stageGraphics.backstoryGraphics = hGraphic.backstoryGraphics; - stageGraphics.ageGraphics = hGraphic.ageGraphics; - stageGraphics.damageGraphics = hGraphic.damageGraphics; - stageGraphics.genderGraphics = hGraphic.genderGraphics; - stageGraphics.traitGraphics = hGraphic.traitGraphics; - stageGraphics.bodytypeGraphics = hGraphic.bodytypeGraphics; - stageGraphics.headtypeGraphics = hGraphic.headtypeGraphics; - stageGraphics.geneGraphics = hGraphic.geneGraphics; - stageGraphics.raceGraphics = hGraphic.raceGraphics; + stageGraphics.extendedGraphics = hGraphic.extendedGraphics; } stageGraphics.severity = stage.minSeverity; @@ -508,9 +499,9 @@ private static void CheckDefaultOffsets([NotNull] ThingDef_AlienRace aRace, [Not var addons = ((ThingDef_AlienRace)ThingDefOf.Human).alienRace.generalSettings.alienPartGenerator.bodyAddons.MakeSafe(); foreach (AlienPartGenerator.BodyAddon bodyAddon in addons) { - if (bodyAddon.hediffGraphics == null || bodyAddon.hediffGraphics.Count == 0) continue; + if (bodyAddon.extendedGraphics == null || bodyAddon.extendedGraphics.Count == 0) continue; bool found = false; - foreach (var hDef in bodyAddon.hediffGraphics.Select(h => h.hediff)) + foreach (var hDef in bodyAddon.extendedGraphics.OfType().Select(h => h.hediff)) { if (hDef == null) continue; if (hDef is MutationDef) //make sure we only grab addons that are mutations @@ -570,8 +561,8 @@ private static void AddAddonsToRace([NotNull] ThingDef_AlienRace race, [NotNull] continue; } - var cpy = CloneAddon(bodyAddon); - partGen.bodyAddons.Add(cpy); + //var cpy = CloneAddon(bodyAddon); + partGen.bodyAddons.Add(bodyAddon); } } @@ -588,35 +579,20 @@ static AlienPartGenerator.BodyAddon CloneAddon([NotNull] AlienPartGenerator.Body { anchorID = aID, angle = addon.angle, - backstoryGraphics = addon.backstoryGraphics.MakeSafe().ToList(), - backstoryRequirement = addon.backstoryRequirement, bodyPart = addon.bodyPart, debug = addon.debug, - drawForFemale = addon.drawForFemale, - drawForMale = addon.drawForMale, - drawnInBed = addon.drawnInBed, - drawnOnGround = addon.drawnOnGround, drawSize = addon.drawSize, - hiddenUnderApparelFor = addon.hiddenUnderApparelFor.MakeSafe().ToList(), path = addon.path, offsets = addon.offsets ?? new AlienPartGenerator.DirectionalOffset(), linkVariantIndexWithPrevious = addon.linkVariantIndexWithPrevious, inFrontOfBody = addon.inFrontOfBody, layerInvert = addon.layerInvert, variantCount = addon.variantCount, - hediffGraphics = addon.hediffGraphics.MakeSafe().ToList(), - ageGraphics = addon.ageGraphics.MakeSafe().ToList(), - damageGraphics = addon.damageGraphics.MakeSafe().ToList(), - bodytypeGraphics = addon.bodytypeGraphics.MakeSafe().ToList(), - genderGraphics = addon.genderGraphics.MakeSafe().ToList(), - headtypeGraphics = addon.headtypeGraphics.MakeSafe().ToList(), - traitGraphics = addon.traitGraphics.MakeSafe().ToList(), alignWithHead = addon.alignWithHead, ColorChannel = addon.ColorChannel, - - - hiddenUnderApparelTag = addon.hiddenUnderApparelTag, + + conditions = addon.conditions, defaultOffsets = addon.defaultOffsets, defaultOffset = addon.defaultOffset, drawSizePortrait = addon.drawSizePortrait, diff --git a/Source/Pawnmorphs/Esoteria/SapienceState.cs b/Source/Pawnmorphs/Esoteria/SapienceState.cs index c218d8a29..b85d0fa5a 100644 --- a/Source/Pawnmorphs/Esoteria/SapienceState.cs +++ b/Source/Pawnmorphs/Esoteria/SapienceState.cs @@ -142,9 +142,9 @@ public void Init([NotNull] SapienceTracker sapienceTracker) protected void MakeFeral() { var restriction = Pawn.foodRestriction; - var curRestriction = restriction?.CurrentFoodRestriction; + var curRestriction = restriction?.CurrentFoodPolicy; if (curRestriction == null) return; - restriction.CurrentFoodRestriction = null; + restriction.CurrentFoodPolicy = null; } internal void SetDef([NotNull] SapienceStateDef def) diff --git a/Source/Pawnmorphs/Esoteria/ThingComps/DrawStoredPawnComp.cs b/Source/Pawnmorphs/Esoteria/ThingComps/DrawStoredPawnComp.cs index 30dc0f5e1..19be91a02 100644 --- a/Source/Pawnmorphs/Esoteria/ThingComps/DrawStoredPawnComp.cs +++ b/Source/Pawnmorphs/Esoteria/ThingComps/DrawStoredPawnComp.cs @@ -22,7 +22,7 @@ public override void PostDraw() if (pawn != null) { pawn.Rotation = Rot4.South; - pawn.DrawAt(GenThing.TrueCenter(parent.Position, Rot4.South, parent.def.size, Props.Altitude) + Offset); + pawn.DrawNowAt(GenThing.TrueCenter(parent.Position, Rot4.South, parent.def.size, Props.Altitude) + Offset); } } } diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs index 9706bad37..d58e1156f 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs @@ -960,100 +960,100 @@ public void SetPawnPreview() // Taken from RenderingTool.RenderPawnInternal in CharacterEditor private void RenderPawn() { - Color? hybridColor = CalculatePawnSkin(); - - if (hybridColor.HasValue) - alienComp.ColorChannels["skin"].first = hybridColor.Value; - else - { - alienComp.ColorChannels["skin"].first = initialPawnColors.Item1; - alienComp.ColorChannels["skin"].second = initialPawnColors.Item2; - } - alienComp.CompTick(); - - PawnGraphicSet graphics = pawn.Drawer.renderer.graphics; - graphics.ResolveAllGraphics(); - - Quaternion quaternion = Quaternion.AngleAxis(0f, Vector3.up); - - Mesh bodyMesh = HumanlikeMeshPoolUtility.GetHumanlikeBodySetForPawn(pawn).MeshAt(previewRot); - Vector3 bodyOffset = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + 0.007575758f, 0f); - - foreach (Material mat in graphics.MatsBodyBaseAt(previewRot, false)) - { - Material damagedMat = graphics.flasher.GetDamagedMat(mat); - GenDraw.DrawMeshNowOrLater(bodyMesh, bodyOffset, quaternion, damagedMat, false); - bodyOffset.y += 0.00390625f; - if (!toggleClothesEnabled) - { - break; - } - } - Vector3 vector3 = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + (previewRot == Rot4.North ? 0.026515152f : 0.022727273f), 0f); - Vector3 vector4 = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + (previewRot == Rot4.North ? 0.022727273f : 0.026515152f), 0f); - if (graphics.headGraphic != null) - { - Mesh mesh2 = HumanlikeMeshPoolUtility.GetHumanlikeHeadSetForPawn(pawn).MeshAt(previewRot); - Vector3 headOffset = quaternion * pawn.Drawer.renderer.BaseHeadOffsetAt(previewRot); - Material material = graphics.HeadMatAt(previewRot); - - GenDraw.DrawMeshNowOrLater(mesh2, vector4 + headOffset, quaternion, material, false); - - Mesh hairMesh = HumanlikeMeshPoolUtility.GetHumanlikeHairSetForPawn(pawn).MeshAt(previewRot); - Vector3 hairOffset = new Vector3(PREVIEW_POSITION_X + headOffset.x, pawn.Position.y + 0.030303031f, headOffset.z); - bool isWearingHat = false; - if (toggleClothesEnabled) - { - foreach (ApparelGraphicRecord apparel in graphics.apparelGraphics) - { - if (apparel.sourceApparel.def.apparel.LastLayer == ApparelLayerDefOf.Overhead) - { - Material hatMat = graphics.flasher.GetDamagedMat(apparel.graphic.MatAt(previewRot)); - if (apparel.sourceApparel.def.apparel.hatRenderedFrontOfFace) - { - isWearingHat = true; - hairOffset.y += 0.03f; - GenDraw.DrawMeshNowOrLater(hairMesh, hairOffset, quaternion, hatMat, false); - } - else - { - Vector3 hatOffset = new Vector3(PREVIEW_POSITION_X + headOffset.x, pawn.Position.y + (previewRot == Rot4.North ? 0.003787879f : 0.03409091f), headOffset.z); - GenDraw.DrawMeshNowOrLater(hairMesh, hatOffset, quaternion, hatMat, false); - } - } - } - } - if (!isWearingHat) - { - // Draw hair - Material hairMat = graphics.HairMatAt(previewRot); - GenDraw.DrawMeshNowOrLater(hairMesh, hairOffset, quaternion, hairMat, false); - } - } - if (toggleClothesEnabled) - { - foreach (ApparelGraphicRecord graphicsSet in graphics.apparelGraphics) - { - if (graphicsSet.sourceApparel.def.apparel.LastLayer == ApparelLayerDefOf.Shell) - { - Material clothingMat = graphics.flasher.GetDamagedMat(graphicsSet.graphic.MatAt(previewRot)); - GenDraw.DrawMeshNowOrLater(bodyMesh, vector3, quaternion, clothingMat, false); - } - } - } - - Vector3 hOffset = quaternion * pawn.Drawer.renderer.BaseHeadOffsetAt(previewRot); - HarmonyPatches.DrawAddons(PawnRenderFlags.Clothes, vector3, hOffset, pawn, quaternion, previewRot); - if (toggleClothesEnabled) - { - if (pawn.apparel != null) - { - foreach (Apparel apparel in pawn.apparel.WornApparel) - { - apparel.DrawWornExtras(); - } - } - } + //Color? hybridColor = CalculatePawnSkin(); + + //if (hybridColor.HasValue) + // alienComp.ColorChannels["skin"].first = hybridColor.Value; + //else + //{ + // alienComp.ColorChannels["skin"].first = initialPawnColors.Item1; + // alienComp.ColorChannels["skin"].second = initialPawnColors.Item2; + //} + //alienComp.CompTick(); + + //PawnGraphicSet graphics = pawn.Drawer.renderer.graphics; + //graphics.ResolveAllGraphics(); + + //Quaternion quaternion = Quaternion.AngleAxis(0f, Vector3.up); + + //Mesh bodyMesh = HumanlikeMeshPoolUtility.GetHumanlikeBodySetForPawn(pawn).MeshAt(previewRot); + //Vector3 bodyOffset = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + 0.007575758f, 0f); + + //foreach (Material mat in graphics.MatsBodyBaseAt(previewRot, false)) + //{ + // Material damagedMat = graphics.flasher.GetDamagedMat(mat); + // GenDraw.DrawMeshNowOrLater(bodyMesh, bodyOffset, quaternion, damagedMat, false); + // bodyOffset.y += 0.00390625f; + // if (!toggleClothesEnabled) + // { + // break; + // } + //} + //Vector3 vector3 = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + (previewRot == Rot4.North ? 0.026515152f : 0.022727273f), 0f); + //Vector3 vector4 = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + (previewRot == Rot4.North ? 0.022727273f : 0.026515152f), 0f); + //if (graphics.headGraphic != null) + //{ + // Mesh mesh2 = HumanlikeMeshPoolUtility.GetHumanlikeHeadSetForPawn(pawn).MeshAt(previewRot); + // Vector3 headOffset = quaternion * pawn.Drawer.renderer.BaseHeadOffsetAt(previewRot); + // Material material = graphics.HeadMatAt(previewRot); + + // GenDraw.DrawMeshNowOrLater(mesh2, vector4 + headOffset, quaternion, material, false); + + // Mesh hairMesh = HumanlikeMeshPoolUtility.GetHumanlikeHairSetForPawn(pawn).MeshAt(previewRot); + // Vector3 hairOffset = new Vector3(PREVIEW_POSITION_X + headOffset.x, pawn.Position.y + 0.030303031f, headOffset.z); + // bool isWearingHat = false; + // if (toggleClothesEnabled) + // { + // foreach (ApparelGraphicRecord apparel in graphics.apparelGraphics) + // { + // if (apparel.sourceApparel.def.apparel.LastLayer == ApparelLayerDefOf.Overhead) + // { + // Material hatMat = graphics.flasher.GetDamagedMat(apparel.graphic.MatAt(previewRot)); + // if (apparel.sourceApparel.def.apparel.hatRenderedFrontOfFace) + // { + // isWearingHat = true; + // hairOffset.y += 0.03f; + // GenDraw.DrawMeshNowOrLater(hairMesh, hairOffset, quaternion, hatMat, false); + // } + // else + // { + // Vector3 hatOffset = new Vector3(PREVIEW_POSITION_X + headOffset.x, pawn.Position.y + (previewRot == Rot4.North ? 0.003787879f : 0.03409091f), headOffset.z); + // GenDraw.DrawMeshNowOrLater(hairMesh, hatOffset, quaternion, hatMat, false); + // } + // } + // } + // } + // if (!isWearingHat) + // { + // // Draw hair + // Material hairMat = graphics.HairMatAt(previewRot); + // GenDraw.DrawMeshNowOrLater(hairMesh, hairOffset, quaternion, hairMat, false); + // } + //} + //if (toggleClothesEnabled) + //{ + // foreach (ApparelGraphicRecord graphicsSet in graphics.apparelGraphics) + // { + // if (graphicsSet.sourceApparel.def.apparel.LastLayer == ApparelLayerDefOf.Shell) + // { + // Material clothingMat = graphics.flasher.GetDamagedMat(graphicsSet.graphic.MatAt(previewRot)); + // GenDraw.DrawMeshNowOrLater(bodyMesh, vector3, quaternion, clothingMat, false); + // } + // } + //} + + //Vector3 hOffset = quaternion * pawn.Drawer.renderer.BaseHeadOffsetAt(previewRot); + //HarmonyPatches.DrawAddons(PawnRenderFlags.Clothes, vector3, hOffset, pawn, quaternion, previewRot); + //if (toggleClothesEnabled) + //{ + // if (pawn.apparel != null) + // { + // foreach (Apparel apparel in pawn.apparel.WornApparel) + // { + // apparel.DrawWornExtras(); + // } + // } + //} } internal void InitCamera() diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Preview/HumanlikePreview.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Preview/HumanlikePreview.cs index 1e6ee3587..2309d84aa 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Preview/HumanlikePreview.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Preview/HumanlikePreview.cs @@ -85,7 +85,7 @@ protected override void OnRefresh() if (_pawn == null) return; - _pawn.Drawer.renderer.graphics.ResolveAllGraphics(); + _pawn.Drawer.renderer.renderTree.SetDirty(); } /// diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Preview/PawnPreview.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Preview/PawnPreview.cs index ef07f174a..c84fdd022 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Preview/PawnPreview.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Preview/PawnPreview.cs @@ -65,7 +65,7 @@ protected override void OnRefresh() if (_pawn == null) return; - _pawn.Drawer.renderer.graphics.ResolveAllGraphics(); + _pawn.Drawer.renderer.SetAllGraphicsDirty(); } } } diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Preview/ThingPreview.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Preview/ThingPreview.cs index bbf21a6c5..fe449926b 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Preview/ThingPreview.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Preview/ThingPreview.cs @@ -24,7 +24,7 @@ protected override void OnDraw(Vector3 drawPosition) return; _thing.Rotation = _rotation; - _thing.DrawAt(drawPosition); + _thing.DrawNowAt(drawPosition); } protected override void OnRefresh() From 532117ee84a4aa9b667f4b9aaad154432465bfb5 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 16 Mar 2024 19:00:01 +0100 Subject: [PATCH 04/24] Removed mod integrations from 1.4 --- .../Patches/AddToMorphs.xml | 68 - .../Defs/Ammo/40x46mmGrenade.xml | 75 - .../CombatExtended/Defs/Ammo/68Mutagel.xml | 107 -- 1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml | 85 -- .../CombatExtended/Defs/Ammo/GreatArrows.xml | 69 - .../Defs/AmmoCategories_Mutagenic.xml | 22 - .../Patches/Addon_CombatExtendedAnimals.xml | 1216 ----------------- .../Patches/Addon_CombatExtendedFactions.xml | 12 - .../Patches/Addon_CombatExtendedMutations.xml | 1117 --------------- .../Patches/Addon_CombatExtendedPawnKinds.xml | 445 ------ .../Patches/Addon_CombatExtendedRaces.xml | 61 - .../Patches/Addon_CombatExtendedResources.xml | 58 - .../Patches/Addon_CombatExtendedScenarios.xml | 29 - .../Addon_CombatExtendedWeaponsMelee.xml | 267 ---- .../Addon_CombatExtendedWeaponsRanged.xml | 642 --------- .../Patches/Saddles_Chaocreatures.xml | 137 -- 1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml | 161 --- 1.5/Mods/Martens/Defs/Aspects.xml | 21 - 1.5/Mods/Martens/Defs/Marten/Marten_Full.xml | 88 -- .../Martens/Defs/Marten/Marten_Memories.xml | 57 - .../Martens/Defs/Marten/Marten_MorphDef.xml | 42 - .../Martens/Defs/Marten/Marten_Partial.xml | 34 - 1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml | 168 --- 1.5/Mods/Martens/Defs/Races.xml | 168 --- 1.5/Mods/Martens/Patches/Addpaws.xml | 8 - 1.5/Mods/RemoteTech/Defs/Things.xml | 106 -- .../RimCuisine2/Patches/Addon_RimCuisine2.xml | 29 - 1.5/Mods/VBE/Defs/Backgrounds.xml | 9 - 1.5/Mods/VCE/Defs/Recipes.xml | 54 - 1.5/Mods/VCE/Defs/Things.xml | 58 - 1.5/Mods/VCE/Defs/Thoughts.xml | 31 - 1.5/Mods/VCE/Patches/Patch.xml | 10 - 1.5/Mods/VEF/Defs/ModDef.xml | 13 - .../Defs/Leopardine/Leopard/Leopard_Full.xml | 78 -- .../Leopardine/Leopard/Leopard_Memories.xml | 30 - .../Leopardine/Leopard/Leopard_MorphDef.xml | 17 - .../Leopardine/Leopard/Leopard_Partial.xml | 34 - .../Defs/Leopardine/Leopard/Leopard_Parts.xml | 19 - .../Defs/Leopardine/Leopardine_Memories.xml | 29 - .../Defs/Leopardine/Leopardine_MorphDef.xml | 10 - .../Defs/Leopardine/Leopardine_Parts.xml | 41 - .../SnowLeopard/SnowLeopard_Full.xml | 78 -- .../SnowLeopard/SnowLeopard_Memories.xml | 28 - .../SnowLeopard/SnowLeopard_MorphDef.xml | 20 - .../SnowLeopard/SnowLeopard_Partial.xml | 34 - .../SnowLeopard/SnowLeopard_Parts.xml | 19 - .../Patches/zLoadLast_Addon_Leopard.xml | 40 - 47 files changed, 5944 deletions(-) delete mode 100644 1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml delete mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml delete mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml delete mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml delete mode 100644 1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml delete mode 100644 1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml delete mode 100644 1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml delete mode 100644 1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml delete mode 100644 1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml delete mode 100644 1.5/Mods/Martens/Defs/Aspects.xml delete mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Full.xml delete mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml delete mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml delete mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml delete mode 100644 1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml delete mode 100644 1.5/Mods/Martens/Defs/Races.xml delete mode 100644 1.5/Mods/Martens/Patches/Addpaws.xml delete mode 100644 1.5/Mods/RemoteTech/Defs/Things.xml delete mode 100644 1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml delete mode 100644 1.5/Mods/VBE/Defs/Backgrounds.xml delete mode 100644 1.5/Mods/VCE/Defs/Recipes.xml delete mode 100644 1.5/Mods/VCE/Defs/Things.xml delete mode 100644 1.5/Mods/VCE/Defs/Thoughts.xml delete mode 100644 1.5/Mods/VCE/Patches/Patch.xml delete mode 100644 1.5/Mods/VEF/Defs/ModDef.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml delete mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml delete mode 100644 1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml diff --git a/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml b/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml deleted file mode 100644 index b6543be61..000000000 --- a/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - - Defs/ThingDef[@Name="PMChaocreatureBase"]/recipes - - Defs/ThingDef[@Name="PMChaocreatureBase" or - @ParentName="PMChaocreatureBase" or - @ParentName="PMChaomorphBase" or - @ParentName="PMSpecialChaomorphBase" or - @ParentName="PMChaomeldBase"] - - - - - - - - - -
    1. - Defs/ThingDef[@Name="PMChaocreatureBase"]/recipes - -
    2. InstallBionicAnimalStomach
    3. -
    4. InstallBionicAnimalKidney
    5. -
    6. InstallBionicAnimalLiver
    7. -
    8. InstallBionicAnimalLung
    9. -
    10. InstallBionicAnimalHeart
    11. -
    12. InstallAnimalBrainStimulator
    13. -
    14. InstallSpineAnimalBionic
    15. -
    16. InstallSpineAnimalSimple
    17. -
    18. InstallJawAnimalBionic
    19. -
    20. InstallJawAnimalSimple
    21. -
    22. InstallNoseAnimalSimple
    23. -
    24. InstallBionicEyeAnimal
    25. -
    26. InstallEarAnimalSimple
    27. -
    28. InstallEarAnimalBionic
    29. -
    30. InstallPegLegAnimal
    31. -
    32. InstallSimpleProstheticLegAnimal
    33. -
    34. InstallBionicLegAnimal
    35. - - - -
    36. - Defs/ThingDef[defName="Chaodino"]/recipes - -
    37. InstallSimpleProstheticTailAnimal
    38. - - - -
    39. - Defs/ThingDef[defName="Chaoboar" - or defName="Chaodino"]/recipes - -
    40. InstallSimpleProstheticArmAnimal
    41. -
    42. InstallBionicArmAnimal
    43. - - - -
    44. - Defs/HediffDef[@Name="addedPartAnimal"] - - true - -
    45. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml b/1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml deleted file mode 100644 index bf7987307..000000000 --- a/1.5/Mods/CombatExtended/Defs/Ammo/40x46mmGrenade.xml +++ /dev/null @@ -1,75 +0,0 @@ - - - - - Ammo_40x46mmGrenade_Mutagenic - - - Things/Ammo/GrenadeLauncher/Mutagenic - Graphic_StackCount - - - 2.16 - - GrenadeMutagenic - 0 - Bullet_40x46mmGrenade_Mutagenic - - - - Bullet_40x46mmGrenade_Mutagenic - - - 2 - MutagenCloud - Gas_Mutagen - 1 - PM_Filth_Slurry - 0.8 - - - - - MakeAmmo_40x46mmGrenade_Mutagenic - - Craft 100 40x46mm mutagenic grenades. - Making 40x46mm mutagenic grenades. - -
    46. - - -
    47. Steel
    48. - - - 50 - -
    49. - - -
    50. MechaniteSlurry
    51. - - - 3 - -
    52. - - -
    53. ComponentIndustrial
    54. - - - 2 - -
      - - -
    55. Steel
    56. -
    57. MechaniteSlurry
    58. -
    59. ComponentIndustrial
    60. -
      -
      - - 100 - - 7400 -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml b/1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml deleted file mode 100644 index e960cc36c..000000000 --- a/1.5/Mods/CombatExtended/Defs/Ammo/68Mutagel.xml +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - PM_AmmoSet_MutagenCapsule - - - PM_Bullet_68Mutagen_Ball - - - - - PM_Ammo_68Mutagen_Ball - - Small capsules that contain jellied mutanite surrounded by a thin membrane that bursts on impact, intended for use in low pressure airguns. - - 0.003 - 0.02 - 0.28 - - -
    61. CE_AutoEnableTrade
    62. -
    63. CE_AutoEnableCrafting_DrugLab
    64. -
      - -
    65. AmmoAdvanced
    66. -
      - - Things/Ammo/LowPressureMCapsule/Ball - Graphic_StackCount - - PM_Mutagenic - - Processed, Fluid - NeverForNutrition - Meal_Eat - 0 - -
    67. - MutagenicBuildup_Weapon - 0.2 -
    68. -
      -
      - -
    69. - 3 - MutagenCloud_Tiny - 0.5 - true -
    70. -
      - false -
      - - - PM_Bullet_68Mutagen_Ball - - - Things/Projectiles/MutagenBullet_Small - Graphic_Single - - - MutagenicBulletDamage - 28 - 5 - 0 - 0.56 - - - - - MakePM_Ammo_68Mutagen_Ball - - Craft 500 .68 mutagel balls. - Making .68 mutagel balls. - 3600 - -
    71. - - -
    72. Mutanite
    73. - - - 5 - -
    74. - - -
    75. Neutroamine
    76. - - - 10 - -
      - - -
    77. Mutanite
    78. -
    79. Neutroamine
    80. -
      -
      - - 500 - -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml b/1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml deleted file mode 100644 index ac3cf3249..000000000 --- a/1.5/Mods/CombatExtended/Defs/Ammo/Arrows.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - Ammo_Arrow_Mutanite - - - Things/Ammo/Neolithic/Arrow/Venom - Graphic_StackCount - - - 2.58 - - MutaniteArrow - 0 - - - - Projectile_Arrow_Mutanite - - - Things/Projectiles/MutagenArrow - Graphic_Single - - - MutagenicArrowDamage - 7 - 0.5 - 3.02 - 0.666 - Ammo_Arrow_Mutanite - - - - Projectile_StreamlinedArrow_Mutanite - - - Things/Projectiles/MutagenArrow - Graphic_Single - - - MutagenicArrowDamage - 9 - 1.0 - 5.9 - 0.6 - Ammo_Arrow_Mutanite - - - - - MakeAmmo_Arrow_Mutanite - - Craft 10 mutanite arrows. - Making mutanite arrows. - 300 - -
    81. - - -
    82. WoodLog
    83. - - - 1 - -
    84. - - -
    85. Mutanite
    86. - - - 2 - -
      - - -
    87. WoodLog
    88. -
    89. Mutanite
    90. -
      -
      - - 10 - -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml b/1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml deleted file mode 100644 index 40415ffa8..000000000 --- a/1.5/Mods/CombatExtended/Defs/Ammo/GreatArrows.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - - Ammo_GreatArrow_Mutanite - - - Things/Ammo/Neolithic/Arrow/Venom - Graphic_StackCount - - - 4.76 - - MutaniteArrow - 0 - - - - Projectile_GreatArrow_Mutanite - - - Things/Projectiles/MutagenArrow - Graphic_Single - - - MutagenicArrowDamage - 10 - 3.18 - 2 - 0.6 - Ammo_GreatArrow_Mutanite - - - - - MakeAmmo_GreatArrow_Mutanite - - Craft 10 mutanite great arrows. - Making mutanite great arrows. - 400 - -
    91. - - -
    92. WoodLog
    93. - - - 2 - -
    94. - - -
    95. Mutanite
    96. - - - 2 - -
      - - -
    97. WoodLog
    98. -
    99. Mutanite
    100. -
      -
      - - 10 - -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml b/1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml deleted file mode 100644 index 79dcb5051..000000000 --- a/1.5/Mods/CombatExtended/Defs/AmmoCategories_Mutagenic.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - PM_Mutagenic - - mutagen - Mutates organic targets on contact. - - - GrenadeMutagenic - - mutagen - Filled with a chaotic mix of DNA and mechanites that aerosolizes on impact. The mist can mutate any organics caught in it. - - - MutaniteArrow - - mutanite - The arrow head is made from mutanite which mutates the victim. - true - - \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml deleted file mode 100644 index 270c3128d..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedAnimals.xml +++ /dev/null @@ -1,1216 +0,0 @@ - - - - Always - - - -
    101. - Defs/ThingDef[@Name="PMChaomorphBase"]/race/baseBodySize - - 2.1 - -
    102. -
    103. - Defs/ThingDef[@Name="PMChaomeldBase"]/race/baseBodySize - - 2.15 - -
    104. - -
    105. - Defs/ThingDef[defName="Chaoboar"] - -
    106. - Quadruped -
    107. - - -
    108. - Defs/ThingDef[defName="Chaoboar"]/statBases - - 0.16 - 0.09 - 0.07 - -
    109. -
    110. - Defs/ThingDef[defName="Chaoboar"]/tools - - -
    111. - - -
    112. Stab
    113. - - 26 - 1.65 - HornAttackTool - 0.341 - 6 - -
    114. - - -
    115. Blunt
    116. - - 8 - 1.85 - HeadAttackTool - 0.2 - 1 - -
    117. - - -
    118. Cut
    119. - - 25 - 2 - TuskAttackTool - 0.208 - 1.5 - -
    120. - - -
    121. Stab
    122. - - 22 - 1.89 - 0.65 - TuskAttackTool_2 - 0.39 - 2.940 - -
    123. - - -
    124. Blunt
    125. - - 4 - 1.26 - LeftHand - 2.250 - -
    126. - - -
    127. Blunt
    128. - - 4 - 1.26 - RightHand - 2.250 - - - - - -
    129. - Defs/ThingDef[defName="Chaoboom"] - -
    130. - Quadruped -
    131. - - -
    132. - Defs/ThingDef[defName="Chaoboom"]/statBases - - 0.04 - 0.11 - 0.18 - -
    133. -
    134. - Defs/ThingDef[defName="Chaoboom"]/comps - -
    135. - CombatExtended.CompShearableRenameable - Secretion level - 10 - 18 - FSX -
    136. - - -
    137. - Defs/ThingDef[defName="Chaoboom"] - - - 21 - - -
    138. -
    139. - Defs/ThingDef[defName="Chaoboom"]/tools - - -
    140. - -
    141. Bite
    142. - - 13 - 1.65 - 0.6 - Teeth - 0.203 - 0.6 - -
    143. - - -
    144. Stab
    145. - - 20 - 1.65 - HornAttackTool - 0.341 - 6 - -
    146. - - -
    147. Blunt
    148. - - 11 - 1.65 - 0.2 - HeadAttackTool - 6 - -
    149. - - -
    150. Blunt
    151. - - 9 - 1.2 - 2.250 - FrontLeftLeg - -
    152. - - -
    153. Blunt
    154. - - 9 - 1.2 - 2.250 - FrontRightLeg - - - - - -
    155. - Defs/ThingDef[defName="Chaocow"] - -
    156. - Quadruped -
    157. - - -
    158. - Defs/ThingDef[defName="Chaocow"]/race/baseHealthScale - - 2.3 - -
    159. -
    160. - Defs/ThingDef[defName="Chaocow"]/statBases - - 0.09 - 0.38 - 0.27 - 0.43 - 0.15 - -
    161. -
    162. - Defs/ThingDef[defName="Chaocow"]/tools - - -
    163. - -
    164. Bite
    165. - - 13 - 1.65 - 0.6 - Teeth - 0.203 - 0.6 - -
    166. - - -
    167. Stab
    168. - - 20 - 1.65 - HornAttackTool - 0.341 - 6 - -
    169. - - -
    170. Cut
    171. - - 25 - 2 - TuskAttackTool - 0.208 - 1.5 - -
    172. - - -
    173. Stab
    174. - - 22 - 1.89 - 0.65 - TuskAttackTool_2 - 0.39 - 2.940 - -
    175. - - -
    176. Blunt
    177. - - 11 - 1.65 - 0.2 - HeadAttackTool - 6 - -
    178. - - -
    179. Scratch
    180. - - 18 - 1.65 - FrontLeftPaw - - -
    181. - Stun - 20 -
    182. -
      -
      - 0.178 - 0.423 - -
    183. - - -
    184. Scratch
    185. - - 18 - 1.65 - FrontRightPaw - - -
    186. - Stun - 20 -
    187. -
      -
      - 0.178 - 0.423 - - - - - -
    188. - Defs/ThingDef[defName="Chaofox"]/statBases/MoveSpeed - - 7.9 - - -
    189. -
    190. - Defs/ThingDef[defName="Chaofox"]/statBases - - 0.18 - 0.63 - 0.23 - -
    191. -
    192. - Defs/ThingDef[defName="Chaofox"]/tools - - -
    193. - -
    194. Bite
    195. - - 10 - 1.65 - Teeth - - -
    196. - Stun - 20 -
    197. -
      -
      - 1.440 - 0.203 - -
    198. - - -
    199. Blunt
    200. - - 8 - 1.45 - HeadAttackTool - 0.2 - 0.250 - -
    201. - - -
    202. Scratch
    203. - - 8 - 1.65 - FrontLeftPaw - - -
    204. - Stun - 20 -
    205. -
      -
      - 0.267 - 0.178 - -
    206. - - -
    207. Scratch
    208. - - 8 - 1.65 - FrontRightPaw - - -
    209. - Stun - 20 -
    210. -
      -
      - 0.267 - 0.178 - - - - -
    211. - Defs/ThingDef[defName="Chaofox"] - -
    212. - Quadruped -
    213. - - - -
    214. - Defs/ThingDef[defName="Chaodino"]/statBases/MoveSpeed - - 12.9 - - -
    215. -
    216. - Defs/ThingDef[defName="Chaodino"] - -
    217. - Birdlike -
    218. - - -
    219. - Defs/ThingDef[defName="Chaodino"]/statBases - - 0.23 - 2.07 - 0.28 - -
    220. -
    221. - Defs/ThingDef[defName="Chaodino"]/statBases/ArmorRating_Blunt - - 1 - -
    222. -
    223. - Defs/ThingDef[defName="Chaodino"]/statBases/ArmorRating_Sharp - - 0.25 - -
    224. -
    225. - Defs/ThingDef[defName="Chaodino"]/tools - - -
    226. - -
    227. Bite
    228. - - 19.2 - 1.93 - Beak - - -
    229. - Stun - 14 -
    230. -
      -
      - 0.6 - 0.213 - 1.250 - -
    231. - - -
    232. Blunt
    233. - - 8 - 1.85 - HeadAttackTool - 0.2 - 1 - -
    234. - - -
    235. Scratch
    236. - - 18 - 0.5 - FrontLeftPaw - - -
    237. - Stun - 20 -
    238. -
      -
      - 0.225 - 0.4 - -
    239. - - -
    240. Scratch
    241. - - 18 - 0.5 - FrontRightPaw - - -
    242. - Stun - 20 -
    243. -
      -
      - 0.225 - 0.4 - - - - - -
    244. - Defs/ThingDef[defName="ChaomeldDog"] - -
    245. - Quadruped -
    246. - - -
    247. - Defs/ThingDef[defName="ChaomeldDog"]/statBases - - 0.09 - 0.47 - 0.28 - -
    248. -
    249. - Defs/ThingDef[defName="ChaomeldDog"]/tools - - -
    250. - -
    251. Bite
    252. - - 19.2 - 1.65 - 0.7 - Teeth - 1.440 - 0.213 - -
    253. - -
    254. Bite
    255. - - 10 - 1.65 - Teeth - 0.7 - - -
    256. - Stun - 20 -
    257. -
      -
      - 1.440 - 0.203 - -
    258. - - -
    259. Blunt
    260. - - 8 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    261. - - -
    262. Blunt
    263. - - 10 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    264. - - -
    265. Stab
    266. - - 20 - 1.65 - HornAttackTool - 0.341 - 6 - -
    267. - - -
    268. Blunt
    269. - - 24 - 1.65 - HornAttackTool_2 - 0.221 - - - - - -
    270. - Defs/ThingDef[defName="ChaomeldDragon"] - -
    271. - Quadruped -
    272. - - -
    273. - Defs/ThingDef[defName="ChaomeldDragon"]/statBases - - 0.09 - 0.47 - 0.28 - -
    274. -
    275. - Defs/ThingDef[defName="ChaomeldDragon"]/statBases/ArmorRating_Sharp - - 0.2 - -
    276. -
    277. - Defs/ThingDef[defName="ChaomeldDragon"]/statBases/ArmorRating_Blunt - - 1 - -
    278. -
    279. - Defs/ThingDef[defName="ChaomeldDragon"]/tools - - -
    280. - -
    281. Bite
    282. - - 19.2 - 1.65 - Teeth - 0.7 - 1.440 - 0.203 - -
    283. - -
    284. Bite
    285. - - 10 - 1.65 - Teeth - 0.7 - 0.203 - 1.440 - -
    286. - - -
    287. Blunt
    288. - - 8 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    289. - - -
    290. Blunt
    291. - - 10 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    292. - - -
    293. DragonBreath
    294. - - 23.4 - 0.1 - HeadAttackTool - true - 0.2 - 0 - -
    295. - - -
    296. DragonBreath
    297. - - 23.4 - 0.1 - HeadAttackTool - true - 0.2 - 0 - -
    298. - - -
    299. Stab
    300. - - 20 - 1.65 - HornAttackTool - 0.341 - 6 - -
    301. - - -
    302. Poke
    303. - - 24 - 1.65 - HornAttackTool_2 - 0.1 - 0.221 - - - - - -
    304. - Defs/ThingDef[defName="ChaomeldCow"] - -
    305. - Quadruped -
    306. - - -
    307. - Defs/ThingDef[defName="ChaomeldCow"]/statBases - - 0.09 - 0.38 - 0.27 - -
    308. -
    309. - Defs/ThingDef[defName="ChaomeldCow"]/tools - - -
    310. - -
    311. Bite
    312. - - 19.2 - 1.65 - Teeth - 0.7 - 1.440 - 0.203 - -
    313. - -
    314. Bite
    315. - - 10 - 1.65 - Teeth - 0.7 - 0.203 - 1.440 - -
    316. - - -
    317. Blunt
    318. - - 8 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    319. - - -
    320. Blunt
    321. - - 10 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    322. - - -
    323. Stab
    324. - - 20 - 1.65 - HornAttackTool - 0.341 - 6 - -
    325. - - -
    326. Poke
    327. - - 24 - 1.65 - HornAttackTool_2 - 0.1 - 0.221 - - - - - -
    328. - Defs/ThingDef[defName="ChaofusionRhino"] - -
    329. - Birdlike -
    330. - - -
    331. - Defs/ThingDef[defName="ChaofusionRhino"]/statBases/ArmorRating_Blunt - - 1 - -
    332. -
    333. - Defs/ThingDef[defName="ChaofusionRhino"]/statBases/ArmorRating_Sharp - - 0.35 - -
    334. -
    335. - Defs/ThingDef[defName="ChaofusionRhino"]/race/baseHealthScale - - 5 - -
    336. -
    337. - Defs/ThingDef[defName="ChaofusionRhino"]/statBases - - 0.07 - 0.54 - 0.50 - -
    338. -
    339. - Defs/ThingDef[defName="ChaofusionRhino"]/tools - - -
    340. - -
    341. Bite
    342. - - 19.2 - 1.65 - Teeth - 0.7 - 1.440 - 0.203 - -
    343. - -
    344. Bite
    345. - - 10 - 1.65 - Teeth - 0.7 - 0.203 - 1.440 - -
    346. - - -
    347. Blunt
    348. - - 8 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    349. - - -
    350. Blunt
    351. - - 10 - 1.65 - HeadAttackTool - 0.2 - 0.125 - -
    352. - - -
    353. Stab
    354. - - 26 - 1.65 - HornAttackTool - 0.341 - 6 - -
    355. - - -
    356. Poke
    357. - - 30 - 1.65 - HornAttackTool_2 - 0.221 - 6 - -
    358. - - -
    359. Cut
    360. - - 37 - 1.85 - HornAttackTool - 0.243 - 6 - -
    361. - - -
    362. Stab
    363. - - 37 - 1.85 - 0.65 - HornAttackTool_2 - 0.457 - 6 - - - - - -
    364. - Defs/ThingDef[defName="PM_Chaothrumbo"] - -
    365. - Quadruped -
    366. - - -
    367. - Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases - - 0.09 - 0.76 - 0.45 - 0.6 - -
    368. -
    369. - Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases/ArmorRating_Blunt - - 25 - -
    370. -
    371. - Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases/ArmorRating_Sharp - - 18 - -
    372. -
    373. - Defs/ThingDef[defName="PM_Chaothrumbo"]/statBases/ArmorRating_Heat - - 0.8 - -
    374. -
    375. - Defs/ThingDef[defName="PM_Chaothrumbo"]/race/baseHealthScale - - 5 - -
    376. -
    377. - Defs/ThingDef[defName="PM_Chaothrumbo"]/tools - - -
    378. - - -
    379. Cut
    380. - - 62 - 2.52 - HornAttackTool - 6 - 20 - -
    381. - - -
    382. Stab
    383. - - 57 - 2.52 - 0.65 - HornAttackTool_2 - 16 - 12 - -
    384. - - -
    385. Scratch
    386. - - 22 - 2.13 - FrontLeftLeg - 4.2 - 14.640 - -
    387. - - -
    388. Scratch
    389. - - 22 - 2.13 - FrontRightLeg - 4.2 - 14.640 - -
    390. - -
    391. Bite
    392. - - 19 - 1.62 - 0.7 - Teeth - 0.09 - 2.016 - -
    393. - - -
    394. Blunt
    395. - - 11 - 2.52 - HeadAttackTool - 0.2 - 6 - - - - - -
    396. - Defs/ThingDef[defName="EtherHellhound"] - -
    397. - Quadruped -
    398. - - -
    399. - Defs/ThingDef[defName="EtherHellhound"]/statBases/MoveSpeed - - 7 - -
    400. -
    401. - Defs/ThingDef[defName="EtherHellhound"]/statBases - - 0.075 - 0.05 - 0.21 - 0.20 - 0.09 - -
    402. -
    403. - Defs/ThingDef[defName="EtherHellhound"]/tools - - -
    404. - - -
    405. Scratch
    406. - - 11 - 1.19 - FrontLeftPaw - - -
    407. - Stun - 20 -
    408. -
      -
      - 2.250 - 0.75 - -
    409. - - -
    410. Scratch
    411. - - 11 - 1.19 - FrontRightPaw - - -
    412. - Stun - 20 -
    413. -
      -
      - 2.250 - 0.75 - -
    414. - - -
    415. Bite
    416. - - 24 - 1.46 - Teeth - - -
    417. - Stun - 20 -
    418. -
      -
      - 2 - 1.6 - 8.863 - -
    419. - - -
    420. Blunt
    421. - - 4 - 3.2 - HeadAttackTool - 0.2 - 1.225 - - - - -
    422. - Defs/ThingDef[defName="EtherHellhound"]/race/baseHealthScale - - 1.25 - -
    423. -
    424. - Defs/PawnKindDef[defName="EtherHellhound"]/combatPower - - 140 - -
    425. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml deleted file mode 100644 index e42c067b5..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedFactions.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - Always - - -
    426. - Defs/FactionDef[defName="Pirate"]/pawnGroupMakers/li/*/Muta_Grenadier_Smoke -
    427. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml deleted file mode 100644 index da12672a5..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedMutations.xml +++ /dev/null @@ -1,1117 +0,0 @@ - - - - Always - - - -
    428. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="CapridHornPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    429. - - -
    430. Blunt
    431. - - 10 - 2.13 - HeadAttackTool - 3.630 - true - - - - -
    432. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="CapridHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    433. - - 0.5 - 10 -
    434. - - - - -
    435. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherSheepHorns"]/stages/li[key="paragon"]/verbOverrides - - -
    436. - - 0.5 - 10 -
    437. - - - - -
    438. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="CervidHornPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    439. - - -
    440. Blunt
    441. - - 8 - 1.66 - HeadAttackTool - 0.03 - 0.750 - true - - - - - -
    442. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="SmallCervidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    443. - - 1 - 8 -
    444. - - - - -
    445. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="BigCervidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    446. - - 13 -
    447. - - - - -
    448. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="BovidHornPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    449. - - -
    450. Stab
    451. - - 18 - 2.0 - 0.65 - HeadAttackTool - 0.25 - 6 - - - - - -
    452. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="DomesticatedBovidHornPart"]/stagePatches/li[stageKey="short"]/values/verbOverrides - - -
    453. - - 0.5 - 14 -
    454. - - - -
    455. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="DomesticatedBovidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    456. - - 18 -
    457. - - - - -
    458. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="WildBovidHornPart"]/stagePatches/li[stageKey="short"]/values/verbOverrides - - -
    459. - - 0.5 - 14 -
    460. - - - -
    461. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="WildBovidHornPart"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    462. - - 27 - 3.2 -
    463. - - - -
    464. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="WildBovidHornPart"]/stages/li[key="paragon"]/verbOverrides - - -
    465. - - 27 - 3.2 -
    466. - - - - -
    467. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherHoofHand"]/comps - - Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherHoofHand"] - - - - -
    468. -
    469. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherHoofHand"]/comps - -
    470. - -
    471. - - False - -
    472. Blunt
    473. - - 4 - 1.26 - 1.125 - true - -
    474. - - False - -
    475. Poke
    476. - - 4 - 1.26 - 1.125 - true - - - - - - - -
    477. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherSnakeJaw"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    478. - - -
    479. ToxicBite
    480. -
    481. MutagenicStab
    482. - - 4 - 1.11 - - -
    483. - Stun - 21 -
    484. -
      -
      - 0.25 - 1.2 - Teeth - true - - - - -
    485. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherSnakeJaw"]/stagePatches/li[stageKey="growing" or stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    486. - - 4 -
    487. - - - - -
    488. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="TestudinidaeJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    489. - - False - -
    490. Bite
    491. - - 8 - 2.23 - Teeth - 0.02 - 0.640 - true - - - - - -
    492. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="PawnmorphShell"]/stagePatches/li[stageKey="grown"]/values/statOffsets - - - 1.5 - 1 - - -
    493. -
    494. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="PawnmorphShell"]/stages/li[key="paragon"]/statOffsets - - - 1.5 - 1 - - -
    495. - -
    496. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptileHandclaws"]/stagePatches/li[stageKey="readjusting" or stageKey="unfamiliar" or stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    497. - - 1 - 4 -
    498. - - - -
    499. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptileHandclaws"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    500. - - -
    501. Scratch
    502. - - 4 - 1.5 - 0.03 - 0.5 - true - - - - - -
    503. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptillianClawFoot"]/stagePatches/li[stageKey="adapting"]/values/statOffsets/MeleeDodgeChance - - -0.3 - -
    504. -
    505. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherReptillianClawFoot"]/stagePatches/li[stageKey="adapted"]/values/statOffsets/MeleeDodgeChance - - -0.075 - -
    506. - - -
    507. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothTail"]/stagePatches/li[stageKey="grown"]/values/verbOverrides - - -
    508. - - 1 - 10 -
    509. - - - -
    510. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothTail"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    511. - - False - -
    512. Blunt
    513. - - 10 - 2.78 - 2.6 - true - - - - - -
    514. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    515. - - 1 - 19 -
    516. - - - -
    517. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMegaslothHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    518. - - False - -
    519. Scratch
    520. - - 19 - 2 - 1.25 - 10 - true - - - - - -
    521. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMassiveFootClaw"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    522. - - 1 - 24 -
    523. - - - -
    524. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherMassiveFootClaw"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    525. - - False - -
    526. Scratch
    527. - - 24 - 2.34 - 1.25 - 10 - true - - - - - -
    528. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThrumboHorn"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    529. - - 1 - 38 -
    530. -
    531. - - 1 - 34 -
    532. - - - -
    533. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThrumboHorn"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    534. - - -
    535. Cut
    536. - - 38 - 2.52 - 3 - 16 - true - -
    537. - - -
    538. Stab
    539. - - 34 - 2.52 - 0.65 - 10 - 8 - true - - - - - -
    540. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="ElephantidaeJawPart"]/stagePatches/li[stageKey="adapted" or stageKey="paragon"]/values/statOffsets -
    541. -
    542. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="ElephantidaeJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    543. - - 1 - 32 -
    544. -
    545. - - 0.2 - 8 -
    546. - - - -
    547. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="ElephantidaeJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    548. - - -
    549. Poke
    550. - - 32 - 3.37 - 40.226 - true - -
    551. - - -
    552. Blunt
    553. - - 8 - 3.69 - HeadAttackTool - 36 - true - - - - - -
    554. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/stagePatches/li[stageKey="adapted" or stageKey="paragon"]/values/statOffsets -
    555. -
    556. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    557. - - 1 - 24 -
    558. -
    559. - - 1 - 20 -
    560. - - - -
    561. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/stagePatches/li[stageKey="paragon"]/values/verbOverrides - - -
    562. - - 1 - 28 -
    563. -
    564. - - 1 - 24 -
    565. - - - -
    566. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="RhinocerotidaeJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    567. - - -
    568. Poke
    569. - - 24 - 2.67 - 16 - true - -
    570. - - -
    571. Blunt
    572. - - 20 - 2.37 - 16 - true - - - - - -
    573. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherElephantHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/statOffsets/MeleeWeapon_AverageArmorPenetration -
    574. -
    575. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherElephantHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    576. - - False - -
    577. Blunt
    578. - - 8 - 1.5 - 10 - true - - - - - -
    579. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThickHideFoot"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    580. - - 1 - 28 -
    581. - - - -
    582. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherThickHideFoot"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    583. - - False - -
    584. Blunt
    585. - - 28 - 2.37 - 25.960 - true - - - - - - -
    586. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="AvianJawPart"]/stagePatches/li[stageKey="growing"]/values/verbOverrides - - -
    587. - - 1 - 2 -
    588. - - - -
    589. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="AvianJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    590. - - 1 - 4 -
    591. - - - -
    592. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="AvianJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    593. - - False - -
    594. Bite
    595. - - 4 - 1.97 - - -
    596. - Stun - 14 -
    597. -
      -
      - 0.01 - 0.480 - true - - - - - -
    598. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="RatiteJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    599. - - 1 - 8 -
    600. - - - - -
    601. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="EtherAvianFootBase"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    602. - - False - -
    603. Scratch
    604. - - 6 - 1.42 - - -
    605. - Stun - 14 -
    606. -
      -
      - 0.1 - 0.480 - true - - - - - -
    607. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherLargeAvianFoot"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/statOffsets -
    608. -
    609. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherLargeAvianFoot"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    610. - - 1 - 9 -
    611. - - - - - -
    612. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="UrsineJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    613. - - False - -
    614. Bite
    615. - - 28 - 2 - - -
    616. - Stun - 21 -
    617. -
      -
      - 0.5 - 1.25 - 9.5 - true - - - - -
    618. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="UrsineJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    619. - - 0.5 - 28 -
    620. - - - - -
    621. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBearPawHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/statOffsets/MeleeHitChance -
    622. -
    623. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBearPawHand"]/stagePatches/li[stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    624. - - 1 - 12 -
    625. - - - -
    626. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBearPawHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    627. - - False - -
    628. Scratch
    629. - - 12 - 1.3 - - -
    630. - Stun - 21 -
    631. -
      -
      - 0.3 - 5 - true - - - - - - -
    632. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="CarnivoraJawPart"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    633. - - False - -
    634. Bite
    635. - - 13 - 1.73 - Teeth - - -
    636. - Stun - 20 -
    637. -
      -
      - 0.55 - 4.225 - true - - - - -
    638. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="CarnivoraJawPart"]/stagePatches/li[stageKey="adapting" or stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    639. - - 0.5 - 13 -
    640. - - - - -
    641. - Defs/Pawnmorph.Hediffs.MutationDef[@Name="ScavengerJawPart"]/stagePatches/li[stageKey="adapted" or stageKey="paragon"]/values/verbOverrides - - -
    642. - - 1.46 - 22 -
    643. - - - - -
    644. - Defs/Pawnmorph.Hediffs.MutationDef[defName="PM_HellhoundPaws"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    645. - - -
    646. Scratch
    647. - - 11 - 1.19 - 2.250 - 0.75 - true - - - - - -
    648. - Defs/Pawnmorph.Hediffs.MutationDef[defName="PM_HellhoundHorns"]/stagePatches/li[stageKey="horns"]/values/verbOverrides - - -
    649. - - 1 - 21 -
    650. - - - -
    651. - Defs/Pawnmorph.Hediffs.MutationDef[defName="PM_HellhoundHorns"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    652. - - -
    653. Stab
    654. - - 21 - 2 - HeadAttackTool - 0.25 - 6 - true - - - - - -
    655. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherPawHand"]/stagePatches/li[stageKey="unfamiliar" or stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    656. - - 1 - 6 -
    657. - - - -
    658. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherPawHand"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    659. - - False - -
    660. Scratch
    661. - - 6 - 0.8 - - -
    662. - Stun - 20 -
    663. -
      -
      - 0.07 - 0.450 - true - - - - - -
    664. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherFelineClaws"]/stagePatches/li[stageKey="unfamiliar" or stageKey="adapting" or stageKey="adapted"]/values/verbOverrides - - -
    665. - - 1 - 6 -
    666. - - - -
    667. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherFelineClaws"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    668. - - False - -
    669. Scratch
    670. - - 6 - 0.92 - - -
    671. - Stun - 20 -
    672. -
      -
      - 0.07 - 0.338 - true - - - - - - -
    673. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherComboHornbill"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    674. - - False - -
    675. Bite
    676. - - 8 - 1.97 - - -
    677. - Stun - 14 -
    678. -
      -
      - 0.01 - 0.480 - true - -
    679. - - -
    680. Stab
    681. - - 10 - 2.13 - HeadAttackTool - 3.630 - true - - - - - -
    682. - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherComboWolfSpike"]/comps/li[@Class="HediffCompProperties_VerbGiver"]/tools - - -
    683. - - False - -
    684. Bite
    685. - - 13 - 1.73 - Teeth - - -
    686. - Stun - 20 -
    687. -
      -
      - 0.55 - 4.225 - true - -
    688. - - -
    689. Stab
    690. - - 10 - 2.13 - HeadAttackTool - 3.630 - true - - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml deleted file mode 100644 index b3a732a2c..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedPawnKinds.xml +++ /dev/null @@ -1,445 +0,0 @@ - - - - Always - - -
    691. - Defs/PawnKindDef[defName="PMEnclaveVillager" or defName="PMEnclaveTown_Trader" or defName="PMEnclaveTown_Councilman"] - -
    692. - - 1 - 2 - - -
    693. - 0.5 - - 20 - 120 - - -
    694. CE_Sidearm_Melee
    695. - - - - - - -
    696. - Defs/PawnKindDef[defName="PMEnclaveTown_Guard"] - -
    697. - - 2 - 4 - - -
    698. - 0.5 - - 20 - 120 - - -
    699. CE_Sidearm_Melee
    700. - - - - - - -
    701. - Defs/PawnKindDef[defName="PMEnclaveMercenary/weaponMoney"] - - 415~550 - -
    702. -
    703. - Defs/PawnKindDef[defName="PMEnclaveMercenary"] - -
    704. - - 3 - 5 - - - 200 - 600 - - -
    705. OutlanderShield
    706. - - 0.8 - -
    707. - 1 - - 60 - 150 - - -
    708. CE_Sidearm_Melee
    709. - - -
    710. - 0.5 - - 80 - 120 - - -
    711. CE_Sidearm
    712. - - -
    713. - 0.075 - - 10 - 100 - - -
    714. CE_FlareLauncher
    715. - - - 1 - 3 - - -
      - - - -
    716. - Defs/PawnKindDef[defName="PMEnclaveHeavyMercenary/weaponMoney"] - - 1200~1200 - -
    717. -
    718. - Defs/PawnKindDef[defName="PMEnclaveHeavyMercenary"]/weaponTags - - -
    719. GunHeavy
    720. -
    721. GunSingleUse
    722. - - - -
    723. - Defs/PawnKindDef[defName="PMEnclaveHeavyMercenary"] - -
    724. - - 1 - 4 - - - - 150 - 350 - - -
    725. CE_SMG
    726. - - - 0 - 1 - - - -
    727. - 0.5 - - 60 - 150 - - -
    728. CE_Sidearm_Melee
    729. - - -
      - - - -
    730. - /Defs/PawnKindDef[defName="PMEnclaveEliteMercenary"]/skills - - /Defs/PawnKindDef[defName="PMEnclaveEliteMercenary"] - - -
    731. - Shooting - 6~14 -
    732. - - - - -
    733. - Defs/PawnKindDef[defName = "PMEnclaveEliteMercenary"]/weaponMoney - - - 850 - 1100 - - -
    734. -
    735. - /Defs/PawnKindDef[defName="PMEnclaveEliteMercenary"]/weaponTags - -
    736. SpacerGun
    737. - - -
    738. - Defs/PawnKindDef[defName = "PMEnclaveEliteMercenary"] - -
    739. - - 3 - 5 - - - 1000 - 1600 - - -
    740. OutlanderShield
    741. - - 0.9 - -
    742. - - 400 - 800 - - -
    743. CE_Sidearm_Melee
    744. - - -
      - - - - - -
    745. - Defs/PawnKindDef[defName="Muta_Mercenary_Rocket"] - -
    746. - - 1 - 4 - - - - 150 - 350 - - -
    747. CE_SMG
    748. - - - 0 - 1 - - - -
    749. - 0.5 - - 60 - 150 - - -
    750. CE_Sidearm_Melee
    751. - - -
      - - - - -
    752. - Defs/PawnKindDef[defName="Muta_Grenadier_Mutagenic" or defName="Muta_Grenadier_EMP"] - -
    753. - - 10 - 30 - - - - 100 - 250 - - -
    754. CE_Sidearm
    755. - - - 2 - 5 - - - - - -
    756. - Defs/PawnKindDef[defName="Muta_Grenadier_Destructive"] - -
    757. - - 10 - 30 - - - 200 - 600 - - -
    758. OutlanderShield
    759. - - 0.5 - - - 150 - 350 - - -
    760. CE_Sidearm_Melee
    761. -
      -
      - - - -
    762. - Defs/PawnKindDef[defName="Muta_Grenadier_EMP"]/label - - - -
    763. -
    764. - Defs/PawnKindDef[defName="Muta_Grenadier_EMP"]/weaponTags - -
    765. CE_GrenadeFlashbang
    766. -
    767. GrenadeSmoke
    768. -
    769. GrenadeDestructive
    770. - - -
    771. - Defs/PawnKindDef[defName="Muta_Grenadier_EMP"]/combatPower - - 85 - -
    772. - -
    773. - Defs/PawnKindDef[defName="Muta_Mercenary_Gunner"]/weaponMoney - - 250~350 - -
    774. -
    775. - Defs/PawnKindDef[defName="Muta_Mercenary_Gunner" or defName="Muta_Mercenary_Mutagunner"] - -
    776. - - 2 - 4 - - - 200 - 600 - - -
    777. OutlanderShield
    778. - - 0.8 - -
    779. - 0.5 - - 20 - 120 - - -
    780. CE_Sidearm_Melee
    781. - - -
    782. - 0.075 - - 10 - 100 - - -
    783. CE_FlareLauncher
    784. - - - 1 - 3 - - -
      - - - - -
    785. - Defs/PawnKindDef[defName="Muta_Mercenary_Sniper"] - - 415~550 - -
    786. -
    787. - Defs/PawnKindDef[defName="Muta_Mercenary_Sniper"] - -
    788. - - 3 - 5 - - -
    789. - 1 - - 60 - 150 - - -
    790. CE_Sidearm_Melee
    791. - - -
    792. - 0.5 - - 80 - 120 - - -
    793. CE_Sidearm
    794. - - - - - - - -
    795. - Defs/PawnKindDef[defName = "Muta_Mercenary_Slasher" or defName="Muta_Mercenary_Mutaslasher"] - -
    796. - - 500 - 1400 - - -
    797. OutlanderShield
    798. - - 0.9 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml deleted file mode 100644 index e0cb9c207..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedRaces.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - Always - - -
    799. - Defs/ThingDef[defName="SnakeMorph"]/tools - - -
    800. - - -
    801. Blunt
    802. - - 1 - 1.26 - LeftHand - 0.5 - -
    803. - - -
    804. Blunt
    805. - - 1 - 1.26 - RightHand - 0.5 - -
    806. - - -
    807. Bite
    808. - - 1 - 2 - Teeth - 0.07 - Pawn_Melee_HumanBite_Hit - Pawn_Melee_HumanBite_Miss - 0.15 - 1.0 - -
    809. - - -
    810. Blunt
    811. - - 2 - 4.49 - HeadAttackTool - 0.2 - 0.625 - - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml deleted file mode 100644 index 5c9a4bf58..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedResources.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - Always - - -
    812. - Defs/ThingDef[defName="Mutanite"]/statBases - - 0.03 - -
    813. -
    814. - Defs/ThingDef[defName="Mutanite"]/statBases/StuffPower_Armor_Sharp - - 1 - -
    815. -
    816. - Defs/ThingDef[defName="Mutanite"]/statBases/StuffPower_Armor_Blunt - - 1.5 - -
    817. -
    818. - Defs/ThingDef[defName="Mutanite"]/statBases/StuffPower_Armor_Heat - - 0 - -
    819. - -
    820. - Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases/StuffPower_Armor_Sharp - - 0.012 - -
    821. -
    822. - Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases/StuffPower_Armor_Blunt - - 0.015 - -
    823. -
    824. - Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases/StuffPower_Armor_Heat - - 0.048 - -
    825. -
    826. - Defs/ThingDef[defName="Morphsilk" or defName="PM_Hazsilk"]/statBases - - 0.05 - -
    827. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml deleted file mode 100644 index f48125d32..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedScenarios.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - Always - - -
    828. - Defs/ScenarioDef[defName="Escaped Morphs"]/scenario/parts - -
    829. - StartingThing_Defined - Ammo_303British_FMJ - 100 -
    830. -
    831. - StartingThing_Defined - Ammo_44Magnum_FMJ - 60 -
    832. -
    833. - StartingThing_Defined - PM_Ammo_68Mutagen_Ball - 300 -
    834. - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml deleted file mode 100644 index 2ee08ef19..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsMelee.xml +++ /dev/null @@ -1,267 +0,0 @@ - - - - Always - - -
    835. - Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/stuffCategories - - -
    836. Metallic_Weapon
    837. - - - -
    838. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/stuffCategories -
    839. -
    840. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/costStuffCount -
    841. -
    842. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/costList - - 50 - -
    843. - - -
    844. - Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/tools - - -
    845. - - -
    846. Poke
    847. - - 1 - 1.26 - 0.250 - Handle - -
    848. - - -
    849. MutagenicCut
    850. - - 10 - 1.18 - 0.36 - 0.32 - Blade - -
    851. - - -
    852. MutagenicStab
    853. - - 11 - 1.2 - 1.33 - 0.25 - 0.42 - Point - - - - -
    854. - Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/statBases - - 1 - 0.15 - -
    855. -
    856. - Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"] - - - 0.5 - 0.15 - 0.05 - - -
    857. - -
    858. - Defs/ThingDef[defName="MeleeWeapon_MutaniteKnife"]/weaponTags - -
    859. CE_OneHandedWeapon
    860. - - - -
    861. - Defs/ThingDef[defName="MeleeWeapon_MutaniteSpear"]/tools - - -
    862. - - -
    863. Blunt
    864. - - 7 - 1.35 - 0.15 - 2.25 - Shaft - -
    865. - - -
    866. Poke
    867. - - 4 - 1.78 - 0.05 - 1 - Point - -
    868. - - -
    869. MutagenicStab
    870. - - 18 - 1.19 - 1.00 - 2.25 - 1.5 - Head - - - - -
    871. - Defs/ThingDef[defName="MeleeWeapon_MutaniteSpear"]/statBases - - 10 - 1.68 - -
    872. -
    873. - Defs/ThingDef[defName="MeleeWeapon_MutaniteSpear"] - - - 0.24 - 1.45 - 0.9 - - -
    874. - -
    875. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"] - ParentName - BaseMeleeWeapon -
    876. -
    877. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"] - - -
    878. MeleeBlunt
    879. - - - - -
    880. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/tools - - -
    881. - - -
    882. Poke
    883. - - 2 - 1.59 - 0.625 - Handle - -
    884. - - -
    885. MutagenicStun
    886. - - 8 - 1.19 - 1.33 - 0 - Head - - - - -
    887. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/statBases - - 3.5 - 0.24 - -
    888. -
    889. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"] - - - 0.42 - 0.24 - 0.2 - - -
    890. - -
    891. - Defs/ThingDef[defName="MeleeWeapon_MutagenicStunStick"]/weaponTags - -
    892. CE_OneHandedWeapon
    893. - - - -
    894. - Defs/DamageDef[defName="MutagenicStun"]/hediff - - ElectricalBurn - -
    895. -
    896. - Defs/DamageDef[defName="MutagenicStun"]/hediffSkin -
    897. -
    898. - Defs/DamageDef[defName="MutagenicStun"]/hediffSolid -
    899. -
    900. - Defs/DamageDef[defName="MutagenicStun"] - - false - false - -
    901. -
    902. - Defs/DamageDef[defName="MutagenicStun"]/impactSoundType - - Electric - -
    903. -
    904. - Defs/DamageDef[defName="MutagenicStun"]/armorCategory - - Electric - -
    905. -
    906. - Defs/DamageDef[defName="MutagenicStun"]/deathMessage - - {0} has been electrocuted. - -
    907. -
    908. - Defs/DamageDef[defName="MutagenicStun"] - -
    909. - true -
    910. - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml b/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml deleted file mode 100644 index b2b4a57ac..000000000 --- a/1.5/Mods/CombatExtended/Patches/Addon_CombatExtendedWeaponsRanged.xml +++ /dev/null @@ -1,642 +0,0 @@ - - - - Always - - -
    911. - Defs/DamageDef[defName="MutagenicBulletDamage"]/hediff - - Bruise - -
    912. -
    913. - Defs/DamageDef[defName="MutagenicBulletDamage"]/externalViolence - - false - false - -
    914. -
    915. - Defs/DamageDef[defName="MutagenicBulletDamage"]/armorCategory - - Blunt - -
    916. -
    917. - Defs/DamageDef[defName="MutagenicBulletDamage"]/overkillPctToDestroyPart - - 0.4~1.0 - -
    918. -
    919. - Defs/DamageDef[defName="MutagenicBulletDamage"] - -
    920. - true -
    921. - - -
    922. - Defs/DamageDef[defName="MutagenicBulletDamage"]/modExtensions/li[@Class="Pawnmorph.Damage.MutagenicDamageExtension"]/severityPerDamage - - 0.01 - -
    923. - - - -
    924. - Defs - - - - - - - - - - - PM_Bullet_TaggingGun_Dart - EtherGun.Projectile_TaggingBullet - - - Things/Projectiles/GelCapsule - Graphic_Single - - - Bullet - 1 - 1.85 - 12.85 - 30 - - - - - - - -
    925. - -
    926. - Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_40x46mmGrenade"]/ammoTypes - - Bullet_40x46mmGrenade_Mutagenic - -
    927. - -
    928. - Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_Arrow"]/ammoTypes - - Projectile_Arrow_Mutanite - -
    929. -
    930. - Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_StreamlinedArrow"]/ammoTypes - - Projectile_StreamlinedArrow_Mutanite - -
    931. -
    932. - Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_GreatArrow"]/ammoTypes - - Projectile_GreatArrow_Mutanite - -
    933. - -
    934. - Defs/CombatExtended.AmmoSetDef[defName="AmmoSet_81mmMortarShell"]/ammoTypes - - Bullet_81mmMortarShell_TF - -
    935. -
    936. - Defs - - - GrenadeMutagenic - - Filled with a chaotic mix of DNA and mechanites that aerosolizes on impact. The mist can mutate any organics caught in it. - - - - Shell_TF - - - Things/Ammo/Mortar/MutagenShell - Graphic_StackCount - - - 112.42 - 5.27 - 8.17 - - GrenadeMutagenic - - -
    937. - 2.9 - MutagenCloud_Large - - ExtinguisherExplosion - PM_Filth_Slurry - 0.6 - True - 0.7 - - 30 - 60 - -
    938. - - - - Bullet_81mmMortarShell_TF - - - Things/Projectiles/Mortar/MutagenShell - Graphic_Single - - - MutagenCloud_Large - 156 - 0 - 0 - true - 5.5 - Explosion_EMP - true - - - - MakeShell_TF - - Craft 5 81mm mutagenic mortar shells. - Making 81mm mutagenic mortar shells. - MutagenicWeapons - -
    939. - - -
    940. Steel
    941. - - - 54 - -
    942. - - -
    943. MechaniteSlurry
    944. - - - 10 - -
    945. - - -
    946. ComponentIndustrial
    947. - - - 2 - -
      - - -
    948. Steel
    949. -
    950. MechaniteSlurry
    951. -
    952. ComponentIndustrial
    953. -
      -
      - - 5 - - 13800 -
      - - - - -
    954. - Defs/ThingDef[defName="Mutabow"] -
    955. - -
    956. - Defs/ThingDef[defName="TST_Gun_TaggingGun"]/verbs/li[verbClass="Pawnmorph.Verbs.Tag"] -
    957. -
    958. - TST_Gun_TaggingGun - - 3 - 1.17 - 1.1 - 0.21 - 1.33 - 10.03 - - - 60 - 3 - 1 - - - Pawnmorph.Verbs.Tag - true - PM_Bullet_TaggingGun_Dart - 1.1 - 55 - Shot_ChargeRifle - GunTail_Light - - - - -
    959. CE_AI_SR
    960. - - false - -
    961. - Defs/ThingDef[defName="TST_Gun_TaggingGun"]/label - - - -
    962. -
    963. - Defs/ThingDef[defName="TST_Gun_TaggingGun"]/graphicData/texPath - - Things/Item/Dartgun - -
    964. -
    965. - Defs/ThingDef[defName="TST_Gun_TaggingGun"] - -
    966. - 1.34,1.34 - 0.12,-0.10 -
    967. - - - -
    968. - Mutarifle - - 2.15 - 0.35 - 1.00 - 0.14 - 0.94 - 4.2 - 24500 - - - 30 - 5 - - - 1.20 - CombatExtended.Verb_ShootCE - true - PM_Bullet_68Mutagen_Ball - 0.6 - 15 - 6 - 6 - Shot_Autopistol - GunTail_Light - 9 - - - 30 - 4 - PM_AmmoSet_MutagenCapsule - - - 3 - FALSE - Snapshot - - -
    969. CE_SMG
    970. -
    971. CE_AI_BROOM
    972. - - MutagenicWeapons - -
    973. - Defs/ThingDef[defName="Mutarifle" or defName="TST_Gun_TaggingGun" or defName="TST_Gun_EtherGun"]/tools - - -
    974. - - -
    975. Blunt
    976. - - 8 - 1.55 - 1.5 - 2.755 - Stock - -
    977. - - -
    978. Blunt
    979. - - 5 - 2.02 - 1.630 - Barrel - -
    980. - - -
    981. Poke
    982. - - 8 - 1.55 - 2.755 - Muzzle - - - - - -
    983. - Defs/ThingDef[defName="Gun_MutagenicRocketLauncher"] - ParentName - BaseMakeableGun -
    984. -
    985. - Defs/ThingDef[defName="Gun_MutagenicRocketLauncher"]/statBases/MarketValue -
    986. -
    987. - Defs/ThingDef[defName="Gun_MutagenicRocketLauncher"]/tools - - -
    988. - - -
    989. Blunt
    990. - - 10 - 2.44 - 3.5 - Barrel - - - - - -
    991. - Defs/ThingDef[defName="Bullet_MutagenicRocket"]/thingClass - - CombatExtended.ProjectileCE_Explosive - -
    992. -
    993. - Defs/ThingDef[defName="Bullet_MutagenicRocket"]/projectile - - - MutagenCloud_Large - 8.5 - true - 12 - 3.0 - 2.0 - 100 - true - ExtinguisherExplosion - PM_Filth_Slurry - 0.4 - 2 - - -
    994. - -
    995. - Gun_MutagenicRocketLauncher - - 20.00 - 1.5 - 2.24 - 0.2 - 3.24 - 13.0 - 49500 - - - 125 - 8 - 5 - - - CombatExtended.Verb_ShootCEOneUse - true - Bullet_MutagenicRocket - 2.1 - 48 - 1 - InfernoCannon_Fire - GunTail_Heavy - true - - true - - 14 - - - AimedShot - - -
    996. CE_AI_AOE
    997. - - CE_AdvancedLaunchers - false - - - -
    998. - Defs/ThingDef[defName="Weapon_GrenadeTF"] - ParentName - BaseWeapon -
    999. -
    1000. - Defs/ThingDef[defName="Weapon_GrenadeTF"]/recipeMaker -
    1001. - -
    1002. - Defs/ThingDef[defName="Weapon_GrenadeTF"] - - -
    1003. - - -
    1004. Blunt
    1005. - - 2 - 1.75 - 1.0 - Base - - - - - -
    1006. - Defs/ThingDef[defName="Proj_GrenadeTF"] - Class -
    1007. -
    1008. - Defs/ThingDef[defName="Proj_GrenadeTF"]/AddHediffChance -
    1009. -
    1010. - Defs/ThingDef[defName="Proj_GrenadeTF"]/projectile - - - 3.5 - MutagenCloud - 100 - ExtinguisherExplosion - PM_Filth_Slurry - 0.8 - Gas_Mutagen - 1 - 12 - 0 - 3.0 - 2.0 - 0.25 - - -
    1011. - -
    1012. - Defs/ThingDef[defName="Weapon_GrenadeTF"]/label - - - -
    1013. -
    1014. - Defs/ThingDef[defName="Weapon_GrenadeTF"]/graphicData - - - Things/Ammo/HandGrenades/Mutagenic - Graphic_StackCount - 0 - - -
    1015. -
    1016. - Defs/ThingDef[defName="Weapon_GrenadeTF"] - - CombatExtended.AmmoThing - 75 - First - -
    1017. -
    1018. - Defs/ThingDef[defName="Weapon_GrenadeTF"] - Class - CombatExtended.AmmoDef -
    1019. -
    1020. - Defs/ThingDef[defName="Weapon_GrenadeTF"]/comps - - -
    1021. - 3.5 - MutagenCloud - PM_Filth_Slurry - 0.8 - Gas_Mutagen - 1 -
    1022. - - - -
    1023. - Weapon_GrenadeTF - - 0.75 - 1.05 - 15.33 - 1 - 0.65 - - - - CombatExtended.Verb_ShootCEOneUse - true - 10 - 0.8 - 4 - false - ThrowGrenade - - true - - Proj_GrenadeTF - true - true - 3 - - -
    1024. CE_AI_AOE
    1025. -
    1026. CE_OneHandedWeapon
    1027. -
    1028. PawnmorpherGun
    1029. -
    1030. PMGrenadeMutagenic
    1031. - - - -
    1032. - Defs - - - MakeMutagenicGrenades - - Craft 10 mutagenic grenades. - Making mutagenic grenades. - 4400 - -
    1033. - - -
    1034. Steel
    1035. - - - 8 - -
    1036. - - -
    1037. MechaniteSlurry
    1038. - - - 4 - -
    1039. - - -
    1040. ComponentIndustrial
    1041. - - - 2 - - - - -
    1042. Steel
    1043. -
    1044. MechaniteSlurry
    1045. -
    1046. ComponentIndustrial
    1047. -
      -
      - - 10 - - MutagenicWeapons - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml b/1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml deleted file mode 100644 index 51f670e81..000000000 --- a/1.5/Mods/GiddyUp-2/Patches/Saddles_Chaocreatures.xml +++ /dev/null @@ -1,137 +0,0 @@ - - - - - -
    1048. - /Defs/ThingDef[defName = "Chaocow"]/comps - -
    1049. - - - Mobs/Chaoferal/Saddles/chaocowsaddle_east - Graphic_Single - 3 - false - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaocowsaddle_south - Graphic_Single - 3 - false - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaocowsaddle_north - Graphic_Single - 3 - false - - (0,0,0,0) - -
    1050. - - -
    1051. - /Defs/ThingDef[defName = "Chaocow"] - -
    1052. - 0,0,0 - 0,0,0 -
    1053. - - -
    1054. - /Defs/ThingDef[defName = "Chaofox"]/comps - -
    1055. - - - Mobs/Chaoferal/Saddles/chaofoxsaddle_east - Graphic_Single - 3 - false - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaofoxsaddle_south - Graphic_Single - 3 - false - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaofoxsaddle_north - Graphic_Single - 3 - false - - (0,0,0,0) - -
    1056. - - -
    1057. - /Defs/ThingDef[defName = "Chaofox"] - -
    1058. - 0,0,0 - 0,0,0 -
    1059. - - -
    1060. - /Defs/ThingDef[defName = "Chaodino"]/comps - -
    1061. - - - Mobs/Chaoferal/Saddles/chaodinosaddle_east - Graphic_Single - 3 - false - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaodinosaddle_south - Graphic_Single - 3 - false - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaodinosaddle_north - Graphic_Single - 3 - false - - (0,0,0,0) - -
    1062. - - -
    1063. - /Defs/ThingDef[defName = "Chaodino"] - -
    1064. - 0,0,0 - 0,0,0 -
    1065. - - -
      -
      -
      diff --git a/1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml b/1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml deleted file mode 100644 index 5984e3c06..000000000 --- a/1.5/Mods/GiddyUp/Patches/Addon_GiddyUp.xml +++ /dev/null @@ -1,161 +0,0 @@ - - - - Always - -
    1066. - /Defs/ThingDef[defName = "Chaocow"]/comps - -
    1067. - - - Mobs/Chaoferal/Saddles/chaocowsaddle_east - Graphic_Single - 3 - false - - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaocowsaddle_south - Graphic_Single - 3 - false - - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaocowsaddle_north - Graphic_Single - 3 - false - - - (0,0,0,0) - - -
    1068. - - - -
    1069. - /Defs/ThingDef[defName = "Chaocow"] - -
    1070. - - 0,0,0 - 0,0,0 - - -
    1071. - - -
    1072. - /Defs/ThingDef[defName = "Chaofox"]/comps - -
    1073. - - - Mobs/Chaoferal/Saddles/chaofoxsaddle_east - Graphic_Single - 3 - false - - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaofoxsaddle_south - Graphic_Single - 3 - false - - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaofoxsaddle_north - Graphic_Single - 3 - false - - - (0,0,0,0) - - -
    1074. - - - -
    1075. - /Defs/ThingDef[defName = "Chaofox"] - -
    1076. - - 0,0,0 - 0,0,0 - - -
    1077. - - -
    1078. - /Defs/ThingDef[defName = "Chaodino"]/comps - -
    1079. - - - Mobs/Chaoferal/Saddles/chaodinosaddle_east - Graphic_Single - 3 - false - - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaodinosaddle_south - Graphic_Single - 3 - false - - - (0,0,0,0) - - - - Mobs/Chaoferal/Saddles/chaodinosaddle_north - Graphic_Single - 3 - false - - - (0,0,0,0) - - -
    1080. - - - -
    1081. - /Defs/ThingDef[defName = "Chaodino"] - -
    1082. - - 0,0,0 - 0,0,0 - - -
    1083. - - -
      -
      -
      diff --git a/1.5/Mods/Martens/Defs/Aspects.xml b/1.5/Mods/Martens/Defs/Aspects.xml deleted file mode 100644 index 548790707..000000000 --- a/1.5/Mods/Martens/Defs/Aspects.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - MartenAspect - - Martenmorphs are widely known to be agile and intelligent hunters, capable of incredible feats of skill and agility. They are more than capable of taking on opponents several times their size in hand to hand combat. - -
    1084. - -
    1085. - Moving - 0.15 -
    1086. - - - 35 - 0.35 - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Full.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Full.xml deleted file mode 100644 index af5d96bd8..000000000 --- a/1.5/Mods/Martens/Defs/Marten/Marten_Full.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - PawnmorphMartenTF - Pawnmorph.Hediffs.Hediff_MutagenicBase - - This person has mechanites in their blood that are slowly mutating them into a martenmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more marten than human. - -
    1087. - - 0.05 - -
    1088. - Moving - -0.05 -
    1089. - - - -
    1090. ZGF_BeechMart
    1091. -
    1092. ZGF_JapaneseMart
    1093. -
    1094. ZGF_NilgiriMart
    1095. -
    1096. ZGF_PineMart
    1097. -
    1098. ZGF_RimMart
    1099. -
    1100. ZGF_Sable
    1101. -
    1102. ZGF_YellowMart
    1103. -
    1104. ZGF_MegaMart
    1105. -
    1106. ZGF_Boommarten
    1107. -
      -
      - - - TransformationMisc - - - 0.1 - - -
    1108. - - 0.6 - 0.1 - 1 - -
    1109. - Moving - -0.05 -
    1110. -
    1111. - Sight - -0.05 -
    1112. -
    1113. - Manipulation - -0.05 -
    1114. - - - -
    1115. - - 0.65 - 0.1 - 1 - -
    1116. - Moving - -0.05 -
    1117. -
    1118. - Sight - -0.05 -
    1119. -
    1120. - Manipulation - -0.05 -
    1121. - - - MartenMorph - - - 5 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml deleted file mode 100644 index 6bf7c446b..000000000 --- a/1.5/Mods/Martens/Defs/Marten/Marten_Memories.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - MartenTransformationMemory - Pawnmorph.Thoughts.MutationMemory - 1 - -
    1122. - - The world looks so much bigger than me... - -3 -
    1123. -
    1124. - - Oh, I feel so agile! - 3 -
    1125. -
    1126. - - Why a marten?! That's like one step away from being a skunk! - -5 -
    1127. -
    1128. - - While this does feel amazing, I can't help but wonder what being a full fledged marten would be like... - 1 -
    1129. -
      -
      - - - MartenRevertedMemory - Pawnmorph.Thoughts.MutationMemory - 1 - -
    1130. - - Phew, back to being the same size as everyone else. - 3 -
    1131. -
    1132. - - Aww, now I'm just a normal, clumsy human again... - -3 -
    1133. -
    1134. - - Yes! I'm human again! Who would want to be a stupid marten anyway? - 10 -
    1135. -
    1136. - - Well, this is one step farther away from becoming a marten, but I suppose it's a step toward becoming every other animal, right? - -1 -
    1137. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml b/1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml deleted file mode 100644 index 4f710edf4..000000000 --- a/1.5/Mods/Martens/Defs/Marten/Marten_MorphDef.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - MartenMorph - - The product of a mad scientist's attempt to create an army of super (cute) soldiers, martenmorphs are deceptively strong fighters, with suprising agility that makes them nigh untouchable in melee. - ZGF_RimMart - -
    1138. ZGF_BeechMart
    1139. -
    1140. ZGF_JapaneseMart
    1141. -
    1142. ZGF_NilgiriMart
    1143. -
    1144. ZGF_PineMart
    1145. -
    1146. ZGF_Sable
    1147. -
    1148. ZGF_YellowMart
    1149. -
    1150. ZGF_MegaMart
    1151. -
    1152. ZGF_Boommarten
    1153. -
      - Carnivora - -
    1154. Cold
    1155. -
    1156. Temperate
    1157. -
    1158. Combat
    1159. -
      - PawnmorphMartenTF - PawnmorphMartenTFPartial - -
    1160. - MartenAspect - false -
    1161. -
      - - - (142,95,57) - (254,154,71) - - - - MartenTransformationMemory - MartenRevertedMemory - -
      -
      \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml deleted file mode 100644 index ba4d8d7e0..000000000 --- a/1.5/Mods/Martens/Defs/Marten/Marten_Partial.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - PawnmorphMartenTFPartial - - This person has mechanites in their blood that are providing them with marten-esk mutations. - -
    1162. - 0.1 - 1 - -
    1163. - Moving - -0.05 -
    1164. -
    1165. - Sight - -0.05 -
    1166. -
    1167. - Manipulation - -0.05 -
    1168. - - - MartenMorph - - - 7.7 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml b/1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml deleted file mode 100644 index 5086351fa..000000000 --- a/1.5/Mods/Martens/Defs/Marten/Marten_Parts.xml +++ /dev/null @@ -1,168 +0,0 @@ - - - MartenMorph - EtherMartenJaw - - -
    1169. Jaw
    1170. -
      - - Parts/Marten/Marten_Muzzle - - -
    1171. - adapting - - [PAWN_nameDef]'s jaw has reshaped into one resembling a mustlid's, complete with razor sharp teeth. The strange shape makes speaking very difficult. - -
    1172. -
    1173. - adapted - - [PAWN_nameDef]'s jaw has reshaped into one resembling a mustlid's, complete with razor sharp teeth. Adapting to it has made speaking less frustrating. - -
    1174. -
    1175. - paragon - - [PAWN_nameDef]'s jaw has reshaped into one resembling a mustlid's, complete with razor sharp teeth. With further adaptation, [PAWN_nameDef] has learned to speak normally. - -
    1176. -
      -
      - - - MartenMorph - EtherMartenEar - - -
    1177. Ear
    1178. -
      - - Parts/Marten/Marten_Ear_Left - Parts/Marten/Marten_Ear_Left_Behind - Parts/Marten/Marten_Ear_Right - Parts/Marten/Marten_Ear_Right_Behind - - -
    1179. - grown - - Trangular, furry ears sit atop [PAWN_nameDef]'s head, like a marten's. - -
    1180. - Hearing - 0.1 -
    1181. - - - -
      -
      - - - MartenMorph - EtherMartenTail - - -
    1182. Tail
    1183. -
    1184. MorphTail
    1185. -
      - - Parts/Raccoon/Raccoon_Tail - - -
    1186. - grown - - A long fluffy marten tail. It's great for helping [PAWN_nameDef] keep [PAWN_objective] balance. - -
    1187. - Moving - 0.10 -
    1188. - - - -
      -
      - - -
      \ No newline at end of file diff --git a/1.5/Mods/Martens/Defs/Races.xml b/1.5/Mods/Martens/Defs/Races.xml deleted file mode 100644 index 9b3cd273b..000000000 --- a/1.5/Mods/Martens/Defs/Races.xml +++ /dev/null @@ -1,168 +0,0 @@ - - - - - ZGF_Chaomart - - TODO - - 6.2 - 1200 - 19 - -60 - 45 - - -
    1189. - - -
    1190. Scratch
    1191. - - 6.5 - 1.8 - FrontLeftPaw - -
    1192. - - -
    1193. Scratch
    1194. - - 6.5 - 1.8 - FrontRightPaw - -
    1195. - - -
    1196. Bite
    1197. - - 7 - 1.8 - Teeth - 0.9 - -
    1198. - - -
    1199. ToxicBite
    1200. - - 12 - 2 - - -
    1201. - Stun - 14 -
    1202. -
      -
      - -
    1203. - - -
    1204. MutagenicStab
    1205. - - 12 - 1.5 - - -
    1206. - Stun - 14 -
    1207. -
      -
      - -
      - - QuadrupedAnimalWithPawsAndTail - true - 0.9 - 0.4 - 0.35 - 0.8 - 1.0 - OmnivoreAnimal,OvivoreAnimal - Advanced - 0.7 - 240 - 1 - 0.05 - 0.25 - 18 - -
    1208. - AnimalBabyTiny - 0 - -
    1209. -
    1210. - AnimalJuvenile - 0.1 -
    1211. -
    1212. - AnimalAdult - 0.3 - -
    1213. -
      - Pawn_Melee_SmallScratch_HitPawn - Pawn_Melee_SmallScratch_HitBuilding - Pawn_Melee_SmallScratch_Miss -
      - -
    1214. AnimalFighter
    1215. -
      -
      - - - ZGF_Chaomart - - ZGF_Chaomart - 60 - 0.3 - - 1 - 1 - - -
    1216. - - - Mobs/Chaoferal/Chaomart - 1.2 - - - Things/Pawn/Animal/Marten/Dessicated_Marten - 1.2 - -
    1217. -
    1218. - - Mobs/Chaoferal/Chaomart - 1.5 - - - Things/Pawn/Animal/Marten/Dessicated_Marten - 1.5 - -
    1219. -
    1220. - - Mobs/Chaoferal/Chaomart - 1.8 - - (0.3, 0.4, 0.3) - (0,0,-0.05) - - - - Things/Pawn/Animal/Marten/Dessicated_Marten - 1.8 - -
    1221. -
      -
      - - -
      diff --git a/1.5/Mods/Martens/Patches/Addpaws.xml b/1.5/Mods/Martens/Patches/Addpaws.xml deleted file mode 100644 index 5dbd0363d..000000000 --- a/1.5/Mods/Martens/Patches/Addpaws.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherDextrousPawHand"]/classInfluences - -
    1222. MartenMorph
    1223. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/RemoteTech/Defs/Things.xml b/1.5/Mods/RemoteTech/Defs/Things.xml deleted file mode 100644 index a51c6aaf5..000000000 --- a/1.5/Mods/RemoteTech/Defs/Things.xml +++ /dev/null @@ -1,106 +0,0 @@ - - - pawnmutategas - - Mutates living beings when exposed to them. - Rapidly dissipates when under an open sky. - RemoteTech.GasCloud_HediffGiver - Ethereal - RealtimeOnly - - rxGasCloud - RemoteTech.Graphic_GasCloud - Mote - (1.3,1.3) - (50,205,50) - - MoteOverhead - - - 30 - - 2 - - 1 - - 200 - - 1000 - - 1 - - 25 - - .225 - - - 4 - 6 - - - true - .5 - MutagenicBuildup - - 0.0050 - 0.0267 - - -
    1224. rxApparel_GasMask
    1225. -
    1226. Apparel_PowerArmorHelmet
    1227. -
      -
      - true - Never - false - false - false -
      - - - pawnmorphMutagasPlaced - - RemoteTech.Building_RemoteExplosive - - Things/Building/tfIED - Graphic_Single - (0, 0, 0) - - (.75, 0.15, .75) - - - A remotely triggered canister filled with mutagen gas. - Arm, then detonate from the Remote Explosives Console. - -
    1228. rxRemoteDetonator
    1229. -
    1230. MutagenExtraction
    1231. -
      - - 60 - 1 - 2 - - -
    1232. -
    1233. - RemoteTech.CompChemicalExplosive - - 50 - 50 - - 0 - .2 - rxGlassBreak - pawnmutategas - 80000 -
    1234. -
    1235. -
    1236. - - - true - Utility - false - - - \ No newline at end of file diff --git a/1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml b/1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml deleted file mode 100644 index a38a73d69..000000000 --- a/1.5/Mods/RimCuisine2/Patches/Addon_RimCuisine2.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - Always - -
    1237. - /Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherBoarSnout"]/comps/li[@Class = "Pawnmorph.Hediffs.CompProperties_TerrainProduction"]/entries - -
    1238. - SoilRich - RC2_RawTruffles - 2.4 - 10 -
    1239. - - -
    1240. - /Defs/Pawnmorph.Hediffs.MutationDef[defName="EtherPigSnout"]/comps/li[@Class = "Pawnmorph.Hediffs.CompProperties_TerrainProduction"]/entries - -
    1241. - SoilRich - RC2_RawTruffles - 10.4 - 10 -
    1242. - - - - - \ No newline at end of file diff --git a/1.5/Mods/VBE/Defs/Backgrounds.xml b/1.5/Mods/VBE/Defs/Backgrounds.xml deleted file mode 100644 index 66c08eacf..000000000 --- a/1.5/Mods/VBE/Defs/Backgrounds.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - EtherBackground - - MutaCorp Datalog FH-27b: We made something we couldn't control. No way we're keeping our funding after this. - Backgrounds/PM_BG - UI/MutagenicHazard - - \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Recipes.xml b/1.5/Mods/VCE/Defs/Recipes.xml deleted file mode 100644 index ccb19267d..000000000 --- a/1.5/Mods/VCE/Defs/Recipes.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - VCE_PM_MutaniteSalt - - Create a lot of green seasoning from lumps of mutanite. Added to meals after cooking for an extra kick. - Grinding mutanite into salt. - CookSpeed - Cook - Recipe_CookMeal - 200 - -
    1243. VCE_CondimentPrepTable
    1244. -
      - -
    1245. - - -
    1246. Mutanite
    1247. - - - 1 - -
      - - -
    1248. Mutanite
    1249. -
      -
      - - 10 - - VCE_CondimentsResearch -
      - - VCE_CowmorphMilkIntoCheese - VCE_CheesePress - -
    1250. TFMilk
    1251. -
      - -
    1252. 25
    1253. -
      - Mutacheese - 1 - true - 10 - 15 - 25 - 35 - 40 - 45 - 100 -
      -
      \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Things.xml b/1.5/Mods/VCE/Defs/Things.xml deleted file mode 100644 index 200acb5fa..000000000 --- a/1.5/Mods/VCE/Defs/Things.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - Mutasalt - - Mutanite that's been ground up into a fine powder, that can be sprinked over foods to give chaotic mutations to anyone who eats them... - - Things/Item/Resource/Mutasalt - Graphic_StackCount - - - 100 - 1 - 1.3 - - -
    1254. VCE_Condiments
    1255. -
      - - NeverForNutrition - PM_ConsumedDigestibleFullRandomTF - -
      - - Mutacheese - - A mutagenic mechanite cheese created by pressing cowmorph milk. This isn't edible, but if consumed it will act as an organic equivalent of a cowmorph syringe. - - Things/Item/Resource/Mutacheese - Graphic_StackCount - - Sellable - 10 - - 500 - 1 - 0.9 - - -
    1256. VCE_Cheese
    1257. -
      - - Meal - NeverForNutrition - VCE_PM_AteCowmorphCheese - EatMeat - Meal_Eat - 1 - 0.03 - Gluttonous - - -
    1258. - CompQuality -
    1259. -
    1260. - - - \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Thoughts.xml b/1.5/Mods/VCE/Defs/Thoughts.xml deleted file mode 100644 index f00027cc4..000000000 --- a/1.5/Mods/VCE/Defs/Thoughts.xml +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - VCE_PM_AteCowmorphCheese - VanillaCookingExpanded.Thought_Hediff - PawnmorphCowTF - true - -
    1261. - - That... was... huh... My whoooole body feels hooooot... - -3 -
    1262. - - - - VanillaCookingExpanded.Thought_Hediff - PM_ConsumedDigestibleFullRandomTF - FullRandomTF - 0.5 - -
    1263. - - I'm not sure the salt on that meal was really salt... - -1 -
    1264. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/VCE/Patches/Patch.xml b/1.5/Mods/VCE/Patches/Patch.xml deleted file mode 100644 index 23d39acdf..000000000 --- a/1.5/Mods/VCE/Patches/Patch.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - Always - /Defs/ItemProcessor.ItemAcceptedDef[defName = "IP_CheesePressFirstItem"]/items - -
    1265. TFMilk
    1266. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/VEF/Defs/ModDef.xml b/1.5/Mods/VEF/Defs/ModDef.xml deleted file mode 100644 index c634346b3..000000000 --- a/1.5/Mods/VEF/Defs/ModDef.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - PM_Pawnmorpher - - cross compatiblity - -
    1267. RangedAnimals
    1268. -
    1269. HediffVerbs
    1270. -
    1271. IntegratedToggle
    1272. -
    1273. ExtraEquipmentVerbs
    1274. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml deleted file mode 100644 index 20bbcdfee..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - PawnmorphLeopardTF - Pawnmorph.Hediffs.Hediff_MutagenicBase - - This person has mechanites in their blood that are slowly mutating them into a leopardmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. - -
    1275. - - 0.05 - -
    1276. - Moving - -0.05 -
    1277. - - - LeopardMorph - - - - TransformationMisc - - - 0.1 - - -
    1278. - - 0.6 - 0.1 - 1 - -
    1279. - Moving - -0.05 -
    1280. -
    1281. - Sight - -0.05 -
    1282. -
    1283. - Manipulation - -0.05 -
    1284. - - - -
    1285. - - 0.65 - 0.1 - 1 - -
    1286. - Moving - -0.05 -
    1287. -
    1288. - Sight - -0.05 -
    1289. -
    1290. - Manipulation - -0.05 -
    1291. - - - LeopardMorph - - - 5 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml deleted file mode 100644 index eeb082a80..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - LeopardTransformationMemory - Pawnmorph.Thoughts.MutationMemory - 1 - -
    1292. - - I feel like I should be out hunting... - -3 -
    1293. -
    1294. - - Rrowwl! I feel so sleek and powerful. - +3 -
    1295. -
    1296. - - I'm a big stupid cat! I don't wanna be a big stupid cat! - -5 -
    1297. -
    1298. - - Now how about giving me the full experience? - +1 -
    1299. -
      -
      - -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml deleted file mode 100644 index 35acc32ef..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - LeopardMorph - - - -
    1300. Temperate
    1301. -
      - PawnmorphLeopardTF - PawnmorphLeopardTFPartial - - - (215,147,96) - - -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml deleted file mode 100644 index 7dceb3931..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - PawnmorphLeopardTFPartial - - This person has mechanites in their blood that are providing them with leopard-esk mutations. - -
    1302. - 0.1 - 1 - -
    1303. - Moving - -0.05 -
    1304. -
    1305. - Sight - -0.05 -
    1306. -
    1307. - Manipulation - -0.05 -
    1308. - - - LeopardMorph - - - 7.7 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml deleted file mode 100644 index fbd3c5069..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - EtherLeopardJaw - LeopardMorph - EtherLeopardJaw - - - - EtherLeopardEar - LeopardMorph - EtherLeopardEar - - - - EtherLeopardTail - LeopardMorph - EtherLeopardTail - - \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml deleted file mode 100644 index 77e2bcc57..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - LeopardRevertedMemory - Pawnmorph.Thoughts.MutationMemory - 1 - -
    1309. - - It's good to be back to normal. - 3 -
    1310. -
    1311. - - Dammit, I wanted to be a big cat! - -3 -
    1312. -
    1313. - - Finally, I'm back to my normal self... - 10 -
    1314. -
    1315. - - Dammit, I wanted to be a big cat! - -3 -
    1316. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml deleted file mode 100644 index d61c58e17..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - A suprisingly docile morph, Leopardmorphs act alot like an oversized and overconfident house cat. Be wary though, unlike their domesticated kin their hunting instincts are sharp and their claws yet sharper. - - LeopardTransformationMemory - LeopardRevertedMemory - - - - \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml deleted file mode 100644 index 212bd4a54..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - Parts/Leopard/Leopard_Muzzle - - - - - - - Parts/Leopard/Leopard_Ear_Left - Parts/Leopard/Leopard_Ear_Left_Behind - Parts/Leopard/Leopard_Ear_Right - Parts/Leopard/Leopard_Ear_Right_Behind - - -
    1317. - grown - - A triangular, fuzzy ear graces [PAWN_nameDef]'s head. It coils back when [PAWN_pronoun] is getting ready to pounce. - -
    1318. -
      -
      - - - - - Parts/Leopard/Leopard_Tail - - -
    1319. - grown - - A long, spotted tail. It flicks back and forth whenever [PAWN_nameDef] is displeased with something. - -
    1320. -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml deleted file mode 100644 index cb0e61632..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - PawnmorphSnowLeopardTF - Pawnmorph.Hediffs.Hediff_MutagenicBase - - This person has mechanites in their blood that are slowly mutating them into a snowy variety of leopardmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. - -
    1321. - - 0.05 - -
    1322. - Moving - -0.05 -
    1323. - - - SnowLeopardMorph - - - - TransformationMisc - - - 0.1 - - -
    1324. - - 0.6 - 0.1 - 1 - -
    1325. - Moving - -0.05 -
    1326. -
    1327. - Sight - -0.05 -
    1328. -
    1329. - Manipulation - -0.05 -
    1330. - - - -
    1331. - - 0.65 - 0.1 - 1 - -
    1332. - Moving - -0.05 -
    1333. -
    1334. - Sight - -0.05 -
    1335. -
    1336. - Manipulation - -0.05 -
    1337. - - - SnowLeopardMorph - - - 5 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml deleted file mode 100644 index cfad53cfc..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - SnowLeopardMorphTranformationMemory - Pawnmorph.Thoughts.MutationMemory - 1 - -
    1338. - - I feel like I should be jumping around in the snow. - True - 0 -
    1339. -
    1340. - - I've got a built-in winter coat, with a cool design to boot! - True - 5 -
    1341. -
    1342. - - Ughhh... why am I so clumsy now? - True - -5 -
    1343. -
      -
      - -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml deleted file mode 100644 index c711f550d..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - SnowLeopardMorph - - - -
    1344. Cold
    1345. -
      - PawnmorphSnowLeopardTF - PawnmorphSnowLeopardTFPartial - - - (204,204,204) - - - - SnowLeopardMorphTranformationMemory - -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml deleted file mode 100644 index 85a49f9b2..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - PawnmorphSnowLeopardTFPartial - - This person has mechanites in their blood that are providing them with snow leopard-esk mutations. - -
    1346. - 0.1 - 1 - -
    1347. - Moving - -0.05 -
    1348. -
    1349. - Sight - -0.05 -
    1350. -
    1351. - Manipulation - -0.05 -
    1352. - - - SnowLeopardMorph - - - 7.7 - - - -
      -
      -
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml deleted file mode 100644 index 3aa4c3727..000000000 --- a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - EtherSnowLeopardJaw - SnowLeopardMorph - EtherSnowLeopardJaw - - - - EtherSnowLeopardEar - SnowLeopardMorph - EtherSnowLeopardEar - - - - EtherSnowLeopardTail - SnowLeopardMorph - EtherSnowLeopardTail - - \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml b/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml deleted file mode 100644 index b3a9a93dc..000000000 --- a/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - -
    1353. - - -
    1354. - Defs/Pawnmorph.MorphDef[defName="LeopardMorph"]/race - - ACPAmurLeopard - -
    1355. -
    1356. - Defs/Pawnmorph.MorphDef[defName="SnowLeopardMorph"]/race - - ACPSnowLeopard - -
    1357. -
      - -
    1358. - - -
    1359. - Defs/Pawnmorph.MorphDef[defName="LeopardMorph"]/race - - Leopard - -
    1360. -
    1361. - Defs/Pawnmorph.MorphDef[defName="SnowLeopardMorph"]/race - - SnowLeopard - -
    1362. - - - -
      -
      \ No newline at end of file From 704823ef025ceea3f1ba53690f2f662ddfa89569 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 16 Mar 2024 19:01:42 +0100 Subject: [PATCH 05/24] First pass on updating body addons --- .../Reptile/Ophidia/Cobra/Cobra_Hybrid.xml | 21 +- 1.5/Patches/Core_HumanHedifGraphics.xml | 400 +++++++++++------- 2 files changed, 269 insertions(+), 152 deletions(-) diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml index 26fcd3a85..9c8ea2dad 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml @@ -431,7 +431,7 @@ - + SnakeMorph A snakelike human, with a large and powerful tail that has replaced its legs. This allows for viper-quick movement, and while you might expect them to lack arms, most cobramorphs do retain their arms. In many respects, they are a mutagenic-born mythological naga. @@ -557,15 +557,20 @@
    1363. - - Parts/None/None - TailLeg + Parts/Cobra/Cobra_Tail + + + TailLeg + false + + EtherSnakeTail + + true + false + + true false - false - - Parts/Cobra/Cobra_Tail - diff --git a/1.5/Patches/Core_HumanHedifGraphics.xml b/1.5/Patches/Core_HumanHedifGraphics.xml index 285019172..19d344d0d 100644 --- a/1.5/Patches/Core_HumanHedifGraphics.xml +++ b/1.5/Patches/Core_HumanHedifGraphics.xml @@ -8,14 +8,17 @@ Muzzle SkinHair Parts/None/None - Jaw true false - -
    1364. FullHead
    1365. - - - + + + Jaw + false + + +
    1366. FullHead
    1367. +
      +
      -0.328 @@ -34,14 +37,18 @@ MuzzleMale SkinHair Parts/None/None - Jaw true false - true - false - -
    1368. FullHead
    1369. -
      + + + Jaw + false + + +
    1370. FullHead
    1371. +
      + Male +
      -0.328 @@ -53,8 +60,6 @@ -0.328 - -
    1372. @@ -62,14 +67,18 @@ MuzzleFemale SkinHair Parts/None/None - Jaw true false - false - true - -
    1373. FullHead
    1374. - + + + Jaw + false + + +
    1375. FullHead
    1376. +
      + Female +
      -0.328 @@ -81,8 +90,6 @@ -0.328 - -
    1377. @@ -90,13 +97,18 @@ BirdJawOrnament SkinHair Parts/None/None - Jaw true false false - -
    1378. FullHead
    1379. - + + + Jaw + false + + +
    1380. FullHead
    1381. +
      +
      -0.328 @@ -108,8 +120,6 @@ -0.328 - -
    1382. @@ -117,51 +127,63 @@ Parts/None/None LeftEar SkinHair - Ear - left ear true true - - + + + Ear + left ear + false + +
    1383. false Parts/None/None - Ear - left ear LeftEarBehind SkinHair true false - - + + + Ear + left ear + false + +
    1384. false Parts/None/None - Ear - right ear true true RightEar SkinHair - - + + + Ear + right ear + false + +
    1385. false Parts/None/None - Ear - right ear true RightEarBehindHead SkinHair false - - + + + Ear + right ear + false + +
    1386. @@ -169,12 +191,15 @@ Tail SkinHair Parts/None/None - tail true false false - true - true + + + tail + false + + @@ -204,8 +229,6 @@ - -
    1387. @@ -213,13 +236,19 @@ MaleTail SkinHair Parts/None/None - tail true false - false - true - false - + + + tail + false + + + true + false + + Male + @@ -250,8 +279,6 @@ - -
    1388. @@ -259,13 +286,19 @@ FemaleTail SkinHair Parts/None/None - tail true false - false - false - true - + + + tail + false + + + true + false + + Female + @@ -295,8 +328,6 @@ - -
    1389. @@ -304,10 +335,18 @@ Parts/None/None BehindBodyTail SkinHair - tail false false - false + + + tail + false + + + true + false + + @@ -337,19 +376,25 @@ - -
    1390. false Parts/None/None - tail + BodyExtendingTail true false - false - BodyExtendingTail SkinHair + + + tail + false + + + true + false + + @@ -371,8 +416,6 @@ - -
    1391. @@ -380,10 +423,15 @@ Headspikes SkinHair Parts/None/None - Head true true false + + + Head + false + +
    1392. @@ -391,12 +439,15 @@ Skullspike SkinHair Parts/None/None - Head true true false - - + + + Head + false + +
    1393. @@ -404,19 +455,19 @@ Horns SkinHair Parts/None/None - Skull true true + + + Skull + false + + 0.1 - - - Parts/COMBINATIONS/Hornbill/Hornbill - -
    1394. @@ -424,16 +475,21 @@ CobraHood SkinHair Parts/None/None - Head true true false - -
    1395. UpperHead
    1396. -
    1397. FullHead
    1398. - - - + + + Head + false + + + +
    1399. UpperHead
    1400. +
    1401. FullHead
    1402. +
      +
      +
    1403. @@ -441,15 +497,20 @@ CobraHoodBackground SkinHair Parts/None/None - Head true false - -
    1404. UpperHead
    1405. -
    1406. FullHead
    1407. - - - + + + Head + false + + + +
    1408. UpperHead
    1409. +
    1410. FullHead
    1411. +
      +
      +
    1412. @@ -457,9 +518,18 @@ SkinHair false Parts/None/None - Waist true false + + + Waist + false + + + true + false + + @@ -478,18 +548,24 @@ - -
    1413. false Parts/None/None - Arm Wings SkinHair true - false + + + Arm + false + + + true + false + + @@ -503,8 +579,6 @@ - -
    1414. @@ -512,9 +586,14 @@ Spines SkinHair Parts/None/None - Spine true false + + + Spine + false + + @@ -526,8 +605,6 @@ - -
    1415. @@ -535,10 +612,18 @@ SpinesBehind SkinHair Parts/None/None - Spine false false - false + + + Spine + false + + + true + false + + @@ -552,8 +637,6 @@ - -
    1416. @@ -561,10 +644,18 @@ Torso SkinHair Parts/None/None - Torso true false - false + + + Torso + false + + + true + false + + @@ -578,8 +669,6 @@ - -
    1417. @@ -587,10 +676,18 @@ TorsoBehind SkinHair Parts/None/None - Torso false false - false + + + Torso + false + + + true + false + + @@ -604,16 +701,19 @@ - -
    1418. Parts/None/None LeftArm SkinHair - Arm - left arm + + + Arm + left arm + false + + -0.1 @@ -656,9 +756,6 @@ - - - true
    1419. @@ -666,8 +763,13 @@ Parts/None/None LeftArmBehind SkinHair - Arm - left arm + + + Arm + left arm + false + + @@ -707,16 +809,19 @@ false - -
    1420. Parts/None/None RightArm SkinHair - Arm - right arm + + + Arm + right arm + false + + -0.1 @@ -760,16 +865,19 @@ true - -
    1421. Parts/None/None RightArmBehind SkinHair - Arm - right arm + + + Arm + right arm + false + + @@ -808,8 +916,6 @@ - - false
    1422. @@ -817,25 +923,31 @@ Parts/None/None LeftEye SkinHair - Eye - left eye true true - - + + + Eye + left eye + false + +
    1423. Parts/None/None - Eye - right eye RightEye SkinHair true true - - + + + Eye + right eye + false + +
    1424. - + \ No newline at end of file From 1233052f9a60e1a0a1314a9ebfd4ac6e07478181 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 16 Mar 2024 19:15:58 +0100 Subject: [PATCH 06/24] Skillgains syntax updated --- .../BackstoryDefs/Backstories_General.xml | 20 +++---------- .../Canid/Lupine/Lupine_Backstories.xml | 30 ++++--------------- .../Carnivora/Vulpine/Vulpine_Backstories.xml | 10 ++----- 1.5/Defs/Traits/HybridTraits.xml | 10 ++----- 4 files changed, 14 insertions(+), 56 deletions(-) diff --git a/1.5/Defs/BackstoryDefs/Backstories_General.xml b/1.5/Defs/BackstoryDefs/Backstories_General.xml index 92bdbf956..94ae70d29 100644 --- a/1.5/Defs/BackstoryDefs/Backstories_General.xml +++ b/1.5/Defs/BackstoryDefs/Backstories_General.xml @@ -178,14 +178,8 @@
    1425. FreeMutant
    1426. -
    1427. - Shooting - 3 -
    1428. -
    1429. - Melee - 3 -
    1430. + 3 + 3
    1431. @@ -210,14 +204,8 @@
    1432. FreeMutant
    1433. -
    1434. - Social - -2 -
    1435. -
    1436. - Animals - 2 -
    1437. + -2 + 2
    1438. diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml index eb357aed4..8ea36e0df 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Lupine_Backstories.xml @@ -12,18 +12,9 @@
    1439. FreeMutant
    1440. -
    1441. - Melee - 5 -
    1442. -
    1443. - Social - 3 -
    1444. -
    1445. - Intellectual - -2 -
    1446. + 5 + 3 + -2
    1447. @@ -49,18 +40,9 @@
    1448. FreeMutant
    1449. -
    1450. - Melee - 2 -
    1451. -
    1452. - Social - -2 -
    1453. -
    1454. - Intellectual - 2 -
    1455. + 2 + -2 + 2
    1456. diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml index a78deee49..4a1650457 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Vulpine_Backstories.xml @@ -12,14 +12,8 @@
    1457. FreeMutant
    1458. -
    1459. - Intellectual - 3 -
    1460. -
    1461. - Social - 2 -
    1462. + 3 + 2
    1463. diff --git a/1.5/Defs/Traits/HybridTraits.xml b/1.5/Defs/Traits/HybridTraits.xml index 7ffb85999..161dad988 100644 --- a/1.5/Defs/Traits/HybridTraits.xml +++ b/1.5/Defs/Traits/HybridTraits.xml @@ -7,14 +7,8 @@ {PAWN_nameDef} is now a natural hunter. -
    1464. - Shooting - 1 -
    1465. -
    1466. - Animals - 1 -
    1467. + 1 + 1 From 3f4ed95b39206445a7e4e8dbb7b722a0722d2b67 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 16 Mar 2024 19:16:10 +0100 Subject: [PATCH 07/24] Possible optional VEF? --- 1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml | 2 +- .../VEFramework/Defs}/MutagenCentrifuge.xml | 4 ++-- .../VEFramework/Defs}/MutagenTank.xml | 0 .../VEFramework/Defs}/PipenetDef.xml | 0 .../VEFramework/Defs}/SlurryCanner.xml | 0 .../VEFramework/Defs}/SlurryDecanner.xml | 0 .../VEFramework/Defs}/SlurryPipe.xml | 0 LoadFolders.xml | 10 +++++++--- 8 files changed, 10 insertions(+), 6 deletions(-) rename 1.5/{Defs/ThingDefs_Buildings => Mods/VEFramework/Defs}/MutagenCentrifuge.xml (96%) rename 1.5/{Defs/ThingDefs_Buildings => Mods/VEFramework/Defs}/MutagenTank.xml (100%) rename 1.5/{Defs/ThingDefs_Buildings => Mods/VEFramework/Defs}/PipenetDef.xml (100%) rename 1.5/{Defs/ThingDefs_Buildings => Mods/VEFramework/Defs}/SlurryCanner.xml (100%) rename 1.5/{Defs/ThingDefs_Buildings => Mods/VEFramework/Defs}/SlurryDecanner.xml (100%) rename 1.5/{Defs/ThingDefs_Buildings => Mods/VEFramework/Defs}/SlurryPipe.xml (100%) diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml b/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml index 7397abe86..bf4845782 100644 --- a/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml +++ b/1.5/Defs/ThingDefs_Buildings/MutagenChamberNew.xml @@ -62,7 +62,7 @@ 0 -
    1468. +
    1469. PM_SlurryNet MechaniteSlurry
    1470. diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml b/1.5/Mods/VEFramework/Defs/MutagenCentrifuge.xml similarity index 96% rename from 1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml rename to 1.5/Mods/VEFramework/Defs/MutagenCentrifuge.xml index 8a15c9988..61745804c 100644 --- a/1.5/Defs/ThingDefs_Buildings/MutagenCentrifuge.xml +++ b/1.5/Mods/VEFramework/Defs/MutagenCentrifuge.xml @@ -35,9 +35,9 @@ 8 MutagenCloud_Large -
    1471. +
    1472. PM_SlurryNet -
    1473. +
      Building diff --git a/1.5/Defs/ThingDefs_Buildings/MutagenTank.xml b/1.5/Mods/VEFramework/Defs/MutagenTank.xml similarity index 100% rename from 1.5/Defs/ThingDefs_Buildings/MutagenTank.xml rename to 1.5/Mods/VEFramework/Defs/MutagenTank.xml diff --git a/1.5/Defs/ThingDefs_Buildings/PipenetDef.xml b/1.5/Mods/VEFramework/Defs/PipenetDef.xml similarity index 100% rename from 1.5/Defs/ThingDefs_Buildings/PipenetDef.xml rename to 1.5/Mods/VEFramework/Defs/PipenetDef.xml diff --git a/1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml b/1.5/Mods/VEFramework/Defs/SlurryCanner.xml similarity index 100% rename from 1.5/Defs/ThingDefs_Buildings/SlurryCanner.xml rename to 1.5/Mods/VEFramework/Defs/SlurryCanner.xml diff --git a/1.5/Defs/ThingDefs_Buildings/SlurryDecanner.xml b/1.5/Mods/VEFramework/Defs/SlurryDecanner.xml similarity index 100% rename from 1.5/Defs/ThingDefs_Buildings/SlurryDecanner.xml rename to 1.5/Mods/VEFramework/Defs/SlurryDecanner.xml diff --git a/1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml b/1.5/Mods/VEFramework/Defs/SlurryPipe.xml similarity index 100% rename from 1.5/Defs/ThingDefs_Buildings/SlurryPipe.xml rename to 1.5/Mods/VEFramework/Defs/SlurryPipe.xml diff --git a/LoadFolders.xml b/LoadFolders.xml index 39ea6b194..2f83b1f07 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -41,11 +41,15 @@
    1474. 1.4/Mods/VBE
    1475. 1.4/Mods/GiddyUp
    1476. 1.4/Mods/GiddyUp-2
    1477. - - -
    1478. 1.4/Mods/ZWE-ACP
    1479. 1.4/Mods/ADogSaidAnimalProsthetics
    1480. 1.4/Mods/CombatExtended
    1481. + +
    1482. /
    1483. +
    1484. 1.4
    1485. +
    1486. 1.4/Mods/Ideology
    1487. +
    1488. 1.4/Mods/Royalty
    1489. +
    1490. 1.5/Mods/VEFramework
    1491. + \ No newline at end of file From a8c854f2b683737e3eae087b487a5fecf5bc28b5 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 16 Mar 2024 19:17:45 +0100 Subject: [PATCH 08/24] Updated loadFolders --- LoadFolders.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/LoadFolders.xml b/LoadFolders.xml index 2f83b1f07..afac1d9f7 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -47,9 +47,9 @@
    1492. /
    1493. -
    1494. 1.4
    1495. -
    1496. 1.4/Mods/Ideology
    1497. -
    1498. 1.4/Mods/Royalty
    1499. +
    1500. 1.5
    1501. +
    1502. 1.5/Mods/Ideology
    1503. +
    1504. 1.5/Mods/Royalty
    1505. 1.5/Mods/VEFramework
    1506. - +
      \ No newline at end of file From c300376a56d727440e1066dda05f0201d1869c9c Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sun, 17 Mar 2024 12:25:47 +0100 Subject: [PATCH 09/24] More work in progress --- .gitignore | 2 + .../Reptile/Ophidia/Cobra/Cobra_Hybrid.xml | 2 +- 1.5/Defs/Races/Chaocreatures/Chaoboom.xml | 4 +- 1.5/Defs/StatDefs/MutagenStats.xml | 2 +- 1.5/Defs/Terrain/Mutagenics.xml | 2 +- 1.5/Defs/ThingDefs_Buildings/Genebank.xml | 1 + .../ThingDefs_Buildings/GenebankAdvanced.xml | 1 + .../Defs/Buildings}/MutagenCentrifuge.xml | 0 .../Defs/Buildings}/MutagenTank.xml | 0 .../Defs/Buildings}/SlurryCanner.xml | 0 .../Defs/Buildings}/SlurryDecanner.xml | 0 .../Defs/Buildings}/SlurryPipe.xml | 0 .../VEF}/Defs/Incidents/MutagenicLeak.xml | 0 1.5/Mods/VEF/Defs/ModDef.xml | 13 +++ .../{VEFramework => VEF}/Defs/PipenetDef.xml | 0 1.5/Patches/Core_HumanHedifGraphics.xml | 28 +++-- Documentation/Pawnmorphs.Pipesystem.xml | 8 ++ LoadFolders.xml | 2 +- Source/Dependencies/AlienRace.dll | Bin 325632 -> 321024 bytes Source/Pawnmorphs/Esoteria/AddMorphsToPawn.cs | 34 ------ .../Esoteria/DefOfs/PM_ThoughtDefOf.cs | 2 +- .../Esoteria/Graphics/MorphGraphicsUtils.cs | 2 +- .../Esoteria/Graphics/MutationGraphicsData.cs | 9 +- .../Graphics/MutationStageGraphicsData.cs | 47 -------- .../Esoteria/Graphics/TaggedBodyAddon.cs | 1 - .../Esoteria/HPatches/PawnCompPatches.cs | 30 ++--- .../Esoteria/Hediff_AddedMutation.cs | 1 - .../Esoteria/Hediffs/MutationStage.cs | 2 +- .../Esoteria/Hybrids/RaceGenerator.cs | 24 ++-- .../Pawnmorphs/Esoteria/MutationUtilities.cs | 4 +- Source/Pawnmorphs/Esoteria/PMThingDefOf.cs | 1 - Source/Pawnmorphs/Esoteria/Pawnmorph.csproj | 18 +-- .../Pawnmorphs/Esoteria/PawnmorphMPCompat.cs | 103 ------------------ .../Pawnmorphs/Esoteria/PawnmorpherModInit.cs | 30 ++--- .../Esoteria/PawnmorpherSettings.cs | 35 +++++- .../Esoteria/Recipes/PMRecipeDefGenerator.cs | 5 +- Source/Pawnmorphs/Pawnmorph.sln | 14 +++ .../Buildings/MutagenTank.cs | 0 .../Buildings/MutaniteCentrifuge.cs | 0 .../DefOf}/SlurryNetDefOf.cs | 0 .../IncidentWorker/MutagenicLeak.cs | 0 .../Pawnmorphs.Pipesystem.csproj | 28 +++++ .../PlaceWorkers/Centrifuge.cs | 0 43 files changed, 186 insertions(+), 269 deletions(-) rename 1.5/Mods/{VEFramework/Defs => VEF/Defs/Buildings}/MutagenCentrifuge.xml (100%) rename 1.5/Mods/{VEFramework/Defs => VEF/Defs/Buildings}/MutagenTank.xml (100%) rename 1.5/Mods/{VEFramework/Defs => VEF/Defs/Buildings}/SlurryCanner.xml (100%) rename 1.5/Mods/{VEFramework/Defs => VEF/Defs/Buildings}/SlurryDecanner.xml (100%) rename 1.5/Mods/{VEFramework/Defs => VEF/Defs/Buildings}/SlurryPipe.xml (100%) rename 1.5/{ => Mods/VEF}/Defs/Incidents/MutagenicLeak.xml (100%) create mode 100644 1.5/Mods/VEF/Defs/ModDef.xml rename 1.5/Mods/{VEFramework => VEF}/Defs/PipenetDef.xml (100%) create mode 100644 Documentation/Pawnmorphs.Pipesystem.xml delete mode 100644 Source/Pawnmorphs/Esoteria/AddMorphsToPawn.cs delete mode 100644 Source/Pawnmorphs/Esoteria/Graphics/MutationStageGraphicsData.cs delete mode 100644 Source/Pawnmorphs/Esoteria/PawnmorphMPCompat.cs rename Source/Pawnmorphs/{Esoteria => Pawnmorphs.Pipesystem}/Buildings/MutagenTank.cs (100%) rename Source/Pawnmorphs/{Esoteria => Pawnmorphs.Pipesystem}/Buildings/MutaniteCentrifuge.cs (100%) rename Source/Pawnmorphs/{Esoteria => Pawnmorphs.Pipesystem/DefOf}/SlurryNetDefOf.cs (100%) rename Source/Pawnmorphs/{Esoteria => Pawnmorphs.Pipesystem}/IncidentWorker/MutagenicLeak.cs (100%) create mode 100644 Source/Pawnmorphs/Pawnmorphs.Pipesystem/Pawnmorphs.Pipesystem.csproj rename Source/Pawnmorphs/{Esoteria => Pawnmorphs.Pipesystem}/PlaceWorkers/Centrifuge.cs (100%) diff --git a/.gitignore b/.gitignore index b659899bb..e998f9635 100644 --- a/.gitignore +++ b/.gitignore @@ -280,3 +280,5 @@ __pycache__/ /Documentation/latex /Source/Pawnmorphs/MigrationBackup/88b43dee/Pawnmorph /1.1/ModIntegrations/*/Assemblies/PMCompactHediffIIntegration.dll +/1.5/Mods/VEF/Assemblies/0Harmony.dll +/1.5/Mods/VEF/Assemblies/Pawnmorphs.Pipesystem.dll diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml index 9c8ea2dad..6670f3bb1 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml @@ -519,7 +519,7 @@ 0.02 Pawn_Melee_Punch_HitPawn - Pawn_Melee_Punch_HitBuilding + Pawn_Melee_SmallScratch_HitBuilding Pawn_Melee_Punch_Miss diff --git a/1.5/Defs/Races/Chaocreatures/Chaoboom.xml b/1.5/Defs/Races/Chaocreatures/Chaoboom.xml index a64550b1e..afcb3c54a 100644 --- a/1.5/Defs/Races/Chaocreatures/Chaoboom.xml +++ b/1.5/Defs/Races/Chaocreatures/Chaoboom.xml @@ -84,7 +84,9 @@ Chaoboom false - EtherGun.DeathActionWorker_MutagenicExplosion + + EtherGun.DeathActionWorker_MutagenicExplosion + 2.0 OmnivoreAnimal, OmnivoreRoughAnimal 0.50 diff --git a/1.5/Defs/StatDefs/MutagenStats.xml b/1.5/Defs/StatDefs/MutagenStats.xml index e5355961d..cb03a71ea 100644 --- a/1.5/Defs/StatDefs/MutagenStats.xml +++ b/1.5/Defs/StatDefs/MutagenStats.xml @@ -26,7 +26,7 @@ PercentZero 75 -
    1507. +
    1508. MutagenSensitivity_Apparel
    1509. diff --git a/1.5/Defs/Terrain/Mutagenics.xml b/1.5/Defs/Terrain/Mutagenics.xml index 3a56b20b2..b41289d7f 100644 --- a/1.5/Defs/Terrain/Mutagenics.xml +++ b/1.5/Defs/Terrain/Mutagenics.xml @@ -71,7 +71,7 @@ 0.05 ConstructMetal (160,225,60) - BulletImpact_Metal + BulletImpact_Metal MeleeHit_Metal_Sharp MeleeHit_Metal_Blunt diff --git a/1.5/Defs/ThingDefs_Buildings/Genebank.xml b/1.5/Defs/ThingDefs_Buildings/Genebank.xml index 7bd544b73..82d206ca8 100644 --- a/1.5/Defs/ThingDefs_Buildings/Genebank.xml +++ b/1.5/Defs/ThingDefs_Buildings/Genebank.xml @@ -3,6 +3,7 @@ PM_Genebank A morphsilk tape-reel storage device that's optimised for storing genetic information. Can store 64 kMutabytes of information. + true Things/Building/GeneticStorage/GeneticStorage Graphic_Multi diff --git a/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml b/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml index 98c572f16..6572db946 100644 --- a/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml +++ b/1.5/Defs/ThingDefs_Buildings/GenebankAdvanced.xml @@ -2,6 +2,7 @@ PM_GenebankLarge + true A morphsilk tape-reel storage device that's optimised for storing genetic information. This advanced version can store 256 kMutabytes of information. Things/Building/GeneticStorageAdvanced/GenebankAdvanced diff --git a/1.5/Mods/VEFramework/Defs/MutagenCentrifuge.xml b/1.5/Mods/VEF/Defs/Buildings/MutagenCentrifuge.xml similarity index 100% rename from 1.5/Mods/VEFramework/Defs/MutagenCentrifuge.xml rename to 1.5/Mods/VEF/Defs/Buildings/MutagenCentrifuge.xml diff --git a/1.5/Mods/VEFramework/Defs/MutagenTank.xml b/1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml similarity index 100% rename from 1.5/Mods/VEFramework/Defs/MutagenTank.xml rename to 1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml diff --git a/1.5/Mods/VEFramework/Defs/SlurryCanner.xml b/1.5/Mods/VEF/Defs/Buildings/SlurryCanner.xml similarity index 100% rename from 1.5/Mods/VEFramework/Defs/SlurryCanner.xml rename to 1.5/Mods/VEF/Defs/Buildings/SlurryCanner.xml diff --git a/1.5/Mods/VEFramework/Defs/SlurryDecanner.xml b/1.5/Mods/VEF/Defs/Buildings/SlurryDecanner.xml similarity index 100% rename from 1.5/Mods/VEFramework/Defs/SlurryDecanner.xml rename to 1.5/Mods/VEF/Defs/Buildings/SlurryDecanner.xml diff --git a/1.5/Mods/VEFramework/Defs/SlurryPipe.xml b/1.5/Mods/VEF/Defs/Buildings/SlurryPipe.xml similarity index 100% rename from 1.5/Mods/VEFramework/Defs/SlurryPipe.xml rename to 1.5/Mods/VEF/Defs/Buildings/SlurryPipe.xml diff --git a/1.5/Defs/Incidents/MutagenicLeak.xml b/1.5/Mods/VEF/Defs/Incidents/MutagenicLeak.xml similarity index 100% rename from 1.5/Defs/Incidents/MutagenicLeak.xml rename to 1.5/Mods/VEF/Defs/Incidents/MutagenicLeak.xml diff --git a/1.5/Mods/VEF/Defs/ModDef.xml b/1.5/Mods/VEF/Defs/ModDef.xml new file mode 100644 index 000000000..c634346b3 --- /dev/null +++ b/1.5/Mods/VEF/Defs/ModDef.xml @@ -0,0 +1,13 @@ + + + PM_Pawnmorpher + + cross compatiblity + +
    1510. RangedAnimals
    1511. +
    1512. HediffVerbs
    1513. +
    1514. IntegratedToggle
    1515. +
    1516. ExtraEquipmentVerbs
    1517. +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/VEFramework/Defs/PipenetDef.xml b/1.5/Mods/VEF/Defs/PipenetDef.xml similarity index 100% rename from 1.5/Mods/VEFramework/Defs/PipenetDef.xml rename to 1.5/Mods/VEF/Defs/PipenetDef.xml diff --git a/1.5/Patches/Core_HumanHedifGraphics.xml b/1.5/Patches/Core_HumanHedifGraphics.xml index 19d344d0d..ad303b23e 100644 --- a/1.5/Patches/Core_HumanHedifGraphics.xml +++ b/1.5/Patches/Core_HumanHedifGraphics.xml @@ -15,9 +15,11 @@ Jaw false - -
    1518. FullHead
    1519. -
      + + +
    1520. FullHead
    1521. +
      +
      @@ -44,9 +46,11 @@ Jaw false - -
    1522. FullHead
    1523. -
      + + +
    1524. FullHead
    1525. +
      +
      Male @@ -74,10 +78,12 @@ Jaw false +
    1526. FullHead
    1527. - Female +
      + Female @@ -105,9 +111,11 @@ Jaw false - -
    1528. FullHead
    1529. -
      + + +
    1530. FullHead
    1531. +
      +
      diff --git a/Documentation/Pawnmorphs.Pipesystem.xml b/Documentation/Pawnmorphs.Pipesystem.xml new file mode 100644 index 000000000..90d85bb59 --- /dev/null +++ b/Documentation/Pawnmorphs.Pipesystem.xml @@ -0,0 +1,8 @@ + + + + Pawnmorphs.Pipesystem + + + + diff --git a/LoadFolders.xml b/LoadFolders.xml index afac1d9f7..2d3abe986 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -50,6 +50,6 @@
    1532. 1.5
    1533. 1.5/Mods/Ideology
    1534. 1.5/Mods/Royalty
    1535. -
    1536. 1.5/Mods/VEFramework
    1537. +
    1538. 1.4/Mods/VEF
    1539. \ No newline at end of file diff --git a/Source/Dependencies/AlienRace.dll b/Source/Dependencies/AlienRace.dll index 5a3129b0fdf3bed99ff0b4aede7edd83e130e735..8b8ad4e2d42c1f45e32558fc5fa461a67e482b38 100644 GIT binary patch literal 321024 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 /// simple class containing data about a specific set of mutations graphics /// - public class MutationGraphicsData : ExtendedHediffGraphic + public class MutationGraphicsData : ExtendedConditionGraphic { /// /// The anchor identifier /// public string anchorID; + public string path; + public MutationDef hediff; + + [UsedImplicitly] - public new void LoadDataFromXmlCustom(XmlNode xmlRoot) + public virtual void LoadDataFromXmlCustom(XmlNode xmlRoot) { anchorID = xmlRoot.Name; Traverse traverse = Traverse.Create(this); diff --git a/Source/Pawnmorphs/Esoteria/Graphics/MutationStageGraphicsData.cs b/Source/Pawnmorphs/Esoteria/Graphics/MutationStageGraphicsData.cs deleted file mode 100644 index 1d818e89a..000000000 --- a/Source/Pawnmorphs/Esoteria/Graphics/MutationStageGraphicsData.cs +++ /dev/null @@ -1,47 +0,0 @@ -// MutationGraphicsData.cs created by Iron Wolf for Pawnmorph on 08/15/2021 12:52 PM -// last updated 08/15/2021 12:52 PM - -using System.Collections.Generic; -using System.Globalization; -using System.Xml; -using AlienRace.ExtendedGraphics; -using HarmonyLib; -using JetBrains.Annotations; -using UnityEngine; -using Verse; -using static AlienRace.AlienPartGenerator; - -namespace Pawnmorph.GraphicSys -{ - /// - /// simple class containing data about a specific set of mutations graphics - /// - public class MutationStageGraphicsData : ExtendedHediffSeverityGraphic - { - /// - /// The anchor identifier - /// - public string anchorID; - - [UsedImplicitly] - public new void LoadDataFromXmlCustom(XmlNode xmlRoot) - { - anchorID = xmlRoot.Name; - Traverse traverse = Traverse.Create(this); - foreach (XmlNode childNode in xmlRoot.ChildNodes) - { - Traverse field = traverse.Field(childNode.Name); - - if (field.FieldExists()) - { - field.SetValue(field.GetValueType().IsGenericType ? DirectXmlToObject.GetObjectFromXmlMethod(field.GetValueType())(childNode, arg2: false) : ParseHelper.FromString(childNode.InnerXml.Trim(), field.GetValueType())); - } - else - { - path = childNode.Value; - } - } - - } - } -} \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/Graphics/TaggedBodyAddon.cs b/Source/Pawnmorphs/Esoteria/Graphics/TaggedBodyAddon.cs index aeaade99e..535dc3926 100644 --- a/Source/Pawnmorphs/Esoteria/Graphics/TaggedBodyAddon.cs +++ b/Source/Pawnmorphs/Esoteria/Graphics/TaggedBodyAddon.cs @@ -15,6 +15,5 @@ public class TaggedBodyAddon : AlienPartGenerator.BodyAddon /// The anchor identifier ///

      eOY26#-SY|3tqb!( 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 d=lc3z#rGfUOcM~$>2vGn4 literal 325632 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/r91TiSC?~h{hJ=^g>8fuSVISMqW)i(OLqc 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⁣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 diff --git a/Source/Pawnmorphs/Esoteria/AddMorphsToPawn.cs b/Source/Pawnmorphs/Esoteria/AddMorphsToPawn.cs deleted file mode 100644 index a3cd684f5..000000000 --- a/Source/Pawnmorphs/Esoteria/AddMorphsToPawn.cs +++ /dev/null @@ -1,34 +0,0 @@ -using Verse; - -#pragma warning disable 1591 //this is going to be re worked, disabling for now - -namespace Pawnmorph -{ - public class AddMorphsToPawn - { - public Pawn GetMorphsForPawnKind(Pawn pawn, PawnKindDef pawnKind) - { - /* - if (MP.IsInMultiplayer) - { - Rand.PushState(RandUtilities.MPSafeSeed); - } - - if (pawnKind.HasModExtension()){ - - MorphPawnKindExtension pKE = pawnKind.GetModExtension(); - IEnumerable mcd = MorphCategoryDefOf.Combat.AllMorphsInCategories; - - for (var i = 0; i < pKE.maxHediffs; i++) - { - HediffDef hediff = mcd.RandomElement(); - - - } - - } - */ - return pawn; - } - } -} diff --git a/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs b/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs index 0328f5194..dddc1f6e7 100644 --- a/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs +++ b/Source/Pawnmorphs/Esoteria/DefOfs/PM_ThoughtDefOf.cs @@ -15,7 +15,7 @@ public static class PM_ThoughtDefOf { static PM_ThoughtDefOf() { - DefOfHelper.EnsureInitializedInCtor(typeof(ThoughtDef)); + DefOfHelper.EnsureInitializedInCtor(typeof(PM_ThoughtDefOf)); } public static ThoughtDef AteHumanlikeMeatDirect; diff --git a/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs b/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs index fa1162e9b..ec0eae551 100644 --- a/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs +++ b/Source/Pawnmorphs/Esoteria/Graphics/MorphGraphicsUtils.cs @@ -284,8 +284,8 @@ public static void RefreshGraphics([NotNull] this Pawn pawn) { if (Current.ProgramState != ProgramState.Playing) return; //make sure we don't refresh the graphics while the game is loading + pawn.Drawer.renderer.SetAllGraphicsDirty(); - if (pawn.jobs == null) return; //needed for weird bug where jobs is null on initialization } } } \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs b/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs index e044ea2ff..5f0b7c7c0 100644 --- a/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs +++ b/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs @@ -4,6 +4,7 @@ using System.Xml; using HarmonyLib; using JetBrains.Annotations; +using Pawnmorph.Hediffs; using Verse; using static AlienRace.AlienPartGenerator; @@ -12,15 +13,19 @@ namespace Pawnmorph.GraphicSys ///

      public string anchorID; - } } \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/HPatches/PawnCompPatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/PawnCompPatches.cs index fa0d5807f..8da0963f0 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/PawnCompPatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/PawnCompPatches.cs @@ -84,21 +84,21 @@ private static bool Prefix(ref float __result, [NotNull] Pawn ___pawn) } - [HarmonyPatch(typeof(PawnRenderer), "DrawBodyGenes")] - private static class PawnRenderBodyGenesPrefix - { - // Disable rendering Biotech genes for pawns with animal race. - private static bool Prefix([NotNull] Pawn ___pawn) - { - if (___pawn.RaceProps.Animal && Hybrids.RaceGenerator.IsMorphRace(___pawn.def) == false) - { - // pawn is animal type and not a hybrid. - return false; - } - - return true; - } - } + //[HarmonyPatch(typeof(PawnRenderer), "DrawBodyGenes")] + //private static class PawnRenderBodyGenesPrefix + //{ + // // Disable rendering Biotech genes for pawns with animal race. + // private static bool Prefix([NotNull] Pawn ___pawn) + // { + // if (___pawn.RaceProps.Animal && Hybrids.RaceGenerator.IsMorphRace(___pawn.def) == false) + // { + // // pawn is animal type and not a hybrid. + // return false; + // } + + // return true; + // } + //} [HarmonyPatch(typeof(Pawn_FilthTracker), nameof(Pawn_FilthTracker.Notify_EnteredNewCell))] diff --git a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs index ee810dbf3..b473e49ba 100644 --- a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs +++ b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs @@ -534,7 +534,6 @@ private void UpdatePawnInfo() && pawn.IsColonist) { pawn.Drawer.renderer.SetAllGraphicsDirty(); - PortraitsCache.SetDirty(pawn); } } } diff --git a/Source/Pawnmorphs/Esoteria/Hediffs/MutationStage.cs b/Source/Pawnmorphs/Esoteria/Hediffs/MutationStage.cs index 3861f26d3..6a9711254 100644 --- a/Source/Pawnmorphs/Esoteria/Hediffs/MutationStage.cs +++ b/Source/Pawnmorphs/Esoteria/Hediffs/MutationStage.cs @@ -67,7 +67,7 @@ public class MutationStage : HediffStage, IDescriptiveStage, IExecutableStage /// /// The graphic for this stage /// - public List graphics; + public List graphics; /// /// Overrides to allow changing values of mutation verbs. diff --git a/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs b/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs index 689b2d557..122753c28 100644 --- a/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs +++ b/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs @@ -11,6 +11,7 @@ using System.Linq; using System.Reflection; using AlienRace; +using AlienRace.ExtendedGraphics; using JetBrains.Annotations; using Pawnmorph.Utilities; using RimWorld; @@ -101,9 +102,12 @@ private static RaceProperties GenerateHybridProperties([NotNull] RaceProperties useMeatFrom = animal.useMeatFrom, deathAction = animal.deathAction, // Boommorphs should explode. corpseDef = human.corpseDef, - packAnimal = animal.packAnimal + packAnimal = animal.packAnimal, + renderTree = human.renderTree, + startingAnimation = human.startingAnimation, + soundMoving = human.soundMoving, }; - + Log.Warning("render tree is: " + properties.renderTree?.root?.nodeClass); typeof(RaceProperties).GetField("bloodDef", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(properties, animal.BloodDef); typeof(RaceProperties).GetField("fleshType", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(properties, animal.FleshType); @@ -365,6 +369,7 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum bodyParts.Add("Waist"); FieldInfo colorChannel = HarmonyLib.AccessTools.Field(typeof(AlienPartGenerator.BodyAddon), "colorChannel"); + foreach (AlienPartGenerator.BodyAddon addon in human) { addon.scaleWithPawnDrawsize = true; @@ -372,7 +377,6 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum AlienPartGenerator.BodyAddon temp = new AlienPartGenerator.BodyAddon() { path = addon.path, - bodyPart = addon.bodyPart, offsets = GenerateBodyAddonOffsets(addon.offsets, morph), linkVariantIndexWithPrevious = addon.linkVariantIndexWithPrevious, angle = addon.angle, @@ -387,7 +391,6 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum scaleWithPawnDrawsize = addon.scaleWithPawnDrawsize, alignWithHead = addon.alignWithHead, allowColorOverride = addon.allowColorOverride, - bodyPartLabel = addon.bodyPartLabel, colorOverrideOne = addon.colorOverrideOne, colorOverrideTwo = addon.colorOverrideTwo, colorPostFactor = addon.colorPostFactor, @@ -403,7 +406,8 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum if (temp.ColorChannel != addon.ColorChannel) colorChannel.SetValue(temp, addon.ColorChannel); - if (headParts.Contains(temp.bodyPartLabel)) + List tempPartLabels = temp.conditions.OfType().Select(x => x.bodyPartLabel).ToList(); + if (tempPartLabels.Any(headParts.Contains)) { if (headSize != null) temp.drawSize = headSize.GetValueOrDefault(); @@ -424,7 +428,7 @@ private static AlienPartGenerator GenerateHybridGenerator(AlienPartGenerator hum } } - if (bodySize != null && bodyParts.Contains(temp.bodyPartLabel)) + if (bodySize != null && tempPartLabels.Any(bodyParts.Contains)) { temp.drawSize = bodySize.GetValueOrDefault(); } @@ -512,11 +516,13 @@ private static GraphicPaths GenerateGraphicPaths(GraphicPaths humanGraphicPaths, temp.head.extendedGraphics = new List(); foreach (HeadTypeDef item2 in DefDatabase.AllDefsListForReading) { - temp.head.extendedGraphics.Add(new AlienPartGenerator.ExtendedHeadtypeGraphic + var graphic = new AlienPartGenerator.ExtendedConditionGraphic { - headType = item2, path = item2.graphicPath, - }); + }; + + graphic.conditions.Add(new ConditionHeadType { headType = item2 }); + temp.head.extendedGraphics.Add(graphic); } return temp; } diff --git a/Source/Pawnmorphs/Esoteria/MutationUtilities.cs b/Source/Pawnmorphs/Esoteria/MutationUtilities.cs index 177d454f5..2aae0daf3 100644 --- a/Source/Pawnmorphs/Esoteria/MutationUtilities.cs +++ b/Source/Pawnmorphs/Esoteria/MutationUtilities.cs @@ -1128,8 +1128,8 @@ private static IEnumerable GetAllMutationsWithGraphics() List bodyAddons = ((ThingDef_AlienRace)ThingDefOf.Human).alienRace.generalSettings.alienPartGenerator.bodyAddons; var hediffDefs = - bodyAddons.SelectMany(add => add.extendedGraphics.OfType() ?? Enumerable.Empty()) - .Select(h => h.hediff); + bodyAddons.SelectMany(add => add.extendedGraphics.OfType() ?? Enumerable.Empty()) + .SelectMany(h => h.conditions.OfType().Select(x => x.hediff)); return hediffDefs; diff --git a/Source/Pawnmorphs/Esoteria/PMThingDefOf.cs b/Source/Pawnmorphs/Esoteria/PMThingDefOf.cs index f9117a544..fd88301a1 100644 --- a/Source/Pawnmorphs/Esoteria/PMThingDefOf.cs +++ b/Source/Pawnmorphs/Esoteria/PMThingDefOf.cs @@ -36,7 +36,6 @@ static PMThingDefOf() public static ThingDef PM_ChaoThrumboGenome; - public static ThingDef PM_MutagenTank; public static ThingDef PM_Filth_Slurry; public static ThingDef PM_NewMutagenicChamber; diff --git a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj index 47e81ca31..06373c20a 100644 --- a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj +++ b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj @@ -18,7 +18,7 @@ true portable false - ..\..\..\1.4\Assemblies\ + ..\..\..\1.5\Assemblies\ TRACE;DEBUG prompt 4 @@ -65,14 +65,6 @@ False False - - ..\..\Dependencies\PipeSystem.dll - False - - - ..\..\Dependencies\0MultiplayerAPI.dll - True - @@ -342,7 +334,6 @@ - @@ -362,7 +353,6 @@ - @@ -385,8 +375,6 @@ - - @@ -590,7 +578,6 @@ - @@ -611,7 +598,6 @@ - @@ -678,7 +664,6 @@ - @@ -962,7 +947,6 @@ - diff --git a/Source/Pawnmorphs/Esoteria/PawnmorphMPCompat.cs b/Source/Pawnmorphs/Esoteria/PawnmorphMPCompat.cs deleted file mode 100644 index 37d0bd96d..000000000 --- a/Source/Pawnmorphs/Esoteria/PawnmorphMPCompat.cs +++ /dev/null @@ -1,103 +0,0 @@ -using System.Reflection; -using HarmonyLib; -using Multiplayer.API; -using Pawnmorph; -using Pawnmorph.Hediffs; -using Verse; - -namespace PawnMorpher -{ - [StaticConstructorOnStartup] - static class PawnmorphMPCompat - { - static int lastTick; - static int lastSeed; - - static PawnmorphMPCompat() - { - if (!MP.enabled) return; - - PatchRand(); - SyncMethods(); - - Log.Message("Pawnmorpher :: Multiplayer Compatibility enabled"); - } - - static void PatchRand() - { - var rngMethods = new MethodBase[] { - // Motes - AccessTools.Method(typeof(IntermittentMagicSprayer), nameof(IntermittentMagicSprayer.ThrowMagicPuffUp)), - AccessTools.Method(typeof(IntermittentMagicSprayer), nameof(IntermittentMagicSprayer.ThrowMagicPuffDown)), - - // Fixes a very rare desync called from AI, I can't find the logic here, possibly a core MP issue. - AccessTools.Method(typeof(SpreadingMutationComp), nameof(SpreadingMutationComp.CompPostTick)), - }; - - var harmony = new Harmony("com.pawnmorpher.mpcompat"); - - foreach (var method in rngMethods) - { - harmony.Patch(method, - prefix: new HarmonyMethod(typeof(PawnmorphMPCompat), nameof(PushState)), - postfix: new HarmonyMethod(typeof(PawnmorphMPCompat), nameof(PopState)) - ); - } - } - - static void SyncMethods() - { -#pragma warning disable 612 - var syncMethods = new MethodInfo[] { - // Gizmos -#pragma warning restore 612 - }; - - foreach (var method in syncMethods) - { - MP.RegisterSyncMethod(method); - } - } - - static void PushState() - { - if (MP.IsInMultiplayer) - { - Rand.PushState(MPSafeSeed); - } - } - static void PopState() - { - if (MP.IsInMultiplayer) - { - Rand.PopState(); - } - } - - static int MPSafeSeed - { - get - { - var ticks = Find.TickManager.TicksAbs; - if (ticks != lastTick) - { - lastTick = ticks; - lastSeed = ticks; - return lastTick; - } - - lastSeed = ZorShift(lastSeed); - return lastSeed; - } - } - - static int ZorShift(int val) - { - uint uVal = unchecked((uint)val); - uVal ^= uVal << 13; - uVal ^= uVal >> 17; - uVal ^= uVal << 5; - return unchecked((int)uVal); - } - } -} diff --git a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs index d66a7ec64..9cccb98f2 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs @@ -20,7 +20,6 @@ using Verse; using static AlienRace.AlienPartGenerator; //just a typedef to shorten long type name -using HediffGraphic = AlienRace.AlienPartGenerator.ExtendedHediffGraphic; namespace Pawnmorph { @@ -270,7 +269,7 @@ private static void InjectGraphics() continue; } - HediffGraphic hediffGraphic = GenerateGraphicsFor(mutationStages, mutation, anchor); + ExtendedConditionGraphic hediffGraphic = GenerateGraphicsFor(mutationStages, mutation, anchor); if (hediffGraphic == null) continue; @@ -294,7 +293,7 @@ private static void InjectGraphics() } } - private static void AppendPools(HediffGraphic hediffGraphic, BodyAddon addon) + private static void AppendPools(ExtendedConditionGraphic hediffGraphic, BodyAddon addon) { Stack> stack = new Stack>(); AppendPools(addon, hediffGraphic, hediffGraphic); @@ -317,7 +316,7 @@ private static void AppendPools(HediffGraphic hediffGraphic, BodyAddon addon) } } - private static void AppendPools(BodyAddon addon, HediffGraphic baseGraphic, IExtendedGraphic current) + private static void AppendPools(BodyAddon addon, ExtendedConditionGraphic baseGraphic, IExtendedGraphic current) { while (ContentFinder.Get(current.GetPath() + (current.GetVariantCount() == 0 ? "" : baseGraphic.variantCount.ToString()) + "_north", false) != null) @@ -330,7 +329,7 @@ private static void AppendPools(BodyAddon addon, HediffGraphic baseGraphic, IExt } } - private static HediffGraphic GenerateGraphicsFor([NotNull] List mutationStages, [NotNull] MutationDef mutation, string anchorID) + private static ExtendedConditionGraphic GenerateGraphicsFor([NotNull] List mutationStages, [NotNull] MutationDef mutation, string anchorID) { List mainData = mutation.graphics.MakeSafe().Where(g => g.anchorID == anchorID).ToList(); @@ -349,13 +348,13 @@ private static HediffGraphic GenerateGraphicsFor([NotNull] List m hGraphic = new MutationGraphicsData(); hGraphic.path = null; } - hGraphic.hediff = mutation; + hGraphic.conditions.Add(new ConditionHediff() { hediff = mutation }); - var severityLst = new List(); + var severityLst = new List(); for (var index = mutationStages.Count - 1; index >= 0; index--) { MutationStage stage = mutationStages[index]; - MutationStageGraphicsData stageGraphics; + MutationGraphicsData stageGraphics; if (stage.graphics != null && stage.graphics.Count > 0) { // Stage has defined graphics for this stage, use that and hide all addons not explicitly defined in the stage. @@ -364,22 +363,26 @@ private static HediffGraphic GenerateGraphicsFor([NotNull] List m if (stageGraphics == null) { // Graphics were not defined for this anchor point. - stageGraphics = new MutationStageGraphicsData(); + stageGraphics = new MutationGraphicsData(); } } else { // If no graphics are defined on stage then default to whatever is set on mutation. - stageGraphics = new MutationStageGraphicsData(); + stageGraphics = new MutationGraphicsData(); stageGraphics.path = hGraphic.path; stageGraphics.extendedGraphics = hGraphic.extendedGraphics; } - stageGraphics.severity = stage.minSeverity; + ConditionHediffSeverity severityCondition = new ConditionHediffSeverity(); + severityCondition.severity = stage.minSeverity; + severityCondition.hediff = mutation; + + stageGraphics.conditions.Add(severityCondition); severityLst.Add(stageGraphics); } - hGraphic.severity = severityLst; + hGraphic.extendedGraphics.AddRange(severityLst); return hGraphic; } @@ -501,7 +504,7 @@ private static void CheckDefaultOffsets([NotNull] ThingDef_AlienRace aRace, [Not { if (bodyAddon.extendedGraphics == null || bodyAddon.extendedGraphics.Count == 0) continue; bool found = false; - foreach (var hDef in bodyAddon.extendedGraphics.OfType().Select(h => h.hediff)) + foreach (var hDef in bodyAddon.extendedGraphics.OfType().SelectMany(h => h.conditions.OfType().Select(x => x.hediff))) { if (hDef == null) continue; if (hDef is MutationDef) //make sure we only grab addons that are mutations @@ -579,7 +582,6 @@ static AlienPartGenerator.BodyAddon CloneAddon([NotNull] AlienPartGenerator.Body { anchorID = aID, angle = addon.angle, - bodyPart = addon.bodyPart, debug = addon.debug, drawSize = addon.drawSize, path = addon.path, diff --git a/Source/Pawnmorphs/Esoteria/PawnmorpherSettings.cs b/Source/Pawnmorphs/Esoteria/PawnmorpherSettings.cs index c73c58527..22c9971e3 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorpherSettings.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorpherSettings.cs @@ -1,9 +1,9 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Reflection; using Pawnmorph.DebugUtils; using Pawnmorph.FormerHumans; -using Pawnmorph.UserInterface.TreeBox; using UnityEngine; using Verse; @@ -15,6 +15,8 @@ namespace Pawnmorph /// public class PawnmorpherSettings : ModSettings { + private List _configurableObjects; + private const bool DEFAULT_FALLOUT_SETTING = true; /// @@ -219,12 +221,39 @@ public override void ExposeData() internal IEnumerable GetAllConfigurableObjects() + { + if (_configurableObjects == null) + _configurableObjects = LoadConfigurableObjects().ToList(); + + return _configurableObjects; + } + + private IEnumerable LoadConfigurableObjects() { // Discover all configurable objects. + Type[] types; Type iConfigurable = typeof(Interfaces.IConfigurableObject); - foreach (Type type in System.Reflection.Assembly.GetExecutingAssembly().GetTypes().Where(x => iConfigurable.IsAssignableFrom(x) && x.IsInterface == false && x.IsAbstract == false)) + try + { + types = Assembly.GetExecutingAssembly().GetTypes(); + } + catch (ReflectionTypeLoadException loadException) + { + types = loadException.Types; + } + + foreach (Type type in types.Where(x => x != null && iConfigurable.IsAssignableFrom(x) && x.IsInterface == false && x.IsAbstract == false)) { - yield return (Interfaces.IConfigurableObject)Activator.CreateInstance(type); + Interfaces.IConfigurableObject configurable; + try + { + configurable = (Interfaces.IConfigurableObject)Activator.CreateInstance(type); + } + catch + { + continue; + } + yield return configurable; } } } diff --git a/Source/Pawnmorphs/Esoteria/Recipes/PMRecipeDefGenerator.cs b/Source/Pawnmorphs/Esoteria/Recipes/PMRecipeDefGenerator.cs index 28c1dc6e4..ce224112c 100644 --- a/Source/Pawnmorphs/Esoteria/Recipes/PMRecipeDefGenerator.cs +++ b/Source/Pawnmorphs/Esoteria/Recipes/PMRecipeDefGenerator.cs @@ -22,7 +22,7 @@ public static class PMRecipeDefGenerator [NotNull] private static readonly List _generatedRecipeDefs = new List(); - [NotNull] private static readonly object[] _argList = new object[2]; + [NotNull] private static readonly object[] _argList = new object[3]; static PMRecipeDefGenerator() { @@ -115,10 +115,11 @@ private static RecipeDef DrugAdministerDef(ThingDef item) return recipeDef; } - private static RecipeDef CreateRecipeDefFromMaker(ThingDef def, int adjustedCount = 1) + private static RecipeDef CreateRecipeDefFromMaker(ThingDef def, int adjustedCount = 1, bool hotReload = false) { _argList[0] = def; _argList[1] = adjustedCount; + _argList[2] = hotReload; return (RecipeDef)_createRecipeDefFromMaker.Invoke(null, _argList); } } diff --git a/Source/Pawnmorphs/Pawnmorph.sln b/Source/Pawnmorphs/Pawnmorph.sln index ce4032793..831ea8b7d 100644 --- a/Source/Pawnmorphs/Pawnmorph.sln +++ b/Source/Pawnmorphs/Pawnmorph.sln @@ -5,6 +5,8 @@ VisualStudioVersion = 17.5.33627.172 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pawnmorph", "Esoteria\Pawnmorph.csproj", "{04338000-4A27-47AB-A654-9F4BEF21BBBD}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pawnmorphs.Pipesystem", "Pawnmorphs.Pipesystem\Pawnmorphs.Pipesystem.csproj", "{BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -27,6 +29,18 @@ Global {04338000-4A27-47AB-A654-9F4BEF21BBBD}.Release|Any CPU.Build.0 = Release|Any CPU {04338000-4A27-47AB-A654-9F4BEF21BBBD}.Release|x64.ActiveCfg = Release|Any CPU {04338000-4A27-47AB-A654-9F4BEF21BBBD}.Release|x64.Build.0 = Release|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Debug|x64.ActiveCfg = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Debug|x64.Build.0 = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Hotswapping|Any CPU.ActiveCfg = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Hotswapping|Any CPU.Build.0 = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Hotswapping|x64.ActiveCfg = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Hotswapping|x64.Build.0 = Debug|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Release|Any CPU.Build.0 = Release|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Release|x64.ActiveCfg = Release|Any CPU + {BF7018F7-F5B2-494A-9426-2BC6C94AB2F2}.Release|x64.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Source/Pawnmorphs/Esoteria/Buildings/MutagenTank.cs b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/Buildings/MutagenTank.cs similarity index 100% rename from Source/Pawnmorphs/Esoteria/Buildings/MutagenTank.cs rename to Source/Pawnmorphs/Pawnmorphs.Pipesystem/Buildings/MutagenTank.cs diff --git a/Source/Pawnmorphs/Esoteria/Buildings/MutaniteCentrifuge.cs b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/Buildings/MutaniteCentrifuge.cs similarity index 100% rename from Source/Pawnmorphs/Esoteria/Buildings/MutaniteCentrifuge.cs rename to Source/Pawnmorphs/Pawnmorphs.Pipesystem/Buildings/MutaniteCentrifuge.cs diff --git a/Source/Pawnmorphs/Esoteria/SlurryNetDefOf.cs b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/DefOf/SlurryNetDefOf.cs similarity index 100% rename from Source/Pawnmorphs/Esoteria/SlurryNetDefOf.cs rename to Source/Pawnmorphs/Pawnmorphs.Pipesystem/DefOf/SlurryNetDefOf.cs diff --git a/Source/Pawnmorphs/Esoteria/IncidentWorker/MutagenicLeak.cs b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/IncidentWorker/MutagenicLeak.cs similarity index 100% rename from Source/Pawnmorphs/Esoteria/IncidentWorker/MutagenicLeak.cs rename to Source/Pawnmorphs/Pawnmorphs.Pipesystem/IncidentWorker/MutagenicLeak.cs diff --git a/Source/Pawnmorphs/Pawnmorphs.Pipesystem/Pawnmorphs.Pipesystem.csproj b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/Pawnmorphs.Pipesystem.csproj new file mode 100644 index 000000000..a582b428d --- /dev/null +++ b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/Pawnmorphs.Pipesystem.csproj @@ -0,0 +1,28 @@ + + + + net48 + ..\..\..\1.5\Mods\VEF\Assemblies + false + + + + + + + + + + False + False + + + + + + ..\..\Dependencies\PipeSystem.dll + False + + + + diff --git a/Source/Pawnmorphs/Esoteria/PlaceWorkers/Centrifuge.cs b/Source/Pawnmorphs/Pawnmorphs.Pipesystem/PlaceWorkers/Centrifuge.cs similarity index 100% rename from Source/Pawnmorphs/Esoteria/PlaceWorkers/Centrifuge.cs rename to Source/Pawnmorphs/Pawnmorphs.Pipesystem/PlaceWorkers/Centrifuge.cs From a2fb1eb3346fccb85ad04f120c448413b5b7db7c Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Mon, 18 Mar 2024 12:29:56 +0100 Subject: [PATCH 10/24] Fixed rendering with latest HAR Updated extended graphics syntax. --- .../Anseriform/Chicken/Chicken_Parts.xml | 14 +++--- .../ThickFur/Megasloth/Megasloth_Parts.xml | 8 ++-- .../Megafauna/Thrumbo/Thrumbo_Parts.xml | 8 ++-- .../Canid/Familiaris/Husky/Husky_Parts.xml | 8 ++-- .../Familiaris/Terrier/Terrier_Parts.xml | 8 ++-- .../Lupine/Arctic Wolf/ArcticWolf_Parts.xml | 8 ++-- .../Lupine/Timber Wolf/TimberWolf_Parts.xml | 8 ++-- .../Feline/BigFelis/Cougar/Cougar_Parts.xml | 8 ++-- .../Pantherine/Panther/Panther_Parts.xml | 8 ++-- .../Vulpine/Arctic Fox/ArcticFox_Parts.xml | 8 ++-- .../Vulpine/Fennec Fox/FennecFox_Parts.xml | 8 ++-- .../Vulpine/Red Fox/RedFox_Parts.xml | 8 ++-- .../Cervid/SmallCervid/Deer/Deer_Parts.xml | 8 ++-- .../Equine/Horse/Horse_Parts.xml | 8 ++-- .../Esoteria/Graphics/MutationGraphicsData.cs | 40 ++++++++++++++--- .../Pawnmorphs/Esoteria/PawnmorpherModInit.cs | 45 +++++++++---------- 16 files changed, 114 insertions(+), 89 deletions(-) diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml index b7e78a3da..bc581ff2b 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Chicken/Chicken_Muzzle_Female - Parts/Chicken/Chicken_Muzzle_Male - + + Parts/Chicken/Chicken_Muzzle_Female + Parts/Chicken/Chicken_Muzzle_Male + @@ -39,10 +39,8 @@ - - Parts/Chicken/Chicken_Tail_Female - Parts/Chicken/Chicken_Tail_Male - + Parts/Chicken/Chicken_Tail_Female + Parts/Chicken/Chicken_Tail_Male diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml index 75a07c7ef..a1101398f 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/ThickFur/Megasloth/Megasloth_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Megasloth/Megasloth_Muzzle_Male - Parts/Megasloth/Megasloth_Muzzle_Female - + + Parts/Megasloth/Megasloth_Muzzle_Female + Parts/Megasloth/Megasloth_Muzzle_Male + EtherMegaslothSnout diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml index 3e40baad0..b4177381b 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Megafauna/Thrumbo/Thrumbo_Parts.xml @@ -7,10 +7,10 @@ EtherThrumboSnout - - Parts/Thrumbo/Thrumbo_Muzzle_Male - Parts/Thrumbo/Thrumbo_Muzzle_Female - + + Parts/Thrumbo/Thrumbo_Muzzle_Female + Parts/Thrumbo/Thrumbo_Muzzle_Male + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml index 015e2e42d..09975759c 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Husky/Husky_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Husky/Husky_Muzzle_Male - Parts/Husky/Husky_Muzzle_Female - + + Parts/Husky/Husky_Muzzle_Female + Parts/Husky/Husky_Muzzle_Male + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml index 6991fe572..7545cdb4e 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Familiaris/Terrier/Terrier_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Terrier/Terrier_Muzzle_Male - Parts/Terrier/Terrier_Muzzle_Female - + + Parts/Terrier/Terrier_Muzzle_Female + Parts/Terrier/Terrier_Muzzle_Male + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml index 2a4c064ca..4142c5ffb 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Arctic Wolf/ArcticWolf_Parts.xml @@ -5,10 +5,10 @@ - - Parts/WolfArctic/Awolf_Muzzle - Parts/WolfArctic/Awolf_Female_Muzzle - + + Parts/WolfArctic/Awolf_Female_Muzzle + Parts/WolfArctic/Awolf_Muzzle + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml index fc62b7c24..b66e74f77 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Canid/Lupine/Timber Wolf/TimberWolf_Parts.xml @@ -5,10 +5,10 @@ - - Parts/WolfTimber/Twolf_Muzzle - Parts/WolfTimber/Twolf_Female_Muzzle - + + Parts/WolfTimber/Twolf_Female_Muzzle + Parts/WolfTimber/Twolf_Muzzle + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml index a453b68e2..67d47aed4 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Cougar/Cougar_Muzzle_Male - Parts/Cougar/Cougar_Muzzle_Female - + + Parts/Cougar/Cougar_Muzzle_Male + Parts/Cougar/Cougar_Muzzle_Female + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml index 52556fd5a..4afa7efea 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Panther/Panther_Muzzle_Male - Parts/Panther/Panther_Muzzle_Female - + + Parts/Panther/Panther_Muzzle_Male + Parts/Panther/Panther_Muzzle_Female + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml index 079e16588..47402c5bd 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml @@ -5,10 +5,10 @@ - - Parts/FoxArctic/ArcticFox_Muzzle_Male - Parts/FoxArctic/ArcticFox_Muzzle_Female - + + Parts/FoxArctic/ArcticFox_Muzzle_Male + Parts/FoxArctic/ArcticFox_Muzzle_Female + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml index 292f617d6..f2726a8c7 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml @@ -5,10 +5,10 @@ - - Parts/FoxFennec/FennecFox_Muzzle_Male - Parts/FoxFennec/FennecFox_Muzzle_Female - + + Parts/FoxFennec/FennecFox_Muzzle_Male + Parts/FoxFennec/FennecFox_Muzzle_Female + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml index a4a02c0e6..87a102186 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml @@ -5,10 +5,10 @@ - - Parts/FoxRed/RedFox_Muzzle_Male - Parts/FoxRed/RedFox_Muzzle_Female - + + Parts/FoxRed/RedFox_Muzzle_Male + Parts/FoxRed/RedFox_Muzzle_Female + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml index 6f5927a3c..bb53d6e24 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml @@ -6,10 +6,10 @@ GrewDeerMuzzle - - Parts/Deer/Deer_Muzzle_Male - Parts/Deer/Deer_Muzzle_Female - + + Parts/Deer/Deer_Muzzle_Male + Parts/Deer/Deer_Muzzle_Female + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml index 255dc1148..dbf2708cc 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml @@ -5,10 +5,10 @@ - - Parts/Horse/Horse_Muzzle_Male - Parts/Horse/Horse_Muzzle_Female - + + Parts/Horse/Horse_Muzzle_Male + Parts/Horse/Horse_Muzzle_Female + diff --git a/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs b/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs index 5f0b7c7c0..30bf54419 100644 --- a/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs +++ b/Source/Pawnmorphs/Esoteria/Graphics/MutationGraphicsData.cs @@ -1,10 +1,10 @@ // MutationGraphicsData.cs created by Iron Wolf for Pawnmorph on 08/15/2021 12:52 PM // last updated 08/15/2021 12:52 PM +using System.Collections.Generic; using System.Xml; using HarmonyLib; using JetBrains.Annotations; -using Pawnmorph.Hediffs; using Verse; using static AlienRace.AlienPartGenerator; @@ -13,21 +13,33 @@ namespace Pawnmorph.GraphicSys /// /// simple class containing data about a specific set of mutations graphics /// - public class MutationGraphicsData : ExtendedConditionGraphic + public class MutationGraphicsData { /// /// The anchor identifier /// public string anchorID; + + /// + /// Base texture path + /// public string path; - public MutationDef hediff; - + + [XmlInheritanceAllowDuplicateNodes] + public List extendedGraphics; [UsedImplicitly] - public virtual void LoadDataFromXmlCustom(XmlNode xmlRoot) + public void LoadDataFromXmlCustom(XmlNode xmlRoot) { + extendedGraphics = new List(); anchorID = xmlRoot.Name; + if (xmlRoot.ChildNodes.Count == 0) + { + path = xmlRoot.Value; + return; + } + Traverse traverse = Traverse.Create(this); foreach (XmlNode childNode in xmlRoot.ChildNodes) { @@ -42,7 +54,25 @@ public virtual void LoadDataFromXmlCustom(XmlNode xmlRoot) path = childNode.Value; } } + } + + /// + /// Gets the first valid texture path in the graphic tree. + /// + /// + public string GetPath() + { + if (string.IsNullOrWhiteSpace(path) == false) + return path; + + foreach (var item in extendedGraphics) + { + string path = item.GetPath(); + if (string.IsNullOrWhiteSpace(path) == false) + return path; + } + return null; } } } \ No newline at end of file diff --git a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs index 9cccb98f2..b04bf8727 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs @@ -341,45 +341,42 @@ private static ExtendedConditionGraphic GenerateGraphicsFor([NotNull] List(); for (var index = mutationStages.Count - 1; index >= 0; index--) { MutationStage stage = mutationStages[index]; - MutationGraphicsData stageGraphics; + ExtendedConditionGraphic stageGraphics; if (stage.graphics != null && stage.graphics.Count > 0) { // Stage has defined graphics for this stage, use that and hide all addons not explicitly defined in the stage. // All or nothing. - stageGraphics = stage.graphics.LastOrDefault(s => s.anchorID == anchorID); - if (stageGraphics == null) + stageGraphics = new ExtendedConditionGraphic(); + ConditionHediffSeverity severityCondition = new ConditionHediffSeverity + { + severity = stage.minSeverity, + hediff = mutation + }; + stageGraphics.conditions.Add(severityCondition); + + + var stageMutationGraphics = stage.graphics.LastOrDefault(s => s.anchorID == anchorID); + if (stageMutationGraphics != null) { - // Graphics were not defined for this anchor point. - stageGraphics = new MutationGraphicsData(); + stageGraphics.path = stageMutationGraphics.path; + stageGraphics.extendedGraphics.AddRange(stageMutationGraphics.extendedGraphics); } + severityLst.Add(stageGraphics); } - else - { - // If no graphics are defined on stage then default to whatever is set on mutation. - stageGraphics = new MutationGraphicsData(); - stageGraphics.path = hGraphic.path; - stageGraphics.extendedGraphics = hGraphic.extendedGraphics; - } - - ConditionHediffSeverity severityCondition = new ConditionHediffSeverity(); - severityCondition.severity = stage.minSeverity; - severityCondition.hediff = mutation; - stageGraphics.conditions.Add(severityCondition); - severityLst.Add(stageGraphics); } hGraphic.extendedGraphics.AddRange(severityLst); From e1c0ebe2ea4deb76beef032c6affed343022479e Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Tue, 19 Mar 2024 20:51:12 +0100 Subject: [PATCH 11/24] Fixed capitalization in part xml --- .../Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml | 6 ++++-- .../Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml | 2 +- .../Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml | 2 +- .../Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml | 2 +- .../Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml | 2 +- .../PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml | 2 +- .../EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml | 2 +- .../Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml | 2 +- 8 files changed, 11 insertions(+), 9 deletions(-) diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml index bc581ff2b..4484a5d76 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Avian/Anserigalliform/Anseriform/Chicken/Chicken_Parts.xml @@ -39,8 +39,10 @@ - Parts/Chicken/Chicken_Tail_Female - Parts/Chicken/Chicken_Tail_Male + + Parts/Chicken/Chicken_Tail_Female + Parts/Chicken/Chicken_Tail_Male + diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml index 67d47aed4..7cd86d4f2 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/BigFelis/Cougar/Cougar_Parts.xml @@ -7,7 +7,7 @@ Parts/Cougar/Cougar_Muzzle_Male - Parts/Cougar/Cougar_Muzzle_Female + Parts/Cougar/Cougar_Muzzle_Female diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml index 4afa7efea..153f9666c 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Feline/Pantherine/Panther/Panther_Parts.xml @@ -7,7 +7,7 @@ Parts/Panther/Panther_Muzzle_Male - Parts/Panther/Panther_Muzzle_Female + Parts/Panther/Panther_Muzzle_Female diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml index 47402c5bd..60f70bf93 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Arctic Fox/ArcticFox_Parts.xml @@ -7,7 +7,7 @@ Parts/FoxArctic/ArcticFox_Muzzle_Male - Parts/FoxArctic/ArcticFox_Muzzle_Female + Parts/FoxArctic/ArcticFox_Muzzle_Female diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml index f2726a8c7..a8126149c 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Fennec Fox/FennecFox_Parts.xml @@ -7,7 +7,7 @@ Parts/FoxFennec/FennecFox_Muzzle_Male - Parts/FoxFennec/FennecFox_Muzzle_Female + Parts/FoxFennec/FennecFox_Muzzle_Female diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml index 87a102186..116207c0e 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/PawFooted/Carnivora/Vulpine/Red Fox/RedFox_Parts.xml @@ -7,7 +7,7 @@ Parts/FoxRed/RedFox_Muzzle_Male - Parts/FoxRed/RedFox_Muzzle_Female + Parts/FoxRed/RedFox_Muzzle_Female diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml index bb53d6e24..ebd92997f 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/EvenToedUngulate/Cervid/SmallCervid/Deer/Deer_Parts.xml @@ -8,7 +8,7 @@ Parts/Deer/Deer_Muzzle_Male - Parts/Deer/Deer_Muzzle_Female + Parts/Deer/Deer_Muzzle_Female diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml index dbf2708cc..cc2c15ef8 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Ungulate/OddToedUngulate/Equine/Horse/Horse_Parts.xml @@ -7,7 +7,7 @@ Parts/Horse/Horse_Muzzle_Male - Parts/Horse/Horse_Muzzle_Female + Parts/Horse/Horse_Muzzle_Female From 7e3e463ce093e3869fa408e1520589a1610ba2a5 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Tue, 19 Mar 2024 20:51:36 +0100 Subject: [PATCH 12/24] Added dependencies for 1.5 in about. --- About/About.xml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/About/About.xml b/About/About.xml index 5089973d0..1742067bf 100644 --- a/About/About.xml +++ b/About/About.xml @@ -54,7 +54,14 @@ Requires Humanoid Alien Framework and VE Frameworks. https://steamcommunity.com/workshop/filedetails/?id=2023507013 https://github.com/AndroidQuazar/VanillaExpandedFramework - + + +
    1540. + erdelf.HumanoidAlienRaces + Humanoid Alien Races 2.0 + https://steamcommunity.com/sharedfiles/filedetails/?id=839005762 +
    1541. +
      From 68f166661502b4fcb52ec3c71ad9a37ca5f9507f Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Tue, 19 Mar 2024 20:52:16 +0100 Subject: [PATCH 13/24] Removed debug message --- Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs b/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs index 122753c28..88de2ff76 100644 --- a/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs +++ b/Source/Pawnmorphs/Esoteria/Hybrids/RaceGenerator.cs @@ -107,7 +107,6 @@ private static RaceProperties GenerateHybridProperties([NotNull] RaceProperties startingAnimation = human.startingAnimation, soundMoving = human.soundMoving, }; - Log.Warning("render tree is: " + properties.renderTree?.root?.nodeClass); typeof(RaceProperties).GetField("bloodDef", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(properties, animal.BloodDef); typeof(RaceProperties).GetField("fleshType", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(properties, animal.FleshType); From fc3d03b71a5b20f8379d3295c98948cc7d681058 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Wed, 20 Mar 2024 16:56:42 +0100 Subject: [PATCH 14/24] Fixed mutation graphics to work with latest har dev version Working part picker preview for now. --- Source/Dependencies/AlienRace.dll | Bin 321024 -> 321024 bytes .../Esoteria/Hediff_AddedMutation.cs | 2 + Source/Pawnmorphs/Esoteria/Pawnmorph.csproj | 4 +- .../Pawnmorphs/Esoteria/PawnmorpherModInit.cs | 35 ++++++----- .../UserInterface/Dialog_PartPicker.cs | 59 ++++++++++++++---- 5 files changed, 70 insertions(+), 30 deletions(-) diff --git a/Source/Dependencies/AlienRace.dll b/Source/Dependencies/AlienRace.dll index 8b8ad4e2d42c1f45e32558fc5fa461a67e482b38..f06e6954c31eb5f88cf38dfef002b3fdf13f6a20 100644 GIT binary patch delta 79794 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 delta 79772 zcmbTf2S8QF);2t|PoauZ1W^!C!6QY*-cYe3U>AGu9Thv`vG=~!vG*E#P_ZWVt}%(4 z#8_jAiLu7m#s67r9~AFR^4{;y``&ftnYCt>nKfn4-XtT>dXGHoJ#(VDU!j?2XH5-| zHD_&T>hbigS=1Bsk3|eI%?kE*&u0`jlPEsSiWA&az{R?SEnUv)(+-k;w{BW>xa(N+K zQ>|d7nhbtgBTI;sW__sjl*dRC_De?Wt|7@U_4-boKd*YEA91SrpH+U&dq1x-={KAc zKCgPNmvhCUAdR}yy}sD)xG?GR-N<6qgT%M=jYYW^(r2J(>Ra5+#~37$wz7D zJZj6JDDj zYf*lakLrsDQ~lQ9?e2Rl!rH($tWr=$@;bd&{)VXjI)9v0x@&XXx$)d&_=l!wOcEvZbCL5-nS&{S~r7%EtP#Lfz#d-NjZ}E=#Lzdm*8* zO4wYvTfZC@6xbXZBf^|ge#T6(`9Nu89s^i2tb25?@WXPHUN)jhwlR=%F{c!l!ZnF& z5wB#W|DJ7-OuY|vN#)?EmQq{@bMikDN5y#qW?1ada}qArW=`_ zDQd&4dS0}kbWZax7G#pKY2`{R&Mx<-U9S4lqF<_-J?(0&m%EHld))YeNq&{~bF=3f z)|3k^bIZE=gO+t)bl1`=E1L|FYXX1UG=>k=ES4GEeeLyrodODUa8$x6s_Y1u{Ftmh0b$h-^=+L7$P;=<=K}JiUK{k3-W&9^ zJ`41WzO(a5&%S5|cfN%ZZnIFI-es%oq*v-%Q+7@p*ELeg*?L;Hi}IX4v3vJ?T@0i3 zQ#>@Rdx+F*)#|4n$FEi&PIT2hd&K3YiNeafj98~<#(GU3*rS^~t6%R?Ucc7EO)t>1 ztc=iG^{nOD-jMtuQ}S%uj-Dl@yr=)xtE#-KNAzAM59nummykzh_xTR_{e7QnQohi) z_suU$=@=y&d%Va%j;DEqUaM)K%Ie|P*DU0576w9NSG)6x>aH4-7#O-bNG`l1*y1S1GT_6gaY9J$&|`X3N-p_Uk4s6E z@ATy@Qk(%w$GE@ha0WlCik zuIHXwE+~S$!pOVY&Vhsp;a$wc=bB1FcqT{c{ijxtMf5FGgJe0x+s@o652WRswLr@2`qtU;@`nC)c4hs|Y&X4z?k{iY zZS}w8Mm=#(136D$Hz&XRML#{KkgTXbo72E2nxe^|X!>!tM|4fDqBorzB5&)db8Rw4 zUpqHQR??4yR@Lv#9VqYUt>)F#Th4RSH_r>k%=~6vqO7KeCtR|m=(dau>F<&Lxot6NI>n|^!EQCU-8zxIY!%cPIm8<@6sU4PnZ{lBQ> z`f=H~uDAc9y6l~{_6sYW^)_#81S&V>1ohig(vYJqah0C9X}8?0du%Q$f7dH*E+8N1 z9YFuk$Ado9zu4SeKGJ=*M99Z_%$D==vYunBf37A7+|_DI-AzelPTk{3=B9eg)&SW| zZ?n~ww>d=Iovo?ZCCpAE`h$i<`h_}ni6{E%trcYp{npkn?7;5Z8q4iz?YBLUa&KCl zFE?oNss3_D0r^bNv$KHwQ?IvUFQ+fe;MGpu4 zS+AE~NM@uBPRH59MZdPE0H&hcTL9B5WbYH~9lrY-NN>H{zFNwl^Xp#l%dF{nVVKFYINVLP znlZbbKzx#VroH$c-B&m5mrG{oN&EHk2n|Es<)@djgx=;#X&iUvUWwIYN&WiOF`yl; zrOKZA&1;R3H>Iv01ATkFE@<41%UIQeZ?4AFIexQ{ER*)=<}B;yhsl@vv|pcoUiCa} z>iuEP%^Shzkp7)&<7r|f4mGKJah%bTxpqV&Yz#*2zE8FNJH%$n?*CMqMfQMEtG9ic zGt$t${G;}-Kegze@v-)xqs5A+IWc|GpB~248}_Ug%7>rXFxeh}*3fl9y{k%e8ZB7DH>OKs+mhvMsg+!V|eZoDF19557pAXh#qHcW|ESsd+ULwcp z=+j?s#L1}qo645@)K)+E(odiJW*J7Z)Z4|@hOCb(AH8jeqfN}aO0sd<$aj03WK&h% zEDOkHYK2ASQiIIWS2j1wYs|8UY@zO3WI@?dWwXiZGn(p|!J;PO`UG7q}OeSF`@0_?8_u$< zOjfyEP&q)Aae=49RaY0;+j|fcB!7T{kdfb`N1ZaPBh{}ivK;uquClpjD)^~|vAsH_ z+yFm`tBb1XZZfC(##QDt1j4ckv~`n3RY5ly_BV~eYhH(SW^Do+hI(f@mXH&p$Suu6 z(`G~#E>0@M9i4@%Ebg+EoTECp%f9|Yh+#x?3Ep~IQXb+b!#YMiaF-=yV-=K5#^R@2 zHd(<;eW#M#F?46M$rL$P#d@IY=BXVXvbfJM(&P*WLPq|;nlh|Pz44IG(J_y+%OJTx zWzQjVI+1tQq~Yn|Ib?>EYgL$+93;(Zg_q1NozwSw$$e6;Q$u{v<8Rb@9~mOotMfiG zQEpHLb7GjkAmpdo<&@dvoAf?8p;?|$(|u)ic~*VzD~ro>%IYVJ$@8j=pKK;ir_c10 zxVq+wx9^@ze+icSwN-@s8*5>=&4 z!*1v$lIkM52xnAED{{;)%n(emSg>EmX~`GRAeEYGwzGI(4$CklWmA6y%V3PWM}E1$ zGlRR@%i4BtR8z)sqtYfVWeJ)0%34cjfwDLY%*R>4oU#vmR}&`l zG897GQwckpQ}*D;oU#`*$rFuzGE8nx5l&_+^PN6gSZFddWHzvK3p@~8ZHWj_OIZO8 z85+soqcB|k!pNyrq!)+#Pp*Pd$&{2ARa(j#Y9l||aI{%RZG8Tt4Jq3|jC=+|nF>lT z8LWH@VkpB^>4Fk_kLp!WhT=yrC=1I-b)cZk^Axj)@luEd zYE-C<@~H!FY)&AaczQ|NkC9HQr;dlp8lQ2TIACys3dusA-_sm#!E@XNNpHKTnii6U z^I!Z_?aI|SH%2&VeyO`)+3M+(R6(sQB>MKYDvl0wnKWV@^;*ko|-+|=AJ%onln3A+t`7t-PQzB+7^`Qr+Jk3H=-Qr8CR zY(GHJh-^^Fhcq`7GORxmw=EkZjt%=^xZ}i*8#}Rx^j%X$3d{V39Qv+Pi*}^%r%YLm z4&`DoWGRTjg=KB)5^8uu9Y@0!)Nq8y=XQT0E$!JZacoz}H=NJ1`gVn6I_7pGjLsHbNZR zHN(hls_sNlUN@p-8ws#M{~%1LO8J2N3W-#g!ensdRcg?g^>~t=8)z01X$`gAr1svJ zoOpEm*hdAzWoxI*4x11z>*ex?LM%}jP;VqA_2)7Q=8k$4F7pJ3fa~k)0(@2wBQK0Ai7z<_LE!DMa;*kb(BVk7|u1A;rr{@jbMqUJ8P2`ldCgbS3t4q)p;oQ4h#t_hS=B=#j2 zl`|5{zKbdoDGQdSSW@~LDv}Bj=tp3wqt$EZGfrfdls8;<4+Trjij>|?E8seTjgc~s z%P-Wk)J%O7DRbLtNRsw*q~?QN^D8V1w%ckzQE9WTrm^{5twg!_9mE&G5?|B8kzsv6BY?AutL-jl z7pFl=D8`Jn*=neFMP(V;NR=#xg4*()Vttpd8IRiffIQV~1i-#asZfMDQgA>1M5hbh2+G@G#s#DhC*pqS?C2uEBEa@?-SaF$CHc&N-%lt)1(A(d-0L)2tWst8SVCuY;A z%l*An>5?+YBh#oKjFxY&X5q#sq4I|hAH0NZ2^u;jEd}+qcv)Cm<$?xlF)A|``~`4* z15F51vKvfjDY$Vp+v=m}YE3Gwo|Tk^a!^;;>cR1F7jv9utE&o^!f2IJbxO&vadymB zS{BbkjcqMJG8IQaG5W|e`482iw9HfcA>|$Ib4jbnd})V4TPvdtUGGqnP1NKOuPdh1 z!nB}hsbRFBr2Jsy?_>2 z-=OW(@hR`XjmTmA+MYpc`RsTrr`futdsmbRQub8sqNSg`qZE0Pd@;~hi3ewm8M2XP zNI|IZOZpbc8j01ZD>3PQH3_@5D{YIewC}k_glYXt;@#VSN+jcS;Ob@0$cf`{9;6uE z4P7^dUKfT>+$KrAh?e=Ch=t}VsFJLRC|XsLfq0f1R!MgM$ojpKto;$ZuPh5>V+FQk zZrV*9tStSqm!rJ1VH8|B7QKCkoOv8>;c4A9=?1bb=_W|Yjv6GWQ7+kA{Zv^7X4TzN zeyN&Qkp&9=McK6vi4`)kD6+-&C%O@LnKV2R+0B~C>SybvmRFI!0lnZxD!uKY^BYg< zKk%DIY4<{XS4Ea<&;=6CNe7@TGM8p!l>7|(L!48?p*!g-a2)kXU!!bEdIBy@PAso4 z$&rJowLPbtDdlNSc2cckWa$#!SuM^xuKcnID^r#l^t@}B=49&)p^qE=4s|RBk6>Mu zYgH`&J5}MTvZLIkrd5^YL;FJT8m>Zw?FKfTtD21}wB#MIocbP78!4iH`-6{?)no

      ul1QH`l4Q$qfNi`sC?zy4Dji@v_TwijGO3i_`{jbAR?OI4t{Ow9i= zr;HS`^@F(-@;a$0>|>0&sD;&KZvS*jX^zZ5S+Kg(-IL)Mq_HqD1Xid3d74} zJ5LHHK%ptax4W8BQ~H;BLj#MQ$IEIv2W~2E)67mOuGo(}aRc!7bIs14&W7fnK5C{s zL)(vl>QXIi zl|59hSUj=sOOK9~F4CzN7KIGoUaC%QJksK@p-l<9n@Z-H|n;<9njfEen^m1NH z=Avd4)%yhLXT@ywOwLfb>&Pl@AE-ZY=ykQdQ=RL`PI#h6#U0hIj`UBzUq|ACd9r$3 zS00fW>1p-kYfT&42iHzjcSJD!WyNT$?Dn{n)-IQ%wxg1M;uY_o5>4a zUqG4WlUfRDd|j_QX}0z1MswVY995-Sz}7m4trBFbc&4o_D!B!oppU5~E#wNAtlUx# zbdtx_&JHlSO;EuAG_Ccsd9RYC3E$rZ z{MlU&w4Nb9OsY>0St7(te(-|^J%fFGW~GfE{)@9DYEj2~$Xaez5^YC`LdeIP-Bv19T@o*$h$K6hdv_z z*0X=E%6|Z?xT)#`m+q?kK-r`THe-a^0O3TGHStSCTQ-bXBnF?}C~7I& zvxHuUR5vt2r+TZ+gL1V$gg-auKvtv-p<DhI5amLjEW zr=|~=F}UBoFdR$APw7vG%jud|G7MsZU4(1K1nZ|}+0koP)KfbqSYNPd;(rT%>IL$j z@?x+mI#OQ7%(9M>&&={?^?Dp;)=(8Z9w}*8^~Pf|k2R_GhcTCaO5ZsiPJ4|t3_bd2 zXfzq}R%IvR2z6DBn+R*89M=9IYY#H5O;krFBBpEV;Y2wbMn_JP&YHZgCQX6S$!hx) ztROShi771ebP9$QQ+}$nx-nEcxj&*eq|Uathp4s=dN8vO$ee zvWDEEPAS&>o01bWuPuh=f*&<+Qll3_^DpYwLbTneTo$42mnwV_(mY-DU4&sel0IvZ ztR(?|T8#a3r@FaW`luXB&}X+*>m>+oha=E_NGK_dedeP;wyOej;f)#M*m^!oqfu2!6tbjWgC~E>No_M(VDLs0n zd?&pw7~#Z1jnPr(Rs3q%9#5p3SHsphhpif9t9qubi|WB@*<7Zo8f$RXnUUUW4UVbu zSG8d+OkP&su7$~~>esb!IwL)Pot!4+ef86NFt01Q0n9tfZv*`K&F}}W9N#uuI_HZvrmTd+bS3Ny=4mn{=>p+b!sbux2vaHVc`!IxJ?$y z^~zxZbJv{OKhweolWMgMM@h3jU%I&%toH&P=D^kB+6-4 z{T5;8-i`5iteWqV(H8DN<*`Znrf=URYf8VI3kO!mwD zUPTQpYd>mehYfufF;UN$^wpv9IJJ z&8w`TZ`((GrB(k!SR9_KZx6wrQtI^~3{6Fq=PD z9f!VJ4t-ydJ}fClCe&5lCuCKvky&N`fLB$0P9V6)YTya1${A|e3AxR$5vd)13JtO* zKm*m~B$fiZnsyQi@KWtLiE!(yTPM-|P1Vbjaver|*(qAiU#XpEVV}MkqwF|O_OZ+u z_S>pI&tj-LIfm*-jQH#H=I3yh_3C8A^Akjk5$~Xie1mx2sA=CoAAM~_`sj13)XSOr zx~VhYpnrO+92aOER#6w^Zm-^krkfu%^;B;!VAS8L2H!$c4~Hf^@tISvXKL!FW_%0J z1{t2IC*K-f{jIF6c?~iYVsUb~HbB+CDBH<*YWqbfOm--|OA7B~DjcRBUzEw{mX4QX z9Su(b+kZfx4Oc(?fD{?6-u?i;C#Whv!tdWz`yX-Y$xvxO%KNz{khS4&peO4Hj5DkF zS$G$9@h6!B<8b#Uj6;UL!SgcReo9EE&OuF$cg`sFJY%+B$0qN+ z($MJnQR8y%gAirAi91!P+TVn;%Nz=E*<()i$W*viExU=}H#&mPxXF{)atn*BH?DeU zX~B}@aCC#i(TTrcY0=cBU!aygc%pQpFP>6;Gu3WY-nXH4ha-KP@YTN-t2YUP*wh;s-vpSL#VQ-0}tWL z5q0+=d^xS09?6l&(ut2Slz3p-^BByt>ege-?C;de$8huqqZgf=#TV>q>nC!q^v0`n z>c%=B^P!Z%3Xr%T zaBt+UB0tDy-VzVzh=0 zXuRvQCNHK(jgcu3uzAyi#uigbXFQLM7={{tBRB*Fe5^>aOIVgTHXl`8Y6GN)+9S2f zz8=I~!Q2tV%?V95U*(}`v)snv^y6vuvS#EQr@qj%c{00-F=>VTywQfzdORAW5@84Z zmEEKj##77&lcw;f5@Xg1$vmpNSqpZ?YbbKQpqg#gdf`I&gIP-qY^g8S{`gbwc!i4&0|(=N#G|@ zT(oaMT;-2ueE5KiBuj?x_;kCIma1X@fA6CGBy*+z;HpJQ9I{>9wI#BaTIa5H#sb6!`2qDqDi@Awr`1O-`%9{uw`XcW(B@aZ0VPJ}3U^w9n-`BX= zPQqJEvM|N4u-Q`!^7W^tv$?4`^>;_psp=P4*K|X!pqG{}6ft=wk9El1%#>pjrliKW zhk)L3hWuzRZLiFe9__9DDRBmg%BcnBppTEe%@%rn=45fPjZ$rLYJIS`oy)1UF@AEX z>b_b{8-169&qAE>IA;q)nB~i11+iU5>`6W0y|=ZjJ1UZ=sxN)D5VvWN&b;~hg({|J zsqpgCaKWO6`DvB#v&Ro9npfTO({jrh>YX2iXOi$8dMbafB66W(R+frZxw!SwTv{bR za>@(u%;81(`$menX82B5{{GqkPrPfiCST#f!Qy4M1*xU}S_?c2z4q5y;wLe;R@4*k z7_G@yS?Dqe*U=2T=U#o&ADz^e!Fn%HnXoUi@BZodNA948d=HtuLq?)R4 z0j*zw0_Zetcmx#nFW(dQ>Nf0@sEDMBHb#Xq7t{*k_+7Z5_C5OMeL*dcXBZSm`e-TT zAs2xc$ziH+h!%n^v|b2YFQA5mXw{=v``Jh;k)} zUI8EDF7TH>{IxVbA`mlx=i-0(f8m1vox=a{t)HMXfDqMs^AGNOe`(%Xw~9qAh<0pA z^kK87v%JM$x&Sw4b4#+-E^4;GkMLp|*OJQnxO|amcM=k^c}+Av(TwO{Tr;-$5L_uQ zYDP*2w~Xmy6)RT}z0{0o^tzZnu0lJxDB3FW3?>aNnpl!uMWtF)({%vJyv>ulvWKwW zY1^);hwyFpqK1d)T$jqdTM_+w2GL#3+BLNbr;yy0y+rkpevLdtjSlUa`ij%s_+&eh zi67pssh0?tM%;pf+BMBB27+r9`IznpO%gscgaDUq-Ks#goI1RyF+~)yW2{a%*dGd# zv7C8g`gn+S?2t1XcwMPo)4bw({Mz1DF@4&wWqHMt=2Z5rPm+Dxw`)3BoSs4k))ggJ zinoke<{|zZLfWb#)+r(ZR@@{xp&YiNT5KxsAxh4-(@%%SMBj%|H2LdOv%LkWi>kpD zt9Vu~rcYkcWDA+xn9^~#m+%j#STENk`6*q=Wbitw35cbdpoOGiOd@NDi|ONqSBJ!H zpFrF-$BF(?nPeiGced-UVoCC%Xb%xFl&XSe?A_=gTv@bObi1Zw4Q?I8MgGBv2cV|JlEm9KF59+!8a+dag0TvG&tWfiGBaHGJr zikAf`1ES-}tsM!}_E{>)SDr`Z0Yiw6A}e-bnMA<16R{gNBKo1%SPVzD5mfKVUfWMn z`F=g39&3m`{DSDU?L^IKM9*-Im7O~~lk|9TpUton*Q*K921s6n!L$f-?PI1<)%E_w zZp7mkI+$u6q4Pb&V|1p6=+eM*n1^UFkYw_)fjp3R6V{vK4m$H_an zGnHp^7>_x~+tC!*nO;=y&H9hq+4owfsH${*q78ZzomGQq`so)ne$ZZaq73*RIgwvn zpF-ohmU~MKAm_eqNc2Pll5g37$~zLdZ5=B2CH%ITc2m%39; zEQSpEU!xg;-?@v*#*RnasYxT&qcIi`%m@}u-9qJstJ*caVY--yR`1`!XnqeaN`@!3 zAq~DQiFWHjV|+56Xa}qfuAz1a z^NN>)((&rX%4>MXO=Mt0S2A#jC#3frazfN4Gf&%4c}ZI;w^~nBR3thb)6y!Quye;c zQQL-{N%H6!qTyX=@ph|EgIhljN!q{Y@-;k7*-dOWj-wK~7wY1OeUO*f;_Il!ofRd{ zr?MxjTgqMCg=tTA#cu_1?=W{040vHHqCtGpgz8PaVusHkN9#9bNjs;BI7?vP2%=qi z%=RM#Jj8l#_FDxi$1t}LyEq8z*E%_;F%3kHnH1%!B$9FMLv-dYa{YJSq8_#;W5YXA z&6MLLIc*uqMDkkMaV1i~D%^(=<63nREi#$t&Za~+)h7CS645DJi01D^bOdu(^A73E zvt~KZ^{4AdTjeCuwvbo4+&f9Wz#gK*dEOU0OXX#tR^iql#tzZ%t5DULGeqZb*Ns?7 z<+jU-9^oDeV{T_|+=1mUouNgkbsdtK$z7TPY88tYSdy`DaoXDK=qF3xO_X$f=F=uu zD~aSom{x{14oJcD6U{moBm$0v6E}+Ik6yjxS6T5P00M#rl&x)E+p5KU} zvZ)`@V#sZj+1*CmHx;?(X4WOi-0bdB?$POF*Dmh&p$6BPR^nB!`X;J*+h=YPI?YH) zrj6&3L%*M*v8;E3&NF4F(Q>pH#;igQq;Buel0WjOcj596aNSG1>_BO_8vTJ~M<@OF zv6tff^Nc$@XeohiBZ%>ySMOS}RQ{1;^5e1euao2N{e-5YeC6=kriQIY- znT%@EuaTE%2x=8Yx{z~;JaAvbIjjmx$@TU2?PR!YGoriL>xG?YTq9WB5Z;`+v4O@M zO*b}K3TcbolFP@LTbav)I1SAkiF=njzcSaP^1k{t53v`!Xx>aRv9(#zN>MGu@pw65!nKC03`v{IOJioi3Uqi*h@-+5}1319_eU5v&McZ~wk^d7X={2!Y zP9>8A6scIwhpI9=>6m3%N^{|NG|MZjjmecjxaB2g7A2*R29eW2+-E^NkA6H&J4mrJ z)GI5nUE%!53(@;U)M`o~wR$z4Y+azm%`SG}yMVl6-4Ie8!Kbss8;D&Ln+G;i?$XVZ zY4WURGsBn`J4vcna;$GTnln7!$A?gTu`RTBJk1 zKyz~XKF^vOUyz>L>|8(Yo6)=xFJ}EmdB50Z2g54b51!H=PctboeR7LFdsCLuW7IF@ zh~keWKyrvl&8{x0{Sl49BNZWBNaMNg{fVowi71;G{XT<`Nmv-2t9dmxM&=XQ7=6u~GTP^t_Qk&G$qeMAI_6}ELcghl?f>;4Zzl3W-RKfp|+o$?ojU8nNsLJq% zo`9m7s4hlY^6&>H#GHCBSbXeuUqNq6QvGNlnZ4S7Ym#5^>)|s2C!wV`?n| z7`8z2ujs+sGK_e)g}pPwbFAjBz@LqRd1)LmABnDv9y9N$=*DOd_e^p8c^XMRA55cN z5}ynax{`D?_L^22FLVh_k0UMB4{gW!PVG3rdT=I&d>|+0N_+c`H>jJ z#J_I_q8bqKW-?M03^be3li62ekAXLb(ai2wV=n>CW0ZnfLA?2lmOIcwM#*ap-ePH| z@f|v!e2bOKc(iM`A=FT=VsvaSp^iZ0%vOy3U#3p-3r54LUyZFTI?K(BmQ=hN``*+= zZsm4=!O=wY=XN;??b=j|o0TX=%3VN0>`5jx5wFap9n1%H;${WN$?_bl@!dgas=UBx zQZ+&|~KP>WV|1Yrp)cfLj4CkN zBwsOl5=*=-@-3qrn+a{FzfKf6>>{8h!89rHAzKbnBZazVr!+GvGLg`3>4HnB9OAEX zg!agy+6tgL=u&j0jM7{%gozd7W_330k(HRYC=c-t$jXdLK_{Uqtn-LI2wD!v7)JIB z$pjC}8X9H7ywikE$XI;Wm_yVXO4ryY@#2%v$bLf1!6#ph8J*iK1SXJdXGq2n`c-yd z)EE~niQ+ej&y~^c5%!8i@j!NFCD?#(oWDjvyg6DRqhtG+I0Q9RKmGrGz1;H@^BkuUSi zriF|ebI-V&Rxzp&O6>wn8yT6nM?+0J>FXF|S zE;D+AuhkPpW7Bm;Cm6Lc-D9+}IPtoe9y7XuuRjw-lIazrBi@7tnWWiHldBI$G0Nm> zCbT1vn3GLjj7D)^%rfO+w19aFOa&O-Vzj~(!Ki65YPZf*ijiR6m!?XLMsoCfO|=-M zu;gJ=eY439gG1Sy)28OkEWyn0P3;-=;eq+t)PqrOoQV^~EmJb1LfmWjO~V;AFG0NL zrm+U%rR=?F8Y3^}na%SUC2}_7p%vx+P(7c^dEO%mI^Ik?JSWPkW z5k~izSJ8ZyQE~{GuW7!>$cy8xYrbY6AL2DL-(~ciCEJ-F60(c7EZWulf|*@-43o_n z=1(j65VMno2Bt0ML1&ZQoSjhare)@$j5hJgw%i=Wr~yy4 z73LC*N@ES|Y+7Y5&8Rug`!ztcH}1CM@2e8UT60-uK4DKco69lkgm+6=Ow3iYxVFb! zlX;5AaG$w0qZ4d!zd4>!Ri4`i%yk(3$yyGY>odXwA#@%xH)Q1O#{1u4b0Wi%yqFv@ zH_d{Mnp-LH|EtW>CB`3 z&b*G%NI&X}_vQ_j(TLYPpHPN*BlnE02HqZ;g=G_?J4+3;jnU3QKz1;9F#MsC!Q9Qr zzm|daGkQ_oKnEFlHZ;&t%cqnTmXqv^aTL)kXBb&IFHDwmmN9T`UwLxPZ25)*Y}k>I z-2(VYjkD$3EXd7riPad%=4H9Yh^8UVOqLsrhVVHdx8)Z`#*7KD++k#FTtSw5j0U?? zyZn~>jEv+CwOf8?XiT6&mOmKL7buCMu;meZI+V|B;g%;^Tq|PvlO>08b{Dg}U^IfW zJIeBkksl^rq9|^8!^r5F5|($2j8rdWv1hP}tyl#TMH!254rS@EiwXtlaiP}92A?(BFYk~9P54U6Z1#-CgQ zdU^GF(6BYzLDSdowd1FBkFP-wuip!rz~$lf>f&DkGO->RE8Lpu6PX@sMdjB_eYmD9 z(@k9SBh#1;x{t4TdG;tIFE2R{I%CBTReVM4qMuQ2uxNy{RiyMD;T$EJHI8$(`-=FA zH^6Q<{0`WY`#lD&yq65i%Fj{u8u}V^;ff56<<&kwExnwptib&N?S!qruCM@ zpysQ-)a(`0t$itus9xPPt5~oyF2;z)S6tZ9G{#r_x?_a1uZa5c8y8=ZYmmRySNt{5 z-|8u9wby+-#n@e~VmyURZv{#Fhwb0Ec#07HXcbSfrrS3z4Mv_SPc@yA3!_2yp4~K0 z(IBo1%+Ieyj{eHD{qTXy80W|CQ@OH!MDaw!7=vF9VEQ zLJ^-|z86A|nC6%^!r43l;LU}}enP$YUx8SWP$7eL?w`>A=-J2p9*1cUWL{^{N>bk4}+Gd;zlU7l5 z`8JzXY{rmf4ro)J#w$UCMG$j$cX;b(73&keacMHLQu%IL6Z^>i^fR&*C@z~%w1B$C zi;3p0LNt!cM+Z=Od2gaILy7LLPxSjrPwsF6Kbk;rFEkCPNL~M zh}PqpZyS))+o}?6w7?ntXE(*uPb>qM6jD@jb$6)9izUJ;0#No9XV>*djSJU*)nhcu zp_L|pZt5`;)VtE$s!`%x-KA7cUkBP@C(Q`=jlTX?@%0x(v(`j*r<#>q?`>z`--D{Y z8b-8r4N9WglZk%Yl<0Au9bR1XhO z7rD}bX)>s<$XSh6#xlG1Ag~?l?1#~~%yJTy=_GoKMW3>0B^EulfVg2?Z)KW`xf-~> z;+qqs&QFod{+&6p;RPJiO`yKwde!fs|IgLLUB&vxF`WbID|%NuO6z|YW~ZcIg=l@I zZ9#oS>uPsV)3g>fZq8jA%`_g=R~)QLh6k=9ZY(P;!n6XbuE(x#PJavy`O;s3KA1<6 z`c7F5udSK3#-Jnr$1&*18Q?M3wHjio>J6dI9MglHfheC~`V*+Hcw99UHKXE4owXy; zqqB)#;J#VSbT9W%A$FqIs$!5g2Ev%$#>!zian2j-KQ=+c@!xyk|LeYYacw9Pd3aj6 zYG#qQ%LqJ)Z{JMREtdAWoaHN3^Ay=IIXy*CZCVYRVw3X}_O9`@z=#OgYW5V-Aw+Y8 z6P;9)s7vv!W?wO|!dsjr{z&rm_Z26w5c!G@YZK5D{b~_Ckwo-zC!)7&6HTc?^n6RA z&AU_E&g-ac`^`k3cOx2&#K#t8Z%RLrpq`GcqJ&Oq*u5dG`Qz6$s1_v_u4_}Rv?x)d zCuqr)eL<@;{jhWd$`=QX0gYZW5j1Y~5>V^3ji6%&?nYq0&QGaQT0{*#23Iy#x{UgT zOMeEP)Z`{;QbW|=(>iLKnpgE2c0>) zesz2!)rBV8*+sN|qdF7oL9iXYiN<~JgZyvC=pYkUv*zmac#fqO-6d1pyiIJ zRrHxN%IFG)cv|pX8BeJKOduv{C7F`N$3m?Bbh?&hY$Sd>8y>Pytd<%mnrj0 zqvBY}jcA%Ts^^(m&bNgI@f4DmtJ(W_pZ5bR?5=hc+*66?ZoO0i}jv!=bF@w7E~g_5OksMee49_SBj)sx%lG!>$+R zBgsD#5C&}mySwSF$AYV$pY6(KWMqCPkCcdc>+pA&fhQ#_>IXCD2X=+urq5X}V8 z%xEUt$Yg^eM7KsIf&Nv3XywwBNgv9P6LZT|L#ysf2GpRw9E!eN7%~F1iq8zt80$h% z`<0xl@e>xb1GH+PuRya$o(Jvf^dsnGXQH*W+n`sSo`aTjv(&_nU?%!=vFxA|OAvih zis+FtL~9Cv(AwTqp5a3D`$7dln?#ld4UVb?+RW4h^f$YiesWmaflkcX8}!G#MEwg5 z0d;Ym40Iz5tT^QcXr$DLbv`ig8W6w@hR3TZrtG?7D!aNPx& zcfJ(ZdCNhRS7{_U+{b%)%!cTqvpHxoS@$iZHfuGb2~LI5fF+RL&l(U1Hw`B%@#v7 zxmzcd=+EuxTxlHJ?VD&(3X3ZR$+?sKtyuqG`jrO=i>v-o-GltK|F)*dx<(&mt`}*B z^7p+ufRZ9iV^%%9COu#n2T|9Py}+$rvM*@9VKj9E%ML@?=%H^1x2!?Wzk|;ScwKZX z7)weM-L^XpJ{mE7|K(iN7)ohFvWjE8y4`KF5cP7%GSCtMt3e+`Q@PN1awTi8(3XZx zxqk~!JnHn`0GZZ(NXDRcL)5rxFs>bboAL)%>`zO?-%ZFbdB*oBj2SE};WUB&ml>aR z8vj{y3tV|*#}5qTqj?-rm}qJdT1M7I(F_hKNz2Hf(qBU6X&IvH$`KtTi2Ls@R$&*7 z)#X1|y-y+8KP{7!xj_Is(TNw9KcXnUA|=V8rltRHlg2{3gqNoNybc;+{EMS@s5UzD z-#yLRby?T;4Z+lBTiE2qNLm38@@n`4uZC?)Q;kzu3Se3}3cxNtUzk6x|NmrQL_X^9 ze|IjcLvi`2&;0POvw|y;v>1;l`Y#K--LXftqRqgug`ABfPyd&MGCKS)8~fi|?cr=2 z%6(@4-?KM}U5v3&Oj(oE%1Qb!V~ox>9KFPjZY)9?90_j!9~xKSG5+6&U`T%I%f}p_ zB|II&_s@NqCI5p1NVKc%^91=cRX)uWYj4_)f9^%w@kt)0OtN&>pHDK2p+h{^&$vOM~5yyN^ zx~$#%?{4+TR~Mg^{O|Jix}02YoYh9M{JVjUoLt6P?|&b-0B-d+ZrT6g%=%B=n{}x% zWd4_g%{nMXW*F1hRK(7kN|w#$-=oiPWCvf#Q%`AW2MU)lQDOV zj`|PL|B(Fp|8Z5Qz^mRg-m;Gup%sD_W~~3lCi~yUvUXZl7qe!v&TE;m!vB+=tZg6u zXHVEadusV7lM6U~DzfhnB5BC}cav@N(Ezz}+pNpB;jaC^jn7CfW9g0JGep*d%-^)Nv$6mCIW6m&mAPd7|IB|L0%HPu|8xF#!;4*dGQ`n) zQ5U?B2o5+@iyos+)$$eXTj0X-DBy%?gwfd>TT8O zO#I!Ve6gQqia%a&K);<05aWqoLC`_@vL3TCosc4qZv|>FB}GJ4hV z)Eb%GALWUs2WN>s42v{BciSCj^@{wc_1&U=HYujy^#HC5K&3d9pQ!QdZVA7RzYg+l zKRlKq8-+MlI*o_wuC?j;X?F*D%9*t>^92Jv*y!LI&pn0{#siEoCGLF3Ea1>GI-60}oskJ`Q> zL->J42U6Km%m%ukY`NOF6AY;dT0WfU3VTud@h?vFHg3W)AC!VZ=oY9%Ks@UEbfx|{ zJ)l0y!QqLZy<_QNDz;B8Tr4-L+yXVp{YidRBcl1+(S6F3wsezXv^55I$P(fvgmi}d z@7_IXQ`orw`R9w1u{>2G{^Kbp^DXHuyxF5(8IH(KTSq}@wqdhDDPwR^+p2y@Y2nGV zRyhTk9&U@lUAQ6y(=0z|uXgl6-j(lENAaDiQJ=Nu9^SOz z{NsbW&CF*1E%Z+{|83y=UWH(|_8>C<-6EPzS<5Hb38zL8;MN%u5l2Cmj`OvP`py+l zWlS)0G)*Ui8ja~PGV_MaxEuR5dNuyNk1thCv?|2+nZ-d#T?6#NX=@YI*XC*50yq5i z^Wl>kF+Nvr`p+(iW*-s#bwF1jeE&ks9Du_OCjQd#fzZUZV6+qCohzu0aZci>fyA7t zy?~xOP}(YqzyE&6Xq5PRHKE}JxSc4xgwWW6nP^a)i?|uZh@Ej2tMQ=yug#ja7B}(0fx0b}_>Y;scOajNgbL$(7q~5& zGcVjgY|vd)WHe7)-IyBZF8;u`Ft9&Q1XUapmrc-zS3=AaH-}A)!=Ir!(9XRo4zG{# z1qAUreXZiW#Bc`+IIuL%TeQMwE5vg;unFDYwTgjCj@cXMFNQc!hwMtW5ioj#)S@s-7(ERt2l7zg@d$_(dfVuk}{ z*gMyZuP)XxoG0GJ*Nd+qb~wLq z*sYC3Zia@MM)=Fjk4*4N8a#1ou!?UadS#JJ6a%tICQ>8(bKLS|N|Y16sWy0$%r_CE z9f-^~6_Xf^Gp#4X7#J3ghBMqMSzVi7y*oBV+dh7=j0S;8^@WJ>FqND?z zK(2Qd)g5TwgtPHo!~_Q#Kl);PH=!KJXYAg%o?@K?P2TrMd@r%nf!bki^${l>==S&* z@qO{{e{jGBhg}o;i-b`E|I8CHqb|k|5Ir1dd}^MA!D6BVT^OG~VTfov+K?>zb&-T& zVx$9k0i}qI4ipHthl~9VRCPkBgj8{7jM1*gu}TReM1*~;0q5;cfbF3U)OFMmx8OJrX90Z4OlP$bf{&;<*FWIyNR@s^~S|kPJCCJz=`o z;y}BgbEY^r-Z3)kzh00qOEj8bh+aCdE@6)7=0L;ur6nja#(`F0^;#(AIFNb5p@c=^ zjsq1ucs^mN$T!i@((B0Ogk_?g0~H;&H*UG;>p*=lOe@65iM0QqyH8KJmatMBaxf1i z+)G#^-Z@a&I`mfg%YTL_G(30rZ7v>OgZ~ zexvB>K(8h|OxPrb0Kxt|@oK^|z-12R4g21>&0?zq9UQecZi_hRK;KP#ldx61bD;W1 zizI9pcP1OImBeU&DV{sf;~pM$(nO&t1}`7Fd#5PtKwI|bs=h>* z%tUy)PyFCOEjtyivtPV*pd_s1UkRV7hSDEfmZ)=3ba9|NUq#nBEap4V?XPS9f4seS zTouRr_r1H<9ykZ7iYSU5Yp{@D!HTF+l-^NdH1>!sAyI4#!4j3ID0ckDf(6AWk#B@( zj3{D{niwm_hDM^X#Uz@L_*~aDgXj3m_xHQ+`}N$<;~(R`=QA^(nc3Ny**%A|A%~T3 zByGp;K8hc3i+pqEz7cXv8S)7cu7AIL8543s$y+EyGg_Qd4oN!n_1ht*mD7@{&%WRP zjB;1f+^Hi%zEy5468WCYy5Il2@=VfOQzwU9RMssPTG-xsA!SO7OhMfbEDO1&j1^=k z-S@2zxv6ZBVl_OYx0P*@PGX^VloCm+`)v=os~lV+irM=?7rT4PV@dzUlXg#0mkRC7 z2b){nS9~NLz#)5I=_={#{rf_GR-Q>RMwT28d88C%iHx!PuZKKQ?nx@{`(^*9N~NUz zeeZ?*sxN?aGv?bR0b}w1%25wTakX zcePm3mM@2f)>MCy^!@(Pp&qI$ewCZ9rq}VRsIB%}Bk1J8&W%0QA(DLYqV!bVvxWBH zU}vLo9o0u-B#L#^>ym1hP71B7_FXHIZYfC%t)~u`^n39qp$*jxNuhXto2c26I%8jW zt9g?8ev%W~RJ|yvR!LE4bF~G24Vfz1@8GdeqorCPu`!N(AN3?trm|`O_n~c6*H1;# zt9#2r+o~%i6@7I#^mVmh9ch`0-^O1;{ZyZgg2FaJSSR(s7C~8Wx#BxM3Ui5;D{tE5>@>(p`9&W6*gEMBk7|rH--&S7fbqM@6NDcDo%=A%KZIbgbi1>N;-SEIBcZ) zOw#Pbr^3dlKD$K9b%!s7C8^PdM7O1#8&6QfKNsTa)cgG>sG}qm&bb{nNllS-w&Z@; zd+G*BI!?MDsGl=sDmQyQ3;R$lm)hWBOZa5<;%-r9&*JLgDQfRRLGuqZ51*li7t#8I zt#4f1JUmrR{8Etp;pXA#>gc_K-a6Pke2$vDPmmpEoTsLKC1@*BhMKWo&{RyhNL~50 zpaowy4_~6@91v83ll(GuU9q612j2)^uC_ZU*S{wvJ;PV40SARx?O;gwTJ~(UL|COAjwl zy-o^PCf2oce-^%1T`XzbSKo(zrIrxU`giur{o(u7YNtff zN}S0Ls9utSmK_Z*R>LJZ9J&!+qWXO!Ql^x=6MkIncSg{=*us-)yreC2pNF4P*Gu~1 zpce6sx)`^abA7zd(ujkbsMHOyr9mKME3_5)RyN-6C3*rYG0-_CAK=H3=^8c+vf}F zxL1;{e}xKOp>s@PqkTaQxWE?X7lYq$y`YYeRPF7pNE4Y#l}idGY+GXl=rZi=5 z^F9$}YK5fktySf!`kN$+FOhzk%3P`>)eMcess=DER~{Op6C!?4v#*kfIQoN#Tk6DX zM55b%RHra4SI*kk2+qcg-lD8U=PiR ze4);IL87>+RJ9iNDw1fus0xUZhDYmlQYpN-eYYv4hpYaL|gYSBt#{SJ1(}z8+&0ox zd-jTU7k~2*Q!3H9?NRIKYR%`SB?(f#jOZTertPOUwaFfJ*Ukx23c`XS-8Ex)by3WS zZIO{RwcV1kw!IZuTYJj1T*=xtJQ9CZ6My8EIyh_F_{h52M@-^0)zgZZ#6?+8yYPy3 zO^~u;+my(9n#tW-nFgAZ@e0;{h0(`4?q;mX{jYN_!^7nC%6TK3XdN zL@a4B+rN%%t0m#zr4vPOPK|s+i^rd6B|0CO8rfbek<=*ad}K$hppMY4uDBlQuQjYI zXidzE$gWz3q~!irYIWDP)y40>Q8CH=QzHYk11x4LcSoj125P}xlu>kWZ_NvTZWJ#y zzJTx-v6-s0{jbo)S16$Ym%^i~w>Di6Uom~OSxD$#YOxy`sPxe?SS+{KHS@-pZ0~+9`_Bz@6GL(^mpHyNJnH!CoHqS zcAChLEgYcT7ozfFYlJ#L^Jr*o{Q#{YQ;CxKt|e-Kw#!Bf(F&PLIbVp@vXM1kh~~#6 z@`Y$yY_u?K7n32xFs(^rYsLu8hp9w)e_PF{2+gC3Rg2W>Gm&PAiqtyTXwh20ORZ*9 zwARYonlDE4V-jV?X!V=2Cf2`Ltp%eHW3_jMsEl4yKPpapUl54hl4Q6ArA7|bo(VK>TN@iS zOe=3k8J8=o2M<9?#Py5l+X3UFMrwtU4i!#~dRGg0U1;@Y%!`_!DSkwyN`s@@d?so> zOeKomb8nYPS`Q{MWZ%>JR*`{^-rv(=1uDmeW<|ZPjbJJ@PYVoGlC>#SN%0AOvX;uU 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 diff --git a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs index b473e49ba..f7e8c50fe 100644 --- a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs +++ b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs @@ -299,6 +299,8 @@ protected override void OnStageChanged(HediffStage oldStage, HediffStage newStag if (newStage is IExecutableStage exeStage) exeStage.EnteredStage(this); + + pawn.Drawer.renderer.SetAllGraphicsDirty(); } diff --git a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj index 06373c20a..1cc60b076 100644 --- a/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj +++ b/Source/Pawnmorphs/Esoteria/Pawnmorph.csproj @@ -29,7 +29,7 @@ pdbonly true - ..\..\..\1.4\Assemblies\ + ..\..\..\1.5\Assemblies\ TRACE prompt 4 @@ -39,7 +39,7 @@ false - ..\..\..\1.4\Assemblies\ + ..\..\..\1.5\Assemblies\ TRACE;DEBUG ..\..\..\Documentation\Pawnmorph.xml none diff --git a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs index b04bf8727..60fabddb1 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs @@ -345,8 +345,6 @@ private static ExtendedConditionGraphic GenerateGraphicsFor([NotNull] List= 0; index--) { MutationStage stage = mutationStages[index]; - ExtendedConditionGraphic stageGraphics; - if (stage.graphics != null && stage.graphics.Count > 0) - { - // Stage has defined graphics for this stage, use that and hide all addons not explicitly defined in the stage. - // All or nothing. - stageGraphics = new ExtendedConditionGraphic(); - ConditionHediffSeverity severityCondition = new ConditionHediffSeverity - { - severity = stage.minSeverity, - hediff = mutation - }; - stageGraphics.conditions.Add(severityCondition); + var stageGraphics = new ExtendedConditionGraphic(); + stageGraphics.conditions.Add(new ConditionHediffSeverity { severity = stage.minSeverity }); + bool hasGraphics = false; + // Check for stage-specific graphics + if (stage.graphics != null && stage.graphics.Count > 0) + { var stageMutationGraphics = stage.graphics.LastOrDefault(s => s.anchorID == anchorID); if (stageMutationGraphics != null) { stageGraphics.path = stageMutationGraphics.path; stageGraphics.extendedGraphics.AddRange(stageMutationGraphics.extendedGraphics); + hasGraphics = true; } - severityLst.Add(stageGraphics); } + if (hasGraphics == false) + { + // If stage has no defined graphics, then default to mutation. + if (anchorGraphics != null) + stageGraphics.extendedGraphics.AddRange(anchorGraphics.extendedGraphics); + } + + severityLst.Add(stageGraphics); } - hGraphic.extendedGraphics.AddRange(severityLst); + if (mutationStages.Count == 0) + hGraphic.extendedGraphics.AddRange(anchorGraphics.extendedGraphics); + + hGraphic.extendedGraphics.InsertRange(0, severityLst); return hGraphic; } diff --git a/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs b/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs index d58e1156f..c7ee7342b 100644 --- a/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs +++ b/Source/Pawnmorphs/Esoteria/UserInterface/Dialog_PartPicker.cs @@ -9,6 +9,7 @@ using Pawnmorph.GraphicSys; using Pawnmorph.Hediffs; using Pawnmorph.UserInterface.PartPicker; +using Pawnmorph.Utilities; using RimWorld; using UnityEngine; using Verse; @@ -20,6 +21,7 @@ namespace Pawnmorph.UserInterface /// part picker dialogue windo ///

      /// + [HotSwappable] public partial class Dialog_PartPicker : Window { @@ -913,16 +915,31 @@ public void SetPawnPreview() { recachePreview = false; - RenderPawn(); + Color? hybridColor = CalculatePawnSkin(); - if (camera == null) - InitCamera(); + if (hybridColor.HasValue) + alienComp.ColorChannels["skin"].first = hybridColor.Value; + else + { + alienComp.ColorChannels["skin"].first = initialPawnColors.Item1; + alienComp.ColorChannels["skin"].second = initialPawnColors.Item2; + } + alienComp.CompTick(); + + + pawn.Drawer.renderer.SetAllGraphicsDirty(); + previewImage = PortraitsCache.Get(pawn, new Vector2(PREVIEW_SIZE.x, PREVIEW_SIZE.y), previewRot, new Vector3(0f, 0f, 0.15f), 1.1f, supersample: true, compensateForUIScale: true, toggleClothesEnabled, toggleClothesEnabled, healthStateOverride: PawnHealthState.Mobile); - camera.gameObject.SetActive(true); - camera.transform.position = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + 1f, 0f); - camera.orthographicSize = alienComp.customDrawSize.x; - camera.Render(); - camera.gameObject.SetActive(false); + //RenderPawn(); + + //if (camera == null) + // InitCamera(); + + //camera.gameObject.SetActive(true); + //camera.transform.position = new Vector3(PREVIEW_POSITION_X, pawn.Position.y + 1f, 0f); + //camera.orthographicSize = alienComp.customDrawSize.x; + //camera.Render(); + //camera.gameObject.SetActive(false); } else { @@ -960,6 +977,26 @@ public void SetPawnPreview() // Taken from RenderingTool.RenderPawnInternal in CharacterEditor private void RenderPawn() { + + PawnDrawParms drawParms = new PawnDrawParms(); + drawParms.pawn = pawn; + drawParms.posture = PawnPosture.Standing; + drawParms.matrix = Matrix4x4.TRS(new Vector3(PREVIEW_POSITION_X, pawn.Position.y, 0f), Quaternion.AngleAxis(0f, Vector3.up), Vector3.one); + + PawnRenderFlags renderFlags = PawnRenderFlags.DrawNow; + if (toggleClothesEnabled) + renderFlags |= PawnRenderFlags.Clothes | PawnRenderFlags.Headgear; + + drawParms.flags = renderFlags; + + + pawn.Drawer.renderer.renderTree.EnsureInitialized(renderFlags); + pawn.Drawer.renderer.renderTree.ParallelPreDraw(drawParms); + pawn.Drawer.renderer.renderTree.SetDirty(); + pawn.Drawer.renderer.renderTree.Draw(drawParms); + + + //Color? hybridColor = CalculatePawnSkin(); //if (hybridColor.HasValue) @@ -1083,11 +1120,9 @@ internal void InitCamera() previewImage = new RenderTexture(PREVIEW_SIZE.x, PREVIEW_SIZE.y, 24); camera.targetTexture = previewImage; } - } - - - + + } private void ApplyTemplate(MutationTemplate template) { IReadOnlyList taggedMutations = _database.StoredMutations; From 097145c44e07d8377263d69eac6aa8c405b663b1 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Fri, 22 Mar 2024 16:56:47 +0100 Subject: [PATCH 15/24] Switched stats cache to shorthash to ensure uniqueness --- Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs b/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs index 10f9c62e0..f606f2e10 100644 --- a/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs +++ b/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs @@ -68,10 +68,10 @@ private static void OnClear(PawnmorphGameComp obj) /// public static StatEventRegistry GetEvents(StatDef statDef) { - if (_events.TryGetValue(statDef.index, out var events) == false) + if (_events.TryGetValue(statDef.shortHash, out var events) == false) { events = new StatEventRegistry(); - _events[statDef.index] = events; + _events[statDef.shortHash] = events; } return events; @@ -86,7 +86,7 @@ public static StatEventRegistry GetEvents(StatDef statDef) /// Null if no value is cached and pawn isn't spawned because GetStatValueForPawn throws error in that case. public static float? GetStat(Pawn pawn, StatDef statDef, int maxAge) { - ulong lookupID = (ulong)pawn.thingIDNumber << 32 | statDef.index; + ulong lookupID = (ulong)pawn.thingIDNumber << 32 | statDef.shortHash; if (_statCache.TryGetValue(lookupID, out TimedCache cachedValue) == false) @@ -106,7 +106,7 @@ public static StatEventRegistry GetEvents(StatDef statDef) private static void CachedValue_ValueChanged(Pawn pawn, StatDef statDef, float oldValue, float newValue) { - if (_events.TryGetValue(statDef.index, out var events)) + if (_events.TryGetValue(statDef.shortHash, out var events)) ((IInvokable)events).Invoke(pawn, statDef, oldValue, newValue); } From 9aaa3cb3c5b0d71f863892558c6fcfbc6e31cf8d Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 23 Mar 2024 16:57:23 +0100 Subject: [PATCH 16/24] Fixed more bug with new mutation graphics --- Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs index 60fabddb1..50b900332 100644 --- a/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs +++ b/Source/Pawnmorphs/Esoteria/PawnmorpherModInit.cs @@ -373,7 +373,10 @@ private static ExtendedConditionGraphic GenerateGraphicsFor([NotNull] List Date: Sat, 23 Mar 2024 16:58:41 +0100 Subject: [PATCH 17/24] Re-implemented pawn scaling optional patch in 1.5 Fixed stats caching related issues --- .../Esoteria/DebugUtils/PMDebugActions.cs | 3 + .../Esoteria/HPatches/Optional/PawnScaling.cs | 374 ++++++++---------- .../Esoteria/HPatches/StatWorkerPatches.cs | 2 +- .../Esoteria/Utilities/StatsUtility.cs | 2 +- 4 files changed, 174 insertions(+), 207 deletions(-) diff --git a/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs b/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs index 806b16d6d..146f66133 100644 --- a/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs +++ b/Source/Pawnmorphs/Esoteria/DebugUtils/PMDebugActions.cs @@ -14,6 +14,7 @@ using Pawnmorph.Genebank.Model; using Pawnmorph.GraphicSys; using Pawnmorph.Hediffs; +using Pawnmorph.HPatches; using Pawnmorph.Hybrids; using Pawnmorph.TfSys; using Pawnmorph.ThingComps; @@ -472,6 +473,8 @@ private static void MakePawnMorph([CanBeNull] MorphDef morph) AdaptAllMutations(pawn); RaceShiftUtilities.ChangePawnToMorph(pawn, morph); + + StatWorkerPatches.GetValueUnfinalizedPatch.Invalidate(pawn); } private static void GivePawnRandomMutations([CanBeNull] MorphDef morph) diff --git a/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs b/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs index c071f165a..a160e031a 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/Optional/PawnScaling.cs @@ -1,205 +1,169 @@ -//using System.Reflection; -//using System.Runtime.CompilerServices; -//using AlienRace; -//using LudeonTK; -//using Pawnmorph.Interfaces; -//using Pawnmorph.UserInterface.TreeBox; -//using Pawnmorph.Utilities; -//using RimWorld; -//using UnityEngine; -//using Verse; -//using static AlienRace.AlienPartGenerator; - -//namespace Pawnmorph.HPatches.Optional -//{ -// [OptionalPatch("PMPawnScalingCaption", "PMPawnScalingDescription", nameof(_enabled), false)] -// [HarmonyLib.HarmonyPatch] -// class PawnScaling : IConfigurableObject -// { -// static bool _enabled = false; -// static Pawn _currentPawn; -// static float _currentScaledBodySize; -// static float _scaleMultiplier = 1f; -// static float _maxSize = 5f; -// static float _minSize = 0.3f; -// static bool _useBodysize; - -// public string Caption => "PMPawnScalingCaption".Translate(); - - - -// [DebugAction(category = "Pawnmorpher", actionType = DebugActionType.Action)] -// static void ResetScaleCache() -// { -// var curMap = Find.CurrentMap; -// foreach (Pawn pawn in curMap.mapPawns.AllPawnsSpawned) -// { -// if (pawn.def.race.Humanlike) -// ResolveAllGraphics(pawn); -// } -// } - -// static bool Prepare(MethodBase original) -// { -// if (original == null && _enabled) -// { -// StatsUtility.GetEvents(PMStatDefOf.PM_BodySize).StatChanged += PawnScaling_StatChanged; -// } - -// return _enabled; -// } - -// // Trigger pawn graphics update at the end of the tick if body size stat changes. -// private static void PawnScaling_StatChanged(Verse.Pawn pawn, RimWorld.StatDef stat, float oldValue, float newValue) -// { -// LongEventHandler.ExecuteWhenFinished(() => -// { -// _currentPawn = null; -// ResolveAllGraphics(pawn); -// }); -// } - -// // Updates all draw sizes on comp to specified size. -// private static void SetCompScales(AlienComp comp, Pawn pawn, float bodysize) -// { -// float sizeOffset = bodysize; - -// var partGenerator = (pawn.def as ThingDef_AlienRace).alienRace.generalSettings.alienPartGenerator; -// Vector2 sizeOffsetVector = new Vector2(sizeOffset, sizeOffset); - -// comp.customDrawSize = partGenerator.customDrawSize * sizeOffsetVector; -// comp.customHeadDrawSize = partGenerator.customHeadDrawSize * sizeOffsetVector; -// comp.customPortraitDrawSize = partGenerator.customPortraitDrawSize * sizeOffsetVector; -// comp.customPortraitHeadDrawSize = partGenerator.customPortraitHeadDrawSize * sizeOffsetVector; -// } - -// // Override HAR comp scales. -// [HarmonyLib.HarmonyPatch(typeof(AlienComp), nameof(AlienComp.PostSpawnSetup)), HarmonyLib.HarmonyPostfix] -// private static void PostSpawnSetup(AlienComp __instance) -// { -// SetCompScales(__instance, (Pawn)__instance.parent, GetScale((Pawn)__instance.parent)); -// } - -// // Might be able to replace with GraphicMeshSet GetHumanlikeBodySetForPawn -// [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] -// [HarmonyLib.HarmonyPatch(typeof(Verse.PawnGraphicSet), nameof(Verse.PawnGraphicSet.ResolveAllGraphics)), HarmonyLib.HarmonyPostfix] -// private static void ResolveAllGraphics(Pawn ___pawn) -// { -// float bodysize = GetScale(___pawn); -// if (bodysize == 1) -// return; - -// AlienComp comp = CompCacher.GetCompCached(___pawn); -// if (comp != null) -// { -// // Set draw sizes -// SetCompScales(comp, ___pawn, bodysize); -// }; -// } - -// // Apply scale to body addon offsets. -// [HarmonyLib.HarmonyPatch(typeof(AlienRace.HarmonyPatches), nameof(AlienRace.HarmonyPatches.DrawAddonsFinalHook)), HarmonyLib.HarmonyPostfix] -// private static void DrawAddonsFinalHook(Pawn pawn, ref Vector3 offsetVector) -// { -// float value = GetScale(pawn); -// offsetVector.x *= value; -// // Don't affect y layer -// offsetVector.z *= value; -// } - - -// [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] -// [HarmonyLib.HarmonyPatch(typeof(RimWorld.PawnCacheRenderer), nameof(RimWorld.PawnCacheRenderer.RenderPawn)), HarmonyLib.HarmonyPrefix] -// private static void CacheRenderPawnPrefix(Pawn pawn, ref float cameraZoom, bool portrait) -// { -// if (portrait) -// { -// cameraZoom *= 1f / GetScale(pawn); -// } -// } - -// [HarmonyLib.HarmonyPatch(typeof(GlobalTextureAtlasManager), nameof(GlobalTextureAtlasManager.TryGetPawnFrameSet)), HarmonyLib.HarmonyPrefix] -// private static bool TryGetPawnFrameSetPrefix(Pawn pawn) -// { -// if (GetScale(pawn) > 1.0f) -// return false; - -// return true; -// } - - -// // Calculate the scale multiplier based on Pawnmorpher's BodySize multiplier -// // TODO: Add a toggle to allow scaling by any body size difference compared to normal instead -// [MethodImpl(MethodImplOptions.AggressiveInlining)] -// private static float GetScale(Pawn pawn) -// { -// if (_currentPawn != pawn) -// { -// _currentPawn = pawn; - -// if (_useBodysize) -// { -// _currentScaledBodySize = pawn.BodySize / pawn.RaceProps.baseBodySize; -// } -// else -// _currentScaledBodySize = StatsUtility.GetStat(pawn, PMStatDefOf.PM_BodySize, 300) ?? 1f; - -// _currentScaledBodySize = Mathf.Sqrt(_currentScaledBodySize); -// _currentScaledBodySize = (_currentScaledBodySize - 1) * _scaleMultiplier + 1; -// _currentScaledBodySize = Mathf.Clamp(_currentScaledBodySize, _minSize, _maxSize); -// } - -// return _currentScaledBodySize; -// } - -// // Offset rendered pawn from actual position to move selection box to their feet. -// [HarmonyLib.HarmonyPatch(typeof(Pawn), "DrawAt"), HarmonyLib.HarmonyPrefix] -// private static void DrawAt(ref Vector3 drawLoc, Pawn __instance) -// { -// float bodySize = GetScale(__instance); -// // Don't offset draw position of animals sprites, and only care about those with more than 1 body size. -// if (__instance.RaceProps.Humanlike && bodySize > 1) -// { -// // Draw location is the full position not an offset, so find offset based on scale assing a ratio of 1 to 1. -// // Offset drawn pawn sprite with half the height upward. 1 bodysize = 1 height. -// // Only offset when standing. -// if (__instance.GetPosture() == RimWorld.PawnPosture.Standing) -// { -// drawLoc.z += bodySize / 4f; -// } -// } -// } - -// // Apply scale offset to head position. -// [HarmonyLib.HarmonyPatch(typeof(PawnRenderer), nameof(PawnRenderer.BaseHeadOffsetAt)), HarmonyLib.HarmonyPostfix] -// private static void BaseHeadOffsetAt(ref Vector3 __result, Pawn ___pawn) -// { -// float bodySize = GetScale(___pawn); -// if (bodySize == 1) -// return; - -// float size = Mathf.Floor(bodySize * 10) / 10; -// __result.z = __result.z * size; -// __result.x = __result.x * size; -// } - -// public void GenerateMenu(TreeNode_FilterBox node) -// { -// if (_enabled == false) -// return; - -// node.AddChild("PMPawnScalingScaleMultiplier", "PMPawnScalingScaleMultiplierTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _scaleMultiplier, new FloatRange(0.5f, 3), _scaleMultiplier.ToStringPercent(), 0.1f)); -// node.AddChild("PMPawnScalingMaxScale", "PMPawnScalingMaxScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _maxSize, new FloatRange(1, 5), _maxSize.ToStringPercent(), 0.1f)); -// node.AddChild("PMPawnScalingMinScale", "PMPawnScalingMinScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _minSize, new FloatRange(0.3f, 1), _minSize.ToStringPercent(), 0.1f)); -// node.AddChild("PMPawnScalingUseBodysize", "PMPawnScalingUseBodysizeTooltip", callback: (in Rect x) => Widgets.Checkbox(x.position, ref _useBodysize)); -// } - -// public void ExposeData() -// { -// Scribe_Values.Look(ref _scaleMultiplier, "PM_ScaleMultiplier", 1); -// Scribe_Values.Look(ref _maxSize, "PM_maxScale", 5); -// Scribe_Values.Look(ref _minSize, "PM_minScale", 0.3f); -// Scribe_Values.Look(ref _useBodysize, "PM_useBodysize", false); -// } -// } -//} +using System.Reflection; +using System.Runtime.CompilerServices; +using AlienRace; +using LudeonTK; +using Pawnmorph.Interfaces; +using Pawnmorph.UserInterface.TreeBox; +using Pawnmorph.Utilities; +using RimWorld; +using UnityEngine; +using Verse; +using static AlienRace.AlienPartGenerator; + +namespace Pawnmorph.HPatches.Optional +{ + [OptionalPatch("PMPawnScalingCaption", "PMPawnScalingDescription", nameof(_enabled), false)] + [HarmonyLib.HarmonyPatch] + class PawnScaling : IConfigurableObject + { + static bool _enabled = false; + static float _currentScaledBodySize; + static float _scaleMultiplier = 1f; + static float _maxSize = 5f; + static float _minSize = 0.3f; + static bool _useBodysize; + + public string Caption => "PMPawnScalingCaption".Translate(); + + + + [DebugAction(category = "Pawnmorpher", actionType = DebugActionType.Action)] + static void ResetScaleCache() + { + var curMap = Find.CurrentMap; + foreach (Pawn pawn in curMap.mapPawns.AllPawnsSpawned) + { + if (pawn.def.race.Humanlike) + SetDirtyPostfix(pawn); + } + } + + static bool Prepare(MethodBase original) + { + if (original == null && _enabled) + { + StatsUtility.GetEvents(PMStatDefOf.PM_BodySize).StatChanged += PawnScaling_StatChanged; + } + + return _enabled; + } + + // Trigger pawn graphics update at the end of the tick if body size stat changes. + private static void PawnScaling_StatChanged(Verse.Pawn pawn, RimWorld.StatDef stat, float oldValue, float newValue) + { + if (pawn.RaceProps.Humanlike == false) + return; + + PawnPatches.QueuePostTickAction(pawn, () => + { + pawn.Drawer.renderer.SetAllGraphicsDirty(); + }); + } + + // Updates all draw sizes on comp to specified size. + private static void SetCompScales(AlienComp comp, Pawn pawn, float bodysize) + { + float sizeOffset = bodysize; + + var partGenerator = (pawn.def as ThingDef_AlienRace).alienRace.generalSettings.alienPartGenerator; + Vector2 sizeOffsetVector = new Vector2(sizeOffset, sizeOffset); + + comp.customDrawSize = partGenerator.customDrawSize * sizeOffsetVector; + comp.customHeadDrawSize = partGenerator.customHeadDrawSize * sizeOffsetVector; + comp.customPortraitDrawSize = partGenerator.customPortraitDrawSize * sizeOffsetVector; + comp.customPortraitHeadDrawSize = partGenerator.customPortraitHeadDrawSize * sizeOffsetVector; + } + + // Override HAR comp scales. + [HarmonyLib.HarmonyPatch(typeof(AlienComp), nameof(AlienComp.PostSpawnSetup)), HarmonyLib.HarmonyPostfix] + private static void PostSpawnSetup(AlienComp __instance) + { + SetCompScales(__instance, (Pawn)__instance.parent, GetScale((Pawn)__instance.parent)); + } + + // Might be able to replace with GraphicMeshSet GetHumanlikeBodySetForPawn + [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] + [HarmonyLib.HarmonyPatch(typeof(Verse.PawnRenderTree), nameof(Verse.PawnRenderTree.SetDirty)), HarmonyLib.HarmonyPostfix] + private static void SetDirtyPostfix(Pawn ___pawn) + { + float bodysize = GetScale(___pawn); + if (bodysize == 1) + return; + + AlienComp comp = CompCacher.GetCompCached(___pawn); + if (comp != null) + { + // Set draw sizes + SetCompScales(comp, ___pawn, bodysize); + }; + } + + [HarmonyLib.HarmonyAfter(new string[] { "erdelf.HumanoidAlienRaces" })] + [HarmonyLib.HarmonyPatch(typeof(RimWorld.PawnCacheRenderer), nameof(RimWorld.PawnCacheRenderer.RenderPawn)), HarmonyLib.HarmonyPrefix] + private static void CacheRenderPawnPrefix(Pawn pawn, ref float cameraZoom, bool portrait) + { + if (portrait) + { + cameraZoom *= 1f / GetScale(pawn); + } + } + + // Calculate the scale multiplier based on Pawnmorpher's BodySize multiplier + [MethodImpl(MethodImplOptions.AggressiveInlining)] + private static float GetScale(Pawn pawn) + { + if (_useBodysize) + { + _currentScaledBodySize = pawn.BodySize / pawn.RaceProps.baseBodySize; + } + else + _currentScaledBodySize = StatsUtility.GetStat(pawn, PMStatDefOf.PM_BodySize, 300) ?? 1f; + + _currentScaledBodySize = Mathf.Sqrt(_currentScaledBodySize); + _currentScaledBodySize = (_currentScaledBodySize - 1) * _scaleMultiplier + 1; + _currentScaledBodySize = Mathf.Clamp(_currentScaledBodySize, _minSize, _maxSize); + + return _currentScaledBodySize; + } + + // Offset rendered pawn from actual position to move selection box to their feet. + [HarmonyLib.HarmonyPatch(typeof(PawnRenderer), "GetBodyPos"), HarmonyLib.HarmonyPostfix] + private static void DrawAt(PawnPosture posture, ref Vector3 __result, Pawn ___pawn) + { + // Draw location is the full position not an offset, so find offset based on scale assing a ratio of 1 to 1. + // Offset drawn pawn sprite with half the height upward. 1 bodysize = 1 height. + // Only offset when standing. + if (posture == RimWorld.PawnPosture.Standing) + { + if (___pawn.RaceProps.Humanlike == false) + return; + + float bodySize = GetScale(___pawn); + // Don't offset draw position of animals sprites, and only care about those with more than 1 body size. + if (bodySize > 1) + { + __result.z += bodySize / 4f; + } + } + } + + public void GenerateMenu(TreeNode_FilterBox node) + { + if (_enabled == false) + return; + + node.AddChild("PMPawnScalingScaleMultiplier", "PMPawnScalingScaleMultiplierTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _scaleMultiplier, new FloatRange(0.5f, 3), _scaleMultiplier.ToStringPercent(), 0.1f)); + node.AddChild("PMPawnScalingMaxScale", "PMPawnScalingMaxScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _maxSize, new FloatRange(1, 5), _maxSize.ToStringPercent(), 0.1f)); + node.AddChild("PMPawnScalingMinScale", "PMPawnScalingMinScaleTooltip", callback: (in Rect x) => Widgets.HorizontalSlider(x, ref _minSize, new FloatRange(0.3f, 1), _minSize.ToStringPercent(), 0.1f)); + node.AddChild("PMPawnScalingUseBodysize", "PMPawnScalingUseBodysizeTooltip", callback: (in Rect x) => Widgets.Checkbox(x.position, ref _useBodysize)); + } + + public void ExposeData() + { + Scribe_Values.Look(ref _scaleMultiplier, "PM_ScaleMultiplier", 1); + Scribe_Values.Look(ref _maxSize, "PM_maxScale", 5); + Scribe_Values.Look(ref _minSize, "PM_minScale", 0.3f); + Scribe_Values.Look(ref _useBodysize, "PM_useBodysize", false); + } + } +} diff --git a/Source/Pawnmorphs/Esoteria/HPatches/StatWorkerPatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/StatWorkerPatches.cs index f1640fb82..4a3fbec36 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/StatWorkerPatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/StatWorkerPatches.cs @@ -57,7 +57,7 @@ static float Postfix(float __result, StatRequest req, StatDef ___stat) if (PmShouldSkipStatWorker(pawn)) return __result; - ulong lookupID = (ulong)pawn.thingIDNumber << 32 | ___stat.index; + ulong lookupID = (ulong)pawn.thingIDNumber << 32 | ___stat.shortHash; if (_cache.TryGetValue(lookupID, out TimedCache cachedStat) == false) { diff --git a/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs b/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs index f606f2e10..cf463bdcc 100644 --- a/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs +++ b/Source/Pawnmorphs/Esoteria/Utilities/StatsUtility.cs @@ -117,7 +117,7 @@ private static void CachedValue_ValueChanged(Pawn pawn, StatDef statDef, float o public static string GetPawnDebugString(Pawn pawn) { StringBuilder stringBuilder = new StringBuilder(); - Dictionary statDefs = DefDatabase.AllDefs.ToDictionary(x => x.index); + Dictionary statDefs = DefDatabase.AllDefs.ToDictionary(x => x.shortHash); foreach (ulong cacheId in _statCache.Keys) { From 52acd397945829e2f260e4db50e16f6e1d7813c2 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Thu, 28 Mar 2024 11:37:39 +0100 Subject: [PATCH 18/24] Fixed VEF integration --- 1.5/Defs/Pawnmorpher_Research.xml | 30 -------------- 1.5/Mods/VEF/Defs/Pipenetwork_Research.xml | 48 ++++++++++++++++++++++ LoadFolders.xml | 2 +- 3 files changed, 49 insertions(+), 31 deletions(-) create mode 100644 1.5/Mods/VEF/Defs/Pipenetwork_Research.xml diff --git a/1.5/Defs/Pawnmorpher_Research.xml b/1.5/Defs/Pawnmorpher_Research.xml index 173625693..65b03fdd9 100644 --- a/1.5/Defs/Pawnmorpher_Research.xml +++ b/1.5/Defs/Pawnmorpher_Research.xml @@ -107,18 +107,6 @@ - - PM_MutagenStorage - - Develop methods of large scale mutagenic slurry production, storage and transfer - 500 - 3.00 - 0.00 - -
    1542. MutagenExtraction
    1543. -
      -
      - AdvancedExtraction @@ -181,24 +169,6 @@ - - MutagenCentrifuging - - Develop plans to construct a centrifuge to refine slurry and chaobulbs back to mutanite by a process involving the straining of mechanites through morphsilk. This process will not be efficient and will use quite a bit of power, but if mutanite is otherwise unobtainable...this is one way to get it. It will also be possible to forgo safety protocols to speed up the process, though this may have unintended effects on anyone nearby. - 3000 - Spacer - Pawnmorpher - 4.00 - 0.00 - HiTechResearchBench - -
    1544. PM_MutagenStorage
    1545. -
      - -
    1546. MultiAnalyzer
    1547. -
      -
      - MutagenChambers diff --git a/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml b/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml new file mode 100644 index 000000000..f9d1c0b06 --- /dev/null +++ b/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml @@ -0,0 +1,48 @@ + + + Pawnmorpher + Industrial + 500 + + + + + Spacer + 1000 + HiTechResearchBench + + + + + + PM_MutagenStorage + + Develop methods of large scale mutagenic slurry production, storage and transfer + 500 + 3.00 + 0.00 + +
    1548. MutagenExtraction
    1549. +
      +
      + + + + + MutagenCentrifuging + + Develop plans to construct a centrifuge to refine slurry and chaobulbs back to mutanite by a process involving the straining of mechanites through morphsilk. This process will not be efficient and will use quite a bit of power, but if mutanite is otherwise unobtainable...this is one way to get it. It will also be possible to forgo safety protocols to speed up the process, though this may have unintended effects on anyone nearby. + 3000 + Spacer + Pawnmorpher + 4.00 + 0.00 + HiTechResearchBench + +
    1550. PM_MutagenStorage
    1551. +
      + +
    1552. MultiAnalyzer
    1553. +
      +
      +
      diff --git a/LoadFolders.xml b/LoadFolders.xml index 2d3abe986..939b054a7 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -50,6 +50,6 @@
    1554. 1.5
    1555. 1.5/Mods/Ideology
    1556. 1.5/Mods/Royalty
    1557. -
    1558. 1.4/Mods/VEF
    1559. +
    1560. 1.5/Mods/VEF
    1561. \ No newline at end of file From 1eb92a70d9f72fbe7499b197dad21463715d9224 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Fri, 12 Apr 2024 21:13:13 +0200 Subject: [PATCH 19/24] Further updates and corrections to 1.5 Migrated and tested multiple integrations --- .../Reptile/Ophidia/Cobra/Cobra_Hybrid.xml | 5 +- .../Patches/AddToMorphs.xml | 68 +++++++++++++++ 1.5/Mods/VBE/Defs/Backgrounds.xml | 9 ++ 1.5/Mods/VCE/Defs/Recipes.xml | 54 ++++++++++++ 1.5/Mods/VCE/Defs/Things.xml | 58 +++++++++++++ 1.5/Mods/VCE/Defs/Thoughts.xml | 31 +++++++ 1.5/Mods/VCE/Patches/Patch.xml | 10 +++ 1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml | 4 +- 1.5/Mods/VEF/Defs/Pipenetwork_Research.xml | 15 +--- .../Defs/Leopardine/Leopard/Leopard_Full.xml | 78 ++++++++++++++++++ .../Leopardine/Leopard/Leopard_Memories.xml | 30 +++++++ .../Leopardine/Leopard/Leopard_MorphDef.xml | 17 ++++ .../Leopardine/Leopard/Leopard_Partial.xml | 34 ++++++++ .../Defs/Leopardine/Leopard/Leopard_Parts.xml | 19 +++++ .../Defs/Leopardine/Leopardine_Memories.xml | 29 +++++++ .../Defs/Leopardine/Leopardine_MorphDef.xml | 10 +++ .../Defs/Leopardine/Leopardine_Parts.xml | 41 +++++++++ .../SnowLeopard/SnowLeopard_Full.xml | 78 ++++++++++++++++++ .../SnowLeopard/SnowLeopard_Memories.xml | 28 +++++++ .../SnowLeopard/SnowLeopard_MorphDef.xml | 20 +++++ .../SnowLeopard/SnowLeopard_Partial.xml | 34 ++++++++ .../SnowLeopard/SnowLeopard_Parts.xml | 19 +++++ .../Patches/zLoadLast_Addon_Leopard.xml | 40 +++++++++ 1.5/Patches/Core_HumanHedifGraphics.xml | 42 ++++++---- LoadFolders.xml | 4 + Source/Dependencies/AlienRace.dll | Bin 321024 -> 324096 bytes .../PeteTimesSix.CompactHediffs.dll | Bin 32256 -> 51712 bytes Source/Dependencies/PipeSystem.dll | Bin 104448 -> 154624 bytes .../Esoteria/Hediff_AddedMutation.cs | 2 +- .../Esoteria/Hybrids/RaceShiftUtilities.cs | 4 +- 30 files changed, 747 insertions(+), 36 deletions(-) create mode 100644 1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml create mode 100644 1.5/Mods/VBE/Defs/Backgrounds.xml create mode 100644 1.5/Mods/VCE/Defs/Recipes.xml create mode 100644 1.5/Mods/VCE/Defs/Things.xml create mode 100644 1.5/Mods/VCE/Defs/Thoughts.xml create mode 100644 1.5/Mods/VCE/Patches/Patch.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml create mode 100644 1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml create mode 100644 1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml diff --git a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml index 6670f3bb1..23d4298ff 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Animal/Reptile/Ophidia/Cobra/Cobra_Hybrid.xml @@ -565,8 +565,9 @@ EtherSnakeTail - true - false + true + true + false true diff --git a/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml b/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml new file mode 100644 index 000000000..b6543be61 --- /dev/null +++ b/1.5/Mods/ADogSaidAnimalProsthetics/Patches/AddToMorphs.xml @@ -0,0 +1,68 @@ + + + + + Defs/ThingDef[@Name="PMChaocreatureBase"]/recipes + + Defs/ThingDef[@Name="PMChaocreatureBase" or + @ParentName="PMChaocreatureBase" or + @ParentName="PMChaomorphBase" or + @ParentName="PMSpecialChaomorphBase" or + @ParentName="PMChaomeldBase"] + + + + + + + + + +
    1562. + Defs/ThingDef[@Name="PMChaocreatureBase"]/recipes + +
    1563. InstallBionicAnimalStomach
    1564. +
    1565. InstallBionicAnimalKidney
    1566. +
    1567. InstallBionicAnimalLiver
    1568. +
    1569. InstallBionicAnimalLung
    1570. +
    1571. InstallBionicAnimalHeart
    1572. +
    1573. InstallAnimalBrainStimulator
    1574. +
    1575. InstallSpineAnimalBionic
    1576. +
    1577. InstallSpineAnimalSimple
    1578. +
    1579. InstallJawAnimalBionic
    1580. +
    1581. InstallJawAnimalSimple
    1582. +
    1583. InstallNoseAnimalSimple
    1584. +
    1585. InstallBionicEyeAnimal
    1586. +
    1587. InstallEarAnimalSimple
    1588. +
    1589. InstallEarAnimalBionic
    1590. +
    1591. InstallPegLegAnimal
    1592. +
    1593. InstallSimpleProstheticLegAnimal
    1594. +
    1595. InstallBionicLegAnimal
    1596. + + + +
    1597. + Defs/ThingDef[defName="Chaodino"]/recipes + +
    1598. InstallSimpleProstheticTailAnimal
    1599. + + + +
    1600. + Defs/ThingDef[defName="Chaoboar" + or defName="Chaodino"]/recipes + +
    1601. InstallSimpleProstheticArmAnimal
    1602. +
    1603. InstallBionicArmAnimal
    1604. + + + +
    1605. + Defs/HediffDef[@Name="addedPartAnimal"] + + true + +
    1606. +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/VBE/Defs/Backgrounds.xml b/1.5/Mods/VBE/Defs/Backgrounds.xml new file mode 100644 index 000000000..66c08eacf --- /dev/null +++ b/1.5/Mods/VBE/Defs/Backgrounds.xml @@ -0,0 +1,9 @@ + + + EtherBackground + + MutaCorp Datalog FH-27b: We made something we couldn't control. No way we're keeping our funding after this. + Backgrounds/PM_BG + UI/MutagenicHazard + + \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Recipes.xml b/1.5/Mods/VCE/Defs/Recipes.xml new file mode 100644 index 000000000..ccb19267d --- /dev/null +++ b/1.5/Mods/VCE/Defs/Recipes.xml @@ -0,0 +1,54 @@ + + + VCE_PM_MutaniteSalt + + Create a lot of green seasoning from lumps of mutanite. Added to meals after cooking for an extra kick. + Grinding mutanite into salt. + CookSpeed + Cook + Recipe_CookMeal + 200 + +
    1607. VCE_CondimentPrepTable
    1608. +
      + +
    1609. + + +
    1610. Mutanite
    1611. + + + 1 + +
      + + +
    1612. Mutanite
    1613. +
      +
      + + 10 + + VCE_CondimentsResearch +
      + + VCE_CowmorphMilkIntoCheese + VCE_CheesePress + +
    1614. TFMilk
    1615. +
      + +
    1616. 25
    1617. +
      + Mutacheese + 1 + true + 10 + 15 + 25 + 35 + 40 + 45 + 100 +
      +
      \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Things.xml b/1.5/Mods/VCE/Defs/Things.xml new file mode 100644 index 000000000..200acb5fa --- /dev/null +++ b/1.5/Mods/VCE/Defs/Things.xml @@ -0,0 +1,58 @@ + + + Mutasalt + + Mutanite that's been ground up into a fine powder, that can be sprinked over foods to give chaotic mutations to anyone who eats them... + + Things/Item/Resource/Mutasalt + Graphic_StackCount + + + 100 + 1 + 1.3 + + +
    1618. VCE_Condiments
    1619. +
      + + NeverForNutrition + PM_ConsumedDigestibleFullRandomTF + +
      + + Mutacheese + + A mutagenic mechanite cheese created by pressing cowmorph milk. This isn't edible, but if consumed it will act as an organic equivalent of a cowmorph syringe. + + Things/Item/Resource/Mutacheese + Graphic_StackCount + + Sellable + 10 + + 500 + 1 + 0.9 + + +
    1620. VCE_Cheese
    1621. +
      + + Meal + NeverForNutrition + VCE_PM_AteCowmorphCheese + EatMeat + Meal_Eat + 1 + 0.03 + Gluttonous + + +
    1622. + CompQuality +
    1623. +
    1624. + + + \ No newline at end of file diff --git a/1.5/Mods/VCE/Defs/Thoughts.xml b/1.5/Mods/VCE/Defs/Thoughts.xml new file mode 100644 index 000000000..f00027cc4 --- /dev/null +++ b/1.5/Mods/VCE/Defs/Thoughts.xml @@ -0,0 +1,31 @@ + + + + + + VCE_PM_AteCowmorphCheese + VanillaCookingExpanded.Thought_Hediff + PawnmorphCowTF + true + +
    1625. + + That... was... huh... My whoooole body feels hooooot... + -3 +
    1626. + + + + VanillaCookingExpanded.Thought_Hediff + PM_ConsumedDigestibleFullRandomTF + FullRandomTF + 0.5 + +
    1627. + + I'm not sure the salt on that meal was really salt... + -1 +
    1628. +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/VCE/Patches/Patch.xml b/1.5/Mods/VCE/Patches/Patch.xml new file mode 100644 index 000000000..23d39acdf --- /dev/null +++ b/1.5/Mods/VCE/Patches/Patch.xml @@ -0,0 +1,10 @@ + + + + Always + /Defs/ItemProcessor.ItemAcceptedDef[defName = "IP_CheesePressFirstItem"]/items + +
    1629. TFMilk
    1630. +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml b/1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml index 015131fad..38ec42a51 100644 --- a/1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml +++ b/1.5/Mods/VEF/Defs/Buildings/MutagenTank.xml @@ -4,7 +4,7 @@ Pawnmorph.Buildings.MutagenTank MapMeshAndRealTime - Normal + Normal Stores liquid slurry in quantities enough to supply a chamber. Can be filled via a network of mutagen conduits, supplied by either a mutagen hopper or a vent pump. Things/Building/MutagenTank/MutagenTank @@ -13,7 +13,7 @@ Building Impassable - 0.6 + 1 false 70 diff --git a/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml b/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml index f9d1c0b06..d2040a919 100644 --- a/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml +++ b/1.5/Mods/VEF/Defs/Pipenetwork_Research.xml @@ -1,19 +1,6 @@ - - Pawnmorpher - Industrial - 500 - - - - - Spacer - 1000 - HiTechResearchBench - - - + PM_MutagenStorage diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml new file mode 100644 index 000000000..20bbcdfee --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphLeopardTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a leopardmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
    1631. + + 0.05 + +
    1632. + Moving + -0.05 +
    1633. + + + LeopardMorph + + + + TransformationMisc + + + 0.1 + + +
    1634. + + 0.6 + 0.1 + 1 + +
    1635. + Moving + -0.05 +
    1636. +
    1637. + Sight + -0.05 +
    1638. +
    1639. + Manipulation + -0.05 +
    1640. + + + +
    1641. + + 0.65 + 0.1 + 1 + +
    1642. + Moving + -0.05 +
    1643. +
    1644. + Sight + -0.05 +
    1645. +
    1646. + Manipulation + -0.05 +
    1647. + + + LeopardMorph + + + 5 + + + +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml new file mode 100644 index 000000000..eeb082a80 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Memories.xml @@ -0,0 +1,30 @@ + + + LeopardTransformationMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
    1648. + + I feel like I should be out hunting... + -3 +
    1649. +
    1650. + + Rrowwl! I feel so sleek and powerful. + +3 +
    1651. +
    1652. + + I'm a big stupid cat! I don't wanna be a big stupid cat! + -5 +
    1653. +
    1654. + + Now how about giving me the full experience? + +1 +
    1655. +
      +
      + +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml new file mode 100644 index 000000000..35acc32ef --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_MorphDef.xml @@ -0,0 +1,17 @@ + + + LeopardMorph + + + +
    1656. Temperate
    1657. +
      + PawnmorphLeopardTF + PawnmorphLeopardTFPartial + + + (215,147,96) + + +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml new file mode 100644 index 000000000..7dceb3931 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphLeopardTFPartial + + This person has mechanites in their blood that are providing them with leopard-esk mutations. + +
    1658. + 0.1 + 1 + +
    1659. + Moving + -0.05 +
    1660. +
    1661. + Sight + -0.05 +
    1662. +
    1663. + Manipulation + -0.05 +
    1664. + + + LeopardMorph + + + 7.7 + + + +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml new file mode 100644 index 000000000..fbd3c5069 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopard/Leopard_Parts.xml @@ -0,0 +1,19 @@ + + + EtherLeopardJaw + LeopardMorph + EtherLeopardJaw + + + + EtherLeopardEar + LeopardMorph + EtherLeopardEar + + + + EtherLeopardTail + LeopardMorph + EtherLeopardTail + + \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml new file mode 100644 index 000000000..77e2bcc57 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Memories.xml @@ -0,0 +1,29 @@ + + + LeopardRevertedMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
    1665. + + It's good to be back to normal. + 3 +
    1666. +
    1667. + + Dammit, I wanted to be a big cat! + -3 +
    1668. +
    1669. + + Finally, I'm back to my normal self... + 10 +
    1670. +
    1671. + + Dammit, I wanted to be a big cat! + -3 +
    1672. +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml new file mode 100644 index 000000000..d61c58e17 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_MorphDef.xml @@ -0,0 +1,10 @@ + + + A suprisingly docile morph, Leopardmorphs act alot like an oversized and overconfident house cat. Be wary though, unlike their domesticated kin their hunting instincts are sharp and their claws yet sharper. + + LeopardTransformationMemory + LeopardRevertedMemory + + + + \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml new file mode 100644 index 000000000..212bd4a54 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/Leopardine_Parts.xml @@ -0,0 +1,41 @@ + + + + + Parts/Leopard/Leopard_Muzzle + + + + + + + Parts/Leopard/Leopard_Ear_Left + Parts/Leopard/Leopard_Ear_Left_Behind + Parts/Leopard/Leopard_Ear_Right + Parts/Leopard/Leopard_Ear_Right_Behind + + +
    1673. + grown + + A triangular, fuzzy ear graces [PAWN_nameDef]'s head. It coils back when [PAWN_pronoun] is getting ready to pounce. + +
    1674. +
      +
      + + + + + Parts/Leopard/Leopard_Tail + + +
    1675. + grown + + A long, spotted tail. It flicks back and forth whenever [PAWN_nameDef] is displeased with something. + +
    1676. +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml new file mode 100644 index 000000000..cb0e61632 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Full.xml @@ -0,0 +1,78 @@ + + + PawnmorphSnowLeopardTF + Pawnmorph.Hediffs.Hediff_MutagenicBase + + This person has mechanites in their blood that are slowly mutating them into a snowy variety of leopardmorph. Keep an eye on them, as leaving the mechanites unattended could lead to them becoming far more feline than human. + +
    1677. + + 0.05 + +
    1678. + Moving + -0.05 +
    1679. + + + SnowLeopardMorph + + + + TransformationMisc + + + 0.1 + + +
    1680. + + 0.6 + 0.1 + 1 + +
    1681. + Moving + -0.05 +
    1682. +
    1683. + Sight + -0.05 +
    1684. +
    1685. + Manipulation + -0.05 +
    1686. + + + +
    1687. + + 0.65 + 0.1 + 1 + +
    1688. + Moving + -0.05 +
    1689. +
    1690. + Sight + -0.05 +
    1691. +
    1692. + Manipulation + -0.05 +
    1693. + + + SnowLeopardMorph + + + 5 + + + +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml new file mode 100644 index 000000000..cfad53cfc --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Memories.xml @@ -0,0 +1,28 @@ + + + SnowLeopardMorphTranformationMemory + Pawnmorph.Thoughts.MutationMemory + 1 + +
    1694. + + I feel like I should be jumping around in the snow. + True + 0 +
    1695. +
    1696. + + I've got a built-in winter coat, with a cool design to boot! + True + 5 +
    1697. +
    1698. + + Ughhh... why am I so clumsy now? + True + -5 +
    1699. +
      +
      + +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml new file mode 100644 index 000000000..c711f550d --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_MorphDef.xml @@ -0,0 +1,20 @@ + + + SnowLeopardMorph + + + +
    1700. Cold
    1701. +
      + PawnmorphSnowLeopardTF + PawnmorphSnowLeopardTFPartial + + + (204,204,204) + + + + SnowLeopardMorphTranformationMemory + +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml new file mode 100644 index 000000000..85a49f9b2 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Partial.xml @@ -0,0 +1,34 @@ + + + PawnmorphSnowLeopardTFPartial + + This person has mechanites in their blood that are providing them with snow leopard-esk mutations. + +
    1702. + 0.1 + 1 + +
    1703. + Moving + -0.05 +
    1704. +
    1705. + Sight + -0.05 +
    1706. +
    1707. + Manipulation + -0.05 +
    1708. + + + SnowLeopardMorph + + + 7.7 + + + +
      +
      +
      \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml new file mode 100644 index 000000000..3aa4c3727 --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Defs/Leopardine/SnowLeopard/SnowLeopard_Parts.xml @@ -0,0 +1,19 @@ + + + EtherSnowLeopardJaw + SnowLeopardMorph + EtherSnowLeopardJaw + + + + EtherSnowLeopardEar + SnowLeopardMorph + EtherSnowLeopardEar + + + + EtherSnowLeopardTail + SnowLeopardMorph + EtherSnowLeopardTail + + \ No newline at end of file diff --git a/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml b/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml new file mode 100644 index 000000000..b3a9a93dc --- /dev/null +++ b/1.5/Mods/ZWE-ACP/Patches/zLoadLast_Addon_Leopard.xml @@ -0,0 +1,40 @@ + + + +
    1709. + + +
    1710. + Defs/Pawnmorph.MorphDef[defName="LeopardMorph"]/race + + ACPAmurLeopard + +
    1711. +
    1712. + Defs/Pawnmorph.MorphDef[defName="SnowLeopardMorph"]/race + + ACPSnowLeopard + +
    1713. +
      + +
    1714. + + +
    1715. + Defs/Pawnmorph.MorphDef[defName="LeopardMorph"]/race + + Leopard + +
    1716. +
    1717. + Defs/Pawnmorph.MorphDef[defName="SnowLeopardMorph"]/race + + SnowLeopard + +
    1718. + + + +
      +
      \ No newline at end of file diff --git a/1.5/Patches/Core_HumanHedifGraphics.xml b/1.5/Patches/Core_HumanHedifGraphics.xml index ad303b23e..8e338a7ff 100644 --- a/1.5/Patches/Core_HumanHedifGraphics.xml +++ b/1.5/Patches/Core_HumanHedifGraphics.xml @@ -201,12 +201,16 @@ Parts/None/None true false - false tail false + + true + true + false + @@ -252,8 +256,9 @@ false - true - false + true + true + false Male @@ -302,8 +307,9 @@ false - true - false + true + true + false Female @@ -351,8 +357,9 @@ false - true - false + true + true + false @@ -399,8 +406,9 @@ false - true - false + true + true + false @@ -527,14 +535,14 @@ false Parts/None/None true - false Waist false - true + true + true false @@ -570,7 +578,8 @@ false - true + true + true false @@ -628,7 +637,8 @@ false - true + true + true false @@ -660,7 +670,8 @@ false - true + true + true false @@ -692,7 +703,8 @@ false - true + true + true false diff --git a/LoadFolders.xml b/LoadFolders.xml index 939b054a7..f2dc9f90e 100644 --- a/LoadFolders.xml +++ b/LoadFolders.xml @@ -51,5 +51,9 @@
    1719. 1.5/Mods/Ideology
    1720. 1.5/Mods/Royalty
    1721. 1.5/Mods/VEF
    1722. +
    1723. 1.5/Mods/VBE
    1724. +
    1725. 1.5/Mods/VCE
    1726. +
    1727. 1.5/Mods/ZWE-ACP
    1728. +
    1729. 1.5/Mods/ADogSaidAnimalProsthetics
    1730. \ No newline at end of file diff --git a/Source/Dependencies/AlienRace.dll b/Source/Dependencies/AlienRace.dll index f06e6954c31eb5f88cf38dfef002b3fdf13f6a20..40461aab3c820d8adaef07ddd4098adbacf6335b 100644 GIT binary patch literal 324096 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
    1731. 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 literal 104448 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 diff --git a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs index f7e8c50fe..e8998955a 100644 --- a/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs +++ b/Source/Pawnmorphs/Esoteria/Hediff_AddedMutation.cs @@ -22,7 +22,7 @@ public class Hediff_AddedMutation : Hediff_StageChanges, ICaused { private List abilities = new List(); private int _shouldRemoveAgeTicks; - + /// /// The mutation description /// diff --git a/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs b/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs index 657b12cc8..b868fd3a0 100644 --- a/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs +++ b/Source/Pawnmorphs/Esoteria/Hybrids/RaceShiftUtilities.cs @@ -563,7 +563,7 @@ private static void ValidateGenes([NotNull] Pawn pawn, [NotNull] ThingDef_AlienR for (int i = 0; i < pawn.genes.Endogenes.Count; i++) { Gene gene = pawn.genes.Endogenes[i]; - if (RaceRestrictionSettings.CanHaveGene(gene.def, race) == false) + if (RaceRestrictionSettings.CanHaveGene(gene.def, race, false) == false) pawn.genes.Endogenes.Remove(gene); } } @@ -572,7 +572,7 @@ private static void ValidateGenes([NotNull] Pawn pawn, [NotNull] ThingDef_AlienR for (int i = 0; i < pawn.genes.Xenogenes.Count; i++) { Gene gene = pawn.genes.Xenogenes[i]; - if (RaceRestrictionSettings.CanHaveGene(gene.def, race) == false) + if (RaceRestrictionSettings.CanHaveGene(gene.def, race, true) == false) pawn.genes.Endogenes.Remove(gene); } } From 91419ba81ecf461b08b3d5db959b01572922dae9 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 13 Apr 2024 00:20:51 +0200 Subject: [PATCH 20/24] Added ignores --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index b659899bb..9a2baff41 100644 --- a/.gitignore +++ b/.gitignore @@ -280,3 +280,5 @@ __pycache__/ /Documentation/latex /Source/Pawnmorphs/MigrationBackup/88b43dee/Pawnmorph /1.1/ModIntegrations/*/Assemblies/PMCompactHediffIIntegration.dll +/1.5/Mods/VEF/Assemblies/Pawnmorphs.Pipesystem.dll +/1.5/Mods/VEF/Assemblies/0Harmony.dll From be6e19195d457913d84644b8846c8898be823ae1 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Sat, 13 Apr 2024 15:01:55 +0200 Subject: [PATCH 21/24] Updated version numbers to reflect 1.5 Archived 1.4 assemblies. Fixed HAR issue for adding new color channel to existing save. --- 1.4/Assemblies/0Harmony.dll | Bin 0 -> 931840 bytes 1.4/Assemblies/0MultiplayerAPI.dll | Bin 0 -> 11264 bytes 1.4/Assemblies/0PrepatcherAPI.dll | Bin 0 -> 5120 bytes 1.4/Assemblies/0PrepatcherAPI.xml | 34 + 1.4/Assemblies/Pawnmorph.xml | 23524 ++++++++++++++++ .../Esoteria/HPatches/GamePatches.cs | 24 + .../Esoteria/Properties/AssemblyInfo.cs | 4 +- 7 files changed, 23584 insertions(+), 2 deletions(-) create mode 100644 1.4/Assemblies/0Harmony.dll create mode 100644 1.4/Assemblies/0MultiplayerAPI.dll create mode 100644 1.4/Assemblies/0PrepatcherAPI.dll create mode 100644 1.4/Assemblies/0PrepatcherAPI.xml create mode 100644 1.4/Assemblies/Pawnmorph.xml diff --git a/1.4/Assemblies/0Harmony.dll b/1.4/Assemblies/0Harmony.dll new file mode 100644 index 0000000000000000000000000000000000000000..e1825353982bf5227bf0d22d23be4080d159c080 GIT binary patch literal 931840 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 z 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 ICrjXe15~)4e*gdg literal 0 HcmV?d00001 diff --git a/1.4/Assemblies/0MultiplayerAPI.dll b/1.4/Assemblies/0MultiplayerAPI.dll new file mode 100644 index 0000000000000000000000000000000000000000..c2391ea097b26136736460a4252b54d1ed964797 GIT binary patch literal 11264 zcmeHNeQ;dWbwBsMeQ$SVELLk749N2O16RnlEZGKZjE!Y|*us)6Te1y?MqaI+q{X}Y z)^AtFvTH{WVB&%aA11?;v~hsaaiP!#(m)zgLK@R)fV40fCS*cM8lt zvMT>qOCK@|R}OZ!ab+*jT?SV^a7_`N^8wax1XDz@kYWsYa|pMT?Sp0Dzgh?anT*x< z8%VAcylQbvZU#tv+lvZM)M9)>*9J^ii)-f`D2lIB5VEaid_va-qKzRa)sr0_hkesz z62YHbib#3v|21vYO-Z7f=9=@GYwDXXEWwU-2+Uc`L|M<}6&}{c5d#Bi?$(F7TpH8o zDhCag!0%bDni|kMU|o{ln~m}!Urk%hI!U5vH7_>$wbO%6(B`66gYHEe485*tHaa@m z2(#~5C5TJs0XIRi#AhP-R%s41(f5)XtG?+%fTc4^aNn9jIz^hva?x$kxd;MxJJ;Y* zO}#T0w2VM&Q9FMMQH#8hn!)o_j9$DfvbcVU>7eVHrg$cY-M~!1v|*#FzgStgx^;4&87M9;e2NSsI!m> zmR5~(F-X%0E3EKLIXf6!=G%1!!lFS2)h>5V)7&*(xSL^j#XYk&;#|X=U;w6rG+x4a z!1;hYKsX}JyY%@-&POHSLKtb@12JYGqR%^m@Nci=rGqS~aleasYFffon)zaFsvUO$K8UU<^ z9O#Rfw}nTER@V{L*PuR7cC&>sq!soqxb{<&3wI9CD)`4!yl~Ubo=%jVz)cwF!i_m+ z7?>|)pxQm}!FU`areCU+guFzO(QA{ix2=>h z)X^QT`%UH}6tpMueAJ>J2>rBiJbEtuLzMaV8pD=F7e<)=m(-t^`XQnB3jJf@zajM7 zM$ELRY_&nZCeHMfX8K5+E!=4_yOMk$S28!1f4GW1|$wpP$hkgbk#4+dQ(?Y=5jA{ZC$`N>WD@Bo++{1vuJ=FSWgP?lKQyiO34}3XB7g2$X`3ZUo7S|!a z_9Fso;|r1p4{7!ud=wl|+UlP-IgdVlH z{&i4`PQ;m-7TbI-#`G4U-3enUdogawifVCL@Jg(cI^Ea9`Ux4Oi zbS+(~`crV9ZkscOc~x|cpts_enrjf)3L1?vy3UuKQIA6NQyx<5kO@_^$y^7`ifohF zt;`VWQ?UT8fEP0YbhA0As;ExwQRf7*IyJ0n1JtXs>f8`2t7L%A=%cDWgzium1gJH7 zpK2gmy!J*bRU$fVzHC0Ms^}FfjQ%NpDkS?c(0sJv>$Lf=(T5dwez{JYPshXPyVKBS z>#30DCi80whlStnReDb0!0^!m^HIXi>Z4cb1yx1=X1=VjwfeG$Vqs)YL%X7{hBPnN zuPWZ}_&RMKi+^7&^#IV*@t4)I0NtwI452>&Y6)bUtydNArhJ_?+0RxF06k;AqpE0* z^$xP#yH1;1Vn0_a0`$+ZcS7h`{1@1&E1FNof38*qhmSjD`9ty5C2CPtAG*dDm&v(XAo0 zR;||Ufo!c>uQ!HJr|t-$t954x_3N$>+NHZg=z6^=gogFz5E|D#Aym*;hfrDLc1Et# z=2~?~_lD4v#w|@C`>ftd&!rgNMr+lbx?dzbf8V3~G;U$!Iz5xuJ8n^Y#Ou9^c)bV6 z-fyxzm8Tj7Sqvtn*C`_#1o;`M%gfOx%E5wCae%wW%Wy$=PNyx#YQP+4UHbVlEy z><~Jt#skFbJx?#Dm~r=<+oBKX{q#GsbUz=v)chjQXMHppWpu(vXVgPLCp|>#EN=Ih zk2aZq1oZU)J)z6=odEs0zL8${(F*l|K16T%=w_2qRJMxG)6M3yK=nSVQ{U2uX+eO# zqmR&XAN8tN^if(Lpdad+sMkkl^iT9>=(+&?i@uHWK5C7=r*Eetf_UZ3G(JangwS2| zV1Q;BchfUoyV&yh1;#yeIzaP{d+B9CUIb4}+dogx>mvIM_Wvg11pUNE30i6JU6!JU zG~ZkOtx6;eYKkWk5&8mdub>TD;d`7uGm+4uWB58xh^A+u&*WB171PJXW?Zw)r7`AY z!PkEMW|5A78uU8&5qdP5NSJh~XnJiuDYsJeOW4uyldY{459dg~*I6v}=zx_-u+OX+ z_Fu#2inrc~yk0z=tKfse30}2RvBsQ|@Uucs;=Zw>SqF}m5h;2dG1PR8jJ;YnXcC+V zu_jJv)HMxDeTis#`aDuk`tedtjUmhI)h98_AD+jLp7&oj%bp!CKf^N{=KS9>lXJ$) z(vQPu&chSP!%DVzv%Exd)vK?S`YB|8EAB??aW`9!Cz`3KqB>BEEeOF$FUCUlL^ zcA-5&w+p>iXj*7i=qXT(o&lXrKa%>}LX~3veyL9i{ie|Q>dVpP=zl8OO>OGGAmOLbGTG=tZ<2bRiuAT|%D&T`6>}&*|p%)B8m1uV4A$1tB`j)yK^dE&|=n^$XI&c;#waDBD8nKuz651&=g*#dU zJHoa}y+e-*;%C<98+QJ#C;BPY(+BmQ6f>Mt zd?o3NQZDpM$1nH$Wyvp(`{k2<`5MYQFdxe)i#a$>Uq)T7D_b&|vg58F9vWIX)JoG} z8})P*Ci1qM9?sc&+h}02klF3H`)s$<&e>z>GBbO#r80`{i9%-Y3Tn@kvrYk(E7z}~ zEBl<0iJZNj`X+MaY%!OfwB45W{vPUKva^saWXsufE_=uxVMc36jd5Q;4bp*hZo(cK z!Xn6*GLD>G5`8Jl3Er*Od8XVZXP?ssh;Y=i@akiaRGeN>$buiJ6gDP#}v*l5fy z4{c57Z4w`)=5;7lmi9~Z1;QyQ+e;-oKb)Hksc&=pU8iWfWsg~4lj3qW-UQf$mR_YV zTNuoOQD(B$DL@Mm9GonAuI#W!y(kN(U?ZR-QstOQWfxDY)L^O7tUt}YAo#*TXHu5a zE(YLLSu>b=*CsEx8`CA5?1M!I#V*?gm1(IY>9jcwn4BNeli5qtOuAGKlyvP~UM zzL?F~u4EXpex$vOZw`kiAPUlCI?MB`$_r{cOX)E?K-6guPmGQ66jphaX&KCx&&qbw zBX&OR?yI&KlnBYp+=%5_6;w=h!+Q=4mga|r9Zq31J2v5_dF6gs+-a9GZnijG$iw!6 zS8dRpOOKVR&!v5qrk*dR z3n9Udi2|o5`+>fPv$>f4tg6*C8_*2Eq<`@?Jx~G-q*yGEpaw53+Xu2Q`(G` z$*9*EBiR%vkL6^${ps>JIm0&)c0a_nY!}M?SoGA+8P}1{<%St$DwWEH)1J$DY0D}f z+zVSqz{8H!=S-CB4jZ5&UC7wEp3(Ngr0h;xCqhganQ-v(PSmQLP{Ve2Y?=~mRag}* zv0W0aBCk$AP}saC^4_Rrzv3;-j~N~C5{=TbF9(tJwgjXYbsfyul25dK!k)0Vxg)ka z)al$I+b&E+wcuIYtJS@=yD?!aV1Bq4X24KsaO?b#(#a=kTBRJ zybZF1*~>czY|iFVx9jBj)&<@^E&P0xvua_U>9YW+3hkEkGTsD&} zV?PM0-C4I(-iEuP(KPOKaC^f`eTQ9Q;CjW4<2XrpHfcDA^)EHvMbU-4LdLvQsu`b! zv(i2&^IgfW%4|&XG|Jhrt&p3f5k5tv1~zX?QXj8WaBtCGEJCjz9Iw_nkUyAGg1t1#40HCKy=_WtkKj28cWuzOq0N*z!|zJr{p9tV zn$~j--a^s&XYY&X^}dI1&n#ZP<-y*QZ|{2X$yX?nQYvPoNSUbA)iJD<>a~#?)ku*j zh;Ae+s*_#GHTaHac5+fBkIbB%oVrgZj|l2AQ(865X-H_zxKRm(CR7@wL8G#2pq=cB zdF{INtc0q_DvBCCCcE&=!Ck?oO185r$(~wx)zAPZYw=i8Tgz0{Y73&NQ!z6|$*Dhy zfVMN~idf01uf#0$^9-zs^jS1OyVzF`UBBysRc{`%S}~Jt-m^(W;gKN1&l?ebR*7JQ z6iI;K{h6h;RclzuR&B)$t8TSn%|)4P$7eIV(Xmv7eQap3Qif`%l>&&vhjFBIG65;O znMn53q>SVoz`1puaY*JQ`%s&iGLsEp*3PY+n{1CkMNn<4iXeuI5c*`h);z344V#&r z+^)rbGJ$a;=G-MXD70>v+rXN0IAn8T-0hsY)ibz|W^B z(K)F|GAp%YzJa;mC9|9j+GR6?h1Lk2A@m%f zGlfc$CA4P`)_F7>D;QtO3Q7KLgThDSQyV2iB5k4MK%?M5lLVUlK$90}ss<+uDWX0*28Jy4&bhL){egTejqQvc3m9exyWdCLlTR9hbiJF_KzFy&{U zdTx~pBq`B`*$wOm+s9z|I?*A8kjJ^6s^W01@|zrwH`L*{ow;0JI$Q7_Wo=vT>R9^z z#jwE(?PI$5jWQ8_6*D#6AWsMJd$bSnS#L8w*X$))g)FOFs| z_ieNlxCgY``_&aa8~NFL93L-2l}Hg?J*K^qE`J@=d zp3c`I*_8$%<#Pk~LMZu6;?u{w{xos|MiqR*ISWYv=go&L6-B2NExv?+kCkgPqO5}cIw2|Hykb9!)BHU9`IGWbEc~_vPrhJ-yurBVLL3YV2YPvsA(#k7*bl lPa*@6@PnYUmPcKoF)y4l9o+em&A=Wc49(4%UyhS>egTQ9J_>5>%F`2-PU`% z*V(<;R|G^&fdrKbq^MFvg({E``~j*&1r-7*5>lu@`2zt$LP!Mh2O&Zb2~;7d2){SG zd$)EzsQ9yD&huv8$GrK?o7vg79zXLXN)k~U>h0S^Z=vOqR`mYl9MoMO{6QDJx%S$w zx3sZqyJjkur`M!gmS$BinvUc8dO_&2?&y}IXD4%d)h!8Q!-mdBLf2EnL}OZ#`VOUj z7R`2@cI)f3exmh|qyp&!kD=93)2Kwblt32LV+I?=lTuCefc zC=Vz0Y$WRJdnRZTANb;CIP2Y-eC<n|qLGEi?br4${^jR#+u<2Kr`;K+sN9j%5(f?n$j8B=eFGhT8*A=as%LMP3{o5&onvK zz0%~4gL}2frGWaYE4Xj0;J&kh`(Bgl=9RPSB$27sI|sm$masa$ZT!lSfyy*RiS#+Sk$l zqxNG(|Db46V@Z#qX>B*Xq7A8j+c}Oz^lTwG>Rj`)5|v$uOtTyxcT06!JWl;nQq)Yp zSP?QaHA+>l=t|ovkmXpuW!lyYLXHc+;+81md7@gd8(__n>6;lJ&t;+R3mUE#M5!c7 zEy<8uty#8^r-UP<>Bm*A`9>^Z$Huf2lV^pLR!Ow{HG8K$vmBFWMWJ3Un*}>2o2c9N zN=bx##`5EaS+QW&ZGYCZ>#^Y@Qiv%INOMk_F=bi!BX~=SC08!C6p`Z*taVmM&vKnR zm7~srE32jtrD@;OYRGjKta2T}x~r3{@QTu^tyC)Hqpgi<%^k#F`I;8CxvY9#OCJHB zk~juMzoi&;o)bl%hr5n&Vu~oLz{&5z)`-Xzk1?G_OEFz{e5)#y+_wsrZTT_n$p#Ki zDYgSNVw+{kH9TKbjc}|Hh6~sKs)K5jY&$e=ju8tsup@lbI!a^|eOE>%S<5UtuIF1t zFA_yF1rZZ6C*)bHC_D;|7G}ni0ybJdqx5LpDoWRL7kpy~+6*?f;aMIv7ayD$k0uKo z&fuwA{HgrcFH%RwzP7me_%|=S`V(r?HLWA5lh%&TrcKOtwd)D33lxG($M;{z&u$;Q zeleMPs6CNtXM=WDJ*2ujJG3xod6*yjnZ(vPY1SrOXLz|N)Jd7CNO#H8V8^#5(YQuC zjfvrz=1JZc#`gr?!yhpYz)9DZrZQ`JHQQ`V;M8y7QF>FOE9>tsR$hxijK3dx3*)SZaTUdUL?8{OBjt1>$q{GDI3aq+N#ds4k{Ue*8zin zNH04zYF7-=W{tX5U0ifnqYcxd=6V)3ym4CEy%pcDc}Mr}F9Tt{U=-cz{t)l}79wOF zDmub=O!OQy$s#un2s$}YRsLmOy{z>{$G9hE4_cantgHG zJLb9Et>3ecp`&>`+A6Q-yUEk{EFV6!H=px`SF~_mqn4sKIYxRbNO(C^D9Gd)Jg@)J&`%^;X@Q+`DG%+g7sFu{o2oOzBBerZ|+aO z-f<($Um1QP`bG%X5^thBH;_F$NB@J&K= zZsj6_EC7$p9dfqgZ-=MTL@y(Qjmpc(L3C%4wLA+tOw;I%;!A4+{3z&1@YO{>YWwTI zTX_c0!>3K7kA{vo-w5uSP=F?js==#?tZ4-KlT89X9a`EF9!GHd-Hc zF1Vn)(e`IJ)qu%|l?8eEE}q_2HvJU+2C0BP(d$5f3km+J_z8^mF$>RF0jDFon*ttP z;gM*kFo&R;LQzyUlJ-H)=$Lx=33w_1X#*0rUQ)OiHDlAEv7qM_NoB)pW#7|~S7}ah zHkFVw5-@W99pK|x9gLVj%UHRbK^v^w2O7f4H^M%OWENVFifaDain#UPbtS=S*>5m! z)V99f<(!pmF`q4zrP<0@{vyDrew5i>uAp5t-1osY+hzj;=UUmdk5 mUIV~?SnX@(j`MQwF@`#?7<%ub2mdqJa_rtF|JS^KBk&(@2W>k5 literal 0 HcmV?d00001 diff --git a/1.4/Assemblies/0PrepatcherAPI.xml b/1.4/Assemblies/0PrepatcherAPI.xml new file mode 100644 index 000000000..3caee2a3f --- /dev/null +++ b/1.4/Assemblies/0PrepatcherAPI.xml @@ -0,0 +1,34 @@ + + + + 0PrepatcherAPI + + + +

      + Specifies the default value of a PrepatcherField + + + + + Marks an assembly rewriting method + + + + + Marks a PrepatcherField for automatic injection of components from target class + + + + + Marks the accessor of a requested new field + + + + + Specifies a method supplying the initial value of a PrepatcherField. + The method has to be in the same class as the PrepatcherField. + + + + diff --git a/1.4/Assemblies/Pawnmorph.xml b/1.4/Assemblies/Pawnmorph.xml new file mode 100644 index 000000000..809e2d3c1 --- /dev/null +++ b/1.4/Assemblies/Pawnmorph.xml @@ -0,0 +1,23524 @@ + + + + Pawnmorph + + + + + Abstract base class for defining abilities. + + + + + The current state of the ability. + + + + + Gets the ability definition. + + + + + Gets the ability Gizmo. + + + + + Gets the pawn this ability is attached to. + + + + + Gets the total cooldown in ticks. + + + + + Gets the current cooldown in ticks. + + + + + Gets the ability type. Used to create gizmo. + + + + + Gets the target parameters when using targeted gizmo. + + + + + Initializes a new instance of the class. + + The definition. + + + + Initializes a new instance of the class. + + + + + Initializes the ability with the specified pawn. + + The pawn. + The ability def. + + + + Exposes the data for serialization and deserialization. + + + + + Triggered on expose data. + + + + + Ticks this instance. + + + + + Starts the ability cooldown. + + + + + Called when ability is initialized. + + + + + Called when ability is ticked. + + + + + Called when ability is being cast. Return bool on whether cast succeeded or not. + + + + + Called every so often to validate whether or not the skill is available. + + + + + Ability properties. + + + + + + The class that contains the logic for the ability. Must be a MutationAbility type. + + + + + The ability caption. + + + + + The ability description. + + + + + Path to the icon that should be displayed for the ability button. + + + + + The total cooldown in ticks. + + + + + The texture for the ability icon + + + + + Loads the icon texture into the texture cache + + + + + Exposes the data for serialization and deserialization. + + + + + Different mutation ability states. + + + + + Ability is not currently doing anything. + + + + + Ability is currently active. + + + + + Ability is currently being cast. + + + + + Ability is currently cooling down. + + + + + Different types of mutation abilities. + + + + + Toggled ability. + + + + + Targeted ability. + + + + + Instant ability. + + + + + Used to describe if an animal can be appear as a former human. + + + + + This animal type is a valid former human and can be spawned randomly without restrictions. + + + + + This animal type is a valid former human but cannot be spawned randomly. + + + + + This animal type is not a valid former human. + + + + + simple POD for former human food settings + + + + + The thought received for when the former human eats meat of the same species they are + + + + + The thought received for when the former human eats meat of the same species they are and have the cannibal trait + + + + + The thought received for when a former human eats a meal with meat of the same species they are as an ingredient and have the cannibal trait + + + + + The thought received for when a former human eats a meal with meat of the same species they are as an ingredient + + + + + interface for something that holds variants of a type for use with various sapience levels + + + + + + Gets the with the specified key. + + + The . + + The key. + + + + + simple class for storing several 'variant' of things for different sapient levels + + + + + + The sapient variant + + + + + The mostly sapient variant + + + + + The conflicted variant + + + + + The mostly feral variant + + + + + The feral variant + + + + + The permanently feral variant + + + + + Gets or sets the with the specified key. + + + + The key. + + + key - null + or + key - null + + + + + Utilities for dealing with handling former humans that are related to colonists. + + + + + Generates a notification letter if the given wild former human is related to any colonists + + The former human. + + + + Generates a notification letter if the given for-sale former human is related to any colonists + + The former human. + + + + Generates a notification letter if the given former human is related to any colonists + + The former human. + The letter content identifier. + The letter label identifier. + + + + Generates an offer quest from this former human to join the colony + + The former human. + + + + Whether or not the former human is capable of joining the colony + + The former human. + + + + Causes the former human to join the colony + + The former human. + + + + Static class to generate random human forms for former humans + + + + + Generates a random pawn to be used as the given animal's human form + + The animal. + Optional settings for the pawn + + + + + Generates the random unmerged humans for the given merged animal + + The animal. + Optional settings for the first pawn + Optional settings for the first pawn + + + + + Generates a random pawn to be used as a former human's human form + + The settings of the generated pawn + + + + + Adds all the morph mutations to the pawn. + + Human form. + Animal to add mutations for. + + + + Adds random mutations to this pawn to for being a chaomorph + + L pawn. + + + + Struct to hold all the requested settings of a former human. + Any null setting will be randomized by the generator + + + + + The biological age of the pawn, if set + + The bio age. + + + + The chronological age of the pawn, if set + + The chrono age. + + + + The fixed first name of the pawn, if set + + The first name. + + + + The fixed first name of the pawn, if set + + The first name. + + + + multiplier on the chance the former human is related to a colonist + + + + + The fixed gender of the pawn, if set + + The first name. + + + + The fixed pawnkind of the pawn, if set + + The first name. + + + + The fixed faction of the pawn, if set + + The first name. + + + + translation label for the animal not taggable reason + + + + + Abstract base type for a typed genebank entry. + + + + + + The wrapped value object + + + + + Gets the wrapped object for this genebank entry. + + + + + Initializes a new instance of the class. + + The underlying object. + + + + Initializes a new instance of the class. + + + + + Gets the required storage capacity needed to store this value in the genebank. + + + + + + Additional requirements to check if this object can be added to the genebank. + + The genebank to be added to. + The reason if it fails. + + + + Gets the caption. + + + + + + + + + + + + + + + An interface for various kinds of data that can be stored in genebanks + + + + + Returns the caption for the genebank entry + + The genebank entry caption + + + + Computes the required amount of storage to store this genebank entry + + The required storage, in kMb + + + + Tests for any additional requirements preventing this entry from being added to the database + (Not including basic stuff like sufficient storage space) + + The chamber database + A string for returning the reason why an entry cannot be added + True if the entry can be added to database, false if it cannot + + + + Returns true if this entry is still valid, or should be removed. + + + + + Occurs when user makes a selection. + + + + + Gets or sets additional options that will always be shown last. + + + + + Gets or sets a value indicating whether browse button is enabled. + + + true if the browse is enabled; otherwise, false. + + + + + Gets or sets the row filter applied to genebank table when browsing. + + + + + Initializes a new instance of the class. + + How many selections to keep as recent. + Reference to the genebank database component. + + + + simple class containing data about a specific set of mutations graphics + + + + + The anchor identifier + + + + + simple class containing data about a specific set of mutations graphics + + + + + The anchor identifier + + + + + subclass of har's body addon class to allow tagging unique addons for injection later + + + + + + The anchor identifier + + + + + Thing comp to update the graphics of a pawn as they gain/lose mutations.
      + Requires that the pawn have a MutationTracker comp too. +
      +
      + + + Assigned by right before this is triggered. + + + + + comp for storing the initial graphics settings of a pawn for use latter + + + + + Gets the draw size. + The size of the custom draw. + + + Gets the pawn scanned pawn race. + + + Gets the pawn scanned pawn race. + + + Gets the draw size of the custom portrait + The size of the custom portrait draw. + + + + Gets a value indicating whether [fix gender post spawn]. + + true if [fix gender post spawn]; otherwise, false. + + + Gets the color of the skin. + The color of the skin. + + + Gets the color of the hair. + The color of the hair. + + + Gets the color of the hair. + The color of the hair. + + + Gets the skin color second. + The skin color second. + + + Gets the hair color second. + The hair color second. + + + Gets the type of the crown. + The type of the crown. + + + + Gets the pawn's original beard. + + + + + Gets the initial body type of this pawn + + + The type of the body. + + + + + Gets the initial hair definition. + + + The hair definition. + + + + + Gets a value indicating whether this is has scanned graphics that can be restored. + + + + Gets the debug string. + + + + Initializes this instance with the specified properties. + The properties. + + + expose data. + + + called after the pawn is spawned + if set to true [respawning after load]. + + + + Restores the alien Comp attached to the parent from the ones stored earlier + this does not resolve the graphics, that is the job of the caller + + Force restore everything regardless of gender. + + + + Scans the graphics settings of the attached pawn and saves it so it can be reverted later. + + + + + collection of useful graphics related utility functions on morphs + + + + + Sets the color of the skin. + + The alien comp. + The first. + The second. + alienComp + + + + Gets the color of the hair. + + The alien comp. + if set to true [first]. + alienComp + + + + Gets the color of the skin. + + The alien comp. + if set to true [first]. + + alienComp + + + + Sets the color of the hair. + + The alien comp. + The first. + The second. + alienComp + + + + Generates the random color. + + The generator. + Name of the channel. + if set to true [first]. + The seed. + + generator + + + + Gets the part generator. + + The alien race. + + alienRace + + + + Gets the hair color override. + + The definition. + The pawn. + + def + + + + Gets the hair color override second. + + The definition. + The pawn. + + def + + + + Gets the skin color override. + + The definition. + The pawn. + + def + + + + Gets the skin color second override. + + The definition. + The pawn. + + def + + + + refresh the graphics associated with this pawn, including the portraits if it's a colonist + + + + + + Copied vanilla code and added ingester.BodySize multiplier. + + + + + Copied vanilla code and added ingester.BodySize multiplier. + Also reduced the number of calls to GetStatValue(StatDefOf.Nutrition). + + + + + Designates a harmony patch as optional and lists it in the optional patches options menu. + + + + + + Gets the translated descriptive tooltip displayed when hovering over the patch in options menu. + + + + + Gets the name of the patch member that determines if patch is active. + + + + + Gets whether or not the patch is enabled by default. + + + + + Gets translated patch title. + + + + + Initializes a new instance of the class. + + Translation key to use for caption in options menu. + Translation key to use as tooltip in options menu. + Name of the settable field or property that contains the value that determines if the patch is active. + Default state of the patch when listed in options menu. + + + + patches to the CompBiosculpter and related classes + + + + + class for conversion utility patches + + + + + Preforms the patches. + + The har inst. + + + + simple fix to drug policy to account for thing defs being removed + + The drug take records. + + + + fix for the immunity handler to remove records on load that are null or have null hediff defs . + + The instance. + The immunity list. + + + + static class for containing HPatches to PawnGenerator class + + + + + static class for pawn observer patching + + + + + Preforms the patches. + + The har instance. + + + + patches thought workers + + + + + patches thought worker. + + The har instance. + + + + If using prepatcher, this method gets a value stored on the Pawn to indicate if this method should be skipped entirely. Always returns false otherwise. + + The pawn in question. + https://github.com/Zetrith/Prepatcher/wiki/Adding-fields + + + + Used to identify items to auto-generate administering recipes. + + + + + + Used by animal genomes to decide what group of animals it can pick from. + + + + + + Allow genome to select a non-restricted animal. + + + + + Allow genome to select a restricted animal. + + + + + Mod extension used to identify items with mutagenic properties. + + + + + + Initializes a new instance of the class. + + + + + interface for all mutation rate specifying classes + + + + + get a string giving debug information about the specified hediff. + + The hediff. + + + + + Gets the mutations per second from the specified hediff. + + The hediff. + + + + + Gets the mutations per severity for the given hediff and change in severity. + + The hediff. + The sev change. + + + + + mute rate that defers it's logic to a class + + + + + + How many mutations to queue up for the next second. + + Called once a second by Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + + + + How many mutations to queue up for a given severity change. Note that severity + changes can be negative, and negative mutations are allowed. + (negative mutations can cancel queued mutations but won't remove existing ones) + + Called any time severity changes in Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + How much severity changed by. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + mute rate class where the mutation rate is proportional to a*s^2 + b * s + c where s is severity of the hediff + + + + + + Whether or not the mutation rate is affected by mutagen sensitivity + + + + + How many mutations to queue up for the next second. + + Called once a second by Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A class that determines the order in which mutations spread through a person + + + + + Gets the the spread manager that will be used to control the spread order + + The hediff doing the transformation. + + + + Determines whether the given MutSpreadOrder creates spread orders equivalent + to this one. If two MutSpreadOrders are equivalent, the Hediff won't throw + away the old spread manager since it's still valid. + + The other spread order. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + A simple spread order that traverses the body in 100% random order + Suitable for chaotic mutations like buildup + + + + + Gets the the spread manager that will be used to control the spread order + + The hediff doing the transformation. + + + + Determines whether the given MutSpreadOrder creates spread orders equivalent + to this one. If two MutSpreadOrders are equivalent, the Hediff won't throw + away the old spread manager since it's still valid. + + The other spread order. + + + + A simple spread order that uses a "spreading" order from a random part + Suitable for more directed sources of mutation, like injectors + + + + + Gets the the spread manager that will be used to control the spread order + + The hediff doing the transformation. + + + + Determines whether the given MutSpreadOrder creates spread orders equivalent + to this one. If two MutSpreadOrders are equivalent, the Hediff won't throw + away the old spread manager since it's still valid. + + The other spread order. + + + + A class that determines how quickly mutations are gained + + + + + How many mutations to queue up for the next second. + + Called once a second by Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + + + + How many mutations to queue up for a given severity change. Note that severity + changes can be negative, and negative mutations are allowed. + (negative mutations can cancel queued mutations but won't remove existing ones) + + Called any time severity changes in Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + How much severity changed by. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + instance of . that always returns zero. ie the null rate + + + The none. + + + + + A simple mutation rate that uses vanilla's MTB class to add roughly a given + number of mutations per day. + + + + + The mean number of mutations per day. (1/the MTB of individual mutation events) + + + + + Whether or not the mutation rate is affected by mutagen sensitivity + + + + + How many mutations to queue up for the next second. + + Called once a second by Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + + + + Gets the effective mutations per day. + + The hediff. + + + + + Tries the gain mutation. + + The mutations per day. + + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A mutation rate that gives a normally-distributed amount of mutations based on severity changes + + + + + The mean number of mutations gained per point of severity. + Diseases usually have 1 severity + + + + + The standard deviation of the mutations generated. + ~68% of the time, the value will be within +/- one standard deviation of the mean + ~95% of the time, the value will be within +/- two standard deviations of the mean + + + + + Whether or not the mutation rate is affected by mutagen sensitivity + + + + + How many mutations to queue up for a given severity change. Note that severity + changes can be negative, and negative mutations are allowed. + (negative mutations can cancel queued mutations but won't remove existing ones) + + Called any time severity changes in Hediff_MutagenicBase. Queued up mutations will + be spread out by that class, so no rate limiting needs to happen here. + + The number of mutations to add. + Hediff. + How much severity changed by. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + h + + + + + + The stack power + + + + + The stack multiplier + + + + + Gets the effective mutations per day. + + The hediff. + + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A class that determines which mutations to add + + + + + The epsilon for chance comparison. + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + A simple MutTypes that returns ALL THE MUTATIONS _O/ + Good for chaotic mutations. + + + + + The chance any particular mutation will be added (as a multiplier of the default chance). + + + + + Whether or not restricted mutations can be selected + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A simple MutTypes that accepts a list of mutations directly from the XML + + + + + The list of mutations to add. + + + + + The chance any particular mutation will be added (as a multiplier of the default chance). + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A simple MutTypes that selects all mutations from a morph def + + + + + The morph def to select mutations from. + + + + + The chance any particular mutation will be added (as a multiplier of the default chance). + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A simple MutTypes that selects all mutations from a class (including child classes) + + + + + The class def to select mutations from + + + + + The chance any particular mutation will be added (as a multiplier of the default chance). + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A MutTypes that selects mutations defined in HediffComp_Composable + + Most "dynamic" hediffs that want to share mutation data across stages will + want to use this MutTypes, as MutTypes are stateless. + + + + + The chance any particular mutation will be added (as a multiplier of the default chance). + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + mut type that picks from mutation categories + + + + + + The category to chose from + + + + + how the mutations are selected from the list of categories + + + + + how to select mutations from the categories + + + + + take mutations from all categories + + + + + take mutations from the intersection of the categories + + + + + Gets the list of available mutations. + + The mutations. + Hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + Chechs whether this MutTypes is equivalent to another + (meaning they produce the same list of mutations) + + true, if to was equivalented, false otherwise. + The other MutTypes. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + A class that determines what kind(s) of animals a pawn can be transformed into + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + A simple TFTypes that allows a transformation into a random chaomorph + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A simple TFTypes that allows a transformation into ALL THE ANIMALS _O/ + Good for chaotic mutations. + + + + + The black list of animals that will not be chosen + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A simple TFTypes that accepts a list of pawn kinds directly from the XML + + + + + The list of PawnKindDefs that this TF can potentially transform into. + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A simple TFTypes that selects a random pawn kind from a morph def + + + + + The morph def to get potential animal forms from. + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A simple TFTypes that selects a random pawn kind from a class (including child classes) + + + + + The class def to get potential animals from. + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A TFTypes that selects a random pawn kind from in HediffComp_MutTypes + + Most "dynamic" hediffs that want to share mutation data across stages will + want to use this TFTypes, as TFTypes are stateless. + + + + + Gets a pawn kind to transform the pawn into + + The mutations. + Hediff. + + + + A class that determines the gender of the pawn post-transformation + + + + + Gets the gender of the pawn post-transformation + + The TFing hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + A gender selector that simply always uses the same gender as the pawn + + + + + Gets the gender of the pawn post-transformation + + The TFing hediff. + + + + A gender selector that has a 50/50 chance of being male or female + + + + + Gets the gender of the pawn post-transformation + + The TFing hediff. + + + + A gender selector that has a configurable chance to swap the gender + + + + + The chance of swapping the pawn's gender. + + + + + Gets the gender of the pawn post-transformation + + The TFing hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A gender selector that has a configurable chance to force a specific gender + + + + + The forced gender + + + + + The chance of forcing the specified gender. + + + + + Gets the gender of the pawn post-transformation + + The TFing hediff. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A class that determines misc settings regarding the transformation + + NOTE This can be broken up into its components if extended logic seems useful + + + + + The settings that define the chance of going manhunter + + + + + The tale to use for the transformation + + + + + if a warning is to be displayed during the previous stage + + + + + The warning label override + + + + + The warning content override + + + + + Forces the sapience to a specific value if present + + + + + The warning letter definition + + + + + The settings that define the chance of going manhunter + + + + + The tale to use for the transformation + + + + + Forces the sapience to a specific value if present + + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + Tries to display the warning message. + + The m base. + + + + A class that determines what the chance of a full transformation is + + + + + Whether or not to transform the pawn. Checked only upon entering a stage. + + The hediff doing the transformation. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + A simple TFChance class that just always transforms the pawn + + + + + Whether or not to transform the pawn. Checked only upon entering a stage. + + The hediff doing the transformation. + + + + A TFChance class that transforms the pawn with a random chance specified in the XML + Also affected by the TransformationSensitivity stat, unless disabled + + + + + The chance of a transformation. + + + + + Whether or not transformation sensitivity is respected. + If true, the chance will be multiplied by the sensitivity stat + + + + + Whether or not to transform the pawn. Checked only upon entering a stage. + + The hediff doing the transformation. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A TFChance class that transforms the pawn with a random chance based on the full-TF setting + Also affected by the TransformationSensitivity stat, unless disabled + + + + + The chance offset + + + + + The chance multiplier + + + + + Whether or not transformation sensitivity is respected. + If true, the chance will be multiplied by the sensitivity stat + + + + + Whether or not to transform the pawn. Checked only upon entering a stage. + + The hediff doing the transformation. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A callback that's called on the transformed pawn after a full transformation + TODO - these can probably just be comps + + + + + A callback that's called on the transformed pawn after a full transformation + + The post-tf Pawn. + The hediff doing the transformation. + + + + A debug string printed out when inspecting the hediffs + + The parent hediff. + The string. + + + + A callback that adds a hediff to a post-transformation pawn + + + + + The hediff to add. + + + + + The body parts to affect. All specified body parts will be affected, if present. + + + + + A callback that's called on the transformed pawn after a full transformation + + The post-tf Pawn. + The hediff doing the transformation. + + + + A callback that adds a mental state to a post-transformation pawn + + + + + The mental state to add. + + + + + A callback that's called on the transformed pawn after a full transformation + + The post-tf Pawn. + The hediff doing the transformation. + + + + gets the severity change per day + + + + + + hediff comp to make the hediffs severity follow a parabolic curve over time + + + + + + called every tick + + The severity adjustment. + + + + called when this comp is first made. + + + + + called when the other is merged into this instance's parent + + The other. + + + + exposes this instance's data. + + + + + properties for + + + + + + the time in seconds it takes the hediff's severity to reach it's initial value + + + + + the maximum severity offset this comp will cause the hediff to have + + + + + Gets the acceleration of this comp + + + the acceleration + + + + + Gets the initial velocity of this comp. + + + The initial velocity + + + + + + + + + + Gets a value indicating whether the parent should be removed + + + true if [comp should remove]; otherwise, false. + + + + + Comps the post post add. + + The dinfo. + + + + save and load data + + + + + + + + + + Initializes a new instance of the class. + + + + + Hediff comp that acts like severity per day but if affected by the 'Mutation Adaptability Stat' + Replicates the behavior of instead of inheriting from it for performance reasons + + + + + + An additional offset on the maximum severity, for when things such as adaption cream increase it + + + + + Gets the comp label in brackets extra. + + + The comp label in brackets extra. + + + + + Gets the natural severity limit. + + this value is the value the attached hediff should reach if the pawn has had the mutation for an 'infinite' amount of time + + The natural severity limit. + + + + + Gets or sets a value indicating whether this is halted. + + + true if halted; otherwise, false. + + + + + Gets a value indicating whether the parent hediff should be removed. + + + true if [comp should remove]; otherwise, false. + + + + + Gets the change per day. + + + The change per day. + + + + + creates a new instance + + + + + called to save/load data for this comp. + + + + + called when the parent is merged with a new hediff of the same type + + The other. + + + + Called when the stage changes on the parent hediff + + + + + manually purges all cached data to force the adjustment speed to be recalculated the next time it's called + + + + + restarts adjustment for this mutation if it was halted + + + + + get the change in severity per day + + + + + + Returns a debug string added to the debug tooltip for hediffs with this comp + + The debug string. + + + + Generates the random reversion speed. Each mutation will have a different reversion speed so that they don't + all disappear at exactly the same time. The distribution is weighted so that many mutations have similar speeds, + but a significant number of outliers are slower. This means morphs will start losing mutations quickly, but the + remaining ones will stick around for a bit and take longer to fully revert. + (just for flavor, they'll still be reverted eventually). + + Reversion speed must be at least 0.8f, or there's a possibility mutations could stick around even after + a full dose of reverter serum. + + The random reversion speed. + + + + comp properties for mutation adjust hediff comp + + + + + + The severity change per day. + + + + + The stat effect multiplier + + values less then 1 will make the mutation adaptability stat have less of an effect + values greater then 1 will increase it's effect + + + + Initializes a new instance of the class. + + + + + Gets the natural severity limit for the given pawn + + this value is the value the attached hediff should reach if the pawn has had the mutation for an 'infinite' amount of time + The pawn. + + + + + comp that removes mutations from a pawn while they are transforming based on the morph they + are turning into + + + + + + + called when the morph hediff is about to start visiting body parts. + + + + + called when the hediff stage changes. + + + + + called when the morph tf observes the give body part record on the given pawn + + The record observed. if null a observing whole body hediffs + + + + called after the given mutation is added to the pawn. + + The new mutation. + + + + properties for + + + + + + The remove chance + + + + + Initializes a new instance of the class. + + + + + hediff comp that restarts + + + + + + Comps the post post add. + + The dinfo. + + + + dummy comp for the tf stage config checker + + + + + + simple comp for hediffs that will check all transformation stages for errors + + + + + + Initializes a new instance of the class. + + + + + returns all configuration errors + + The parent definition. + + + + + hediff stage that controls + + + + + The pawnKind of the animal to be transformed into. + + + + Gets the pawn kind definition to turn the given pawn into + + The pawn. + + + + + Gets all Configuration errors in this instance. + + + + + + base class for all full transformation stages + + + + + + + + Tale to add to the tales. + + + The gender that will be forced (i.e. a ChookMorph will be forced female). + + + If forceGender is provided, this is the chance the gender will be forced. + + + + Gets the pawn kind definition to turn the given pawn into + + The pawn. + + + + Tries to transform the pawn + The pawn. + The cause. + + + + Transforms the pawn. + The pawn. + The cause. + + + + called when the given hediff enters this stage + The hediff. + + + + Gets all Configuration errors in this instance. + + + + + + hediff giver that transforms a pawn into a chaomorph using the chaomorph extension + + + + + + Tale to add to the tales. + + + The gender that will be forced (i.e. a ChookMorph will be forced female). + + + If forceGender is provided, this is the chance the gender will be forced. + + + + The type of chaomorph to choose from + + + + Transforms the pawn. + The pawn. + The cause. + + + + Tries to transform the pawn + The pawn. + The cause. + + + + + hediff giver for giving mutation in a class + + + + + + The animal classification to pull mutations from + + + + + The MTB days + + + + + The MTB unit + + + + + occurs every so often for all hediffs that have this giver + + + + + + + Tries to apply this hediff giver + + The pawn. + The cause. + The mutagen. + + + + A comp for composable mutagenic hediffs where the Hediff is responsible for deciding what kinds of mutations to apply. + Needed because hediff stages can't store state and so the state must be saved to the Hediff or one of its comps. + Meant to be used with + + + + + + Gets the mut rate. + + + The rate. + + + + + Gets the types. + + + The types. + + + + + properties for + + + + + + The mute rate + + + + + The mut types + + + + + get all configuration errors with this instance + + The parent definition. + + + + + interface for hediff stages that execute something when they are entered + + + + called when the given hediff enters this stage + The hediff. + + + + interface for a hediff stage or hediff giver that needs to be initialized + + + + + Gets all Configuration errors in this instance. + + + + + + interface for a hediff stage that needs to preform some configuration on startup + + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + interface for hediff comps that listen to the parts that or visits while trying to add mutations + + + + + called when the morph hediff is about to start visiting body parts. + + + + + called when the hediff stage changes. + + + + + called when the morph tf observes the give body part record on the given pawn + + The record observed. if null a observing whole body hediffs + + + + called after the given mutation is added to the pawn. + + The new mutation. + + + + interface for a type that retrieves mutations for a specific race at generation + used for alien race compatibility + + + + + Gets the configuration errors with this instance. + + + + + + Gets all mutations that should be given to a specified race at spawn time + + The race. + The pre generated pawn, can be null if being called outside of generation + + + + + Determines whether this instance can generate the specified mutation. + + The m definition. + + true if this instance with the specified m definition can generate ; otherwise, false. + + + + + static class responsible for generating implicit morph injector hediffs + + + + + Gets all generated hediff defs. + + + All generated hediff defs. + + + + + Generates all morph hediffs. + + + + + Tries to generate the transformation hediffs for the given morph . + + The m definition. + mDef + + + + simple implementation of TransformationBase + + + + + + Gets a value indicating whether this instance should be removed. + + + true if this instance should be removed; otherwise, false. + + + + + Gets the mutation stat value. + + + The mutation stat value. + + + + + the expected number of mutations to happen in a single day + + + + Gets the available mutations. + The available mutations. + + + called after this hediff is added to the pawn + The dinfo. + + + + Resets the mutation caches. + + + + Ticks this instance. + + + + Gets the base mutation rate for this stage + + gets the current mutation rate before the MutagenSensitivity or other stats are taken into account + The current stage. + + + + Fills the part check list. + the check list is a list of all parts in the parents body def in the order mutations should be added + The check list. + + + Gets the available the mutations from the given stage. + The current stage. + + + + + returns true if there are ny mutations in this stage + + + + + + + transformation stage that gets all it's mutations from a morph at runtime + + + + + + The morph or animal class def to get mutations from + this cannot be null, and must be set in the xml + + + + + optional black list + + + + + an override to use for the chance to add mutations from the given morph + + + + + returns all configuration errors in this stage + + + + + + Gets the entries for the given pawn + + The pawn. + + + + + + Gets all mutation entries in this stage + + + The entries. + + + + + simple hediff class that uses the PM_MutagenPainSensitivity stat to control how much pain it's giving + + + + + + Initializes a new instance of the class. + + + + + Ticks this instance. + + + + + Gets the pain offset. + + + The pain offset. + + + + + custom hediff def for mutations + + + + + + list of body parts this mutation can be added to + + note: this does not affect HediffGiver_AddedMutation, this is for adding mutations without a hediff giver + + + the number of parts to add this mutation to + + + + the various mutation categories this mutation belongs to + + + + + The stage patches that are applied once the object has been deserialized. + + + + + The default chance to add this mutation + + + + + The default value indicating weather or not this mutation blocks a transformation chain until it is added + + + + + if this mutation can be tagged and stored + + + + + Indicates whether there is a reason to run vanilla hediff base logic or not. + + + + + optional field that will act as an explicit description for the mutations 'genome' object + + + + + list of other mutations this mutation blocks + + + + + list of body part defs that this mutations blocks other mutations from being added onto + + + + + The graphics for this mutation + + + + + The abstract 'value' of this mutation, can be negative or zero if the mutation is in general negative + + + + + the rule pack to use when generating mutation logs for this mutation + + + + The mutation tale + + + + if this mutation should be removed instantly by a reverter + + + + + The class this part gives influence for + + only should be set if morphInfluence is not set! + + + + The class influences if multiple. + + + + The mutation memory + + + + if true, the mutation will not respect the max mutation thoughts mod setting + + + + + Gets a cached mutation layer from any remover RemoveFromPartCompProperties component. Null if none. + + + + + Gets the animals associated with this mutation animals. + + + The associated animals. + + + + + Gets the cached mutation stages. this is the same size as stages but pre cast to if a particular stage is not + a MutationsStage then the corresponding entry in this list is null + + + The cached mutation stages. + + + + + returns a full, detailed, representation of the object in string form + + + + + + Gets all mutations. + + + All mutations. + + + + + Gets the remover comp. + + this is the comp used to remove 'overlapping' mutations + + The remove comp. + + + + Gets a value indicating whether this instance is restricted to special PawnKindGroups + + true if this instance is restricted the mutation can only be given to special PawnKindGroups; otherwise it + can show up in any group, false. + + + + + Gets the finalized collection of class influences regardless of how it was defined in the XML. + + + + + Gets the restriction level of this mutation + + + The restriction level. + + + + + checks if this mutation blocks the addition of the otherMutation. + + checks if this mutation on the 'thisPart' blocks the addition of the otherMutation on the 'addPart' + checks if this mutation on the 'thisPart' blocks the addition of the otherMutation on the 'addPart' + The other mutation. + The part this mutation is already on. + The part the otherMutation will be added to. + + + + + Gets all configuration errors + + + + + + checks if this instance gives influence for the given animal class + + The class definition. + + classDef + + + + checks if this instance gives influence for the given morph + + The morph. + + morph + + + + Resolves the references. + + + + + simple class for a single 'block entry' + + + + + The mutation to block from being added + + + + + if true, the mutation will be block from any part, not just on the same part this mutation is on + + + + + Checks if the given source mutation blocks the given otherMutation being added at the given part + + The source mutation. + The other mutation. + The add part. + + + + + simple POD that stores information about a mutation entry + + + + + The default add chance for a MutationEntry if one isn't supplied + TODO - should this just be 1f? + + + + + Convienience method that builds a MutationEntry directly from a def + using the default values. + + The mutation entry. + Mutation. + A multiplier on the add chance + + + + The mutation + + + + + The chance to add this mutation + + + + + if true, a mutation chain will not progress further until this mutation is added + + + + + Exposes the data to be Saved/Loaded from XML. + + + + + implementation of that gets mutations by an associated animal class or group + + + + + + The animal class to get mutations from + + + + + Gets the configuration errors with this instance. + + + + + + Gets all mutations that should be given to a specified race at spawn time + + The race. + The pre generated pawn, can be null if being called outside of generation + + + + + Determines whether this instance can generate the specified mutation. + + The m definition. + + true if this instance with the specified m definition can generate ; otherwise, false. + + + + + implementation of that gives a race a set of specific mutations + + + + + + The mutations to give the race + + + + + Gets the configuration errors with this instance. + + + + + + Gets all mutations that should be given to a specified race at spawn time + + The race. + The pre generated pawn, can be null if being called outside of generation + + + + + Determines whether this instance can generate the specified mutation. + + The m definition. + + true if this instance with the specified m definition can generate ; otherwise, false. + + + + + hediff stage with an extra description field + + + + + + Optional key that can be used to reference back to this specific stage. + + + + + list of all aspect givers in this stage + + + + + optional description override for a hediff in this stage + + + + + the max health offset of this particular part + + + + + the max health modifier of this pawn's bodyparts. + + + + + The label override + + + + + the base chance that the mutation will stop progressing at this stage + + this should be in [0,1] + + + + memory to add when this stage is entered + + + + + The skip aspects + + + + + The graphic for this stage + + + + + Overrides to allow changing values of mutation verbs. + + + + + Any abilities added by the stage + + + + + Gets the skip aspects. + + + The skip aspects. + + + + + Indicates whether there is a reason to run vanilla hediff base logic or not. + + + + called when the given hediff enters this stage + The hediff. + + + + Called once when the hediff stage is first loaded, for any one-time initialization + + + + + + Called during initialization when deciding if rimworld hediff base logic should be executed on tick. + + + + + + + + + + The label of the verb to override. + + + + + Value to set verb power to. + + + + + Value to set verb cooldown time to. + + + + + Value to set verb chance factor to. Verb chance is multiplied by this value. Default is 1. + + + + + + + + + + The aspect the pawn must have + + + + + The stage the aspect must be in to satisfy this entry, if null any stage will do + + + + + checks if the given pawn satisfies this entry + + The pawn. + + pawn + + + + mutation hediff giver that will only grab mutations from specific categories + + + + + + list of mutation categories to look for + + + + + The morph categories to get mutations from + + + + + The MTB days + + + + + The MTB unit + + + + + occurs every so often for all hediffs that have this giver + + + + + + + Tries to apply this hediff giver + + The pawn. + The cause. + The mutagen. + + + + interface for a hediff stage that can override the hediff's main label and description entirely + + + + + Gets the description override. + + + The description override. + + + + + Gets the label override. + + + The label override. + + + + + hediff for morph diseases + + + + + + Gets the severity label. + + + The severity label. + + + + + returns true if there are ny mutations in this stage + + + + + + + hediff class for the former human hediff + + + + + + Gets the label in brackets. + + + The label in brackets. + + + + Exposes the data. + + + + called after the hediff is added + + The dinfo. + + + + called when the hediff is removed + + + + called after the pawn's tick method. + + + + Gets a value indicating whether this instance should be removed. + + + true if this instance should be removed; otherwise, false. + + + + + hediff comp to tag mutations that added during the duration of the hediff + + + + + + called when a mutation is added + The mutation. + The tracker. + + + called when a mutation is removed + The mutation. + The tracker. + + + + comp properties for the mutation tagger comp + + + + + + The default tag chance + + + + + The tag chance per value + + + + + Initializes a new instance of the class. + + + + + transformation stage that picks a random morph to turn the pawn into + + + + + + + + The morph or class to pick random morphs from + + + + + The change chance + + + + + a list of morph categories not to include + + + + + Gets all Configuration errors in this instance. + + + + + called when the given hediff enters this stage + The hediff. + + + + transformation stage that picks a random set of mutations for each pawn + + + + + + returns all configuration errors in this stage + + + + + + The morph or class to pick from + + + + + how far up the class tree to take mutations from + + + + + if true, this stage can give restricted mutations + + + + + a list of morph categories not to include + + + + + how fast the mutation types change + + + + + Gets the entries for the given pawn + + The pawn. + + + + + + + + + + + + Gets a value indicating whether this instance should be removed. + + + true if this instance should be removed; otherwise, false. + + + + + Gets a random pawnkind animal + + + + + Initializes this instance with the given weapon + + The weapon. + + + + Called when the stage changes. + + The last stage. + + + + Gets the kind of the chosen. + + + The kind of the chosen. + + + + + Exposes the data. + + + + + + + + + + + Gets the entries for the given pawn + + The pawn. + + + + + + + + + + + + + + + give partial mutations + + + + + give a morph chain + + + + + give some buildup + + + + + instant chaomorph tf + + + + + Initializes a new instance of the class. + + + + + Gets a value indicating whether [should remove]. + + + true if [should remove]; otherwise, false. + + + + + Exposes the data. + + + + + Posts the add. + + The dinfo. + + + + Tries the merge with. + + The other. + + + + abstract base class for all transformation hediffs + + + + + + all observer comps to notify when adding mutations and visiting parts to add mutations onto. + + + The observer comps. + + + + + Gets a value indicating whether this transformation hediff blocks the race checking + + + true if this transformation hediff blocks the race checking; otherwise, false. + + + + + Creates a debug string for this hediff + + + + + + the expected number of mutations to happen in a single day + + + + Gets the available mutations. + The available mutations. + + + + Gets a value indicating whether this instance has finished adding mutations or not. + + + true if this instance has finished adding mutations; otherwise, false. + + + + Gets the minimum mutations per check. + if greater then 1, every-time a mutation is possible don't stop iterating over the parts until a body part that can be mutated is found + The minimum mutations per check. + + + Gets a value indicating whether this instance can reset. + true if this instance can reset; otherwise, false. + + + Exposes the data. + + + + Gets a value indicating whether this instance can mutate the pawn. + + + true if this instance can mutate the pawn; otherwise, false. + + this is meant as an optimization, if false the hediff won't bother looking for parts to mutate + + + called after this hediff is added to the pawn + The dinfo. + + + Ticks this instance. + + + + set to true if this instance should be removed before severity reaches 0 + + + + + Gets a value indicating whether this instance should be removed. + + + true if this instance should be removed; otherwise, false. + + + + Fills the part check list. + the check list is a list of all parts in the parents body def in the order mutations should be added + The check list. + + + Gets the available the mutations from the given stage. + The current stage. + + + + Notifies this instance that the available mutations have changed. + + + + Called when the stage changes. + + The last stage. + + + + called when the hediff is removed. + + + + + returns true if there are ny mutations in this stage + + + + + + + Gets a value indicating whether there are any mutations in the current stage. + + + true if there are any mutations in the current stage; otherwise, false. + + + + + Gets a value indicating whether there are any transformations in the current stage. + + + true if there are any transformations in the current stage; otherwise, false. + + + + + Tries the merge with the other hediff + + The other. + + + + + Called when mutations are added the pawn. + + The mutations added. + + + + Resets the mutation order. + + + + + Marks this hediff removal. + + this is needed because Rimworld is touchy about removing hediffs. best to not do it manually and call this, + the HediffTracker will then remove this hediff next tick once all hediffs are no longer running any code + + + + hediff stage that adds the possibility of adding mutations + + + + + + The mutations that this stage can add + + + + Gets the entries for the given pawn + + The pawn. + + + + + + base class for all trans-formative hediff stages + + + + + + + + Gets the entries for the given pawn + + The pawn. + + + + + + returns all configuration errors in this stage + + + + + The description + + + The label override + + + The letter text + + + The letter label + + + + The letter definition + + + + + the expected number of mutations a pawn would get per day at this stage + + note, this is affected by MutagenSensitivity stat + + + called when the given hediff enters this stage + The hediff. + + + + Gets the description override. + + + The description override. + + + + + Gets the label override. + + + The label override. + + + + + hediff stage that affects what work the pawn is capable of doing + + + + + + + The allowed work tags + + + + + The disallowed work tags + + + + + a filter for work type defs + + + + + Initializes a new instance of the class. + + + + + Gets the allowed work tags. + + + The allowed work tags. + + + + + Gets the work type filter. + + + The work type filter. + + + + + Mutation stage patch that can be included in a to allow modifying mutation stages in derived xml files with shared stages. + + + + + Key of the stage to affect when using modify or remove function. + + + + + The patch behavior. Can be either "add", "modify" or "remove". + + + + + The mutation stage containing the values to use to either update an existing stage or append and entirely new stage. + + + + + Applies the specified stage patch. + + The mutation. + + + + Attempts to find and return the stage with identical key from the provided . Logs a warning and returns null if not found. + + + + + + + + + + hediff comp_properties for a comp that removes all hediffs of a certain type + + + + + The type of hediff to remove + + + + + a black list of hediffs to ignore + + + + + gets all configuration errors with this instance. + + The parent definition. + + + + + Initializes a new instance of the class. + + + + + hediff comp that removes all hediffs of a given type + + + + + called every tick after the parent is updated. + + The severity adjustment. + + + + hediff component that checks the race of a pawn at the end of a Hediff_Morph + + this is a component because it's set to go off just when a hediff_Morph ends naturally (after reeling) + + + + called after the parent hediff is removed + + + + + called every tick after the thing updates + + + + + + save or load data + + + + + hediff comp that checks if the pawn should be turned into a hybrid at a certain stage + + + + + the stage to check the pawns race at + + + + + + + + + + hediff component that produces resources when over a certain area + + + Pawnmorph.Utilities.HediffCompBase{Pawnmorph.Hediffs.CompProperties_TerrainProduction} + + + + + produces the corrected produced based on the current position of the pawn + + + + + CompProperties for a component that produces resources based on the terrain over a certain area + + + Pawnmorph.Utilities.HediffCompPropertiesBase{Pawnmorph.Hediffs.Comp_TerrainProduction} + + + + + all entries that are used by the comp + + + + + returns true if this comp can produce something on the given terrain + + + + + + + return all configuration errors with this instance + + + + + + + a single production entry for + + + + + the amount to produce + + + + + how often to produce this product + + + + + the resource to produce + + + + + the terrain this is produced by + + + + + the thought to add when the resource is produced + + + + + hediff giver based off of HediffGiver_Mutation, but instead of one mutation it gives one of many + + + + + list of morph categories to exclude + + + + + list of hediff defs to ignore + + + + + list of morphs to exclude + + + + + if true, then this giver can give restricted mutations as well + + + + + how often to give mutations + + + + + The MTB unit + + + + + occurs every so often for all hediffs that have this giver + + + + + + + Tries to apply this hediff giver + + The pawn. + The cause. + The mutagen. + + + + hediff type for mutagenic buildup + + + should add more and more mutations as severity increases, with a full tf at a severity of 1 + + + + Tries the merge with the other hediff + + The other. + + + + + component representing a mutation dependency, some mutation that will be added to the pawn if not already there + + + + + called just after this instance's parent is added to a pawn + + The damage info. + + + + a hediff component property for a mutation dependency, ie some hediff giver that fires when the mutation is added + + + + + The mutation dependency + + + + + Get all Configuration Errors with this instance + + The parent definition. + + + + + static def of class containing morph transformation defs + + + + + random partial mutations + + + + + full chaomorph mutation + + + + + comp that removes other mutations when it's parent is added + + + Pawnmorph.Utilities.HediffCompBase{Pawnmorph.Hediffs.RemoveFromPartCompProperties} + + + + + Gets the tick (time) this comp was added. + + + The added tick. + + + + + Gets the layer. + + + The layer. + + + + + exposes all data for this comp. + + + + + called after this comp is created . + + + + + called after this instance was added to the pawn. + + The damage info. + + + + Gets a value indicating whether the parent hediff should be removed. + + + true if hediff should be removed; otherwise, false. + + + + + properties for the comp that removes other mutations when it's parent is added + + + Pawnmorph.Utilities.HediffCompPropertiesBase{Pawnmorph.Hediffs.RemoveFromPartComp} + + + + + The layer to check for mutations + + + + + flags representing the 'layer' a mutation resides on + + + + + the mutation affects the core of the part + + + + + mutation affects the surface of a part + + + + + hediff comp for making a mutation spread over a body + + + + + try to infect a single part + + + + + true if a part could be successfully infected + + + expose all data. in this comp + + + + properties for the HediffComp Spreading + + + + + + how far from the parent's part will this comp search for a part to spread to + + setting this too high can cause lag + + + + The mean time between spread checks, in days + + + + + Abstract base class for all hediffs that cause mutations and transformation + + + + + + + + Gets the mutagen sensitivity sensitivity of the pawn + + The mutagen sensitivity. + + + + Gets the causes of this hediff + + + The causes. + + + + + Gets the transformation sensitivity of the pawn. + + The transformation sensitivity. + + + + Gets the observer comps. + + The observer comps. + + + + Whether or not this hediff is currently blocking race checks + + true if blocks race check; otherwise, false. + + + + Gets a value indicating whether there are any mutations in the current stage. + + + true if there are any mutations in the current stage; otherwise, false. + + + + + Gets a value indicating whether there are any transformations in the current stage. + + + true if there are any transformations in the current stage; otherwise, false. + + + + + Controls whether or not this hediff gets removed + + + + + Gets the pain offset for this hediff + + + The pain offset. + + + + + Initializes a new instance of the class. + + + + + Gets the best mutagen cause. + + + + + + Called after this hediff is added to the pawn + + The damage info. + + + + Called when afte the hediff is removed. + + + + + Ticks this instance. + + + + + Clears the caches in this instance + + + + + Checks if we should add mutations, and if so does + Mutations are queued up and added one at a time to smooth out mutation rate when there are + large spikes (e.g. severity-based MutationRates) + + + + + Gets the correct mutagen to use for this instance, this should take into account things like the weapon that caused the hediff if present + + + + + + Tries to apply the current mutation to the current body part. + If it succeeds, or the mutation is non-blocking, advances the list of + mutations. If all mutations have been applied, advanceds the list of + body parts and resets the mutation list. + + A mutation result describing the mutation(s) added, if any + + + + Checks if we should transform the pawn, and if so does + + + + + Triggers transformation. + + + + + Attempts to transform the pawn. + + The pawnkind to transform the pawn into + The gender of the post-transformation pawn + additional miscellaneous transformation settings + + true if the transformation succeeded, false otherwise. + + tfSettings + + + + Updates the cached stage values + + + + + Queues up a number of mutations to be added to the pawn. Negative amounts + can cancel out queued up mutations but won't remove already-existing mutations. + + Mutations. + + + + Resets the spread list because something caused the current one to be invalid. + Call this when SpreadOrder changes (usually due to a stage change). + + + + + Resets the mutation list because something caused the current one to be invalid. + Call this when MutationTypes changes, or something it relies on does. + + + + + The severity of this hediff + + The severity. + + + + Controls the severity label that gets rendered in the health menu + + The severity label. + + + + Marks this hediff for removal. + + This is needed because Rimworld is touchy about removing hediffs. Rather than doing + it manually, you should call this instead. The HediffTracker will safely remove this + hediff at the beginning of the next tick. + + + + + Exposes data to be saved/loaded from XML upon saving the game + + + + + Creates a debug string for this hediff + + + + + + Class for all hediff stages that full transformations. + Any components defined in this class will override the equivalent component + in the parent hediff + + + + + + + + Controls the chance of a full transformation + + + + + Controls what kind of animals transformations can result in + + + + + Controls the gender of the post-transformation pawn + + + + + Controls miscellaneous settings related to full transformations + + + + + Callbacks called on the transformed pawn to perform additional behavior + + + + + Returns a debug string displayed when inspecting hediffs in dev mode + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Class for handling all hediffs that cause mutations and transformation + Any components defined in this class will override the equivalent component + in the parent hediff + + + + + + + Controls the order that mutations spread over the body + + + + + Controls how fast mutations are added + + + + + Controls what kinds of mutations can be added + + + + + Returns a debug string displayed when inspecting hediffs in dev mode + + The parent hediff. + The string. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Abstract base class for all hediff stages that involve mutation or + transformation, for use with Hediff_MutagenicBase. + + + + + + + + The description. + + + + + The label override. + + + + + the alert this stage sends out once entered + + + + + Gets the description override. + + The description override. + + + + Gets the label override. + + The label override. + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + A class for hediff with description tooltips. Used as a base for all + Pawnmorpher hediffs, but also usable by itself if you just want to add + custom description tooltips/label overrides to a hediff. + + + + + Controls the description tooltip rendered by Pawnmorpher. + + + The tooltip description. + + + + + Controls the base portion of the label (the part not in parentheses) + + The base label. + + + + An abstract base comp for all comps to to be used with MutType_FromComp + and TFType_FromComp. These comps track mutation state to allow different + hediff stages to share the same mutation/TF types + + Note: Not using HediffCompBase here because the property types change based + on subclass and that gets awkward when trying to generically reference the + base comp type + + + + + + + Returns a list of mutations all MutTypes_FromComp stages will use + + The mutations. + + + + Gets the TF. + + The TF. + + + + An abstract base comp for all HediffComp_MutTypes that select a single + morph def and persist it. + + + + + + + The morph def. + + + + + Gets the morph def to use for this instance. + + The morph def. + + + + Returns a list of mutations all MutTypes_FromComp stages will use + + The mutations. + + + + Gets the TF. + + The TF. + + + + Called after the base hediff is added + + Dinfo. + + + + Saves/Loads data from XML + + + + + Generates a debug string used when inspecting hediffs in debug modew + + The debug string. + + + + A simple HediffComp_MutType that selects mutations and TFs from a specific + morph def defined in the XML. + + + + + + Gets the hediff comp properties. + + The properties. + + + + Returns a list of mutations all MutTypes_FromComp stages will use + + The mutations. + + + + Gets the TF. + + The TF. + + + + Generates a debug string indicating the status of the comp + + The debug string. + + + + Hediff comp properties for HediffComp_MutType_Morph + + + + + The morph def to use for mutations. + + + + + Returns any config errors in the def + + The errors. + Parent def. + + + + A HediffComp_MutationType that picks a random morph def from a list, and + then returns mutations and TFs from that def + + + + + + + Gets the hediff comp properties. + + The properties. + + + + Gets the morph def. + + The morph def. + + + + Hediff comp properties for HediffComp_MutType_RandomClassMorph + + + + + The list of possible morph defs to choose from + + + + + Returns any config errors in the def + + The errors. + Parent def. + + + + A HediffComp_MutType that picks a random morph def from a class and then + returns mutations and TFs from that def. + + + + + + + Gets the hediff comp properties. + + The properties. + + + + Gets the morph def. + + The morph def. + + + + Hediff comp properties for HediffComp_MutType_RandomClassMorph + + + + + The animal class def to use + + + + + Whether or not restricted morph defs can be selected + + + + + Returns any config errors in the def + + The errors. + Parent def. + + + + A HediffComp_MutationType that picks a completely random morph def and + then returns mutations and TFs from that def. + + + + + + + Gets the hediff comp properties. + + The properties. + + + + Gets the morph def. + + The morph def. + + + + Hediff comp properties for HediffComp_MutType_RandomAnyMorph + + + + + Whether or not restricted morph defs can be selected + + + + + Utility class to handle the interactions between body parts and mutation lists. + Handles all the logic of keeping everything in sync, because it's finnicky and + error-prone to do it manually. + + + + + Gets the total number of mutations available for the current limb. + + + The number of available mutations. + + + + + Gets the current body part. + + The body part. + + + + Gets the current mutation. + + The mutation. + + + + Whether or not the current body part has any remaining mutations + + true, if there is a next body part, false if the list reset. + + + + Iterates to the next body part in the list. If there are no more body parts, + return false (and resets the body part list) + + true, if there is a next body part, false if the list reset. + + + + Iterates to the next mutation in the list. If there are no more mutations, + also moves to the next body part. + + true, if there is a next mutation, false if the list reset. + + + + Resets the list of mutations. Call this when the list of possible mutations change. + (usually because of a stage change, or because the dynamic mutation comp changes) + + The new mutations to use. + + + + Resets the spread list. Call this when the spread order changes. + (due to a stage change, or because something that the spread order relies + on has changed) + + The new spread order to use. + spreadOrder + + + + Resets the body part mutation list, usually because the body part changed. + Also called if the mutation list changes. + + + + + Regenerates the body-part-to-mutation cache. + + + + + Exposes data to be saved/loaded from XML upon saving the game + + + + + Generates a debug string indicating the status of the mutation manager + + The debug string. + + + + Various extension methods for hediffs + + + + + Checks whether this hediff has immunity built up + + true, if immune was ised, false otherwise. + Hediff. + + + + How much the severity of this hediff is changing per day(used for certain components) + This is somewhat expensive to calculate, so call sparingly. + + The severity label. + + + + Interface for all hediffs that can possibly cause mutations + + + + + Whether or not this hediff is currently blocking race checks + + true if blocks race check; otherwise, false. + + + + Gets a value indicating whether there are any mutations in the current stage. + + + true if there are any mutations in the current stage; otherwise, false. + + + + + Gets a value indicating whether there are any transformations in the current stage. + + + true if there are any transformations in the current stage; otherwise, false. + + + + + Marks the hediff for removal + + + + + An abstract class for hediffs that need to do things on stage changes. + Also implements the IDescriptiveHediff interface + + + + + Whether the base Hediff tick is called. Should be false for anything that doesn't need the vanilla tick behavior for + performance reasons. + + + + + Gets the index of the current stage. + + + The index of the current stage. + + + + + Gets the current stage. + + + The current stage. + + + + + Called after the hediff is created, but before it's added to a pawn + + + + + Ticks this instance. + + + + + Reloads the stage cache + + Stage index. + + + + Called when the stage changes + + + + + Exposes data to be saved/loaded from XML upon saving the game + + + + + Interface for hediff comps that do something on a stage change + + + + + Called when the stage changes on the parent hediff + + + + + Abstract job giver that adds a reference to ProductionComp to parse component from Job assignment to driver. + + + + + + Reference to the production component that issued the production job. + + + + + job driver for delivering a special thing to a chamber + + + + + Gets the pawn being taken + The takee. + + + Gets the mutagenic chamber + The drop pod. + + + + Tries the make pre toil reservations. + + if set to true [error on failed]. + + + + Makes the new toils. + + + + + abstract base class for all interactions with former humans + + + + + + The animal index + + + + + The feed count + + + + + The maximum food preferability + + + + + Gets the animal. + + + The animal. + + + + + Gets a value indicating whether this instance can interact now. + + + true if this instance can interact now; otherwise, false. + + + + + Exposes the data. + + + + + gets the amount of nutrition needed per feed. + + The animal. + + + + + Tries the make pre toil reservations. + + if set to true [error on failed]. + + + + + Finals the interact toil. + + + + + + Makes the new toils. + + + + + + gets the start feed animal toil + + The tamee ind. + + + + + gets the 'talk to animal' toil + + The tamee ind. + + + + + gets the Feeds toils. + + + + + + job driver for sowing mutagenic plants + + + + + + Exposes the data. + + + + + Tries the make pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + + job driver for recruiting a sapient former human + + + + + + Gets a value indicating whether this instance can interact now. + + + true if this instance can interact now; otherwise, false. + + + + + Gets the Final indirect toil + + + + + + Makes the new toils. + + + + + + gets the Feeds toils. + + + + + + gets the 'talk to animal' toil + + The tamee ind. + + + + + job driver for sowing mutagenic plants + + + + + + Exposes the data for saving/loading. + + + + + Tries to make the pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + + job driver for taking a prisoner to a mutachamber + + + + + + Tries to make pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + + + job driver for using a genome + + + + + + Tries the make pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + + + + + + + + Tries to make pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + + job giver for the get food job that is optimized for morphs and former humans + + + + + + job driver for the 'find mushrooms' job + + + + + + Tries to make pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + + job driver for the tf resurrector + + + + + + Tries the make pre toil reservations. + + if set to true [error on failed]. + + + + + Makes the new toils. + + + + + Job driver to make humanoid pawns milk themselves using HediffComp_Production. + + + + Produce whatever resources this driver is producing. + + + + Base class for productive mutation's job driver. + + + + Tries the make pre toil reservations. + + if set to true error on failed. + + + + + Makes the new toils. + + + + + + Produce whatever resources this driver is producing. + + + + + job giver for pawns milking themselves + + + + + attempt to generate a job for the given pawn + + + + + + + job giver to give sapient animals joy jobs + + + + + + Tries to give the pawn a job from joy giver definition + + The definition. + The pawn. + + + + + Gets the priority. + + The pawn. + + + + + + + + + + + Tries the give a job to the pawn. + + The pawn. + + + + Job driver to make humanoid pawns lay eggs using HediffComp_Production. + + + + Produce whatever resources this driver is producing. + + + + Job giver for making a human pawn lay eggs. + + + + attempt to create a new job for the given pawn + + + + + + + Recipe worker that adds the tagging condition to making injectors. + + + + + + Assigns this recipe worker to all injector recipes. + + + + + recipe worker for applying adaption cream + + + + + + applies the effect onto the given mutation. can be called multiple times on the same pawn + + The pawn. + The bill doer. + The mutation. + The ingredients. + + + + Determines whether this instance with can be applied on the given mutation + + The mutation. + The recipe. + + true if this instance be applied on the given mutation otherwise, false. + + + + + recipe worker for applying halting cream + + + + + + Gets the parts to apply on. + + The pawn. + The recipe. + + + + + applies the effect onto the given mutation. can be called multiple times on the same pawn + + The pawn. + The bill doer. + The mutation. + The ingredients. + + + + recipe worker for applying stuff to mutated parts + + + + + + Applies the on pawn. + + The pawn. + The part. + The bill doer. + The ingredients. + The bill. + + + + called when this instance is about to apply effects on mutations. + + The p. + The bill doer. + The ingredients. + + + + called after all effects have been applied on the pawn + + The p. + The bill doer. + The ingredients. + + + + applies the effect onto the given mutation. can be called multiple times on the same pawn + + The pawn. + The bill doer. + The mutation. + The ingredients. + + + + Gets the parts to apply on. + + The pawn. + The recipe. + + + + + Determines whether this instance with can be applied on the given mutation + + The mutation. + The recipe. + + true if this instance be applied on the given mutation otherwise, false. + + + + + recipe worker for tagging animals + + + + + + Applies the on pawn. + + The pawn. + The part. + The bill doer. + The ingredients. + The bill. + + + + check if the recipe is available now + + The thing. + The part. + + + + + Custom defs. + + + + + Skyfaller to animate flight when landing. + + + + + Skyfaller to animate flight when taking off. + + + + + def for an 'animal classification', like canid, feline, etc. + + + + + + The parent classification + + + + + Gets the children. + + + The children. + + + + + Gets the label. + + + The label. + + + + + Determines whether this instance contains the object. + + a class. + + true if contains the specified a class; otherwise, false. + + + + + Gets the parent class. + + + The parent class. + + + + + Gets the sub classes of this classification + + + The sub classes. + + + + + Gets the morphs that are in this classification + + + The morphs. + + + + + all mutations that directly give influence for this class + + this does not include mutations that give influence for any of this class's children + + The direct mutations. + + + + + Determines whether this instance contains the morph. + + The morph. + + true if contains the specified morph; otherwise, false. + + morph + + + + Determines whether this instance contains the object. + + The animal class. + + true if contains the specified animal class; otherwise, false. + + animalClass + + + + interface for both MorphDefs and AnimalClassDef + + this should generally not be implemented outside of these 2 defs + + + + a list of mutations to specifically exclude from the heirarchy + + + + + Gets the mutation exclusion list. + + + The mutation exclusion list. + + + + + Gets the parent class. + + + The parent class. + + + + + Gets the label. + + + The label. + + + + + Gets the children. + + + The children. + + + + + Determines whether this instance contains the given class. + + a class. + + true if contains the specified a class; otherwise, false. + + + + + def of for animal classifications + + + + + static container for various animal classification related utility functions + + + + + Gets all mutation in this class + + The animal class. + + animalClass + + + + Gets the associated animal bonus. + + The m definition. + The target animal. + The maximum height. + + + mDef + or + targetAnimal + + + + + Gets a list of all animals 'adjacent' to this morph. + + The morph definition definition. + how many parents up to look for adjacent animals + + mDef + height < 0 + get a list of all animals 'adjacent' to this morph by getting all associated animals for this morph and + all animals associated with it's 'height''th parent class + + + + Gets the associated animals for the given animal class + + The animal class. + + animalClass + + + + Gets all mutation in this class + + The animal class. + + animalClass + + + + Generates debug information on how part influences are calculated. + + The mutations. + + mutations + + + + Fills the influence dictionary. + + The mutations. + The out dictionary. + + mutations + or + outDict + + + + + Gets all morphs in the given class. + + The class definition. + + + + + Calculates the accumulated influence. + + here we iterate over the classification tree in postorder, accumulating the influence points upward + The initial dictionary. + + + + Calculates the trickled influence. + + now iterate over the classification tree in preorder, bringing down accumulated influence from parent to highest influence child + also fill the _pickedInfluencesCache with nodes with non zero influence and no child nodes with non zero influence + The initial dictionary. + + + + thing comp to make animals draft-able when they have the 'former human (sapient)' hediff + + + + + + called to initialize this comp + + The props. + + + + add gizmos to the thing + + + + + + Base class for all "mutation affinities".
      + Affinities are things that are more global than hediffs but more temporary than traits. +
      +
      + + + the def of this aspect + + + + + priority of this aspect, lower priorities should show up first in the Mutation ITab + + + + + Gets a value indicating whether this instance is bad. + + + true if this instance is bad; otherwise, false. + + + + + the color of the label in the mutation ITab + + + + + all cap mods that are active on this aspect (changes when the aspect's stage changes) + + + + + if this aspect has any CapMods (may change when the aspects stage changes) + + + + The current stage index. + + + The current stage. + + + + the label of this aspect + + + + The description of the aspect, taking into account it's current stage + + + The pawn this is attached to. + + + If this affinity should be removed or not. + + + + Gets all thoughts nullified by this aspect. + + + The nullified thoughts. + + + + + Determines whether the specified thought definition is nullified. + + The thought definition. + + true if the specified thought definition is nullified; otherwise, false. + + + + + list of all stages in this Aspect + + + + + all skillMods that are active for this aspect + + + + + get the offset to the hediff's severity + + + + + + The production boosts of the current stage. + + + Get the production boost for the given mutation hediff. + + + Called after this affinity is added to the pawn. + + + Called during startup to initialize all affinities. + + + Called after the pawn is despawned. + + + Called after transfer to/from animal + Aspect on destination pawn + + + Called when the pawn's race changes. + + + Called after this affinity is removed from the pawn. + + + Called after the pawn is spawned. + + + Called every tick. + + + Call to set ShouldRemove to true. + + + Called during IExposable's ExposeData to serialize data. + + + Called after this instance is added to the pawn. + + + Called after the base instance is initialize. + + + + called after this aspect stage changes + + + + + + an enumerable collection of all stat modifiers currently active for this stage + + + + Called once during the startup of this instance, either after initialization or after being added to the pawn. + + + + called when the effects of the given stage must be undone + + + + + + generate a tip string for this aspect to be displayed in the mutation ITab + + + + + + + capacity impactor for aspects + + + + + create a new aspect impactor instance + + + + + + the aspect that is impacting the pawn + + + + + if this impactor is direct or not + + + + + return a string describing what is impacting the capacity of the pawn + + + + + + Def for all affinities. + + + + the Type of the aspect + + + + + the aspect stages, must be at least one + + + + + the color of the aspect's label + + + + + if this aspect should be removed by a reverter or not + + + + Whether or not this aspect can be added by the scenario editor. + + + + the priority of this aspect + lower priorities come first + + + + + if true, this aspect should be transferred to the new animal pawn if the original pawn has this aspect + + + + + list of thoughts this aspect nullifies + + + + + The conflicting aspects + + + + + The required traits + + + + + The conflicting traits + + + + + get all configuration errors with this def + + + + + + create a new aspect instance + + + + + Get the affinity def with the given defName. + + + + resolve all def references in this def, called after DefOfs are loaded + + + + DefOf class for commonly referenced Aspects. + + + + aspect that represents the pawns 'EtherState' + + + + + base class for all 'aspect givers' + + + + + Gets the aspects available to be given to pawns. + + + The available aspects. + + + + + Tries to give aspects to the given pawn + + The pawn. + if not null, all given aspects will be placed into the list + if any aspects were successfully given to the pawn + + + + Applies the aspect to the given pawn + + The pawn. + The aspect. + Index of the stage. + The out LST. + + if the aspect was successfully added or not + + + + + get all configuration errors with this instance + + + + + + Determines whether the specified tracker has a conflicting aspect. + + The tracker. + The test aspect. + + true if the specified tracker has conflicting aspect ; otherwise, false. + + + + + Checks if the pawn has any traits that block the given aspect + + The trait set. + The test aspect. + if given trait set is valid for the given aspect + + + Class representing a single stage of a mutation 'aspect'. + + + + the label of the stage + + + + + prefix to add to the aspects label + + + + + the description of the aspect at this stage + + + + + how often the mental state givers give breaks + + + + + optional override to the aspects label color + + + + + if an aspect at this stage should be considered 'bad' + + + + + text displayed in a message when a pawn is given this aspect + + this is adjusted for [PAWN_nameDef] kinds of substitution + + + + The message definition, if null NeutralEvent is used + + + + + list of thoughts this aspect stage nullifies + + + + + all capacity modifiers that will be active during this stage + + + + + all skill modifiers that will be active during this stage + + + + + all stat offsets that will be active during this stage + + + + + all mental states that can be given by the aspect in this stage + + + + + all production boosts an aspect gives in this stage + + + + Gets the capitalized version of the stage's label. + + + + Aspect that applies non-standard skin/hair coloration to the pawn. + + + + Color set assigned to this instance + + + True if color should apply at 100% regardless of current putation percentage, false otherwise + + + + + + + Remove other ColorationAspects from parent pawn + + + + + + + + + + + + + + Update parent pawn's coloration via standard channels. + + + + + Apply this coloration to a pawn directly. + + Pawn's graphics set + + + + Generate color set using generators based on this instance's aspectDef + + + + + Generate a color using base Rand generator and the slot-appropriate color generator + + Color slot + Generated color, or null if base color should be used + + + + Helper clas for ColorationAspect defs + + + + Mild, natural colors + + + Albinism + + + Melanism + + + High-contrast, saturated colors + + + Colors picked by player + + + + controller for the meat lover aspect + + + + + + + Modifies the thoughts from food. + + The food. + The list of thoughts already added + + + + aspect giver for the primal wish giver + + + + + + Gets the aspects available to be given to pawns. + + + The available aspects. + + + + + The normal chance to give the primal wish aspect + + + + + the chance for mutation affinity pawns to get the aspect + + + + + Tries to give aspects to the given pawn + + The pawn. + if not null, all given aspects will be placed into the list + if any aspects were successfully given to the pawn + + + + a aspect giver that gives random aspects + + + + + + The entries + + + + + Gets the aspects available to be given to pawns. + + + The available aspects. + + + + + get all configuration errors with this instance + + + + + + Tries to give aspects to the given pawn + + The pawn. + if not null, all given aspects will be placed into the list + if any aspects were successfully given to the pawn + + + + Tries to give a single aspect to the given pawn + + The pawn. + the aspect if any was successfully given to the pawn + + + + simple class for storing individual entries in the giver + + + + + The aspect to give + + + + + The percent chance to give the aspect + + note 1 / percent is the expected number of mutations needed before the aspect is added + + + + The aspect stage + + + + + aspect that affects sapience in a negative way + + + + + Called after this instance is added to the pawn. + + + Called after the base instance is initialize. + + + + aspect giver that only gives an aspect when a skill is above a certain threshold + + + + + + Gets the aspects available to be given to pawns. + + + The available aspects. + + + + + Tries to give aspects to the given pawn + + The pawn. + if not null, all given aspects will be placed into the list + if any aspects were successfully given to the pawn + + + + The aspect def to give + + + + + The chance to give the aspect when above the given skill threshold + should be between 0-1 + + + + + The stage index + + + + + The skill definition + + + + + The skill threshold, the pawn's skill must be above this to give the aspect + + + + + get all configuration errors with this giver + + + + + + aspect for the giving merged pawns a 'split mind' + + + + + + + + + + + + aspect for the giving merged pawns a 'split mind' + + + + + Called every tick. + + + Thing comp for tracking 'mutation aspects'. + + + + delegate for the event + + The sender. + The aspect. + + + + delegate for the event + + The sender. + The aspect. + + + + delegate for the event + + The sender. + The aspect. + the last stage the aspect was in + + + + Occurs when an aspect is added + + + + + Occurs when when an aspect is removed + + + + + Occurs when an aspect stage changes. + + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + + A that can be used to iterate through the + collection. + + + + + gets the total number of aspects this pawn has. + + + The aspect count. + + + + + an enumerable collection of all aspects in this instance + + + + Add the aspect to this pawn at the given stage. + + + Add the given aspect to this pawn at the specified stage index. + + + + called every tick after it's parent is updated + + + + + if this tracker contains the given aspect + + + + + + + if this tracker contains an aspect with the given def + + + + + + + Determines whether this instance contains the given aspect at the given stage. + + The aspect definition. + The stage. + + true if this instance contains the specified aspect at the given stage; otherwise, false. + + + + Get the aspect in this tracker of the given def, if one exists. + + + + initializes this instance (Note: other comps may or may not be initialized themselves) + + + + + + notify this tracker that the given aspect has changed in some way + + + + + + save or load + + + + + queue the given aspect to be removed from this tracker + + + + + Removes the aspect with the given def from the pawn. + + + Handle affinities that need to be removed or added after a pawn changes race. + + + Get the aspect in this tracker of the given type, if one exists. + + + + Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the + other. + + + Value Condition Less than zero is less than .Zero + equals .Greater than zero is greater than + . + + The first object to compare. + The second object to compare. + + + + a collection of aspect related utilities + + + + + get the aspect tracker from this pawn + + + + + + Get the total production multiplier for the given mutation. + + + + Tries the apply aspects from this instance + + The morph hediff definition. this should be a 'transformative' hediff like 'wolfmorph', but in theory any hediffDef will do + The pawn. + + + + Tries the apply aspects from this instance + + The mutagen. + The pawn. + + mutagen + or + pawn + + + + + Determines whether this instance can receive rare mutations + + The pawn. + + true if this instance can receive rare mutations otherwise, false. + + pawn + + + + Determines whether this instance can grow mutagenic plants. + + The pawn. + + true if this instance can grow mutagenic plants; otherwise, false. + + pawn + + + + a collection of various body related utilities + + + + + Gets the part address for this body part record. + + The record. + + record + + + + Gets the body part record at the given part address + + The body definition. + The address. + + + bodyDef + or + address + + + + + Gets a body part that is equivalent to partRecord from the given bodyDef, if one exists. + + The body def to check + The body part to search for + The matching from bodyDef, if one exists, or null otherwise + + + + + Gets all non missing parts of the given part defs + + The pawn. + The part defs. + + + + + Gets the part health multiplier that is applied to negative things on this part. + + The p. + The record. + + + + + Gets the normalized part health. + + The record. + The p. + if set to true take mutations into account with 1 being completely healed, otherwise mutations that add health can push this value beyond 1. + + record + or + p + this is usually a value between 0-1, where 1 is full health, some mutations can push this value beyond 1 + + + + Gets the maximum health of the given record for the given pawn + + Note: this is used by a transpiler, do not re order arguments without fixing HediffSetPatches.GetPartHealthTranspiler as well + The p. + The record. + + + + + Gets all non missing parts on this pawn + + The pawn. + + pawn + + + + Gets all non missing parts of the given part defs + + The pawn. + The part defs. + + + + + building class for the mutagen tank + + + + + + Draws this instance. + + + + + building class for the mutanite centrifuge + + + + + + the running mode of the centrifuge + + + + + normal production + + + + + more efficient production at a cost of mutagenic buildup + + + + + The danger radius + + + + + Gets or sets the current mode. + + + The current mode. + + + + + Gets a value indicating whether this is enabled. + + + true if enabled; otherwise, false. + + + + + Gets the adjacent cells cardinal in bounds. + + + The adjacent cells cardinal in bounds. + + + + + Exposes the data. + + + + + Gets the gizmos. + + + + + + Gets the inspect string. + + + + + + set up the object on spawn + + The map. + if set to true [respawning after load]. + + + + called every tick + + + + + + + + + + + Gets a value indicating whether this instance is consumed on use. + + + true if [consumed on use]; otherwise, false. + + + + + Gets the animal this holds the genome for. + + + The animal. + + + + + gets float menu options for this comp . + + The sel pawn. + + + + + props for + + + + + + if this thing is consumed on use + + + + + Special reason that block scanning if set. + + + + + Initializes a new instance of the class. + + + + + The pawn kind + + + + + + + + + + + Determines whether this instance with the specified pawn can initiate the transformation into the specified animal + + The pawn. + The target animal. + The chamber. + + + + + Initiates the transformation of the specified pawn in the given chamber into the target animal + + The pawn. + The target animal. + The chamber. + struct containing the pawnkindDef the pawn will turn into and the duration of the transformation + + + + Called when the pawn is ejected either in a full tf or an aborted transformation + + The original. + The transformed pawn. null if the chamber ejected the pawn before the transformation finished + The chamber. + + + + abstract class for all chamber animal tf controllers + + + + + + Determines whether this instance with the specified pawn can initiate the transformation into the specified animal + + The pawn. + The target animal. + The chamber. + + + + + Initiates the transformation of the specified pawn in the given chamber into the target animal + + The pawn. + The target animal. + The chamber. + struct containing the pawnkindDef the pawn will turn into and the duration of the transformation + + + + Called when the pawn is ejected either in a full tf or an aborted transformation + + The original. + The transformed pawn. null if the chamber ejected the pawn before the transformation finished + The chamber. + + + + simple struct wrapping output of an initialized transformation + + POD that contains the pawnkinddef and duration of an animal tf + + + + + Initializes a new instance of the struct. + + The pawn kind definition. + The duration of the tf in days. + The special resource needed to start the transformation + + + + the special resource needed to start the transformation + + + + + The pawnkind the pawn will turn into + + + + + The duration + + + + Returns the fully qualified type name of this instance. + The fully qualified type name. + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + + if the current object is equal to the parameter; otherwise, . + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + + if and this instance are the same type and represent the same value; otherwise, . + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + Returns a value that indicates whether the values of two objects are equal. + The first value to compare. + The second value to compare. + true if the and parameters have the same value; otherwise, false. + + + Returns a value that indicates whether two objects have different values. + The first value to compare. + The second value to compare. + true if and are not equal; otherwise, false. + + + + world component that acts as the central database for a given world instance + + + + + + translation string for not enough free power + + + + + Initializes a new instance of the class. + + The world. + + + + Gets the stored mutations. + + + The stored mutations. + + + + + Gets the tagged animals. + + The tagged animals. + + + + Gets the saved mutation templates. + + The saved mutation templates. + + + + Gets the free storage. + + + The free storage. + + + + + Gets or sets the total storage available in the system + + + The total storage. + + + + + Gets the amount of storage space currently in use. + + + The used storage. + + + + + Gets a readonly list of values contained in genebank by type. + + + Empty collection if no values. + + + + Gets a readonly list of from genebank by type. + + + Empty collection if no values. + + + + Gets a value indicating whether this instance can tag. + + + true if this instance can tag; otherwise, false. + + + + + Attempts to add the template to the database + + The entry to add. + The fail mode. + mutationDef + + + + Attempts to add the value into the genebank. Outputs reason if it fails. + + + The value to be added. + The reason if it didn't get added. + + true if the provided value was added to the genebank; otherwise, false. + + + + + Determines whether this the provided value can be added to the genebank. + + + The entry. + + true if the value can be added to teh genebank; otherwise, false. + + + + + Determines whether this instance with the specified mutation definition can be added to the database + + The genebank entry to check. + The reason. + + true if this instance with the specified mutation definition [can add to database] otherwise, false + . + + + + + Determines whether any of the specified mutation definitions can be + added to the database, and outputs an error if not. + + The mutation definitions. + The reason the mutation cannot be ad. + + true if at least one mutation definition can be added to database, otherwise false. + + + + + Exposes the data. + + + + + Finalizes the initialize. + + + + + Notifies that the given amount of storage capacity has lost power and is no longer available . + + The storage amount. + + + + Notifies the given amount of storage capacity has power restored + + The storage amount. + + + + Removes the given mutation def from database. + + The entry to remove. + + + + def of for jobs related to mutagenic chambers + + + + + enum for the different states a mutagenic chamber can be in + + + + + the chamber isn't doing anything + + + + turning a pawn into an animal + + + pawns are being merged in this chamber + + + the pawn is being merged into a different chamber + + + + simple struct to wrap the state of a chamber tf requirement + + + + + Gets the true. + + + The true. + + + + + if the chamber transformation can be initiated + + + + + if canInitiate is false the reason why + + + + + Initializes a new instance of the struct. + + if set to true [can initiate]. + The reason. + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + + if the current object is equal to the parameter; otherwise, + . + + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + + if and this instance are the same type and represent the same + value; otherwise, . + + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + + Returns a value that indicates whether the values of two + objects are equal. + + The first value to compare. + The second value to compare. + + true if the and parameters have the same value; otherwise, + false. + + + + + Performs an implicit conversion from to . + + The report. + + report.canInitiate + + + + + Returns a value that indicates whether two + objects have different values. + + The first value to compare. + The second value to compare. + true if and are not equal; otherwise, false. + + + + Converts to string. + + + A that represents this instance. + + + + + enum listing the different uses for the muta chambers + + + + + adding/removing mutations from a pawn + + + + + merging pawns + + + + + turning a pawn into an animal + + + + + static class for various chamber database utility functions + + + + + The minimum amount of storage space a mutation requires + + + + + multiplier for converting 'value' into storage space for mutations + + + + + multiplier for converting 'value' into storage space for species + + + + + Gets all pawnkinds that mutations can be extracted from. + + + gets all . + + + + + Gets all mutations that can be squired from the given animal. + + The pk definition. + + pkDef + + + + Gets the required storage. + + The mutation definition. + + mutationDef + + + + Gets the required storage. + + The pawnkind definition. + + pawnkindDef + + + + Gets the storage string. + + The storage amount. + + + + + Determines whether the specified definition for a chaomorph. + + The definition. + + true if the specified definition is a chaomorph; otherwise, false. + + + + + Determines whether this instance is taggable. + + The animal race. + + true if the specified animal race is taggable; otherwise, false. + + + + + Determines whether this instance is taggable. + + The mutation def. + + true if the specified animal race is taggable; otherwise, false. + + + + + Determines whether the specified morph is tagged. + + The m definition. + + true if the specified morph is tagged; otherwise, false. + + + + + Determines whether this instance is tagged. + + The pk definition. + + true if the specified pk definition is tagged; otherwise, false. + + pkDef + + + + Determines whether this instance is tagged. + + The mutation definition. + + true if the specified mutation definition is tagged; otherwise, false. + + mutationDef + + + + Determines whether this instance is the def of an animal that can be added to the chamber database + + The inst. + + true if this instance can be added to the chamber database ; otherwise, false. + + inst + + + + .returns an enumerable collection of all mutations that can be stored in the database + + The mutation defs. + + + + + static class for generating and storing all implicit genome items + + + + The genome set maker tag + + + The genome trader tags + + + + Gets all implied genomes. + + + All implied genomes. + + + + + Tries to get the genome for the given pawnKindDef + + The pawn kind definition. + + + + + Generates the genomes. + + + + + + + + + + The special thing that a tf is waiting on + + + + + Gets a value indicating whether this instance has its contents suspended / in stasis. + + + true if this instance's contents are suspended; otherwise, false. + + + + + Gets the current use. + + + The current use. + + + + + Gets a value indicating whether this chamber is waiting for a pawn. + + + true if this chamber is waiting for a pawn; otherwise, false. + + + + + Gets a value indicating whether this instance can accept pawns. + + + true if this instance can accept pawns; otherwise, false. + + + + + Draws this instance. + + + + + Ejects the contents. + + + + + exposes data for serialization/deserialization + + + + + Finds the Mutachamber casket for. + + The p. + The traveler. + if set to true [ignore other reservations]. + The use. + + + + + Gets the float menu options. + + My pawn. + + + + + Gets the gizmos. + + + + + + Gets the inspect string. + + + + + + setup after spawning in + + + + + + + Ticks this instance. + + + + + Tries the accept special thing. + + The delivered thing. + + + + Gets a value indicating whether this instance is waiting on a special thing to start a transformation. + + + true if this instance is waiting on a special thing; otherwise, false. + + + + + Gets the special thing needed. + + + The special thing needed. + + + + + tries to accept a new thing into this chamber + + + + + + + + comp representing the mutation chamber modulator options + + + + + + property for the mutagen chamber to get it's default set animal options + + + + + The default animals to be available without having to tag them + + + The merges that this modulator can create + + + + Initializes a new instance of the class. + + + + + the types of chaomorphs + + + + + a regular chaomorph + + + + + result of merging 2 pawns + + + + + special category for use with exotic choamorphs that should be handled separately + + + + + static container for general chaomorph utilities + + + + + Gets the chaomorphs of the given type + + The type. + + + + + Gets a random chaomorph. + + The type. + + + + + Gets a random chaomorph pawnkind def. + + The type. + the pawnkind def, null if none is available + + + + Determines whether this instance is a chaomorph. + + The race. + + true if the specified race is chaomorph; otherwise, false. + + + + + enum for how a pawn relates to the colony + + + + + 'wild' pawns. ie they have no special relation to the colony + + + + + a colonist + + + + + a prisoner of the colony + + + + + an ally/guest of the colony + + + + + a slave of the colony + + + + + a guilty prisoner of the colony + + + + + Color generator that generates colors in a given Hue-Saturation-Value range + + + + Hue range + + + Saturation range + + + Value range + + + Constructor + + + Constructor + + + + + + + comp for mutating things within a radius + + + + + call to save/load data + + + + + Gets the radius. + + + The radius. + + + + + called every tick after it's parent updates + + + + + properties for the Tf Resurrect effect + + + + + + if true, the resurrector will always make the resultant animal permanently feral + + + + + an optional filter to restrict the kinds of animals the resurrector will turn dead pawns into + + + + + The gender tf options for the resurrector + + + + + The tale definition to add to the tale database when the pawn is resurrected + + + + + Initializes a new instance of the class. + + + + + list of animals that the pawn can be transformed into + + + + + gets all configuration errors with this instance + + The parent definition. + + + + + properties for the MutagenicFixWorstCondition comp + + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + resurrector effect that will turn the pawn into an animal + + + + + + Does the effect on. + + The user. + The target. + + + + comp that heals the worst condition, and adds a random mutation if the condition healed is either a missing body part or permanent injury + + + + + + Gets the props. + + + The props. + + unable to convert compProps {props.GetType().Name} to {nameof(CompProps_MutagenicFixWorstCondition)} + + + + Does the effect. + + the pawn that used this instance + + + Add mutations to the given part. + + + + comp for the mutanite bed + + + + + + called when the parent is spawned + + if set to true [respawning after load]. + + + + Called every 250 ticks. + + + + + Thing comp that applies a ColorationAspect with dialog-chosen colors + + + + + Apply effect on use + + Pawn using parent thing + + + + component for controlling instinct and mental breaks of sapient animals + + + + + + Gets the mental breaker. + + + The mental breaker. + + + + + Gets or sets the 'instinct level'. + + + the instinct level + + + + + called every tick + + + + + Handles the instinct effect. + + The instinct effect. + + + + Initializes this comp + + The props. + + + + call this to notify the comp that the attached pawn has recovered from the given mental state + + The state. + + + + called to expose this instances data. + + + + + custom body addon that only shows up on specific body types + + + + + + filter that specifies what kind of body types this addon will be drawn on + + + + + Determines whether this instance can draw on the given pawn. + + The pawn. + + true if this instance can be draw on the specified pawn; otherwise, false. + + + + + def extension to give damage types mutagenic effects + + + + + + The mutagenic buildup hediff def + + + + + The hediff severity per damage point + + + + the amount by which to reduce the raw damage to the pawn, mutagenic + + + + The mutagen to use for the mutagenic damage + if null the default is used + + + + + gets all Configuration errors with this instance. + + + + + + static class containing utilities related to mutagenic damage + + + + the amount of hediff severity to add per point of damage + + + the fraction by which the dInfo damage will be reduced by + + + Applies the mutagenic damage. + The original damage. + The damage information. + The pawn. + The result. + The definition of the mutagenic damage hediff to add. + The severity per damage. + The mutagen. + + pawn + or + result + + + + + Applies the pure mutagenic damage. + + this does not actually damage the pawn + The damage info. + The pawn. + The mutation hediff definition. + The severity per damage. + The mutagen. + + + Gets the severity per damage. + The damage information. + + + + Reduces the damage by some amount. + The d information. + The reduce amount. + a new damage info struct with the modified damage + + + + damage worker for mutagenic cut + + + + Chooses the hit part. + The dinfo. + The pawn. + + + + Applies the special effects to part. + The pawn. + The total damage. + The dinfo. + The result. + + + + damage worker for mutagenic blunt damage + + + + + + Applies the special effects to part. + + The pawn. + The total damage. + The dinfo. + The result. + + + + Chooses the hit part. + + The dinfo. + The pawn. + + + + + damage worker that adds mutagenic buildup hediff in addition to regular injuries + + + + + + values below this should be considered 0 + + + + + Applies the specified dinfo. + + The dinfo. + The thing. + + + + + Adds some extra buildup. taking into account toxic resistance and immunities + + The pawn. + The d information. + + + + Adds the mutation on. + + The force hit part. + The pawn. + + + + does explosive damage to a thing + + The explosion. + The t. + The damaged things. + The ignored things. + The cell. + + + Reduces the damage. + The d information. + The pawn. + + + + + damage worker for a mutagenic stab attack + + + + + Applies the special effects to part. + The pawn. + The total damage. + The dInfo. + The result. + + + Chooses the hit part. + The dInfo. + The pawn. + + + + + debug class for the training work giver + + + + + + Jobs the on thing. + + The pawn. + The t. + if set to true [forced]. + + + + + + + + Debug log utils. + + + + Returns the fully qualified type name of this instance. + The fully qualified type name. + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + Lists all tags and their associated morphs to the console. + + + Lists all MutationDefs in the console, sorted by influence. + + + Prints out all MutationDef's labels and descriptions (Including stages). + + + Returns a string that represents the current object. + A string that represents the current object. + + + + Asserts the specified condition. if false an error message will be displayed + + if false will display an error message + The message. + the condition + + + + Increments the specific key in the dictionary, setting it to 1 if it wasn't present + + Dictionary. + Key. + The 1st type parameter. + + + + Displays the count of all hediffs across all pawns in the world. + + + + + Displays the count of all hediff classes across all pawns in the world. + + + + + Displays all the hediff givers in use by all the hediffs + + + + + enum for different modes functions can record errors + + + + + fails are ignored + + + + + fails are logged and ignored + + + + + fails produce a warning and ignored + + + + + fails produce an error + + + + + interface for things that want to give more information about their state that won't fit in ToString + + + + + returns a full, detailed, representation of the object in string form + + + + + + enum to control how much logging should be done + + + + + only log errors + + + + + log warnings and errors + + + + + log messages, warnings and errors + + + + + log everything + + + + + Does the listing items. + + + + + def extension for giving plants additional variability + + + + + + The minimum growth temperature + + + + + The minimum optimal growth temperature + + + + + The maximum optimal growth temperature + + + + + The maximum growth temperature + + + + + The minimum leafless temperature + + + + + The maximum leafless temperature + + + + + def extension for adding aspect givers to defs + + + + + + The aspect givers + + + + + Tries to apply aspects to the given pawn + + The pawn. + pawn + + + + restriction def extension that restricts a def to pawns with/without specific aspects + + + + + + The aspect entries + + + + + gets all errors with this instance + + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + simple class for storing entries about an aspect and stage + + + + + The aspect definition to look for + + + + + The stage index to look for + + if less then 0 then any stage will do + + + + def extension to add to a ThingDef to mark the race as a chaomorph + + + + + + the type of chaomorph + + + + + The selection weight, used to determine how 'rare' a chaomorph is, higher values are more common. negative values make them never show up under normal means + + + + + if this chaomorph can be stored in the genebank + + + + + if this chaomorph can be tagged + + + + + The pawn kind definition + + + + + optional tale for when a pawn tf into this kind of chaomorph + + + + + static class for commonly used def extension functions + + + + + Determines whether this def is valid for the specified pawn. + + The definition. + The pawn. + if set to true if the pawn must pass all restrictions. + + true if this is valid for the specified pawn; otherwise, false. + + this function checks for all defExtensions that inherit from and check the pawn against them + + + + + + + + + + The filter for specific kinds of former humans + + + + + The race filter + + + + + if true, then to use the attached def the pawn must be a former human + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + def extension meant to be used on race defs to add setting specific to former human + + + + + + if true, the attached race will never be a former human + + + + + The backstory, uses a default if not set + + + + + The food thought settings + + + + + The manhunter settings + + + + + if non null this thought will be given when a pawn transforms into this pawn + + + + + + + + + + + + if this thought should be transferred from the original pawn onto the target + + The original. + The target. + The thought. + + + + + Creates the new thought from the original pawn to transfer to the target pawn. + + The original. + The target. + The original thought. + + + + + def extension to make a def affect a sapient animal's instinct/sapience level + + + + + + The base instinct offset + + + + + The thought to add to the sapient animal + + + + + The tale definition to add + + + + + def extension that adds information about changing the instinct level of a sapient animal + + + exactly what this does depends on what kind of def it is attached to + + + + The instinct offset to add + + + + + The tale to add for the sapient animal + + + + + The thought to add + + + + + extension to add onto a interaction def to list possible alternatives + + + + + + the possible interactions to use + + + + + Tries to get alternative for. + + The initiator. + The recipient. + the alternative interaction, null if one couldn't be picked + + + + restriction for a def, requiring the pawn to have at least one meme from the given list + + + + + + list of memes the pawn's ideo must have one of to pass the list + + + + + list of memes the pawn's ideo must not have' + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + def extension for making something restricted based on + + + + + + The morph filter + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + + + + def extension for settings for mutagen buildup sources + + + + + + the maximum severity this source should add + + + + + The mutagenic buildup definition to use + + if null a default will be used instead + + + + The mutagen definition + + + + + mod extension for adding mutagens to defs to make them mutagenic + + + + + + The mutagen + + + + + mod extension for plants that come from mutating other plants + + + + + + if true, then the attached mutant plant will not be swapped for regular plants + + + + + The priority + + this is used to determine what order the plants are checked, + lower priority is checked first, then higher. mutagenic plants with the same priority are 'shuffled' + + + + The source plant filter + + + + + if true, the source plant must be harvestable for the mutation to occur + + + + + if true, the source plant must be a tree + + + + + Determines whether this instance can mutate from the specified source plant + + The source plant. + + true if this this instance can mutate from the specified source plant otherwise, false. + + sourcePlant + + + + def extension for making something restricted based on mutations + + + + + + The mutation filter + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + + + + mod extension to add a restriction to a based on the relationship status of the recipient + + + + + + if true, then check the past human pawn for a relationship if the recipient is a former human + + + + + if true, the recipient must be a colonist + + + + + The relationship + + + + + Gets all configuration errors with this instance. + + + + + + abstract base class for all def extensions that restrict the use of a def from pawns based on some sort of criteria + + + + + + if true, inverts the normal behavior of this instance + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + def extension put onto other things to give them additional rule packs describing what cause mutations or transformations + + + + + + + The rule pack + + + + + The rule pack definition + + + + + Gets the rules using the given prefix + + The prefix. + + + + + restriction so limit defs to pawns in certain sapience states + + + + + + Configurations the errors. + + + + + + The state the pawn must be in + + + + + The sapience filter + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + def extension for attaching variants of rule packs based on the sapient level + + + + + + The variants + + + + + Gets the rule pack variant. + + The level. + + + + + Gets the with the specified key. + + + The . + + The key. + + + + + mod extension to mark something like a HediffDef or TraitDef so it will be preserved + when the pawn transforms to/from an animal + + + + + + The race filter + + + + + Determines whether this instance with the specified dir can transfer onto the given pawn + + The pawn. + + true if this instance with the specified dir can transfer onto the given pawn ; otherwise, false. + + + + + restriction extension for only allowing pawns with specific traits to use the attached def + + + + + + simple class for combining traitDef and degree info + + + + + The trait + + + + + The trait degree + if less then 0 any degree will do + + + + + The entries + + + + + checks if the given pawn passes the restriction. + + The pawn. + + if the def can be used with the given pawn + + pawn + + + + thought transfer worker for the venerated animal mutation thoughts + + + + + + + if this thought should be transferred from the original pawn onto the target + + The original. + The target. + The thought. + + + + + Creates the new thought from the original pawn to transfer to the target pawn. + + The original. + The target. + The original thought. + + + + + designation class for 'recruiting' sapient former humans + + + + + + Gets the designation definition + + + The designation. + + + + + Initializes a new instance of the class. + + + + + Gets the draggable dimensions. + + + The draggable dimensions. + + + + + Designates the single cell. + + The loc. + + + + Determines whether this instance with the specified t [can designate thing] + + The t. + + + + + Finalizes the designation succeeded. + + + + + Designates the thing. + + The t. + + + + Determines whether this instance with the specified c [can designate cell] + + The c. + + + + + A simple color picker dialog + + + + Show color picker dialog for given pawn + Pawn + + + Constructor + Pawn + + + + + + + + + + + + + static container for applying mutations and morphs to pawns during generation + + + + + Applies the mutation extension to pawn. + + The pawn. + if set to true restricted mutations can be applied as well as regular ones. + if set to trueall mutations will be set at the maximum stage. + The kind extension. + + + Applies the mutations after the pawn has been loaded by the game. + The pawn. + if set to true allow restricted mutations to be applied. + if true, the hediffs added will be set to the maximum stage (familiar usually) + + + + enum that represents the 'quantized sapience level' of a former human + + + + The former human if fully aware + + + The pawn loses the ability to speak and perform work. + + + The conflicted + + + The pawn can no longer sleep in beds, does not care about being naked and can be trained a bit easier. Has "hunting" mental breaks. + + + The pawn cannot hold weapons in its mouth, is fine with eating kibble off the floor, is fine with sleeping outside, training is much easier + + + the pawn is permanently feral + + + + static class containing various former human utilities + + + + + manhunter chances below this means that manhunter tf is disabled + + + + + The minimum biological age for a former human's human form + TODO - Support children if biotech is installed + + + + + these are the minimum sapience levels needed to fall withing a given enum level + + + + + Determines whether [is valid former human] [the specified forced]. + + Kind of the pawn. + Include disabled animals. + Include restricted animals. + + true if [is valid former human] [the specified forced]; otherwise, false. + + + + + Caches the valid former humans. See + + + + + a list of all pawnkind defs that can be former humans . + + + All regular former human pawnkind defs. + + + + + a list of all restricted pawnkind defs that can be former humans . + + + All restricted former human pawnkind defs. + + + + + a list of all pawnkind defs that can be former humans including both restricted and normal. + + + All former human pawnkind defs. + + + + + the base chance for a neutral or hostile pawn to go manhunter when transformed + + + + + if manhunter transformation is enabled + + + + + the chance for a friendly pawn to go manhunter when transformed + + + + + Gets all sapience levels. + + + All sapience levels. + + + + + Gets the sapience level thresholds. + + + The sapience level thresholds. + + + + + Gets all former humans on all maps + + + All maps player former humans. + + + + + Gets all former humans on all maps, caravans and traveling transport pods that are alive + + + all former humans on all maps, caravans and traveling transport pods that are alive + + + + + Gets all former humans belonging to the player + + + All player former humans. + + + + + Gets all sapient animals that are at risk of a minor break . + + + All sapient animals minor break risk. + + + + + Gets all sapient animals that are at risk of a major break . + + + All sapient animals that are at risk of a major break . + + + + + Gets all sapient animals at risk of an extreme break. + + + All sapient animals at risk of an extreme break. + + + + + Gets the break alert label for sapient animals + + + The break alert label. + + + + + Gets the break alert explanation for sapient animals . + + + The break alert explanation. + + + + + Gets the traits that transfer between original pawn and transformed pawn + + + The mutation traits. + + + + + Determines whether this pawn can pass through fences + + The pawn. + + true if this this pawn can pass through fences otherwise, false. + + + + + Creates the merged animal request. + + The kind. + The originals. + The faction. + The context. + The fixed gender. + + + kind + or + originals + + + + + Creates the sapient animal generation request. + + The kind. + The original. + The faction. + The context. + The fixed gender. + + + + + Finds the random prey for the given predator + + The predator. + + + + + Generates the random human form of the given animal + + The animal. + First name of the fixed. + Last name of the fixed. + The fixed original gender. + + + + + Generates the random unmerged humans for the given merged animal + + The animal. + + + + + Gets the filth stat, taking sapience into account. + + The pawn. + + + + + Gets the intelligence of this pawn + + The pawn. + + pawn + https://github.com/Zetrith/Prepatcher/wiki/Adding-fields + + + + Invalidates the cached intelligence level of the given pawn. + + The pawn. + + + + Gets the mid level. + + The sapience level. + + + + + Gets the original pawn of the given former human. + + The former human. + the original pawn if it exists, otherwise null + + + Gets the quantized sapience level. + The pawn. + returns null if the pawn isn't a former human + + + Gets the quantized sapience level. + The pawn. + returns null if the pawn isn't a former human + + + + Gets the quantized sapience level. + + The raw sapience level. + + + + + Gets the current sapience state the pawn is in + + The pawn. + + pawn + + + + Gets the former human tracker. + + The pawn. + + + + + Gets the sapience will debuff. + + The q sapience. + + + + + Gets the sapience will debuff. + + The sapience level. + + + + + Gets the sapient animal comp. + + The pawn. + + + + + Gets the threshold. + + The sapience level. + + + + + Gets the upper threshold. + + The sapience level. + + + + + Gives the sapient animal the hunting thought. + + note: this always gives the default thoughts, the caller should + first check if ideology is active and if the pawns ideo should override these + The sapient animal. + The prey. + + + + Determines this pawn's sapience is in a special state like FormerHuman or Animalistic + + The pawn. + + true if this pawn's sapience is in a special state like FormerHuman or Animalistic; otherwise, false. + + + + + Initializes the transformed pawn with the given original pawn and sapience level + + The original. + The animal. + The sapience level. + The backstory override. + + original + or + animal + + + original + or + animal + + + + + Resets the training levels of the provided pawn to max if pawn has training component. + + The pawn. + + + + Initializes the work settings for the given sapient animal + + The sapient animal. + The pawn work settings. + + sapientAnimal + or + workSettings + + + + + Determines whether this instance is an animal. + + The pawn. + + true if the specified pawn is an animal; otherwise, false. + + + + + Determines whether this pawn is a colonist former human + + The pawn. + + true if this pawn is a colonist former human; otherwise, false. + + + + + Determines whether this status is for a colonist animal. + + The fh status. + + true if this status is for a colonist animal; otherwise, false. + + + + + + Determines whether this pawn is blocked by fences + + The pawn. + + true if this pawn is blocked by fences; otherwise, false. + + + + + Determines whether the given pawn is a former human. + + The pawn. + if set to true permanently feral pawns count as former humans. + + true if the given pawn is former human; otherwise, false. + + + + + Determines whether this instance is humanlike. + + The pawn. + + true if the specified pawn is humanlike; otherwise, false. + + pawn + + + + Determines whether the specified pawn is a manhunter. + + The pawn. + + true if the specified pawn is a manhunter; otherwise, false. + + pawn + + + + If this pawn is a roamer or not. + + The pawn. + + + + + Determines whether this pawn is a sapient former human. + + The pawn. + + true if this pawn is a sapient former human; otherwise, false. + + + + + + Determines whether the given pawn is a tool user. + + The pawn. + + true if the given pawn is a tool user ; otherwise, false. + + + + Makes the animal sapient. including adding necessary comps, need, training, etc + The original. + The animal. + The sapience level. + + + + Makes the animal sapient. + + The animal. + The sapience level. + + if set to true and the resulting pawn is related to a colonist have the animal join + the colony. + + The backstory override. + First name of the fixed. + Last name of the fixed. + The fixed original gender. + + + + Makes the pawn permanently feral. + + The pawn. + + + + + checks if Tameness the can decay on the given pawn. + + The pawn. + + pawn + + + + transfers all relevant information from the original pawn to the transformed pawn + + The original. + The pawn the original pawn was transformed into. + The skill transfer mode. + The passion transfer mode. + + + + Transfers the hediffs from the original pawn onto the transformed pawn by checking for the TFTransferable + + The original. + The transformed pawn. + + + + Transfers the relations back to the original pawn after they've been transformed into the transformedPawn + + The original. + The transformed pawn. + + original + or + transformedPawn + + + + + Tries the assign the correct backstory to transformed pawn. + + The pawn. + The original pawn. + The backstory override. + pawn + + + + Tries the get definition variant for the given formerHuman. + + this also checks if the variant is valid for the formerHuman, and keeps looking until a valid variant is found or all variants are exhausted + + The source definition. + The former human. + The variant. + + + sourceDef + or + formerHuman + + + + + Tries the get sapient variant of the specified type for the given level + + + The source definition. + The level. + The variant. + + + + + Tries the get a variant for the given formerHuman. + + + The source definition. + The former human. + The variant. + + + sourceDef + or + formerHuman + + + + + component that sends an alert when triggered + + + + + + The letter label text to use will be formatted using + + + + + The letter content text to use. will be formatted using + + + + + The letter definition to use, defaults to NeutralEvent + + + + + gets all configuration errors in this stage . + + The parent definition. + + + + + Resolves all references in this instance. + + The parent. + + + + Sends the alert. + + The m base. + + + + + + + + + Gets all custom events in this mod + + + All custom events. + + + + + Converts an enum to named argument . + + + The enum value. + + + + + converts an enum to a named arguments. + + + The enum value. + The label. + + + + + Gets the enum value. + + + The history event. + The name. + + if name is not in the history event arguments + + + + Tries to get an enum value from the history event . + + + The history event. + The name. + The value. + + + + + Sends a new history event with the given history def . + + The definition. + + def + + + + Sends a new history event with the given history def . + + The definition. + The arg1. + def + + + + Sends a new history event with the given history def . + + The definition. + The arg1. + The arg2. + + def + + + + Sends a new history event with the given history def . + + The definition. + The arg1. + The arg2. + The arg3. + + def + + + + Sends a new history event with the given history def . + + The definition. + The named arguments. + + def + + + + Gets the argument. + + + The ev. + The label. + + + + + Tries to get the given argument. + + + The ev. + The label. + The value. + + + + + Gets the doer. the pawn the event pertains + + The ev. + + + + + interface for something that turns a part record from one body def into a part record from another body def + + + + + Transforms the specified record into a record from the target def + + The record. + The target definition. + + record or targetDef + + + + default implementation of IPartTransformer + + + + + + Transforms the specified record into a record from the target def + + The record. + The target definition. + + record or targetDef + + + + static container for hybrid related thought defs + + + + + static container for various hybrid race related traits + + + + + class representing the hybrid race settings + + + + unused + + + How much cover this race provides (mainly used for turtlemorph's mobile cover ability). + + + The stat modifiers + + + The thought settings + + + + the race restriction settings + + + + The graphics settings + + + + The explicit hybrid race + + + + + if true and explicitHybridRace is set, human hediff graphics will be added onto the explicit hybrid race + + + + + a list of mutations that will be added to a pawn when they become a hybrid if they do not have them already + + + + + A list of hair styles that will be used as a pool and be randomly added to a pawn when they become a hybrid. + + + + + if true the required mutations will be added to the pawn when they become a hybrid, otherwise not having the required part will + prevent the pawn from becoming a hybrid + + + + + Overrides + + + + + Overrides + + + + + Overrides + + + + + Applies comps to generated hybrid race. + + + + + checks if the given pawn can become a hybrid with these settings. + + The pawn. + + + + + Gets the transformer. + + + The transformer. + + tried to cast {partTransformer.Name} to {nameof(IPartTransformer)} + + + + settings for the hybrid race's thoughts + + + + list of thoughts that will be replaced + + + thought given when a pawn of this hybrid race eats an animal listed in the morphDef + + + + thought given when a pawn of this hybrid race butchers an animal listed in the morph def + + + + if true this morph will not get the cannibal thoughts + + + if true then the AteRawFood thought will be suppressed + + + a list of thoughtDefs that this hybrid race cannot get + + + + a list of thoughts when the pawn eats specific things + + + + + list of thoughts when a pawn of this race butchers specific things + + + + + class representing the graphic setting of a morph hybrid race + + + + + The skin color override. + + + + + The female skin color override. + + + + + The skin color override second. + + + + + The female skin color override second. + + + + + The female hair color override. + + + + + The hair color override. + + + + + The female hair color override second. + + + + + The hair color override second. + + + + + The custom draw size. + + + + + The custom head draw size. + + + + + obsolete + + + + The food flags + + + The preferability + + + + obsolete + + + + The food overrides + + + + generate AlienRace thought settings with the given morph def + + + + + + + Static class responsible for generating the implicit races. + + + + Gets the list of explicite race morphs patched externally. + + + + an enumerable collection of all implicit races generated by the MorphDefs + includes unused implicit races generated if the MorphDef has an explicit hybrid race + The implicit races. + + + Try to find the morph def associated with the given race. + + + + + + Gets the morph Def associated with this race, if any. + + + + + + Generate general settings for the hybrid race given the human settings and morph def. + + The human. + The morph. + The implied race. + + + + Generate the alien race restriction setting from the human default and the given morph. + + + + + + + Determines whether this race is a morph hybrid race + + The race definition. + + true if the race is a morph hybrid race; otherwise, false. + + raceDef + + + + a collection of utilities around changing a pawn's race + + + + Determines whether the specified objects are equal. + The first object of type CompPropComparer to compare. + The second object of type CompPropComparer to compare. + + if the specified objects are equal; otherwise, . + + + Returns a hash code for the specified object. + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is . + + + + The race change message identifier (used in the keyed translation file) + + + + + Determines whether this pawn is a morph hybrid + + The pawn. + + true if the specified pawn is a morph hybrid; otherwise, false. + + pawn + + + + safely change the pawns race + + The pawn. + The race. + if race related traits should be reRolled + pawn + + + + change the given pawn to the hybrid race of the desired morph + + The pawn. + the morph to change the pawn to + if true, any missing mutations will be applied to the pawn + if set to true display race shit notifications. + + pawn + or + morph + + + + + change the race of the pawn back to human + + + + + + interface for verbs with customizable commands + + + + + Gets the label. + + The owner thing. + + + + + Gets the description for this verb + + The owner thing. + + + + + Gets the UI icon for this verb + + The owner thing. + + + + + interface for hediffs that have a custom description + + + + + Gets the description. + + + The description. + + + + + interface for thing comps that have gizmos that need to be displayed when equipped + + + + + Gets the gizmos. + + + + + + interface for something that can adjust a pawns food preference for a particular thing + + + + + Gets the priority. + + used for determining if multiple adjustors are present. 'lower' values override higher ones + + The priority. + + + + + Adjusts the preferability. + + The eater. + The thing to eat. + the preferability, null if no adjustment is needed + + + + Adjusts the preferability. + + The eater. + Type of the food. + null if no adjustment is needed + + + + get the minimum hunger level to hunt for the given eater. + + note this will not make a pawn that doesn't normally hunt, hunt + The eater. + the hunger level the eater will hunt at, null if they shouldn't or use the default level + + + + interface for things that receive notifications when a pawn recovers from a mental state + + + + + Called when the pawn recovered from the given mental state. + + State of the mental. + + + + Class for the slurry puddles that can spawn with specific mutagenic explosions. + + + + + incident worker for mutagenic diseases + + + + + + Gets all Potential victim candidates. + + The target. + + + + + Determines whether this instance with the specified parms can fire now + + The parms. + + true if this instance with the specified parms can fire now otherwise, false. + + + + + incident worker for the mutagenic fallout event + + + + + + Determines whether the incident can happen now + + The parms. + + true if this incident can occur now otherwise, false. + + + + + Incident worker for the mutagenic leak + + + + + + Determines whether this instance with the specified parms [can fire now sub]. + + The params. + + true If this instance with the specified parms [can fire now sub] otherwise, false. + + + + + Tries the execute worker. + + The parms. + + true If the worker was executed, false otherwise. + + + + + Get all the slurry networks that can leak. + + The map of the colony. + + The networks that can leak. + + + + + Make a network explode and leak. + + The network where the leak happens. + + + + + + + + + Determines whether this instance with the specified parms [can fire now sub] + + The parms. + + true if this instance with the specified parms [can fire now sub] otherwise, false. + + + + + Tries the execute worker. + + The parms. + + + + + incident worker for mutagenic ship crash + + + + + + Gets the count to spawn. + + + The count to spawn. + + + + + Determines whether this instance can fire now with the specified parms + + The parms. + + true if this instance can fire now with the specified parms otherwise, false. + + + + + Tries to execute the worker. + + The parms. + + + + + ingestion outcome doer that adds a tf hediff picked from a given morph category + + + + + + The full tf + + + + + The morph category + + + + + The initial severity + + + + + Whether or not to allow restricted morphs. + + + + + Does the special hediff effect + + The pawn. + The ingested. + + + + ingestion out come doer that adds an aspect to a pawn + + + + + The aspects to add + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion outcome doer to add a simple hediff ignoring body size + + + + + The hediff + + + The initial severity + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion out come doer that adds an aspect to a pawn + + + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion outcome doer for adding morph tf based on a specific morph, or class of morphs + + + + + + The animal class or specific morph to pick the morph tf from + + + + + if this instance can pick restricted morphs + + + + + The severity to add the hediff at + + + + + The tf types to pick from + + this is a flag so you can pick both Full and partial if you want + + + + The category filter + + + + + Does the ingestion outcome special. + + The pawn. + The ingested. + + + + Getter for the mutanite value of items. + + + + + Get the mutanite value of an item. + + The item. + The value. + + + + Description for the ingredients required for a recipe. + + The recipe. + The count of ingredients. + The description + + + + interface for thing comps so they can receive messages when they are being added/remove dynamically by hybrid race changes + + + + + called just before a comp is about to be removed from the pawn + + + + + called just after a comp is removed from the pawn + + + + + Initializes this instance after being added during a race change + + + + + interface for a def of def extension that contains additional rule packs to be used with mutation cause system + + + + + Gets the rules using the given prefix + + The prefix. + + + + + interface for something that modifies the kind of work a pawn can do + + + + + Gets the allowed work tags. + + + The allowed work tags. + + + + + Gets the work type filter. + + + The work type filter. + + + + + Defs related to pawnmorpher's use of VFE slurry net + + + + + The pawnmorpher slurry net def. + + + + + Market value stat part. Used to apply market value modifiers from Pawnmorpher concepts. + + + + + + stat worker for the utility stat HasMorph + + + + + + Determines whether this stat is shown for the given request. + + The stat request. + + true if this stat shoudl be shown for the given request; otherwise, false. + + + + + Determines whether this stat is disabled for the given thing. + + The thing. + + true if this stat is disabled for the given thing; otherwise, false. + + + + + Gets the stat draw entry label. + + The stat. + The value. + The number sense. + The optional req. + if set to true [finalized]. + + + + + Gets the unfinalized stat explanation. + + The explanation unfinalized. + Req. + Number sense. + + + + Gets the explanation finalize part. + + The explanation finalize part. + Req. + Number sense. + Final value. + + + + Gets the thing def from a request. + + The thing def. + Req. + + + + + + + + + + The aspect to give + + + + + The stage to give + + + + + Initializes a new instance of the class. + + + + + gets all configuration errors with this instance. + + The parent definition. + + + + + effect to add a specific aspect on use + + + + + + Does the effect. + + The used by. + + + + thing comp to make the attached pawn always a 'merged' pawn + + + + + + called every tick + + + + + Posts the spawn setup. + + if set to true [respawning after load]. + + + + called to save all data in this comp + + + + + + + + + + delegate for the Animal Chosen event + + The pawn kind definition. + + + + Occurs when an animal is chosen. + + + + + Simple delegate for the event + + The that triggered the event. + + + + Triggers when selector action is clicked but before anything else. + + + + + Gets or sets a value indicating whether this is enabled. + + + true if enabled; otherwise, false. + + + + + Gets the props. + + + The props. + + + + + Gets or sets a filter to specify what should (true) or shouldn't (false) be selectable. + + + The species filter. + + + + + Gets the kind of the chosen. + + + The kind of the chosen. + + + + + + + + Comps the get gizmos extra. + + + + + + Resets the selected animal + + + + + Gets the gizmos. + + + + + + Save/Load data. + + + + + + + + + + Only allow selection of animals which have been tagged in the database + + + + + Label of selector button gizmo. Localised key. + + + + + Tooltip of selector button gizmo. Localised key. + + + + + Whether or not random should be an available option. + + + + + List of animals which will always be available for selection + + + + + List of animals that will be excluded from the selection + + + + + Initializes a new instance of the class. + + + + + Gets all animals that can be selected + + + All animals. + + + + + Properties for the CanBeFormerHuman comp + + + + + If true, the animal will always be a former human, regardless of the mod settings + + + + + If true, the animal will always be a former human, regardless of the mod settings + + + + + Returns any config errors in this comp property + + The errors. + Parent def. + + + + create a new instance of this class + + + + + Comp for Pawn Things that can make their associated pawn a former human + + + + + Called after the parent thing is spawned + + if set to true [respawning after load]. + + + + Called every tick + + + + + Whether or not this pawn can be a former human + + true, if the pawn is eligable, false otherwise. + + + + Whether to make this pawn a former human or not + + true, if the pawn should be made a former human, false otherwise. + + + + Exposes the comp data to be saved/loaded from XML + + + + + Called when the pawn recovered from the given mental state. + + State of the mental. + + + + comp to add to buildings to have them add database storage + + + + + + + + + called after this thing is destroyed + + The mode. + The previous map. + + + + Comps the inspect string extra. + + + + + + expose data. + + + + + called after the parent is spawned in + + if set to true [respawning after load]. + + + + comp properties for + + + + + + the amount of storage to add + + + + + Initializes a new instance of the class. + + + + + comp properties for + + + + + + Initializes a new instance of the class. + + + + + The graphic data to be drawn + + + + + The offset + + + + + The altitude layer to draw the graphic on + + + + + Gets the altitude to draw the graphic on + + + The altitude. + + + + + comp that draws the second part of the mutagen chamber + + + + + + called after the parent's graphic is drawn + + + + Called after the parent's graphic is drawn. + + + + + + + + + Offset to draw pawn at. + + + The altitude layer to draw the pawn at. + + + + Initializes a new instance of the class. + + + + Gets the layer to draw the pawn at as a float. + The altitude as a float. + + + + gathers all configuration errors in this instance. + + The parent definition. + + + + + + + + + + + The bar size + + + + + The bar offset + + + + + The bar color + + + + + The period + + + + + Initializes a new instance of the class. + + + + + + + + + + + Triggers this instance to fill the bar. + + + + + Posts the draw. + + + + + Comps the tick. + + + + + Clears this instance. + + + + + serializes/deserializes data + + + + + comp that acts like a techprint comp for mutation genomes + + + + + + Gets the mutation this provides the genome info for. + + + The mutation. + + + + + gets float menu options for this comp . + + The sel pawn. + + + + + comp properties for + + + + + + The mutation this provides the genomes info about + + + + + Initializes a new instance of the class. + + + + + gets all configuration errors + + The parent definition. + + + + + + + + + Useds the specified worker. + + The worker. + + + + Gets a value indicating whether this instance can use now. + + + true if this instance can use now; otherwise, false. + + + + + Comps the get gizmos extra. + + + + + + Does the find. + + The worker. + + + + + + + + + + + Gets the current sequencing progress. + + + + + properties for the sequencer comp + + + + + + Initializes a new instance of the class. + + + + + comp that listens for when a plant or tree is consumed to send the former human grazed event + + + + + + called after the parent is ingested + + The ingester. + + + + properties for + + + + + + Initializes a new instance of the class. + + + + + filter for specific animals + + + + + The morph category filter + + + + + The forced sapience level + + + + + if true, check if the tf target is a morph, and fully tf them into the animal + + + + + The chaomorph settings + + + + + chaomorph settings enum + + + + + no chaomorphs will be chosen + + + + + chaomorphs will be allowed if they satisfy the other filters/parameters + + + + + only chaomorphs will be allowed + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + comp for giving valid animals for the resurrector serum + + + + + + Gets the forced sapience level. + + + The forced sapience level. + + + + + Gets the valid animal to turn the target into + + The target. + + + + + thing comp to track the 'former human' status of a pawn + + + + + + Gets the current sapience state that pawn is in + + + Gets the current sapience state that pawn is in + + + + + Gets the current intelligence of the attached pawn. + + + The current intelligence. + + + + + Gets the sapience need. + + + The sapience need. + + + + + Gets a value indicating whether this instance is permanently feral. + + + true if this instance is permanently feral; otherwise, false. + + + + + Gets or sets the sapience level. + + + The sapience level. + + + + + Gets the sapience level of the pawn + + + The sapience. + + + + + Gets the pawn this comp is attached to + + + The pawn. + + + + + called every tick + + + + + enter the given sapience state + + The state definition. + The initial level. + + + + Exits the current sapience state. + + if set to true dynamic components will be recalculated after exiting the state. + + + + Initializes the specified props. + + The props. + + + + Makes the parent thing permanently feral. + + + + + saves/loads all data + + + + + Sets the sapience. + + The sapience. + + + + thing comp for making certain animals drop tf milk if they are 'mutagen infused' + + + + + + Gets the resource definition. + + + The resource definition. + + + + + + + + + + + Initializes a new instance of the class. + + + + + The mutagenic product + + + + + A genome thing class that selects a random animal when created and stores it on the thing instance. + + + + + Gets the contained animal kind of this genome. + + + + + class for the chaothrumbo with observation thoughts + + + + + + Gives the observed thought. + + + + + + Gives the observed thought. + + The observer. + + + + + Gives the observed history event. + + The observer. + + + + + class for more flexible plants + + + + + + Gets the growth rate. + + + The growth rate. + + + + + Gets the leafless temperature thresh. + + + The leafless temperature thresh. + + + + + performs a long tick. + + + + + Gets the mouseover label. + + + The label mouseover. + + + + + Gets the inspect string. + + + + + + gets the growth rate factor for this plant . + + The cell temporary. + + + + + Growth season check that's aware of this plant's temperature tolerance + + true, if the plant can grow now based on temperature, false otherwise. + Cell. + Map. + + + + static class responsible for generating implicitly defined morph injectors + + + + + Gets all generated injector defs. + + + The generated injector defs. + + + + + Generates the injector defs. + + + + + Gets the selected row. + + + + + Gets or sets the callback action called when window is closed. + + + + + Gets or sets the table's row filter. + + + + + Initializes a new instance of the class. + + The genebank tab to show. + Callback called when window is closed with selected row. + + + + Searchable list box. + + + + + Expands all currently displayed nodes. + + + + + Collapses all currently displayed nodes. + + + + + Draws filter box. + + The parent rectangle. + + + + The very first method to be called. Only called once. + + The databank. + + + + Called to populate . Only called once. + + The table to be populated. + + + + Invoked after columns have been added before any rows are added to a table. + Add postfix patch to this to add additional custom columns to the table. + + The generated table. Use AddColumn method to add new columns. + + table.AddColumn(Caption, Size); + + + + + Invoked after a new row is generated but before it is added to a table. + Add postfix patch to this to add custom columns and data. + + The newly generated row. Add column data to row indexer, see example. + The search string for this specific row. Append any additional searchable words to this. + + row[column] = "CellValue"; + + + + + Called when the selected rows have changed. + + The selected rows. + + + + Called every frame to draw details section. + + The details section bounding box. + + + + Called when user clicks the delete button. + + The def to be deleted. + + + + Called every frame to draw additional footer buttons. + + The footer bounding box. + + + + Updates all data based on the provided stage index. + + The stage index. + + + + Gets or sets the row filter function. Return true to include row and fall to skip. + + + + + Returns the current selected rows. + + + + + Triggered when selected rows is changed. + + + + + Gets or sets the line font. + + + The line font. + + + + + Gets or sets a value indicating whether this allows selecting multiple rows. + + + true if multi-select is enabled; otherwise, false. + + + + + Initializes a new instance of the class. + + Callback used to apply filter text. + + + Adds the column. + Title of the column. + Column width. + Optional callback to tell the column how to order rows. + + + + Adds the column. + + Column caption. + Column width. + Render callback when cell in column is drawn. + Optional callback to tell the column how to order rows. + + + + + Add a new row to the table. + + Row to add. + + + + Remove specific row from table. + + Row to remove. + + + + Invalidate rows and recalculates columns. + + + + + Clears all rows and columns from table. + + + + + Draw table to bounding box. + + Decides the size and position of the table. + + + + Gets the title of the column. + + + + + Gets the width of the column. Use decimal value between 0 and 1 as percentage for dynamic width. + + + + + Gets or sets whether this column has a fixed width. + Set width as a value between 0 and 1 as a percentage of how much of the remaining width after all fixed columns are added this column should use. + + + true if this column is fixed width; otherwise, false. + + + + + Initializes a new instance of the class. + + The column's title. + The width of the column. Use 0.xf for percentage/fractional widths. + Callback for ordering by this column. Arguments are the collection to apply ordering to and if current ordering is ascending. Null if not sortable. + + + + Initializes a new instance of the class. + + The column's title. + The width of the column. Use 0.xf for percentage/fractional widths. + The rendering callback when a cell of this column should be rendered. + Callback for ordering by this column. Arguments are the collection to apply ordering to and if current ordering is ascending. Null if not sortable. + + + + Delegate action type that takes an in. + + + + + Gets or sets whether this node is has label and value on separate lines. + + + + + Gets the node's label/caption. + + + + + Gets or sets the tooltip. + + + The tooltip. + + + + + Gets a value indicating whether this is visible in a tree. + + + + + Gets or sets a value indicating whether this is enabled. + + + + + Initializes a new instance of the node to use with the . + + The label of the node. + Tooltip for the node. + Draw callback used to add widgets to the node. + + + + Triggers draw callback if any. + + The rect. + + + + Creates a new child node under this node. + + Translation key to use for label. + Optional translation key to use for tooltip. + Optional draw callback. + Optional draw callback. + + + + + Gets a value indicating whether this can be expanded in a tree. + + + true if node has children. + + + + + Sets the visibility. + + Whether or not to draw the node. + If true assigns recursively to children.. + Number of nodes affected. + + + + Gets all visible nodes and child nodes. + + Output collection to return nodes. + + + + interface for a readonly reference to added mutations + + + + + Gets the parts. + + + The parts. + + + + + gets mutations by part and layer + + The part. + The layer. + + + + + A list of the mutations to add to a pawn, along with key data and accessors. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The other. + + + + The list of mutations to be added to the pawn, as well as some key data associated with them. + + + + + Returns a list of all body part records currently slated to be modified. + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + + Returns an enumerator that iterates through the collection. + + + An enumerator that can be used to iterate through the collection. + + + + + Adds a new entry to the list of mutations to give the pawn. + + The def of the mutation to add to the pawn. + The body part record to apply the mutation to. + What severity the added mutation should be intialized with. + Whether or not the addded mutation will be able to progress. + Whether or not this entry is intended to remove the mutation. + + + + Adds the specified m data. + + The m data. + + + + Removes the first entry in the mutation data list whose part and layer matches the one provided. + + The body part record to filter out of the mutation data. + The mutation layer to filter out of the mutation data. + + + + Finds and returns the first entry whose part and layer matches the provided part and layer. + + The part to match. + The mutation layer to match. + The first entry whose part and layer matches the provied part and layer. + + + + Exposes the data. + + + + Gets the number of elements in the collection. + The number of elements in the collection. + + + Gets the element at the specified index in the read-only list. + The zero-based index of the element to get. + The element at the specified index in the read-only list. + + + + part picker dialogue windo + + + + + + handler for the window closed event + + The sender. + The added mutations. + + + + Occurs when the window is closed. + + + + + The recache preview + + + + + Gets the initial size. + + + The initial size. + + + + + Initializes a new instance of the class. + + The pawn. + if set to true [debug mode]. + + + + Closes the specified do close sound. + + if set to true [do close sound]. + + + + Called when [accept key pressed]. + + + + + Does the window contents. + + The in rect. + + + + Resets this instance. + + + + + Draws the description boxes. + + The in rect. + + + + Sets the pawn preview. + + + + + stores information on the initial state of the hediff + + + + + The hediff + + + + + The severity + + + + + The is halted + + + + + Initializes a new instance of the class. + + The hediff. + The severity. + if set to true [is halted]. + + + + Searchable list box. + + + + + + Draws filter box. + + The parent rectangle. + X position. + Y position. + Filterbox height. + The callback. + + + + interface for a readonly variant of mutation data + + + + + Gets the mutation. + + + The mutation. + + + + + Gets the part. + + + The part. + + + + + Gets the severity of the mutation + + + The severity. + + + + + Gets a value indicating whether this instance is halted. + + + true if this instance is halted; otherwise, false. + + + + + Gets a value indicating whether the mutation is being removed. + + + true if removing; otherwise, false. + + + + + The mutation to be added to a pawn, along with some key data. + + + + + The def of the mutation to add to the pawn. + + + + + The body part record to add the mutation to. + + + + + The severity the mutation should be initialized with. + + + + + Wether the mutation should be able to progress, or should be locked at it's current stage. + + + + + Whether or not this entry is designated to instead remove mutations from the body part. + + + + + Constructor for MutationData used to gather all relevant information. + + The def of the mutation to add to the pawn. + The body part record to add the mutation to. + The severity the mutation should be initialized with. + Wether the mutation should be able to progress, or should be locked at it's current stage. + Whether or not this entry is designated to instead remove mutations from the body part. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The m data. + + + + Exposes the data. + + + + + A template of mutations for part picker. + + + + + + The genebank capacity cost per mutation in template. + + + + + Gets the template caption. + + + + + Gets the template mutations data. + + + + + Gets the size of the template when stored in the genebank. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Collection of mutations to include in template. + The caption of the template. + + + + Save/Load data + + + + + Invalidates caches related to mutation data. + + + + + Returns a string describing all the mutations in this template + + A string describing the template + + + + Attempts to deserializes the specified text. + + Text of a serialized mutation template. + The deserialized mutation template. + + + + + Mutation data stored in a template to be saved and loaded. + + + + + + The saved mutation def + + + + + The name of the body part the mutation is attached to. + + + + + The severity of the mutation + + + + + Whether the mutation is halted or not + + + + + Initializes a new instance of the class. Intended only for loading. + + + + + Initializes a new instance of the class. + + The mutation def itself. + The name of the body part the mutation is attached to. + The severity of the stored mutation. + Whether or not the mutation is halted. + + + + Saves and loads data. + + + + + Gets the gender of the preview pawn. + + + + + Adjusts the text to match preview pawn. + + The input text to format. + + + + + Sets the preview gender. + + The gender. + Type of the body. + + + + Initializes a new instance of the class. + + The preview texture height. + The preview texture width. + The pawn race to render. + Race cannot be null. + + + + Adds a mutation to a specific body part. + + The hediff. + The body part. + + + + Sets the severity of all mutations of specific type. + + The mutation type to change. + The severity level to change mutations to. + + + + Adds the specified mutation to all body parts that support it. + + The mutation to add. + + + + Clears all mutations. + + + + + Gets or sets the height of the preview texture. + + + + + Gets or sets the index of the preview. Identical indexes may cause preview overlap. + + + + + Gets or sets the width of the preview texture. + + + + + Gets or sets the preview rotation. + + + + + Triggers an invalidate and refresh of displayed preview. + + + + + Called when preview is refreshed. + + + + + Called when preview should draw. + + + + + Draws preview to the specified bounding box. + + The bounding box. + + + + Sets the preview gender. + + The gender. + + + + Set sequence target and update UI. + + + + + Refresh control panel elements. + + + + + main tab window for the chamber database + + + + + + + + + + + + static class containing merged pawn related utilities + + + + + Transfers the aspects to the given meld. + + The original pawns. + The merged pawn. + + + + Transfers traits, aspects, and relationships to a merged pawn. + + The originals. + The merged pawn. + + originals + or + mergedPawn + + + + + exception for when something goes very wrong during mod initialization + + + + + + Initializes a new instance of the class. + + The message that describes the error. + + + + Initializes a new instance of the class. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The serialization information. + The streaming context. + + + + static class containing useful instinct related utilities + + + + + The average resistance of pawns + + use this value to scale control values to a better range + + + + a very small value + + + + + Gets the instinct change per tick. + + The pawn. + + + + + Gets the label. + + The level. + + + + + Calculates the total control has left + + The pawn. + The instinct. + + pawn + + + + Calculates the change in control caused by the given instinct change. + + The pawn. + The instinct change. + + + + + Calculates the net resistance of this pawn + + The pawn. + + pawn + + + + The average resistance + + + + + Gets the control need of the given pawn + + The pawn. + + + + + interface for a thing that can transform a pawn + + + + + Tries to transform the pawn. + + The pawn. + The cause. + + + + + transforms pawn. + + The pawn. + The cause. + if the transformation was successful or not, only false if there was an error + + + + joy giver for terrain production jobs + + + + + + Tries to give a job to the given pawn. + + The pawn. + + + + + mental state worker for the 'hunting' former human break + + + + + + States the can occur. + + The pawn. + + + + + mental state for the hunting mental break + + + + + + called when the mental break starts + + The reason. + + + + Exposes the data. + + + + + Gets the prey. + + + The prey. + + + + + Mentals the state tick. + + + + + Notifies the attacked target. + + The hit target. + + + + called when this state ends. + + + + + called before the mental state is started + + + + + Gets the begin letter text. + + + + + + properties for dynamically generated injectors generated by + + + + + The label for the generated injector + + + + + The work amount + + + + + The market value + + + + + The stat bases for the injector + + + + + The tech level of the injector + + + + + The trader tags for the injector + + + + + if to add the default trader tags to the trader tags list + + + + + The cost list for the recipe + ignored if is explicitly set + + + + + how much slurry is needed to make the injector + + + + + The neutroamine cost to make this injector + + + + + The mutanite cost to make this injector + + + + + list of additional outcome doers on the injector + + + + + The graphic data for the injector + + + + + The description of the injector + + + + + Gets the recipe maker. + + + The recipe maker. + + + + + Gets the cost list. + + + The cost list. + + + + + gets all configuration errors with this instance. + + + + + + Resolves the references. + + + + + properties for dynamically generated morph hediffs + + + + + The label color of the injector hediff + + + + + The mutagen to use + + + + + The tf alert, if null no alert stage will be generated + + + + + The chance for this hediff to remove a non morph part chance + + + + + The tf settings to use, if null no tf stage will be generated + + + + + The hunger rate factor + + + + + The cap mods to use + + + + + The aspect givers + + + + + The label of the generated hediff. + + + + + The description of the generated hediff + + + + + static class for various mutagenic buildup, mutagenic weapons and mutagen drug related utilities + + + + + Gets the net mutagenic buildup multiplier for this pawn. + + The pawn. + The mutagen definition. + + + + + Determines whether this thing is a mutagenic weapon. + + The thing. + + true if this thing is a mutagenic weapon; otherwise, false. + + thing + + + + Determines whether this weapon is a mutagenic weapon. + + The weapon definition. + + true if this weapon is a mutagenic weapon; otherwise, false. + + weaponDef + + + + Determines whether this thing def is a mutagenic drug or not. + + The t definition. + + true if this thing is a mutagenic drug or not; otherwise, false. + + tDef + + + + Adjusts the mutagenic buildup for the given pawn using the given source + + The source. + The pawn. + The adjust value. + The override mutagen. + + + + + static class that contains various Mutation Category defs + + + + + class representing a composite of causes for mutations. meant to construct entries with rule packs + + + + + a single cause entry + + + + + + The prefix for the cause + + + + + Exposes the data. + + + + + Gets the type of the definition that this cause uses + + + The type of the definition. + + + + + The cause def + + + + + Generates the rule strings for this cause + + The additional prefix + + + + + generic subclass of CauseEntry + + this is needed as Scribe_Def<Def> gets confused with multiple defs of different types with the same name + + + + + + The definition field + + + + + Gets the type of the definition that this cause uses + + + The type of the definition. + + + + + The cause def + + + + + Exposes the data. + + + + + Generates the rule strings for this cause + + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + cause entry for precepts + + + + + + The precept + + + + + Exposes the data. + + + + + Gets the type of the definition that this cause uses + + + The type of the definition. + + + + + The cause def + + + + + Generates the rule strings for this cause + + The additional prefix + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + The weapon prefix + + + + + The hediff prefix + + + + + The mutagen cause prefix + + + + + The precept prefix + + + + + Initializes a new instance of the class. + + + + + Sets the source location. + + The location of whatever caused the mutation. + The map that contains the cell. + + + + Sets the source location. + + The thing to take location from. + + + + Sets the source location. + + The global location of whatever caused the mutation. + + + + Gets the associated location. (If any) + + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + + Exposes the data. + + + + + Determines whether the def is one of the causes stored. + + The definition. + + true if the def is one of the causes stored; otherwise, false. + + + + + Determines whether the precept is one of the causes stored. + + The precept. + + true if the precept is one of the causes stored; otherwise, false. + + + + + Determines whether given prefix is already contained. + + The prefix. + + true if specific prefix already exists otherwise, false. + + + + + Adds the specified cause with the specified prefix. + + The prefix. + The cause definition. + + + + Adds the specified precept cause + + The precept. + The prefix. + precept + + + + Adds the specified cause. + + The cause. + cause + + + + Adds the specified causes. + + The causes. + + + + Generates the rules for this collection of causes + + The prefix. + + + + + Gets all causes of the specified def type + + + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + static class containing mutation cause related utilities + + + + + Adds the mutagen cause. + + The causes. + The mutagen. + + causes + or + mutagen + + + + + Adds the mutagen cause. + + The causes. + The mutagen. + true if added, false if the def was added previously + + causes + or + mutagen + + + + + Tries to add a new cause. + + + The causes. + The prefix. + The definition. + true if added, false if the def was added previously + + causes + or + def + + + + + Tries to add the precept cause. + + The causes. + The precept. + The prefix. + if the precept was added, false if the precept was already a cause + + causes + or + precept + + + + + struct that holds information about the result of a call to MutationUtility.AddMutation + + + + + + an 'empty' mutation result + + + The empty. + + + + + Gets the parts. + + + The parts. + + + + + Initializes a new instance of the struct. + + The mutations. + + + + Initializes a new instance of the struct. + + The mutation. + mutation + + + + Initializes a new instance of the struct. + + The mutations. + + + + Performs an implicit conversion from to . + + The result. + + true if any mutations were added, false otherwise + + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Gets the number of elements in the collection. + The number of elements in the collection. + + + Gets the element at the specified index in the read-only list. + The zero-based index of the element to get. + The element at the specified index in the read-only list. + + + + def for all 'mutation' rules + + mutation rules are rules that are run on pawns every so often that will add mutations/hediffs if certain criteria are met + + + + + how often the rules are checked + + + + + Gets all rules in this def + + + All rules. + + + + + the mean time to happen (in days) + + the mean time it takes for a rule to trigger one it's conditions are met' + + + + the type of the rule worker + + + + + The priority of this rule + + rules with a 'lower' priority value are run before those with a higher priority value + + + + The entries that are check against a pawn to see if the rule can be executed + + + + + list of aspect conditions + + + + + The output entry when this rule is run + + + + + Gets the instantiated mutation rule worker. + + + The worker. + + + + + gets all configuration errors on this object + + + + + + Resolves the references. + + + + + Tries to execute the rule on the given pawn. + + The pawn. + if the rule was successfully executed on the pawn + pawn + + + + aspect rule entry + + + + + + The aspect definition to look for + + + + + if set, then the aspect must be in this given stage + + + + + check if this entry is satisfied by the given pawn + + The pawn. + + pawn + + + + simple POD for rule results + + + + + The hediff definition + + + + + The record the hediff must be on + + + + + + + + + list of hediffs to check for + + + + + The record the hediff must be on + + + + + if true, this entry is satisfied if the pawn has any the hediff on any part + + + + + if set, the hediff must be on this stage + + + + + check if this entry is satisfied by the given pawn + + The pawn. + + + + + interface for all rule entries + + + + + check if this entry is satisfied by the given pawn + + The pawn. + + + + + base class for all 'worker' classes for mutation rules + + + + + Initializes a new instance of the class. + + The rule definition. + + + + Gets the rule definition. + + + The rule definition. + + + + + Tries to execute the rule on the given pawn. + + The pawn. + if the rule was successfully executed on the pawn + pawn + + + + checks if the given pawn + + The pawn. + + pawn + + + + Does the rule on the given pawn + + The pawn. + pawn + + + + simple implementation of MutationRuleWorker + + + + + + Initializes a new instance of the class. + + The rule definition. + + + + checks if the given pawn + + The pawn. + + pawn + + + + Does the rule on the given pawn + + The pawn. + pawn + + + + Called when the rule is successfully applied + + The pawn. + + + + Called when the rule is successfully applied + + The pawn. + The result. + + + + Does the rule on the given pawn + + The pawn. + The result. + + + + mutation worker for the hellhound + + + + + + Initializes a new instance of the class. + + The rule definition. + + + + checks if the given pawn + + The pawn. + + pawn + + + + Does the rule on the given pawn + + The pawn. + pawn + + + + worker that removes all the conditional hediffs when applied + + + + + + Initializes a new instance of the class. + + The rule definition. + + + + Called when the rule is successfully applied + + The pawn. + + + + rule worker combining the various 'morph hediffs' into a single morph hediff + + + + + + Initializes a new instance of the class. + + The rule definition. + + + + Called when the rule is successfully applied + + The pawn. + + + + various mutation rule related utilities + + + + + Gets a sorted collection of all MutationRuleDefs + + + All rules. + + + + + Tries to execute the rules on the given pawn. + + The pawn. + + + + + readonly struct describing the 'slot' or 'site' a mutation can occupy + + + + + + Initializes a new instance of the struct. + + The record. + The layer. + + + Returns the fully qualified type name of this instance. + The fully qualified type name. + + + + Gets the body part record of this site + + + The record. + + + + + Gets the layer of this site + + + The layer. + + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + + if the current object is equal to the parameter; otherwise, . + + + Indicates whether this instance and a specified object are equal. + The object to compare with the current instance. + + if and this instance are the same type and represent the same value; otherwise, . + + + Returns the hash code for this instance. + A 32-bit signed integer that is the hash code for this instance. + + + Returns a value that indicates whether the values of two objects are equal. + The first value to compare. + The second value to compare. + true if the and parameters have the same value; otherwise, false. + + + Returns a value that indicates whether two objects have different values. + The first value to compare. + The second value to compare. + true if and are not equal; otherwise, false. + + + + need that represents a sapient animal's control or humanity left + + + + + delegate for the sapience level changed handle + + + + + + + + + Occurs when the sapience level changes . + + + + + Initializes a new instance of the class. + + The pawn. + + + + Gets the maximum level. + + + The maximum level. + + + + + Gets the current instant level. + + + The current instant level. + + + + + Gets the seeker level. + + + The seeker level. + + + + + The races that this need is enabled for + + + + + Adds the instinct change to this need + + The instinct change. + + + + Draws the GUI. + + The rect. + The maximum threshold markers. + The custom margin. + if set to true [draw arrows]. + if set to true [do tooltip]. + The rect for tooltip. + Whether or not to draw need label. + + + + Exposes the data. + + + + + Determines whether the control need is enabled for the pawn. + + The pawn. + + true if control need is enabled for the given humanoid race; otherwise, false. + + + + + called every so often by the need manager. + + + + + + Notifies that the cached maximum level is dirty + + + + + Gets the upper limit of this pawns sapience + + + The limit. + + + + + Sets the initial level. + + + + + Sets the initial level. + + The sapience level. + + + + Sets the sapience. + + The sapience. + + + + this class represents the 'address' of a body part on a pawn + + + + + Loads the data from XML custom. + + The XML root. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The address. + address + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + An enumerator that can be used to iterate through the collection. + + + Indicates whether the current object is equal to another object of the same type. + An object to compare with this object. + + if the current object is equal to the parameter; otherwise, + . + + + + Gets the number of elements in the collection. + The number of elements in the collection. + + + Gets the element at the specified index in the read-only list. + The zero-based index of the element to get. + The element at the specified index in the read-only list. + + + Determines whether the specified object is equal to the current object. + The object to compare with the current object. + + if the specified object is equal to the current object; otherwise, + . + + + + Serves as the default hash function. + A hash code for the current object. + + + + Returns a value that indicates whether the values of two objects are + equal. + + The first value to compare. + The second value to compare. + + true if the and parameters have the same value; otherwise, + false. + + + + + Returns a value that indicates whether two objects have different + values. + + The first value to compare. + The second value to compare. + true if and are not equal; otherwise, false. + + + + Parses the specified string into a part address + + the input string is supposed to be in the form of torso.leg.toe etc. + The string. + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + + + + + + + Applies the worker. + + The XML. + + + + + + + + + + + Gets the type of the designation. + + + The type of the designation. + + + + + Gets the tip. + + The pawn. + + + + + Determines whether the specified pawn has checkbox. + + The pawn. + + true if the specified pawn has checkbox; otherwise, false. + + + + + Notifies the designation added. + + The pawn. + + + + static container for functions that transfer stuff between pawns + + + + + the method to use when transferring skill passions + + + + do not transfer passions + + + + take the minimum of the passions + + + + + take the maximum of the passions + + + + + just set the passion level + + + + + enum for the different modes of transferring skills + + + + + The target skill's level should be set to exactly that of the source skill + + + + + target skill's level should be the min of the original and that of the source skill + + + + + target skill's level should be the max of the original and that of the source skill + + + + + tries to get the equivalent body part record in the other body def + + The record. + The other definition. + the equivalent body part record in the other body def if it exists, null otherwise + + record + or + otherDef + + + + + Merges the skills from the given original pawns into the given meld + + The originals. + The meld. + + + + Transfers all transferable abilities from pawn1 to pawn2. Due to how Psycasts work, they first need to be all removed + + The source pawn. + The destination pawn. + The selector. + + + + Transfers all transferable aspects from pawn1 to pawn2 + + The source pawn. + The destination pawn. + + + + Transfers the favor of all factions from pawn1 to pawn2 + + The pawn1. + The pawn2. + + pawn1 + or + pawn2 + + + + + Transfers the hediffs from pawn1 onto pawn2 + + The pawn1. + The pawn2. + The selector. + The transfer function. + + + + Transfers the hediffs from pawn1 onto pawn2 + + The pawn1. + The pawn2. + The selector. + + pawn1 + or + pawn2 + + + + + Transfers the ideo from the original pawn onto the transfer pawn + + The original. + The transfer pawn. + if set to true [transfer roles]. + + original + or + transferPawn + + + + + Transfers the ideo roles from the original pawn and transfer pawn + + transfers ideology roles from the original pawn onto the transfer pawn + they must have the same ideology to begin with + The original. + The transfer pawn. + + + + Transfers the quest relations from the original pawn onto the transfer pawn + + The original. + The transfer pawn. + + original + or + transferPawn + + + + + Transfers the relations from pawn1 to pawn2 + + The original. + The animal. + optional predicate to dictate which relations get transferred + + + + Transfers the relations from pawn1 to pawn2 + + The original. + The animal. + optional predicate to dictate which relations get transferred + + + + Transfers the relations from the original pawns to the given meld + + The originals. + The meld. + The filter. + + originals + or + meld + + + + + Transfers skills from pawn1 to pawn2 + + The pawn1. + The pawn2. + The transfer mode. + The passion transfer mode. + + + + Transfers thoughts from pawn1 onto pawn2. + + The pawn to transfer thoughts from. + The pawn to transfer thoughts onto. + The selector function. default just checks that the memory is valid for pawn2 + + pawn1 + or + pawn2 + + + + + move all mutation related traits from the original pawn to the transformed pawn if they are sapient + + The original pawn. + The transformed pawn. + The selector function for determining if a trait should be transferred + + transformedPawn + or + selector + or + originalPawn + + + + + place worker for the centrifuge + + + + + + Draws the ghost. + + The definition. + The center. + The rot. + The ghost col. + The thing. + + + + place worker for showing the current radius of a mutagenic ship + + + + + + Draws the ghost. + + The definition. + The center. + The rot. + The ghost col. + The thing. + + + + + + + + + + Gets the yield now. + + The harvester. + + + + + + + + + + + Gets the yield now. + + The harvester. + + + + + + + + + + The pm sheep chef + + + + + static container for pawnmorpher concept defs + + + + + concept def for the genebanks + + + + + concept def for injectors + + + + + concept def for merging pawns + + + + + concept def for the part picker + + + + + concept def for tagging + + + + + The chaomorphs concept def + + + + + The mutagen cloud (used with small explosions and spills like pipes) + + + + + The mutagen cloud (used with regular explosions like grenades) + + + + + The mutagen cloud large (used with artillery) + + + + + static class for commonly used effects + + + + + The EffectorDef for cooking + + + + + static class for food related utilities + + + + + Clears the caches used to find food preferability + + + + + Gets the adjustors for the given eater + + The eater. + + + + + Gets the best food source on the map for the given getter and eater pawns + + this function gets the best food source on the map for the given pawns, making sure to optimize for the case where + a humanoid pawn can eat plants + The getter. + The eater. + if set to true [desperate]. + The food definition. + The maximum preference. + if set to true [allow plant]. + if set to true [allow drug]. + if set to true [allow corpse]. + if set to true [allow dispenser full]. + if set to true [allow dispenser empty]. + if set to true [allow forbidden]. + if set to true [allow socially improper]. + if set to true [allow harvest]. + if set to true [force scan whole map]. + if set to true [ignore reservations]. + The minimum preference override. + + + + + Gets the cannibal status of food for pawn. + + The race definition. + The food source. + + + raceDef + or + foodSource + + + + + Tries the find best food source for the given getter and eater. + + Tries to find the best food source for the given getter and eater, taking into account humanoids that can eat plants + The getter. + The eater. + if set to true [desperate]. + The food source. + The food definition. + if set to true [can refill dispenser]. + if set to true [can use inventory]. + if set to true [allow forbidden]. + if set to true [allow corpse]. + if set to true [allow socially improper]. + if set to true [allow harvest]. + if set to true [force scan whole map]. + if set to true [ignore reservations]. + The minimum preference override. + + + + + the status of the cannibal thought to receive + + + + + the pawn did not eat anything they would consider cannibalism + + + + + The pawn directly ate something they would consider cannibalism + + + + + the pawn ate something they would consider cannibalism as an ingredient + + + + + static class containing various grammar related utilities + + + + + Gets the null rule. ie the rule that evaluates to an empty string + + The key word. + + + + + static class containing pawnmorpher specific history event argument names + + + + + the argument name for a mutation + + + + + label for a new morph def + + + + + label for an old morph def + + + + + label for a morph def + + + + + label for an animal pawnkindDef + + + + + label for the old sapience level + + + + + label for the new sapience level + + + + + label for the faction responsible for some event + + + + + label for the transformed pawn + + + + + label for the source of something + + + + Static container for HistoryEventDef (event system for percepts). + + + + Whenever a mutation is gained + + args: + Doer(pawn) + Mutation(Mutation) + + + Whenever a mutation is lost + args + Doer(Pawn) + Mutation(Mutation) + + + Whenever a pawn becomes a former human + args: + Doer(pawn) + Animal(PawnkindDef) + FactionResponsible(Faction) can be null + Source(MutagenDef) the mutagen that caused the transformation + + + Whenever a pawn is no longer a former human + args: + Doer(pawn) + Animal(PawnKindDef) + FactionResponsible(Faction) can be null + Source(MutagenDef) the mutagen that caused the reversion + + + + Whenever a pawn is transformed into a morph + + args: + Doer(pawn) + OldMorph(MorphDef) can be null + NewMorph(MorphDef) + + + + Whenever a pawn is reverted + + args: + Doer(pawn) + Morph(morphDef) + FactionResponsible(Faction) can be null + + + Whenever sapience level changes + args: + Doer(pawn) + OldSapienceLevel(SapienceLevel) + NewSapienceLevel(SapienceLevel) + + + + when a former human goes permanently feral + + args: + Doer(pawn) the pawn that went permanently feral + + + + event for when a former human hunts another animal either due to hunger or as a mental break + + args: + Doer(pawn) the pawn that hunted + VICTIM(pawn) what the pawn hunted + + + + event for when a former human grazes (eats either live plants, seeds or trees) + + args: + Doer(pawn) the pawn that grazed + VICTIM(Thing) the thing the pawn ate + + + + event for when a former human eats a raw corpse + + args: + Doer(pawn) + + + + history event for when a pawn applies mutagenics on another pawn + + args: + Doer(pawn): the pawn applying the mutagenics + Victim(pawn): the pawn they are being applied on + + + + event for when a pawn sows mutagenic plants + + args: + Doer(pawn): the pawn sowing + SUBJECT (thingDef): the plant def being sowed + + + + event for when a pawn creates + + args: + Doer: the pawn making the weapon + SUBJECT (thingDef): the weapon def being made + + + + static class for history related utilities + + + + + determine if the given doer is willing to do this event def. + + The event definition. + The doer. + + + eventDef + or + doer + + + + + static class containing additional ideology utilities + + + + + Tries to get a meme variant of a thing for the given pawn. + + + The tuple. + The pawn. + The value. + The is valid function. + + + tuple + or + pawn + + + + + Determines whether the ideology has a position on the given issue. + + The ideo. + The issue. + + true if the ideology has a position on the given issue; otherwise, false. + + + + + static class that generates all implicit defs in the mod + + + + + Generates the implicit defs. + + + + + static class containing commonly used issue defs + + + + + The pm sapience loss issue + + + + + issue for former human behaviour + + + + + + + + + + The sheep + + + + + static class containing various plant related utility functions + + + + + Gets all mutant plants. + + + The mutant plants. + + + + + Gets the mutant version of the given plant + + The plant. + + plant + + + + Determines whether this instance is a mutant plant. + + The plant. + + true if this instance is a mutant plant ; otherwise, false. + + plant + + + + Determines whether this is a mutant plant . + + The definition. + + true if this is a mutant plant; otherwise, false. + + + + + Tries to substitute the plant for its mutant variant. + + The original plant. + if set to true always kill original even is there is no mutant plant variant. + if set to true mutated plants can themselves mutate. + + + + def of for prisoner interaction mode defs + + + + + The interaction mode for transforming prisoners + + + + + static class for relationship utilities + + + + + Determines whether this pawn is related to a colonist pawn by anything other than a bond. + + The pawn. + + true if this pawn is related to a colonist pawn; otherwise, false. + + pawn + + + + Returns the most important colonist related to this pawn, along with the relationship + + The pawn. + + true if this pawn is related to a colonist pawn; otherwise, false. + + pawn + + + + static def of class containing research project defs + + + + + The injectors research + + + + + static def of class for common SoundDefs + + + + + sound of using an injector + + + + + The recipe cook meal sound + + + + + static def of class for commonly used stats + + + + + stat that influences how fast a pawn adapts to new mutations + + has a range of [-1,2] + values less then 0 means the pawn gets worse with mutations over time + values greater then 0 mean the pawn gets better with mutations over time + default value is 1 + + + + stat that controls how large a change in control is caused by a change in instinct + + use the inverse of this value to get the multiplier + + + + stat that influences the amount of control a sapient animal has before going feral + + + + + stat that determines how likely pawns will stop adapting to mutations + + + + + Multiplier on the impact of mutagenic buildup on this creature. + + + + + stat that controls the maximum a pawn's sapience can be + + + + + this stat is the %chance a pawn will get sick from dangerous foods + + note, the check is applied after the initial check on the food itself, so the actual chance a pawn will get sick from + a specific, dangerous food is this multiplied by the food's FoodPoisonChanceFixedHuman stat + + + + this stat is the %chance a pawn will get sick from rotten foods + + note, the check is applied after the initial check on the food itself, so the actual chance a pawn will get sick from + a specific, rotten food is this multiplied by the base chance to get sick from rotten food + + + + the concentration of mutanite in a thing, this is used by refineries to determine how much of a thing is required to make mutanite + + + + + how good the pawn is at using natural weapons + + + + + how fast the pawn is at using natural weapons + + + + + stat that affects the likely hood that a pawn fully transforms + this is a multiplier on the transformation chance + + + + + stat that determines how much 'sapience' a pawn recovers over time + + + + + how much pain a pawn receives from mutations and transformations. percentage from [0,) + + + + + Multiplier on the total pawn body size. + + + + + Controls whether or not the pawn can use the flight ability. + + use the inverse of this value to get the multiplier + + + + The drug synthesis speed stat + + + + + static class containing use + + + + + Gets the animal selector icon. + + + The animal selector icon. + + + + + Gets the part picker icon. + + + The part picker icon. + + + + + Gets the tagrifle icon. + + + The tagrifle icon. + + + + + Gets the merging icon. + + + The merging icon. + + + + + Gets a purple mutagenic hazard logo. + + + + + Gets a red mutagenic hazard logo. + + + + + Gets a yellow mutagenic hazard logo. + + + + + Gets a green mutagenic hazard logo. + + + + Not in base ThingCategoryDefOf + + + + static class for various thing/pawn related utilities + + + + + Gets the correct position, taking account of whether or not this thing is held by something + + The thing. + + thing + + + + Gets a debug label for the given thing. useful for debug printing + + The thing. + + + + + Gets the correct map, taking account of whether or not this thing is held by something + + The thing. + + thing + + + + static container for thought related utilities + + + + + Creates the venerated animal memory, setting the venerated animal tag as required + + The definition. + The animal definition. + From precept. + + + def + or + animalDef + + + unable to convert {def.defName}'s thought to + {nameof(MutationMemory_VeneratedAnimal)} - def + + + + + get the substitute thought for the given pawn + + The definition. + The pawn. + the substitute thought if one exists, if not the original thought + + + + Gets the substitute memory to be used with the given pawn + + The memory. + The pawn. + + the substitute memory to be used with the given pawn, if no substitute exists it just returns the original + pawn + + + + + precept comp that adjusts a former human's preference to their feral counterpart + + + + + + Gets the priority. + + used for determining if multiple adjustors are present. 'lower' values override higher ones + + The priority. + + + + + Adjusts the preferability. + + The eater. + The thing to eat. + + the preferability, null if no adjustment is needed + + + + + + Adjusts the preferability. + + The eater. + Type of the food. + null if no adjustment is needed + + + + get the minimum hunger level to hunt for the given eater. + + note this will not make a pawn that doesn't normally hunt, hunt + The eater. + the hunger level the eater will hunt at, null if they shouldn't or use the default level + + + + precept comp for giving relationship dependent thoughts to pawns + + + + + + The event definition this comp looks for + + + + + Gets the traits affecting this precept comp + + + The traits affecting. + + + + + Notifies the member witnessed action. + + The ev. + The precept. + The member. + + + + self took thought that provides overrides for given memes + + + + + + The entries + + + + + gets all configuration errors. + + The parent. + + + + + called when a member takes a specific action + + The ev. + The precept. + if set to true [can apply self took thoughts]. + + + + Determines whether this instance can give the given thought to the pawn + + The pawn. + The t definition. + + true if this instance can give the given thought to the pawn otherwise, false. + + + + + Gets the best thought for. + + The pawn. + + + + + meme thought entry class + + + + + The meme + + + + + The thought + + + + + gets all configuration errors. + + The parent. + + + + + Performs an explicit conversion from to + . + + The entry. + + The result of the conversion. + + + + + precept comp for giving a thought based on a venerated animal mutation + + + + + + The history event to look for + + + + + The thought definition to give + + + + + gets all configuration errors with this instance. + + The parent. + + + + + called when a pawn with an ideo with the given precept takes an action or has an action done to them + + The ev. + The precept. + if set to true [can apply self took thoughts]. + + + + Gets the animal from the given history event . + + The history event. + The ideo. + + the animal from the event. if null the thought will not be given + + + + + precept comp for giving venerated animal mutation thoughts + + + + + + Gets the animal from the given history event . + + The history event. + The ideo. + + the animal from the event. if null the thought will not be given + + + + + precept comp for giving venerated morph thoughts + + + + + + if this is for reversion + + + + + Gets the animal from the given history event . + + The history event. + The ideo. + + the animal from the event. if null the thought will not be given + + + + + comp for giving thoughts related to venerated animal transformations + + + + + + Gets the animal from the given history event . + + The history event. + The ideo. + + the animal from the event. if null the thought will not be given + + + + + class representing a production boost + + + + filter to specify which hediffs to boost production to + + + is a increase/decrease in production Hediff's severity + + + Gets the boost to the specific hediff. + The hediff. + + + + + static class that generated implicit recipe defs + + + + + Gets all recipe defs . + + + All recipes. + + + + + Generates the recipe defs. + + + + + enum represented how restricted a mutation category is when trying to record mutation in the database + + + + + the category is unrestricted, and can spawn freely + + + + + the mutations can be gotten though genomes of any restricted category + + + + + The mutations are always un recordable + + + + + ritual outcome effect worker that adds a random number of mutations of a venerated animal on a target + + + + + + translation id for the translated outcome text + + + + + the tag that refers to the number of pawns mutated in the ritual + + + + + the tag for members of this ritual + + + + + Applies the effect on the given ritual . + + The total presence. + The job ritual. + The outcome. + The extra outcome desc. + The letter look targets. + + + + + Determines whether this instance with the specified ritual can be applied + + The ritual. + The map. + + + + + Gets the mutation count. + + The pawn. + The outcome chance. + + + + + Gets the mutations to add onto the given target + + The target. + The job ritual. + The outcome. + The venerated animal that was chosen + + + + + Gets the targets to add mutations onto + + The job ritual. + The outcome. + + + + + Initializes the ritual effects. called when starting to process the effects of this ritual + + The ritual. + The outcome. + + + + static class containing commonly used ritual role tags + + + + + tag used to define a 'target' role, used to assign outcomes of an effect onto a specific role + + + + + base role requirement containing useful features for pawnmorpher + + + + + + if the condition is + + + + + Mets the specified p. + + The p. + The role. + + + p + or + role + + + + + determine if the given pawn meets the conditions of this requirement for the given role. + + The p. + The role. + + + + + role requirement for ensuring a pawn is always a former human + + + + + + The minimum sapience level + + + + + determine if the given pawn meets the conditions of this requirement for the given role. + + The p. + The role. + + + + + a specific state c pawn's 'sapience/mind' can be in, like FormerHuman, Animalistic, ect. + + + + + + Gets the pawn this state is for + + + The pawn. + + + + + Gets a value indicating whether this state makes the pawn count as a 'former human'. + + + true if this state makes the pawn count as a 'former human'; otherwise, false. + + + + + Adds the or remove dynamic components. + + + + + Gets the current sapience level + + + The current sapience. + + + + + called after every tick + + + + + Gets the current intelligence. + + + The current intelligence. + + + + + Gets the state definition. + + + The state definition. + + + + + Gets the tracker. + + + The tracker. + + + + + called when a pawn enters this sapience state + + + + + called when the pawn exits this state + + + + + Initializes this instance with the specified sapience tracker. + + The sapience tracker. + + + + called to save/load all data. + + + + + Initializes this instance. + + this is always called before enter and after loading a pawn + + + + clean up the pawn when making them feral . + + + + + def for specific state a pawns 'sapience/mind' can be in, such as FormerHuman, Animalistic, ect. + + + + + + The state type + + + + + the hediff the pawn is given when in this sapience state + + + + + if a pawn in this state can go permanently feral + + + + + Creates a new state instance. + + + + + + Gets all configuration errors with this instance + + + + + + sapience state for 'animalistic' humanoids + + + + + + Gets a value indicating whether this state makes the pawn count as a 'former human'. + + + true if this state makes the pawn count as a 'former human'; otherwise, false. + + + + + Gets the current intelligence. + + + The current intelligence. + + + + + called after every tick + + + + + called to save/load all data. + + + + + Adds the or remove dynamic components. + + + + + called when a pawn enters this sapience state + + + + + called when the pawn exits this state + + + + + Initializes this instance. + + this is always called before enter and after loading a pawn + + + + sapience state for former humans + + + + + + Gets a value indicating whether this state makes the pawn count as a 'former human'. + + + true if this state makes the pawn count as a 'former human'; otherwise, false. + + + + + called after every tick + + + + + Gets the current intelligence. + + + The current intelligence. + + + + + called when the pawn exits this state + + + + + called to save/load all data. + + + + + Adds the or remove dynamic components. + + + + + Initializes this instance. + + this is always called before enter and after loading a pawn + + + + sapience stat for a merged pawn + + + + + + Initializes this instance. + + this is always called before enter and after loading a pawn + + + + class for giving sapient animals mental breaks + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The pawn. + + + + Gets a value indicating whether an extreme break is imminent. + + + true if an extreme break is imminent; otherwise, false. + + + + + Gets a value indicating whether a major break is imminent. + + + true if a major break is imminent; otherwise, false. + + + + + Gets a value indicating whether a minor break is imminent. + + + true if a minor break is imminent; otherwise, false. + + + + + Gets a value indicating whether an extreme break is approaching. + + + true if an extreme break is approaching; otherwise, false. + + + + + Gets the current mood. + + + The current mood. + + + + + Gets the break threshold extreme. + + + The break threshold extreme. + + + + + Gets the break threshold major. + + + The break threshold major. + + + + + Gets the break threshold minor. + + + The break threshold minor. + + + + + Gets all sapient animal mental breaks. + + + All sapient animal mental breaks. + + + + + Gets the pawn this thing is attached to. + + + The pawn. + + + + + Gets a value indicating whether this instance can do random mental breaks. + + + true if this instance can do random mental breaks; otherwise, false. + + + + + Gets the current possible mood breaks. + + + The current possible mood breaks. + + + + + + The intensity. + + + + + + Notifies this instance that the pawn recovered from mental break. + + + + + Ticks this instance. + + + + + Tries the do random mood caused mental break. + + + + + + + Do the ui elements for this scenario part. + + + + + + Stores color data needed to color a pawn. + + + + Color slots + + + Skin color 1 + + + Skin color 2 + + + Hair color 1 + + + Hair color 2 + + + Skin color 1 + + + Skin color 2 + + + Hair color 1 + + + Hair color 2 + + + Called during IExposable's ExposeData to serialize data. + + + + interaction worker for former human recipients + + + + + + Gets the base interaction chance. + + + The base interaction chance. + + + + + called when the initiator interacts with the specified recipient. + + The initiator. + The recipient. + The extra sentence packs. + The letter text. + The letter label. + The letter definition. + The look targets. + + + + gets the random selection weight for the initiator and recipient interacting + + The initiator. + The recipient. + + + + + Abstract base class for all PMInteractionWorkers that work like base-game + interactions + + + + + The base interaction worker this def is based on + + The base worker. + + + + + Gets the random selection weight for this interaction. + + The initiator. + The recipient. + The selection weight. + + + + Interaction worker that functions like chitchat worker + + + + + The base interaction worker this def is based on + + The base worker. + + + + Interaction worker that functions like InteractionWorker_DeepTalk + + + + + The base interaction worker this def is based on + + The base worker. + + + + Interaction worker that functions like InteractionWorker_KindWords + + + + + The base interaction worker this def is based on + + The base worker. + + + + Interaction worker that functions like InteractionWorker_Slight + + + + + The base interaction worker this def is based on + + The base worker. + + + + Interaction worker that works like base InteractionWorker_Insult + + + + + The base interaction worker this def is based on + + The base worker. + + + + base class for all Pawnmorph interaction workers + + + + + Gets the interaction definition. + The definition. + + + + Gets the base weight for the given initiator and recipient pawns + + The initiator. + The recipient. + + + + + def for pawnmorph specific interactions + + + + + Get all Configuration Errors with this instance + + + + The weights applied based on the initator's mutations + + + The weights applied based on the recipients's mutations + + + An additional multiplier on the weight of the interaction + + + if both the initiator and recipient need to have non-zero weights for the resultant weight to be non zero + + + + Gets the modified interaction weight for the given initiator and recipient pawns + + The initiator. + The recipient. + + + + + A def that describes interaction weights for pawnmorpher-specific interactions. + This allows interactions to be weighted based on the mutations of the initatior + and/or recipient of the interaction. Interactions can also require specific + mutations and/or morphs before they will trigger at all. + + + + If specified, at least one of these mutations is required for this interaction to trigger. + Does not affect the weight of the interaction. + + + If specified, all of these mutations are required before this interaction triggers. + Does not affect the weight of the interaction. + + + If specified, only a pawn that's one of these kinds of morph can trigger this interaction. + Does not affect the weight of the interaction. + + + Weight added to the interaction for each instance of a given mutation + + + Weight added to the interaction for being a specific kind of morphs + + + + Gets the total interaction weight for the given pawn based on this def. + The higher the weight the more likely this interaction is going to be picked. + The weight is relative to the vanilla version of the interaction. For example, + a weight of 2 means the interaction will happen twice as often as the vanilla version. + + The pawn. + + + + + stock generator for generating genomes for sale + + + + + + if this should generate genomes for 'restricted' mutations + + + + + The category filter + + + + + Generates the things. + + For tile. + The faction. + + + + + checks if this generator handles the given props. + + The thing definition. + + + + + stock generator for getting all injectors of a specific morph or under an animal class + + + + + + The animal class or morph to get the injectors of + + + + + Generates the things. + + For tile. + The faction the things are being generated for. + + + + + checks if this handles the specified thing definition. + + The thing definition. + + + + + struct for storing + + + + + The multiplier for manhunter chance + + this is multiplied against the mod's manhunter chance, ex. setting it to 2 will make double the chance for it to happen + + + + offset for the + + + + + Gets the default settings. + + + The default. + + + + + settings that means the pawn will never manhunter when tf'd + + + The never. + + + + + settings that will always cause the pawn to manhunter when transformed + + + The always. + + + + + gets the overall manhunter chance + + if set to true this is the chance for a friendly pawn. + + + + + implementation of mutagen that merges 2 or more pawns into a single meld + + + + + + Determines whether this instance can revert pawn the specified transformed pawn. + + The transformed pawn. + + true if this instance can revert pawn the specified transformed pawn; otherwise, false. + + + + Returns true if the given request is valid. + The request. + + true if the specified request is valid; otherwise, false. + + + + + Determines whether this instance can transform the specified pawn. + + The pawn. + + true if this instance can transform the specified pawn; otherwise, false. + + + + + preform the requested transform + + The request. + + + + + Tries to revert the transformed pawn instance, implementation. + + The transformed pawn. + + + + + Applies the post tf effects. + this should be called just before the original pawn is cleaned up + + The original. + The transformed pawn. + The transformation request + + + + Tries to revert the given pawn. + + The transformed pawn. + + + + + base class for all mutagen types + + + + + the influence of mood on the sapience level drop. + + + + + the influence of mutagen on the sapience level drop. + + + + + minimal value of mood so the formula determining the sapiance only considers mood. + + + + Gets the game comp. + The game comp. + + + + tries to infer the faction responsible for turning the original pawn into an animal + + The original pawn. + + + + The definition + + + + Applies the apparel damage to the given pawn + + The pawn. + The new race. + + pawn + or + newRace + + + + + Transforms the specified request and preforms all necessary cleanup after the transformation if successful + + implementers should make sure to preform all necessary cleanup of the pawn post transformation + The request. + the transformed pawn instance to be added to the database, should return null if the request cannot be met + + + + Determines whether this instance can infect the specified pawn. + + The pawn. + + true if this instance can infect the specified pawn; otherwise, false. + + + + + Determines whether this instance can infect the specified race definition. + + The race definition. + + true if this instance can infect the specified race definition; otherwise, false. + + + + + used to generate a debug message for whether a race can be infected by this mutagen + + The race. + The builder. + + + + Determines whether the given pawn has any immunizing hediffs + + The pawn. + + true if the given pawn has any immunizing hediffs; otherwise, false. + + + + + gives the transformed pawn the correct sapience state for this mutagen + + The transformed pawn. + The initial level. + transformedPawn + + + + gives the reverted pawn the correct sapience state for this mutagen + + The reverted pawn. + The initial level. + revertedPawn + + + + Sends the reversion event. + + The pawn. + The animal definition. + The faction responsible. + + + + Sends the transformed event. + + The pawn. + The animal definition. + The faction responsible. + + + + Gets the manhunter chance for the given request + + The request. + + request + + + + Determines whether this instance can transform the specified pawns. + + The pawns. + + + + Determines whether this instance can transform the specified pawn. + + The pawn. + + true if this instance can transform the specified pawn; otherwise, false. + + + + + Determines whether this instance can transform the specified race definition. + + The race definition. + + true if this instance can transform the specified race definition; otherwise, false. + + + + + Try to revert the given instance of the transformed. + + The transformed pawn. + + + + + Tries to revert the given pawn. + + The transformed pawn. + + + + + Determines whether this instance can revert the specified transformed pawn. + + The transformed pawn. + + true if this instance can revert the specified transformed pawn; otherwise, false. + + + + + Applies the post tf effects. + this should be called just before the original pawn is cleaned up + + The original. + The transformed pawn. + The transformation request + + original + or + transformedPawn + or + request + + + + + Gets the sapience level for the given original and transformed pawn + + The original. + The transformed pawn. + + + + + generic base class for all mutagens for convenience + + the type of TransformedPawn this type consumes + + + + Determines whether this instance can revert pawn the specified transformed pawn. + + The transformed pawn. + + true if this instance can revert pawn the specified transformed pawn; otherwise, false. + + + + + preform the requested transform. + + implementers should make sure to preform any cleanup/hiding of the original pawns + The request. + + + + Returns true if the given request is valid. + The request. + + true if the specified request is valid; otherwise, false. + + + + + Transforms the specified request. + + The request. + + + + + Determines whether this instance can revert the specified pawn. + + The pawn. + + true if this instance can revert the specified pawn; otherwise, false. + + pawn + tfPawn instance of type {pawn.GetType().Name} can not be cast to {typeof().Name} + + + + Try to revert the given instance of the transformed. + + The transformed pawn. + + + + + Tries to revert the transformed pawn instance, implementation. + + The transformed pawn. + + + + + exception thrown when an invalid TransformedPawn instance is encountered + + + + + Initializes a new instance of the class. + + + Initializes a new instance of the class with a specified error message. + The message that describes the error. + + + Initializes a new instance of the class with a specified error message and a reference to the inner exception that is the cause of this exception. + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + Initializes a new instance of the class with serialized data. + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + simple implementation of Mutagen that just transforms a single pawn into a single animal + + + + + + Determines whether this instance can transform the specified pawn. + + The pawns. + + + + Tries to revert the given pawn. + + The transformed pawn. + + + + + Determines whether this instance can revert pawn the specified transformed pawn. + + The transformed pawn. + + true if this instance can revert pawn the specified transformed pawn; otherwise, false. + + + + Returns true if the specified request is valid. + The request. + + true if the specified request is valid; otherwise, false. + + + + + preform the requested transform + + The request. + + + + + Applies the post tf effects. + this should be called just before the original pawn is cleaned up + + The original. + The transformed pawn. + The transformation request + + + + Tries to revert the transformed pawn instance, implementation. + + The transformed pawn. + + + + + preforms effects on either the original or transformed pawn after all core reversion effects are completed but before transformed pawn is cleaned up and destroyed + + The original. + The animal. + + + + Sets the humanoid sapience upon reversion. + + The humanoid. + The animal. + + + + transfers or removes bond relationships from reverted animal to the original + + The original. + The reverted animal. + + + + add the correct reversion thought at the correct stage + + The spawned. + + + + class representing the request to transform pawns + + + + + Returns true if this instance is valid. + + + true if this instance is valid; otherwise, false. + + + + + Initializes a new instance of the struct. + + The output definition. + The original. + the maximum severity of the former human hediff + + + + Initializes a new instance of the struct. + + The output definition. + The original. + the maximum severity of the former human hediff + + + + Initializes a new instance of the struct. + + The output definition. + The originals. + + + + the tick this transformation is taking place, a null value indicates it happened some unknown amount of time in the past + + + + The pawns to be transformed + + + The output pawn kind + + + The forced gender option + + + + if forcedGender is None, the chance to switch genders + + + + The cause of the transformation + + + The tale to record + + + + if true, send transformation event + + + + + optional backstory override + + + + + override for the manhunter settings of the given animal + + + + + if not null then this represents the sapience level the tf'd pawn will have + + + + + if true, no notification will be sent about the transformation + + + + + if true add mutation to original + + + + + The faction responsible for this transformation + + + + + the faction to put the resultant pawn into + + + + + The minimum severity of the former human hediff + + + + + The minimum severity of the former human hediff + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + base class for storing a "transformed pawn" in such a way that the original can be retried + + + + The mutagen definition + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + timestamp the pawns were transformed. + + + Exposes the data. + + + + Gets tick the pawns were transformed . + + + the tick the pawns were transformed. A null value indicates the pawn(s) were transformed an unknown amount of time + in the past + + + + + Gets the faction that turned this pawn into an animal. + + + The faction responsible. + + + + + Gets the original pawns. + + + The original pawns. + + + + + Gets the transformed pawns. + + + The transformed pawns. + + + + + Returns true if this instance is valid. + + + true if this instance is valid; otherwise, false. + + + + + Gets a value indicating whether this instance can be reverted. + + + true if this instance can be reverted; otherwise, false. + + + + Gets the originals debug string. + The originals debug string. + + + Gets the transformed debug string. + The transformed debug string. + + + Creates a new transformed pawn instance out of the given original pawn and transformed pawn. + for backwards compatibility with old saves, should not be used in new code + The original. + The transformed. + + + + Creates a new TransformedPawn instance out of the given original pawns and the specified transformed pawn + for backwards compatibility with old saves, should not be used with new code + The originals. + The transformed. + + + + Create a new TransformedPawn instance from the given original pawns and the transformed pawn + for backwards compatibility with old saves, should not be used with new code + The original0. + The original1. + The meld. + + + + Creates the specified inst. + for backwards compatibility with old saves, should not be used with new code + The inst. + + + + Creates the specified inst. + for backwards compatibility with old saves, should not be used with new code + The inst. + + + + + Gets the status of the given pawn with regards to this instance + + The pawn. + if the pawn is the original pawn, transformed pawn, or null if neither + + + generates a debug string + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + transformed pawn instance for a single original-animal pair + + + + + The original pawn + + + The transformed pawn + + + + The reaction status + + + + + The faction responsible for turning this pawn into an animal + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + timestamp the pawns were transformed. + + + + Gets the faction that turned this pawn into an animal. + + + The faction responsible. + + + + Gets the original pawns. + The original pawns. + + + Gets the transformed pawns. + The transformed pawns. + + + + Gets a value indicating whether this instance can be reverted. + + + true if this instance can be reverted; otherwise, false. + + + + Exposes the data. + + + + TransformedPawn instance for merged pawns + + + + + + The faction responsible for turning this pawn into an animal + + + + The original pawns + + + The resultant meld + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + timestamp the pawns were transformed. + + + + Gets the faction that turned this pawn into an animal. + + + The faction responsible. + + + + Gets the original pawns. + The original pawns. + + + Gets the transformed pawns. + The transformed pawns. + + + + Gets a value indicating whether this instance can be reverted. + + + true if this instance can be reverted; otherwise, false. + + + + Exposes the data. + + + + the different transformation statuses a pawn can have + + + + the pawn is the original, untransformed pawn + + + the pawn is the result of a transformed pawn + + + Enum for the 3 possible states a pawn can be in (in relation to 'ether' hediffs). + + + + the pawn is not ether broken or bonded + + + + pawn is considered 'broken' and should receive no or small penalties to producing + + + pawn is considered 'bonded' and should receive bonuses for producing + + + Static container for faction related utilities. + + + Notify this faction that one of their pawns has been transformed. + + + + Notifies the this faction that their member was reverted by the player. + + The faction. + The member. + The animal. + if set to true [was world pawn]. + The map. + + faction + or + member + or + animal + + + + Notify this faction that it's leader has been transformed. + + + + game condition for mutagenic fallout + + + + + update this game condition + + + + + draw the overlay to the map + + + + + + + + + + + + + get the sky target for this condition + + + + + + + do a steady effect on the given cell + + + + + + + return a modifier for the animal spawn rate + + + + + + + return a modifier for the plant spawn rate + + + + + + + if pawns can still do recreation outside + + + + + + + return all sky overlays used for this condition + + + + + + + hediff giver for giving a mutation + + + + + The mean time between when the parent Hedif is applied and this HediffGiver performs its opperations. + + + The gender to preferentially apply this hediff to. + + + The chance (out of 100) that the hediff will be applied. + + + The tale to add to the art pool. + + + The thought to add to the pawn if they acquire the hediff. + + + Whether or not the thought should be added despite what the mod's settings dictate. + + + + The MTB units + + + + + Whether or not the curent HediffGiver has tried to add this hediff.
      + Used to prevent the chance from activating if spammed repeatedly. +
      +
      + + Clears the triggeredHediff from this giver so it can trigger again on the same hediff. + The triggered hediff. + + + The function that does the heavy lifting for a HediffGiver. + The pawn the parent hediff is applied to. + The parent hediff where this HediffGiver is located in. + + + Tries the apply the mutation to the given pawn + The pawn. + The mutagen definition. used to determine if it's a valid target or not + The out added hediffs. + The cause. + if set to true [add log entry]. + if the mutation was added or not + + + tries to apply the mutations to the given body part records + The pawn. + The records to add. + The mutagen. + + + + Tries to apply the mutation to the given body part record + The pawn. + The record to add. + The mutagen. + + + + Interface for thing comps that want to receive events when the pawn gains or loses mutation. + + + called when a mutation is added + The mutation. + The tracker. + + + called when a mutation is removed + The mutation. + The tracker. + + + + ingestion outcome doer that forces a full transformation + + + + + + if true then to complete the tf the pawn must be in a 'reeling' state + + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion outcome dooer for the reverter serum. reverts transformed pawns to their original state + + + + + The black list of mutagens this instance cannot revert + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion outcome doer that gives all hediffs + + + + + the chance to give the complete tf instead of the partial + + + The severity to set the hediff at + + + The tolerance chemical + + + if true, the severity to set by is divided by the pawns body size + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion outcome doer that gives hediffs if none are present + + + + + list of partial hediffs to add + + + + list of complete hediffs to add + + + + The chance to add a hediff from the complete list rather then the partial list + + + The severity + + + The tolerance chemical + + + if true the starting severity is modified by the pawns body size + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + Base class for all ingestion outcome doers that pick from more then one tf hediff to add. + + + + the partial hediffs to add + + + + the complete hediffs to add + + + + setting for getting hediffDefs at runtime + + + Gets all complete defs. + All complete defs. + + + Gets all partial defs. + All partial defs. + + + + class representing the settings for getting hediff defs at runtime + + + + The types to get + + + if true, the categories will exclude, not include things + + + The categories to get hediffDefs from + + + + job driver for carrying a pawn to a mutagenic chamber + + + + + Gets the pawn being taken + The takee. + + + Gets the mutagenic chamber + The drop pod. + + + Tries the make pre toil reservations. + if set to true [error on failed]. + + + + Makes the new toils. + + + + gets the Tale parameters. + + + + + job driver for making a pawn enter a mutagenic chamber + + + + + Tries the make pre toil reservations. + if set to true [error on failed]. + + + + Makes the new toils. + + + + + ingestion outcome doer for adding severity to specific hediffs + + + + filter for hediffs to boost severity about + + + filter for hediff types to boost severity for + + + if a hediff must pass through all filters, otherwise they must pass through any filter + + + The severity to add + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + ingestion out come doer that adds an aspect to a pawn + + + + + The aspect to add + + + If true will increase the stage of the aspect by 1 every time the thing is consumed. + + + + The stage to set the aspect at + + + + + if the pawn has the same aspect at a different stage, this will force it to the given stage + + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + Interface for things that receive race change event. + + + + Called when the pawn's race changes. + + The old race. + + + Def for representing the 'category' a morph can be in. + + + + The associated mutation category with this morph category, all mutations directly associated with a morph in this category will be in this category + + + + + if morphs in this category should be considered 'restricted' + + + + Gets all morphs in this category. + All morphs in categories. + + + + Resolves the references. + + + + Static class containing commonly referenced MorphCategoryDefs. + + + Def class for a morph. Used to generate the morph's implicit race. + + + + The categories that the morph belongs to.
      + For example, a Pigmorph belongs to the Farm and Production morph groups. +
      +
      + + + The adjective for this morph. ex. wolf morph should be "wolfish" or "lupine" + + + + + The creature this race is a morph of.
      + For example, a Wargmorph's race should be Warg. +
      +
      + + + The associated animals + + these are a list of animals that are associated with this morph but who don't influence the hybrid race + transformation targets + setting this is useful for getting mutations for animals that don't have morphs yet + + + + Gets the explicit hybrid race. + + + The explicit hybrid race. + + + + + if true, then all restricted mutations (not just those that are directly tied to this morph) will be added to + + + + + The genus of this morph + this should be a class like 'canis' + + + + + The group the morph belongs to.
      + For example, a Huskymorph belongs to the pack, while a Cowmorph is a member of the herd. +
      +
      + + Various settings for the morph's implied race. + + + Various settings determining what happens when a pawn is transformed or reverted. + + + Aspects that a morph of this race get. + + + + The full transformation chain + + + + + properties for the generated full tf hediff + + + + + The partial transformation chain + + + + + properties for the generated partial tf hediff + + + + + The injector definition + + + + + if this morph should have no injector or hediff specific for it + + Note: this is for suppressing warnings about missing injectors + + + + The properties for the generated injector def + + + + The morph's implicit race. + + + + Gets the animal pawnkinds associated with this morph. + + + + + Gets the children. + + + The children. + + + + + Gets the label. + + + The label. + + + + + Gets the parent class. + + + The parent class. + + + + Gets an enumerable collection of all the morph type's defs. + + + + Gets all associated animals. + + + All associated animals. + + + + + Gets the categories. + + + The categories. + + + + Gets the collection of all mutations associated with this morph def + All associated mutations. + + + + Gets a value indicating whether this is restricted. + + + true if restricted; otherwise, false. + + + + + get all configuration errors with this instance + + + + + + Determines whether this instance contains the object. + + The other. + + true if [contains] [the specified other]; otherwise, false. + + + + Gets the mutation that affect the given part from this morph def + The part definition. + + partDef + + + + obsolete, does nothing + + + + + + + Determines whether the specified hediff definition is an associated mutation . + + The hediff definition. + + true if the specified hediff definition is an associated mutation; otherwise, false. + + hediffDef + + + + Determines whether the specified hediff definition is an associated mutation . + + The hediff definition. + + true if the specified hediff definition is an associated mutation; otherwise, false. + + hediffDef + + + + Determines whether the given hediff is an associated mutation. + + The hediff. + + true if the specified hediff is an associated mutation ; otherwise, false. + + hediff + + + + resolves all references after DefOfs are loaded + + + + Settings to control what happens when a pawn changes race to this morph type. + + + The TaleDef that should be used in art that occurs whenever a pawn shifts to this morph. + + + The content of the message that should be spawned when a pawn shifts to this morph. + + + The message type that should be used when a pawn shifts to this morph. + + + Memory added when a pawn shifts to this morph. + + + + Memory added when the pawn reverts from this morph back to human if they have neither the body purist or + furry traits. + + + + Aspects to add when a pawn changes race to this morph type and settings asociated with them. + + + The Def of the aspect to add. + + + Whether or not the aspect should be kept even if the pawn switches race. + + + + Def for morph groups.
      + i.e. Packs, Herds, ect. +
      +
      + + A list of all morph types that are of this group. + + + + The barrak thought replacement + + + + + The bedroom thought replacement + + + + + The room thought for ascetics + + + + + Gets the animal races in this morph group + + + The animal races. + + + + + The animal races that count toward this group + + + + hediff to give to morphs in this group, + + + The aspect definition to add to all morphs in this group + + + An enumerable collection of all morphs in this group. + + + Mod extension for applying morphs to various PawnKinds. + + + the min and max number of hediffs this kind can have + + + The range for the number of aspects that can be added + + + the chance that a given pawn will be a hybrid race + percentage, [0,1] + + + + if true, then any mutation from can be picked + other wise just one morph is picked + + + + The aspects that can be added by this extension + + + The morph categories that can be chosen from + + + + The mutation categories that can be chosen from, this is in addition to those added by + + + + + list of morphs to get mutations from + + + Gets all aspect defs that can be added by this instance. + + + + Gets the available stages that can be added by the given aspect. + The definition. + + + + + Gets a random set of mutations to be added + + The seed. + + + + + Converts this object to a full debug string + + + + + + class for a single aspect entry in the + + + + The aspect to add + + + The stage to add the aspect at + + + + map component for tracking morphs by type and group on a map + + + + + delegate for notifying when the morph count changed + + The sender. + The morph. + + + Event that is raised every time the morph count on the attached map changes. + + + + Initializes a new instance of the class. + + The map. + + + + Gets the total number of morphs on the map. + + + The total number of morphs on the map + + + + + Gets a value indicating whether there are any morphs on the map + + + true if there are any morphs on the map; otherwise, false. + + + + Notify this tracker that the pawn has spawned. + + + Get the number of morphs belonging to the given group active in the map. + + + Get the number of morphs active on this map. + + + Notify the map that the pawn has despawned from the map. + + + Notify this tracker that the pawn race has changed. + + + Component for tracking the morph related updates of a single pawn. + + + Initializes this instance with the specified properties. + The properties. + + + called during post spawn setup + if set to true [respawning after load]. + + + + called every tick + + + + Notify that the parent has changed races. + The morph the parent used to be. + + + called when the pawn is de-spawned from the given map + The map. + + + + + + + + + + Initializes a new instance of the class. + + + + + enum for telling the different kinds of morph transformation hediffs + + + + a full transformation + + + a partial transformation + + + + Static collection of useful morph related functions.
      + TransformerUtilities was getting a bit crowded. +
      +
      + + + Gets all morph group sleeping thoughts. + + + All morph sleeping thoughts. + + + + + Gets the maximum influence for the given body def. + + The morph. + The body definition. + + + morph + or + bodyDef + + + + + scalar used to make it easier for pawns to become hybrids + + + + the percent influence needed for a single morph to be selected to turn the pawn into, rather then a chimera + + + + the percent human influence below which a pawn is 'no longer considered human' + + + + The maximum possible human influence. + + + + Gets the maximum influence of race. + + The race definition. + + raceDef + + + + + Gets the morph of the given animal. + + The animal definition. + + + + + Determines whether this instance is a chimera. + + The morph. + + true if the specified morph is a chimera; otherwise, false. + + morph + + + + Determines whether this instance is a chimera. + + The pawn. + + true if the specified pawn is a chimera; otherwise, false. + + + + + Checks the race of this pawn. If the pawn is mutated enough it's race is changed to one of the hybrids + + The pawn. + if true, any missing mutations from the highest morph influence will be added + if set to true display race shift notifications. + if set to true send events. + pawn + pawn + + + Gets all morphs. + All morphs. + + + + Tries the get best morph of the specified animal. + + tries to get the best morph def of the given animal, checking first for a morph who's + race is the given race then checks morph's associated animals + The race. + + race + + + Gets all morphDefs associated with the given transformation. + The transformation definition. + + + + Determines whether this instance is a morph. + + The pawn. + + true if the specified pawn is morph; otherwise, false. + + pawn + + + Gets the amount of influence a pawn has that's still human. + the pawn + Whether or not the resulting influence should be normalized between [0,1] + + + + Gets the type of the transformation. + The instance. + The type of the transformation. + inst is null + + + checks if the hybrid system is enabled for the given race def. + The race definition. + + + + + Determines whether this instance is a chimera morph. + + The morph definition. + + true if this instance is a chimera morph; otherwise, false. + + + + + Determines whether this pawn is a hybrid race. + + The pawn. + + true if this pawn is a hybrid race ; otherwise, false. + + pawn + + + + Determines whether this instance is hybrid race. + + The race definition. + + true if this instance is a hybrid race; otherwise, false. + + + + Get whether or not the given pawn should still be considered 'human'. + + + + get the largest influence on this pawn + + + + + + + Def for a mutagen strain.
      + A mutagen is a collection of transformation related hediff's ingestionOutcomeDoers that all share a common IFF + system. +
      + +
      + + + used by the mutation log to add content when this mutagen causes a mutation + + + + + if this mutagen def applies transformation paralysis + + + + if this instance can infect animals + + + + if this instance can infect mechanoids + + + + The mutagen type + + + + the positive thought to add when a pawn is reverted + + + + + The negative thought to add when a pawn is reverted + + + + + the average sapience drop when a pawn is transformed by this mutagen + + note, values returned by this range will be clamped to [0,1] + + + + the standard deviation of the sapience drop when a pawn is transformed by this mutagen + + note, values returned by this range will be clamped to [0,1] + + + + the reversion thought for pawns with primal wish + + + + + sapience state for when a pawn is transformed by this mutagen + + default is FormerHuman + + + + sapience state for when a pawn is reverted from being transformed by this mutagen + + + + + The damage properties + + + + + a list of hediffs that make a pawn immune to the effects of this mutagen source + + + + + The aspect givers + + + + + list of aspect givers that are tried when a pawn transforms + + + + Gets the cached mutagen + The cached mutagen + + + + Adds the mutation and aspects to the given pawn using the aspects attached to this mutagen + + The pawn. + The mutation. + The count to add. + The cause. + The ancillary effects. + if set to true [force]. + + pawn + or + mutation + + + + Adds the mutation and aspects to the given pawn using the aspects attached to this mutagen + + The pawn. + The mutation. + The parts. + The cause. + The count to add. + The ancillary effects. + if set to true [force]. + + + + + Adds the mutation and aspects to the given pawn using the aspects attached to this mutagen + + The pawn. + The mutation. + The body part. + The cause. + The ancillary effects. + + pawn + or + mutation + or + bodyPart + + + + Determines whether this instance can infect the specified pawn. + + The pawn. + + true if this instance can infect the specified pawn; otherwise, false. + + + + + Determines whether this instance can infect the specified race. + + The definition. + + true if this instance can infect the specified race; otherwise, false. + + + + Determines whether this instance can transform the specified pawn. + The pawn. + true if this instance can transform the specified pawn; otherwise, false. + + + + Determines whether this instance can transform the specified race definition. + + The race definition. + + true if this instance can transform the specified race definition; otherwise, false. + + + + Get all Configuration Errors with this instance + + + + + Gets the rules using the given prefix + + The prefix. + + + + + class that stores information about mutagenic damage + + + + + the minimum amount of damage to do to apparel + + + + + The apparel damage multiplier + + + + + how much biproduct to spawn per point of damage + + + + + The biproduct to spawn when apparel takes damage + + + + + collection of mutagen related utility functions + + + + + Clears the overlapping hediffs on the given pawn. + + The mutation giver. + The pawn. + + mutationGiver + or + pawn + + + + + Tries the apply aspects that might be given from this mutagen + + The mutagen. + The pawn. + + mutagen + or + pawn + + + + Determines whether this instance can infect the specified pawn. + The mutation definition. + The pawn. + true if this instance can infect the specified pawn; otherwise, false. + mutationDef or pawn is null. + + + Gets the mutagen associated with this tf hediff. + The morph tf. + morphTf is null. + + + Gets the mutagen associated with this tf hediff. + The morph tf. + morphTf is null. + + + + def representing a 'category' of mutations + + + + + if true, this category will be used to generate a 'genome' that will give a random mutation within this category + + + + + The restriction level of this category + + + + + a custom description for the genome object generated by this category + + + + + The explicit genome definition + + + + + if the associated genome is consumed on use + + + + + Gets the explicit MutationCategoryDef if it exists, otherwise retrieves the implict MutationCategoryDef. + + + + + Gets the number of mutations in the category. + + + The mutations in category. + + + + + Gets all mutations in this category + + + All mutations. + + + + + gets all configuration errors with this instance . + + + + + Log entry for when a pawn mutates. + + + + identifier for a block of text representing the cause of the mutation from a mutagen + + + + + identifier for a block of text representing the default caused by part of the mutation log. + + + + + Initializes a new instance of the class. + + + + + Gets the causes. + + + The causes. + + + + + Initializes a new instance of the class. + + The pawn. + The mutation definition. + The cause for this mutation (optional) + The mutated body part. + + + + Initializes a new instance of the class. + + The pawn. + The mutation definition. + The mutated part. + + + + Initializes a new instance of the class. + + The pawn that was mutated. + The mutation itself. + + + + true if this log is about the given thing. + + The t. + + + + + Exposes the data. + + + + + Gets everything this log is about. + + + + + + Gets the tip string. + + + + + Returns a string that represents the current object. + A string that represents the current object. + + + + create the main log text + + The pov. + if set to true [force log]. + + + + + if a word starts with a vowel, return 'an' else return 'a' + + + + + + Static container for commonly referenced mutations. + + + + enum for how a pawn views mutations + + + + + neutral + + + + + they like the idea of having mutations + + + + + they especially dislike the idea of having mutations + + + + + the pawn wants to be a full animal + + + + + for a transhumanist pawn + + + + Tracker comp for tracking the current influence a pawn has of a given morph. + + + + Gets or sets a value indicating whether debug messages are enabled. + + + true if debug messages are enabled; otherwise, false. + + + + Returns an enumerator that iterates through a collection. + An object that can be used to iterate through the collection. + + + Returns an enumerator that iterates through the collection. + + A that can be used to iterate through the + collection. + + + + + Gets the total normalized non human influence + + + The total normalized influence. + + + + + Gets the non human influence on the pawn. + + + The total influence. + + + + + Gets or sets a value indicating whether the morph influences caches are dirty. + if true the influences will be recalculated on the next tick + + + true if [influences dirty]; otherwise, false. + + + + + Gets the total number of mutations on the pawn being tracked. + + + The mutations count. + + + + Get the current influence associated with the given key. + + + + Gets the mutation log for this pawn. + + + + + Gets the highest influence on this pawn + + + The highest influence. + + + + All mutations the pawn has. + + + + Gets the pawn this is tracking mutations for. + + + The pawn. + + + + + called every tick + + + + + Checks if the pawn's race should change . + + + + + + Gets the normalized direct influence of the given morph + + this does not take into account influence the children of the given class might have on the pawn + The morph. + + morph + + + + Initializes this instance with given props. + + this is call just after it is added to the parent, so other comps may or may not be added yet + The props. + + + + called just before spawning in the pawn + + if set to true [respawning after load]. + + + + Recalculates the mutation influences if needed. + + + + + preforms a full recalculation of all mutation influences + + + + Called to notify this tracker that a mutation has been added. + + + Called to notify this tracker that a mutation has been removed. + + + + exposes this instances data after the parent. + + + + + Called when the pawn's race changes. + + The old race. + + + + Determines whether this instance has the specified mutation. + + The required mutation. + + true if the specified required mutation has mutation; otherwise, false. + + + + + + Deletes all entries from the pawn's mutation log. + + + + + static class containing mutation related utility functions + + + + + Gets a list of all non restricted mutations. + + + All non restricted mutations. + + + + + Initializes the class. + + + + + Gets the minimum mutation adaptability stat value. + + + The minimum mutation adjust value. + + + + + Gets the maximum mutation adaptability value. + + + The maximum mutation adaptability value. + + + + + Gets the average mutation adaptability value. + + + The average mutation adaptability value. + + + + + an enumerable collection of all mutation related thoughts + + + + Gets all mutations with graphics. + All mutations with graphics. + + + + Determines whether this mutation is venerated by the specified ideology. + + The mutation. + The ideo. + + true if this mutation is venerated by the specified ideology; otherwise, false. + + + mutation + or + ideo + + + + + Determines whether this mutation is venerated by the specified ideology. + + The mutation. + The ideo. + + true if this mutation is venerated by the specified ideology; otherwise, false. + + + mutation + or + ideo + + + + + Clears the mutation ideo cache. + + + + + Clears the mutation ideo cache of the specified ideology . + + The ideo. + + + + Gets all mutations on the given pawn + + The p. + + p + + + + Gets the market value for this mutation. + + this can be negative for bad mutations + The m definition. + + + + + Adjusts the mutagenic buildup. + + The pawn. + The amount. + The buildup definition. + + + + Sets all mutations to their natural maximum. + + The mutations. + mutations + + + + Adds all morph mutations. + + The pawn. + The morph. + The ancillary effects. + pawn + or + morph + + + + Tries to add a mutation thought. + + The pawn. + The mutation memory. + if set to true ignore the mutation memory limit in the mod settings. + + + + Determines whether the specified hediff is prosthetic. + + The hediff. + + true if the specified hediff is prosthetic; otherwise, false. + + hediff + + + + Gets the mutations for the given race and preGenerated pawn + + The retrievers. + The race. + The pre generated pawn. + + + retrievers + or + race + + + + + Adds the mutation to the given pawn + + The pawn. + The mutation. + The count to add. + The ancillary effects. + if set to true the mutation will be added regardless if it is valid for the given pawn. + + pawn + or + mutation + + + + Applies the mutation retrievers. + + The retrievers. + The pawn. + The effects. + + + + + Applies the mutation data. + + The m data. + The pawn. + The ancillary effects. + + + mData + or + pawn + + + + + Gets all non missing without prosthetics. + + The h set. + + hSet + + + + Adds the mutation to the given pawn + + The pawn. + The mutation. + The parts. + The count to add. + The ancillary effects. + if set to true the mutation will be added regardless if it is valid for the given pawn. + + pawn + or + mutation + + + + Resumes the adjustment process for this hediff if it is a mutation, does nothing + + Resumes the adjustment process for this hediff if it is a mutation, does nothing if the hediff is not a mutation, the mutation is not halted + or the process is complete + The hediff. + + + + Adds the mutation to the given pawn + + The pawn. + The mutation. + The records to add mutations to + The ancillary effects. + if set to true the mutation is added regardless if the mutation is valid for the given pawn. + + pawn + or + mutation + or + records + + + + Adds the mutation to the given pawn + + The pawn. + The mutation. + The records to add mutations to + The ancillary effects. + + + pawn + or + mutation + or + records + + + + + Determines whether this instance can apply mutations to the specified pawn. + + The mutation giver. + The pawn. + + true if this instance can apply mutations to the specified pawn; otherwise, false. + + + + + Clears the overlapping mutations. + + The mutation definition. + The pawn. + + mutationDef + or + pawn + + + + + Gets all part def mutation sites. + + The mutation definition. + + mutationDef + + + + Gets all mutable part on this body def + + The body definition. + + bodyDef + + + + Gets all mutation sites. + + The mutation definition. + The b definition. + + + + Gets the mutations by part def. + The body part definition. + + + + + try to get the mutation tracker on this pawn, null if the pawn does not have a tracker + + + if the pawn does not have a mutation tracker, display a warning message + + + + + get the pawn's outlook toward being mutated + + + + + + Gets the part to add hediffs to. + The giver. + + + + + get the production hediffs of the pawn + + + + + + + Determines whether this part or any of it's parent is missing at all in the specified pawn. + + The record. + The pawn. + + true if this part or any of it's parents is missing at all in the specified pawn; otherwise, false. + + + record + or + pawn + + + + Determines whether this instance is obsolete. + The definition. + + true if the specified definition is obsolete; otherwise, false. + + def + + + + checks if this mutation overlaps with the given mutation + + The mutation definition. + The other mutation. + + + mutationDef + or + otherMutation + + + + + Determines whether this instance can be applied to the specified pawn + + The mutation definition. + The pawn. + The mutagen. + + true if this instance can be applied to the specified pawn; otherwise, false. + + + mutationDef + or + pawn + + + + + Determines whether this instance can be applied to the specified pawn + + The mutation definition. + The pawn. + The add part. + The mutagen. + + true if this instance can be applied to the specified pawn; otherwise, false. + + mutationDef + or + pawn + + + + checks if this mutation blocks the addition of the other mutation at the given site + + The mutation. + The other mutation. + The add part. + + + mutation + or + otherMutation + or + addPart + + + + + Determines whether the specified pawn has the given mutation. + + The pawn. + The mutation. + + true if the specified pawn has the given mutation; otherwise, false. + + + + + simple struct to contain all options for addition actions to be taken when adding a mutation + + + + + Initializes a new instance of the struct. + + if set to true [add tale]. + if set to true [add memory]. + if set to true [add log entry]. + if set to true [throw magic puff]. + if set to true [memory ignores limit]. + + + + Gets the default value for the ancillary effects + + + The default. + + + + + instance representing no effects + + + The none. + + + + + Gets the no smoke instance + + + The no smoke. + + + + + Gets the history only. + + + The history only. + + + + + Gets a value indicating whether the tale should be added. + + + true if the tale should be added; otherwise, false. + + + + + Gets a value indicating whether the memory should be added. + + + true if the memory should be added; otherwise, false. + + + + + Gets a value indicating whether the log entry should be added log. + + + true if [add log entry]; otherwise, false. + + + + + Gets a value indicating whether throw magic puff. + + + true if magic puffs should be thrown; otherwise, false. + + + + + Gets a value indicating whether the mutation memory should ignore the mod setting's max mutation thought limit + + + true if [memory ignores limit]; otherwise, false. + + + + Returns the fully qualified type name of this instance. + A containing a fully qualified type name. + + + + the mod class + + + + + + A convenience property to get the settings statically + + The settings. + + + + Initializes a new instance of the class. + + The content. + + + Writes the settings. + + + A Unity Rect with the size of the settings window. + + + + Override SettingsCategory to show up in the list of settings.
      + Using .Translate() is optional, but does allow for localisation. +
      + The (translated) mod name. +
      + + + static class for initializing the mod + + + + called when the settings are changed + + + + substitutes all instances of RaceProps Humanlike, Animal, and Tooluser with their equivalent in FormerHumanUtilities + + The code instructions. + codeInstructions + + + Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other. + Value Condition Less than zero is less than .Zero equals .Greater than zero is greater than . + The first object to compare. + The second object to compare. + + + + the relationship worker for the "ExMerged" relationship + + + + + The merge mate relationship def + + + the chance for two pawns to be given this relationship + The generated. + The other. + The request. + + + + Creates the relationship between the 2 given pawns + The generated. + The other. + The request. + + + + relationship worker fo the MergeMate relationship + + + + + The merge mate def + + + Get the chance for 2 pawns to be given this relationship + The generated. + The other. + The request. + + + + Creates the relationship between the two given pawns + The generated. + The other. + The request. + + + Static container for incident defs. + + + Static container for commonly referenced job defs. + + + Default rule pack used for generating mutation log entries. + + + + Rule pack used when there is no mutation tale + + + + Static container for commonly referenced thing defs. + + + DefOf class for commonly referenced ThoughtDefs. + + + Default thought for pawns that were a morph that reverts back to a human. + + + + The former human taming success thought + + + + + default thought for when a sapient animal sleeps on the ground + + + + + default thought for when a sapient animal is milked + + + + + The sapient animal hunting memory + + this is for hunting out of necessity not for the hunting mental break + + + + The sapient animal hunting memory primal wish + + this is for hunting out of necessity not for the hunting mental break but for primal wish pawns only + + + + The default thought for former humans that have bad thoughts for eating meat of the same species they are + + + + + The fh default cannibal thought ingredient + + + + Static class containing references to commonly used Traits. + + + + a collection of general Pawnmorpher related utilities + + + + + Gets a value indicating whether mutagenic diseases are enabled. + + + true if [mutagenic diseases enabled]; otherwise, false. + + + + + Gets a value indicating whether hazardous chaobulb is enabled or not. + + + true if hazardous chaobulb; otherwise, false. + + + + Gets the mod settings. + + + + + Determines whether this pawn is loading or spawning. + + The pawn. + + true if this pawn is loading or spawning ; otherwise, false. + + + + + Gets the relation of this pawn to the given faction + + The pawn. + The faction. + + + + + checks if this pawn can witness things about the other pawn. + + The p. + The victim. + + + + + checks if this pawn can witness things about the other pawn. + + The p. + The victim location. + + + + + Gets the rival status of the other pawn relative to this pawn. + + The pawn. + The other pawn. + + + + + enum representing the rival status of a pawn + + + + + The none + + + + + The rival + + + + + The friend + + + + Extension used to blacklist a race from one or more mutagen strains. + + + if to make this race immune to all mutations + + + + The mutation retrievers + + + + + gets all configuration errors with this instance + + + + + + + + + + + Tries to get the race mutation settings. + + The pawn. + + pawn + + + + Tries the get race mutation settings. + + The race definition. + + raceDef + + + Static container containing misc tales. + + + + the tf gender switch options + + + + no explicit option set + + + always set the animal gender to male + + + always set the animal gender to female + + + make the animal's gender the opposite of the pawn's + + + make the animal's gender the same as the pawn's + + + + hediff giver that gives the permanently feral hediff + + + + + + The mean time between days + + + + + Called when the interval passed + + The pawn. + The cause. + + + + hediff giver that tries to transform a pawn + + + + + + Gets all Configuration errors in this instance. + + + + + The pawnKind of the animal to be transformed into. + + + Tale to add to the tales. + + + The gender that will be forced (i.e. a ChookMorph will be forced female). + + + If forceGender is provided, this is the chance the gender will be forced. + + + Tries to transform the pawn + The pawn. + The cause. + + + + Transforms the pawn. + The pawn. + The cause. + + + + + the incident worker for chaomorph pass incident + + + + + + Determines whether this instance can fire now with the given params. + + The parms. + + true if this instance can fire now with the specified parms; otherwise, false. + + + + Tries the execute the incident. + The parms. + + + + + comp property for the hediff comp add severity + + + + + the hediff + + + + + the amount of severity to add + + + + + how often to add the severity + + + + + create a new instance of this type + + + + + comp properties for the hediff comp production + + + + + how many days it takes to produce + + + + + the amount of resources to produce + + + + + chance to produce rare resources instead of regular resources + + + + + the default thought to add when producing resources + + + + + the thought to add when the pawn's gender matches the + + + + + the thought to add when the pawn is ether bonded + + + + + the thought to add when the pawn is ether broken + + + + + if the pawns gender matches this, the pawn is considered 'gender adverse' to producing + + + + + the defName of the resource to produce + + + + + the defName of the rare resource to produce + + + + + the stages the comp can go through + + + + + the job giver to use to make the pawn produce, if null the products will just be spawned in + + + + + get all configuration errors with this instance + + + + + + + the resource to produce + + + + + the rare resource to produce + + + + + create a new instance of this type + + + + Properties for the remove hediff comp + + + + + a list of hediffs to remove and make the pawn immune to + + + + + Initializes a new instance of the class. + + + + + properties for the hediff comp single + + + + + + the maximum times the parent hediff can 'stack' + + + + + The mutation rate multiplier + + + + + Initializes a new instance of the class. + + + + Properties for the terrain based morph hediff comp + + + + The hediffDef to add when over the specified terrain + + + The terrain that triggers adding the given hediff + + + + Initializes a new instance of the class. + + + + + hediff comp for adding severity to the parent hediff + + + + + Gets the properties. + The properties. + + + called after the parent is updated + The severity adjustment. + + + Adds the severity. + + + + hediff comp for producing resources over time + + + + + The hatching ticker + + + The total amount produced by this pawn + + + + Gets a value indicating whether this instance is dry (forbidden from producing). + + + true if this instance is dry; otherwise, false. + + + + + Gets a value indicating whether this instance can produce. + + + true if this instance can produce; otherwise, false. + + + + + if this instance can produce a product now + + + + + Gets the current stage. + + + + + Gets the current stage index. + + + + Gets the properties of this comp + The props. + + + + Gets the cached job giver. + + + The job giver. + + + + + Initializes a new instance of the class. + + + + + Recalculates current stage. + + + + called every tick after it's parent is updated + The severity adjustment. + + + exposes the data of this comp. Called after it's parent ExposeData is called + + + Spawns in the products at the parent's current location. + + + + Gets the description of stat offsets. + + + + + + + + hediff comp that removes other hediffs + + + + + Gets the properties. + The properties. + + + called every tick after it's parent is updated . + The severity adjustment. + + + + hediff comp to add a single mutation then remove the parent hediff + + + + + The stacks + + + called to expose the data in this comp + + + + Gets extra label contents for the parent hediff. + + + The comp label in brackets extra. + + + + + Gets a value indicating whether the parent hediff should be removed. + + + true if the parent hediff should be removed; otherwise, false. + + + + called after the parent is merged with the other hediff + The other. + + + Gets the properties. + The properties. + + + + called when the morph hediff is about to start visiting body parts. + + + + + called when the hediff stage changes. + + + + + called when the morph tf observes the give body part record on the given pawn + + The record observed. if null a observing whole body hediffs + + + + called after the given mutation is added to the pawn. + + The new mutation. + + + + hediff comp for adding a hediff when over specific terrain + + + + + Gets the properties. + The properties. + + + called after the parent is updated + The severity adjustment. + + + + comp properties for mutagenic radius comp + + + + + + The radius per day curve + + + + + The hediff to add + + + + + The harm frequency per area + + + + + Initializes a new instance of the class. + + + + + ingestion outcome doer that adds a random hediff + + + + + The severity + + + The tolerance chemical + + + The divide by body size + + + Does the ingestion outcome special. + The pawn. + The ingested. + + + + collection of utilities around hediff givers + + + + Tries to apply the given hediff to the given pawn + The pawn. + The hediff. + The parts to affect. + if set to true [can affect any live part]. + The count to affect. + The out added hediffs. + + + + + hediff representing a mutation + + + + + + The mutation description + + + + + The severity adjust component. Null if pawn has none. + + + + + The spreading mutation component. Null if pawn has none. + + + + + if this part should be removed or not + + + + + Constructor + + + + + + + + Gets the definition. + + + The definition. + + + + + Gets the current mutation stage. null if the hediff has no stages or the current stage is not a mutation stage + + + The current mutation stage. + + + + + Gets the influence this mutation confers + + + The influence. + + + + + Gets the base label . + + + The base label . + + + + + Mutations are always visible, so don't spent time checking comps. + + + + + + + + Gets the causes of this mutation + + + The causes. + + + + + Gets a value indicating whether should be removed. + + true if should be removed; otherwise, false. + + + Gets the extra tip string . + The extra tip string . + + + + Gets a value indicating whether this instance is a core mutation. + + + true if this instance is a core mutation; otherwise, false. + + + + + Gets or sets a value indicating whether progression is halted or not. + + + true if progression halted; otherwise, false. + + + + + called every tick + + + + + Called when the hediff stage changes. + + + + + + + + checks if this mutation blocks the addition of a new mutation at the given part + + The other mutation. + The add part. + + otherMutation + + + Exposes the data. + + + + Marks this mutation for removal. + + + + called after this instance is added to the pawn. + The dinfo. + + + + Applies the visual adjustments caused by this mutation. + + + + called after this instance is removed from the pawn + + + + Called after Tick(). The base class ticks Comps here. + + + + + Restarts the adaption progression for this mutation if halted, does nothing if the part is fully adapted or not + halted + + + + + class for making magic sprays + + + + + The start spray callback + + + + The end spray callback + + + The magic puff mote + + + + Initializes a new instance of the class. + + The parent. + + + Throws the magic puff up. + The loc. + The map. + + + Throws the magic puff down. + The loc. + The map. + + + called every tick + + + + the mod settings + + + + + + if the mutagen ship part should be enabled + + + + + if mutagenic diseases are enabled + + + + + if mutanite meteors are enabled + + + + if wild former humans are enabled + + + if mutagenic fallout is enabled + + + if slurry pipe leak is enabled + + + the chance for a transforming pawn to turn into an animal + + + the chance for new animals to be former humans + + + The partial chance + + + + if true failed chaobulb harvests can give mutagenic buildup + + + + + if The injectors require tagging the associated animal first + + + + + The maximum mutation thoughts that can be active at once + + + + + if true, the chamber database will ignore storage restrictions, used for debugging + + + + + the chance an tf'd enemy or neutral pawn will go manhunter + + + + + The chance a friendly pawn will go manhunter when tf'd + + + + + The chance a hostile will keep their faction when tf'd + + + + + Whether or not to generate endo genes like skin and hair color for pawns spawned as aliens when reverted to human + + + + + Whether or not to show stage label for fully adapted/grown mutations. + + + + + The current log level + + + + + List of races whitelisted to have visible mutations. + + + + + Dictionary of morphdef and selected replacement racedef + + + + + Dictionary of morphdef and selected replacement racedef + + + + + List of blacklisted animal types. + + + + + Dictionary of optional patches explicitly enabled or disabled. + + + + + The saved genebank window size + + + + + The saved genebank window location + + + + + The saved genebank font size + + + + + The sequencing speed multiplier + + + + + Automatically sequence all mutations when downloading animal genome. + + + + The part that writes our settings to file. Note that saving is by ref. + + + + stock generator for morph traders + + + + + + Generates the things. + + For tile. + the faction this is being generated for + + + + + checks if this generator handles the given thingDef + + The thing definition. + + + + + stock generator for morph traders + + + + + + Generates the things for the given forTile. + + For tile. + For faction. + + + + + Generates the things that can be sold + + For tile. + For faction. + + + + checks if this generator handles the given thingDef. + The thing definition. + + + + Logs the animal chances. + + + + class for mutanite + + + + + called every once and a while + + + + the world comp for this mod + + + + + + Occurs when PM static caches should be cleared. + + + + all tagged animals + + + + Initializes a new instance of the class. + + The world. + + + + called when the world is finishing initialization + + + + Gets all transformed pawns. + The transformed pawns. + + + Adds the transformed pawn. + The tf pair. + tfPair + + + Exposes the data. + + + Validates the transformed pawns. + + + Gets the pawn transformation status. + The pawn. + The pawn's current status or null. + + + Gets the transformed pawn containing the given pawn. + The pawn. + The TransformedPawn instance as well as the pawn's status to that instance. + + + Removes the transformed instance from the list. + The tf pawn. + + + add the given pawnkind to the mutagen chamber database + The pawnkind. + + + + Registers the mutation to have Spreadable and severity adjustment components updated. + + + + + Unregisters the mutation from the managed list. + + + + + a stage for the production comp + + + + The days to produce + + + The amount to produce + + + The resource to produce + + + The chance for a rare resource to be produced instead of the regular resource + + + The rare resource + + + The thought to add when the resource is produced + + + + The hediff givers on this stage, if any + + + + + The minimum production boost needed to trigger this stage. Provided by Production Aspect. + + + + + The minimum mutation severity needed to trigger this stage if any. + + + + + An additional factor for hunger rate + + + + + all stat offsets that will be active during this stage + + + + Gets the resource. + The resource. + + + Gets the rare resource. + The rare resource. + + + Collection of misc tf related HediffDefs. + + + Static class containing transformation related pawn relation defs. + + + + thing def for tagging bullets + + + + + + conditional think node for animalistic pawns in the player faction + + + + + + checks if the specified pawn is valid for this node. + + The pawn. + + + + + think node for animalistic pawns + + + + + + if the condition is satisfied or not + + The pawn. + + + + + conditional node for sapient animals that are part of a faction other then the player's + + + + + + The sapience cutoff + + + + + check if the pawn satisfies this condition. + + The pawn. + + + + + think node that restricts things to former humans + + + + + + The sapience filter + + + + + checks if the condition is satisfied by the specified pawn. + + The pawn. + + + + + conditional think nodes for sapient animals + + + + + + if the pawn must be a colonist to + + + + + if true, the pawn must be a sapient or mostly sapient former human to qualify for this node + + + + + checks if this think node is satisfied or not + + The pawn. + + + + + def extension that represents a group a thoughts that should be tried under certain circumstances, the specifics are determined based on what the extension is attached to + + if attached to a thoughtDef, when trying to add the thoughtDef, the other thoughts will be tried first before adding the given thought + + + + + list of thoughts that should be tried + + + + + thought def that has an aspect attached + + + + + The aspect to check for + + + + + Get all Configuration Errors with this instance + + + + + + memory who's stage depends on the former human status of the pawn + + + + + + save/load data. + + + + + Gets the label cap. + + + The label cap. + + + + + Generates the label for this thought. + + + + + Gets the index of the current stage. + The index of the current stage. + + + + situational thought worker for when a former human is bonded to one or more former humans + + + + + + gets the current state of the thought + + The p. + + + + + thought worker for when a former human is bonded to a regular animal + + + + + + gets the current state of the thought + + The p. + + + + + base worker for all 'animal pal' thoughts + + + + + + Determines whether this thought is valid for the specified pawn. + + The pawn. + + true if this thought is valid for the specified pawn; otherwise, false. + + pawn + + + + Gets the former human bonded to this + + The former human. + All fh bonded. + The selector function. + + formerHuman + or + allFHBonded + + + + + Sets the state of this thought for the given pawn for the given reasons. + + The former human. + The reason list. + + + formerHuman + or + reasonList + + + + + abc for former human situational thoughts + + + + + + Gets the index of the stage for the given sapience level + + The sapience level. + + + + + interface for things that affect what thoughts pawns can and cannot get from foods + + + + + Gets the priority of this modifier + + lower values are processed before higher priority ones + + The priority. + + + + + Modifies the thoughts from food. + + The food. + The list of thoughts already added + + + + interface for something that helps transfer thoughts from one pawn onto another + + interface to help with thoughts that need special handling with regards to transforming pawns and thought transfer + + + + if this thought should be transferred from the original pawn onto the target + + The original. + The target. + The thought. + + + + + Creates the new thought from the original pawn to transfer to the target pawn. + + The original. + The target. + The original thought. + + + + + memory of an observed thing that depends on the relative factions of the observer and observed + + + + + + Gets or sets the observed thing. + + + The observed thing. + + + + + Gets the index of the current stage. + + + The index of the current stage. + + + + + Exposes the data. + + + + + memory who's stage depends on the pawn's current mutation outlook + + + + Gets the index of the current stage. + The index of the current stage. + + + + memory that substitutes uses of ANIMALKIND for a given venerated animal + + + + + + determines if this instance groups with the other thought + + The other. + + + + + The venerated animal label + + + + + Gets the description. + + + The description. + + + + + Gets the label cap. + + + The label cap. + + + + + Exposes the data. + + + + + abstract class for all precept thoughts that pertain only to former humans + + + + + + The minimum sapience level + + + + + if the given pawn should have this thought . + + The p. + + + + + if the given pawn should have this thought. + + The p. + + + + + Gets the stage for sapience level. + + The sapience. + + + + + abstract class for all precept thoughts that pertain only to former humans + + + + + + if the observer must be a former human + + + + + if the observed must be a former human + + + + + The minimum observer sapience level + + + + + The minimum observed sapience level + + + + + if the given pawn should have this thought . + + The p. + The other pawn. + + + + + if the given pawn should have this thought. + + The observer. + The observed. + + + + + Gets the stage for sapience level. + + The sapience. + + + + + thought worker for a pawn viewing another pawn who's a former human + + + + + + if this pawn should have the thought about the other given pawn + + The p. + The other pawn. + + + + + thought worker for a pawn viewing another pawn who's been tf'd into one of the ideos venerated animals + + + + + + if this pawn should have the thought about the other given pawn + + The p. + The other pawn. + + + + + social precept thought worker for when a pawn has mutations + + + + + + if p should have this thought about otherPawn + + The p. + The other pawn. + + + + + thought worker for a pawn having thoughts about another pawn with venerated mutations + + + + + + if the pawn 'p' should have this thought about the given other pawn + + The p. + The other pawn. + + + + + situational thought for former humans of an ideologie's venerated animal + + + + + + Gets the capitalized label. + + + The label cap. + + + + + Gets the description. + + + The description. + + + + + gets the current internal state. + + + + + + thought worker for former humans of venerated animals tied to a specific precept + + + + + + if this thought should be active + + The p. + + + + + static class containing common labels for formatted thoughts + + + + + label for a venerated animal in a string + + + + + static class containing a bunch of helper functions related to pawn thought reactions to stuff + + + + + get a thought related the reactor pawn's opinion of the original pawn + + + + + + the thought def, null if there is no specific thoughtDef or the reactor has no special opinion of the original + pawn + + + + + call when the original pawn transforms into the transformedPawn + + note: this does nothing if ideology is active, instead reaction thoughts are given by precepts instead + The original. + The transformed pawn. + The reaction status. + + + + call when a pawn is reverted from an animal to handle giving the correct thoughts to colonists + + note: this does nothing if ideology is active, instead reaction thoughts are given by precepts instead + The original pawn. + The animal pawn. + The reaction status of the original pawn + + + + call when an animal goes permanently feral to handle giving the correct thoughts to colonists + + note: this does nothing if ideology is active, instead reaction thoughts are given by precepts instead + The original pawn. + The animal pawn. + The reaction status. + originalPawn + or + animalPawn + + + + call when 2 pawns are merged into one meld/merge to handle giving the correct thoughts to colonists + + the first pawn of the merge + if the first pawn was a prisoner + the second pawn of the merge + if the second pawn was a prisoner + the resulting animal pawn + + + + enum for tracking the original status of a transformed pawn for colonist reactions + + + + + The original status of the former human is unknown + + + + + The original pawn was a colonist + + + + + the original pawn was a prisoner + + + + + The original pawn was a guest + + + + + extension info to add onto Relationships + + + + the thought for when the male variant of this relation ship is tf'd + ex: when a husband is transformed + + + + the thought for when the female variant of this relationship is transformed + + ex: when a wife is transformed + + + The reverted thought for the male variant + + + + The reverted thought for the female variant + + + + the thought for when the pawn goes permanently feral + + + + the female variant thought for when the pawn + + + + + the thought for when the female variant is merged + + + + the thought for when the male variant is merged + + + + memory who's stage depends on the pawn's sapience + + + + + + Gets the index of the current stage. + + + The index of the current stage. + + + + + static class containing default/frequently used thoughtDefs + + + + + thought worker for a thought that is active when a certain hediff is present, and who's stage depends on the ether state of the pawn + + + + Gets the current thought state of the given pawn. + The p. + + + + + a memory thought that depends in some way on the etherstate of it's associated pawn + + + + Gets the index of the current stage. + The index of the current stage. + + + + thought worker for the beast master aspect + + + + + + Gets the current thought state + + The p. + + + + + + + + thought worker for pawns that have the body purist to add opinions about other pawns with mutations + + + + gets the current state of the thought with regards to the given pawns + The pawn that has the thought + The pawn the thought is about + + + + + thought worker for former human naked thoughts + + + + + + Currents the state internal. + + The p. + + + + + thought worker to give former humans a constant 'i'm an animal now' thought + + + + + + gets the current thought state for the pawn + + The p. + + + + + Gets the correct stage based on the pawns sapience level + + The p. + + + + + thought worker for activating a thought for former humans when they have a specific hediff + + + + + + Gets the current thought state + + The p. + + + + + thought worker for the furry mutation appreciation thought + + + + gets the current thought state for the given pawns + The pawn that is having the thought + The pawn the thought is about + + + + + aspect worker for a thought that appears when the pawn has a certain aspect + + + + Gets the definition. + The definition. + + + gets the current thought state of the given pawn + The pawn + + + + + thought worker who's state depends on how many mutations a pawn has + + + + + return the thought state for the given pawn + + + + + + + a memory who's stage is dependent on if the pawn is a given morph + + + + + Gets the index of the current stage. + The index of the current stage. + + + Thought worker that works like ThoughtWorker_Hediff except is also respects traits. + + + Gets the current thought state of the given pawn + The pawn. + + + + Check to make sure that the pawn's traits allow for the thought to be active. + If traits allow the thought can be active. + + + + thought worker for the Is Venerated animal thought + + + + + + gets the current thought state for the pawn + + The p. + + + + + thought worker for jealous mutation affinity pawns + + + + + + Currents the current thought state of the given pawn . + + The p. + + + + + thought worker for merged pawns + + + + + + gets the current state of this thought for the given pawn + + The p. + + + + + thought worker for the 'morph' frustrated thought + + + + + + gets the current thought state of the given pawn. + + The p. + + + + + worker for giving sapience specific thought for when a pawn is naked + + + + + + Currents the state internal. + + The p. + + + + + thought worker for giving pawns thoughts if they are in a sapience state + + + + + + Currents the state internal. + + The p. + + + + + abstract base class for both the sapient animal bonded master and bonded non master thoughts + + + + + + Determines whether [is valid relation] [the specified relation]. + + The relation. + + true if [is valid relation] [the specified relation]; otherwise, false. + + + + + + + + + + gets the current state . + + The p. + + + + + + + + + + gets the current state . + + The p. + + + + + Thought for a former human relative being accepted into the colony + + + + + Whether this thought should be discarded + + true if should discard; otherwise, false. + + + + Thought for a former human relative being rejected by the colony + + + + + Whether this thought should be discarded + + true if should discard; otherwise, false. + + + + thought worker that depends on if the pawn has a specific number of mutations + + + + + returns the current thought state of the pawn + The p. + + + + + static class containing tool and verb related utilities + + + + + Determines whether this tool is a natural weapon, like a claw + + The tool. + + true if this tool is a natural weapon, like a claw ; otherwise, false. + + + + A class full of useful methods. + + + + Scales all injuries on the current pawn to a new race with a different base health scale + + The pawn. + The new race. + + pawn + or + newRace + + + + + Gets all morph tf hediffs. + + + All morph TFS. + + + + + Gets the former human reaction status of the given original pawn + + The original pawn. + + + + + Gets all pawn transformers in this stage + + The stage. + + + + + Gets all pawn transformers in this hediff def. + + The hediff. + + hediff + + + + The maximum apparel percent difference. percent differences between old and new size will cause apparel to be completely destroyed + + + + + applies damage to all apparel the pawn is wearing based on + + The pawn. + The new race. + the mutagen that caused the transformation, if null uses default values for + + pawn + or + newRace + + + + + Sets to race default. + + The pawn. + if set to true [force remove mutations]. + pawn + + + Removes all mutations from a pawn (used post reversion). + The pawn. + + + Tries the give post transformation bond relations. ??? + The thrumbo. + The pawn. + The other pawn. + + + + Candidates the score pairs. ??? + The pawn. + The candidate list. + + + + Adds the hediff if not permanently feral. + The pawn. + The hediff. + + + Removes the hediff if permanently feral. + The pawn. + The hediff. + + + Returns true if this pawn is currently an animal or merged morph. + + + Converts the age of the given pawn into an equivalent age of the given race. + The original pawn. + The end race. + + + + Converts the age from one race to the equivalent age of another race + + The original race. + The end race. + The original age. + + + originalRace + or + endRace + + + + + Converts the age from one life expectancy range to another + + The original age. + The original life expectancy. + The new life expectancy. + + + + Generates the random human pawn from a given animal pawn. + The animal. + + + Gets the transformed gender. + The original. + The force gender. + The force gender chance. + + + + + Cleans up all references to the original human pawn after creating the animal pawn.
      + This does not call Pawn.DeSpawn. +
      + The original pawn. + The cause. + if set to true [remove mental states]. + if set to injuries and diseases are tended. + originalPawn +
      + + + Cleans up all references to the original human pawn after creating the animal pawn.
      + This does not call Pawn.DeSpawn. +
      + The original pawn. + The cause. + if set to true [remove mental states]. + The TFD pawn. + originalPawn +
      + + Get the "ether state" of the pawn (whether they have the ether broken or bonded hediff. + + + + Try to give this pawn a new memory.
      + If pawn does not have needs/mood/thoughts ect this call does nothing. +
      + The pawn. + The thought. + The other pawn. + if ThoughtUtility.CanGetThought should be checked before giving the thought + pawn +
      + + + Try to give this pawn a new memory.
      + If pawn does not have needs/mood/thoughts ect this call does nothing. +
      +
      + + + Handles the tf witnesses. + + The original pawn. + The transformed pawn. + The location. + The map. + + + + A class to cache generic values rather than calculating them every time. + + + + + Gets the value. + + + The value. + + + + + Initializes a new instance of the class. + + The value getter. + + + + Initializes a new instance of the class. + with an initial value + + The value getter. + The value. + + + + Purges the cache and causes the value to be recalculated the next time + it's accessed + + + + + Gets the filtered collection of items. + + + + + Gets or sets the collection with all items. + + + + + Gets or sets the filter string parsed to the filter callback when filtering collection. + + + + + Initializes a new instance of the class. + + Initial collection that is copied. + Filter callback called for each item when filter text is modified. Provides Item, Filtertext and expects a bool returned on whether or not item is visible. + + + + Initializes a new instance of the class. + + Filter callback called for each item when filter text is modified. Provides Item, Filtertext and expects a bool returned on whether or not item is visible. + + + + Orders underlying collection ascending. + + The type of the key. + The key selector. + + + + Orders underlying collection descending. + + The type of the key. + The key selector. + + + + Invalidates the filtered collection and regenerates it. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + Whether or not we've reached the end of the list + + true if we have a current entry, false otherwise + + + + Whether we still have a current entry or we've reached the end of the list + + true if there's at least one entry left in the list; otherwise, false. + + + + The index of the current entry + + The index. + + + + The total number of entries + + true if has entry; otherwise, false. + + + + Advances the checklist to the next entry + + true if more entries exist, false if the checklist is finished + + + + Resets this checklist to the beginning + + + + + Advances the checklist to the next entry, or resets it if we reached the end + + true if there was a next entry, false if the checklist reset + + + + Exposes data to be saved/loaded from XML upon saving the game + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of simple values, like ints, floats, or strings + + NOTE: The type constraint can't enforce this, but do NOT use this for + anything but simple values! It won't work! Use one of the other Checklist + types instead. + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of Defs + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of IExposable things + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of ILoadReferenceable things + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of BodyPartRecords + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of TargetInfos + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of LocalTargetInfos + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A bundled list and iterator, which can be saved and loaded with Scribe_Deep. + Useful to keep track of iteration that may need to be interrupted and saved + partway through, like a hediff that gradually iterates through a list of + body parts. + + This checklist is for lists of GlobalTargetInfoChecklists + + + + + Initializes a new empty checklist + + + + + Initializes a new checklist with the given list + + + + + The look mode used to save and load the collection entries. + + + + + A simple multi-value dictionary implementation that maps one key to multiple values + Uses lists internally, so is not particularly efficient for large numbers of values on one key + + + + + Gets or sets all the values with the specified key at once. An empty or + null collection deletes the key + + Key. + + + + Returns a collection of all the keys in the dictionary + + The keys. + + + + Returns a collection of all the values in the dictionary + + The values. + + + + Returns a count of all values in the dictionary + + The count. + + + + Adds the specified value to the dictionary under the given key + + Key. + Value. + + + + Adds the specified value to the dictionary under the given key + + the key-value pair. + + + + Adds multiple values to the dictionary under the given key + + Key. + Values. + + + + Empties the dictionary + + + + + Checkes whether the dictionary contains the specific value + + if the value is contained, otherwise. + The value. + + + + Checkes whether the dictionary contains the specific value under the give key + + if the value is contained, otherwise. + The key. + The value. + + + + Checkes whether the dictionary contains the specific value under the given key + + if the value is contained, otherwise. + The key-value pair. + + + + Checkes whether the dictionary contains the specific key + + if the value is contained, otherwise. + Item. + + + + Gets a key-value pair enumerator. + + The enumerator. + + + + Remove all values associated with the specified key. + + if the key existed and was removed, otherwise./// + Key. + + + + Removes the given value associated with the specified key. + + if the value existed and was removed, otherwise. + Key. + Value. + + + + Removes the given value associated with the specified key. + + if the value existed and was removed, otherwise. + The key-value pair. + + + + Removes all the given value associated with the specified key. + + if at least one value existed and was removed, otherwise. + Key. + Values. + + + + Tries to get the values associated with the key. + + true, if the at least one value exists under that key, false otherwise. + Key. + Values. + + + + static class for caching comps for pawns + + + + + + Clears the cache for this particular pawn + + The pawn. + pawn + + + + Clears the cache for all pawns + + + + + Gets the comp cached. + + The pawn. + + + + + world comp to refresh the comp cacher on load + + + + + + Initializes a new instance of the class. + + The world. + + + + Finalizes the initialize. + + + + Generic class for a filter. + + + + the list of entries in the filter + + + + + if this filter is a black list + + + + + returns true if the given element passes through the filter + + + + + + convenient base class for hediff comps that know their properties type. + + + + Gets the props. + + + The props. + + + + Convenient base class for comp properties that know their comp type. + + + + create a new instance of this type + + + + Collection of hediff def related utility functions. + + + Get all hediff givers attached to this HediffDef. + hediffDef is null + + + + utilities around IEnumerable interface + + + + + Adds the distinct range to the given range + + + The LST. + The range. + + + + returns an enumeration of the intersection of all enumerables given + + + The enumerable. + + enumerable collection must contain at least 1 list - enumerable + + + + Adds the range to this linked list at the end of the list. + + + The ll. + The enumerable. + + ll + or + enumerable + + + + + Adds the element to the list with the given key, or creates a new list if the key is not in the dictionary already + + The type of the key. + The type of the elem. + The dictionary. + The key. + The elem. + + dict + or + key + + + + + Determines whether this enumeration of hediffDefs contains the def of the given hediff. + + The enumerable. + The hediff. + + true if this enumeration of hediffDefs contains the def of the given hediff; otherwise, false. + + + enumerable + or + hediff + + + + Check if this instance is in the given collection. + The thing. + The other. + + + Check if this instance is in the given collection. + The thing. + The other1. + The other2. + + + Check if this instance is in the given collection. + The thing. + The other1. + The other2. + The other3. + + + Check if this instance is in the given collection. + The thing. + The others. + + + + Determines whether this list is both non null and not empty. + + + The LST. + + true if this list is both non null and not empty; otherwise, false. + + + + + if the given enumerable is null returns an empty enumerable, otherwise does nothing to the given enumerable + + + The enumerable. + + + + gets a random element from the list + + The LST. + The default value. + + lst + + + + class for various math related utility functions + + + + + natural log of 2 + + + + + smoothstep interpolation + + The edge0. + The edge1. + The x. + + + + + Fits a value from the initial range into the new range + + note: it is up to the caller to ensure the ranges are valid + The value. + The old minimum. + The old maximum. + The new minimum. + The new maximum. + if set to true clamp value between the newMin and newMax values . + + + + + static class containing various utilities for patching functions + + + + + MethodInfo for a common transpiler method that replaces all instances of RaceProps.Animal/Tooluser/Humanlike + with the FormerHumanUtilities equivalents + + + + + gets getter method + + + + + Gets the rimworld get race method. + + + The rimworld get race method. + + + + + Gets the roamer method. + + + The roamer method. + + + + + Gets the fence block method. + + + The fence block method. + + + + + Gets the can pass fences method. + + + The can pass fences method. + + + + + Gets method info for + + + The is animal method. + + + + + Gets the method info for + + + The is humanoid method. + + + + + Gets the method info for + + + The is tool user method. + + + + + This method is used to find particular label that is assigned to last instruction's operand + + The op codes. + The operands. + The instr. + if set to true [perfect match]. + + + + + Determines whether this method has the given type signature + + Determines whether this method has the given type signature + Note: this only checks the parameters not the return type, that must be checked separately + The method information. + The types. + + true if the specified method information has signature; otherwise, false. + + + methodInfo + or + types + + + + + struct representing an operand to an opcode. needed to differentiate a null parameter to no parameter + + + + + Initializes a new instance of the struct. + + The object. + + + + The argument + + + + + determines if the given instruction matches the given patern + + The instructions. + The pattern. + + + + + patch the given method, replacing all instances of RaceProps.Animal/Tooluser/Humanlike + with the FormerHumanUtilities equivalents + + The harmony. + The target method. + if set to true [debug]. + + harmony + or + targetMethod + + + + + Determines whether this type is compiler generated. + + The type. + + true if this type is compiler generated; otherwise, false. + + type + + + + This method is used to add some CIL instructions after certain fragment in original code. + It should be used inside foreach loop, and return true if particular iteration is the desired one. + + The op codes. + The operands. + The instr. + The step. + Name of the fragment. + if set to true [perfect match]. + + true if the specified op codes is fragment; otherwise, false. + + + + + patches every method in the given type, including sub types and delegates, with the given transpiler + + The harmony. + The type. + The transpiler. + The method information predicate. + + harmony + or + type + or + transpiler + + + + + substitutes all instances of RaceProps Humanlike, Animal, and Tooluser with their equivalent in + FormerHumanUtilities + + The code instructions. + codeInstructions + + + + A collection of utilities around random functions + + + + + Generate a random number according to a Gaussian distribution. + + The mean. + The standard deviation. + + + + Generate a random number according to an exponential distribution. + + The rate. + + + + Generate a random number according to a Skew Normal distribution (non symmetric). + + The location (not actually the mean). + The scale (not actually the standard deviation). + The shape, determining the skewness. Negative if you want only a few values after the mode (value that appears the most), positive before. + + + + Gets the uniform probability of some event checked every so often with a set mean time to happen + + The mean time to happen. + how often the event is checked + + + + + checks if an event, with the given mtb in days, has occured + + The days. + how often this check occurs in ticks + + + + + Rounds a float up or down at random, based on how close it is to either side. + + 1.5 has a 50% chance of rounding up or down + 1.1 has a 90% chance of rounding down and 10% of rounding up + + The rounded float. + The float to round. + + + + Generates a random number between 0 and 1 using a beta distribution. + + The alpha component. + The beta component. + + + + + static class for performing rimworld raycasts + + + + + gets all targets from the given raycast and store them in the given buffer. + + The map. + The cell. + The dir. + The buffer. + The targets. + the number of hits + + + + gets all targets from the given raycast and store them in the given buffer. + + The map. + The p0. + The p1. + The buffer. + The targets. + the number of hits + + + + + + + + The thing hit + + + + the hit pawn + + + + Performs an explicit conversion from to . + + The hit. + + The result of the conversion. + + + + Returns the fully qualified type name of this instance. + The fully qualified type name. + + + + + + + + All + + + + + none + + + + + walls + + + + + pawns + + + + + impassible stuff + + + + + represents a modification to a pawn's skills + + + + The skill definition to affect + + + The added xp + + + The passion offset + + + The forced passion + + + The new passion of the skill with this mod. + + + + Utility class for making getting pawn's stats easy and simple while maintaining performance. + + + + + Private interface used to expose the invoke function only to StatsUtility. + + + + + Event wrapper to allow making a dictionary of events. + + + + + + Event handler for . + + The pawn. + The stat. + The old stat value. + The new stat value. + + + + Occurs when any cached value of the given stat changes. + + + + + Gets the events for a specific stat. + + The stat definition. + + + + + Gets the specied statDef of the specific pawn and adds it to the caching management if not already. + + The pawn. + The stat definition. + Max amount of ticks since stat was last updated. + Null if no value is cached and pawn isn't spawned because GetStatValueForPawn throws error in that case. + + + + Gets string with all cached stat values for a given pawn.. + + The pawn. + + + + Object used to cache a value based on age in ticks. + + The type of value cached. + + + + Cache status. + + + + + The cached value has not yet been stored. + + + + + The cached value is cached. + + + + + The cached value has been queued for update. + + + + + Object containing the sender cache, old value and new value. + + The cache containing the changed value. + The old value. + The new value. + + + + Occurs when the cached value changes. + + + + + Timestamp in ticks for when the stat was last recalculated. + + + + + Gets the cached value. + + The maximum age in ticks before an update is queued. + + + + + Queues an update of the cached value on the LongEventHandler. + + + + + Immediately updates the cached value. + + + + + Initializes a new instance of timed cache. + + The callback to update the cached value. + + + + Initializes a new instance of timed cache with a default value. + + The callback to update the cached value. + The initial cached value. + + + + static class containing time related metrics + + + + + The ticks per day + + + + + The ticks per hour + + + + + The ticks per real second + + also the tick frequency in hertz + + + + The tick period in (real) seconds + + + + + The ticks per game year + + + + + static container for various tree related utilities + + + + + delegate for getting the children of a root + + + The root. + + + + + traverse a tree using the postorder traversal + + + The root. + The get children. + + + root + or + getChildren + + + + traverses the tree in preorder + + The root. + The get children action. + + + root + or + getChildrenAction + + + + + prints a pretty tree + + + The root. + The get children. + To string function. + + + root + or + getChildren + + + + add body part defs in to the given list in order of a 'randomized spread traversal' of the given body def + The body definition. + The out list. + + bodyDef + or + outList + + + + + Allows for hot swapping files while game is running. + https://github.com/Zetrith/HotSwap/wiki + + + + + + A backstory def that can explicitly allow a list of multiple work types + + + + + The list of allowed WorkTags + + + + + + + + custom verb for the shoot tool + + + + + + + Tries the cast shot. + + + + + + Gets the label. + + The owner thing. + + + + + Gets the description for this verb + + The owner thing. + + + + + Gets the UI icon for this verb + + The owner thing. + + + + + class for the mutagenic weather overlay + + + + + + Initializes a new instance of the class. + + + + + + + + + + + Gets the potential work thing request. + + + The potential work thing request. + + + + + Gets the path end mode. + + + The path end mode. + + + + + Determines whether [has job on thing] [the specified pawn]. + + The pawn. + The t. + if set to true [forced]. + + true if [has job on thing] [the specified pawn]; otherwise, false. + + + + + Jobs the on thing. + + The pawn. + The t. + if set to true [forced]. + + + + + work giver for recruiting a sapient animal + + + + + + Resets the static data. + + + + + Potentials the work things global. + + The pawn. + + + + + determines if this work giver should be skipped + + The pawn. + if set to true [forced]. + + + + + returns the job for the given pawn on the given thing + + The pawn. + The t. + if set to true [forced]. + + + + + Determines whether this instance with the specified pawn [can interact with animal] + + The pawn. + The animal. + if set to true [forced]. + + true if this instance with the specified pawn [can interact with animal] otherwise, false. + + + + + work giver for transforming prisoners + + + + + + gets the job on the given thing + + The pawn. + The t. + if set to true [forced]. + + + + + + + + + + + Jobs the on thing. + + The pawn. + The t. + if set to true [forced]. + + + + + determines if he pawn should skip this giver. + + The pawn. + if set to true [forced]. + + + + + Determines whether the given pawn has a job on the thing. + + The pawn. + The t. + if set to true [forced]. + + true if the given pawn has a job on the thing; otherwise, false. + + + + + Obsolete, use Comp_CanBeFormerHuman instead + + + + + Initialize the comp with the specific props. + + Properties. + + + + Obsolete, use Comp_CanBeFormerHuman instead + + + + + Initialize the comp with the specific props. + + Properties. + + + + Obsolete, use CompProperties_CanBeFormerHuman instead + + + + + If true, the animal will always be a former human, regardless of the mod settings + + + + + Returns any config errors in this comp property + + The errors. + Parent def. + + + + Obsolete, use CompProperties_CanBeFormerHuman instead + + + + + The hediff. + + + + + If true, the animal will always be a former human, regardless of the mod settings + + + + + Returns any config errors in this comp property + + The errors. + Parent def. + + + + LetterDef references + + + + + The letter for former humans attempting to join the colony + + + + + A choice letter for a former human attempting to join the colony + + + + + Sends a join request for the given sapient former human + + Former human. + Relative. + Relation. + + + + Sends a join request for the given feral former human + + Former human. + Relative. + Relation. + + + + Sends a join request for the given former human + + Former human. + Relative. + Relation. + ID of the label string. + ID of the title string. + ID of the text string + + + + Whether this letter can be dismissed with a right click + + true if can dismiss with right click; otherwise, false. + + + + Whether this letter is still valid to be shown on the stack + + true if can show in letter stack; otherwise, false. + + + + The possible choices of the letter + + The choices. + + + + Called after the letter is removed + + + + + Exposes the data to/from XML for saving. + + + + + Gets the closeness of the relationship. + + The closeness. + + + + Translates the given string ID with the former human, relative, and relation + attached. + + keys: + - formerHuman + - relatedPawn + - relationship + + The translated string. + Identifier. + + + + Translates the given string ID with the former human, relative, and relation + attached. + + keys: + - formerHuman + - relatedPawn + - relationship + + The translated string. + Identifier. + Former human. + Relative. + Relation. + + + + comp for creating a mutagenic explosion + + + + + the comp properties + + + + + called every tick after it's parent updates + + + + + properties for the ether explosive comp + + + + + the chance to add the tf hediff + + + + + the hediff to add + + + + + create a new instance of this class + + + + List of pawnDefs to not allow the hediff to be given to. + + + Check if the given pawn is a valid target to add the hediff to. + + + + death worker that causes a mutagenic explosion upon death + + + + + + Gets the death rules. + + + The death rules. + + + + + Gets a value indicating whether this instance is dangerous in melee. + + + true if this instance is dangerous in melee; otherwise, false. + + + + + called when the attached pawn dies. + + The corpse. + + + + thing def for the ether bullet + + + + + chance to apply the hediff + + + The hediff to add + + + List of pawnDefs to not allow the hediff to be given to. + + + Check if the given pawn is a valid target to add the hediff to. + + + + bullet that are mutagenic in nature + + + + + + called when this instance impacts the specified thing. + + The hit thing. + + + + + bullet for the tagging rifle, adds creatures to the chamber database on hit + + + + + + called when this instance impacts the given thing + + The hit thing. + + + + + static class containing tranformation related functions + + + + Applies the hediff. + The pawn. + The map. + The hediff. + The chance. + + + Applies the hediff. + The pawns. + The map. + The hediff. + The chance. + +
      +
      diff --git a/Source/Pawnmorphs/Esoteria/HPatches/GamePatches.cs b/Source/Pawnmorphs/Esoteria/HPatches/GamePatches.cs index e6429ced9..2f3c92569 100644 --- a/Source/Pawnmorphs/Esoteria/HPatches/GamePatches.cs +++ b/Source/Pawnmorphs/Esoteria/HPatches/GamePatches.cs @@ -1,9 +1,13 @@ using System.Collections.Generic; using System.Linq; +using System.Runtime.Remoting.Channels; +using AlienRace; using HarmonyLib; using JetBrains.Annotations; using RimWorld; +using UnityEngine; using Verse; +using static AlienRace.AlienPartGenerator; namespace Pawnmorph.HPatches { @@ -26,6 +30,26 @@ internal static class GamePatches private static void LoadGamePostFix() { FixMissingNarrowHeads(); + + // Fix HAR bug for adding PM into existing save. + // HAR breaks when adding additional color channels to existing save. + foreach (Pawn pawn in Find.CurrentMap.mapPawns.AllPawns) + { + AlienComp comp = pawn.TryGetComp(); + AlienPartGenerator apg = (pawn.def as ThingDef_AlienRace)?.alienRace.generalSettings.alienPartGenerator; + if (apg == null) + continue; + + // https://github.com/erdelf/AlienRaces/blob/d9104a6089953230a0cad7a7573c2e995e01d125/Source/AlienRace/AlienRace/AlienPartGenerator.cs#L560C1-L565C26 + foreach (ColorChannelGenerator channel in apg.colorChannels) + { + if (!comp.ColorChannels.ContainsKey(channel.name)) + { + comp.ColorChannels.Add(channel.name, new ExposableValueTuple(Color.white, Color.white)); + comp.ColorChannels[channel.name] = comp.GenerateChannel(channel, comp.ColorChannels[channel.name]); + } + } + } } private static void FixMissingNarrowHeads() { diff --git a/Source/Pawnmorphs/Esoteria/Properties/AssemblyInfo.cs b/Source/Pawnmorphs/Esoteria/Properties/AssemblyInfo.cs index 58e10195d..68f1e3660 100644 --- a/Source/Pawnmorphs/Esoteria/Properties/AssemblyInfo.cs +++ b/Source/Pawnmorphs/Esoteria/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.10.0")] -[assembly: AssemblyFileVersion("1.10.0")] +[assembly: AssemblyVersion("1.5.1.0")] +[assembly: AssemblyFileVersion("1.5.1.0")] From 54e11954a38549907561bf2c9cf6eea6ced25365 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Wed, 17 Apr 2024 18:42:19 +0200 Subject: [PATCH 22/24] Added 1.4 assembly properly --- 1.4/Assemblies/Pawnmorph.dll | Bin 0 -> 1236992 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 1.4/Assemblies/Pawnmorph.dll diff --git a/1.4/Assemblies/Pawnmorph.dll b/1.4/Assemblies/Pawnmorph.dll new file mode 100644 index 0000000000000000000000000000000000000000..a35a491e86612fc2618e1cc94dc659aa7e7c4537 GIT binary patch literal 1236992 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

      lHL~Xx>|ps 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�=8l@=PG^=)NY!^||5 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 literal 0 HcmV?d00001 From 7aeee1d710654705e6c8fab00fd73c7d879d8f0b Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Thu, 18 Apr 2024 09:09:02 +0200 Subject: [PATCH 23/24] Fixed minor typo --- 1.4/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml | 2 +- 1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/1.4/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml b/1.4/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml index ae05bee38..a2c00d81b 100644 --- a/1.4/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml +++ b/1.4/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml @@ -146,7 +146,7 @@ paragon 2.5 - [PAWN_nameDef]'s enhanced brain is so adept at logical problem solving [PAWN_objective] can solve differencial equations on the fly, calculating ballistics trajectories is a comparatively simple matter. + [PAWN_nameDef]'s enhanced brain is so adept at logical problem solving [PAWN_objective] can solve differential equations on the fly, calculating ballistics trajectories is a comparatively simple matter. 0.75 0.20 diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml index ae05bee38..a2c00d81b 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/OrganMutations.xml @@ -146,7 +146,7 @@ paragon 2.5 - [PAWN_nameDef]'s enhanced brain is so adept at logical problem solving [PAWN_objective] can solve differencial equations on the fly, calculating ballistics trajectories is a comparatively simple matter. + [PAWN_nameDef]'s enhanced brain is so adept at logical problem solving [PAWN_objective] can solve differential equations on the fly, calculating ballistics trajectories is a comparatively simple matter. 0.75 0.20 From f62a9988f777843547d8ab6bf6597759c36cf554 Mon Sep 17 00:00:00 2001 From: Zeracronius Date: Fri, 19 Apr 2024 20:17:24 +0200 Subject: [PATCH 24/24] Fixed typos --- 1.4/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml | 2 +- 1.4/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml | 4 ++-- 1.4/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml | 4 ++-- 1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml | 2 +- 1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml | 4 ++-- 1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml | 4 ++-- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/1.4/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml b/1.4/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml index b969b03bf..fa370dda2 100644 --- a/1.4/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml +++ b/1.4/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml @@ -156,7 +156,7 @@ paragon 2.5 - [PAWN_nameDef] has mastered [PAWN_objective]'s wings and can effortlessly fly long distances like a migratory bird. As an added bonus food is easily spottable from above. + [PAWN_nameDef] has mastered [PAWN_possessive] wings and can effortlessly fly long distances like a migratory bird. As an added bonus food is easily spottable from above. Parts/Chicken/Chicken_Wings diff --git a/1.4/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml b/1.4/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml index d835cb9b0..2b3786313 100644 --- a/1.4/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml +++ b/1.4/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml @@ -127,8 +127,8 @@ EtherDigitgradeLeg Carnivora - - A digitgrade leg. + + A digitigrade leg. LegBecameDigitgrade

      vifD_g!{Pz9%cN_u`9sJ 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

    1732. diff --git a/1.4/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml b/1.4/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml index f15c5906d..8cbca643d 100644 --- a/1.4/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml +++ b/1.4/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml @@ -13,10 +13,10 @@ LegBecameDigitgrade - + -
    1733. tale_noun->[PAWN_nameDef]'s legs became digitgrade
    1734. +
    1735. tale_noun->[PAWN_nameDef]'s legs became digitigrade
    1736. image->[PAWN_nameFull]'s legs change structure, forcing [PAWN_possessive] to walk on [PAWN_possessive] toes [circumstance_group]
    1737. diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml index b969b03bf..fa370dda2 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/ArmMutations.xml @@ -156,7 +156,7 @@ paragon 2.5 - [PAWN_nameDef] has mastered [PAWN_objective]'s wings and can effortlessly fly long distances like a migratory bird. As an added bonus food is easily spottable from above. + [PAWN_nameDef] has mastered [PAWN_possessive] wings and can effortlessly fly long distances like a migratory bird. As an added bonus food is easily spottable from above. Parts/Chicken/Chicken_Wings diff --git a/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml b/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml index d835cb9b0..2b3786313 100644 --- a/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml +++ b/1.5/Defs/MorphsAndMutationDefs/Shared/LegMutations.xml @@ -127,8 +127,8 @@ EtherDigitgradeLeg Carnivora - - A digitgrade leg. + + A digitigrade leg. LegBecameDigitgrade
    1738. diff --git a/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml b/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml index f15c5906d..8cbca643d 100644 --- a/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml +++ b/1.5/Defs/TaleDefs/Mutations/TaleDefs_LegMutations.xml @@ -13,10 +13,10 @@ LegBecameDigitgrade - + -
    1739. tale_noun->[PAWN_nameDef]'s legs became digitgrade
    1740. +
    1741. tale_noun->[PAWN_nameDef]'s legs became digitigrade
    1742. image->[PAWN_nameFull]'s legs change structure, forcing [PAWN_possessive] to walk on [PAWN_possessive] toes [circumstance_group]
    1743. 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 literal 321024 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 z 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%0AXuFb**lsk+o8ud+ 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 diff --git a/Source/Dependencies/PeteTimesSix.CompactHediffs.dll b/Source/Dependencies/PeteTimesSix.CompactHediffs.dll index da25e1b5b01fa251b7927d24c9d46e71057eaf01..86ca0236c6f39e1de5502c2a04da4572a2aaa4dc 100644 GIT binary patch literal 51712 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