Stability and Performance
- Killing a large number of aliens at once no longer crashes the game.
- The death animation of Shieldbugs no longer causes rare client crashes.
- Long play sessions will no longer crash due to particles array overflow.
- VScripts no longer crash server when creating a lot of entities in challenges.
- Cleaned up memory leaks.
- Improved performance by removing unnecessary calculations throughout the codebase.
- Disabled some spammy developer warnings by default.
- Improved the performance of rm_welcome_message.
- Reduce the amount of client-server network errors
Aliens
- Fixed Buzzer poison getting stuck if a player died while it was active and did not switch to another marine.
- Fixed Parasites and Xenomites being immune to blast damage when fully submerged in water.
- Fixed Drones getting stuck when dismounting info_node_climb.
- Fixed a case where Drones would navigate to the wrong location when pathfinding failed.
- Parasites should no longer appear to be growing outside of their egg or spawn at the wrong place when jumping out of an egg with unusual angles.
- Mortarbug shells no longer block moving platforms.
- Buzzers properly enter and exit the sleep state when far from players.
- Drones will no longer "warp" past marines on challenges with very high drone acceleration.
- Aliens with moveclone set do not trigger physics collision code. This improves performance on maps like Cargo Elevator that use aliens in a cinematic way.
Weapons
- Extremely short range shots will no longer cause incorrect decals or impact animations.
- X33 Damage Amplifier and IAF Heal Beacon no longer bounce in place or fall through the floor when placed on a moving platform.
- M478 Proximity Incendiary Mines no longer fall through certain types of dynamic floor.
- ML30 Laser Trip Mines no longer explode when touched by an invisible character.
- SM75 Combat Flares and TG-05 Gas Grenades no longer collide with NPC Clip.
- Fixed an issue where grenades would aim incorrectly if the marine had been hit from behind very recently.
- Fixed collision inconsistencies between mines and various types of throwables.
- The beam of the mining laser no longer gets stuck if the weapon is deleted by a script.
Misc
- Fixed doors getting stuck with negative health if they were killed from the side they were dented towards. Extremely high damage can correctly knock down a door in one hit.
- Sentry bases now use a different skin number for each type of sentry.
- Made the cheat convar asw_unlock_all_weapons available outside of debug builds.
- Added asw_create_generic_emitters_for_drone_gibs, which can be set to 0 to disable some graphics.
- r_drawsprites and r_drawropes are no longer marked as cheats.
- Added statistics support for the Football map.
- Fixed exploits involving client commands (cl_campaignsas, cl_kickvote, etc.)
- Fixed the warning message for an invalid unburrow idle activity.
- Fixed a rare case where a marine dying would not automatically spectate the next marine.
- Fixed the calculation of the fast hack time for 4-wire hacks.
- Fixed scrolling the difficulty from Insane using keyboard or a controller going to Easy rather than Brutal.
- Fixed not being able to draw on some parts of the map in the mission failed debriefing.
- Improved physics calculations when a marine is stuck on a box or near a spawning alien.
- Increased engine limit for pseudosounds, which are used for NPC AI.
- Reduced the delay when starting a mission.
- Added HUD support for having more than max HP.
Client ConVars
- rda_better_weapon_chooser
- rda_faster_radialmenu
- rda_faster_wire_hack_close
- rda_draw_scanner_rings
- asw_tree_sway_enabled
- rda_print_console_objective_completion_time
- rda_print_chat_objective_completion_time
Server ConVars
- rda_marine_backpack
- rda_marine_backpack_alt_position
- sv_clamp_unsafe_velocities
- sv_skip_velocities_warnings
- sv_draw_debug_overlays_release
- phys_applystressdamage
Server ConCommands
- rda_hide_backpack
- rda_draw_backpack
- rda_strafepush
Mapping
- Added the ability to require a held rd_weapon_generic_object to activate an trigger_asw_button_area.
- Added rd_func_jumpjet, which allows the Jump Jets and the Blink Pack to jump to a point inside the volume regardless of pathing.
- Added the ability to mark spawners and aliens to reflect grenades.
Challenge ConVars
- asw_paint_ammo_bar
- rda_grenade_launcher_grenade_ricochet
- rda_grenade_allow_electro_amped
- rda_grenade_electrostun_duration
- rda_grenade_electrostun_range_multiplier
- rda_grenade_max_ricochets
- rda_grenade_post_ricochet_velocity_multiplier
- rda_grenade_reflector_radius
- rda_grenade_search_reflectors
- rda_laser_mine_ownerless_alien_friendly
- rda_marine_allow_strafe
- rda_marine_strafe_allow_air
- rda_marine_strafe_push_hor_velocity
- rda_marine_strafe_push_vert_velocity
- rda_mortarbug_shells_by_alien_sizescale
- sv_enablebunnyhopping
- sv_autobunnyhopping
Game Events
- Added laser_mine_active (entindex, marine)
- Added cluster_grenade_create (entindex, marine, weapon)
- Modified player_dropped_weapon (userid, entindex) - added entindex.
VScript Functions
- void CBaseEntity::SetParent(handle parent) - sets an entity as another entity's move parent; faster than calling the input from VScript
- void CBaseEntity::ClearParent() - clears the entity's move parent; faster than calling the input from VScript
- handle FindNearestNPC(Vector Position, bool CheckZCoordinate, float Radius) - returns the nearest character (marine, colonist, or alien) to the given coordinate
- void CASW_Grenade_Cluster::Disable() - disables the grenade's timer
- void CASW_Grenade_Cluster::Enable() - re-enables the grenade's timer
- void CASW_Grenade_Cluster::EnableWithReset() - re-enables and resets the grenade's timer to its original duration
- void CASW_Grenade_Cluster::ReflectBack() - reflects the grenade to approximately where it was fired from
- void CASW_Grenade_Cluster::ReflectRandomly() - reflects the grenade to a random direction
The VScript functions added to CASW_Grenade_Cluster are also available as Hammer inputs.
Changed files in this update