Overview
I’ve built a production-ready soft-body physics system for Roblox focused on a deformable spherical player character (slime/ball).
This is not a visual trick or joint-based approximation, it’s a real vertex-level soft-body simulation with deterministic behavior and multiplayer support.
The system is currently used in an obby-style prototype.
Core Features
Soft-Body Physics
- True soft-body simulation using vertex-level physics
- Stable under high speeds, slopes, jumps, and collisions
- Deterministic behavior suitable for competitive gameplay
- Supports squash, stretch, compression, and rebound
EditableMesh Rendering
- Procedural EditableMesh generated from an icosphere
- Real-time vertex deformation driven by physics state
- Ground-normal–aligned squash (not world-axis based)
- Zero joint spam, zero Motor6D usage
Multiplayer Support
- Client-authoritative simulation with server relay
- Snapshot-based vertex replication
- Smooth interpolation for remote players
- Bandwidth-safe with rate limiting and validation
Movement & Gameplay Layer
- Physics-driven movement (no humanoid)
- Jump charge system with physical compression
- Slope handling, traction tuning, step assist
- Fully compatible with obby components (spinners, kill bricks, pendulums)
Systems Architecture
- Clean separation between:
- Physics (SoftBodySim)
- Movement logic
- Rendering
- Networking
- Modular and extensible
- Easy to plug into existing games
Performance
- Designed for live games, not tech demos
- Runs smoothly on desktop and mobile
- No per-part physics spam
- No constraints, welds, or character rigs
Customisation
The system supports:
- Different “softness” levels (more solid → more slime)
- Adjustable friction, damping, elasticity
- Visual-only deformation tuning
- Easy attachment points for VFX (auras, trails, particles)
Use Cases
- Obby games with unique movement
- Physics-based platformers
- Experimental avatars
- Sandbox or toy-style games
- Any game where movement feel matters more than animation
If you’re interested or have technical questions, feel free to reply or DM.
I’m happy to explain design decisions, limitations, and integration details.
