Configuration guide - ysaroka/InediaInfectedAI GitHub Wiki

Configuration guide

This configuration guide contains comprehensive information on setting up the "InediaInfectedAI" modification. If you didn't find something, it is most likely because such mechanics are not present in the modification. The guide includes descriptions of all the existing mechanics in the modification, with links to the parameters that allow you to configure these mechanics, as well as providing links and information on how to adjust these parameters.

First, you need to add your SteamID to the administrators config to gain access to additional commands (entered in the game chat) and features of this mod. For instance, to be able to reload the mod config without restarting the server, or to receive information in the chat about the damage taken by a zombie/animal/survivor. Also, in case of errors in the configuration file, you as an administrator will receive a message about this in the game chat when logging into the server. Find out more on how to do this here.

Here you can find information about the mod configuration file, its location, nuances of configuring it, possible errors and reasons why configuration parameters may be ignored, as well as nuances of updating the file to a new version.

If you've changed a parameter and want to revert it back without deleting the current configuration file, you can check the current configuration file with default values here. It gets updated after each modification update.

Now regarding its configuration...

First and foremost, it's important to understand that ⚠ ANYZombies.* parameter (excluding the Zombies.Groups, Zombies.CustomIrritants and Zombies.ThrowingProjectiles configuration lists) can be configured for various types of zombies, while some parameters are also configurable for animals and survivors, as typically indicated in the parameter description. If the parameter description doesn't specify which creatures it applies to, it ⚠ works only for infected and does not apply to survivors or animals ⚠.

Instructions for configuring any parameter for different classes, base classes, as well as groups that zombies can be combined into, can be found here.

Next, I will simply provide descriptions of the features and mechanics present in the modification and provide links to the parameters used to configure these features.

By default, the majority of these features are enabled (unless stated otherwise) and balanced for hardcore gameplay. There is no need to manually enable or disable them unless a specific mechanic doesn't suit your preferences.


Door Break Mechanic

Settings for breaking doors, lockpicked doors, prohibiting the breaking of certain doors, and so on, are controlled by the parameters Zombies.BreakingDoors*. ⚠️ If your server uses custom doors opened by keycards - make sure to read this FAQ item.


Damage to Zombies

In this parameter group (DamageToZombie*), you can configure the HP of zombies (with a separate setting for leg HP), zombie defense against players/vehicles/explosions for various body parts, disable multi-damage (piercing damage affecting multiple body parts with a single hit), adjust zombie knockback when taking damage (shock), and set damage multipliers for different weapons against various creatures (including animals and characters):


Damage to Players

This parameter group (DamageToPlayer*) contains settings for various types of damage (health, shock, stamina, blood, bleeding chance) inflicted by zombies on players. Separate settings for each type of damage in a block.


Player Stun Mechanic

When hit by zombies, the player may become stunned (animation is interrupted, for about a second they cannot do anything, and they may also be pushed back and potentially fall from their elevated position). These parameters can be used to adjust the chance or disable this mechanic altogether.


Player Pain Mechanic

Characters (players, npc-survivors) have a pain mechanic. That is, when taking damage to limbs, they will receive various debuffs depending on the limb and the extent of its damage. These are debuffs such as reduced movement speed, decreased attack speed, stamina depletion, and disarming items from the player's hands (the debuffs depend on the damaged limb). The pain system also includes injuries like deep wounds, fractures, gunshot injuries and internal bleeding. If you want to completely disable the pain system, set the parameter Players.PainSystemIsActive to "0", this will completely disable the entire pain system, including debuffs and injuries (deep wounds, fractures, gunshot wounds), reverting everything to vanilla behavior. You can also completely disable the pain system specifically for damage caused by certain types of creatures. For example, you can disable it for players while keeping it enabled for infected, or disable it for animals, or for a specific type of infected. To do this, use the Zombies.PainToPlayerHandlerIsActive parameter along with the base or exact classes of the creatures you want to target. There is also the possibility to influence the resulting pain damage for any type of infected or creature and any limb using multipliers, parameters Zombies.PainToPlayer#LIMB#Multiplier and Zombies.PainToPlayer#LIMB#InBlockMultiplier. This way, you can create stronger and weaker creatures that inflict different amounts of pain, you can also use these parameters to disable the pain system for any specific limb by setting its value to "0". This mod also introduces a system of fractures, deep wounds, and gunshot injuries for each limb, as well as internal bleeding. If for any reason you want to disable these systems separately, you can set Players.LimbsBreakSystemIsActive, Players.LimbsDeepWoundSystemIsActive, Players.LimbsBulletSystemIsActive, or Players.InternalBleedingSystemIsActive to "0". As for the system of deep wounds and fractures, you don't have to disable it entirely. Instead, you can, for example, adjust the chances of these injuries occurring for each creature individually using the Zombies.PainToPlayerLimbsDeepWoundChancesMultiplier and Zombies.PainToPlayerLimbsBreakChancesMultiplier parameters. For more detailed information on configuring the pain system, see here. You can also read about the medical system affecting pain and injuries introduced by this mod here (it also describes ways you can influence the chances and duration of surgeries, add your own medications and items, give your medications or items Inedia properties, and many other customization options).


Diseases Transfer Mechanic

When receiving damage from infected or animals - with a certain probability and under specific conditions, players may acquire agents of various diseases. Using these parameters, you can configure which agents are transmitted, the amount of agents transmitted, the transmission probability, and much more. Or you can completely disable this mechanic by setting parameter Zombies.DiseasesToPlayerHandlerIsActive to "0". For further details, refer to the parameter descriptions.


Vehicle Attack Settings

Settings for zombie attacks on vehicles, vehicle damage, attacks on players inside vehicles, vehicle durability, as well as damage from collisions with vehicles. Also, if you're interested, you can read here about how the logic of attacking vehicles works.


Vehicle Noise and Collision Settings

In the Vehicles.* section, the Vehicles.Noise parameter allows you to flexibly adjust the radius of zombie attraction caused by the noise of various vehicles. The Vehicles.CollisionsSoundThreshold parameter controls the sound emitted by the vehicle upon collision with infected, depending on the vehicle's speed. The Vehicles.CollisionsSpeedReductionMultiplier parameter sets the slowdown multiplier for the vehicle when colliding with infected. The Vehicles.CollisionsDamageSpeedThresholdKmH parameter sets the minimum speed threshold, above which the vehicle will start taking damage from collisions with creatures.


Zombie Movement Speed

Adjusting the zombie movement speed in different modes.


Zombie Jump Settings

Settings for jumping infected up and down (уou can configure the maximum jump height, jump frequency, and jump chance). Also, please note that there is a parameter Zombies.StuckJumpHandlerIsActive that allows infected to jump towards the player while attempting to escape from a stuck position. This parameter is independent of the up and down jump handlers and must be disabled separately (☝️ but keep in mind that Zombies.StuckJumpHandlerIsActive is an extremely useful mechanic that allows infected to get out of stuck positions and also reach places where vanilla infected can’t go due to the lack of a navigation mesh - for example, narrow spots that players often abuse to exploit vanilla infected, or areas completely enclosed by walls, such as small pools or reinforced concrete rings like those in the "Stroitel" camp. If you disable this parameter, zombies won’t be able to get there, and players will be able to deal with large numbers of infected for free).


Zombie and Animal Blood and Bleeding System

Infected and animals in this mod have a blood system, meaning they can die from blood loss when wounded. Using these parameters, you can configure various aspects of the blood system, such as blood volume, bleeding severity, regeneration rate. You can also disable blood splatters when creatures take damage or turn off the blood trails that wounded creatures leave on the ground. Additionally, if your clients experience performance issues due to a large number of blood particles, there are server parameters that allow you to globally configure a limit on the number of particles and their duration for all clients (BloodParticlesLimit, BloodParticleDurationSeconds). Ideally, these settings should have been moved to the client, but since I'm too lazy to create an interface, I didn't do that. If interested, you can read about how the blood system for infected and animals works here. ⚠️ If you have mutants or bosses on your server, read this.


Projectile Throwing System

In this modification, infected have the ability to throw projectiles at players. Similarly, players can throw projectiles at infected and animals. This mechanic can be completely disabled using the Zombies.ThrowingProjectilesHandlerIsActive parameter, but keep in mind that this also disables damage from projectiles thrown by players. To disable projectile throwing only for the infected, refer to the description of the Zombies.ThrowingProjectilesHandlerIsActive parameter. Below are the settings related to this mechanic. You can also refer to the FAQ section for configuring this mechanic.


Zombie Range Attack Mechanic

If, for some reason, you are not satisfied with the projectile throwing mechanics or jumping mechanics, this modification offers another mechanic that prevents players from killing infected while sitting on obstacles without consequences. This is the mechanic of ranged attacks, whereby infected will reach out to attack the player at approximately the same distance at which the player reaches them. By default, it is turned off, but you can enable it, adjust the radius, obstacle height, or leave the parameters at their default values.


Zombie Irritant Reactions and Destruction

Infected can react to various irritants, such as light and noise items, player noise, door noise, the noise of another infected's body falling, and the screaming of another infected. Their reaction to such irritants, as well as their ability to destroy light and noise items, is customized by the Zombies.React* parameters.


Custom Irritants

There is also an option to configure custom irritants, such as mod items that can be turned on and off.


Loss of Interest in Irritants

You can also influence the time after which an infected will lose interest in the irritant if it cannot reach it. This is a global parameter and cannot be configured for a specific type of zombie.


Inedia Long Vision

In this modification, there is Inedia Long Vision mechanic, which allows infected characters in search mode to see very far. This mechanic was introduced because vanilla vision does not allow an infected to see further than 40 meters, which in certain situations wasn’t enough for realism. By default, the mechanic does not work for infected in CALM mode, so there’s no need to worry that it’s extremely dangerous or that they will tear apart players on your server after this update. The mechanic can be fully disabled via Zombies.LongVisionHandlerIsActive parameter. Detailed information about the Inedia Long Vision mechanic and configuration parameters can be found here.


Zombie Return to Spawn Mechanic

In this modification, there is a mechanic that allows infected to return to their spawn area after their Search mode ends. These parameters allow you to disable or configure this mechanic.


Zombie Scream Mechanic

Using the parameters in the Zombies.Scream* group, you can configure various mechanics related to the infected's scream. For example, the probability that an infected will scream upon seeing the player (if the infected doesn't scream, they will attack silently, which also adds an element of surprise). You can also adjust the radius within which other infected are attracted by the scream, as well as the cooldown time before the next scream after one has been made.


Quiet Door Opening Mechanic

Since infected in the game can hear the sound of doors opening/closing, there is a mechanic for silently opening/closing doors in the game. If you disable the mechanic of quiet door opening/closing for players, zombies will also stop hearing the sound of door opening/closing. By default, the quiet door opening function is disabled in the modification, and only the quiet door closing function is active. However, if for any reason you wish to enable the quiet door opening function, please make sure to read this FAQ item.


Zombie Melee Dodge Mechanic

Infected in close combat have become slightly smarter. Now they recklessly rush only towards the player who has turned their back to them. However, if the player is facing them directly, the infected analyze the threat and may slow down at a certain moment, thereby dodging a powerful blow. This will create significant problems for those accustomed to killing infected with a precise head strike as they approach, already reflexively sensing when to strike. Now battles will become less predictable and more intense, as even a single infected under certain circumstances can inflict damage regardless of the player's experience and level of preparation in close combat. Using the following parameters, you can adjust the infected slow chance and cooldown, or disable this mechanic altogether.


Zombie Jump Attack Mechanic

In this modification, there is a mechanic that allows infected to jump toward players when approaching them, attempting to stun. This adds extra challenges in dealing with the infected, as they gain an attack that always stuns the player while bringing the infected right up close. Using the following parameters, you can adjust the jump probability and cooldown, or disable this mechanic altogether.


Attacks on Unconscious Players by Zombies

In this modification, infected can inflict a certain amount of Health damage to the player after they lose consciousness. The parameter Zombies.AttackPlayersUnconsciousHealthDamageLimit allows you to specify the maximum total amount of HP that infected can deal to the player while the player is unconscious. The purpose of introducing this parameter is to prevent abuse, where players with fractures or low health could deliberately lose consciousness in dangerous situations to avoid threats. Now, each unconscious episode always costs the player a specific amount of HP, making them think twice before losing consciousness. Alternatively, if attacks on unconscious players are handled by another mod or you are not satisfied with this mechanic, you can completely disable it using the Zombies.AttackPlayersUnconsciousHandlerIsActive parameter, reverting to the vanilla behavior.


Zombies and NPCs Relationships

Configuring the relationship between zombies/animals and NPCs (including AI-controlled bots).


Zombie Injuries and Debuffs

When infected take damage to their arms or legs from players, they receive various debuffs depending on the limb. These settings allow you to configure the strength of debuffs for damaged limbs of infected, as well as the spawning of infected with already damaged limbs. If you're interested in how the system of infected injury and debuffs works, you can read about it here. ⚠️ If you have mutants or bosses on your server, read this.


Fall Damage for Zombies

Settings for infected damage upon falling from height.


Player Weapon Disarm Mechanic

If you need the weapon to be knocked out of the player's hands with a certain chance when they receive damage from a creature, use these parameters. By default, these chances are set to 0%, meaning creatures do not knock weapons out of the character's hands. Do not confuse these parameters with parameter Zombies.PainToPlayerArms*DisarmMultiplier, which depends on the Inedia pain system and only works when the hands are damaged.


Smell Mechanic

This modification includes a smell mechanic that allows the infected to track players by their smell. You can completely disable this mechanic using the Players.SmellsHandlerIsActive parameter or disable it for a specific type of infected using the Zombies.SmellsHandlerIsActive parameter. You can also influence the infected’s smell perception range, as well as the actual smell radii of the player for different states (healthy, wounded, bandaged). Additionally, if that’s not enough and you want to affect the player’s smell radius in some other way - for example, reducing the radius depending on skill levels or hygiene - this modification provides the method InediaInfectedAI_Restrictions.SmellsSystem_ModifyPlayerSmellRadius(), which you will need to override to implement the logic you need in your own mod. A detailed description of this mechanic, along with the available parameters, can be found here:


Zombie Attack on Animals

The ability for infected to attack animals. If your server features custom animals and you want to flexibly configure their friendship with the infected, pay attention to parameter Zombies.AttackAnimalsCustom.


Zombie Butchering Mechanic

You can enable or disable the ability to butcher zombies like animals, and also configure the list of items that will drop from them.


Camera Shake on Player Damage

When taking damage from zombies, the player's camera shakes, but this can be disabled.


Zombie Resistance to Chemical Zones

There is an option to configure the resistance of zombies to chemical zones.


Zombie Leg Cripple Mechanic

You can disable players ability to cripple infected legs, as well as configure the spawn of zombies with crippled legs.


Body Search Mechanic

You can disable or enable searching of zombies/players bodies by players, as well as adjust the search time, or forbid searching if the player is holding something in their hands. You can also enable/disable debuffs if a player searches a body without gloves or a mask.


Ability to backstab

If necessary, you can disable the ability for a player to perform a backstab on an infected.


Vanilla Player Visibility Multiplier

The following parameters can affect the vanilla visibility multiplier of a player by infected, for any time of day.


Vanilla Player Noise Multiplier

There is an option to influence the multiplier of the vanilla noise level emitted by the player. In general, if you are interested in making infected less sensitive to player sounds, you need to study this FAQ item, as several mechanics are responsible for this.


Zombie Size Settings

If necessary, you can configure the size of infected, which will be randomly generated within the specified parameters from and to. By default, this option is disabled.


Player Clothing Camouflage

There is an option to make any clothing camouflage, affecting its visibility multipliers. It is possible to set the multiplier to "0", and infected will not see the player at all.


Silent Weapon Suppressor Mechanic

This modification includes a mechanic that irritates the infected if a silent shot is fired more than once every 5 seconds. This slightly reduces the overpowered nature of silent weapons in the game, while still keeping them effective if you shoot no more than once every 5 seconds. This cooldown is configured by SuppressorShotCooldownSeconds parameter. Set it to "0" if you want to disable this mechanic, or you can also set the value of this parameter to something like "0.3" if you want the infected not to hear single silent shots, but still be able to hear automatic or burst fire. The parameter SuppressorShotOverfireDistanceMeters allows you to set the audibility radius of a shot from a silenced weapon if firing occurs too frequently.


Zombie Search Mode Settings

Settings for the search sphere and extended search mode. Typically, this is not required, as the functionality has been thoroughly tested and is currently well-balanced and functioning as intended. You can learn about what search spheres are by watching this video (enable subtitles).


Player Limb Damage Distribution Override

This modification uses its own custom damage distribution system for limbs. For example, infected in this modification can attack the player's head, but if the player is blocking, the damage is redirected to the arms. If for any reason you don't like this mechanic, if you don't like that infected deal damage to the head and damage headgear, and you want to revert to the vanilla system, you can do so using this parameter.


Ability for Zombies to walk on water

In this modification, pathfinding for infected is enabled by default both on water and underwater. This is done through the game config (config.cpp) and cannot be disabled through the configuration of this modification. However, you can disable their ability to walk on water, for this, please refer to this FAQ item.


If you still have any questions, you can check the FAQ section, ask them on Discord or Telegram, or browse other sections of the InediaInfectedAIWiki.