All checks were successful
Build & Release Pack / build (push) Successful in 1m39s
Add drop-in performance presets tuned for three hardware tiers. Tier targets: - Low: 4GB VRAM/iGPU, 8-16GB RAM - Medium: RX 580-class 8GB, 16-32GB RAM (shipped as pack default) - High: RTX 3060+ 8GB+, 32GB+ RAM Client configs (per tier, presets/<tier>/config/): - sodium-options.json: chunk threads, cpu render-ahead, quality - iris.properties: shaders on/off, max shadow render distance - lambdynlights.toml: dynamic lighting mode + adaptive ticking - entityculling.json: culling tracing distance - cullleaves.json: leaf culling - soundphysics.properties: reverb/ray budget (CPU cost) - flywheel-client.toml: Create backend (BATCHING vs INSTANCING) Server configs (per tier, presets/<tier>/server/): - server.properties: view-distance, sim-distance, players, compression - jvm-flags.txt: heap + G1 GC flags per RAM tier Medium configs also copied to client_pack/config/ so they ship as the mrpack defaults (bundled into overrides/config/). Docs: docs/performance.md + docs/server.md rewritten for three tiers; presets/README.md explains how to apply each tier. Default (Medium) enables shaders with INSTANCING flywheel on the 8GB GPU tier; Low disables shaders + uses BATCHING for maximum FPS on weak GPUs.
2.6 KiB
2.6 KiB
Server — Properties, JVM, Operations
Three server tiers are provided as drop-in presets in presets/<tier>/server/
(see presets/README.md). The Medium tier is the recommended default.
| Tier | Host RAM | view-distance | simulation-distance | max-players |
|---|---|---|---|---|
| Low | 8-16 GB | 5 | 4 | 8 |
| Medium | 16-32 GB | 8 | 6 | 8 |
| High | 32 GB+ | 12 | 10 | 16 |
Apply a tier (after packwiz install):
cp presets/medium/server/server.properties server_pack/server.properties
# then use the matching jvm-flags.txt when launching
server_pack/eula.txt → eula=true (after review).
Recommended JVM Flags (server, Medium)
java -Xms4G -Xmx8G \
-XX:+UseG1GC \
-XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 \
-XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC \
-XX:+AlwaysPreTouch \
-XX:G1NewSizePercent=30 \
-XX:G1MaxNewSizePercent=40 \
-XX:G1HeapRegionSize=8M \
-XX:G1ReservePercent=20 \
-XX:G1HeapWastePercent=5 \
-XX:G1MixedGCCountTarget=4 \
-XX:InitiatingHeapOccupancyPercent=15 \
-XX:G1MixedGCLiveThresholdPercent=90 \
-XX:G1RSetUpdatingPauseTimePercent=5 \
-Dlog4j2.formatMsgNoLookups=true \
-jar neoforge-21.1.248-server.jar nogui
Notes:
- G1 tuning keeps large-tech-server TPS stable under chunk gen (Krypton Reno + BadOptimizations help server-side).
-Xms4Gavoids early GC churn. Cap at 8G for Medium; this pack is RAM-hungry from AE2/Mekanism tick load but Medium does not need 16G.- See
presets/low/server/jvm-flags.txt(2-4G) andpresets/high/server/jvm-flags.txt(8-16G) for the other tiers.
Server start order
packwiz install --dir server_pack(first time / after changes)- Accept EULA.
- Launch with the JVM flags above.
Common failures
| Symptom | Fix |
|---|---|
| "Mismatched mods" on client join | Run packwiz refresh both packs, redeploy. |
| Sinytra connector errors | Update Sinytra Connector + Forgified Fabric API together. |
| Iris black screen | Disable flywheel compat first, then test without shaders. |
| Crash on world gen (Deeper and Darker) | Ensure CF 659011 + its lithostitched data load; update both. |
| TPS lag from many AE2 cells | Check FTB chunk claims; lower simulation-distance. |
| Immersive Portals won't load | Must be the Fabric jar added via url add --force (Modrinth blocks loader mismatch). |
Backups
- World: copy
server_pack/world/(or use FTB Chunks backups). - Configs:
server_pack/config/mirrors client defaults; keep both in sync when changing KubeJS scripts or FTB settings.