- Added CS:S viewmodel chirality, meaning weapons can be mirrored with the cl_righthand cvar (contributed by 1upD)
- Added "Fixed constraints" spawnflag to prop_ragdoll
- Fixed func_rotating angles fix not working
- Fixed host_timescale scaling sounds when cheats are off
- Fixed a npc_zombie crash caused by inflictor-less crush damage
- Added citizen heal animation to metrocops/soldiers
- Added soldier EP1 rappel animations to citizens/metrocops
- Added logic_script_client, an entity which could run VScripts on the client
- Expanded CNetMsgScriptHelper to support fully custom network communication (contributed by samisalreadytaken)
- Added save/restore to client-side VScript
- Fixed crash from reloading a save from a previous session of the game (contributed by reductor)
- Reworked VScript save/restore cache to fix various related issues (contributed by reductor)
- Fixed player instance not working in client-side VScript (contributed by samisalreadytaken)
- Exposed client-side ragdoll class and functions to VScript, allowing control over client-side ragdolls
- Added debugoverlay to the client (contributed by samisalreadytaken)
- Added a bunch of client-side VScript functions to C_BaseEntity and C_BaseAnimating
- Added OnServerRagdoll hook for VScript
- Exposed full context-based thinking to VScript (contributed by samisalreadytaken)
- Added display-related functions for client-side VScript (contributed by samisalreadytaken)
- Added hash maps for save/restore tables and event listeners (contributed by samisalreadytaken)
- Moved VScript documentation to its own namespace (contributed by samisalreadytaken)
- Made instance name fixup stop fixing up names starting with '!', which was causing problems with procedurals like !activator (reported by 1upD)
With more time, this update might've been larger, but it's being pushed now in order to fix a critical VScript save/load crash discovered last weekend.
This update introduces a bunch of changes to client-side VScript which make it viable for usage in maps.
- A new logic_script_client entity will allow VScript users to run client-side script files in the same way as `logic_script`.
- The newly updated CNetMsgScriptHelper will allow VScript users to send virtually any information in between the client and the server.
- Just like regular VScript, the client-side VScript state will now be saved when the player saves the game and restore itself when the player loads a save.
- Client-side VScript will have a bunch of new functions allowing for the creation of certain client-side entities and more interaction with them.
There are plans to expand this in MP, which is likely to give it several more uses since it can change on a player-by-player basis.
This update also adds Counter-Strike: Source's "viewmodel flipping" system via some deactivated code in the SDK. This means weapons can be flipped with the cl_righthand cvar or with certain keyvalues in the weapon script. (It won't always look good with HL2's original weapons however)
Here's what a weapon looks like in regular, un-flipped "right-handed" mode:
Here's what that same weapon looks like when flipped in "left-handed" mode:
If you find any issues with this update, please report them here, on the Discord server, or on the repo's "Issues" page.