Closed ewlidd closed 2 months ago
also can't launch after the new update, get the error: "serverfiles/Engine/Binaries/Linux/UnrealServer-Linux-Shipping" however replacing the symlinks didn't work for me, still says executable not found. Oddly my files are in the sfserver user home directory not in a satisfactory sub-directory so I have a different folder structure to ewildd. I've got a fresh ubuntu 20.04 install that's only setup to run the LGS script.
edit: Nevermind, I went directly to the folder and fixed launch by replacing the symlinks, launches now. Havent had a chance to test the port issue.
Same issue here, had to replace satisfactory
with the default sfserver
to make the symlinks work:
#remove symlink
rm /home/sfserver/serverfiles/Engine/Binaries/Linux/UE4Server-Linux-Shipping
#replace symlink to new exe
ln -s /home/sfserver/serverfiles/Engine/Binaries/Linux/FactoryServer-Linux-Shipping /home/sfserver/serverfiles/Engine/Binaries/Linux/UE4Server-Linux-Shipping
#create another new symlink to new exe
ln -s /home/sfserver/serverfiles/Engine/Binaries/Linux/FactoryServer-Linux-Shipping /home/sfserver/serverfiles/Engine/Binaries/Linux/UnrealServer-Linux-Shipping
Also had to remove the multihome from the config. After that it seems to work fine, at least on the local network.
Edit lgsm/config-default/config-lgsm/sfserver/_default.cfg
. Change startparameter
to read startparameters="FactoryGame -port=${port} -log"
. Jump ahead to line 160 or so, and change the executable
to read: executable="./FactoryServer-Linux-Shipping"
.
The lgsm check_executable.sh needs to have the hack for SF update 7 removed from it, the first 'if' clause.
Further, if your server starts and still cannot connect, there is a bug in the game where if ipv6 is not enabled in your server it will listen to 127.0.0.1:7777 only. Verify this with lsof -ni | grep 7777
. The solution is to enable ipv6 in your kernel, then you should see it bound to *:7777. If you can't figure out getting ipv6 enabled in the kernel, use rinetd to forward connections.
Edit
lgsm/config-default/config-lgsm/sfserver/_default.cfg
. Changestartparameter
to readstartparameters="FactoryGame -port=${port} -log"
. Jump ahead to line 160 or so, and change theexecutable
to read:executable="./FactoryServer-Linux-Shipping"
.The lgsm check_executable.sh needs to have the hack for SF update 7 removed from it, the first 'if' clause.
Further, if your server starts and still cannot connect, there is a bug in the game where if ipv6 is not enabled in your server it will listen to 127.0.0.1:7777 only. Verify this with
lsof -ni | grep 7777
. The solution is to enable ipv6 in your kernel, then you should see it bound to *:7777. If you can't figure out getting ipv6 enabled in the kernel, use rinetd to forward connections.
Can confirm this to be working. I've used a clean slate and deleted everything Satisfactory related and did a fresh install using ./sfserver install
Created the new Symlinks as explained by @timvandenhof (the clean installation does not need to remove the old symlink)
Also changed the start parameters as explained by you.
Interestingly, my IPv6 Port did not get mapped and I was still able to join (although it is enabled in the kernel)
root@<FunnyName>:~# lsof -ni | grep 7777
FactorySe 2404317 sfserver 13u IPv4 46335836 0t0 TCP *:7777 (LISTEN)
FactorySe 2404317 sfserver 15u IPv4 46335858 0t0 UDP *:7777
Hotfix now released
Yeah, sorry to be unclear, ipv6 needs to be present in OS to provide a ::1 to bind to, even if you don't use it at all.
User story
as a server admin, I want the server exe to launch and have the correct ports
Game
satisfactory
Linux distro
Debian 12
Command
command: start
Further information
satisfactory 1.0 just launched. I applied the following fixes to make it run, most of which I guess will be fixed by satisfactory themselves in time, so this is more or less a doc for those that want a manual fix in the meantime. TL;DR: -there's a new port TCP 7777, that incorrectly binds to localhost if you use the -multihome flag effectively locking you out from the server. -They also changed the server executable name that needs new symlinks.
Satisfactory has a new port requirement of TCP 7777. This will give an error when browsing to the server of "failed to connect to the server api" you must edit your config and remove -multihome ${ip} from the launch flags. for some reason, when the satisfactory launches with the multihome flag it binds to 127.0.0.1:7777 instead of the multihome IP (or 0.0.0.0).
Relevant log output
No response
Steps to reproduce
No response