Some mods target the Mono version of the game, which is available by opting into the Steam beta branch "alternate"
BunnyHopper
A MelonLoader mod for Schedule I that enables "true" auto-jumping/bunny-hopping.
| Date uploaded | a year ago |
| Version | 1.0.0 |
| Download link | Roachified-BunnyHopper-1.0.0.zip |
| Downloads | 275 |
| Dependency string | Roachified-BunnyHopper-1.0.0 |
This mod requires the following mods to function
LavaGang-MelonLoader
The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono
Preferred version: 0.7.0README
![]()
Tired of your thumbs getting a workout just to maintain momentum in Schedule I? Well, fret no more!
Introducing Bunny Hopper, the mod born out of a deep and slightly amused observation of the limitations of previous auto-jump attempts.
Inspired (and perhaps a little exasperated) by the noble but ultimately flawed efforts of others (I'm talking about you, Robert), Bunny Hopper aims to provide a seamless and enjoyable bunny hopping experience in Schedule I. No more accidental stops, no more missed jumps, and crucially, NO MORE ACCIDENTAL JUMPS! Just smooth, continuous movement that'll make you the envy of every farmer and factory worker.
Features
- Effortless True Auto-Jumping: Once enabled, Bunny Hopper will automatically trigger a jump the moment you land, allowing you to maintain speed and traverse the world with newfound agility.
- Reliable Ground Detection: The mod uses a robust method to detect when the player lands, ensuring that jumps are only triggered when truly appropriate.
- Smooth Experience: Designed to work seamlessly with the game's physics, Bunny Hopper provides a fluid and responsive jumping experience without any hiccups or interruptions.
- Bi-Flavored: Available in both Il2Cpp and Mono versions, so you can choose the one that suits your game setup.
- Configurable Settings: Easily toggle the mod on or off and adjust the auto-jump liftoff timeout through MelonLoader's preferences system, allowing you to customize your experience to your liking.
How It Works
This mod patches into the player's movement logic. When enabled and the jump key is held:
- It detects when the player lands.
- It automatically triggers another jump.
- A small timeout (
AutoJumpLiftoffTimeoutMilliseconds) ensures the game registers the liftoff before attempting another jump, making it feel smooth and reliable.
Installation
- Ensure you have MelonLoader installed for Schedule I.
- Download the appropriate mod flavor from the latest Releases page.
- If your game is the IL2CPP (default) version, download
BunnyHopper.Il2Cpp.dll. - If your game is the Mono (alternate) version, download
BunnyHopper.Mono.dll.
- If your game is the IL2CPP (default) version, download
- Place the downloaded
*.dllfile into theModsfolder within your Schedule I game directory. - Launch the game!
Configuration
You can configure Bunny Hopper through MelonLoader's preferences system. The settings are located in UserData/MelonPreferences.cfg (under the [BunnyHopper_Settings] category) or can be adjusted using a UI mod that supports MelonPreferences.
Enabled(Default:true)- Set to
trueto enable bunny hopping,falseto disable.
- Set to
AutoJumpLiftoffTimeout(Default:75, Min:55, Max:110)- The duration in milliseconds the mod awaits an auto-jump liftoff confirmation before considering the action potentially failed or suppressed. This is already set to a reasonable value, as the game takes about 50ms to register a jump. Only adjust this if you experience issues with the timing of your jumps, which is extremely unlikely.
What's Next?
- [ ] Investigate and implement skateboard hopping mechanics for enhanced movement speed.
- [ ] (VERY BIG MAYBE!) Explore advanced obstacle interaction: Calculate optimal jump timing (based on player speed and direction) to perfectly land on tracked obstacles and chain jumps more fluidly.
Contributing
If you have suggestions, bug reports, or witty remarks about previous auto-jump attempts, feel free to open an issue on the project's repository!
Building from Source
If you'd like to build the mod yourself or contribute to its development, here's what you need to know:
- Prerequisites:
- .NET SDK: Ensure you have the .NET SDK installed. The project uses .NET 6.0 for Il2Cpp builds and .NET Framework 4.7.2 for Mono builds.
- Game Directory Setup:
- This project requires an environment variable named
ScheduleOneGameDirto be set. This variable must point to the root directory of your Schedule I game installation (e.g.,C:\Program Files (x86)\Steam\steamapps\common\Schedule I). - The build process uses this path to locate necessary game assemblies and to copy the built mod DLLs directly into your game's
Modsfolder.
- This project requires an environment variable named
- Build Configurations:
- The project supports multiple build configurations:
Debug_Il2Cpp/Release_Il2Cpp: For the standard Il2Cpp version of the game. Debug includes debugging symbols.Debug_Mono/Release_Mono: For the alternate Mono version of the game. Debug includes debugging symbols.
- You can select the desired configuration when building via the command line or your IDE.
- The project supports multiple build configurations:
- Building the Mod:
-
Using an IDE (e.g., Visual Studio, JetBrains Rider): Open the
BunnyHopper.slnsolution file and build the project, selecting your desired configuration. -
Using the .NET CLI: Navigate to the project's root directory in your terminal and use the
dotnet buildcommand. For example, to build the Il2Cpp Release version:dotnet build -c Release_Il2Cpp -
VS Code Users: The repository includes a
.vscode/tasks.jsonfile which defines build tasks for all configurations. You can run these tasks directly from VS Code (e.g., by pressingCtrl+Shift+Band selecting a build task).
-
- Output:
- The compiled mod (
.dllfile) will be placed in the appropriatebin\[Configuration]\[TargetFramework]subfolder within the project directory (e.g.,bin\Release_Il2Cpp\net6.0). - The build process will also automatically copy the compiled mod to the
Modsfolder in your Schedule I game directory.
- The compiled mod (
Credits
- Roach_ (Adrian Nicolae): Developer and maintainer of Bunny Hopper.
- miapuffia (Robert D. Rioja): For being the inspiration behind this mod, proving that sometimes, you just have to do it yourself. All kidding aside, your work on auto-jumping was a great starting point and a learning experience, and I am thankful for your work and contributions to the modding community.
- MelonLoader Team: For providing the framework that makes modding Schedule I possible.
- Tyler's Video Game Studio: For creating such an engaging game (that sparked the need for this mod).
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
Happy Hopping! 🐰
CHANGELOG
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.1.1 - 2026-01-09
Added
- Debug-only
PlayerMovementinstance logging to help diagnose unexpected multiple-instance scenarios. - Per-instance, per-frame guard in the
PlayerMovement.Movepostfix to avoid duplicate landing handling.
Changed
- Jump-state access now reflects
IsJumping/CanJump(or their fields) for compatibility across IL2CPP and Mono.
Fixed
- Resolved IL2CPP crashes from missing
canJump/IsJumpingmembers and restored reliable auto-jump behavior.
1.1.0 - 2025-05-28
Added
AssemblyMetadata("NexusModID", "1033")for compatibility with "Updates Checker for Schedule I" mod.
Changed
- Optimized reflection calls in
PlayerMovementMovePatchusing pre-compiled delegates for improved performance. - Refactored
ShouldAutoJumpfor improved clarity, performance, and to use inverted conditions for early exit. - Updated
OnSceneWasLoadedto triggerDetectJumpActionon "Menu" scene load instead of "Main". - Modified
DetectJumpActionto find UI elements starting fromGameObject.Find("MainMenu"). - Simplified jump state management by replacing
playerJumpStatesdictionary with a singlecurrentPlayerJumpStatedue toPlayerMovementbeing a Singleton. - Converted
ShouldSkipPatchmethod to use C# expression-bodied member syntax. - Used string interpolation for formatting patched method names in log messages.
- Removed redundant null check in
MonitorLiftoffcoroutine. - Standardized logger usage to
Melon<Main>.LoggerwithinPlayerMovementMovePatch.
Fixed
- Correctly defined
DEBUGandRELEASEpreprocessor constants using<DefineConstants>for conditional compilation, ensuring debug logs are only active in Debug builds.
Build
- Added a PostBuild target to attempt termination of "Schedule I.exe" process using
taskkillbefore copying mod files.
1.0.0 - 2025-05-25
Added
- Initial implementation of the auto-bunny hopping feature.
- Automatic jump execution upon landing while the jump key is held.
- Ground detection logic to ensure jumps trigger appropriately.
- Support for both IL2CPP and Mono versions of the game.
- MelonLoader preferences for enabling/disabling the mod and configuring the auto-jump liftoff timeout.