The collider now levitates above the ground, which makes small obstacles a non-issue. The raytest also helps the collider stick to staircases, so players don't jump off anymore.
Crouching now changes the collider to a smaller version, so now there is actual functionality to crouching.
I also removed the anchor from corpses of network players. I'm not entirely sure why this was done, but removing it doesn't seem to break anything.
- can't climb over obstacles if the contact point is above the center of the character collider
- higher "obstacle climbing velocity"
- limiting collider velocity when dragging another character
- a short "cooldown" after each footstep sound (prevents the sound playing multiple times during one footstep)
- water flow sounds are only played by one of the hulls a gap is between
- flow rate affects the range of the flow sound
- items inside the respawn shuttle
- using the teleport method when moving a character into or out from a sub
- removing dropped items from the respawn shuttle when respawning
- waypoints are created between docked subs and removed when they undock
- fixed start waypoint being left out of steering paths
- NPCs won't close doors/hatches on themselves
- NPCs won't let go of ladders until their feet are above the lower edge of the hull
- fixed FindDivingGear "loops": need to find a suit -> need to get to a suit -> need a suit to get to the suit -> need to find a suit...
- fixed characters constantly turning from side to side in small rooms
- recursive function for finding the button which opens a door (so a button doesn't have to be connected straight to a door for an NPC to be able to open it)
- AIObjectiveGetItem keeps searching for more suitable items even if a path to a matching item has been found
- repairtool fix
- submarines collide with each other
- every submarine is updated (so MainSub isn't the only one that can move)
- submarinebody vertex generation fix
- contacts between limbs and the sub are temporarily disabled before teleporting to prevent the character from "exploding"
- impact damage is disabled for 0.25 seconds after teleporting in case the character still explodes
- characters with disabled impact damage won't damage the walls when hitting
- the collider of SubmarineBody is generated based on walls instead of hulls
- fixed Submarine.CheckVisibilit ignoring fixtures with (CollisionWall | CollisionLevel) collisioncategory
- characters aren't teleported outside until they're far enough from hulls (prevents them from "jumping" outside as they're teleported partially inside the body of the sub)
- arms are mirrored/flipped when turning in water
- changes to the dying logic: characters will be unconscious when their health or oxygen goes below 0.0, and die when it drops to -100.0 (if either of the values is below zero, it will automatically decrease so the character will quickly die without medical care)
- fixed LightSprite being drawn on LightComponents even if the item is inside an inventory
- characters extend their arm more when placing signal items
- fixed server not sending kill-events when a monster dies
- some interpolation when correcting character positions
- physicsbody position lerping improvements
- sending AICharacter Dir instead of TargetDir
- Holdable items don't try to change the pose if hand anim is disabled (e.g. when dragging someone or using a railgun controller)
- Indicator which shows the position of the sub when spectating
- Bugfix in controller selection logic
- Saving attributes on separate lines in serversettings.xml
- Safer validation of received sub files