Instantly dropped on joining multiplayer server

Anything that prevents you from playing the game properly. Do you have issues playing for the game, downloading it or successfully running it on your computer? Let us know here.
Xon1
Manual Inserter
Manual Inserter
Posts: 3
Joined: Sun Sep 25, 2016 4:12 am
Contact:

Instantly dropped on joining multiplayer server

Post by Xon1 »

Recently my gaming group have been having issues connecting to a Space Exploration multiplayer game.

This happens with multiple players in all different countries, but the higher the latency the worse the problem is

The symptoms are a player will start connecting but then get instantly dropped.
From the player's perspective they get the password prompt, joining game loading bar, but fails at the downloading map stage.

If the host implements outbound UDP ratelimiting everything works fine. Changing the hosting server doesn't appear to help.

Outbound UDP shaping script:
#!/usr/bin/env zsh

DEV=external
IPS=(XXX.YYY.ZZZ.1 XXX.YYY.ZZZ.2 XXX.YYY.ZZZ.3)
BANDWIDTH=20mbit

# Reinit
sudo tc qdisc del dev $DEV root handle 1
sudo tc qdisc add dev $DEV root handle 1: htb default 9999

# Create the new default class
sudo tc class add dev $DEV parent 1: classid 1:9999 htb rate 10000mbit
# Control bandwidth per ip
mark=0
for ip in $IPS; do
mark=$((mark+1))
# Traffic shaping rule
sudo tc class add dev $DEV parent 1:0 classid 1:$mark htb rate $BANDWIDTH ceil $BANDWIDTH
sudo tc qdisc add dev $DEV parent 1:$mark sfq perturb 10
# Filter rule
sudo tc filter add dev $DEV parent 1:0 protocol ip prio $mark u32 match ip dst $ip flowid 1:$mark
done
While there is a global bandwidth limit in factorio, this is not per player. Tuning the global download required determining the slowest player's connection which is troublesome and error prone. And appears to require a server restart to apply.

This may be a buffer bloat problem as once both the client and server have timed out, the host can still receive UDP packets 5-10 seconds later.
Baughn
Fast Inserter
Fast Inserter
Posts: 100
Joined: Wed Jan 20, 2016 4:44 pm
Contact:

Re: Instantly dropped on joining multiplayer server

Post by Baughn »

> This may be a buffer bloat problem as once both the client and server have timed out, the host can still receive UDP packets 5-10 seconds later.

This is actually the client.
Bilka
Factorio Staff
Factorio Staff
Posts: 3309
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: Instantly dropped on joining multiplayer server

Post by Bilka »

Xon1 wrote: Wed Sep 21, 2022 9:07 pm Recently my gaming group have been having issues connecting to a Space Exploration multiplayer game.
Considering that it's a modded game, it's likely that you're running flib. If you are running it (it shows up as "Factorio library" in-game), try updating it to the latest version if it's not already updated. The library had a bug with translations that had almost exactly these symptoms, but was fixed in version 0.11.0 of the mod.

You can try if the mod is the issue by lowering the Dictionary levels per batch setting in its mod settings, e.g. to 5, see viewtopic.php?p=571476#p571476. But that only applies to you, upgrading the mod will fix it for everyone if it's the problem.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.
Baughn
Fast Inserter
Fast Inserter
Posts: 100
Joined: Wed Jan 20, 2016 4:44 pm
Contact:

Re: Instantly dropped on joining multiplayer server

Post by Baughn »

Bilka wrote: Fri Sep 23, 2022 7:35 pm Considering that it's a modded game, it's likely that you're running flib. If you are running it (it shows up as "Factorio library" in-game), try updating it to the latest version if it's not already updated. The library had a bug with translations that had almost exactly these symptoms, but was fixed in version 0.11.0 of the mod.

You can try if the mod is the issue by lowering the Dictionary levels per batch setting in its mod settings, e.g. to 5, see viewtopic.php?p=571476#p571476. But that only applies to you, upgrading the mod will fix it for everyone if it's the problem.
We're already on version 0.11.2 of flib. Should I try downgrading?
Post Reply

Return to “Technical Help”