Jump to content

Issue Modifying Wolf Behavior


Recommended Posts

TL;DR - The entire reason for wanting to modify this, in case someone wants to take issue, is that I find the wolves unrealistically aggressive, and designed in a way that maligns creatures that rarely attack humans, yet are feared more than most wild animals due to misinformation.

Good evening!  In following the modding example for making wolves less aggressive/dangerous here, it seems like there is a disconnect between what it says should work, and what actually works.  For example, even when turning the seek range down to 1, wolves will still come across a good 15+ blocks or more and attack.  I have tried the Reload Mods option under the Mod Manager, thinking that perhaps it does not check upon load for modifications, but the wolves still behave the same.

Does anyone have any experience getting this to work?  As of v1.12.14, it seems to not work the way I would expect from the documentation.  I literally have this:
 

{
  code: "seekentity",
  entityCodes: ["player"],
  priority: 1.49,
  movespeed: 0.045,
  seekingRange: 1,
  animation: "Run",
  leapAtTarget: true,
  leapAnimation: null,
  animationSpeed: 2.2,
  leapChance: 0.01,
  sound: "creature/wolf/growl",
  whenInEmotionState: "aggressiveondamage"
}

And yet, the seekingRange seems to be far higher than a value of 1 would suggest.  This edit is in both wolf-male.json and wolf-female.json, so I know it is not that I missed an edit somewhere between the two.

Any insight is appreciated.

NOTE:  If there is a way to turn off player-based aggression unless attacked another way, I am all ears :)

Thanks!

  • Like 1
  • Confused 1
Link to comment
Share on other sites

  • 3 months later...

I made a mod called the peaceful mod before there was a peaceful mode. You might want to take a look at what I did there.


Looking over the current configuration for a male wolf for the snippet you have posted.
 

Spoiler

 


					{
						code: "seekentity",
						entityCodes: ["player", "chicken-rooster", "chicken-hen", "chicken-baby", "hare-*"],
						priority: 1.5,
						movespeed: 0.045,
						seekingRange: 15,
						
						belowTempSeekingRange: 25,
						belowTempThreshold: -5,
						
						animation: "Run",
						leapAtTarget: true,
						leapAnimation: null,
						animationSpeed: 2.2,
						leapChance: 0.01,
						sound: "creature/wolf/growl",
						whenNotInEmotionState: "saturated"
					},
					{
						code: "seekentity",
						entityCodes: ["player"],
						priority: 1.49,
						movespeed: 0.045,
						seekingRange: 15,
						animation: "Run",
						leapAtTarget: true,
						leapAnimation: null,
						animationSpeed: 2.2,
						leapChance: 0.01,
						sound: "creature/wolf/growl",
						whenInEmotionState: "aggressiveondamage"
					},

There are two situations in which a wolf will seek a player. At the bottom of each block you will see the condition. The first is when the wolf is hungry and the second is when the wolf takes damage. Both are set to a range of 15 which means they will seek out a player within 15 blocks. The one you have modified is when they take damage. So when they take damage they will only look one block for a target. I think you may want to remove player as a target in the first block so they don't target players when hungry. Further down in "emotionstates" you may want to remove the block regarding "aggressiveondamage". 

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.