Full notes
Full BROKE PROTOCOL update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Server
- Balance
- UI and audio
- Gameplay
- Fixes
The Physics Update Release
The dubious physics in Broke Protocol has needed some love for quite a while, and now while Unity is updating its core physics API, I thought it’d be a good time to overhaul BP’s physics implementation as well. Everything from ragdolls, to gun handling, and even water buoyancy has been adjusted and tweaked for more predictable and better quality reactivity. There are some other important details to get into so let’s cover those too:
Unified Physics Overhaul
Until now, BP’s physics had been segmented among classes with different handling and reactions. Client-side destructibles lacked buoyancy, only entities were reactive to explosions, and drag was applied differently depending on type of object. But now, physics reactions are unified and handled the same across all classes of objects. Explosions, buoyancy, and drag is applied consistently and predictably across the board so players can plan and react better to any kind of explosive scenario.
Dismemberment and Ragdolls
I didn’t want to get too gory on this next feature, but I feel like it’s a requirement for all the War Modding that’s been developing lately (mostly by DwightSchrute and the talented WarForce team). Player models now have limb dismemberment after death. Body parts also have proper reactions as part of the unified physics system. Additionally, all entities can now continue to take damage after ‘death’ which for players results in additional dismemberment. And for vehicles, it can result in quicker or instantaneous explosions similar to the GTA series.
Weapon Updates
Weapons also receive a big overhaul in both modding and mechanics. Recoil is much better animated with a more standard re-centering pattern seen in traditional shooters like Counter-Strike, Rainbow Six, and others. Equipables can also have their Attach Bone property modded. This is used for Muzzle restraints on animals now but can be repurposed for all kinds of modding ideas. The EquipablePoser in BPResources will, as always, help placement for this.
UI Elements Modding
UI has seen major updates and fixes, especially for mobile and interactivity. UIs are no longer set active by default. Modders must call the new SvPlayer.VisualTreeAssetClone() with the UI top level element name to produce a UI and SvPlayer.VisualElementRemove() to remove part of the subtree. Note that any time a UI is cloned, all button clicked events must be re-established. So it might be more beneficial to hide/show complex UIs rather that Removing and Cloning each time from scratch. Layer and input fixes across PC and mobile have been added as well. Rockford is making beautiful interfaces with this for their relaunch soon, so keep an eye out.
Interior Cloning and Other Improvements
Tons of other fixes in the changelog below have been added, I’m especially thankful to TheUnishark for some of these improvements. A major update for interiors is the return of Cloning and Destroying entire interiors. Apartments now use dynamic interiors, and this will also be useful for missions in the future but it’s fully accessible in the SceneManager class for modding in the current API. PointLife might use this system again for their very cool Ganghouses implementation.
Here’s the full Physics Update changelog:
v1.39 Physics Update Changelog
Game Changes:
Interiors can be cloned and destroyed dynamically
New ragdoll dismemberment and physics
Gun mechanics and handling overhaul
Unified buoyancy, drag, and explosion physics for ragdolls destructibles, and entities
Allow negative health for extra entity destruction effects
Fixed MGFixed low firerate
Jump velocity is now moddable
Attach bone on Equipable items is now moddable
Moved credential checks to purely serverside (GameSource)
Player mantling physics fix
Footstep audio is synced to animation rates now
Cleaner InWater and Ground properties to replace Grounded property
Fixed embarking players into single seat furniture
Allow random spawns to be knocked out
Fixed some wheel physics sleep logic
Save entities CustomData in apartments (Thanks TheUnishark)
Improved godmode (Thanks TheUnishark)
Sprint is now toggled as long as an input button is held
Cleaned up Humanoid and Mob fbx files with cleaner animations and mesh fixes
Wait until grounded again before recovering from KnockedDown state
Many UI blocking/layer fixes for custom UIs on mobile and PC
Clone/Destroy Visual element nodes from UI API
Add account delete option from Register Menu
Rebuild vanilla BPA’s with latest updates
Can play destroy effect on any entity now
Added particle trails to Flare effects
Improved AI passenger behavior
Update to Unity 2023.3.0a18
API Changes:
Unity physics naming changes with related to velocity and drag (angular and linear)
ShEntity.Grounded replaced with InWater and Ground Properties
SceneManager.Instance.ClonePlace()
SceneManager.Instance.DestroyPlace()
SvPlayer.VisualTreeAssetClone()
SvPlayer.VisualElementRemove()
See you!
-Benz
Source
Changelog.gg summarizes and formats this update. How we read updates.
