I worked on this project during my time at Rad Forge. I was on the project for about 2 years taking the game from pre-production through to our first release during Steam Next Fest. My main role was to implement all the networking features for this project as well as implement the major player controller elements and gameplay features
We used Unity's Network for GameObjects package to facilitate the networking layer for this project. Out the box it doesn't have the best support for the massive physics driven world that was planned for this project. To support the synchronization of 100's of physics object I wrote my own transport layer using Jobs to package position & physics data with prediction and interpolation.
Buds was inspired by popular games like Gang Beast and Humans Fall Flat. To get bud working and give the players the level of control the team wanted I had to develop the systems to control the active ragdoll that was Bud. It was a unique challenge that didn't have any experience with prior but during the process learned a lot about Character Joints and Blending Physics with Animations and IK
Underneath the crazy active ragdoll we needed a controller system that was reliable and predicable. On many an occasion if we let the physics system do whatever it wanted bud would fly all over the place or not land where you expect when trying to platform. Ideally what we needed was a platformer style controller. So thats what I built. It gave us the control and reliability over the player movements while letting the active ragdoll be as floppy as it needed to and I could blend between a tight platformer controller or let physics take over when needed.
How was bud supposed to travel the depth and breadth of the world? On foot? Nahh! Cars! Keeping in touch with the entire aesthetic of the game I built a fully physics driven vehicle system (that was networked of course). Each vehicle had adjustable suspension and handling settings that were controlled via Scriptable Objects. It allowed 1 system to be able to create slow, torqueie tractors or fast and nibble quad bikes.