FKRPG/docs/perf.md
mithral bad60284d4
Some checks failed
Build & Release Pack / build (push) Failing after 1m43s
F##KRPG 1.0 — initial release
RPG modpack for Minecraft 1.21.1 (Fabric), packwiz-managed, Modrinth-sourced.

- client_pack/ (177 mods): RPG classes & combat suite (Spell Engine, Simply Swords,
  puffish skills), epic-fantasy-realism worldgen (Tectonic tuned peaks/deep oceans,
  Terralith, Wilder Wild, CTOV towns, Serene Seasons), Xaero's Minimap/World Map +
  MapLink, Distant Horizons LODs, performance stack (ChunkSmith/C2ME/Krypton).
- server_pack/ (141 mods): dedicated server set incl. BlueMap 5.7 web map (:8100),
  docker-compose deployment.
- docs/, presets/ and tools/ for validation and profile conversion.
2026-08-24 18:36:35 -04:00

41 lines
3.1 KiB
Markdown

# FKRPG Perf Stack — Fabric 1.21.1 (ChunkSmith + C2ME + Network/Culling)
Voxy **excluded** from pack (private backport distributed separately). Pack is LOD-agnostic but ChunkSmith is Voxy-aware.
## New mods (v0.1.0 → v0.2.0)
| mod | version | side | why |
|---|---|---|---|
| chunksmith | 3.4.1+1.21.1 (`4BeAEBIb/UcddkDsV`) | both | adaptive pregeneration throttle, CSLOD store, HTTP backchannel port+1, serves to Voxy/DH clients. Dedicated server always ON even without Voxy in pack. |
| c2me-fabric | 0.4.0-alpha.0.27 (`VSNURh3q/gRm1ZAvc`) | both | concurrent chunk I/O/gen, big TPS for Tectonic 1.28 expansive terrain. |
| krypton | 0.2.8 (`fQEb0iXm/Acz3ttTp`) | both | Netty flush consolidation, network tick. |
| alternate-current | mc1.21-1.9.0 (`r0v8vy1s/78P98rac`) | server | non-locational redstone, 10-20x dust lag fix. |
| moreculling | 1.0.9 (`51shyZVL/p8iK6Q7D`) | client | culls hidden faces, +5-15% FPS with Sodium+EntityCulling. |
Existing stack kept: lithium 0.15.4, modernfix 5.25.1, ferritecore 7.0.3, noisium 2.3.0, sodium 0.8.13 + sodium-extra + reeses, iris 1.8.14, entityculling 1.10.5, immediatelyfast 1.6.12.
## Configs tuned
- `client_pack/config/chunksmith.json` (copied to `server_pack`): `lodEnabled auto`, `targetTickTimeMs 45`, `maxPregenerationRate 10`, `throttleAggressiveness 0.75`, `csloDCacheSizeMB 1024`, `syncIntervalSeconds 300`, `respectServerViewDistance true`. With Voxy not in pack, `auto` = OFF on integrated server, ON on dedicated server (intended). Friends with private Voxy use `/cslod inject`.
- `client_pack/config/chunksmith-lod.properties`: `sync-interval-seconds=300`, `cache-size-mb=512`
- `config/alternate-current.conf`: `enabled true`, `nonLocational true`, `updateOrderFix true`
- `config/moreculling.toml`: `enabled true`, `cullLeaves true`, `mountainsCulling false` (Tectonic peaks)
- `server_pack/config/c2me-notes.txt`: C2ME has no file; if TPS dips during `/chunksmith pregen`, lower `maxPregenerationRate` to 6. C2ME + ChunkSmith throttle tested compatible with Noisium/FerriteCore/Lithium.
- `krypton` zero-conf.
## Voxy handling
- `voxy.pw.toml` removed from both packs (`side client` previously). Custom backport `voxy-0.2.10-custom.jar` must be installed separately by friends (private, not hosted on Modrinth). Prism: Add to `mods/` after importing `FKRPG-*.mrpack`, or host at private URL and `packwiz url add`.
- ChunkSmith still builds CSLOD on dedicated server without Voxy present; clients with Voxy fetch via backchannel `game port +1`.
## Coexistence notes
- Do **not** add `voxy-server-side` / `lod-server-support` / `voxyserver` alongside ChunkSmith — declared incompatible. Pick ChunkSmith *or* those. We picked ChunkSmith.
- `moreculling` complements `entityculling` + `sodium` — no conflict with `continuity`.
- `alternate-current` order change safe (no Create in pack).
- `krypton` safe with `packetfixer`/`modernfix` netty patches.
## Testing
- `/chunksmith pregen 128`, `/cslod status`, check `logs/latest.log` for `Chunksmith: LOD ...` and port bind on `port+1`.
- Server TPS: `spark profiler`, watch `c2me` async threads + ChunkSmith throttle.