Change log/5.11

From Sven Co-op
< Change log
Revision as of 17:53, 12 December 2020 by AdamR (talk | contribs) (Category.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

We've been very busy these past few months!

This update includes a vast number of new features, bug fixes, and map updates. Here's a rundown on the most notable new changes / features:

1 Angelscript API Update

As mentioned in several previous notifications, we had to make few changes to the SC Angelscript API as a result of some bug fixes. If your script(s) use any of the changed class members/methods, it won't work any more in this version of Sven Co-op and needs to be updated. You can find more details and a list of changes here.

We'll gladly help you, should you have trouble with the changes. You can reach us on our forums or on our Discord chat server.

2 Classic Mode Update

When enabled, Classic Mode now replaces all default models with their original low-definition 1998 release counterparts. Alien slave revival and alien grunt snark grenades are also disabled to bring the game more in-line with classic Half-Life.

Classic Mode can currently only be enabled in the Half-Life campaign, but may eventually be implemented in the other Half-Life campaign conversions in a future release.

3 New Map - WARFORTS

WARFORTS, created by Tuesday's Avenger, is now packaged with the game. The map features team PvP gameplay in which two megacorporations (the Yellow and Blue teams) send agents to capture each other's flags while defending their own bases. The first team to reach five captures is victorious. Players may choose from seven distinct classes, each with unique active or passive abilities.

In addition to the enemy flag, players can attack a number of secondary targets during play. Each base includes four destroyable structures, which will take damage only from explosives:

  • Left and right shield generators, which power the lasers that prevent enemies from scaling the side walls
  • A signal jammer, which will cause the enemy to spawn rocket and HW grunts if lost
  • A door control unit which, if destroyed, will leave the front gate open and vulnerable

Additionally, occupying the side bunker will bring its defenses and Alien Mercenary units under your team's control.

4 New Map Entities

  • Env_render_individual (point entity): Changes the visual appearance of entities for one player or a group of players.
  • Func_mirror (brush entity): Can be used to create mirrors.
  • Func_monitor (brush entity): Can be used to create display screens that render a camera view onto a surface.
  • Func_portal (brush entity): Can be used to create 3D sky boxes and portals into other rooms.

These entities are still somewhat experimental and may be subject to change in a future release. Please see this thread for more information on how to use them.

5 Survival Mode Integration

Survival mode is now natively supported by the game, rather than being loaded through Angelscript. Players can now vote to enable or disable Survival Mode from the in-game command menu on maps that support it.

We have also implemented Survival Mode in the following official maps: Black Mesa EPF, Crystal, HPlanet, Infested, Intruder, Last Stand Series, Danger of Collapse, Persia, Toonrun, and Half-Life: Uplink.

With this change, there are now a few new ways for server operators and mappers to control Survival Mode by console variables. Server operators who would like to learn more about the new server-specific CVARs for Survival Mode, please visit this thread. Level designers who would like to learn more about the new map-specific CVARs for Survival Mode, or would like to learn how to implement Survival Mode into a map, please visit this thread.

6 Trigger_Camera Upgrades

New functionality has been added to the trigger_camera entity. Please visit this thread for an explanation of new keyvalues and entity behavior. A list of changes can be found below in the changelog. See the 'Code' section, under 'Game library'.

7 Notable changes

  • Enabling 'Classic Mode' in the Half-Life Campaign now changes all models and sounds to their original 1998 release counterparts.
  • Native implementation of Survival Mode with voting and more options for server operators.
  • New point entity: env_render_individual. Changes the visual appearance of entities for one player or a group of players.
  • New experimental brush entities: func_mirror, func_monitor, and func_portal. These entities should be considered 'alpha' and are subject to change in future releases. Can be used to create mirrors, camera monitors, 3D sky boxes, and portals into other rooms.
  • New Included Map: WarForts, by Tuesday's Avenger.
  • Survival Mode has been implemented in Black Mesa EPF, Crystal, HPlanet, Infested, Intruder, Last Stand Series, Danger of Collapse, Persia, Toonrun, and Half-Life: Uplink.
  • Trigger_camera upgrades.

8 Code

8.1 Game library

  • Added 'env_render_individual' point entity. Changes the visual appearance of entities for one player or a group of players.
  • Added 'func_mirror' brush entity. Can be used to create mirrors.
  • Added 'func_monitor' brush entity. Can be used to create display screens that render a camera view onto a surface.
  • Added 'func_portal' brush entity. Can be used to create 3D sky boxes and portals into other rooms.
  • Added useType (USE_ON, USE_OFF, USE_SET, USE_TOGGLE) to func_button, func_rot_button and momentary_rot_button.
  • Added effect "EF_NODECALS". No decals will be drawn on an entity with that effect.
  • Added native console commands "toggle_classic_mode" and "toggle_survival_mode" as a replacement for AS counterparts available in some map scripts.
  • Classic Mode: All NPCs now use LD models when classic mode is enabled.
  • Classic Mode: All weapons and items now use LD models when classic mode is enabled.
  • Classic Mode: Disabled alien grunt Snark nest tossing and alien slave reviving when Classic Mode is enabled.
  • Classic Mode: Disabled the "Give a free M16 with every AR grenade if no M16 appears to exist on the map" hack when classic mode is enabled.
  • Classic Mode: Messages are printed to the chat now (instead of console history).
  • Fixed crash caused by dangling pointer in call to g_pGameRules.ShouldCollide(...) from DispatchShouldCollide(…)
  • Fixed crash caused by dangling pointer in CBabyGarg.EyeOff()
  • Fixed crash caused by dangling pointer in CBaseMonster::AdvanceRoute()
  • Fixed crash caused by dangling pointer in CBasePlayer.SelectLastItem
  • Fixed crash caused by dangling pointer in CBasePlayer.SetAnimation
  • Fixed crash caused by dangling pointer in CBasePlayer::HasNamedPlayerItem()
  • Fixed crash caused by dangling pointer in CBasePlayer::PackDeadPlayerItems()
  • Fixed crash caused by dangling pointer in CBasePlayer::SelectLastItem()
  • Fixed crash caused by dangling pointer in CBasePlayerByIndex().
  • Fixed crash caused by dangling pointer in CBasePlayerItem* m_rgpPlayerItems[MAX_ITEM_TYPES]
  • Fixed crash caused by dangling pointer in CFuncTank::TrackTarget()
  • Fixed crash caused by dangling pointer in Monster::OnDestroy()
  • Fixed crash caused by null pointer access in CanRepairRobo().
  • Fixed crash caused by null pointer access in CBaseMonster::OnDestroy().
  • Fixed crash when map changes before a vote called by trigger_vote is completed.
  • Fixed game freeze when setting FOV to '0', caused by division by zero.
  • Fixed game freeze and broken model animations caused by external model sequences being loaded from incorrect directories.
  • Fixed excessive instances of player corpses sinking into the floor, which made revival nearly impossible.
  • Fixed monsters following dead players who are in observer mode.
  • Fixed players being able to hold 'negative zero' score values, and other floating-point-related score display errors.
  • "givepoints" console command now accepts floating point values and prints the new total when used.
  • Survival Mode: Added vote to enable/disable survival mode to the command menu.
  • Survival Mode: Added custom observer message for Survival Mode.
  • Survival Mode: Checkpoints are now visible only if survival mode is enabled AND active.
  • Trigger_camera: Added "HUD: Hide flashlight", "HUD: Hide weapons" and "HUD: Hide health/battery" options.
  • Trigger_camera: Added custom mouse cursor (sprite).
  • Trigger_camera: Added flag "Ignore Hold Time" for indefinite cameras that only stop through a trigger.
  • Trigger_camera: Added max player count and target that gets triggered when a player tries to use a camera that is "full".
  • Trigger_camera: Added mouse events 'MOVED' and 'WHEELED'.
  • Trigger_camera: Added option to call an AngelScript method on mouse events.
  • Trigger_camera: Cameras now allow defining a target name that is set to players while they use the camera.
  • Trigger_camera: Cameras now can easily "take over" players from other cameras without messing each other up or creating some inconsistent state between cameras and players.
  • Trigger_camera: Cameras now can trigger targets when a player starts or stops using them (with the player as activator).
  • Trigger_camera: Disabled camera mouse input handling when user has game menu open.
  • Trigger_camera: Fixed camera bugging when many players use the same camera (especially repeatedly).
  • Trigger_camera: Fixed cursor bugs (e.g. registering a click event multiple times).
  • Trigger_camera: The last player to leave a camera will turn it off, also timers and external triggers that are not caused by a player who's currently watching, will turn it off.
  • Trigger_camera: When a player triggers a camera off, that is also in use by other players, it doesn't get turned off, instead the player is just removed (prior to this change, multi-use cameras were impossible).
  • Trigger_camera: When a player triggers a camera on, that is already in use by other players, the camera does not get reset and the player is just added.

8.2 AngelScript

  • Added delayed removal/reload for plug-ins with custom entities (to prevent error messages, crashes etc). Such plug-ins will be removed/reloaded on the next map change.
  • Changed RegisterCustomEntity() to use active module instead of map module.
  • Fixed CASItemRegistry::RegisterItem() and CEngineFuncs::LightStyle() referring to a temporary string where string that is valid for duration of the map is expected.
  • Made Entity Base Classes available from plug-ins.
  • Server plug-ins are now allowed to register custom weapons/items.
  • Tweaked/added some Plug-in Manager log messages.

8.3 Console Variables

  • New Client CVAR: cl_portal_disable_shaders - Disables the use of shaders for rendering mirrors, portals and monitors (global setting). Setting this CVAR might improve performance, but might introduce blue artefacts on mirrors and portals (usually not on monitors).
  • New Client CVAR: cl_mirror_disabled - Mirrors will not be rendered at all.
  • New Client CVAR: cl_mirror_fps - Sets maximum fps for rendering mirrors. 0 means unlimited fps (or same fps as the game). Setting this CVAR can improve performance, but will make mirrors look a bit laggy and might cause them to "jitter" and have weird artefacts on their edges when walking by them.
  • New Client CVAR: cl_mirror_halfframes - Setting this to 1 will cause mirrors to only be rendered every 2nd frame, independent of the current frame rate or fps setting. Setting this CVAR can improve performance, but will make portals look a bit laggy and might cause them to "jitter" and have weird artifacts on their edges when walking by them.
  • New Client CVAR: cl_mirror_quality - Setting this to a non-zero value will "scale" the resolution used for rendering mirrors. 1000 = 100% of your current game resolution, 500 = 50% etc. Using this CVAR can improve performance, but will make mirrors look blurry.
  • New Client CVAR: cl_monitor_disabled - Monitors will not be rendered at all.
  • New Client CVAR: cl_monitor_fps - Sets maximum fps for rendering monitors. 0 means unlimited fps (or same fps as the game). Setting this CVAR can improve performance, but will make monitors look a bit laggy.
  • New Client CVAR: cl_monitor_halfframes - Setting this to 1 will cause monitors to only be rendered every 2nd frame, independent of the current frame rate or fps setting. Setting this CVAR can improve performance, but might make monitors look a bit laggy.
  • New Client CVAR: cl_monitor_quality - Setting this to a non-zero value will "scale" the resolution used for rendering monitors. 1000 = 100% of the resolution set by the mapper for any given monitor, 500 = 50% etc. Using this CVAR can improve performance, but will make monitors look (more) blurry.
  • New Client CVAR: cl_portal_disabled - Portals will not be rendered at all.
  • New Client CVAR: cl_portal_fps - Sets maximum fps for rendering portals. 0 means unlimited fps (or same fps as the game). Setting this CVAR can improve performance, but will make portals look a bit laggy and might cause them to "jitter" and have weird artefacts on their edges when walking by them.
  • New Client CVAR: cl_portal_halfframes - Setting this to 1 will cause portals to only be rendered every 2nd frame, independent of the current frame rate or fps setting. Setting this CVAR can improve performance, but will make portals look a bit laggy and might cause them to "jitter" and have weird artefacts on their edges when walking by them.
  • New Client CVAR: cl_portal_quality - Setting this to a non-zero value will "scale" the resolution used for rendering portals. 1000 = 100% (your current game resolution), 500 = 50% etc. Setting this CVAR can improve performance, but will make portals look blurry.
  • New Map Config CVAR: mp_survival_nextmap - Specifies the next survival map in a series.
  • New Map Config CVAR: mp_survival_startdelay - Delay before survival mode starts.
  • New Map Config CVAR: mp_survival_starton - Should Survival mode auto-start after map load?
  • New Map Config CVAR: mp_survival_supported - Does the current map support Survival mode?
  • New Server CVAR: mp_survival_minplayers - Number of players needed to start Survival mode.
  • New Server CVAR: mp_survival_mode - Default Survival mode state (enabled by default - if the map supports it).
  • New Server CVAR: mp_survival_retries - Number of retries before "next map" vote starts. (-1:infinite).
  • New Server CVAR: mp_survival_voteallow - Allow Survival mode voting? (mp_voteallow is checked first).

8.4 Engine

  • Fixed a crash caused by loading sequence group files based on the file path stored in the model. Sequence group files will now be loaded from the file system with the format of "base model name" + "sequence group index" + ".mdl".
  • Fixed buffer overflow in weapon tracer effect rendering.
  • Networking: Updated the baseline transmission size for entity indexes to match the maximum entity limit.
  • Networking: Updated the sound message transmission size for entity indexes to match the maximum entity limit.
  • Networking: Updated the event message transmission size for entity indexes to match the maximum entity limit.
  • Networking: Reduced transmission size needed for entity indexes.

8.5 Non-playable characters

  • [Apache & Osprey] Apache / Osprey: Moved the stop sound out of OnDestroy() and into UpdateOnRemove() too.
  • [Barnacle] "Don't fade corpse" flag is now honoured.
  • [Barnacle] Decreased idle think delay to 0.2-0.4 seconds from 0.8-1.2 seconds, so that you can't run through their tongues so easily.
  • [Barney] Fixed incorrect cast type in dead Barney's custom model option.
  • [Gargantua & Baby Gargantua] Placed the "stop flame sound" on destroy statement into the UpdateOnRemove() method instead. Might fix a crash when removing the NPC when it uses a flame sound replacement.
  • [Gargantua & Baby Gargantua] Fixed crash due to dangling entity pointers.
  • [Tentacle] Added custom level heights (for Opposing Force). Heights are controlled by "level0height" - "level3height" key values. Half-Life values are used by default.
  • [Xen Spores] Flesh sounds are now used instead of concrete sounds when being hit by melee weapons.
  • [Xen Tree] Fixed crash when kill-targeting entity.

8.6 Weapons/Items

  • M16 and classic mode MP5 will now use both sound samples (glauncher.wav and glauncher2.wav) when grenade launcher is used.

9 Maps

9.1 Black Mesa EPF

  • Added survival mode with checkpoints.

9.2 Black Mesa: Special Tactics Sector

  • Added a trigger_push to unstuck some gibs/projectiles.
  • Added an env_explosion to the secret button.
  • Added better looking rocks and some gates to the big player vs. player arena.
  • Added env_sounds to the map.
  • Added experimental teleport effects.
  • Added new beam effects when monsters get spawned.
  • Added new lights for some machinery.
  • Added new pipes and glass floors to the toxic arena.
  • Added some water in the lambda lab arena.
  • Added windows into the facility arena.
  • Changed the bm_sts.cfg for using the main script and not only a part of it.
  • Fixed a corner in the garghunt arena, where you could get stuck and wouldn't be killed by the gargs.
  • Fixed a trigger_script that caused a random crash.
  • Fixed clip brush for red portal, no more joining a team before selecting game modes.
  • Fixed missing sound precaches.
  • Fixed some trigger_createentity entities with an invalid key value.
  • Lowered Big Momma health from 175 to 75.
  • Removed detail_textures and replaced them with the included wad.
  • Tweaked some func_illusionaries with the 'opaque' light flag for better looking effects in the water maze.
  • Tweaked the lighting a lot.
  • Tweaked the wpolys in some arenas by using more func_details.

9.3 Blue Shift Campaign

  • [BA_TRAM1, 2, 3] Adjusted the map start delay to account for late joining players.
  • [BA_TRAM1, 2, 3] Fixed trigger_setorigin so that spawn points will now correctly follow and face toward the front of the train.

9.4 Crystal

  • Added survival mode with checkpoints.
  • [Part 1] Health chargers now provide up to 50 HP.
  • [Part 1] Batteries now give you 15 AP.
  • [Part 1] Armor chargers now provide up to 25 AP.
  • [Part 2] Added 2 medkits in boss arena.
  • [Part 2] Batteries now give you 15 AP.
  • [Part 2] Fall damage has been set to deal 10 HP damage per fall.
  • [Part 2] Tor now does more damage during the boss battle.

9.5 Danger of Collapse

  • Added survival mode with checkpoints.
  • Health chargers now provide up to 60 HP.
  • Batteries now give you 15 AP.
  • Armor chargers now provide up to 50 AP.

9.6 Half-Life Campaign

  • Updated HLSP map configs for the native Survival Mode implementation.
  • [HL_C00] Fixed a bunch of track trains that were using the Source key value 'movesound' instead of Half-Life 1's 'sounds' key value.
  • [HL_C01_A1] Added a spawn point to the lower level of the elevator shaft.
  • [HL_C01_A1] Added game_player_equip for item_suit so that players will receive one on spawn after someone picks it up for the first time.
  • [HL_C01_A1] Fixed airlock door cogs overlapping with some of the brushwork.
  • [HL_C01_A1] Fixed airlock doors getting opened by concerned scientists trying to revive suiciding players.
  • [HL_C01_A1] Reduced suit respawn time to 5.0 seconds (was 30).
  • [HL_C02_A1] Added game_player_equips for the medkit and crowbar so that players will receive them on spawn after someone picks them up for the first time. Deleted the unnecessary second crowbar from the locker room.
  • [HL_C02_A1] Fixed players being able to lead Barney/Scientists into the rotating elevator shaft and crushing them.
  • [HL_C03] Added game_player_equip for the shotgun so that players will receive one on spawn after someone picks it up for the first time.
  • [HL_C03] Converted an office door brush into an actual func_door set up to seem locked.
  • [HL_C03] Fixed null brush in office door window that should have been a clip brush. Fixes vis issues when looking through the door's window from inside the office.
  • [HL_C03] Light switch in office now correctly turns the ceiling light on and off when used.
  • [HL_C04] Added game_player_equip for the M16 and 9mmAR so that players will receive them on spawn after someone picks them up for the first time.
  • [HL_C05_A2] Fixed players being able to use the scientist crawling on top of power generator, causing him to stand up.
  • [HL_C05_A2] Set all silo airlock levers to non-solid to fix players getting stuck in them.
  • [HL_C06] Added game_player_equip for the 357 so that players will receive one on spawn after someone picks it up for the first time.
  • [HL_C06] Fixed the explosive barrel models hanging around after they have already been detonated.
  • [HL_C06] Removed unused 'MoveSound' key value from track train. Set train to use Rail 7 sound.
  • [HL_C07_A1] Added a gate, fences, and an invisible wall to prevent people from rushing past the claw before it is moved off of the track.
  • [HL_C07_A1] Change level sprite/trigger is now visible when the three grunts at the end of the map are killed, instead of the previous system where the change level was triggered 5 seconds after the grunts were killed.
  • [HL_C07_A1] Moved the second spawn point from the optional train platform near the bottom of the rocket launch silo to the room with the claw blocking the track.
  • [HL_C07_A1] On the 'gruntlift' elevator that moves up simultaneously with the train elevator, fixed the grate moving past the solid part of the train if/when a grunt gets stuck.
  • [HL_C07_A1] Removed the checkpoint by the elevator doors in the optional map area, since it was pointless and off the main path.
  • [HL_C07_A1] The grunt lift now correctly aligns with the catwalk platform at the top of the shaft (instead of being sunken down and making a pit).
  • [HL_C07_A2] Added three new spawn points and rearranged the old ones to make more sense. Should now feel like there's less trudging and misery on servers where survival mode is disabled.
  • [HL_C08_A1] Fixed the Ichthyosaur that wouldn't play the 'jump attack' scripted sequence.
  • [HL_C08_A1] Fixed water that overlapped with a stair brush at the end of the map.
  • [HL_C08_A1] Moved crossbow to platform above shark cage so that it doesn't get lost underwater.
  • [HL_C08_A1] Removed unused 'dooropener' master on falling computer func_door to prevent console error message (even though it didn't cause any problems in the map).
  • [HL_C08_A2] Added weapon_crossbow to map loadout, since it's found at the end of the first map of Apprehension.
  • [HL_C08_A2] Adjusted timing of knockout/drag sequence to be less jarring to players caught in the forced respawn.
  • [HL_C08_A2] Disabled inventory carry over on the change level (since you're not supposed to have anything after the compactor anyway).
  • [HL_C08_A2] Fixed players being able to respawn with full weapon loadouts after the hallway drag cutscene.
  • [HL_C08_A2] Fixed players not getting respawned during the drag camera cutscene, which caused them to stay in observer mode and miss the cutscene entirely.
  • [HL_C08_A2] Fixed players not getting their weapons stripped during the knockout cutscene.
  • [HL_C08_A2] Fixed players respawning back at the start of the map during the knockout/drag cutscene.
  • [HL_C08_A2] Removed about half of the nodes on the map to reduce the node graph build time.
  • [HL_C09] Added game_player_equip for the 357 so that players will receive one on spawn after someone picks it up for the first time.
  • [HL_C10] Added a new spawn point when players enter the laser puzzle.
  • [HL_C10] Added game_player_equip for the crossbow and gauss so that players will receive them on spawn after someone picks them up for the first time.
  • [HL_C10] Added spawn to tripmine / alien grunt pod room.
  • [HL_C10] Made it completely impossible for people to climb on top of the alien grunt pods that emerge from the floor.
  • [HL_C10] Removed unused 'fence_zap_ms' master on trigger_once in Houndeye room to prevent console error message (even though it didn't cause any problems in the map).
  • [HL_C10] Spawn in lobby now turns back on when players successfully bring a scientist to the retinal scanner.
  • [HL_C10] The surgical device will now explode and stop working after it gets used for the first time; should stop trolls from killing everyone who walks under it.
  • [HL_C11_A2] Added game_player_equip for the RPG so that players will receive one on spawn after someone picks it up for the first time.
  • [HL_C11_A2] Added trigger_hurt to flames on destroyed RPG tank.
  • [HL_C11_A2] Adjusted ladder brushes on cliff (made them more thin) to fix 'sticky ladders'.
  • [HL_C11_A2] Fixed players being able to wedge themselves between a sandbag and the RPG tank.
  • [HL_C11_A4] Replaced missing "ambience/explosion.wav" sound file with "weapons/mortarhit.wav", which plays when the tank gets destroyed.
  • [HL_C11_A5] Added spawn point beyond the breakable wall of the repair shop where the mounted mortar is located.
  • [HL_C11_A5] Added spawn point to repair shop after bullet hole vent.
  • [HL_C11_A5] Added spawn point to top of wall that is reached by Xen jump pad.
  • [HL_C11_A5] Deleted spawn point that was in a hidden resupply room where the APC breaks through the warehouse wall.
  • [HL_C12] Added two spawn points to the sewers: one at the very start and one at the very end.
  • [HL_C13_A1] Elevator after black ops warehouse now deals 50 crush damage to prevent players jamming it.
  • [HL_C13_A1] Set all scripted_sequences for end scientist who uses retinal scanner to 'no interruptions' to fix players using him and breaking the door-opening trigger permanently.
  • [HL_C13_A1] Set crush damage on end elevator to 50 to prevent it getting stuck forever.
  • [HL_C13_A3] Set crush damage on end elevator to 50 to prevent it getting stuck forever.
  • [HL_C13_A4] Added a spawn point at start of portal puzzle, another to the room where players have to press two buttons to open the final portal, and another to the final portal exit area before the change level.
  • [HL_C14] Added a spawn point to the healing pool outside of the cave entrance so that players don't have to keep redoing the floating platform puzzle.
  • [HL_C16_A3] Added a spawn point where the xen eggs drop into turquoise liquid and another to the egg hallway that leads to the seamless teleport vent with floating sprites in it.
  • [HL_C16_A3] Fixed duplicate entity names for flashing blue effects / shakes / beamstart sounds when players run into blue force fields.
  • [HL_C16_A3] Fixed missing "beamstart13.wav" ambient_generics (sound file doesn't exist, used 11 instead).
  • [HL_C17] Fixed CD audio not playing when players spawn in front of Nihilanth.
  • [HL_C18] Removed unused 'teleport_to_end' master on trigger_teleport outside of the warp speed train to prevent console error message (even though it didn't cause any problems in the map).
  • [HL_C18] Added HLSP script to the map config to make classic mode available (because everyone loves LD Gman).
  • [HL_T00] Added a monster clip to the elevator near end of the map to prevent Barneys/scientist from leaving the area.
  • [HL_T00] Added game_player_equips for all weapons, item_suit, and item_longjump so that players will receive them on spawn after someone picks them up for the first time.
  • [HL_T00] Deleted invisible wall that blocked access to jump-down elevator after first player uses it.
  • [HL_T00] Removed spawn delay of -1 in the map configuration file for all items/weapons/ammo so that they will respawn with default delays.
  • [HL_T00] Set all weapons to respawn instantaneously.
  • [HL_T00] Set Barney's keypad animation to 'no interruptions' to prevent the script from being interrupted, which made it impossible to complete the map.
  • [HL_T00] Set item_longjump to respawn after 1.0 seconds.

9.7 Half-Life: Uplink

  • Added survival mode with checkpoints.

9.8 HPlanet

  • Added survival mode with checkpoints.
  • Health chargers now provide up to 50 HP.
  • Batteries now give you 10 AP.
  • Armor chargers now provide up to 25 AP.

9.9 Infested

  • Added survival mode with checkpoints.
  • [Part 1] Two squeak nests will now spawn in room with soda machine / Bullsquids (was previously six individual Snarks).
  • [Part 2] Fixed robo grunts attacking turrets.
  • [Part 2] Fixed gauss scientist getting stuck inside of players when he gets repeatedly used during the gauss reveal sequence.
  • [Part 2] Reduced genetically enhanced gonome's HP to 1500.
  • [Part 2] Reduced all Gonome, Voltigore, and Zombie HP.
  • [Part 2] Set Gonome capsule button to one-use only.
  • [Part 2] Reduced self destruct sequence time from five minutes to four minutes.
  • [Part 2] Added two female assassins to the train station.

9.10 Intruder

  • Added survival mode with checkpoints.
  • Added ammo in room with zombies\robo grunts: 9MM box, 2 shotgun boxes, 1 magazine for sniper rifle and 1 box for revolver.
  • Gave cutscene scientist 9999 health to prevent players interrupting scripted sequences with gauss gun and breaking map.
  • Reduced door's speed (the building leading to control panel).
  • Set outdoor spawn room door's crush damage to 20 to prevent players getting stuck between doors.

9.11 Last Stand Series

  • Added survival mode with checkpoints.
  • Set mp_npckill to 2 to prevent players killing friendly NPCs.

9.12 Opposing Force Campaign

  • Added new level change sprite.
  • Disabled mp_allowmonsterinfo for all maps to match the Half-Life campaign.
  • Updated global model replacement file and 'opfor' models folder to use 100% LD content to avoid a mixture of HD content with LD models (since some of the HD models aren't ready yet).
  • Removed the Uzi from all map configuration files.
  • [OF0A0] Fixed grunt in medic scene not getting killed instantly by the alien slave electric beam.
  • [OF0A0] Fixed grunts at crashed osprey dying too quickly.
  • [OF0A0] Fixed Tower not looking at the nearby exploding osprey.
  • [OF0A0] Removed all teleports. Replaced with spawn points and used trigger_respawn instead.
  • [OF0A0] Removed all trigger_once entities. The map will proceed automatically to each scene on its own now.
  • [OF0A0] Removed cameras from the intro. Players now spawn stuck into the seat as they would in single player. All other players are invisible/nonsolid until they spawn outside the crashed osprey.
  • [OF0A0] Removed trigger_auto at map start. Replaced with trigger_relay named game_playerspawn that deletes itself so that the map only starts when people join the game.
  • [OF1A1] Added a game_player_equip for the PCV Vest / Medkit weapon so that players will receive one on spawn after someone picks it up for the first time.
  • [OF1A1] Added a second spawn point after Otis opens the doors to the laser lab.
  • [OF1A1] Fixed two Headcrabs using incorrect animations.
  • [OF1A1] PCV Suit will now respawn after 0.25 seconds.
  • [OF1A1] Replaced Chumtoad in cage with Headcrab.
  • [OF1A1] Scientist will now wait until someone spawns in the map to perform the intro CPR sequence.
  • [OF1A1] Title and fade are now delayed until someone spawns in the map. Title appears 10 seconds after the first player spawns.
  • [OF1A3] Foolproofed the electric beam / nuclear waste scene. Players will now be forced to respawn in the room before the incident begins, and will respawn on the catwalk above once the waste reaches the floor of the first spawn. This fixes players being able to watch the scene from the hallway.
  • [OF1A3] Removed a teleport sprite/trigger that was previously added to teleport players into the room who were previously locked outside the nuclear waste scene.
  • [OF1A3] Removed excess spawn point entities at the map start.
  • [OF1A4] Removed a babygarg / zombies / alien grunt that were added to the map and were not in the original game.
  • [OF1A5] Changed maxspeed from 170 back to the default (270) in the map configuration file.
  • [OF1A5B] Removed MP5 from player weapon loadout (since it wasn't in the previous map).
  • [OF1A6] Added forced respawn after the emergency door shuts and gman closes a door in your face.
  • [OF1A6] Made the batteries in the prison room 'float' so that they don't drop through the bed frame onto the floor.
  • [OF1A6] Removed Uzi.
  • [OF1A6] Restored missing scientist prisoner scripted sequences.
  • [OF2A1B] Added forced respawn after furnace 'test fire' button is pressed. Fixes players who are farther behind others getting trapped behind a collapsing pipe.
  • [OF2A1B] Removed three extra Gonomes that weren't in the original maps.
  • [OF2A4] Newunit set to 1 in worldspawn (to reset the global entities used in the following map).
  • [OF2A5] Fixed torch grunt standing up when used instead of waiting for the medic.
  • [OF2A5] Added invisible wall to protect torch grunt from male assassins before the garage door opens.
  • [OF2A5] Reinstated the explosive rocket that ends the map when destroyed, except made it indestructible from player damage (it can only be destroyed by male assassin crossfire).
  • [OF2A5] Map will now reload if the nuke rocket is destroyed, the medic is killed, or the torch grunt is killed (and players will spawn on the surface when this happens, not at the original map start).
  • [OF3A2] Rebuilt map. Fixes crash caused by corrupt file format present in the original map from Gearbox.
  • [OF3A5] Restored the missing teleport malfunction cutscene.
  • [OF3A5] Restored the displacer teleport destination's missing death fadeout and message.
  • [OF4A2] Removed alien grunts and baby Gargantua that were not in the original map.
  • [OF4A3] Added crush damage to elevators/doors.
  • [OF4A3] Added game_player_equip for weapon_grapple so that players will receive one on spawn after someone picks it up for the first time.
  • [OF4A3] Converted a Headcrab that was once a Houndeye back into a Houndeye.
  • [OF4A3] Removed the 'shortcut' game_text and other entities that required players to reach an unnecessary position before proceeding to the change level.
  • [OF4A3] Added custom level height key values to tentacles so that they correctly detect players who are walking nearby and attack.
  • [OF4A5] Added crush damage to the elevator and all doors.
  • [OF4A5] Removed 'X players required in order to proceed' text/trigger at the end of the map.
  • [OF6A4] Added crush damage to elevator to prevent players from blocking it.

9.13 Persia

  • Added monster clip on rooftop where sneaky snipers are.
  • Added rope to first balcony.
  • Added skill file to increase player damage output.
  • Added survival mode with checkpoints.
  • All heavy weapons grunts now drop miniguns upon death.
  • Made one door breakable (near fountain).
  • Moved few sandbags so players will not become stuck between them and walls.
  • NPCs will now drop weapons on death.
  • Player medkits now heal 15 HP per use.
  • Set mp_npckill to 2 to prevent players killing friendly NPCs.

9.14 Stadium 4

  • Added desert eagle, displacer, egon, and spore launcher to weapon loadout.
  • Added 'freeze player' flag to control panel cameras.
  • Egon that spawns in the air and drops down to the center of the stadium has been replaced with a minigun.
  • HUD is now hidden when using control panel cameras.

9.15 They Hunger Series

  • HUD is now hidden during cutscenes.
  • Updated They Hunger map configs for native Survival Mode implementation.
  • [TH_EP2_02] Fixed two Zorks busting through the door in the 'reveal' room too early.
  • [TH_EP2_02] Possibly fixed the second Zork stalling the map by not following his break-in sequence and chasing after Dr. Franklin.

9.16 Toonrun Series

  • Added survival mode with checkpoints.
  • [Part 1] Added "TOUCH only" spawn flag on sniper rifle. (Fixes players circumventing the mousetrap.)

9.17 YABMA

  • Fixed some NPCs not spawning because of dead bodies blocking their spawn.

10 Models

10.1 Weapons/Items

  • [Grenade] Fixed pin floating in the middle of the screen on pin pull.

10.2 Other

  • Added LD models to be used in the Half-Life campaign when Classic Mode is enabled, located in models/hlclassic.

10.3 Other

  • Added original Half-Life sounds to be used in the Half-Life campaign when Classic Mode is enabled, located in sound/hlclassic.
  • Added Opposing Force soundtrack (to be implemented in the maps in a later release).
  • Updated Half-Life OST ID tags so that the artist is 'Kelly Bailey' and not 'Valve Software'.

11 Scripts

11.1 Server Plug-ins

  • Updated Entity Manager plug-in for 5.11 API.

11.2 Survival Mode

  • [Point_Checkpoint] Checkpoint model is precached in Precache() function along with other resources instead of Spawn() function. Checkpoint entity can be spawned on the fly now (using trigger_createentity, etc).
  • [Point_Checkpoint] Checkpoint will now create Xenmaker effect when spawned with "m_fSpawnEffect" property set to "1" (Only if the checkpoint is enabled).
  • [Point_Checkpoint] Checkpoint will trigger entity specified by "netname" property when spawned (Only if the checkpoint is enabled).
  • [Point_Checkpoint] Checkpoints spawned on-the-fly will be disabled if Survival mode is not enabled. Already activated checkpoints will not be set to visible when survival mode gets reactivated (via voting).
  • [Point_Checkpoint] Fixed teleport sound not playing when dead players are revived at the checkpoint.
  • [Survival] Survival.as script is now just a wrapper for the native implementation. Old AS CVARs are still provided to maintain basic compatibility with custom survival maps.
  • [Survival_Generic] Updated survival_generic script to use native Survival mode implementation directly.

11.3 Black Mesa: Special Tactics Sector

  • [BM_STS] Moved AmmoMod-related code to its own function.
  • [TeamSprite] Removed dummy MapInit function.

11.4 Half-Life Campaign

  • Updated scripted HLSP weapons for 5.11 API (now unused, but still included with the game).
  • [HLSP] Removed registration and mapping of AS-based classic mode weapons (MP5 and shotgun). Native support is now used instead.
  • [HLSP] Removed "toggle_classic_mode" AS command. Native counterpart is available now.
  • [HLSP] Updated HLSP script to use the native Survival mode implementation directly.
  • [HLSPClassicMode] Added "weapon_m16" to "weapon_9mmAR" item mapping for Classic Mode.
  • [HLSPClassicMode] Removed hl_c01_a1 and hl_c01_a2 from the classic mode white list (changing classic mode state on those map will lead to map restart now).
  • [Weapon_HLShotgun] Fixed idle animations not playing.

11.5 Robination

  • Updated map scripts for 5.11 API.

11.6 They Hunger

  • Updated scripted weapons for 5.11 API.
  • [TheyHunger] Updated "theyhunger.as" to use native Survival mode directly.
  • [TheyHunger] Disabled classic mode (which was never used), only item mapping is active now.

11.7 Misc

  • [Func_vehicle_custom] Updated script for 5.11 API.

12 SDK

12.1 Hammer

  • Visible object limit is now 16384.

12.2 FGD

  • Added func_mirror brush entity.
  • Added func_monitor brush entity.
  • Added func_portal brush entity.
  • Added env_render_individual point entity.
  • Added useType (USE_ON, USE_OFF, USE_SET, USE_TOGGLE) to func_button, func_rot_button, momentary_rot_button, and button_target.
  • Trigger_camera: Renamed flag "Instant Turn" to "No Instant Turn" as it did the exact opposite.
  • Trigger_camera: Added flag "Ignore Hold Time" for indefinite cameras that only stop through a trigger.
  • Trigger_camera: Added new key value "m_iszASMouseEventCallbackName" ("AS Mouse Event Callback Name") for calling an AS function on mouse events.
  • Trigger_camera: Cameras now allow defining a target name that is set to players while they use the camera.
  • Trigger_camera: Cameras now can trigger targets when a player starts or stops using them (with the player as activator).
  • Trigger_camera: Added max player count and target that gets triggered when a player tries to use a camera that is "full".
  • Trigger_camera: Added "HUD: Hide flashlight", "HUD: Hide weapons" and "HUD: Hide health/battery" options.

13 Other

13.1 Misc

  • Added Survival CVARs to the default map config.
  • Added Survival Mode voting to the command menu.
  • Install_bshift/OpFor_Support.sh - Added safeguard to prevent scripts from running outside svencoop folder.
  • Install_bshift/OpFor_Support.sh - Removed "NOT RECOMMENDED" comment warnings about installing into svencoop folder.
  • Install_bshift_Support.sh - Added a check if BShiftConverter is executable or not.
  • Install_bshift_Support.sh - Changed add-on folder option behaviour to true/false (false by default, which means it will install into "svencoop" folder instead of "svencoop__addon").
  • Install_OpFor_Support.bat & .sh - Removed of3a2 from installer map lists (since we now include a BSP file).
  • Install_OpFor_Support.sh - Updated OpFor script template to match BShift script style (paths, messages, etc).
  • Removed "sv_zmax 32768" lines from sample server configs. This causes problems with skybox on some maps.
  • Updated bshift_support.sven installer archive with the most recent .ent and other map-related files.
  • Updated opfor_support.sven installer archive with the most recent .ent and other map-related files.
  • Updated mapcycle and mapvote files.