Fister Community Server

Quick start:
1. Install Node.js 22 LTS (20.19+ is the minimum). The launcher checks this before changing anything.
2. Extract the ZIP and open a terminal in the fister-community-server folder.
3. Run terminal setup: node bin/fister-server.js --setup
4. Choose stable public access if you want the server listed in Community Servers. Local mode is LAN/manual testing only and will not appear in the browser.
5. If you skipped public setup or chose local mode, link later with: node bin/fister-server.js --link-tunnel
6. Install 24/7 startup/restart support with: node bin/fister-server.js --install-service
7. Start manually with: node bin/fister-server.js
8. Edit server.config.json any time you want to change gameplay rules, maps, or mods, then run --reload.
Rewards: completed rounds of six minutes (360 seconds) or longer can award normal XP and Tokens, including custom rules and mods. Shorter rounds have rewards disabled; normal player participation requirements still apply.
Setup installs dependencies, applies safe npm audit fixes, and verifies the production audit.
Setup defaults to official cosmetics, asset fallback, and admin/mod permission roles. Choose custom in setup if you run your own catalog, assets, roles, and identity-token issuer.
Read OPEN-SOURCE-NOTES.md for the exact package contents and normal outbound requests.
The community server browser only lists servers with a reachable public join socket.
Verified automatic updates are enabled by default. The launcher checks at startup and while running, installs new packages, keeps your .env, server.config.json, and mods in place, and restarts the runtime.
Set FISTER_AUTO_UPDATE=false to disable live polling only, or FISTER_DISABLE_AUTO_UPDATE=true to disable all update checks.

Useful flags:
--setup: asks questions and creates your server settings.
--link-tunnel: links a stable public server address, then exits.
--init: creates starter config files only.
--update: checks for and installs a newer server package now.
--diagnose: checks Node, dependencies, config, port, tunnel, health, directory, service, CPU, and memory.
--status: shows current runtime, public health, listing, and service state.
--install-service: installs startup-on-boot and restart-on-crash support.
--reload: restarts the installed service after config changes.
--refresh-directory: asks the running server to refresh its directory registration.
--no-open: prints links instead of opening your browser.
--debug: shows full command output while setup runs.
--port <number>: uses a different game server port.
--help: shows command help.