From 7677da25115047cacda53d70e8d1180d60592618 Mon Sep 17 00:00:00 2001
From: Richard Helgeby
Note: Incomplete feature!
-The immunity mode. This feature is currently incomplete and values are ignored.
+An immunity mode is a mode where the class is resistent of a certain type of damage + or action. Basically this is infections, knock back and bullet/explosion damage.
+Be careful when using certain immunity modes. The class may become very strong (or + completely invulnerable) which may break the game balance.
+But it's also possible to spice up the game by letting zombies hurt humans a bit + ("infect" mode) or allowing use of temporary shields.
++
+ +none +No immunity mode. Instant infection of humans. ++ +full +Completely immune. Careful with this mode, it will break the game. + Humans can't be infected and zombies don't receive damage or knock back. Admin + commands may override this. ++ +infect +Humans only. Humans are immune to infections until HP + go below a threshold (immunity_amount value). If you set the threshold to zero + zombies can stab humans to death. If you set the threshold too high (higher + than initial HP) humans can't be infected (similar to "full" immunity mode). ++ +damage +Zombies only. Zombies are immune to damage from humans/ + grenades, but are still vulnerable to knock back. ++ +delay +Humans only. Delay infection for a certain amount of + seconds (immunity_amount value). + +
+ Subsequent zombie attacks will reduce the delay time with the number of + seconds specified in the immunity_cooldown attribute. If you don't want + subsequent attack to count, set immunity_cooldown to 0. This will make the + human immune to further attacks, but he will be infected when the time + is up - unless the human suicides (which can be blocked).+ +shield +This is a temporary immunity mode which is activated by the player with + the +zr_shield
command. It will give a shield against infections (humans) or + knock back (zombies) for a certain amount of seconds (immunity_amount value). +
+ It also has a cooldown delay before the shield can be deployed again. + By setting this delay very high (longer than the round time) the shield can + only be used once.
Note: Incomplete feature!
-The value for the specified immunity mode. This feature is currently incomplete and - values are ignored.
+Immunity data value. The value depends on which immunity mode that's in use:
+++
+ +infect +HP threshold value. When the human's HP go below this value he will become + vulnerable to infection. ++ +delay +Number of seconds to delay infection since the first attack from a zombie. ++ +shield +Number of seconds the shield is active. +
Number of seconds before temporary immunity actions can be used again. Usage depends + on immunity mode:
++
+ +delay +Number of seconds to reduce the delay before infection. Set this to 0 to + block subsequent attacks, or a high value (enough to eliminate the delay + completely) to allow instant infection on second attack. ++ +shield +Number of seconds the the player has to wait before the shield is available + again. Set this to a high value (longer than the round time) to allow one use + only. +
Errors are logged to SourceMod error logs if it can't parse the file or if class attributes have invalid values.
-In case of incorrect values a warning will be logged and the class will be disabled. The class -index and the error flags (bit field) in the log message tells what attributes that failed to -validate.
+In case of incorrect values a warning will be logged and the class will be disabled. There will +be a log entry for each attribute that failed validation.
-- --
Attribute Flags -- -Attribute: -Bit: -Value: -- -enabled -1 -1 -- -team -2 -2 -- -team_default -3 -4 -- -flags -4 -8 -- -group -5 -16 -- -name -6 -32 -- -description -7 -64 -- -model_path -8 -128 -- -alpha_initial -9 -256 -- -alpha_damaged -10 -512 -- -alpha_damage -11 -1024 -- -overlay_path -12 -2048 -- -nvgs -13 -4096 -- -fov -14 -8192 -- -has_napalm -15 -16384 -- -napalm_time -16 -32768 -- -immunity_mode -17 -65536 -- -immunity_amount -18 -131072 -- -no_fall_damage -19 -262144 -- -health -20 -524288 -- -health_regen_interval -21 -1048576 -- -health_regen_amount -22 -2097152 -- -infect_gain -23 -4194304 -- -kill_bonus -24 -8388608 -- -speed -25 -16777216 -- -knockback -26 -33554432 -- -jump_height -27 -67108864 -- -jump_distance -28 -134217728 -
The error flags are stored in a bit field (explained in Logging (3.3)).
- -Another quick way to decode it would be to use the calculator in Windows. Enable scientific -mode and enter the decimal value. Then switch to binary mode (F8) and count from right to left -what bits that are 1. Look up the bit numbers in the table above to see what attributes that -didn't validate.
+Note that class indexes start at zero and include all classes that aren't commented out in the +class configuration.