diff options
| author | 2026-02-28 09:03:19 +0800 | |
|---|---|---|
| committer | 2026-02-28 09:03:19 +0800 | |
| commit | cc53b1cf260e1c67939e50608ef18764da616d55 (patch) | |
| tree | 119109c62331d4d26612e2df7726cee82d1871f5 /packages/docs/content/en/features/mod-loaders.mdx | |
| parent | ee37d044e473217daadd9ce26c7e2e2ad39a0490 (diff) | |
| parent | 81a62402ef6f8900ff092366121a9b7a4263ba52 (diff) | |
| download | DropOut-cc53b1cf260e1c67939e50608ef18764da616d55.tar.gz DropOut-cc53b1cf260e1c67939e50608ef18764da616d55.zip | |
Merge remote-tracking branch 'upstream/main'
Diffstat (limited to 'packages/docs/content/en/features/mod-loaders.mdx')
| -rw-r--r-- | packages/docs/content/en/features/mod-loaders.mdx | 409 |
1 files changed, 0 insertions, 409 deletions
diff --git a/packages/docs/content/en/features/mod-loaders.mdx b/packages/docs/content/en/features/mod-loaders.mdx deleted file mode 100644 index d6fdf4f..0000000 --- a/packages/docs/content/en/features/mod-loaders.mdx +++ /dev/null @@ -1,409 +0,0 @@ ---- -title: Mod Loaders -description: Fabric and Forge installation and management ---- - -# Mod Loaders - -DropOut supports the two most popular Minecraft mod loaders: Fabric and Forge. Both can be easily installed and managed directly from the launcher. - -## Fabric Support - -### Overview - -Fabric is a lightweight, modular modding toolchain focused on: -- Fast updates to new Minecraft versions -- Clean, minimal API -- Strong developer community -- Excellent performance - -### Installation - -1. Navigate to **Versions** tab -2. Click **"Install Fabric"** -3. Select Minecraft version -4. Choose Fabric loader version -5. Click **"Install"** -6. Wait for installation to complete - -### How It Works - -**Meta API Integration:** -```rust -// Fetch available Fabric versions -let url = format!( - "https://meta.fabricmc.net/v2/versions/loader/{}", - minecraft_version -); -``` - -**Profile Generation:** -1. Fetch Fabric loader metadata -2. Download Fabric libraries -3. Generate version JSON with `inheritsFrom` -4. Merge with parent Minecraft version -5. Add to versions list - -**Version Format:** -```json -{ - "id": "fabric-loader-0.15.0-1.20.4", - "inheritsFrom": "1.20.4", - "mainClass": "net.fabricmc.loader.impl.launch.knot.KnotClient", - "libraries": [...] -} -``` - -### Fabric Versions - -**Loader Versions:** -- Latest stable (recommended) -- Specific versions for compatibility -- Beta/snapshot versions - -**Game Versions:** -- All Minecraft versions from 1.14+ -- Snapshots supported -- Combat Test versions - -### Library Management - -Fabric libraries are resolved from Maven: - -**Main Library:** -``` -net.fabricmc:fabric-loader:0.15.0 -``` - -**Dependencies:** -- `net.fabricmc:tiny-mappings-parser` -- `net.fabricmc:sponge-mixin` -- `net.fabricmc:access-widener` - -**Download:** -```rust -// Maven resolution -let url = format!( - "https://maven.fabricmc.net/{}/{}", - artifact_path, filename -); -``` - -### Fabric API - -Fabric Loader ≠ Fabric API: -- **Fabric Loader**: Mod loader (installed by DropOut) -- **Fabric API**: Library mod (download separately) - -Many mods require Fabric API: -1. Download from [Modrinth](https://modrinth.com/mod/fabric-api) or [CurseForge](https://www.curseforge.com/minecraft/mc-mods/fabric-api) -2. Place in instance's `mods/` folder - -## Forge Support - -### Overview - -Forge is the original and most popular Minecraft mod loader: -- Extensive mod ecosystem -- Mature API -- Wide version support -- Large community - -### Installation - -1. Navigate to **Versions** tab -2. Click **"Install Forge"** -3. Select Minecraft version -4. Choose Forge version -5. Click **"Install"** -6. Wait for installer to run -7. Installation complete - -### How It Works - -**Forge Installer:** -```rust -// Download Forge installer -let installer_url = format!( - "https://maven.minecraftforge.net/net/minecraftforge/forge/{}/forge-{}-installer.jar", - full_version, full_version -); - -// Run installer -java -jar forge-installer.jar --installClient -``` - -**Profile Parsing:** -1. Forge installer creates version JSON -2. DropOut parses install profile -3. Extracts library dependencies -4. Processes processors (if any) -5. Generates launcher profile - -**Version Format:** -```json -{ - "id": "1.20.4-forge-49.0.26", - "inheritsFrom": "1.20.4", - "mainClass": "cpw.mods.bootstraplauncher.BootstrapLauncher", - "libraries": [...] -} -``` - -### Forge Versions - -**Release Types:** -- **Latest**: Most recent stable -- **Recommended**: Most stable for production -- **Specific**: Version-locked for compatibility - -**Minecraft Version Support:** -- Legacy versions (1.6.4+) -- Modern versions (1.13+) -- Latest versions (1.20+) - -### Library Management - -Forge has many libraries: - -**Core Libraries:** -- `net.minecraftforge:forge:<version>` -- `net.minecraftforge:fmlloader:<version>` -- `org.ow2.asm:asm:<version>` - -**Resolution:** -```rust -// Forge Maven -"https://maven.minecraftforge.net/" - -// Dependencies may use: -// - Maven Central -// - Minecraft Libraries -``` - -### Forge Processors - -Some Forge versions run "processors" during installation: -- Bytecode manipulation -- Library patching -- Mapping generation - -DropOut handles these automatically. - -## Version Inheritance - -Both Fabric and Forge use Minecraft's inheritance system: - -### Parent Version - -```json -{ - "id": "fabric-loader-0.15.0-1.20.4", - "inheritsFrom": "1.20.4" // Parent vanilla version -} -``` - -### Merging Process - -**Libraries:** -```rust -// Merged from both -parent_libraries + modded_libraries -// Duplicates removed -``` - -**Arguments:** -```rust -// Combined -parent_jvm_args + modded_jvm_args -parent_game_args + modded_game_args -``` - -**Assets:** -```rust -// Inherited from parent -assets = parent.assets -``` - -**Main Class:** -```rust -// Overridden by modded -main_class = modded.mainClass -``` - -## Comparison - -| Feature | Fabric | Forge | -|---------|--------|-------| -| **Performance** | Excellent | Good | -| **Update Speed** | Very Fast | Moderate | -| **Mod Selection** | Growing | Extensive | -| **API Simplicity** | Simple | Complex | -| **Version Support** | 1.14+ | 1.6.4+ | -| **Developer Friendly** | Very | Moderate | -| **Stability** | Excellent | Excellent | - -## Installing Mods - -### Fabric Mods - -1. Create/select instance -2. Ensure Fabric is installed -3. Download mods from: - - [Modrinth](https://modrinth.com/) - - [CurseForge](https://www.curseforge.com/) - - [GitHub Releases](https://github.com/) -4. Place `.jar` files in `instances/<name>/mods/` -5. Launch game - -**Compatibility:** -- Check Minecraft version -- Check Fabric Loader version -- Check for Fabric API requirement -- Read mod dependencies - -### Forge Mods - -1. Create/select instance -2. Ensure Forge is installed -3. Download mods from: - - [CurseForge](https://www.curseforge.com/) - - [Modrinth](https://modrinth.com/) -4. Place `.jar` files in `instances/<name>/mods/` -5. Launch game - -**Compatibility:** -- Check Minecraft version exactly -- Check Forge version range -- Read mod dependencies -- Check for conflicts - -## Troubleshooting - -### Fabric Issues - -**"Fabric Loader not found"** -- Reinstall Fabric -- Check version JSON exists -- Verify libraries downloaded - -**"Mixin apply failed"** -- Mod incompatibility -- Remove conflicting mods -- Update Fabric Loader - -**"Fabric API required"** -- Download Fabric API -- Match Minecraft version -- Place in mods folder - -### Forge Issues - -**"Forge installer failed"** -- Verify Java installation -- Check disk space -- Try older Forge version -- Check logs for details - -**"Missing dependencies"** -- Install required mods -- Check mod version compatibility -- Read error message carefully - -**"Class not found"** -- Forge version mismatch -- Reinstall Forge -- Verify libraries downloaded - -### General Mod Issues - -**Crash on Launch:** -1. Check crash report -2. Identify problematic mod -3. Remove or update mod -4. Test with minimal mods -5. Add mods back incrementally - -**Performance Problems:** -1. Too many mods installed -2. Increase memory allocation -3. Install performance mods: - - Fabric: Sodium, Lithium - - Forge: OptiFine, Magnesium -4. Remove resource-heavy mods - -## API Reference - -### Tauri Commands - -**Install Fabric:** -```typescript -await invoke('install_fabric', { - minecraftVersion: '1.20.4', - loaderVersion: '0.15.0' -}); -``` - -**Install Forge:** -```typescript -await invoke('install_forge', { - minecraftVersion: '1.20.4', - forgeVersion: '49.0.26' -}); -``` - -**List Fabric Versions:** -```typescript -const versions = await invoke('get_fabric_versions', { - minecraftVersion: '1.20.4' -}); -``` - -**List Forge Versions:** -```typescript -const versions = await invoke('get_forge_versions', { - minecraftVersion: '1.20.4' -}); -``` - -### Events - -**Installation Progress:** -```typescript -listen('mod-loader-progress', (event) => { - const { stage, percent } = event.payload; - // Stages: "downloading", "installing", "processing", "complete" -}); -``` - -## Best Practices - -### For Players - -1. **Choose one mod loader** per instance -2. **Match versions exactly** - Minecraft and loader -3. **Read mod requirements** before installing -4. **Start small** - Add mods incrementally -5. **Backup worlds** before adding mods -6. **Check compatibility** lists -7. **Update cautiously** - Test in separate instance - -### For Modpack Creators - -1. **Document versions** - MC, loader, all mods -2. **Test thoroughly** - All features -3. **List dependencies** - Including API -4. **Provide changelog** - For updates -5. **Version lock** - For stability -6. **Include configs** - Pre-configured -7. **Test updates** - Before release - -## Future Features - -- **Mod browser** - Install mods from launcher -- **Automatic updates** - Keep mods current -- **Dependency resolution** - Auto-install requirements -- **Conflict detection** - Warn about incompatibilities -- **Profile export** - Share modpack configurations -- **CurseForge integration** - Direct modpack import -- **Modrinth integration** - Mod search and install |