Back to Projects
LuauPhysicsKnitRojoOpen SourceUncopylocked
Hooksystem
UNCOPYLOCKEDA physics-based grappling hook framework built in Luau for live games. Uncopylocked and open-source.
What It Is
- Grappling hook movement framework for live games—players shoot hooks from their arms and swing through the world
- Dual-hook mechanics: fire left and right hooks independently for Spider-Man–style traversal
- Physics-based swinging, reeling, boosting, and momentum—fully configurable
Controls
- Q — Fire left hook
- E — Fire right hook
- SPACE — Boost toward the anchor for extra speed
- Release — Detach and keep your momentum
Core Mechanics
- Fire hook: shoot a projectile from your arm; on hit, a rope attaches and pulls you toward the anchor
- Release: detach the hook and keep some momentum
- Reel in / out: shorten or lengthen the rope while hooked
- Swing: apply lateral force to pendulum-swing around the anchor
- Boost: spend gas for a burst of speed toward the anchor
- Jump: while hooked, jump to change trajectory (reel or boost depending on angle)
Gas System
- Hooks, boosts, and jumps consume gas
- Gas regenerates over time—no infinite spamming
- Keeps movement balanced and skill-based
Technical
- Rope or spring constraints—choose RopeConstraint or SpringConstraint for different feel
- Hooks fire as visible projectiles that raycast for hit detection
- Arm force mode: optional VectorForce on arms for more realistic pendulum physics
- Ragdoll prevention: keeps the character upright while hooked
- Configurable: max range, beam thickness, gas costs, pull forces, launch caps, and more
Live Tuning
- Node.js dev server with HTTP + WebSocket API
- Adjust pull force, speed, rope length, and dozens of parameters in a browser—no restart needed
- Velocity graph plots movement over time for debugging
For Developers
- Built with Knit (client–server framework) and Rojo
- Configure via HookConfig.luau; drop into your game and tweak
- Uncopylocked and MIT licensed—use it, remix it, or learn from it
