MarieLib fully supports dedicated NeoForge servers. Commands register under the consuming mod's id (e.g. /nourished for Nourished).
๐ฆ Installing MarieLib on a Server
Both the consuming mod and MarieLib must be installed:
| Component | Required on |
|---|---|
| MarieLib | Server + all clients |
| Consuming mod (e.g. Nourished) | Server + all clients |
Verify matching versions of Minecraft, NeoForge, MarieLib, and the consuming mod before opening to players.
๐ Server-Authoritative Tracking
MarieLib uses a server-authoritative architecture. The server controls:
- Value levels and decay
- Tracking profiles
- Source classifications
- Datapack-loaded definitions
- Compatibility settings
Clients receive synchronized data from the server. See Multiplayer & Sync.
๐ Reloading
After datapack changes:
/<modId> reload
If only classifications changed:
/<modId> invalidatecache
may be sufficient.
๐ Module Locks
Modpack authors can lock config modules server-side:
{
"marie_schema_version": 1,
"locked": ["enableEffects", "enableDecay"],
"server_only": ["bonusEffectThreshold"]
}
Path: data/<ns>/<modId>/module_locks/<id>.json
๐ Diagnostics Workflow
When investigating issues on a live server:
- Hold the problematic item
- Run
/<modId> debug held - Review
config/<modId>/debug/trace_dump.txt - Run
/<modId> diagnosticsfor datapack validation - Check
config/<modId>/unassigned_sources.txtfor gaps
โ Recommended Workflow
- Install matching MarieLib + consuming mod versions on server and clients
- Verify datapacks load successfully
- Run
/<modId> diagnosticsafter major updates - Use classification traces when investigating food issues
- Keep compat overrides under version control
- Run
/<modId> invalidatecacheafter scanner config changes
๐ Related Pages
MarieLib ยท Shared framework for Marie mods ยท Documentation for 1.0.x
Modrinth ยท GitHub ยท Nourished Wiki ยท Report an Issue