

Automatically clear trash in Schedule I to keep your dispensary clean!
A MelonLoader mod for Schedule I that automatically clears trash after you sleep and provides a hotkey for manual cleanup. Never worry about overflowing trash bins again!
NoMoreTrash automatically executes the cleartrash console command to remove all trash from your dispensary. This happens:
P)No more tedious trash management - focus on running your business while this mod keeps things tidy!
Install MelonLoader on your Schedule I installation
Download NoMoreTrash
NoMoreTrash-IL2CPP.dll for main/beta branchNoMoreTrash-Mono.dll for alternate/alternate-beta branchInstall the mod
.dll file in Schedule I/Mods/ folderConfiguration is done through MelonPreferences, located in Schedule I/UserData/MelonPreferences.cfg
| Setting | Default | Description |
|---|---|---|
Hotkey |
P |
Key to manually clear trash |
HotkeyEnabled |
true |
Enable/disable hotkey trash clearing |
SaveEventEnabled |
true |
Enable/disable automatic clearing after sleep |
Command |
cleartrash |
Console command to execute (advanced) |
Edit config file
Schedule I/UserData/MelonPreferences.cfg[NoMoreTrash] sectionHotkey = "O" for the O key)
### Available Hotkeys
You can use any Unity KeyCode value. Common examples:
- Letters: `A`, `B`, `C`, etc.
- Numbers: `1`, `2`, etc.
- Function keys: `F1`, `F2`, etc.
- Special: `Delete`, `Insert`, `Home`, `End`, etc.
[Full KeyCode list](https://docs.unity3d.com/ScriptReference/KeyCode.html)
---
## 🔧 How It Works
### Automatic Cleanup
**Primary Method (Preferred):**
- Hooks into the game's sleep/wake cycle via `TimeManager.Instance.onSleepEnd`
- When you wake up, trash is automatically cleared
- Seamless integration with game events
**Fallback Method:**
- If event hooking fails, uses a 24-minute timer (game's full day cycle interval)
- Ensures trash still gets cleared even if events aren't available
- Check console logs to see which method is active
### Manual Cleanup
Press the configured hotkey (default: `P`) anytime during gameplay to instantly clear trash.
### Cross-Backend Support
The mod uses conditional compilation to support both game backends:
- **IL2CPP** (main branch): Uses IL2CPP-compatible event handlers
- **Mono** (alternate branch): Uses native C# event handlers
Both versions function identically from the user's perspective.
---
## 🎮 Usage Guide
### First Time Setup
1. Launch the game with the mod installed
2. Check the console for: `"NoMoreTrash - Automatic trash cleanup initialized!"`
3. You'll see: `"Ready to keep things clean! Press [P] to manually clear trash."`
4. Play normally - trash will auto-clear when you sleep
### Testing the Mod
**Test manual clearing:**
1. Generate some trash in your dispensary
2. Press `P` (or your configured hotkey)
3. Console shows: `"✓ Trash cleared successfully!"`
**Test automatic clearing:**
1. Generate trash before sleeping
2. Sleep in the game
3. When you wake up, trash is automatically cleared
4. Console shows: `"✓ Trash cleared successfully!"`
---
## 🐛 Troubleshooting
### Trash isn't clearing automatically
**Check these:**
1. Look for this message on startup: `"Automatic trash cleanup enabled - clearing after sleep"`
2. Verify `SaveEventEnabled = true` in config
3. Make sure you're actually sleeping (not just waiting/skipping time)
**If you see: "cleaning every 24 minutes" instead:**
- The mod is using fallback mode (still works, just timed)
- Trash will clear every 24 in-game minutes instead of after sleep
### Hotkey doesn't work
1. Check console for: `"Ready to keep things clean! Press [X]"` - verify the key shown
2. Ensure `HotkeyEnabled = true` in config
3. Try a different key in case of conflicts with other mods
4. Make sure you're in-game (not in menus)
### Mod not loading
1. Verify MelonLoader is installed correctly (console shows MelonLoader version on startup)
2. Check you have the right version:
- **IL2CPP** build for main/beta branch
- **Mono** build for alternate/alternate-beta branch
3. Look for errors in `Schedule I/MelonLoader/Latest.log`
### Console shows errors
If you see `"Failed to clear trash:"` messages:
- Game console might not be available yet (try again in a moment)
- The `cleartrash` command might have changed in a game update
- Check `Latest.log` for detailed error information
---
## 🔄 Compatibility
### Game Versions
- ✅ IL2CPP (main branch / beta branch)
- ✅ Mono (alternate branch / alternate-beta branch)
### Other Mods
NoMoreTrash should be compatible with most other mods. It:
- Uses a simple hotkey (easily changed if conflicts occur)
- Doesn't modify game files or assets
- Only executes a console command that already exists in the game
- Properly cleans up on scene changes
**Potential Conflicts:**
- Mods that also use the `P` key (solution: change hotkey)
---
## 📊 Performance
NoMoreTrash is lightweight and has minimal performance impact:
- Event-based (no polling or constant checking)
- Executes only when needed (after sleep or hotkey press)
- Clean memory management (unsubscribes events on scene changes)
- No continuous coroutines (unless using fallback mode)
---
## 🗺️ Roadmap / Future Features
Potential enhancements for future versions:
- [ ] Custom command delays/scheduling
- [ ] Visual feedback/notifications
- [ ] Hotkey for other console commands
Feature requests are welcome! Open an issue on GitHub.
---
## 📝 Changelog
### Version 1.0.0 (Current)
- ✅ Initial release
- ✅ Automatic trash clearing after sleep
- ✅ Manual hotkey clearing
- ✅ Full configuration via MelonPreferences
- ✅ IL2CPP and Mono backend support
- ✅ Fallback timer mechanism
- ✅ Clean logging and error handling
See [CHANGELOG.md](CHANGELOG.md) for detailed version history.
---
## 💬 Support & Feedback
### Getting Help
- **Issues/Bugs**: [Open an issue](../../issues) on GitHub
- **Questions**: Ask in the [Schedule I Modding Discord](https://discord.gg/9Z5RKEYSzq)
- **Documentation**: This README and inline code comments
### Reporting Bugs
Please include:
1. Game version and branch (IL2CPP or Mono)
2. MelonLoader version
3. NoMoreTrash version
4. What you expected vs. what happened
5. Relevant console output or `Latest.log` excerpts
6. Steps to reproduce
### Feature Requests
Open an issue with the `enhancement` label and describe:
- What feature you'd like
- Why it would be useful
- How you imagine it working
---
## 👨💻 For Developers
### Building from Source
**Requirements:**
- .NET SDK 6.0 or newer
- Visual Studio, Rider, or VS Code
- Schedule I game installation (both branches for full testing)
**Build Steps:**
```bash
# Clone the repository
git clone <repository-url>
cd NoMoreTrash
# Build IL2CPP version
dotnet build -c "Debug IL2CPP"
# Build Mono version
dotnet build -c "Debug Mono"
Project Structure:
NoMoreTrash/
├── MainMod.cs # Main mod logic
├── Helpers/
│ ├── ModLogger.cs # Centralized logging
│ └── Utils.cs # Utility methods
├── vision.md # Technical design document
└── README.md # This file
The mod uses:
#if MONO/#else separation for backendsTimeManager.Instance.onSleepEndSee vision.md for detailed technical documentation.
This mod is released under MIT License (or your chosen license).
Feel free to modify, redistribute, or use as reference for your own mods!
Created by: SirTidez
Built with:
Special Thanks:
Tired of trash piling up? Let NoMoreTrash handle it automatically. Focus on what matters - running your dispensary!
Download now and never worry about trash again! ✨
Made with ❤️ for the Schedule I community