Overview
Mods in LiquidLauncher come from two sources:Loader Mods
Mods provided by the LiquidBounce API for specific versions
Custom Mods
JAR files you install manually from your local system
Fetching Available Mods
Request mods compatible with a specific Minecraft version and subsystem:The Minecraft version (e.g., “1.20.1”, “1.19.4”)
The mod loader subsystem (e.g., “fabric”, “forge”)
The launcher uses exponential backoff retry logic to handle temporary network failures when fetching mods.
Custom Mod Management
Custom mods are stored per branch and Minecraft version in:Getting Custom Mods
Retrieve all custom mods for a specific branch and version:Mod Structure
Each custom mod is represented as aLoaderMod:
The mod name (extracted from filename without .jar extension)
Whether the mod is currently enabled
Custom mods are never required (only API mods can be required)
ModSource::Local { file_name } for custom modsInstalling Custom Mods
Installation Process
- Directory Creation: If the target directory doesn’t exist, it’s created automatically
- File Copy: The JAR file is copied (not moved) to preserve the original
- Validation: The file must have a valid filename to be copied
Deleting Custom Mods
Remove a custom mod from a specific branch and version:The branch name where the mod is installed
The Minecraft version where the mod is installed
The mod filename (including .jar extension)
Deleting a mod is safe and can be undone by reinstalling the mod file.
Mod Configuration
Mod states (enabled/disabled) are stored in the launcher options:Mod State Management
- Loader Mods: State stored in
mod_statesHashMap - Custom Mods: State stored in
custom_mod_statesHashMap - Per-Branch: Each branch maintains its own mod configuration
How mod states are persisted
How mod states are persisted
Mod states are saved in the launcher’s
options.json file:Mod Loading During Launch
Mods are passed to the game client during launch:- Enabled Loader Mods: Fetched from API and filtered by enabled state
- Enabled Custom Mods: Local JAR files that are marked as enabled
Best Practices
Organizing Custom Mods
Organizing Custom Mods
- Use descriptive filenames for easy identification
- Keep backups of your custom mods
- Test mods individually before combining multiple mods
- Note which Minecraft version each mod is compatible with
Mod Compatibility
Mod Compatibility
- Always check mod compatibility with your Minecraft version
- Some mods may conflict with each other
- Loader mods from the API are tested for compatibility
- Custom mods are your responsibility to verify
Performance Considerations
Performance Considerations
- More mods = longer loading times
- Some mods may require additional memory
- Disable unused mods to improve performance
- Monitor game performance after adding new mods
Mod Storage Locations
Different types of data are stored in specific locations:| Data Type | Location |
|---|---|
| Custom Mods | {data_dir}/custom_mods/{branch}-{mc_version}/ |
| Mod Cache | {data_dir}/mod_cache/ |
| Mod States | {config_dir}/options.json |
You can change the data directory in Settings by setting a custom data path.
Troubleshooting
Mod not appearing in list
Mod not appearing in list
- Ensure the file has a
.jarextension - Check that the mod is in the correct branch/version directory
- Verify the file wasn’t corrupted during copy
- Refresh the mods list in the launcher
Failed to install custom mod
Failed to install custom mod
Common causes:
- Invalid file path
- Insufficient disk space
- File permission issues
- File is locked by another process
Game crashes with mods enabled
Game crashes with mods enabled
- Disable all mods and enable them one by one
- Check mod compatibility with Minecraft version
- Look for conflicting mods
- Check the game logs for error messages
Unable to delete custom mod
Unable to delete custom mod
- Ensure the game is not running
- Check file permissions
- Verify the mod filename is correct
- Manually delete from the file system if needed
Example: Full Mod Workflow
Here’s a complete example of managing mods:Next Steps
Launching Games
Learn how mods are loaded during game launch
Settings
Configure data directories and other options