Project Zomboid

Project Zomboid

155 ratings
More Zombie Behavior
3
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
1.247 MB
6 Mar, 2024 @ 11:06am
27 Sep @ 4:09am
16 Change Notes ( view )

Subscribe to download
More Zombie Behavior

Description
More Zombie Behavior
This mod adds multiple behaviors for zombies with the intent to make the game more difficult. By default all behaviors are turned on, but each one of them can be turned off by means of a sandbox option.

New in v2
  1. Java sub-mod
  2. Boids / Flocking behavior
  3. Random distribution of behaviors

Java sub-mod
An optional sub-mod that fixes the the zombie sliding.
It moves the location of the OnZombieUpdate event to after the base update. Which fixes the mod's override getting overriden by the base game.

This enables the mod to use the vanilla movement system. Which fixes the zombies sliding and some jitter when zombies fade in.
The java files need to be manually overriden and a sandbox settings toggled to actually enable the java behavior.
This way the old behavior can be re-enabled as a fallback in case the IndieStone updates the game.

Boids / Flocking

While moving, zombies take other nearby zombies into account and will display flocking behavior. Which aims to simulate zombie herds more "realistically" by having them spread out and walk in the same general direction. This should also prevent zombie conga lines from forming while a group is chasing you.

For more information on boids: https://en.wikipedia.org/wiki/Boids

This feature is still in active development.
There are flocking-adjecent behaviors which are not yet done, such as a wander behavior.
Performance can still be improved. There is a system in place to dynamically scale down the amount of flocking calculations. But it might not be enough for some setups.
And there is an issue where zombies can get stuck against a wall.
These things will be adressed in later updates.

Random distribution of behaviors
Every behavior (except boid behavior) can be given to a random amount of zombies. By setting the sandbox setting to the value "random", the percentage of zombies can be specified with another sandbox setting in a separate tab.

Behaviors
  1. Boids / Flocking
  2. Intercept during chase
  3. Speed up during chase
  4. Move during attack
  5. No bump
  6. No burn damage

This mod techically works in multiplayer, as it throws no errors. But extra jank may occur when zombies switch targets, such as moonwalking to the switched target.

Intercept during chase
Zombies will take the player's velocity into account when chasing and intercept them. Instead of walking to the player's current position which results in zombies lagging behind the player.
This behavior is togglable for the WalkTowards and Lunge state, because this is an extension of an earlier mod I made.

This behavior intends to make it more difficult to casually walk past zombies.

Speed up during chase
Zombies will slowly speed up, over 5 minutes by default, to 1.5 their base speed, but this is adjustable with a sandbox option. Knocking a zombie down will reset this speed boost.
The maximum speedboost should be faster than the default player walking speed.

This behavior intends to make it more difficult to fight zombies in the open over longer periods of time.

There is now also the option to slow down zombies instead, mostly intended to be used with sprinters.

Technical details:
Where possible this speed up is done by means of speeding up the animation. However the game does not immediately detect animation speed changing, only when a state changes. Therefore there is a backup implementation that just increases the velocity of the movement. So this can look a bit weird if it takes a long time for a state change to happen.

Move during attack
Zombies will move with about the same speed as a lunge during the attack animation. This also uses the speed up behavior if it's turned on.

This behavior intends to make it more difficult to casually walk past zombies

No bump
When you run into a zombie, it transitions into a state where it is stunned for a short duration. When this behavior is turned on, this only happens when the zombie is hit from behind. Instead the zombie is free to immediately attempt an attack, similair to earlier builds of Zomboid.

This behavior intends to make running through a horde of zombies more difficult

No burn damage
Zombies are immune to fire damage, but will eventually stop burning after a random amount of time.
This ensures that fire is only detrimental to the player and cannot be used to kill zombies.


Compatibilities
Mod
Compatibility
Bandits
42 only
Wandering Zombies
yes
Starving Zombies
assumed yes, did not test it myself
Definitive Zombies
yes
The Walking Dead shamblers
Reported to work
Melee Ragdoll
Possible desync with local splitscreen

Workshop ID: 3174295288
Mod ID: Morry-MoreZombieBehavior
Mod ID: Morry-MoreZombieBehavior-v2
Popular Discussions View All (1)
1
12 Mar, 2024 @ 4:23pm
Compatiblity + Enabling during game
TheMan
80 Comments
Morry  [author] 27 Sep @ 9:47am 
@pisun
That's probably caused by the flocking behavior, which hasn't been completely optimized and is quite heavy. But there are sandbox settings to lower the amount of times it is executed.
Worst case you could disable the whole behavior, if you also want to use wandering zombies
pisun 27 Sep @ 7:49am 
aslo for god sake dont ever try to use this with wandering zombies or you would experince 2 fps
pisun 27 Sep @ 7:48am 
Thanks dude.:steamhearteyes:
Morry  [author] 27 Sep @ 7:32am 
I've updated the java files
Morry  [author] 27 Sep @ 2:36am 
@pisun Disable both intercept behaviors or use the java mod. However the Indie Stone just released 42.12 so the java mod might be incompatible.

@KemonoAmigo I'll make a new one just in case, hopefully sometime this weekend.
KemonoAmigo 26 Sep @ 8:05pm 
I think 42.12 changed the Java files (IsoZombie$Aggro.class, etc etc). I'm not 100% sure but they did these files changed their "Date modified" when the game updated.
pisun 26 Sep @ 1:45pm 
how can i disable "sliding zombies" thing.
Morry  [author] 6 Sep @ 4:15am 
I fixed the issue with Move during attack being faster than intended on lower frame rates.
I called the wrong movement function, so some multiplier was applied twice.
Morry  [author] 5 Sep @ 1:48pm 
@NonstickSQYD Thank you for the response. I've managed to reproduce the issue by locking the framerate to 24. Apparently the timedelta is not doing what I expected it to do.
So currently the speed up and move during attack do not work as intended with a low fps.
I'm going to try to fix it this weekend
NonstickSQYD 3 Sep @ 1:18pm 
horrible fps i can maybe get around 12-15 if im lucky
shitty pc