Repository navigation
Troubleshooting
The readme has the short version. This is the long one, and it grows as people report things. If you solved somthing thats not here, add it.
The single most common one. Work through it in this order:
- Is the server actually up? Obvious, but check.
- Is it the RCON port, not the game port? See Turning on RCON.
-
Has your host pinned the port on the command line?
-RCONPortoverrides your ini completly. Look at the startup arguments in your panel. - Did you restart after enabling RCON? It only reads that config at startup.
- Can you reach it at all? Run the curl check on the RCON page from the machine your running the balancer on, not from somewhere else.
- Firewall. If curl works on the game box but not from your VPS, thats it.
Most likely: its working correctly. The round it started on is deliberately left alone. It writes everyone down as settled and starts evening things at the next map change. Wait for a map rotation.
Other reasons:
- Youve left
--dry-runon. It printsWOULD MOVEinstead of moving. - The teams are allready inside the gap tolerance, so theres nothing to do.
- Everyone on is settled and nobody is joining. It balances by placing arrivals, so on a server nobody is joining it has very little to work with. See the mass quit section in the readme.
Working as intended, and the readme explains why. It will not drag settled players across. That gets fixed by new arrivals going to the light side, or by the next map change.
If you dont want to wait, restart the match. Or turn rescue on and let it do that for you
when a match is properly ruined.
Read the log line, it says why:
-
balance— a new arrival, or everybody being re placed at a match boundary -
closed side— they picked the shut faction -
bounced— they switched onto the full or heavier side themselves and got put back
Thats the closed door and its the anti stack rule. Theyre choosing to jump to the winning
side. If you want to be softer about it, raise gapTolerance.
Thats rescue, and its off unless somebody switched it on. Either turn it off, or raise
minorityShare toward 0.45 so it only fires on a proper collapse, or raise scoreLead so
it waits for a bigger blowout.
You have two copies running. Check with pm2 list or ps aux | grep index.js. Kill one.
One process handles as many servers as you like, thats what the servers list is for.
Your stateDir isnt where you think it is. It resolves relative to the config file,
not to wherever you ran the command from. If your service starts in /, check the state
line it prints at startup and make sure thats a directory it can actually write to.
-
is not valid JSON— nine times out of ten a trailing comma. Paste it into jsonlint.com. -
still has the example password in it— you copied the example and didnt fill it in. -
still has the example host in it— same, but the IP.YOUR.IPand the203.0.113.xrange are placeholders, they go nowhere. Put the address people actually connect to. - Windows users: dont let Notepad save it as
config.json.txt.
Thats how the games faction change works and nothing here can soften it. Its exactly why it tries so hard never to move anybody who is allready settled.
The readme is the manual and is kept in step with the code. This wiki is the stuff around it. Anything wrong or missing, edit it.