[A17-18]Vanilla Animals Overhaul (more pack animals included) - updated 10/29/17

Started by kaptain_kavern, July 02, 2017, 07:16:11 PM

Previous topic - Next topic

Flimflamshabam

Does this touch animal food selection at all? I'm having an issue with tamed animals starving because they wont eat dandelions (had a similar issue with WM smarter food selection in a16) that are in a growing zone, if I delete the growing zone they'll eat the dandelions just fine and they have no qualms eating other crops in a growing zone. I am not using WM smarter food selection in a17. This is the only mod I have that effects animals at all so I want to eliminate this as a cause before bringing this up as a vanilla bug report.

jpnm92

I'm not saying that i love you (I just found this mod).

I'm just saying that if you had a vagina in your forehead i would fuck your brains.

Wtf is my point? Idk i really don't.

Edit: Is AnimalsLogic compatible with this? https://ludeon.com/forums/index.php?topic=34628.0
If you say it isn't I'm uninstalling it

Kori

This mod looks amazing!

Is it compatible with CE? https://ludeon.com/forums/index.php?topic=33461.0
I mean do the new pack animal versions count as new animals? Because on the CE site they say that all mods that introduce new animals are incompatible because they use the old/ vanilla body model, so now I'm not sure if that's the case here as well.
PLEASE let them be compatible!

kaptain_kavern

A18 "Beta" Release:

https://github.com/kaptain-kavern/KK_AnimalOverhaul/releases/tag/0.18



QuoteJust updated the mod to A18 code changes.

And corrected the bug that prevented animals from being trained in certain conditions.

I need to wait and see how the author of Animal Logic will handle his update because I need my mod to be compatible with it - else the modded pack animal races will not be able to be purchased from traders

teag2

Was playing with the mod just fine on version 0.18.1712, but after updating to version 0.18.1717, the mod no longer loads (and I singled the mod out and tried redownloading, but it still won't work).

kaptain_kavern

I know there was funky things happening for some patches with latest unstable version (but a fix will be released soon, if not already). I will check and correct bugs if needed later today. Thx for reporting

mvargus

Quote from: kaptain_kavern on November 11, 2017, 06:00:51 PM
I know there was funky things happening for some patches with latest unstable version (but a fix will be released soon, if not already). I will check and correct bugs if needed later today. Thx for reporting

The fix was loaded this morning.

Sarge

kaptain_kavern,

My tamed animals that are assigned to pawns no longer accompany them when they go taming. Of all the things I need them to do so it is when taming. Can you please add this one?

Then, since I started playing this game the 'release' animal function has been bugging me. A threat has to be way too close before my pet will react. If I can see the threat, my pet can see/hear/smell the threat. I say 'go' can it please go? It doesn't help I get shot to shit from 20 yards and my pet is still fecking about like we're at a church picnic.

A18 and Thiefs. Fumblefuck McGee from the The Red Cliff Compact can apparently sneak right through a pack of my pets, into my castle and back out through them while they sleep. Nah kamaan. Can you make my pets that are worthy of being guard pets do just that. My timber wolves really should have bitten a few of these guys to shit or at least tried.

If you do have a chance to work on this please include the Megafauna animals.

Sarge

XML error: Duplicate XML node name comps in this XML block: <ThingDef ParentName="AnimalThingBase"><defName>Thrumbo</defName><label>thrumbo</label><description>A gigantic creature of unknown origin. The thrumbo is gentle by nature, but extremely dangerous when enraged. Its long fur is exceptionally beautiful and valuable, and its razor-sharp horn is very valuable in most markets. Legends say that an old thrumbo is the wisest creature in the universe - it simply chooses not to speak.</description><statBases><MoveSpeed>5.25</MoveSpeed><ComfyTemperatureMin>-65</ComfyTemperatureMin><MarketValue>4400</MarketValue><MeatAmount>140</MeatAmount><!-- more than implied by body size --><MeleeDodgeChance>0.09</MeleeDodgeChance><MeleeCritChance>0.76</MeleeCritChance><ArmorRating_Blunt>0.2</ArmorRating_Blunt><ArmorRating_Sharp>0.3</ArmorRating_Sharp></statBases><tools><li Class="CombatExtended.ToolCE"><id>horncut</id><label>horn</label><capacities><li>Cut</li></capacities><power>30</power><cooldownTime>1.85</cooldownTime><linkedBodyPartsGroup>HornAttackTool</linkedBodyPartsGroup><armorPenetration>0.243</armorPenetration></li><li Class="CombatExtended.ToolCE"><id>hornstab</id><label>horn</label><capacities><li>Stab</li></capacities><power>30</power><cooldownTime>1.85</cooldownTime><commonality>0.65</commonality><linkedBodyPartsGroup>HornAttackTool</linkedBodyPartsGroup><armorPenetration>0.457</armorPenetration></li><li Class="CombatExtended.ToolCE"><label>left foot</label><capacities><li>Blunt</li></capacities><power>16</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>FrontLeftLeg</linkedBodyPartsGroup><armorPenetration>0.163</armorPenetration></li><li Class="CombatExtended.ToolCE"><label>right foot</label><capacities><li>Blunt</li></capacities><power>16</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>FrontRightLeg</linkedBodyPartsGroup><armorPenetration>0.163</armorPenetration></li><li Class="CombatExtended.ToolCE"><capacities><li>Bite</li></capacities><power>20</power><cooldownTime>2</cooldownTime><linkedBodyPartsGroup>Teeth</linkedBodyPartsGroup><armorPenetration>0.273</armorPenetration></li><li Class="CombatExtended.ToolCE"><label>head</label><capacities><li>Blunt</li></capacities><power>11</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>HeadAttackTool</linkedBodyPartsGroup><commonality>0.2</commonality><armorPenetration>0.125</armorPenetration></li></tools><comps><li Class="CompProperties_Shearable"><woolDef>KKAO_ThrumboWool</woolDef><shearIntervalDays>50</shearIntervalDays><woolAmount>330</woolAmount></li></comps><race><body>QuadrupedAnimalWithHoovesAndHorn</body><herdAnimal>true</herdAnimal><herdMigrationAllowed>false</herdMigrationAllowed><baseBodySize>3.5</baseBodySize><baseHungerRate>4.5</baseHungerRate><baseHealthScale>13.0</baseHealthScale><foodType>VegetarianRoughAnimal, DendrovoreAnimal</foodType><leatherColor>(233,233,233)</leatherColor><leatherInsulation>1.35</leatherInsulation><leatherCommonalityFactor>0.1</leatherCommonalityFactor><leatherMarketValueFactor>7</leatherMarketValueFactor><leatherLabel>thrumbofur</leatherLabel><leatherStatFactors><ArmorRating_Blunt>3.5</ArmorRating_Blunt><ArmorRating_Sharp>4.0</ArmorRating_Sharp><ArmorRating_Heat>3.2</ArmorRating_Heat></leatherStatFactors><trainableIntelligence>Advanced</trainableIntelligence><gestationPeriodDays>80</gestationPeriodDays><manhunterOnDamageChance>1</manhunterOnDamageChance><manhunterOnTameFailChance>0.018</manhunterOnTameFailChance><wildness>0.985</wildness><lifeExpectancy>220</lifeExpectancy><lifeStageAges><li><def>AnimalBaby</def><minAge>0</minAge></li><li><def>AnimalJuvenile</def><minAge>2.0</minAge></li><li><def>AnimalAdult</def><minAge>4.0</minAge><soundCall>Pawn_Thrumbo_Call</soundCall><soundAngry>Pawn_Thrumbo_Angry</soundAngry><soundWounded>Pawn_Thrumbo_Pain</soundWounded><soundDeath>Pawn_Thrumbo_Death</soundDeath></li></lifeStageAges><soundMeleeHitPawn>Pawn_Melee_BigBash_HitPawn</soundMeleeHitPawn><soundMeleeHitBuilding>Pawn_Melee_BigBash_HitBuilding</soundMeleeHitBuilding><soundMeleeMiss>Pawn_Melee_BigBash_Miss</soundMeleeMiss></race><modExtensions><li Class="CombatExtended.RacePropertiesExtensionCE"><bodyShape>Birdlike</bodyShape></li></modExtensions><comps><li Class="GiddyUpCore.CompProperties_Mount"><drawFront>true</drawFront></li></comps></ThingDef>
Verse.Log:Error(String)
Verse.XmlInheritance:CheckForDuplicateNodes(XmlNode)
Verse.XmlInheritance:ResolveXmlNodeFor(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodesRecursively(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodesRecursively(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodesRecursively(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodes()
Verse.XmlInheritance:Resolve()
Verse.ModContentPack:LoadDefs(IEnumerable`1)
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


XML error: Duplicate XML node name comps in this XML block: <ThingDef ParentName="AnimalThingBase"><defName>Ibex</defName><label>ibex</label><comps><li Class="CompProperties_Milkable"><milkDef>Milk</milkDef><milkIntervalDays>2</milkIntervalDays><milkAmount>6</milkAmount></li><li Class="CompProperties_Shearable"><woolDef>KKAO_WoolIbex</woolDef><shearIntervalDays>22</shearIntervalDays><woolAmount>70</woolAmount></li></comps><description>The hardy wild ancestor of the domesticated goat. Ibexes live on marginal territory that most antelopes couldn't survive, eating lichens and sparse mountain plants. They're famous for dextrously hopping across bare cliff faces - and for their violent ramming attack.</description><statBases><MoveSpeed>4.4</MoveSpeed><MeleeDodgeChance>0.15</MeleeDodgeChance><MeleeCritChance>0.08</MeleeCritChance><ComfyTemperatureMin>-30</ComfyTemperatureMin><MarketValue>200</MarketValue></statBases><tools><li Class="CombatExtended.ToolCE"><id>lefthoofblunt</id><label>left hoof</label><capacities><li>Blunt</li></capacities><power>9</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>FrontLeftLeg</linkedBodyPartsGroup><armorPenetration>0.11</armorPenetration></li><li Class="CombatExtended.ToolCE"><id>lefthoofpoke</id><label>left hoof</label><capacities><li>Poke</li></capacities><power>9</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>FrontLeftLeg</linkedBodyPartsGroup><armorPenetration>0.08</armorPenetration></li><li Class="CombatExtended.ToolCE"><id>righthoofblunt</id><label>right hoof</label><capacities><li>Blunt</li></capacities><power>9</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>FrontRightLeg</linkedBodyPartsGroup><armorPenetration>0.11</armorPenetration></li><li Class="CombatExtended.ToolCE"><id>righthoofpoke</id><label>right hoof</label><capacities><li>Poke</li></capacities><power>9</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>FrontRightLeg</linkedBodyPartsGroup><armorPenetration>0.08</armorPenetration></li><li Class="CombatExtended.ToolCE"><capacities><li>Bite</li></capacities><power>4</power><cooldownTime>1.65</cooldownTime><linkedBodyPartsGroup>Teeth</linkedBodyPartsGroup><armorPenetration>0.106</armorPenetration></li><li Class="CombatExtended.ToolCE"><label>head</label><capacities><li>Blunt</li></capacities><power>3</power><cooldownTime>1.65</cooldownTime><restrictedGender>Female</restrictedGender><linkedBodyPartsGroup>HeadAttackTool</linkedBodyPartsGroup><commonality>0.2</commonality><armorPenetration>0.064</armorPenetration></li><li Class="CombatExtended.ToolCE"><label>antlers</label><capacities><li>Blunt</li></capacities><power>15</power><cooldownTime>1.65</cooldownTime><restrictedGender>Male</restrictedGender><linkedBodyPartsGroup>HeadAttackTool</linkedBodyPartsGroup><armorPenetration>0.155</armorPenetration></li></tools><race><body>KKAO_QuadrupedAnimalWithHoovesAndHorns</body><herdAnimal>true</herdAnimal><baseBodySize>0.9</baseBodySize><baseHungerRate>0.35</baseHungerRate><baseHealthScale>0.9</baseHealthScale><foodType>VegetarianRoughAnimal</foodType><leatherColor>(153,129,113)</leatherColor><leatherLabel>goathide</leatherLabel><leatherInsulation>0.9</leatherInsulation><wildness>0.55</wildness><gestationPeriodDays>22.5</gestationPeriodDays><lifeExpectancy>15</lifeExpectancy><lifeStageAges><li><def>AnimalBaby</def><minAge>0</minAge></li><li><def>AnimalJuvenile</def><minAge>0.2</minAge></li><li><def>AnimalAdult</def><minAge>0.5</minAge><soundWounded>Pawn_Deer_Wounded</soundWounded><soundDeath>Pawn_Deer_Death</soundDeath><soundCall>Pawn_Deer_Call</soundCall><soundAngry>Pawn_Deer_Angry</soundAngry></li></lifeStageAges><soundMeleeHitPawn>Pawn_Melee_BigBash_HitPawn</soundMeleeHitPawn><soundMeleeHitBuilding>Pawn_Melee_BigBash_HitBuilding</soundMeleeHitBuilding><soundMeleeMiss>Pawn_Melee_BigBash_Miss</soundMeleeMiss></race><tradeTags><li>StandardAnimal</li></tradeTags><modExtensions><li Class="CombatExtended.RacePropertiesExtensionCE"><bodyShape>Quadruped</bodyShape></li></modExtensions><comps><li Class="GiddyUpCore.CompProperties_Mount"><isException>true</isException></li></comps></ThingDef>
Verse.Log:Error(String)
Verse.XmlInheritance:CheckForDuplicateNodes(XmlNode)
Verse.XmlInheritance:ResolveXmlNodeFor(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodesRecursively(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodesRecursively(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodesRecursively(XmlInheritanceNode)
Verse.XmlInheritance:ResolveXmlNodes()
Verse.XmlInheritance:Resolve()
Verse.ModContentPack:LoadDefs(IEnumerable`1)
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


Exception from long event: System.NullReferenceException: Object reference not set to an instance of an object
  at CombatExtended.AmmoInjector.InjectAmmos () [0x00000] in <filename unknown>:0
  at CombatExtended.AmmoInjector.Inject () [0x00000] in <filename unknown>:0
  at Verse.LongEventHandler.UpdateCurrentSynchronousEvent (System.Boolean& sceneChanged) [0x00000] in <filename unknown>:0
Verse.Log:Error(String)
Verse.LongEventHandler:UpdateCurrentSynchronousEvent(Boolean&)
Verse.LongEventHandler:LongEventsUpdate(Boolean&)
Verse.Root:Update_Patch1(Object)
Verse.Root_Entry:Update()

Harry_Dicks

I'm not meaning to be rude, but isn't that a super easy fix yourself? I want to say I've had this issue messing around with my own mods before. Just go check out the relevant thingDef and look for whatever duplicate entries there are. You can use Notepad++ "Find in Files" search feature and just search whatever relevant mod folder.

Then again, I have to remember not everyone likes to tinker with the xmls :)

wwWraith

I think this issue is a bit more complex. I haven't looked on CE, but most probably it is caused by both mods adding <comps> sections to the Thrumbo and Ibex via patching without checking if this section already exists. So the solution should be either to remove these additions from the patches in whatever mod loads later or (more complex but better) to rewrite it using PatchOperationSequence. If the latter mod is AnimalsOverhauls, then I think it should work if you'll change

<Operation Class="PatchOperationInsert"> <!-- Milkable and shearable Ibex  -->
<xpath>/Defs/ThingDef[defName = "Ibex"]/description</xpath>
<value>
<comps>
<li Class="CompProperties_Milkable">
<milkDef>Milk</milkDef>
<milkIntervalDays>2</milkIntervalDays>
<milkAmount>6</milkAmount>
</li>
<li Class="CompProperties_Shearable">
<woolDef>KKAO_WoolIbex</woolDef>
<shearIntervalDays>22</shearIntervalDays>
<woolAmount>70</woolAmount>
</li>
</comps>
</value>
</Operation>

<!-- [...] -->

<Operation Class="PatchOperationInsert">  <!-- Shearable Thrumbos -->
        <xpath>/Defs/ThingDef[defName = "Thrumbo"]/race</xpath>
        <value>
            <comps>
                <li Class="CompProperties_Shearable">
                    <woolDef>KKAO_ThrumboWool</woolDef>
                    <shearIntervalDays>50</shearIntervalDays>
                    <woolAmount>330</woolAmount>
                </li>
            </comps>
        </value>
    </Operation>


to


<Operation Class="PatchOperationSequence">
<success>Always</success>
<operations>
<li Class="PatchOperationTest">
<xpath>/Defs/ThingDef[defName = "Ibex"]/comps</xpath>
<success>Invert</success> <!-- breaks this sequence if <comps> already exist -->
</li>
<li Class="PatchOperationAdd"> <!-- Milkable and shearable Ibex  -->
<xpath>/Defs/ThingDef[defName = "Ibex"]</xpath>
<value>
<comps>
<li Class="CompProperties_Milkable">
<milkDef>Milk</milkDef>
<milkIntervalDays>2</milkIntervalDays>
<milkAmount>6</milkAmount>
</li>
<li Class="CompProperties_Shearable">
<woolDef>KKAO_WoolIbex</woolDef>
<shearIntervalDays>22</shearIntervalDays>
<woolAmount>70</woolAmount>
</li>
</comps>
</value>
</li>
</operations>
</Operation>

<!-- [...] -->

<Operation Class="PatchOperationSequence">
<success>Always</success>
<operations>
<li Class="PatchOperationTest">
<xpath>/Defs/ThingDef[defName = "Thrumbo"]/comps</xpath>
<success>Invert</success> <!-- breaks this sequence if <comps> already exist -->
</li>
<li Class="PatchOperationAdd"> <!-- Shearable Thrumbos  -->
<xpath>/Defs/ThingDef[defName = "Thrumbo"]</xpath>
<value>
<comps>
<li Class="CompProperties_Shearable">
<woolDef>KKAO_ThrumboWool</woolDef>
<shearIntervalDays>50</shearIntervalDays>
<woolAmount>330</woolAmount>
</li>
</comps>
</value>
</li>
</operations>
</Operation>

Although it's rather rough solution and the perfect one should include additional checks for partial adding or replacing.
Think about it. Think around it. Perhaps you'll get some new good idea even if it would be completely different from my words.

wwWraith

I just wrote something as an edit in my previous post :) (though haven't tested it myself).

You can try to make something similar for CE if you'll use https://gist.github.com/Zhentar/4a1b71cea45b9337f70b30a21d868782. If not, then yes, you can just delete those parts from KKAO (and copy them, probably partially, to CE, if you don't want to lose KKAO's values). Or just remove them from both mods and make your own combined patch ;)
Think about it. Think around it. Perhaps you'll get some new good idea even if it would be completely different from my words.

Kori

To anyone using this mod + Giddy-Up! getting the following error

XML error: Duplicate XML node name comps in this XML block: ...

make sure to load AO before Giddy-Up! and it will be solved!


@wwWraith Thanks again for your help, I was sure CE would be the culprit because when I tested Giddy-Up and AO before, I didn't get the error. I didn't expect it to be a simple loading order problem, sorry. :-[


Sarge

Quote from: Harry_Dicks on February 01, 2018, 04:17:31 AM
I'm not meaning to be rude, but isn't that a super easy fix yourself? I want to say I've had this issue messing around with my own mods before. Just go check out the relevant thingDef and look for whatever duplicate entries there are. You can use Notepad++ "Find in Files" search feature and just search whatever relevant mod folder.

Then again, I have to remember not everyone likes to tinker with the xmls :)

Nah, you're not rude, but you are wrong.

The modders are the few that release mods and know how to code. The users are the guys that often don't know the first think about coding, editing .xmls etc.

You are right that you should remember that though.

:)

BetaSpectre

░░░░░░░░░░░░░░░░░─╤▌██ |
░░░░░░░░─╤▂▃▃▄▄▄███████▄▃|
▂█▃▃▅▅███/█████\█[<BSS>█\███▅▅▅▃▂
◥████████████████████████████████◤
                           TO WAR WE GO