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 <num> (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/<folder>/)
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
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
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
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
This one large update contains the long awaited Lobby System! The lobby uses the Steam Networking features, which means you do not need to port forward your ports when using it.
I have also tweaked Flatline some more, and adjusted the shop prices a bit, and added some quality of life features to Contagion, such as updating the Survivor AI. Some nasty server related issues has also been dealt with, such as getting "Host_Error" crashes, when it should just kick the player back to the Main Menu. Or if the map is missing, and the client would just crash down due to "texture information" being invalid, instead of showing "Map Missing".
A new Flatline map has also been added. This version of Stone Creek, is Christmas themed. It's a bit late, but never the less, it's a new change of scenery. Xmas version of Stone Creek was available back in 2013 and 2014, before it was changed back to the original theme.
Oh, and for the modders out there, I have included the official SMD compile files for survivors and weapons, so you can create custom content easier.
Workshop will also get a overhaul at a later time. At this moment, Workshop uses Steam Cloud, instead of SteamUGC. Once this change happens, clients will be able to download the workshop map & it's content when connecting to the server. The client will of course, be able to turn it off if they don't want to download workshop content from the servers. Old workshop content using Steam Cloud method will not be affected, however, they will be required to be updated to SteamUGC format to be able to be downloaded when joining the server, if content is missing.
You can read the whole changelog below!
Changelog
Engine
Updated the maxplayers to be forced at 8 players on all modes except hunted (which supports 16 players)
Updated Server connection retrieve netpackets, to check for lobby servers
Updated Server connection, to use Steam's own networking protocols instead of normal IPv4 (will fallback to it if it fails)
Updated Host_Error to only show "recursive error" if host_error_recursive is set to 1
Fixed "connect" not showing the loading screen when executed
Fixed where the game crashed instead of saying "Missing map"
Fixed "developer" being an invalid command
Game
Added Lobby System (Find & Create lobbies)
Added where the flashlight state is saved on the guns, if they have a flashlight (resets on weapon drop)
Added the missing "TargetID", when looking at fellow survivors (Shows name and health)
Added the melee weapons banjo and guitar
Added indications on the phone for teammates and Survivor/Turret AI locations on Flatline
Added where you get increased money gain on higher difficulties on Flatline
Added where the spectators can view everyone's health trough TargetID
Updated the 3 new Escape achievements to allow solo play (removed 4 player criteria)
Updated Survivor AI to only target enemies within their view cone, instead of doing 180° headshots
Updated built barricades, so they can be picked up by the owner of the board
Updated Flatline to only regenerate health after shop ends on Easy Mode
Updated Flatline to only give melee weapons on hard and Extreme. (Gives sig and melee on Easy and Normal)
Updated Flatline to show the current amount of money on the HUD when the shop opens up
Updated Flatline shop prices for all guns & special items
Updated Flatline scoreboard to show "MONEY" instead of "Zombies: 0 Riots: 0"
Fixed a bug where if the player tried to buy an item, and the shop ended, it tries to buy an item again when going close to an shop_item entity
Fixed Flatline printing the HUD info for all players, when it should be only pointed to the player who is trying to buy the item.
Fixed the ammo pickup sound not playing
Fixed achievements being broken
Fixed where you get penalty for destroying already built barricades (not built by players) on Flatline
Fixed where if you sprint and tap (+USE), it will break the buy timer
Fixed "use" animation not playing when pressing on "prop_button"
Fixed info_safezone not reading all survivors
Fixed where the buy display would bug out when trying to buy something and looking away at the same time
Fixed where the ESC key did not register when on loading screen
Fixed where the Turret AI had a vendetta against cockroaches
Fixed an exploit on barricades, where you can farm money (Flatline)
Fixed melee weapons having inconsistent damage output against Infected
Maps
Added cf_stonecreek
Updated the nav mesh on Unionstation (Flatline)
Updated Montclair and Barlowe weapon scripts
Updated Harvest (Flatline), added purchasable turrets, and round saver
Fixed Hunted version of Harvest not spawning players correctly
Fixed Montclair (second part), where the zombie players didn't spawn near the gas station, and zombie AI not spawning at the correct areas
Fixed Barlowe (first part), where the bank portion was way too hard, and has been tuned down a bit to be more fair
Fixed an exploit on Pioneer Express (Hunted)
Fixed an exploit on Harvest (Flatline)
Fixed the nav on Harvest (Flatline)
Fixed an exploit on Union Station (Flatline & Hunted)
SDK
Added sourcefiles (SMD and QC) for compiling the weapons and survivors - Note, I highly recommend using Crowbar, by ZeqMacaw, when compiling for Contagion
To fix the mainmenu freeze when joining servers, please delete the old VPK files, if that doesn't work just re-install the game (delete all files related to Contagion). This issue only happens if you have Contagion already installed. The reason for this is due Steam downloaded faulty files, or not everything was fully downloaded.
Changelog
Engine
Fixed where it tried to create .cache files, even tho Contagion doesn't use Miles Sound System anymore. Which caused the dedicated server to crash.
Fixed "invalid hostversion" not showing a dialog when trying to join servers that haven't been updated
Updated MAX_THREADS_SUPPORTED from 32 to 64
Game
Added console command ThePresident_SurvivorSpawnPos and ThePresident_SurvivorSpawnPos_Generate to create Vscript survivor spawns
Updated In-Game menu to support "Server Browser" button
Fixed where the new achievements didn't work due to a calculation error
Maps
Updated all the maps to support up to 16 survivor spawns
Updated barlowe nav mesh
Fixed helicopter noise at round start on RoanokePD
Fixed an exploit in RoanokePD where you can toss your items into places where they shouldn't be at
Vscript
Added ThePresident.CreateSurvivorSpawn - Create a survivor spawn.
Added 4 functions that are fired automatically: - OnMapStart - OnMapEnd - OnRoundStart - OnRoundEnd
From Zombie Panic! Source, Contagion and to Contagion VR: Outbreak 10 years has passed! Come check out the Anniversary Update! Thank you all for sticking with us!
This major update revision to Contagion may break some old WWise audiobanks, if your map uses custom audiobanks. The reason is due we have updated WWise to fix some memory problems that the old version had. We have also fixed the infamous shader crash, and split 2 maps in half because of memory shortage problems.
And we have finally completed Flatline! It's no longer in Beta, but that doesn't mean we are done with it. More changes and additions will be added later down the road!
More interesting things will come in the future! ːGoBoomː
The 10th Anniversary announcement will be posted later today, so expect some more news to come!
Full changelog
Added the following maps: - cf_unionstation - cf_harvest - ch_cypruspark_night - ch_harvest
Added damage masks for Riot Zombie (head only)
Added Riot Zombie helmet gibs
Added new cvar (wsnd_mute_losefocus) to utilize "audio focus" mode
Added new startup parameter (--noworkshop) to disable workshop
Added a new trigger called info_safezone
Added "DEV CONSOLE" button on the mainmenu, if Developer Console is enabled
Added the option to refuse "weapon switch" on weapon pickup with cl_equipweapononpickup set to 0
Added new entity shop_item to allow weapons to be bought from the store in Flatline Gamemode
Added new entity info_zombie_spawn to spawn specific AI zombie types at the location of choice.
Added a notification that shows up if you earn, lose, or buy something in Flatline Gamemode
Added 6 new achievements
Added the missing empty reload animations for MP5K, AR-15, AK74U, SCAR, SIG, 1911 and KG9 - We are aware of the missing sounds for empty reload, but this will be fixed right away once they get done!
Added new VScript values: - Added void ThePresident.ReadMapSavedInformation( bool bEnable ) | Enables map saved information. - Added void ThePresident.SetMapSavedInformation( string name, string variable ) | Set map saved information. - Added string ThePresident.GetMapSavedInformationValue( string name ) | Get map saved information. - Added NetPropManager | Used to get/set entity network fields
Removed difficulty health from the zombies, to remove their bullet sponge effect (headshots only).
Removed old .cache and .manifest related for sounds, since Contagion does not use Miles
Fixed game crashes regarding shaders (if set to medium or higher)
Fixed Escape gamemode softlocking due to "zombie lives"
Fixed a crash related to the phone
Fixed a crash related to weapon highlight proxy
Fixed a crash related to flatline when trying to find its way to the shop
Fixed female zombies (common) having faulty leg damage masks for ZombieTestProxy
Fixed credits not working, due to it was trying to read the wrong search path
Fixed fast download not working at all
Fixed WWise memory leakage regarding to unloading and loading of audiobanks
Fixed the phone causing a crash after changing levels
Fixed the navmesh around the statue on ce_montclair
Fixed Mia and Yumi not using the female zombie voices
Fixed Curtis, Lawrence, Manuel, Mia and Yumi having a broken damage mask
Fixed biotec_generator not having a collision mesh
Fixed fireaxe being weaker than a golfclub
Fixed melee weapons acting like foam on flesh targets (basically, use a gun instead)
Fixed “path to shop” causing a crash if it finds nothing on Flatline
Fixed Flatline gamemode crashing on the last wave
Fixed where the displacement would stick through the basement in ce_harvest
Fixed where DLC weapons did not have any physics sound
Fixed Contagion Workshop publish / edit tool not working
Fixed contagionds.exe UI not working at all, and refusing to read the VPKS
Fixed crossbow ammo not dealing any damage when shooting at the head hitbox
Fixed crossbow ammo pack not giving 6, but 24
Fixed where you could drop weapons while climbing ladders (this would make the player turn into a T-Pose)
Fixed weapon_gasmask not muffling the sound when in use
Fixed a crash bug related to NextBot AI trying to call a non existent noisemaker object if their enemy target dies from a grenade, or any explosive material
Fixed faulty animations for Jessica and Nicole
Updated WWise 2014.1.4 >> 2015.1.9
Updated WWise soundbank file structure and reduced all the audio banks file sizes - Note: Old soundbank structure for custom maps still work, so no extra changes required!
Updated "Downloading workshop add-ons..." text to also include "mounting", to tell the clients that there are workshop content currently being mounted
Updated Flatline gamemode, it’s no longer in BETA!
Updated Flatline gamemode last wave, to notify the mapper if the logic_relay "flatline_escape" is missing, and if the info_gps for the extraction zone is missing
Updated ch_unionstation - Fixed the inconsistency between flatline and hunted versions - Fixed the broken nav mesh
Updated ce_roanokepd - Fixed where key items would get stuck in the courtyard
Updated ce_montclair - *Split montclair into 2 parts (ce_montclair and ce_montclair_partb). Note: Part B is hidden from the map selection.
Updated ce_barlowesquare - *Split barlowesquare into 2 parts (ce_barlowesquare and ce_barlowesquare_02). Note: Second part is hidden from the map selection. - Updated and changed the objectives around - Updated the subway and truck escape route to be more intense
Updated ce_harvest - Fixed an exploit in the first floor of the house, in the living room, where the zombies can’t get to you.
Updated cf_montclair - Fixed an exploit near the bus, where the zombies couldn't get to you - Fixed where the boltcutters never spawned after the 2nd round
Updated Riot Zombie to support shooting their helmets off
Updated the engine to support "audio focus" mode
Updated Hammer Editor - Fixed where the “picker” wouldn’t select the brush properly - Fixed where it would sometimes fail to save, or cause the VMF to corrupt itself due to bad memory allocation - Removed where it tries to add the folder “hl2”
Updated Valve Model Viewer - Removed everything related to GoldSrc (old/unused menu tabs) - Fixed where hlmv refused to start properly - Fixed Load / Merge Steam Model not working with VPKS properly - Fixed a crash related to the “drag/rotation” helper calling an invalid object pointer - Fixed a crash related to the "Center View" if there is no model present
Updated VPK - Added “ignorelist.vdf” support - Added where it automatically ignores all .cache files
Updated the lightmapped shaders to support Parallax Corrected Cubemaps
Updated the Engine Binaries
Updated the FGDs
Updated hammer_run_launcher.exe, now you no longer need the full path for the game.
Updated trigger_escape to allow “next level” change after escape (empty by default, restarts the round)
Updated SCAR, Remington870, and M1 Garand firing sounds
Updated Create Server advanced options - Added toggle cheats - Fixed where the settings wouldn’t save properly
Updated the navigation on the following maps: - ce_harvest - ce_roanokepd - ce_biotec - ce_campwithner
Notes
*Montclair and **Barlowe has been split in ***half, due to memory problems. 32-bit software only has access to 3.5GB of memory, to save on memory, we have split the maps in half. Previously the maps took around 2.2~2.5GB which was not a great idea. Since we also use WWise, which loads the entirety of the audiobanks in 1 go, we had no more memory left when changing levels (Source Engine does not properly clean old data, known as memory, which is why around 50-200 MB may still be left on a map change).
**Extraction and Hunted versions of Barlowe Square has not been updated as of yet. Since they require some more tinkering to work right with the latest changes.
***The maps have also been connected together, which is why the trigger entity logic_safezone was created. It works similar, if not almost the same, as the safe room in L4D and L4D2. I took that idea and used it to save precious memory. Survivor items also transfer over to the new map, and this entity can be used by mappers as well to create new creative maps, or campaigns of their own.
We wanted to give a quick update! As you may have already heard, we have brought on a new programmer for Contagion! He’s currently hard at work, with a number of crucial bug fixes tackled already. We’d like to officially welcome our newest member, Johan (or as you may already know him as, JonnyBoy0719). Please give him a warm welcome! He comes to us from the Zombie Panic! Source team and he really knows his stuff.
Right now the priority are the known major bugs/crashes. After that, getting Flatline out of Beta, general clean up and optimizations of all game modes and levels are also inbound. Steam Workshop is also planned to be working again. More to come later on Contagion.
We will have a very big update coming on December 29th for our 10 year anniversary. Stay tuned!