Overview
When Shared Jumping Mode is enabled:- If any player jumps, all Soul Link players jump simultaneously
- Forced jumps only apply to players on the ground (prevents air-stacking)
- Jump velocity is synchronized across all players
- The system uses tick-end processing to prevent race conditions
How to Enable
- Run
/chaosto open the Chaos Modes GUI - Click on the Feather/Rabbit Foot icon (“Shared Jumping Mode”)
- Feather = Disabled
- Rabbit Foot = Enabled (yellow color)
- Click the emerald “Confirm” button
- Start a new run with
/start
The mode displays as “Shared Jumping Mode” with yellow/gold formatting in the GUI (SettingsGui.java:270-296).
Gameplay Impact
Movement Challenges
Dangerous Scenarios
High-Risk Situations:- Cliff edges: One player jumps, others fall off
- Lava lakes: Forced jump while crossing narrow paths
- The Nether: Jumping near ledges can be fatal
- Combat: Unexpected jumps ruin dodging attempts
- Elytra flying: Firework jumping affects all players
Strategic Opportunities
Advanced Mechanics
Tick-End Processing
The system uses deferred processing to prevent race conditions (SharedJumpHandler.java:92-154):- Jump Detection: When a player jumps naturally, they’re added to
jumpersThisTickset - Collection Phase: All jumps during the tick are collected
- Processing Phase: At tick end, forced jumps are applied to non-jumping players
- Cleanup: Tracking sets are cleared for the next tick
Ground Detection
Forced jumps are only applied if the player is on the ground (SharedJumpHandler.java:160-163):Velocity Synchronization
The forced jump applies the same mechanics as a natural jump (SharedJumpHandler.java:166-173):- Invokes
player.jump()for vanilla jump behavior - Triggers exhaustion, statistics, and jump sounds
- Sends velocity packet to client for smooth synchronization
Implementation Details
Code Reference
Jump tracking system (SharedJumpHandler.java:21-86):State Management
The handler tracks several tick counters (SharedJumpHandler.java:29-33):lastCollectedTick: Last tick where jumps were collectedlastProcessedTick: Last tick where jumps were processedprocessingJumps: Flag to prevent recursive processing
Strategy Guide
Safe Exploration
Building Adaptations
Modify your building strategy:- Make bridges 3+ blocks wide instead of 1-2
- Build walls along the sides of bridges
- Create safety platforms below dangerous areas
- Use scaffolding for vertical movement (more forgiving)
- Avoid parkour-style gaps between platforms
Combat Tactics
Fighting with Shared Jumping:- Use shields and blocking instead of dodging
- Fight in enclosed spaces (prevents fall damage)
- Coordinate who engages mobs
- One player kites while others shoot from safety
- Avoid cliff-edge combat entirely
Manhunt Mode Interaction
When combined with Manhunt Mode:- Only Runners share jump mechanics
- Hunters jump independently with vanilla mechanics
- Hunters can exploit this to force Runners into dangerous situations
- Runners must coordinate even more carefully
Related Modes
Shared Potions
Another shared mechanic modifier
Manhunt Mode
Only affects Runners, not Hunters
Synced Inventory
Shared inventory management
Known Issues
The shared jumping system handles several edge cases (SharedJumpHandler.java:65-75):- Clears tracking sets between ticks only after processing completes
- Prevents double-counting if called during processing
- Handles tick advancement edge cases gracefully
If you experience issues with double jumps or missed jumps, check the server logs for debug messages (SharedJumpHandler.java:84-86, 140-143).