Zombie Plague Mod 4.3
< Logo submitted by Mr.Apple. Thank you! >
All credits to MeRcyLeZZ for tutorial and plugin
DescriptionZombie Plague is a Counter-Strike server side modification, developed as an AMX Mod X plugin, which completely revamps the gameplay, turning the game into an intense "Humans vs Zombies" survival experience.
Even though it's strongly based on the classic zombie infection mods, it takes the concept to a new level by introducing:
- New Gameplay Modes: Nemesis, Survivor, Multi Infection, Swarm, Plague
- Zombie Classes System: allows addding unlimited custom zombie classes
- Ammo Packs: awarded to skilled players, can be exchanged for goods
- Extra Items System: allows adding unlimited custom items to buy
- Custom Grenades: Napalms, Frost Nades, Flares, and Infection Bombs
- Deathmatch Mode: where zombies or humans can continually respawn
- Admin Menus: to easily perform the included console commands
- Special Effects: from the HL Engine, such as dynamic lighting and fog
- Set zombies and humans' health, speed, models, rewards, and more
- Toggle unlimited ammo and adjustable knockback for weapons
- Separately enable and customize the new gameplay modes to your liking
- Change overall map lighting (lightnings available for the dark settings)
- Set different colors and sizes for flashlight and nightvision
- Toggle leap (long jumping) and pain shock free (no damage slowdowns)
- Toggle various infection effects, such as sparks and screen shakes
- Enable random spawning (CSDM-spawn friendly)
- Replace sounds or add some background themes
- And many more...
- Gameplay Video 1
- Gameplay Video 2
- Servers Running This Mod
- Mods: Counter-Strike 1.6 or Condition-Zero
- AMXX: Version 1.8.0 or later
- Download and extract the contents from the .zip files to your server's mod directory (cstrike or czero) and make sure to keep folder structure
- zp_plugin_43.zip: Contains the plugin itself and configuration files
- zp_resources.zip: Contains default models and sounds (only required for a first download)
- For further information on the plugin, including cvars and commands, take a look at the included ReadMe.txt file
This project started back on late 2007, when the free infection mods around were quite buggy and I wanted to make one on my own. With little to no experience at AMXX scripting, I had to start from the very scratch.
Not after spending over a week looking at many plugins (mainly Zombie Swarm) and scarce tutorials, I somehow managed to have all the basic stuff working quite well (even though the code was a real mess). The following months were spent polishing things up and trying to fulfill new original ideas, most of them quite worth the hard work.
In the meantime, I got the chance to try the plugin out on a 32 man server. This meant a huge progress on development, and after lots of testing and bug fixing, the mod turned out to be more than the simple infection plugin I had originally planned it to be.
The project has come a long way since, and I'm glad to say I'm finally making it freely available. All I'm asking in return is to keep my name in the plugin.
-Enjoy!
Credits
- AMXX Dev Team: for all the hard work which made this possible
- Imperio LNJ Community: for providing the first server where I could really test the plugin and for everyone's support
- Mini_Midget: for his Zombie Swarm plugin which I used for reference on earliest stages of development
- Avalanche: for the random spawning code I got from GunGame and the original Frostnades concept that I ported in here
- cheap_suit: for some modelchange and knockback codes that I got from Biohazard
- Simon Logic/ConnorMcLeod: for the Pain Shock Free feature
- KRoT@L: for some code from Follow the Wounded, used to make the zombie bleeding feature
- VEN: for Fakemeta Utilities and some useful stocks
- RaaPuar and Goltark: for the custom grenade models
- Orangutanz: for finding the precached modelindex offset
- ML Translations: DKs/nunoabc/DarkMarcos (bp), JahMan/KWo (pl), DA (de), hleV/aaarnas (lt), darkbad945 (bg), DoPe^ (da), k1nny (fr), shadoww_ro/tuty/georgik57/EastSider (ro), NeWbiE' (cz), lOlIl/Seehank (sk), Bridgestone (sv), crazyeffect.net/Mave/Wesley (nl), TehGeorge (gr), SUPER MATRIX/Shidla/zDemon/4eRT (ru), zsy314 (cn), skymoon (tc), decongamco (vn), beckham9224 (mn), Zombie Lurker (ls)
- Beta testers: for all the feedback, bug reports, and suggestions which constantly help improve this mod further
- And to all zombie-mod supporters out there!
- Frequently Asked Questions - find solutions to the most common problems
- Sub-Plugins Index - download user-made addons that extend gameplay
- ZP Translations Thread - see, correct, or submit translations
- Zombie-Mod Map Pack - by bmann_420
- Custom Models Pack - by ecua
- Nemesis Models - by ecua
Code: Select all
- Version: 4.3 (Apr 20, 2009)
* Added beta changes (see below for details on those)
* Added CVAR for the new Nemesis/Survivor to have the same amount of HP as the guy who left
* Fixed some code still executing when the mod is turned off, which could cause weird bugs
* Fixed knife model issues when running WeaponMod
- Version: 4.3-beta5 (Apr 15, 2009)
* Added buy limiters for Antidote and Zombie Madness (CVARs: zp_extra_antidote_limit, zp_extra_madness_limit)
* Added admin knife model customization to zombieplague.ini (CVARs: zp_admin_knife_models_human, zp_admin_knife_models_zombie)
* Fixed unstuck feature causing zombies to turn into humans when random spawning is disabled
* Fixed unneeded hostage sounds precaching and taking up memory on CZ servers
* Fixed classes and items being incorrectly parsed when their names contain brackets
* Fixed Swarm Mode being triggered with no zombies or humans on either team
* Fixed zombie's hegrenades behaving as infection bombs even when their CVAR is disabled
* Fixed non-human grenades behaving as frostnades and flares
* Fixed code for blocking infection/cure attempts sometimes not working as it should
* Fixed calling some natives when the mod is turned off causing run time errors
* API: Native zp_has_round_started now returns 2 if the round is starting (i.e. not fully started yet)
* API: Replaced returning PLUGIN_HANDLED with ZP_PLUGIN_HANDLED due to backwards compatibility concerns
* Removed caching of most CVARs as it would just make the code harder to mantain
- Version: 4.3-beta4 (Mar 27, 2009)
* Added CVAR to set the default amount of starting ammo packs for new players (zp_starting_ammopacks)
* Added CVAR to randomly give weapons to players instead of buying them (zp_random_weapons)
* Added/updated ML translations (zombieplague.txt file is now UTF-8 encoded)
* Added option to force consistency for player models in zombieplague.ini
* Extra items menu now only displays items available to the player's class
* Player list menu for admin commands now only displays connected players
* Admin console commands now always obey the flags set in zombieplague.ini
* Nemesis damage CVAR no longer affects damage done by an entity other than nemesis himself (i.e. subplugin's rockets won't be affected now)
* API: Added natives to retrieve the number of zombies/humans/nemesis/survivors on a round
* API: Added natives to get a zombie class/extra item's ID via its name
* API: Added native to force players to buy an extra item
* API: Added natives to manually set and remove player's nightvision
* API: Returning PLUGIN_HANDLED on "zp_extra_item_selected" forwards will now cancel the item purchase
* Optimized code a bit (CVARs are now cached at round start, added cstrike module back)
* Fixed custom skies not being precached
- Version: 4.3-beta3 (Mar 16, 2009)
* Added CVAR to toggle respawning on infection rounds
* Added CVARs to separately toggle respawning of killed zombies, humans, nemesis and survivors
* Fixed custom flashlight sometimes displaying incorrect batteries charge on the HUD
* Fixed beta2's incompatibilities with some sub-plugins
- Version: 4.3-beta2 (Mar 12, 2009)
* Extended admin access flags settings to allow for more customization
* Ambience Sounds can now be separately toggled for each game mode
* "Join to Spectator" option now disabled for alive non-admin players to prevent suicide abuse (only if the zp_block_suicide cvar is enabled)
* Added forwards for when players turn into the last zombie/human
* Added forwards which allow to block an infection/humanization
* Updated zp_infect_user native with a "rewards" parameter to have the mod automatically handle frags and ammo packs rewards
* Implemented a more efficient Pain Shock Free code (thanks ConnorMcLeod)
* Optimized some code and tasks for less CPU usage
* Fixed remaining instances of the "weapons not reloading until they're switched" bug
* Fixed frostnade's screenfade not working properly with freeze durations higher than 15 seconds
* Fixed players sometimes getting incorrect gravity and rendering settings when transforming from a frozen zombie
- Version: 4.3-beta1 (Mar 06, 2009)
* Customization settings can now be edited externally, recompiling is no longer needed (zombieplague.ini file)
* Attributes for zombie classes and extra items can now be edited externally, recompiling is no longer needed (zp_zombieclasses.ini and zp_extraitems.ini files)
* Added support for multiple random zombie models (at last!)
* Added global zombie models override setting (to have all zombies use the same set of models regardless of class)
* Added CVARs to toggle respawning (deathmatch) on rounds other than infection
* Added CVAR to separately toggle Survivor's unlimited ammo
* Added CVAR to separately toggle Nemesis' knockback and set its multiplier
* Respawn: admin command and natives now allowed on all rounds
* Turn into Zombie/Human: admin command and natives now allowed on all rounds
* Turn into Nemesis/Survivor: admin command and natives now allowed on all rounds
* Added natives to force a player to turn into a Nemesis/Survivor
* Added native to retrieve a user's zombie class for the next infection
* Added forward for when users gets unfrozen (frostnades)
* Added support for registering extra items for Survivors and Nemesis
* Survivor and Nemesis are now allowed to buy custom extra items available for them
* When the last player from a team disconnects and he/she was a Survivor/Nemesis, the player chosen to keep the round going will now have its health set according to the amount of remaining players, instead of full HP (to keep the round balance)
* Fixed another Polish ML typo causing a string formatting error (that should be the last of them)
* Fixed bug where if a player's team changed twice in a short amount of time the team update message wouldn't be sent to clients (due to a task accidentally being removed)
- Version: 4.2 (Feb 11, 2009)
* Merged in beta changes (see below for details on those)
* Fixed small bug regarding the knife forcing code
- Version: 4.1-beta4 (Feb 06, 2009)
* Optimized code and checks for unlimited ammo, custom BP ammo, and bots ammo purchase
* Fixed reloading not working immediately after picking up a weapon with the extra BP ammo hack
* Fixed client prediction issues for high latency players when unlimited clip ammo is enabled
* Fixed server crash "New message started when msg 35 has not been sent yet" when a zombie is forced to switch to the knife and the client has cl_lw set to 0
- Version: 4.1-beta3 (Feb 02, 2009)
* Added CVARs to separately toggle infection special effects (screenfade, particles, etc.)
* Added screen shake to the default infection effects
* Added CVAR to set whether players should see each other's custom flashlights (zp_flash_show_all)
* Added CVAR to toggle the HUD icons on infection, burning, and freeze events (zp_hud_icons)
* Added CVAR to control whether worldspawn-killed players should automatically be respawned (zp_respawn_on_worldspawn_kill)
* Fixed money hiding setting not affecting players who respawn as zombies
* Fixed zombies getting a temporary godmode when a spawn protected human gets infected by a sub-plugin
* Fixed a typo in the Polish translation that caused a string formatting error
* Fixed non-custom nightvision being turned off by CS on some cases when spectating
* Fixed occasional nightvision issues when zp_nvg_give is set to 0 or 2
* Minor corrections
- Version: 4.1-beta2 (Jan 29, 2009)
* Added CVARs to change the amount of Survivors and Nemesis for Plague rounds (zp_plague_nem_number, zp_plague_surv_number)
* Added CVARs to modify the health of Survivors and Nemesis for Plague rounds (zp_plague_nem_hp_multi, zp_plague_surv_hp_multi)
* Added CVAR to change Zombie Madness duration (zp_extra_madness_duration)
* Added CVAR to change Survivor's default weapon (zp_surv_weapon)
* Updated ML with Dutch language
* Fixed zombie class menu showing up even after selecting a class manually sometimes
* Optimized delay code from the default model changing system (now it's flawless)
- Version: 4.1-beta1 (Jan 28, 2009)
* Added CVAR to set a purchase limit for infection bombs per round (zp_extra_infbomb_limit)
* Added CVARs to change base health multipliers for Nemesis and Survivor (zp_nem_base_health, zp_surv_base_health)
* Ambience sounds are now only played during game modes and stopped at round end (to completely avoid past problems with client overflows)
* Fixed enabling/disabling the mod by changing its CVAR after the map had started (it wouldn't properly turn on/off)
* Fixed using a high zp_multi_ratio causing all players to turn into zombies
* Fixed delay code from the default model changing system in order to reduce SVC_BAD when lots of people get infected at once (especially with sub-plugins)
- Version: 4.1 (Oct 25, 2008)
* Added colored messages
* Added customization for Survivor's M249 view model
* Added customization to set the required access to get admin models (ACCESS_FLAG3)
* Added zp_deathmatch 4 setting: players respawn as zombies/humans depending on how balanced the game is
* Added zp_lighting 0 setting: disables the mod's custom map lighting
* Added cvar to prevent the same game mode from being played two consecutive rounds: zp_prevent_consecutive_modes
* Added cvars to toggle admin models for humans and zombies separately
* Added cvars to change leap force, height and cooldown for zombies, nemesis, and survivor separately
* Cvar zp_knockback_ducking can now be given a multiplier for crouching zombies (values of 1 and 0 still mantain the previous functionality)
* Buying additional ammo will no longer waste ammo packs if the player already has full ammo for every weapon
* Zombie Madness can now be bought during the special game modes
* Zombies can no longer buy antidotes on deathmatch when the zp_respawn_after_last_human cvar is disabled and there's only one human left
* Made a bit more optimizations to the code, mostly to repetitive functions
* Added delay before stopping ambience sounds on round start to prevent overflows with many players
* Fixed .mp3 files being incorrectly precached (they're generic resources to HL)
- Version: 4.07 (Oct 01, 2008)
* Added CVARs to set a minimum amount of players required for the gameplay modes
* Added CVAR to stop respawning players when only the last human is left: zp_respawn_after_last_human
* Added CVAR to enable/disable the temporary saving of player's ammo packs and zombie class when they disconnect: zp_stats_save
* Added zp_leap_zombies 3 setting: gives leap to the LAST zombie
* Added logging of admin's Steam ID and IP to the zombieplague.log file
* Added display of ammo packs when spectating somebody
* Fixed a bug that allowed spectators to be respawned
* Fixed "Remember weapon choice" setting not being reset for a new player
* Fixed a bug with the alternate model changing method where the original player model wasn't hid when joining the game and spawning as a zombie
- Version: 4.06 (Sep 09, 2008)
* Added CVAR to control the damage done by Nemesis per hit: zp_nem_damage (250 by default)
* Buying an already owned grenade through the extra items menu will now actually increase the grenade count, rather than waste ammo packs
* Ambience sounds are now correctly played for every mode even when using lengthy songs and should no longer affect other sound events when looping
* Unstuck feature now goes along with the random spawn cvar
* When buying additional ammo the correct HUD icons are now displayed (i.e. 9mm, 50ae, etc)
* Replaced the fake bombsite to force round ending with a fake hostage, thus getting rid of an expensive bomb removal code
* Made some additional code optimizations to reduce CPU usage and such
- Version: 4.05 (Sep 01, 2008)
* Added CVAR to set humans/spectators custom nightvision color
* Added CVAR to enable respawning players who commited suicide (this may be abused, mind you)
* Added natives to force players to turn into zombies/humans (infection rounds only)
* Added customization for zombie knife hit/stab sounds
* Added customization for human knife model (just because changing it with 3rd party plugins wouldn't work properly)
* Players are now forced "cl_minmodels 0" when they join so that they can see zombies correctly
* Ambience sounds from the previous round are now stopped when a new one begins
* Corrected a bit the help MOTD (wasn't updated since 3.6 ;P)
* Fixed incorrect weapon models showing up when turning into a survivor with a grenade on hand
* Fixed an exploit with the custom flashlight that allowed for unlimited batteries
* Fixed possible bugs when players switched to Spectator using the ZP menu
* Fixed round end event getting called twice sometimes when restarting the game
* Fixed first spawn not being detected for the first CZ bot that is created
* Minor fixes and optimizations...
* 4.05b: Fixed custom human knife model not being precached
* 4.05c: Fixed a stupid typo in the nightvision code which caused clients to be kicked
- Version: 4.04 (Aug 25, 2008)
* Added custom leap system (allows changing force, height, and cooldown)
* Added CVAR to remove dropped weapons from the floor
* Added CVAR to set custom hitzones for zombies
* Added CVAR to disable custom admin models
* Ambience sounds now support different sounds for each game mode
* Optimized bandwidth usage for temp entity messages
* Fixed blood coming out of players even when the attack was blocked
- Version: 4.03 (Aug 20, 2008)
* Added CVAR to set the infection ratio in Plague Mode
* Added CVAR to prevent players from killing themselves
* Added CVAR to set a max distance for knockback
* Fixed flares occasionally going off as smoke grenades when using Nade Modes
* Fixed a bug in Plague Mode regarding Survivor/Nemesis not turning completely into a zombie/human when chosen to keep the round going after the last player on the opposite team leaves
* Fixed money sometimes still displaying on HUD when the money remove setting is enabled
* Cleaned up the code a bit
- Version: 4.02 (Aug 16, 2008)
* Custom grenades are now compatible with Nade Modes
* Ambience sounds now stop playing when the map ends (by request)
* Added CVAR to turn silent footsteps for zombies on/off
* Fixed knockback not being affected by zombie class multipliers
* Fixed custom knife model not showing up when zombies are forced to use the knife
* Additional minor fixes
- Version: 4.01 (Aug 14, 2008)
* Added support for admin zombie models
* Added cvar for humans not to get infected if they have armor
* Added customizaton for zombie knife miss sounds
* Added chat command /unstuck (by request)
* Minor fixes on menu codes
* DEBUG: Added define to enable/disable setting the modelindex offset
- Version: 4.00 (Aug 09, 2008)
* Added new gameplay mode: Plague Mode
* Redid buy menu system, added feature to remember weapons choice
* Redid zombie classes system, added support for external additions (e.g. new classes)
* Redid extra items system, added support for external additions (e.g. custom items)
* Survivor can now have its own model
* Added cvars to set how many frags players get for infections/kills
* Added additional ML translations
* Changed a bit the model changing method
* Fixed round win sounds not being precached
* Fixed players being able to move before freezetime end
- Version: 3.62 (Jul 28, 2008)
* Added an option to the Game Menu to join the Spectators team
* Added cvar to disable zombies night vision and the automatic turn on: zp_nvg_give
* Added zp_flare_color 5 setting: randomly chooses between red, green, and blue colors only
* Added cvars to disable the halos (light auras) of Nemesis/Survivor
* Added cvars to set whether Nemesis/Survivor should also be rewarded ammo packs
* Added cvar to set whether to block +use on pushables to prevent the speed bug
* Added a little smoke sprite when people stop burning
* Added 2 more natives for the making of sub-plugins
* Corrected a cvar name: "zp_lightning" should be "zp_lighting" (duh...)
- Version: 3.61 (Jul 20, 2008)
* Added command to enable/disable the plugin: zp_toggle <1/0>
* Added CVAR to disable the custom buy menus: zp_buy_custom
* Added CVAR to set a slowdown on burning zombies: zp_fire_slowdown
* Added some HUD icons for burning, frozen and infected events
* Fixed a typo in the extra items purchase code for bots (also, they will no longer get extra items if disabled by cvar)
* Fixed false spawn detection for bots when they join the game (credits to vittu)
- Version: 3.60 (Jul 15, 2008)
* Added a few natives and forwards, along with an include file for those out there willing to make any sub-plugins or something (if you need more, just request!)
* Thunderclaps now available for zp_lightning settings a to d
* Added CVARs to disable extra items separately (e.g. infection bomb, etc.)
* When a Nemesis/Survivor disconnects, the random player chosen to keep the game going will now be a Nemesis/Survivor too (instead of the round going on as infection mode, which looked sorta confusing)
* Bots now buy extra items after respawn instead of during a fight
* PODBots: Survivor bots now able to repick weapons in case they drop the M249 (more like a temporary fix)
* Improved a bit some repetitive tasks handling
* Minor changes and fixes
- Version: 3.59 (Jul 02, 2008)
* Zombie models can now be assigned to each class separately
* Bots can now buy extra items, PODBots use nightvision correctly and don't get confused with players respawning on deathmatch mode anymore
* Players can now correctly join during survivor/swarm rounds (they'll automatically spawn as zombies if they shall)
* Added CVAR to give longjump to first zombie: zp_zombie_first_leap
* Added CVAR to change time before respawning on deathmatch mode: zp_spawn_delay
* Added CVAR to change fire grenade's burning damage: zp_fire_damage
* Added CVAR to change flare's lightning radius: zp_flare_size
* Fixed players not respawning as zombies when the corresponding deathmatch setting was enabled
* Fixed multiple infection mode triggering when it would result on a single zombie being infected
* Fixed flares floating midair
* Fixed the most rare occurrences of players stacking on a single team, so that no manual game restarts are required anymore
* Fixed players getting an incorrect amount of ammo for some weapons when buying
* Changed say command "menu" to "zpmenu" (it can still be accessed by pressing M anyway)
* Minor changes/corrections
- Version: 3.58 (Jun 23, 2008)
* Added support for Condition-Zero bots and changed bomb removal method (thus hopefully fixing all related crashing errors)
* Fixed grenades exploding when dropped from corpses on CZ
* Fixed zombie bleeding feature using incorrect decals on CZ
* Added additional knockback customization (you can now set intensity for each weapon separately)
* Added CVAR for zombies not to be knocked back when they're ducking: zp_knockback_ducking
* Fixed HUD Messages overlapping with some miscstats announcements
- Version: 3.57 (Jun 20, 2008)
* Added support for PODBot MM V3B19k+: bots buy their own weapons/ammo and choose their zombie class (thanks KWo)
* Added support for grenades and pistols to the Extra Items Weapons List
* Added a notice for players when the last zombie/human leaves
* Fixed flares potentially turning into smokegrenades when changing their duration
* Infection Bomb can now kill the last human
* Minor changes to the code
- Version: 3.56 (Jun 13, 2008)
* Added support for ambience sounds
* Added CVAR to control whether player's money should be removed: zp_remove_money
* Added CVAR to ignore Nemesis/Survivor frags: zp_nem_ignore_frags/zp_surv_ignore_frags
* Added CVAR to give the last human an extra health reward: zp_human_last_extrahp
* Fixed compiler error when trying to use the alternative model changing method.
* Fixed zombieplague.log entries being formatted somewhat incorrectly.
-Version: 3.55 (Jun 09, 2008)
* Public release.
- zp_resources.zip (3.06 MB)
- zp_plugin_43.zip (353.5 KB)
* Locked & Sticky