Gameplay features¶
Infection Module¶
The infection module handles all infection events and does random infection on mother zombies. It's the core part of the plugin that creates this human vs. zombies game.
Number of mother zombies is based on a ratio setting, so on server with many players more mother zombies will be spawned than on a server with few players. Server admins can adjust this ratio to tune game balance.
In addition several infection effects can be enabled or disabled.
These are the console variables for the infection module:
Infection Console Variables Console variable: Default: zr_infect_mzombie_mode "dynamic" Mother zombie infection mode.
dynamic Scales number of mother zombies according to a ratio and number of players on the server. See zr_infect_mzombie_ratiobelow.absolute Absolute number of zombies infected. Adjusted by zr_infect_mzombie_ratiobelow.range Infects a random number of players between a minimum and maximum range. See zr_infect_mzombie_minandzr_infect_mzombie_maxbelow.zr_infect_mzombie_ratio 7 Usage of this variable depends on the mode above.
dynamic Mother zombie ratio. Every random n-th player is infected. In this case it's 7 where every seventh player will be infected. If it's set to 0 there will only be 1 mother zombie every time.
Note that this is not a percentage value. The ratio 5 does not mean 5%, but every fifth player. To get the percentage you need to do ratio / player slots. Like 5 / 24 = 0.20 ⇒ 20% infection rate.
Conversion formula from percent to ratio:
ratio = player slots - ((percent / 100) * player slots)
Decimals are stripped from the ratio because it's a integer value.
Options:
0 or a positive number up to max server slotsabsolute Absolute number of zombies infected. If the number is negative, it will keep that many humans (inversed infection). 5 will infect five humans, while -5 will infect everyone and keep five humans. zr_infect_mzombie_min 1 Minimum number of mother zombies. Only used by range mode. Must be above zero.
zr_infect_mzombie_max 3 Maximum number of mother zombies. Only used by range mode. Must be above zero.
zr_infect_mzombie_countdown 0 Counts down to the first infection of the round. The counter is displayed in the middle of the screen.
Options:
0 or 1zr_infect_mzombie_respawn 0 Teleport mother zombies to spawn place when infected.
Options:
0 or 1zr_infect_mzombie_respawn_warning 1 Whether to warn players of zombies spawning between humans. [Dependency: zr_infect_mzombie_respawn]
Options:
0 or 1zr_infect_spawntime_min 30.0 Minimum time when mother zombies spawn. Time is in seconds.
zr_infect_spawntime_max 50.0 Maximum time when mother zombies spawn. Time is in seconds.
zr_infect_consecutive_block 1 Blocks players from being mother zombie twice in a row.
Options:
0 or 1zr_infect_round_robin 1 Use randomized round-robin (with SteamID cache) for mother zombie infection.
Options:
0 or 1zr_infect_round_robin_rtd 1 Roll the dice for players new to the random round-robin SteamID cache to make it fair for late joiners.
Options:
0 or 1zr_infect_weapons_drop 1 Force players to drop weapons and grenades when infected. So other players can use them.
Options:
0 or 1zr_infect_knife_cooldown 1.0 Time in seconds during which knife can not be used after becoming a zombie.
Options:
0 or >0.1zr_infect_max_distance 80.0 The maximum allowed distance between a client and an attacker for a successful infection. [0.0 = Disabled]
Options:
0.0 or >0.1zr_infect_teleport 0 Teleports on infect to zombie.
Options:
0 or 1zr_infect_explosion 1 Enable explosion effects. If disabled, this setting will also disable the following CVARs:
- zr_infect_fireball
- zr_infect_smoke
- zr_infect_smoke
Options:
0 or 1zr_infect_fireball 1 Spawn a fire ball effect around the player on infection. [Dependency: zr_infect_explosion]
Options:
0 or 1zr_infect_smoke 1 Spawn a smoke cloud effect around the player on infection. [Dependency: zr_infect_explosion]
Options:
0 or 1zr_infect_sparks 1 Emit sparks from the the player on infection. [Dependency: zr_infect_explosion]
Options:
0 or 1zr_infect_esplash 1 Emit an energy splash effect from the player on infection.
Options:
0 or 1zr_infect_shake 1 Shake the player's view on infection.
Options:
0 or 1zr_infect_shake_amp 15.0 Shake amplitude, how strong the shake is. Amplitude is in units. [Dependency: zr_infect_shake]
zr_infect_shake_frequency 1.0 Shake frequency, how fast the shake is. Frequency is in hertz (cycles per second). [Dependency: zr_infect_shake]
zr_infect_shake_duration 5.0 Duration of shake, how long the shake lasts. Time is in seconds. [Dependency: zr_infect_shake]
zr_infect_event_weapon zombie_claws_of_death Weapon icon used when the death event is sent for a player that gets infected.
zr_infect_skip_trigger_brush 0 Skip trigger_brush checks entirely when a player is infected.
Legacy usage, some maps used trigger_brush to fire game events.
Maps should now rely on logic_eventlistener
Infect Commands Syntax: zr_infect <target> [respawn] Infects one or more players.
Parameters:
target A SourceMod target string with one or more players. respawn Teleport players to spawn. zr_human <target> [respawn] Turn one or more zombies into humans.
Parameters:
target A SourceMod target string with one or more players. respawn Teleport players to spawn.
Damage Control Settings¶
With damage control it's possible to block suicide attempts, fall damage, blast damage and hit group damage. See Hit Group Configuration (3.9) on how to configure hit groups.
Damage Control Console Variables Console variable: Default: zr_damage_hitgroups 1 Enables hit group damage control. See Hit Group Configuration (3.9) on how to configure hit groups.
Options:
0 or 1zr_damage_block_ff 1 Block friendly fire between zombies.
Options:
0 or 1zr_damage_block_blast 1 Block blast damage inflicted on self or teammates.
Options:
0 or 1zr_damage_suicide_zombie 0 Block suicide attempts by regular zombies.
Options:
0 or 1zr_damage_suicide_mzombie 1 Block suicide attempts by mother zombies.
Options:
0 or 1zr_damage_suicide_human 0 Block suicide attempts by humans.
Options:
0 or 1zr_damage_suicide_cmds "kill, spectate, jointeam" List of console commands that are treated as suicide attempts. Separated by ", ". These commands are often bound to a key on the client, like "m" is bound to "jointeam".
zr_damage_suicide_after_infect 1 Intercept suicide commands only after the first zombie has spawned.
Options:
0 or 1
Overlay & RoundEnd Settings¶
Overlay¶
Overlays are pictures displayed on players' screen on certain events. However, these overlays require DirectX 8 or newer to work. Players with lower DirectX version won't see these overlays.
Since these overlays doesn't last forever, they must be redisplayed at a certain interval. A refresh once per second seems to be enough.
When the round ends, overlays for either humans or zombies are displayed, depending on the winning team.
Overlays are also used as a class attribute, like the zombie vision effect.
Overlay Console Variables Console variable: Default: zr_overlays_update_time 1.0 How often overlays are refreshed. Time is in seconds.
zr_overlays_min_dxlevel 80 Minimum DirectX level allowed for overlays (mat_dxlevel).
RoundEnd¶
Manage how Round End should finish.
RoundEnd Console Variables Console variable: Default: zr_roundend_overlay 1 Show overlays for the winning team when the round ends.
Options:
0 or 1zr_roundend_overlays_human overlays/zr/humans_win Overlay to be displayed when humans win. Path is relative to the "materials" folder.
zr_roundend_overlays_zombie overlays/zr/zombies_win Overlay to be displayed when zombies win. Path is relative to the "materials" folder.
zr_roundend_balance_teams 1 Balances the team every time the round ends. Disable this if you use something else to balance teams.
Options:
0 or 1zr_roundend_zombies_win 1 Balances the team every time the round ends. Disable this if you use something else to balance teams.
Options:
0 or 1zr_roundend_authid_type 1 AuthID type used to display stats at round end. See AuthIdType Enumeration
Options:
0 = Engine
1 = Steam2
2 = Steam3
3 = Steam64
Money Configuration¶
Players' cash can be modified and reset on every spawn if enabled.
Money Console Variables Console variable: Default: zr_account_cashfill 1 Resets player's cash every spawn. Cash amount is specified in zr_account_cashfill_value.
Options:
0 or 1zr_account_cashfill_value 12000 How much cash to give each spawn, if enabled.
Options:
0 or 1zr_account_cashdmg 0 Attacker receives amount of cash equivalent to the damage that was inflicted. If this one is enabled, the zr_account_cashfill and zr_account_cashfill_value console variables is ignored.
Options:
0 or 1
Visual Effects Configuration¶
With visual effects it makes it possible to give a creepy ambience. It's possible to change light style in maps and set dissolve effects on players' bodies when they die.
It's supposed to have support for adding fog, but because of technical limits in SourceMod it's not fully functional yet. For developers who wonder why, it's because there must be a env_fog_controller entity in the map. That entity isn't networked so SourceMod can't create that entity type (Logical Entity Support is a work in progress by the SourceMod team).
Currently, fog can only be modified if the map already has a env_fog_controller entity.
Visual Effect Console Variables Console variable: Default: zr_veffects_lightstyle 0 Change light style (brightness) in the map.
Options:
0 or 1zr_veffects_lightstyle_value b Light brightness value. The brightness is represented by characters from "a" to "z" where "a" is dark, "n" is normal, and "z" is bright. [Dependency: zr_veffects_lightstyle]
Options:
a (dark) to z (bright)zr_veffects_sky 0 Change skybox of the map.
Options:
0 or 1zr_veffects_sky_path sky_borealis01up.vmt The skybox to use, if enabled. Path is relative to "materials/skybox".
zr_veffects_sun_disable 0 Remove the sun entity on the map. Disables sun rendering on the map.
Options:
0 or 1zr_veffects_fog 0 Note: Incomplete. May or may not work.
Enable fog on the map.
Options:
0 or 1zr_veffects_fog_override 0 Note: Incomplete. May or may not work.
Override existing fog on the map. If fog exists already on the map, replace it with the new modified fog. [Dependency: zr_veffects_fog]
Options:
0 or 1zr_veffects_fog_pcolor "255 255 255" Note: Incomplete. May or may not work.
Sets the primary fog color. Three values from 0 to 255 separated by a space, representing amount of red, green and blue. [Dependency: zr_veffects_fog]
Examples
255 255 0 Yellow 255 0 255 Purpule 96 96 96 Dark grey zr_veffects_fog_scolor "255 255 255" Note: Incomplete. May or may not work.
Sets the secondary fog color. Three values from 0 to 255 separated by a space, representing amount of red, green and blue. [Dependency: zr_veffects_fog]
Examples
255 255 0 Yellow 255 0 255 Purpule 96 96 96 Dark grey zr_veffects_fog_density 0.8 Note: Incomplete. May or may not work.
Density (thickness) of the fog. The value is in percent, 0.0 to 1.0. [Dependency: zr_veffects_fog]
Options:
0.0 to 1.0zr_veffects_fog_startdist 0 Note: Incomplete. May or may not work.
Distance from player to start rendering foremost fog. Distance is in game units (1 unit is ~1 inch). For reference, default player models are ~75 units tall. [Dependency: zr_veffects_fog]
zr_veffects_fog_enddist 400 Distance from player to stop rendering fog. Distance is in game units (1 unit is ~1 inch). For reference, default player models are ~75 units tall. [Dependency: zr_veffects_fog]
zr_veffects_fog_farz 2000 Distance to stop render everything, for optimizing purposes. This should be equal to or bigger than fog end distance. There's no reason to render stuff that can't be seen anyways. [Dependency: zr_veffects_fog]
zr_veffects_ragdoll_remove 1 Note: If set to 0 may cause client crash.
Remove players' bodies when dying.
Options:
0 or 1zr_veffects_ragdoll_dissolve -1 Dissolve effect to use when removing bodies. [Dependency: zr_veffects_ragdoll_remove]
Options:
-2 No effect -1 Random effect 0 Energy dissolve 1 Heavy electrical dissolve 2 Light electrical dissolve 3 Core dissolve zr_veffects_ragdoll_delay 0.5 Time to wait before removing dead bodies. Time is in seconds. [Dependency: zr_veffects_ragdoll_remove]
zr_napalm_ignite 1 Ignite grenades that players throws. Humans need the class attribute "has_napalm" set for this setting to be effective.
Options:
0 or 1zr_napalm_time_reset 1 The burn-time is reset when being naded multiple times. [0: Original burn-time is used.]
Options:
0 or 1zr_napalm_time_scale 75 The amount of damage that's needed to apply full burn duration.
zr_napalm_douse 0 Minimum water-saturation before flame is extinguished. ['0' = Disabled | '1' = Feet | '2' = Waist | '3' = Full submersion]
Options:
0 to 3
Sound Effects Configuration¶
The sound effects make zombies groan, in addition to the ambience sound file that can be played.
Currently it doesn't support any other custom files than the ambience file. Other sounds are pre-configured. Instead it's possible to specify how often the sounds should be played, if enabled.
The lenght of the ambience file must be specified because SourceMod currently can't detect lenght of MP3 files.
Sound Effect Console Variables Console variable: Default: zr_voice 0 (Incomplete) Modify sv_alltalk to obey zombie/human teams instead of t/ct.
Options:
0 or 1zr_seffects_volume 0.8 Volume of the seffects sounds. Volume is in percent.
Options:
0.0001 or 1zr_seffects_countdown_max 10 Maximum countdown sound file index.
zr_seffects_path_countdown zr/countdown/%i.mp3 Relative to "sound" folder. To play form player when mother zombie countdown starts.
zr_seffects_moan 30.0 Time between emission of a moan sound from a zombie. Time is in secons.
zr_seffects_moan_max 14 Maximum moaning sound file index.
zr_seffects_path_moan zr/moan/zombie_voice_idle%d.mp3 Relative to "sound" folder. To play from player when moaning.
zr_seffects_death 1 Emit a death sound when a zombie dies.
Options:
0 or 1zr_seffects_die_max 3 Maximum death sound file index.
zr_seffects_path_die zr/die/zombie_die%d.mp3 Relative to "sound" folder. To play from player when killed.
zr_seffects_pain_max 6 Maximum groan sound file index.
zr_seffects_path_pain zr/pain/zombie_pain%d.mp3 Relative to "sound" folder. To play from player when hurt.
zr_seffects_scream_max 1 Maximum scream sound file index.
zr_seffects_path_scream zr/scream/zombie_scream%d.mp3 Relative to "sound" folder. To play from zombie when infects a human.
zr_seffects_groan 5 The probability that a groan sound will be emitted from a zombie when shot. Probability is in percent.
Options:
0 to 100zr_ambientsounds 1 Enable ambient sound (background sound) to all players during gameplay.
Options:
0 or 1zr_ambientsounds_file zr/ambient/zr_ambience.mp3 The ambient sound file to play as ambienece. Path is relative to the "sound" folder, and MP3 files are supported. This sound is also looped so only use sounds that can be looped. Otherwise it might sound wierd when it restarts.
zr_ambientsounds_length 60.0 Length of the ambient sound. Length is in seconds. If the specified length is shorter than the real sound length, the sound will play again before the previous sound finished playing.
zr_ambientsounds_volume 0.8 Volume of ambient sound file. Volume is in percent.
Options:
0 or 1zr_seffects_command_limit 4 Number of sound commands allowed within the time span, or total limit if time span is disabled. ['0' = Disable sound command limit]
zr_seffects_command_timespan 10 Time span for sound command limiter (in seconds). ['0' = Disable time span check | positive number = Time span]
Respawn Configuration¶
Respawning makes players spawn into the game again after death. It keeps the game active and is less annoying for people who don't like to wait too much.
If the mother zombie haven't spawned yet, players are always spawned as humans.
Respawn Console Variables Console variable: Default: zr_respawn 1 Enable respawning.
Options:
0 or 1zr_respawn_delay 1.0 Time after death to respawn. Time is in seconds.
zr_respawn_team_zombie 1 Respawn as zombie. If the mother zombie haven't spawned yet, players are always respawned as humans.
Options:
0 or 1zr_respawn_team_zombie_world 1 Respawn as zombie if a zombie was killed by world damage (doors, elevators, explosions, or any kind of suicide). If the mother zombie haven't spawned yet, players are always respawned as humans.
Options:
0 or 1
Spawn Command Configuration¶
The spawn command (zspawn) lets players join the game late, depending on the time configured. To avoid abusing there are settings that decides what team to spawn on, and a time limit when the command is allowed to be used.
ZSpawn Console Variables Console variable: Default: zr_zspawn 1 Enable spawn command.
Options:
0 or 1zr_zspawn_auto 1 Should zspawn spawn joining players?
Options:
0 or 1zr_zspawn_team_override 1 Override spawn team when spawning by means of ZSpawn.
Options:
0 or 1zr_zspawn_team_zombie 0 Spawn as zombie if override setting is enabled. [Dependency: zr_zspawn_team_override | Override: zr_respawn_team_zombie]
Options:
0 or 1zr_zspawn_block_rejoin 1 Block players disconnecting and rejoing the game using zspawn.
Options:
0 or 1zr_zspawn_timelimit 1 Enable time limit on the spawn command.
Options:
0 or 1zr_zspawn_timelimit_time 120.0 How long the spawn command is available after round start, if enabled. Time is in seconds. [Dependency: zr_zspawn_timelimit]
zr_zspawn_timelimit_zombie 1 Spawn as zombie if using the spawn command after the time is up.
Options:
0 or 1
Spawn Protect Configuration¶
Humans can have spawn protection settings that give them certain advantages for a limited time right after they've spawned.
Spawn Protection Console Variables Console variable: Default: zr_spawnprotect 1 Enable spawn protection for humans.
Options:
0 or 1zr_spawnprotect_time 10 How long the spawn protection lasts. Time is in seconds.
zr_spawnprotect_speed 250.0 Running speed for spawn protected players. Speed value depends on the speed method used. See the table below for examples:
Speed method Normal speed Double speed LMV 300.0 600.0 prop 0.0 250.0 zr_spawnprotect_alpha 0 Transparency setting on spawn protected players.
Options:
0 (invisible) to 255 (fully visible)
ZSpawn Command Syntax: zr_zspawn_force <target> [spawn team] Force one or more players to spawn.
Parameters:
target A SourceMod target string with one or more players. spawn team Optional. Specify what team to spawn to. Options:
0 (humans) or 1 (zombies)
Teleport Configuration¶
Zombie:Reloaded has a built in teleport feature with support for limits, delays and abuse protection.
Teleport Console Variables Console variable: Default: zr_ztele_zombie 1 Allow zombies to use the teleporter.
Options:
0 or 1zr_ztele_human_before 1 Allow humans to use the teleporter before mother zombies have spawned.
Options:
0 or 1zr_ztele_human_after 1 Allow humans to use the teleporter after mother zombies have spawned.
Options:
0 or 1zr_ztele_delay_zombie 3.0 Delay between teleport command and teleport for zombies. Time is in seconds. [Dependency: zr_ztele_zombie]
zr_ztele_delay_human 3.0 Delay between teleport command and teleport for humans. Time is in seconds. [Dependency: zr_ztele_human_(before)/(after)]
zr_ztele_max_zombie 3 Maximum number of teleports a zombie can do in a round. [Dependency: zr_ztele_zombie]
zr_ztele_max_human 1 Maximum number of teleports humans can do in a round. [Dependency: zr_ztele_human_(before)/(after)]
zr_ztele_autocancel 1 Automatically cancel a teleport in progress if moving a certain distance. [Dependency: zr_ztele_(zombie)/(human)[_(before)/(after)]]
Options:
0 or 1zr_ztele_autocancel_distance 20 Maximum distance for automatically canceling a teleport. Distance is in feet. 1 feet is 16 game units where a game unit is ~1 inch. For reference a player is ~75 units tall. [Dependency: zr_ztele_autocancel]
zr_ztele_random_spawn 0 Teleport player to a random spawn point instead of the players initial one, when using ztele.
zr_ztele_disconnect 1 Teleport the new chosen client infected for replace the last zombie disconnected.
Options:
0 or 1
Teleport Console Command Syntax: zr_tele_force <client> Force teleport on a player. Does not add delay or add to teleport count.
Parameters:
client Single target player. Support SourceMod targets like @me and @aim.
HP Display Settings¶
The HP display is a small panel on the center at the bottom of the screen that displays players' health. Players can disable this, and the setting can also be saved in player cookies.
HP Display Console Variables Console variable: Default: zr_zhp 1 Enable HP display for zombies.
Options:
0 or 1zr_zhp_default 1 Default HP display state on connecting players.
Options:
0 or 1
Jump Boost Settings¶
Jump boost can be abused to do bunny hops. There are settings for configuring maximum allowed velocity when jumping. If maximum speed is reached no jump boost is applied.
Note: This is not a real bunny hop protection feature. Players who do bunny jumping will still be able to do it, but they won't get jump boost after a certain speed if the speed limit is enabled.
Jump Boost Console Variables Console variable: Default: zr_jumpboost_bhop_protect 1 Enable bunny hop protection.
Options:
0 or 1zr_jumpboost_bhop_max 300.0 Maximum horizontal velocity allowed when jumping. Normal running speed for the player is 300.0
Note: The first jump does not have a speed limit, but subsequent jumps won't get any boost if the speed limit is reached.
Anti-Stick Settings¶
The anti-stick system is a automatic no-block system that turn off collisions on players that are stuck together, and enable collision again when they're unstuck.
(Note: This file is obsolete!) To know if players are stuck, it needs some extra info about each model used in the game. Data for these models are stored in the following file (relative to "sourcemod" folder):
data/antistick.dat
Anti-Stick Console Variables Console variable: Default: zr_antistick 1 Enable anti-stick system.
Options:
0 or 1zr_antistick_default_width 32.0 Note: Obsolete! Do not chnage default value!
Default model width used to detect if players are stuck together. Width is in game units.
zr_antistick_file_path data/antistick.dat Note: Obsolete! Just ignore this file.
File to store anti-stick model hull data. Path is default to the "sourcemod" folder.