DayZ
InediaInfectedAI
Viser 31-40 af 54 forekomster
< 1  2  3  4  5  6 >
Opdatering: 10. feb. 2024 kl. 1:38

---------------- 🕓 🕗 🕛 ----------------
v1.6
The mod has been updated.
---------------- 🕓 🕗 🕛 ----------------
☑️ 1) Added badges for pain debuffs introduced by mechanic "Zombies.PainToPlayer*".
Also added parameter "Players.ShowPainBadges", allowing to visually disable these badges while keeping the debuff mechanics intact.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playersshowpainbadges

☑️ 2) Added parameter "Zombies.PainToPlayerHandlerIsActive", allowing to completely disable the entire pain debuff mechanics:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerhandlerisactive

☑️ 3) Since the arm pain debuff didn't pose as significant issues as other debuffs, it has been expanded. Now, the arm pain debuff also halves the player's melee damage. Under the effect of painkillers, the melee damage slightly increases (up to 80%), and under the effect of morphine, it fully restores (100%).

☑️ 4) Now, if the infected has damaged arms, the chance that they will inflict a pain debuff on the player when dealing damage is reduced. Accordingly, parameters have been added to adjust the reduction of this chance:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesinjuryhandlerinjuredonearmpainchancemultiplier
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesinjuryhandlerinjuredbotharmspainchancemultiplier

☑️ 5) Now, if the infected has damaged arms, the chance that they will inflict a bleeding on the player when dealing damage is reduced. This will only work with the bleeding mechanics introduced by this mod (parameters "Zombies.DamageToPlayerBleeding*") and will not work with the vanilla mechanics.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesinjuryhandlerinjuredonearmbleedingchancemultiplier
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesinjuryhandlerinjuredbotharmsbleedingchancemultiplier

☑️ 6) Added parameter "Zombies.FriendlyNPC", allowing to specify survivor NPC character classes that infected will not attack. They will also not react to the irritants of these NPCs, such as shots, smells, noise, and light.
An important condition is that the NPC class must be a descendant of "SurvivorBase".
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesfriendlynpc

☑️ 7) Added the "AdminsSteamIds" parameter, allowing to specify the SteamIDs of administrators for whom the command to activate/deactivate god mode will be available, enabling them to make the player invisible to infected entities, including disabling the irritation mechanics introduced by this mod:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#adminssteamids

☑️ 8) Now, when the player is hit by an infected, the camera shakes, allowing them to feel the impact force and adding immersion to the game.
To configure this feature or disable it, a parameter "Zombies.CameraShakeToPlayerIntensity" has been added:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiescamerashaketoplayerintensity

If one or both arms of the infected are damaged, the level of camera shake will decrease or disappear. However, the configuration for altering these levels is not yet provided to avoid overloading the infected damage system with parameters.

☑️ 9) The keycard doors on the Banov map are excluded from door breaching and silent door opening functions in the default configuration.

☑️ 10) Fixes:
- The error has been fixed, which prevented infected from killing non-player characters (such as AI or NPCs). It was caused by a conflict between the Inedia damage handler and the eAI and Expansion mod damage handlers. Therefore, it was decided to disable all "Zombies.DamageToPlayer*" functions for NPCs.
Additionally, smell creation for NPCs has been disabled, which will slightly improve performance.
- Fixed a bug that caused infected in chase mode to attack car doors and players in the car from any distance if there was a player sitting in the back right seat of the car.
- The "body fall" irritant will no longer trigger if the infected dies in a crawling state.
- Additional checks have been added to the PlayerBase class to prevent errors "NULL pointer to instance" in situations where the character is controlled by AI or the character is an NPC.
- The hand shake mechanics didn't work correctly, the weapon would only shift up and to the right instead of shifting in all directions.

☑️ 11) Rebalance default configuration parameters for more realism.
- The chance of the player experiencing bleeding when damaged by infected was quite unrealistic and was introduced due to the lack of other factors posing challenges to the player.
Since there are now quite a few factors from the infected side, the chances of bleeding in the default configuration have been reduced:
Zombies.DamageToPlayerBleedingChancePercent:
"all": 20 => 10
"police": 30 => 15
"medic": 30 => 15
"military": 50 => 20

- Default duration of pain debuffs (parameters "Zombies.PainToPlayer*Duration*") in the configuration has been changed from 30 seconds to 60 seconds, as in my tests, at a duration of 30 seconds, debuffs practically didn't pose a challenge to the player since they quickly wore off:
Zombies.PainToPlayerArmsDurationSeconds:
Zombies.PainToPlayerLegsDurationSeconds:
Zombies.PainToPlayerTorsoDurationSeconds:
"all": 30 => 60

- The default chances of receiving pain debuffs (parameters "Zombies.PainToPlayer*Chance*") in the configuration have been changed:
Zombies.PainToPlayerArmsChancePercent:
Zombies.PainToPlayerLegsChancePercent:
Zombies.PainToPlayerTorsoChancePercent:
"all": 30 => 20
"police": 30 => 30
"medic": 30 => 30
"military": 30 => 40

Zombies.PainToPlayerArmsInBlockChancePercent:
Zombies.PainToPlayerLegsInBlockChancePercent:
Zombies.PainToPlayerTorsoInBlockChancePercent:
"all": 5 => 5
"police": 5 => 10
"medic": 5 => 10
"military": 5 => 15

- The stamina damage value ("Zombies.DamageToPlayerStaminaPercent") has been altered in the default configuration:
Zombies.DamageToPlayerStaminaPercent:
"all": 30 => 15
"police": 30 => 20
"medic": 30 => 20
"military": 30 => 25

You can view the altered parameters in the default configuration file, which is always available here:
https://github.com/ysaroka/InediaInfectedAI/wiki/Default-configuration-file

Opdatering: 3. feb. 2024 kl. 1:12

---------------- 🕓 🕗 🕛 ----------------
v1.5
The mod has been updated.
---------------- 🕓 🕗 🕛 ----------------
1) A limb injury system has been introduced (short video: https://www.youtube.com/watch?v=Li6EGTRbwwo).
Now, when receiving damage to a limb, the infected will receive various debuffs.
For example, damage to the arm will result in reduced attack and affect the chance to break doors and stun the player, while damage to the leg will affect movement speed and jump height.
It is possible to specify which of the infected limbs will be damaged upon its spawn (parameters "Zombies.InjuryHandlerSpawnWithInjured*ChancePercent", default is 0% for all).
There is also an option to set the time in seconds, after which the limb of the infected will completely regenerate after being damaged (parameters "Zombies.InjuryHandlerRestoreInjured(Arm|Leg)AfterSeconds", default is 0 seconds, i.e. never).
Also a simplified leg injury system has been introduced for animals (movement speed limit on leg damage).
More details about injury system can be found here:
https://github.com/ysaroka/InediaInfectedAI/wiki/FAQ#how-does-the-injury-and-debuff-system-work
New parameters (Zombies.InjuryHandler*):
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesinjuryhandlerisactive

⚠️ If you have mutants or bosses on your server, read this:
https://github.com/ysaroka/InediaInfectedAI/wiki/FAQ#strong-bosses-and-mutants-on-my-server-get-attack-and-speed-debuffs-from-damage-how-can-i-adjust-this

2) The player now has a pain system linked to the damage caused by infected and is unrelated to any other type of damage.
After receiving a blow to different body parts (arm, leg, torso), the player may get a pain shock, causing various debuffs.
By default, the duration is set to 30 seconds for all types of debuffs. There is no point in setting these values too high, as the debuff states are not stored in the player's database, so the debuffs will expire after a player logs out and logs back in.
The main idea is to create a short-term pain shock from infected attacks, which can pose challenges when dealing with a large number of infected, preventing actions such as escaping or jumping over a fence, for example.
If the blow landed on the arm, the player experiences tremors, hindering aiming and slightly slowing movement speed. If the torso is damaged, stamina regeneration ceases, and movement speed is also slightly reduced. If the blow landed on the leg, the player undergoes a significant slowdown in movement speed and he loses the ability to jump over high obstacles.
While the morphine effect is active, all debuffs are removed.
While the adrenaline or painkiller effects are active, debuffs are significantly weakened. Thus, previously almost useless painkiller pills, which last for 5 minutes, now become more valuable.
Parameters have been added to customize the chance of injuries for each body part when receiving regular damage and damage while blocking, as well as the duration of debuffs:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerarmschancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerarmsinblockchancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerarmsdurationseconds
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayertorsochancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayertorsoinblockchancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayertorsodurationseconds
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerlegschancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerlegsinblockchancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespaintoplayerlegsdurationseconds

3) The mechanic preventing clustering of infected at one point has been added, thereby reducing the likelihood of game engine collisions, which could cause infected to scatter at high speed in different directions. This also fixes the problem that infected often get through texture into the wall of buildings they can't get into.
Nevertheless, I cannot test all the nuances of this mechanic, and it may potentially cause specific issues for someone. Therefore, a parameter has been added to allow disabling it:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiespreventclustering

In this short video, you can see what impact this parameter has:
https://www.youtube.com/watch?v=zPKUPPXsqJw

4) Added parameters "Zombies.DamageToPlayerStaminaPercent" and "Zombies.DamageToPlayerInBlockStaminaPercent" allowing to specify the percentage of stamina damage inflicted by the infected to the player when the player is without block and in block. Default values are "30%" and "5%" respectively.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetoplayerstaminapercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetoplayerinblockstaminapercent

5) A new parameter, "Zombies.SearchSphereRadiusBurst", has been added, along with a change in the logic of the "Zombies.SearchSphereRadiusMax" parameter. Now, "Zombies.SearchSphereRadiusMax" no longer represents the radius at which the sphere bursts, instead, it serves as a constraint on the sphere's radius upon creation, similar in meaning to "Zombies.SearchSphereRadiusMin".
In the "Zombies.SearchSphereRadiusBurst" parameter, you now specify the radius at which the sphere bursts. These adjustments were made to ensure that infected located far from the gunshot always have a certain amount of time to approach the source rather than losing interest immediately, as the sphere bursts right after creation.
Consequently, the default value of "Zombies.SearchSphereRadiusMax" has been changed from 60 to 50 meters, while "Zombies.SearchSphereRadiusBurst" is set to 60 meters.

Illustrating how it will work now with default settings:
If an infected hears a gunshot at a distance of 180 meters, it creates a sphere with a radius of 180 * 0.3 = 54 meters.
This sphere is capped from above at "Zombies.SearchSphereRadiusMax", meaning it is truncated to 50 meters.
Afterward, it grows at a rate of 0.2 meters per second, and when it reaches a radius of 60 meters ("Zombies.SearchSphereRadiusBurst"), it bursts.
The infected then transitions to a calm state and stops searching.
Thus, no matter how far the infected is from the gunshot, it will always move towards the source of irritation for a minimum of (60 - 50) / 0.2 = 50 seconds.

You can change the value of "Zombies.SearchSphereRadiusMax" in the old configuration from 60 to 50, or you can do nothing, and everything will function the same as it did in the old version of the mod.

6) Added parameter "Zombies.SmellsLossInterestAfterReactionForSeconds", allowing to disable the smell irritation mechanic for a specified number of seconds after the infected detects the player's smell.
The purpose of this is described in the parameter description:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessmellslossinterestafterreactionforseconds
Default value is "0".

7) Added the parameter "Zombies.AttackAnimalsCustom", allowing customization of the relationships between infected and custom animals in cases where these animals are not inherited from any of the base classes or when it is necessary to configure them separately from the base class:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalscustom

The remaining update details couldn't fit due to Steam limitations, but you can find them on Discord[discord.gg].

Opdatering: 19. jan. 2024 kl. 1:48

*) A major refactoring aimed at performance optimization. Heavy methods will now be called much less frequently. Performance has also been optimized by reducing the number of raycasts and lowering the frequency of raycasts where frequent calls were unnecessary.

*) The performance of the door breaking functionality has been significantly optimized. Infected no longer scan buildings within a 30-meter radius but instead acquire building information through raycasting a few meters ahead.

The parameters "Zombies.BreakingDoorsBuildingSearchRangeMeters" and "Zombies.BreakingDoorsDoorSearchRangeMeters" are no longer necessary and have been removed.
As a result, the probability of FPS drops for those who install the mod WITHOUT WIPE is much lower, as these parameters could impact performance. Without server wipe, this parameters could have taken random values, including very large ones.

The logic for selecting a door to break through has also been changed. Now, it is not a randomly available door that is chosen, but rather the nearest available door.

*) The new parameter "Zombies.SizeDamageScalingIsActive" has been added, allowing the activation of damage scaling based on the size of the infected, affecting the damage they deal and receive.
Additionally, the parameter "Zombies.SizeBloodVolumeScalingIsActive" has been added, enabling the scaling of the infected's blood volume based on their size.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessizedamagescalingisactive
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessizebloodvolumescalingisactive

*) Now, if the irritant is behind the infected (within a 90-degree zone), the infected will react worse to it. That is, for example, shining a light in the face and in the back of the infected will have a different effect.
The same applies to sounds and other irritants. Now stealth killing will be even easier.
Accordingly, the parameters "Zombies.ReactBehindVisualMultiplier" and "Zombies.ReactBehindNoiseMultiplier" have been added to allow you to specify a multiplier to the object's irritation radius if it is behind the infected, for visual and noise sources of irritation, respectively.
The default multipliers are "0.2" for visual irritants and "0.6" for noise irritants.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactbehindvisualmultiplier-zombiesreactbehindnoisemultiplier

*) A new parameter "Zombies.SmellsAllowStealthKills" has been added, allowing the disabling of the infected reaction to the player smell when they are nearby from behind the infected. This eliminates situations where the infected would respond to the smell of a player attempting a stealth kill, preventing them from completing it. Now, performing a stealth kill will be much easier.
By default, the parameter is enabled.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessmellsallowstealthkills

*) The default values of the configuration parameters "Zombies.ReactFootstepsCrouchSprintDayNoise" and "Zombies.ReactFootstepsCrouchSprintNightNoise" have been changed to "0.7".
Like a few changes above - this is done for balance and to increase the relevance of stealth killing mechanics, as in this modification it is extremely difficult to kill a few infected in some other way without involving all the infected in the neighborhood.

*) A new "Type" field has been added for custom irritants. In old configs where type is not specified - default type "visual" will be used.
More details (Where -> Type):
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiescustomirritants

*) Now the infected when irritated - does not always turn and run towards the player, but sometimes waits for a while, and sometimes turns its head without turning its torso, listening, which is closer to vanilla mechanics and looks more realistic.

*) Bug fixes:
- Fixed a bug with chemlight. Now it no longer irritates the infected when it is in the player's inventory, except for the special chemlight slot in the backpack.
- Fixed a bug that caused infected to sometimes freeze during attack on the player. This was related to the scream animation, which triggered during the attack and caused a conflict with attack animation. The scream functionality has also been improved, and the scream animation no longer interrupts until its completion.
- Fixed a false triggering of the logic for detecting the infected getting stuck. It was activating during door breaking, which could lead to a jump through the door in an attempt to exit the stuck state.
- Bohemian doors sound positions for buildings "land_rail_station_big" and "land_rail_station_small" have been fixed. Now the infected can break down these doors.
- Fixed an issue where the character, while aiming and moving in a crouched position, was producing the same sound as when running.
- Fixed bug that caused infected to not always react to explosions due to the exploding object being destroyed and disappearing.

Opdatering: 3. jan. 2024 kl. 1:06

---------------------------------
v1.3
The mod has been updated.
---------------------------------
1) The following parameters now support specifying base parent classes, which should greatly simplify the configuration:
Zombies.BreakingDoorsRestrictedDoors
Zombies.DamageToZombieWeaponsMultipliers
Zombies.CustomIrritants
Zombies.AttackCarElementsMultiplierByCarClassId
Players.CamoClothingVisibilityMultipliers
Players.QuietDoorOpeningMechanicRestrictedBuildings
Vehicles.Noise
Vehicles.CollisionsSoundThreshold
Vehicles.CollisionsSpeedReductionMultiplier

Additionally, it no longer matters in which case the class name is entered.

Due to the aforementioned change, many parameters in the default configuration have been simplified. Old configurations will still function, but they are slightly redundant. In any case, the current configuration is always available here, and you can always see what has changed in the above-mentioned parameters:
https://github.com/ysaroka/InediaInfectedAI/wiki/Default-configuration-file

This change required quite substantial changes to the configuration parsing logic. I've tried to test all possible cases, but there are no guarantees that I might have missed something, so updates-hotfixes are possible within the week.

2) Added "NoiseMultiplierCrouch*" parameters, allowing you to set the multiplier for the vanilla noise emitted by the player when in a crouched state.
Default values are set to "1".
With these parameters, it is now much easier to perform stealth kills when a player is sneaking up on an infected while crouched.
Earlier, achieving a stealth kill with the modification's default settings was practically impossible.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playersnoisemultipliercrouchday
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playersnoisemultipliercrouchnight

3) The new parameter "Zombies.SpeedNoLimitsFromDistanceMeters" has been added. This parameter allows specifying the distance in meters between the player and the infected, within which there will be no speed restrictions for the infected.
In this way, for those who prefer slow, walking infected, there is an opportunity to make them slightly more dangerous, as they approach the player, they will be able to accelerate from a certain distance.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesspeednolimitsfromdistancemeters

4) A new parameter has been added, "Players.QuietDoorOpeningMechanicRestrictedBuildings".
Now, those who had completely disabled the quiet door opening function due to the use of custom doors opened with key cards can exclude such doors using this parameter:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playersquietdooropeningmechanicrestrictedbuildings

For the "Zombies.BreakingDoorsRestrictedDoors" and "Players.QuietDoorOpeningMechanicRestrictedBuildings" parameters, a list of doors from the modifications "DNA Keycards", "Custom Keycards", "KeyCard-Rooms" has been added.
However, this support will not be automatically added to existing configurations. To incorporate it into your current configurations, simply copy the values of the "Zombies.BreakingDoorsRestrictedDoors" and "Players.QuietDoorOpeningMechanicRestrictedBuildings" parameters from the default configuration file to your configuration file:
https://github.com/ysaroka/InediaInfectedAI/wiki/Default-configuration-file

5) For "Zombies.ItemsAfterButchering", the option to specify the food stage has been added if the item is edible.
More details (Where -> Foodstages):
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesitemsafterbutchering

6) The default ranges of action of certain irritants have been slightly increased.
Information on current ranges is available here:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#more-information-about-zombiesreactirritant-parameters

7) Error messages from the engine JSON parser have been added, as the parser does not accept float values in boolean parameters.
This results in the online validator (jsonlint.com) not detecting the error, even though it exists.
Now, the error will be displayed in the profiles/crash_*.log file.

Opdatering: 17. nov. 2023 kl. 0:12

---------------------------------
v1.2
The mod has been updated.
---------------------------------
1) Due to the release of DayZ patch 1.23, the fixes to the navigation grid that I made for the northwest airport hangars have become obsolete and have been removed.

Additionally, as the hangar objects themselves have been changed, my fixes to the door positions of the hangars also stopped working, and as a result, zombies no longer break down the hangar doors.

As it turns out, Bohemia did fix the sound positions of the hangar doors, but unfortunately, they only fixed one door, leaving the other two still incorrect.

Because of all this, I had to redo the work of adjusting the door positions for the hangars.

2) The door detection functionality has been redone. Now infected will not kick a door if it is not on his navigation path. That is, it will only kick a door if its navigational path is through that door, ignoring doors next to which it passes and through which its path does not lie. Previously, the zombie would hit any door within its reach.
Due to this - the infected will now quit kicking a door if the player has made a noise elsewhere and the infected's navigational path has changed.
Also made some minor fixes to the logic of kicking a door, now the probability of a zombie's body part showing up on the other side of the door when he approaches is much lower.

3) Now when falling, an infected can break their legs and even die if the height is high enough: https://www.youtube.com/watch?v=zejZi91WFLU
Accordingly, the default value of the "Zombies.DownJumpHeightMax" parameter has been changed from "15" meters to "30" meters.
The fall logic is calculated after the infected has made a jump, so in the case of infected flying as a result of glitches or collisions - they will not be damaged.
Fall sounds have also been added depending on the type and height of the fall.
To customize the impact of falls - new parameters have been added:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesfallhandlerisactive
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesfallhandlerlegbreakheightmin
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesfallhandlerlegbreakheightmax
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesfallhandlerdeathheightmin
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesfallhandlerdeathheightmax

4) New sounds of doors hitting and breaking have been added.
Also adjusted sounds for metal doors for numerous buildings, including the new sheds at the northwest airport.

5) The ability to run in water in chase mode has been added to the infected.
Before that, it was possible to abuse some waters, such as the waters of the sea, by running in there. Since the infected did not make their way through such waters.

6) New parameters have been added to allow more flexibility in customizing jumps, affecting their frequency and chance:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesupjumpchancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesupjumpcooldownseconds

7) Changed the logic of how the loss of interest of infected to unconscious players works:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackplayersunconscious

8) I moved my logic from ZombieBase.HandleMindStateChange() to my own handler because some mods on custom zombies (for example, "dbo_creatures") completely override it, preventing any modification:
https://github.com/ysaroka/InediaInfectedAI/issues/21

9) YK_Radio support has been completely removed from the modification due to blocking. Accordingly, all parameters related to it - no longer make sense.

Opdatering: 4. nov. 2023 kl. 1:11

---------------------------------
v1.1
---------------------------------
1) Not many people know that zombies in the game are actually living humans infected with the virus, which means they can also bleed.
A blood and bleeding system has been added. Infected can now bleed just like players.

Important!
If your server uses powerful mutants or bosses inherited from "ZombieBase" or "AnimalBase", read this:
https://github.com/ysaroka/InediaInfectedAI/wiki/FAQ#strong-bosses-and-mutants-on-my-server-are-dying-from-bleeding-how-can-i-adjust-this
If you don't configure them, they will die from bleeding like regular zombies/animals.

Demonstration of the blood and bleeding system in a video:
https://www.youtube.com/watch?v=7slen4aUZTw

A detailed description of how the blood and bleeding system works:
https://github.com/ysaroka/InediaInfectedAI/wiki/FAQ#how-does-the-blood-and-bleeding-system-work

New parameters:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesbloodhandlerisactive
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesbloodvolumeml
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesbloodlossrateminml
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesbloodlossratemaxml
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesbloodlossrateregenml

2) The extensive refactoring of the zombie irritants functionality. Almost everything is being redone from scratch for the second time, I hope nothing got broken.
It was decided to completely abandon the "Timer" object. "Timer" used to trigger the irritant every 5 seconds, but it did so simultaneously for all active irritants, negatively impacting server performance. Those were the drawbacks of the "Timer" object, but now everything works without it.
Now, each irritating item initiates its own internal irritation loop that is not connected to other items. This way, the load is distributed over time, and any performance issues when a large number of irritants are active simultaneously are eliminated.

3) Given that now each irritant has its own cycle independent of the "ComponentEnergyManager," it has become possible to implement custom irritants. You can now add your own irritants, but with certain conditions.
Support for the "SimpleMatch" modification is added by default. If you already have a configuration, this irritant will not be added automatically, as it is not the default value. You will need to add it manually. You can check the default configuration file to understand how to do it (the "Zombies.CustomIrritants" parameter):
https://github.com/ysaroka/InediaInfectedAI/wiki/Default-configuration-file
More details here:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiescustomirritants
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactcustomirritants

4) Full support for the "YK Radio" modification has been added: https://steamcommunity.com/sharedfiles/filedetails/?id=2551386601
If you use this mod, everything will work out of the box, and there is no need to configure anything.
Now zombies will react and destroy playing YK Radio receivers.
They will also attack a car if it has YK Car Radio playing.
Please note that they will continue to damage the car as long as the car radio is playing or until they get used to the sound if the car is not moving. I've also added additional logic - in case of car battery destroyed from a collision or zombie strike, the music playback in the car is disabled.
New parameters:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactykradionoise
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactykcarradionoise
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactanddestroyykradionoise
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactanddestroyykcarradionoise

5) Now, when player inside vehicle is attacked, zombies can also attack the vehicle doors.
The doors will now serve a protective function for the player.
A new parameter "Zombies.AttackCarDoorDamagePercent" has been added to specify the percentage damage that vehicle doors receive when attacked by zombies.
The parameter "Zombies.AttackCarDoorChancePercent" has also been added. This parameter allows you to specify the chance that when attacking the player, a zombie will damage a door, thus the door will act as a shield for the player, absorbing damage on their behalf.
You can read the full description of the vehicle attack logic here:
https://github.com/ysaroka/InediaInfectedAI/wiki/FAQ#how-does-the-logic-of-vehicle-attack-work

6) The following issues have been fixed:
The issue has been fixed where important vehicle components couldn't receive any damage at all if any protective element had a damage multiplier set to "0":
https://github.com/ysaroka/InediaInfectedAI/issues/20

Fixed an errors that occurred on the client side:
https://github.com/ysaroka/InediaInfectedAI/issues/16
https://github.com/ysaroka/InediaInfectedAI/issues/18

The issue of the player frequently contracting blood infection when attacked by zombies has been fixed:
https://github.com/ysaroka/InediaInfectedAI/issues/17

Compatibility issue with "DayZ-Expansion-AI" has been fixed:
https://github.com/ysaroka/InediaInfectedAI/issues/19

Opdatering: 23. okt. 2023 kl. 1:13

---------------------------------
v1.0
In this update, there are minimal new additions, it is focused on enhancing and optimizing existing mechanics.
---------------------------------
1) The issue that was most likely causing a significant performance loss when irritating more than 50 zombies simultaneously has been fixed. It was related to the creation of vanilla noise, which was done to change a zombie's mode after irritation. Since 50+ zombies were creating 50+ sources of such noise, irritating each other, the server could briefly freeze. Now, if the first noise is created during irritation, the next noise source cannot be created closer than 10 meters from the first noise. This way, when irritating a massive horde of zombies, no more than 5-10 noise sources are created, and performance issues are no longer observed, tested with 300+ zombies simultaneously.

2) Many issues in jumps logic have been fixed.
Now zombies won't jump foolishly when chasing player in an open field with grass.
Unnecessary delays after jumping off and onto obstacles have been removed.
The logic of jumping onto obstacles has been improved - now zombies get their jump height based not on the player's position, but on the surface between the zombie and the player. This allows them to jump onto multiple obstacles to reach the player without being hindered by height restrictions.
Improved logic for zombies stuck on obstacles, meaning enhanced problem-solving to find a way out of such situations and better pathfinding for descending from such obstacles (slightly more raycasts).
Also, in case someone didn't know - if you're trying to climb a ladder and zombies jump at you, they will knock you off the ladder.

3) Added zombie stuck handler. Now, if zombie in chase mode gets stuck for some reason, it will detect this and attempt to jump towards the player, trying to hit. This effectively eliminates many areas where players could abuse zombies, such as fountains in large cities or areas with poor navigation mesh.

4) Now, when colliding with players or animals, the car also incurs damage.
Additionally, bears can now attack both the car and the player inside it, while wolves cannot attack the car but can attack the player if they break the glass.
The attack parameters for wolves and bears are configured in the respective "Zombies.AttackCar*" parameters, with the addition of classes for wolves or bears. This is done to simplify the settings and prevent unnecessary parameter duplication.

The decision to use the same coefficient for both attack damage and collision damage of the car wasn't quite right, so two parameters were added for configuring attack damage to the car and collision damage separately:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackcarelementsglobaldamagemultiplier
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackcarelementsbycollisionsglobaldamagemultiplier

Accordingly, the parameter "Zombies.AttackCarElementsByCollisionsPercentForOneHp" has been removed as it is no longer needed.
For those who previously reduced the value of the parameter "Zombies.AttackCarElementsByCollisionsPercentForOneHp" due to excessive car damage, there is no need to worry, as during the refactoring of this functionality, a bug was discovered that was causing a 10-fold increase in car damage. It has now been fixed, and there should be no issues.
If you already have a configuration file, I cannot automatically add car attack parameters for wolves and bears, as these are not default values. Therefore, you will need to add them manually:
Zombies: {
...
"AttackCarElementsIsActive": {
"all": 1,
"Animal_CanisLupus_White": 0,
"Animal_CanisLupus_Grey": 0
},
"AttackCarElementsGlobalDamageMultiplier": {
"all": 1.0,
"Animal_UrsusArctos": 3.0
},
...
}
If you don't do this, it's not a big deal either - bears will attack the car with the strength of zombies, and wolves will attack car elements, which is unrealistic but not critical.

Now the current default configuration file will always be available here:
https://github.com/ysaroka/InediaInfectedAI/wiki/Default-configuration-file#inediainfectedaiconfigjson

5) Now, the weapon multiplier, set by the "Zombies.DamageToZombieWeaponsMultipliers" parameter, affects the shock damage animation mechanics that zombies receive, including the "Zombies.DamageToZombieShockToStun*" parameters:
https://github.com/ysaroka/InediaInfectedAI/issues/12
New parameters for melee and ranged attacks have also been added, allowing you to set a threshold for shock damage, beyond which the heavy shock animation is triggered:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetozombieshocktostunlightheavyanimationthresholdmelee
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetozombieshocktostunlightheavyanimationthresholdrange

6) Added the parameter "Zombies.DamageToZombieFromHotItemsHp," allowing to specify the HP damage that zombies receive when they attack hazardous objects (bonfire, fireworks). The default value is 10 HP. In vanilla game, zombies have 100 HP by default. In PvZ, zombies have 10000 HP by default.
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetozombiefromhotitemshp

7) The suppression of footsteps sound inside buildings has been added:
https://github.com/ysaroka/InediaInfectedAI/issues/15

8) The audibility radius of sound during rain has been reworked. Regardless of the rain intensity, zombies will always hear at a distance of 10% from the original irritant radius. Now zombies will have a much harder time hearing sounds during rain.
The formula for adjusting the audibility radius based on rain intensity, where the rainModifier varies from "0" (most intense rain) to "1" (no rain), is as follows:
radius * 1/10 + radius * 9/10 * rainModifier.

9) Many animation issues have been fixed. For instance, if a zombie gets irritated in CALM mode, the turning animation will now play correctly. Additionally, the scream animation has been fixed, previously, it rarely triggered.

10) Added translation to all languages supported by the game.
Translation was done by ChatGPT, so please don't judge too harshly 🙂

11) The issue has been fixed. The "Zombies.SpeedLimitInSearchMode" parameter was not working:
https://github.com/ysaroka/InediaInfectedAI/issues/14

Opdatering: 11. okt. 2023 kl. 2:01

---------------------------------
Since this update marks the completion of all planned features, this will be the last frequent update, and subsequent updates will be released no more often than once a month, possibly even less frequently. Perhaps an experimental version will be introduced, but this is not certain.
---------------------------------
1) The main feature of this update. Seeing is believing - https://www.youtube.com/watch?v=n_j5j_OwEhE

Jumping zombies now act more intelligently and can activate their attack animation while closing in on the player.

Now, when jumping zombies collide with the player, they transfer their impulse to the player, effectively stunning them. Depending on which side the zombie collides with the player, a corresponding stunning animation is triggered. During the stun, the player cannot perform any actions for about a second. Additionally, when stunned, the player is pushed away, potentially resulting in a fall from their elevated position.

Also, after stunning the player, there is a chance to inflict damage on them. By default, this chance is set to 50%. The probability can be adjusted in the following parameter:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesupjumpimpulsedamagechancepercent

2) Now, when taking damage, including damage to the block, the player can get stunned. Here are more details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesstuntoplayerchancepercent
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesstuntoplayerinblockchancepercent

3) Added the ability to modify the default zombies stun mechanics when zombie taking damage. By default, this functionality is disabled.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetozombieshocktostunhandlerisactive
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetozombieshocktostunthresholdmelee-zombiesdamagetozombieshocktostunthresholdrange

4) The ability to specify damage multipliers for zombies for any weapon has been added.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesdamagetozombieweaponsmultipliers

5) The ability to set zombie detection multipliers for any type of clothing has been added.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playerscamoclothingvisibilitymultipliers

6) Added parameters that allow body searches only when the player performing the search has nothing in their hands. By default, they are disabled.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessearchbodyonlyemptyhands
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playerssearchbodyonlyemptyhands

7) Added the ability to specify a range of sizes in which zombies will spawn. By default, it is disabled.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessizehandlerisactive
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiessizefrommultiplier-zombiessizetomultiplier

8) Added "Zombies.RespawnInCrawlingChancePercent" parameter. Using this parameter, you can specify the percentage chance of spawning zombies in crawling state:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesrespawnincrawlingchancepercent

9) Parameter "Zombies.ReactVanillaMindstateChange" has been added. This parameter allows configuring the maximum radius from the target within which zombies will still switch to search mode in response to any vanilla irritant.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactvanillamindstatechange

10) I believe I made the car damage from zombies too hardcore.
Therefore, the value of the parameter "Zombies.AttackCarElementsByCollisionsPercentForOneHp" has been changed from '5' to '2'.
Please adjust this value in the config if you feel that zombies are damaging your cars too quickly.
This value will not be automatically changed in your config because '5' might have been suitable for someone.

11) Fixed the error "Could not find zone 'LeftLeg'":
https://github.com/ysaroka/InediaInfectedAI/issues/10

12) Improved compatibility with the Syberia Project. The configuration initialization has been moved to another location since Syberia Project does not allow modifications to PlayerBase.EEInit().

Opdatering: 5. okt. 2023 kl. 9:21

1) Now zombies react to the noise of other zombies falling.
When you kill a zombie - the sound of its body falling irritates other zombies. The irritation radius is 30 meters, but the parameters "Zombies.ReactBodyfall*Noise" is set to "0.5" by default for all types of zombies, so the actual irritation radius is 15 meters. The parameters "Zombies.ReactBodyfallBackstab*Noise" is set to "0" by default for all types of zombies, which means that there will be no irritation when killing with backstab.
Also, it's important to remember that if a zombie has reacted to a body fall once, it will not react to the same irritant for the next 4-8 minutes. This is done to prevent abuses related to constantly irritating zombies from a distance using a suppressed weapon.
Parameters:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactbodyfalldaynoise
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactbodyfallnightnoise
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactbodyfallbackstabdaynoise
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesreactbodyfallbackstabnightnoise

2) Added ability to configure whether zombies can attack different types of animals (Cow, Pig, Sheep, Goat, Wild boar, Deer, Roe deer):
Parameters:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalscow
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalspig
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalssheep
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalsgoat
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalswildboar
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalsdeer
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiesattackanimalsroedeer

3) Added the ability to disable killing zombies using backstab. By default, the handler is disabled and vanilla mechanics are used so as not to cause conflicts with other mods, such as PvZ.
Added parameters:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiescanbebackstabbedhandlerisactive
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#zombiescanbebackstabbed

4) Now, the distance at which noise of footsteps attracts zombies depends on the surface.
Running on grass is 20% less audible, while on gravel, it's 20% more audible. The type of surface is determined by the characteristic sound in the game.

5) Optimization of smells functionality, this should slightly increase server performance.
New parameter "Players.SmellsCountOnMapLimit" has been added, allowing you to set a limit on the number of smells on the map.
More details:
https://github.com/ysaroka/InediaInfectedAI/wiki/Description#playerssmellscountonmaplimit

6) Small fixes:
- The parameter "SoundInHouseMultiplier" now affects scream of zombies inside buildings + some issues in scream irritation logic have been fixed;
- Added metal door knocking sounds for "land_city_firestation" building;
- The sound of knocking on a metal door has been changed to a lower pitch.
- Players buildings now have the same effects on sounds and lights as regular buildings in the game. That is, the "LightInHouseMultiplier" and "SoundInHouseMultiplier" parameters will work in players buildings, also in player-built structures smells will not be generated;
- Slightly optimized method for calculating noise distance depending on rain, perhaps this will slightly improve server performance;
- Some issues with the logic of irritating zombies by sound inside buildings were detected and fixed;
- Fixed error that occurred when character without hat would vomit when attempting to search or cut up zombie corpse:
https://github.com/ysaroka/InediaInfectedAI/issues/8
- Fixed error "NULL pointer to instance when trying to access variable 'm_Distance'"
https://github.com/ysaroka/InediaInfectedAI/issues/9

Opdatering: 1. okt. 2023 kl. 5:03

Small hotfixes:
1) Now using "QuietDoorOpeningMechanicIsActive = 0" you can completely disable silent door opening functionality.
Disable it if there is any conflict with custom doors. For example, if doors that must be opened with key cards are opened using the silent opening function.

2) Fixed doors positions for "land_rail_warehouse_small" building.

3) Key storage directory has been renamed "key" to "keys".