Contagion cover
Contagion screenshot
Genre: Shooter, Adventure, Indie

Contagion

May Update: 2.1.4.0

The May Update is finally here! It contains 1 new Flatline map, bug fixes as always, and some new minor additions!



Clock Tower is a new Flatline map I have created. The map has only 5 waves, instead of the usual 10, however, the map itself increases its difficulty drastically per wave. This map also utilises the new entities I have created to make it easier to create new maps for Flatline gamemode.

I would love to create more maps, but there is only so much I can do alone.



Now, about the "Create Game (Legacy)" that was added, it is a re-written Legacy styled server creation window for local games (port forwarding required). It contains more configuration options than the L4D2 UI one under "Create Game". L4D2 one is more cramped, and shares code with the "Find Game" one, which is why this was created.



Server Browser has also been updated, and tweaked. It was missing some features that is present in SDK 2013 branch, which is adjusting its size (if the server browser generated config file is missing) when drawing the dialog for the first time. This has been fixed, as well as the server columns having faulty widths and font sizes.



Vote System has been added, and can be toggled on or off. It's pretty straight forward, and simple as of now, but can be expanded and improved upon.
Here are the available commands for the system:

convar: sv_allow_votes
default: 1
desc: Enables Vote System

convar: sv_vote_issue_kick_allowed
default: 1
desc: Allow Vote kick players (Can not vote kick moderators, nor administrators)

convar: sv_vote_kick_ban_duration
default: 5
desc: How long should a kick vote ban someone from the server? (in minutes)

convar: sv_vote_issue_change_difficulty_allowed
default: 1
convar: Allow Vote for a new difficulty (Applied on the next round)

convar: sv_vote_issue_restart_game_allowed
default: 1
convar: Allow Vote for round restart



Changelog


Engine



  • Fixed ConVar difficulty lock causing the game crash due to it going into a loop

SDK



  • Added entity flatline_manager (handles wave state, if we should escape and if a riot spawns etc)
  • Added entity flatline_shop_handler (handles if the shop gets opened or closed)

  • Updated ContagionSDK

  • Fixed Hammer Editor trying to read old information, which caused it to crash on boot
  • Fixed Model Viewer having problems reading VPK directories
  • Fixed vbsp not creating the maps folder if it doesn't exist

Game



  • Added "Create Game (Legacy)" under "Create Game"
  • Added "Server Browser" on the mainmenu
  • Added a vote system
  • Added new map achievement

  • Updated contagion_ui_english.txt
  • Updated "Create Game" to save mode selection and the check boxes information under Advanced tab
  • Updated explosive shots upgrade module damage being too large and hurting teammates
  • Updated cockroach solid states, so they don't block bullets or anything (when attached to players)
  • Updated shop_item, added a new special item called (door)
  • Updated Flatline gamemode, now looters and doctor zombie types can spawn trough the map wave script
  • Updated Flatline wave files to be read from scripts/flatline/waves
  • Updated where zombies now drop 9mm and sniper rounds on death (15% chance of drop), on normal and easy difficulties only on Flatline gamemode
  • Updated Flatline gamemode, optimised and removed obsolete code
  • Updated audiobanks (figurines.bnk and weather.bnk)
  • Updated Survivor Bot AI to buy weapons on Flatline Gamemode

  • Fixed stumbling zombies not dying from leg shots
  • Fixed Server Browser not being able to save it's configurations and having broken fonts
  • Fixed where cockroaches would block bullets in Flatline
  • Fixed GPS in Extraction not updating the map image correctly
  • Fixed inoculators or firstaid causing the gasmask to unequip after use, and cause the bones to break
  • Fixed character selection lineup model where you could see the level by aiming the camera quite low
  • Fixed where Flatline would crash the game if there was no nav mesh or zombie spawns
  • Fixed missing texture problem for the props_rpd/barricade 01, 02 and 03
  • Fixed the bubbles particle on biotec going trough solid matter
  • Fixed where Flatline would crash the game if the wave file was not read properly
  • Fixed scar world model missing a grip
  • Fixed zombies being able to attack while playing the landing animation when they jump down from high places
  • Fixed GlowStick having flickering problems on dedicated servers
  • Fixed M1 Garand having a flashlight attachment
  • Fixed closed captions not working from sound emitter entity
  • Fixed damage issues on the melee weapons
  • Fixed player riot zombies not setting their blend zombie to riot
  • Fixed player riot zombies not caring about the helmet being destroyed
  • Fixed Survivor Bot AI having problems to figure out grenades
  • Fixed Survivor Bot AI causing the game to crash when telling them to stop or follow, if they are trying to grab a weapon
  • Fixed Survivor Bot AI trying to reload on each frame

Maps



  • Added new Flatline map "Clock Tower" (cf_clocktower)

  • Fixed some issues on ce_biotec vscript file

Patch: 2.1.3.5

Game



  • Added Admin System (you can add admins under the adminslist.txt file under contagion/ folder. You can access the commands with the "admin" console command)

  • Updated the Survivor AI to only activate the flashlight in dark areas
  • Updated mysterybox upgrade modules percentage chance
  • Updated the limit stat for "ACH_SPENDER" and "ACH_RECYCLER" (they have been reduced)
  • Updated EOR UI breaking apart on higher resolutions
  • Updated survivor player animations

  • Fixed a bug where the zombie lives was not properly set
  • Fixed Survivor Bot AI turning on their flashlight on Hunted on spawn
  • Fixed where you could add flashlight upgrade to weapons that has flashlight attachments
  • Fixed where crossbow arrows did not read the damage multiplier upgrade module
  • Fixed "Recycler" shop item having a price tag
  • Fixed 16 slot scoreboard layout breaking
  • Fixed where the round wouldn't end in Solo Mode
  • Fixed "SetInfectedLives" nutscript also affecting survivors, which would cause them only have 1 life as zombie
  • Fixed Survivor Bot AI having problems reloading their weapons
  • Fixed where the infection and zombie player disable was not working on lobbies with Hunted Gamemode
  • Fixed Inoculator world model missing hand bone for female characters
  • Fixed numerous security exploits

Hotfix: 2.1.3.4

A tiny hotfix to fix some small exploits and some oversights regarding achievements.

Game



  • Updated Harvest (Escape), changed the banjo static model to a melee weapon

  • Fixed recycler saying "Buying..." instead of "Recycling..."
  • Fixed an exploit with achievements when turning on cheats
  • Fixed an oversight with "Pay 2 Win" and "I'm Bleedin' Dry!" achievement

Patch: 2.1.3.3

Changelog


SDK



  • Fixed workshop tool "Create/Update" page buttons having incorrect images

Game



  • Added missing translation keys into contagion_ui_english
  • Added 5 new achievements
  • Added new Flatline shop called "Recycler"

  • Updated mysterybox on how it generates the weapon
  • Updated mysterybox to give melee weapons
  • Updated config files for the gamemodes Escape and Flatline

  • Fixed where the End Of Round voting wouldn't properly pick the highest voted map
  • Fixed End Of Round voting not working as it should on Escape gamemode
  • Fixed Achievements using the wrong title for a section
  • Fixed where bolt cutters, keys, key card and fire extinguisher wasn't being removed after being dropped on Flatline
  • Fixed where cockroaches could use survivor voicelines
  • Fixed difficulty lock problems on lobbies

Maps



  • Updated Union Station (Flatline), fixed the survivor helper button being broken on the 2nd floor
  • Updated Harvest (Flatline), removed a few exploitable areas and removed static banjo model
  • Updated Barlowe Square (Escape, second part), changed the Kabar dynamic model to the actual weapon type
  • Updated all Flatline maps to include the new "recycler" shop item and updated mysterybox model

Patch: 2.1.3.2

The issue with the mapcycle should now be fixed, and I've also added in "End Round Voting", so that the players can choose which map they want to play next (picked randomly from the mapcycle file).

Changelog


Game



  • Added End Round Voting
  • Added ConVar sv_endround_escape <0/1> (Enable Round End Vote via trigger_escape, enabled by default)
  • Added ConVar sv_endround_voting <0/1> (Enable Round End Vote, enabled by default)
  • Added ConVar sv_endround_timer (Amount of time to vote, default is 15 seconds)

  • Fixed where the mapcycle could crash the server down, or just output invalid strings
  • Fixed where you lost money when you escaped on Flatline

Patch: 2.1.3.1

Changelog


Game



  • Fixed a crash related to Survivor Bot AI when trying to reply to voice commands
  • Fixed Survivor AI refusing to follow, or move, on the first round.

  • Updated Survivor Bot AI scavenge range and how it functions
  • Updated Survivor Bot AI behavior, "Follow Me" voice command now works as intended.

Maps



  • Updated Biotec (Escape), fixed where the helicopter rescue button could be pressed after 30 seconds when grabbing the antivirus. It has now been changed to 160 seconds (2.6 minutes) to prevent griefing
  • Updated Biotec (Hunted), removed weapon and ammo spawns that was outside of the playable area and faulty navigation meshes
  • Updated Aurora Estates (Hunted), removed faulty navigation mesh and where you could spawn in an area with no exit
  • Updated Cyprus Park (+ Night Version) (Hunted), fixed where you could spawn in an area with no exit, and faulty navigation meshes

March Update: 2.1.3.0

Another month, another update! It's not as large, or big, as the previous update, since I had to scale down on the update due to unforeseen consequences.

For those who wanted a Linux Dedicated Server for Contagion, I got some bad news, it's on hold until further notice. Reasons that are out of my control, and there isn't anything I can do about it for the time being.

The AI has been improved and updated. Most of the new changes is for the BOT AI, to make them enjoyable to fight against on Hunted and Panic! Classic gamemodes. They are still quite dumb when it comes to Objective oriented gamemodes (such as Escape, Extraction and Panic! Objective). They will be further improved upon so they will work properly on all gamemodes as well, so that they are able to help out the player(s).

The translations has also been moved to their own respective folder, instead of using the "resource" folder. They are now located under "translations", to make it easier to find, modify and/or create new translations for the game. To test your translation, launch the game with the startup paramater "-lang" (Example: -lang japanese). You can find the translations within the vpk file "translations_dir" under vpks folder.

I hope everyone will enjoy this month's update!

Changelog


Engine



  • Updated materialsystem.dll to not show debug messages
  • Updated Font System to support dynamic font sizes via code
  • Updated the loading screen for lobby games

Game



  • Added sb_enabled <0/1> (Required to to utilize the bots)
  • Added sb_autojoin (The number represent the amount of bots that should join)
  • Added sb_joinafterhuman <0/1> (Tells the bots to join after a human player joins, utilizes sb_autojoin)
  • Added sb_favoriteweapon <0/1> (To allow bots to equip and use their favorite weapon on spawn)
  • Added mapcycle_gamemodes <0/1> (Customize the mapcycle for specific gamemodes. Lobbies use these by default)
  • Added where Survivor AI reloads their weapon if there are no enemies/threats detected
  • Added Bot Profiles
  • Added sound slowdown when "host_timescale" is less than 1.0
  • Added config files for each gamemode, can be located under cfg/gamemodes/
  • Added Shader Settings (You are now able to disable/enable specific shaders)

  • Updated cont_grappledist_ai to be 55 instead of 45
  • Updated as_asystem to save to pathid AUDIO instead of GAME (so it doesn't save under addons//)
  • Updated Survivor Bot AI to be more intelligent
  • Updated the Survivor Bot AI to have reaction time
  • Updated closed captions
  • Updated the scoreboard to show "BOT" instead of "0" for Survivor Bot AI
  • Updated trigger_escape "map" value to work properly in lobby games
  • Updated Survivor AI to phone players as their priority (50% chance) on Hunted
  • Updated Survivor AI to choose the best weapon depending on the situation they are in
  • Updated "weapon hud" draw state in nightmare mode (or hud toggle mode), to draw when trying to reload
  • Updated Survivor Bot AI to "melee" enemies if they are too close
  • Updated translation files (contagion_english and contagion_ui_english) to include missing strings
  • Updated trigger_escape "map" value to work properly in lobby games
  • Updated Survivor AI pathing for escape trigger and safe zone
  • Updated translation files (captions_, contagion_ and contagion_ui_) to be under their own folder called "translations" instead of "resource". You can find the translation files under vpks/translations_dir.vpk

  • Fixed where server workshop content doesn't mount properly when client connects
  • Fixed WWise sound problem from Particle SoundEvents
  • Fixed where prop_barricade from nailgun did less dmg than it should
  • Fixed a crash on dedicated
  • Fixed "Dinner for me and you" achievement not working
  • Fixed Survivor AI shooting trough everything and not caring about their FOV
  • Fixed Survivor AI trying to use survivor lines while being a zombie
  • Fixed memory leakage regarding survivor spawns
  • Fixed "Failed to find valid spawnpoint. Report to a developer!" when there should be spawns available
  • Fixed crash issue regarding zombies going down ladders
  • Fixed difficulty lock not working correctly
  • Fixed where the MapCycle would run if net_islobby is enabled (MapCycle is disabled on lobby games)
  • Fixed where Hammer Editor crashes when closing down the map document or the program when drawing detail objects
  • Fixed Survivor AI having problems reloading their weapons when running out of ammo
  • Fixed Survivor AI having problems healing themselfs if they pickup medkit/inoculator
  • Fixed a bug where the maxplayers wasn't set properly when changing from gamemodes that support 8+ to 8 slots
  • Fixed "Find lobbies" not finding friends only lobbies
  • Fixed difficulty lock not working correctly
  • Fixed a bug on hunted when trying to ping other players with the phone if there where more than 6 players
  • Fixed Survivor AI speed being inconsistent to the animation they are playing, or trying to play
  • Fixed some textures having faulty shaders
  • Fixed baseballbat (metal) having surfaceprop of "flesh" instead of "metal"

Maps



  • Updated ce_barlowesquare to only remove 1 bank card
  • Updated ce_campwhitner (Fixed the grass not working)

  • Fixed a godspot on ce_barlowesquare where the zombies could not reach
  • Fixed an exploit on ce_campwhitner where you could skip 90% of the map by doing a precise jump
  • Fixed the error model on ch_campwhitner
  • Fixed faulty spawns on ch_unionstation

SDK



  • Added BrushToMdl.exe (Brush To Model) utility program for Hammer Editor, to convert brushes over to model format

  • Updated contagion.fgd
  • Updated VBSP
  • Updated VPK tool
  • Updated details.vbsp and canju_details.vbsp
  • Updated Hammer Editor (Fixed where the detailed props could crash hammer on shutdown)
  • Updated Workshop tool (Fixed the workshop agreement url)

  • Fixed where Hammer Editor crashes when closing down the map document or the program when drawing detail objects
  • Fixed the RPD toilet02 having a massive collision that doesn't represent the model itself
  • Fixed all broken props_train models that had bad origin, and/or broken smoothing groups

Patch 2.1.2.2

Changelog


Engine



  • Updated particle system to support sound events from WWise
  • Updated screenshot, dev_screenshot and jpeg to utilize SteamScreenshots callbacks

  • Fixed where ALT+TAB would crash the game, due to it was trying to read bone information that was invalid
  • Fixed where screenshots would crash the game if taken in fullscreen

Game



  • Added WWise Closed Captions (disabled by default, enable it via Options > Audio)
  • Added ConVar cont_zombie_ai_grapple (Default: 1)
  • Added Difficulty ConVar cont_zombie_ai_grapple_chance
  • Added unused voice lines for the survivors
  • Added sb_fill (Fills the remaining slots with bots)

  • Updated crossbow arrows bouncing off when trying to do headshots
  • Updated "cont_toggle_hud" and "cont_show_hud_always" to also apply weapon selection box
  • Updated Hunted phone pinging to read player distance (It was ignoring the player distance)
  • Updated Hunted phone pinging delay to be 8.6 second instead of 3.2 seconds
  • Updated Hunted phone pinging refresh rate from 1.0 to 1.5
  • Updated vscript (added ThePresident.ForceSubtitles)
  • Updated Player Bot AI (They are still quite dumb, but they now work properly in Hunted)
  • Updated sb_bot (Removed cheat var, as the bots now work as intended)
  • Updated "Quick Controls" (default: F1) to show the names for upgrade modules on Flatline (from the mystery box) when the weapon has active upgrade modules

  • Fixed where server workshop content doesn't mount properly when client connects
  • Fixed map achievements having problems reading the difficulty, which would result in the achievement not being given
  • Fixed where you couldn't ride on survivors as a cockroach on all gamemodes except Flatline
  • Fixed the cockroach shader (unused after the beta, but was reused in Flatline)
  • Fixed scoreboard UI showing player health and "can open door / stealth kill" icons showing on Nightmare difficulty
  • Fixed an exploit where the player could blend while grappling
  • Fixed env_spark having issues drawing on screen
  • Fixed an exploit on all gamemodes, where you can change difficulty mid game, which would fake achievement progression (play on easy, and quickly switch to nightmare)
  • Fixed where crawlers can grapple

Maps



  • Updated ce_campwhitner to use "ForceSubtitles" for when Jason talks to the player
  • Updated ce_barlowesquare to only remove 1 bank card
  • Updated Flatline shop entities to not use "collision check" if it's not a rescue closet, and/or mystery box

SDK



  • Added WWise project example and the required files for WWise 2015.1.9

Hotfix: 2.1.2.1

A quick hotfix, to fix some issues that popped up, and some minor changes to the "status" command. By default, "showstatus" is set to 1, to use the more organized version. To use the old layout, simply write "showstatus 0" in the console.

Changelog



  • Added command "showstatus", to edit how to display "status"

  • Fixed all map related achievements
  • Fixed zombies doing attack animations when enemy is not in view, or climbing
  • Fixed zombies grappling when they fall down and/or climbing
  • Fixed players being grappled with infection on, crashes the server

  • Updated "status" command

February Update: 2.1.2.0

Another large update!

I've been doing my best fixing and balancing things that was either broken or OP. Some new additions has also been added, such as "Nightmare" difficulty, for those who are up for the challenge.

Flatline has been updated, such as the "Mystery Box", and the new "Trap" items. The "Mystery Box" will always grant a weapon with a random upgrade, such as double damage for example.



The survivor AI has also been updated, they no longer get stuck on ladders and will now drop their weapon if they run out of ammo, and get scared if the zombie attacks them if they have no weapon.

Extraction has been tweaked, it no longer starts the horde right away when you reach the hold out position, so now you will have time to board up and loot the location.



Infected AI can now also grapple survivors, however, this only applies to Hard and higher difficulties. Just like the player grapple, it will infect the players if infection is enabled. And will deal a great deal amount of damage, so double check your surroundings when playing on Hard or higher difficulties.

Steam Workshop has also been updated to UGC format, instead of using the old Legacy which utilized Steam Cloud. With this new changes, clients will be able to download UGC directly when trying to join a server that uses a map from the Steam Workshop. Older Legacy content does not support this feature.



The Inoculator is back! This time, however, it acts differently than it did in the KS and Early Access builds, since the First Aid kit has taken it's role. The inoculator this time around cures the infection, however, on Hard and higher, it only delays the infection. It also grants 25% health, so it can also be used as a health item.



2 New zombie "types" has been added, which is the "doctors" and "looters". The doctors can drop a first aid kit, or a inoculator, however, the drop chance decreases on each difficulty. The looters act similar to the "fallen survivor" from Left 4 Dead, which is where this type is inspired from. They will randomly drop ammo, or an explosive. Just like the doctors, their drop rate gets less the harder difficulty you play on.

I hope everyone will enjoy this update!



Changelog


Engine



  • Added "maxplayers_override" to override the maxplayers limit. This will however warn players when they try to join the server

  • Updated ServerBrowser.dll to show Game Version, instead of "Game", and removed Game Filter
  • Updated Steam Workshop to use UGC format instead of Legacy content

  • Fixed "status" showing incorrect steamid's
  • Fixed "[S_API WARN] Calling ISteamGameServer::SetDedicatedServer after CM connection already initiated." spam

Tools



  • Updated the Contagion Workshop tool to use the latest SteamAPI calls and use SteamUGC instead of SteamStorage for publishing to Steam Workshop.
  • Updated contagion.fgd

Game



  • Added new achievements
  • Added "Drop Return Position" for key objective items (keys, keycard, boltcutter, gasmask) to prevent griefing
  • Added "Mystery Box" and "Trap" shop items for Flatline
  • Added Banjo sound events
  • Added trap_fire and trap_fence for flatline
  • Added weapon_glowstick
  • Added weapon_inoculator
  • Added difficulty convar cg_flatline_money_bonus
  • Added difficulty convar cg_flatline_money_penalty
  • Added convar cg_safezone_endtimer_on_reach (Default: 0)
  • Added convar cg_safezone_endtimer (Default: 120)
  • Added convar cg_safezone_ignore_latejoiners (Default: 0)
  • Added convar cont_toggle_hud_drawtime (Default: 2.5)
  • Added new optional difficulty "Nightmare"
  • Added where infected zombies can grapple survivors (Hard and higher difficulty)
  • Added 2 new zombies types "Zombie Doctor" and "Zombie Looter"

  • Updated Flatline to delete dropped weapons after 60 seconds
  • Updated Survivors on Extraction, to have ammo capacity (they only have 10 extra clips, reads the max size cap of the current weapon)
  • Updated Turret AI to have ammo capacity (default: 500)
  • Updated TargetID to show turret ammo capacity
  • Updated Survivor AI weapon drop on death (doesn't refil weapon when dying)
  • Updated Survivor AI to become scared if they don't poses a weapon
  • Updated Lobby Game Settings to allow panic classic, and panic objective to support 16 players
  • Updated Extraction, to enable the horde after 35 seconds instead of 5 (boarding was basically pointless)
  • Updated Survivor AI to refuse other people from taking over, if we already have a follower (that isn't dead)
  • Updated zombie animations, now it will read the death animations (if they are in important state)
  • Updated filter_objective to allow for objectives that uses specific names
  • Updated where you can attach to any player on all modes, not just flatline
  • Updated particle files (environmental_fx.pxf & weapons_fx.pxf)
  • Updated escape gamemode to give the player a melee weapon on spawn (kabar, wrench, banjo or guitar)
  • Updated camp.bnk (Added AS_ElectrifiedFence)
  • Updated "Ambient Sound Editor" to create the "scripts/soundsystem" under "contagion" folder when trying to save, if the folders does not exist
  • Updated Turret AI sounds
  • Updated damage when shoving zombies on higher difficulties (Hard and higher)
  • Updated Flatline penalty and bonus for each difficulty
  • Updated Flatline Nightmare mode, where money resets back to default 100 on failure (if round saver was not bought)
  • Updated Turret AI to have the same firerate as MP5K and nerfed it's OP aim lock on zombies
  • Updated "Healing..." to use the same textures as the Contagion Beta
  • Updated "Healing..." to be hidden on Nightmare difficulty
  • Updated infected death animations

  • Fixed healing not working on teammates
  • Fixed some minor bugs on Flatline
  • Fixed crossbow reload animation not resetting the "empty_pose" paramater
  • Fixed crossbow arrows being terrible
  • Fixed compbow breaking apart if empty
  • Fixed "ThePresident.SetInfectedLives" Vscript code. Now it no longer softlocks the game for one stupid reason or another
  • Fixed Extraction GPS not sending the location to the extraction zone correctly
  • Fixed Extraction Survivor throwing gasmask and keycards
  • Fixed Survivors AI having a breakdown when using ladders
  • Fixed cockroaches spectating another cockroach on flatline
  • Fixed biotec monitors having broken UV
  • Fixed "props_train_station/outer_light01_bulbmetal.vmt" being faulty
  • Fixed where pistol ammo where given if Flatline was on Hard and Extreme
  • Fixed bullets not registering as damage on glassplanes
  • Fixed Turret AI having blood decals
  • Fixed Turret AI not stopping sounds when its being destroyed
  • Fixed crossbow and compbow dealing 1hit kill when using their melee
  • Fixed item_ammo_barricade not playing "use" activities
  • Fixed buddha being incorrect
  • Fixed VGUI breaking apart on the phone on Extraction
  • Fixed a crash on the mainmenu where the game would crash if it was trying to load custom UI
  • Fixed where the game would give the user wrong achievements on map completion
  • Fixed cont_toggle_hud not working as intended

Maps



  • Updated cf_stonecreek, fixed some visual bugs
  • Updated ce_biotec to support parallax cubemaps
  • Updated ce_barlowesquare_02 balance at the subway being impossible on Extreme
  • Updated cf_harvest to utilize fence trap
  • Updated cf_campwhitner and cf_montclair old fence trap to utilize trap_fence entity instead