#dedicated-servers
1 messages · Page 127 of 1
I see.
So it's a tunnel issue. 1-way only.
When we go the same way through the connection, all is fine. When I leave, the server is pulled offline with me.
In Linux, you can change them to whatever you want. Its possible to do in Windows, I just dont know where the heck those server/client configs are
But you basically would have to revert back to setting the server ports as unique for server and beacon, and then config the client to match
and then tell all your friends to change theirs too
It has nothing to do with the IP, there's a bug on windows which closes the ports on the server if you are disconnecting with a client on the same machine
Correct, with the exception that it isnt a bug
They close because they share the same ports
They dont
If you are hosting and serving on the same box, yes they are.
Unless you have a separate NIC or are using a loopback as a virtual interface
Which we established that they @round talon is using a single NIC on the same interface.
That isnt a bug, its just how network interfaces work. Atleast until quantum NICs come out to consumers and you can have a port open and closed at the same time.
... and everyone here, too;
https://discord.com/channels/370472939054956546/1283191576641798144
While it is indeed a networking issue, the guide doesn't make mention of this. Therefore it is a development issue at the end of the day if it's an issue that is not mentioned in the guide regarding hosting a dedicated server.
That... and the guide itself is not pointing to the correct location of the needed file to resolve the issue...
I'll now search my entire PC for ServerSettings.PORT.sav Lmao..
Oh that will be a fun read, I am assuming that started when 1.0 dropped
AH fuck...
sure is, 9/10.
The PORT in "ServerSettings" is actually a number, isn't it?
Great, making it also unsearchable. FanTastic.
change the config back to those original ports and it will work fine.
Client and server port are not the same. Additionally it's UDP, there's no port closing, just no more packets
I think short term solution would be running the docker image or in WSL I guess if you don't have a different machine or don't want to switch to linux
UDP still has open/close.... UDP is just datagram stateless vs stateful TCP.
The UDP is the beacon port.
UDP is meant to be dropped and expects loss, thats why its the Beacon.
Its on CoffeeStain for not thinking of this specific issue, I'll concede that. But at the end of the day its just a porting issue.
If someone can point me to the server config file in windows I can fix yours and all of their issues
Nah, I found it. It's right there.
yeah we already did that @hidden forge
ServerSettings.7777.sav
The port is what I'm trying to see if I can edit.
Going to find a way to set up a DHCP server on the same NIC.
The problem is CSS didn't document how to change it in Windows
In theory yes that's the intended idea
does it work?
I changed it, and forwarded via my router but not through Windows Firewall just yet.
Nope. Lol.
... launch it with the -port argument?
Properties, edit "FactoryServer.exe" to...
FactoryServer.exe -port 7778?
That doesnt resolve forwarding
-port=7778 iirc
We'll get to forwarding once we can confirm the argument works.
they are high number ports, just set them back to the exact ports used prior to the 1.0 change
Why do you even want to change the port?
because prior to 1.0 they were unique; the Server API and beacon used unique numbers that allowed servers and clients to exist on the same box
on 1.0, the default, if you client and host at the same time and close as client, it also closes on the server.
I can confirm because the issue was only reported on the same day that 1.0 released
They still are? The server listens on static ports, the client uses different ephemeral ports
Got it.
Create a shortcut, change the target to
".path/Factoryserver.exe" -port 7778
Hell yeah
If the IP doesn't matter, and it's just the listening port that closes, now I can't access that port... I think? Unless... I need 7777 and 7778, but 7777 is what I need forwarded and to allow the server th listen on 7777 exclusively?
IDK... I'm not incredibly savy with all this.
we need two open ports
IDK how it chooses when you connect.
The server listens with both UDP and TCP on the same port
So... Could I do -port 7777,7778?
You can do any port in the high range
Well, multiples.
No
Ah, i'm still going to need to connect to 7778 anyway though, just to access the server.
Mine is QueryPort 1577, BeaconPort 15000,
and TCP port 7777
works perfectly
lol maybe I just share my server config?
@cold narwhal are running a pre 1.0 server? As of 1.0 there's only on port
He's running on Linux.
Doesn't matter
Yes its a pre-1.0 server, which is my entire point. That's why it still works.
They changed the network setup with 1.0. There's only one port now, both for UDP and tcp
TCP for the api
UDP for the game
And that is what broke the shared client/host function that used to work prior to 1.0, yes.
No
Nope. It went offline when I disconnected.
Thats why people are reporting the server closing when the host leaves the game
And I repeat, that's a known bug on Windows hosts
Host leaves = Server ports shared by the host closing.
thats the problem.
Not a bug, just an intended consequence of simplifying the networking.
Client and Server do not share ports!
They do if they are on the same device/NIC
No!
I am sending data to the server which is technically being hosted, with a ping of 19ms, on the same PC, but I myself am not listening when connecting. The listening port shouldn't be shutting down when the transmitting port is closed.
I don't see a point in arguing with you, it isn't helpful.
@round talon Sorry to say but as far as I know the current workaround is either
a) use different machines
b) Use Linux
Maybe try docker or WSL if both are not option available to you?
Unfortunate. This wasn't an issue before. Now we have to wait until hopefully Fixmas patch.
I was excited to play with my buddies without NPC creatures crashing their games. Lol..
These are exactly the things I already suggested.
In the end, as I said... It's a development issue. They messed something up, and it's not working as intended. That's all. Nothing more can be done. I'm not going to jump through the hoops of building a virtual environment to host a dummy network just to play a game that I'm pretty much testing the viability of the dedicated servers. They'll fix it one day.
In the end.. The servers work, but there is an issue if you yourself want to play from the same machine. Sad but true.
Current workaround:
Just restart the server when I log off. 😂
At least until we get a configurable Windows server
That, or my PC... I'll be building beyond the new year sometime. If I get that together before they patch it, I'll be scott free.
The issue is... That it doesn't solve the issue for everyone else.
Write a scheduled job to query the API every five minutes, and if no Response, then Restart Service.
Or installed WSL and go the Docker route
How do you query the API?
...ya know? I wonder what would happen if you put a (reverse) proxy between
Kestrel was suggesting that.
I believe it is just http requests.
reverse proxy would work fine, which is why I suggest dynamic DNS to handle the requests
Right, but you also mentioned this would require a secondary PC, or a VM.
Yep, we still need a way to segregate the port issue. Unique ports would be fine if they were configurable. I don't know where those configs live in Windows and it isnt documented well, as you pointed out
sharing host and server on the same ports make it ????
Well, it's there. it's just that the "Settings" is just the port itself, and not intended to be more than that it seems.
As evidenced by being able to connect to the renamed 7778 server.
I connected just fine.
Same issue on leave.
Usually the first one the start would be 7777 and the next one would be +1, so 7778
???
Are you just having the issue with when someone leaves the DS it goes offline?
Because that is a known issue with Windows DS that has been present since launch of 1.0 and they said it was fixed in 1.0.0.5 and it still wasnt
You port forward 15000 and 15777; patch comes, ports are now 7777 TCP and 7777 TCP. People cant connect.
7777 is not 15000 or 15777.
No connection.
Change the port forward, or change the default ports.
7777 TCP & UDP
Yep thanks, I said TCP twice. I did mean UDP.
What ports do want to separate? The server uses only one now and the client uses different, ephemeral, ports
The server will use whatever ports you want it to. 99999? sure. But you have to configure it. The problem is that people hosting as a server AND a client are using the DEFAULT, which used to work out of the box because they were unique and open when forwarded
Now, when a person hosting and acting as a client use those ports on the same NIC, it also CLOSES those ports on the server, because they share a NIC.
The beaconing port closes when the client closes, because 7777 is the same on both ends
No
The client connects using some random port X to the given server port (default 7777)
locally that is true
remotely that isn't true
hence the port forward I mentioned earlier
That's how every connection works
???
A client on a local network will allow random port x to a given server port; other people connecting from outside the gateway will not.
We only portfoward on our gateway for a specific port to allow specific traffice.
Yes? That's the server port. Which is given and static
When a client and server share, no it isnt.
If the client is assigned a random port in NAT to connect to a static Server on the same NAT, how do they talk? Furthermore, how does a remote host not on the NAT connect to the local server if they are using a different port? (ie, pre-1.0 ports to post 1.0 ports)
The server will reply to the ip&port combo it recieved a connection from
Good luck getting a server with the address of 0.0.0.0 to reply to shit
anyone here delt with crashes before?
0.0.0.0 is not a valid IP. It's used as a placeholder for "any valid"
Maybe you should read up how network traffic works before telling others to mess with theirs?
Maybe you should read the entire troubleshooting log
and see where @round talon asked their original question.
You saying that the UDP port listener disappearing only happens when the client and server are on the same machine?
You have a corrupt conveyor somewhere, might need to see the CrashContext to see which one specifically. Is it crashing when deconstructing or when starting up?
Only? no. Im saying it happens when the host and server are on the same machine, sharing the same NIC, and close the same ports when they exit the game.
and likely when both are set for DHCP
understood let me grab it
and its happened as of 1.0 when the server and beacon API share the same TCP/UDP ports, where prior they were unique, where the host was configurable via DHCP but the server was not.
got this @grim mica ill look at it and send it here too let me know if you see something before it do 
Thats a very specific circumstance, however it occuring on a true dedicated (no clients running, ever) rules that out as a potential issue. However, to take it further a client connecting to a DS would never be **listening **on 7777 because it doesnt need to as there is no server instance started since its acting as a client and would an ephemeral ports to connect as the source port to the destination port that the server is listening on
It is a very specific cicrumstance, but it is the one we were discussing.
Not seeing the ID still, does it occur at startup or after deconstructing?
Happens when you don't even have a single belt down.
startup
Oh so its a fresh save?
Mhm.
no its not fresh
A day old, but I can replicate it on a fresh save if need be.
Counterpoint: it works on Linux.
Its a problem as of 1.0 because they reworked the entire network stack. Not because they combined the ports
This is exactly correct, a bug exists in the Windows networking configuration that they simply need to resolve.
Linux has has a startup script that allows the configuration for the server that Windows doesnt.
Its what I said from the start.
What does that even mean?
What startup script? I switched to Linux because of the bug and use the exact same startup params as on Windows through NSSM that was extremely reliably pre-1.0
Whats the replication steps? Create new save and put some belts down or using a blueprint?
Usually there is something happening in the save to make that occur like a bad blueprint
'whateveryoursatisfactoryworkerscriptiscalled.sh' that should be run to start the server.
The crash on the module FGConveyorChainActor.cpp is the new 'linked' conveyor system where they are built as a single-unit from point to point for performance. Usually see that problem with BPs
this world is very very big, is there a way to remove everything that is on the conveyers?
I know its not blueprints because I just "deleted" them all moved them out of the dir and downloaded them. still nothing, looks like a calculator was used on this a while ago but doesnt seem to be an issue tho
I think SCIM can clean the conveyors but that isnt the issue really, its the linkage of conveyor to conveyor - usually it would show an actor ID to idenitfy the specific belt with SCIMs debug but dont see anything so it might be a merger/splitter connection perhaps.
Probably what you want to do is 'delete' the area that you were last working on via SCIM if you dont have older saves to rollback to
there are plenty of saves that this group has ill see what I can do :)
Still waiting for the closing point where I am wrong.
[root@localhost SatisfactoryDedicatedServer]# cat FactoryServer.sh
#!/bin/sh
UE_TRUE_SCRIPT_NAME=$(echo "$0" | xargs readlink -f)
UE_PROJECT_ROOT=$(dirname "$UE_TRUE_SCRIPT_NAME")
chmod +x "$UE_PROJECT_ROOT/Engine/Binaries/Linux/FactoryServer-Linux-Shipping"
"$UE_PROJECT_ROOT/Engine/Binaries/Linux/FactoryServer-Linux-Shipping" FactoryGame "$@"
What in here is specifying something Windows isnt? Its just calling the actual executable..
Huh? That contains the actual parameters for startup.. and on Windows via NSSM.
Wow calling the exe with the same startup parameters
You are referencing some script that does magical networking that doesnt exist?
where is your actual config script? looks like FactoryServer.sh?
I dont understand what 'config script' means
~
~\myserver\satisfactory\someinstallserver\factoryserver.sh
cat factoryserver.sh
Right.. I provided that?
that will give you the startup parameters
[root@localhost SatisfactoryDedicatedServer]# cat FactoryServer.sh
#!/bin/sh
UE_TRUE_SCRIPT_NAME=$(echo "$0" | xargs readlink -f)
UE_PROJECT_ROOT=$(dirname "$UE_TRUE_SCRIPT_NAME")
chmod +x "$UE_PROJECT_ROOT/Engine/Binaries/Linux/FactoryServer-Linux-Shipping"
"$UE_PROJECT_ROOT/Engine/Binaries/Linux/FactoryServer-Linux-Shipping" FactoryGame "$@"
What startup parameters are here that deal at all with networking?
omg your running as root
that aside... thats not the config script
systemctl status 'whateveryounamedyourstartscript'
check the PIDs, it should give you your ports
those PIDs will point to your startup script
Do you see this?
I am not running the service as root, simply logged into SSH as root, who gives a fuck its a private game server.
Either way, I took screenshots of that and they are above
Did you even look at the message above? All of this information is there. https://discordapp.com/channels/370472939054956546/902621736602861588/1304984698317045852
In your screenshot it has an invalid syntax (space after the ServerQueryPort) and those params dont even work anymore with 1.0.. i'm still super lost as to what specifcally your claim is regarding Linux somehow being better at configuration than you can get with Windows
or if it is, you didnt post it.
What?? How it is not configured to do anything? Thats how its running
you posted the exec, not the scipt itself.
serviceexecstart= string
the string.sh is the actual script
you underline log unatttended for some reason
its okay to say you don't know what your talking about.
Right, showing those are the only params I am using for startup
Okay, i'm just done.. either you are trolling or just actually dumb
hello
when i try to connect to my dedicated server it says failed to connec to server API
but when my friends try the same server they can connect to it
how can i fix this
anyone can help ?
Can you open the server IP in a web browser?
Should get this, add the port as well so https://<ip>:<port>
anyone else getting frame rate drop, like i mean joining and playing for a few mins at 90+ FPS to then getting 7 FPS after a few mins
like, if i go back to main menu, i can get my FPS back to normal, then between 1-30mins of play ill get that FPS drop to 7-8 FPS
i got a vid of it doing it
okay
@grim mica
what to do now
try in Chrome
Is this still correct?I don't know anything about servers but tried to set one up.
you can use steamcd to set one up
or use pterodactyl for one
Oh never mind, can't send the link
hm.
I can play on the server but no one else can 🙂
Btw what is a session ID and where do I find it?
Hi. I rented an online server from Apex Hosting to run a multiplayer Satisfactory save for me and my friend. I want to backup and edit the save file because of some glitched crates. I also need to back it up because the admin password isn't working and I need to reset it. However, I'm having trouble finding the save files. I tried accessing
%AppData%\Local\FactoryGame\Saved\SaveGames\server
But the server subfolder doesn't exist. Instead, I see ServerManager_V2.sav (Date modifed is only a few minutes old).
Is this the save file that I need to backup?
(I also do not see anyServerSettings.PORT.sav file that I need to delete to reset the admin password)
Nvm, I think I found it in a backup that the Hosting Server runs
anyone know how to fix this error
Can be your firewall?
do you host it localy or whith a 3d party? You have to portforward port 7777 udp/tcp
I ques your firewall blocks something (What haasje said) You can try turning it off for a sec to test it. If it works then you have to change some settings
The session ID is only used for multiplayer sessions, not for dedicated servers.
If your friends want to connect to your server, they'll need to do so through the server manager.
Is there any explanation or workaround available, why sometimes (but only sometimes) on dedicated servers, some conveyor belts etc. just won't build unless you retry over and over?
i have it turned off ?
can you connect now to the server?
hmmm
what to do
maybe you can try to connect to your servers api via your browser via your mobile if that does not work via wifi try 4G and see if you can connect?
Also is it selfhosted?
how to connect to the server api through browser ?
on a local device in your home or via the cloud
So you can connect to the api
but i get the error in the game ?
lemme try
nothing happens it just reloads
what to remove ?
the dedicated server form your game
wait
maybe there is a corrupt file or somthing
Always worth the try
okay
it means like my firewall is off and i can connect to the server api that means there is a issue with the game itself i guess
nope no problems within the files
It works for your friend so i don't think so.
May i ping your server and see if i get e response
if the web api is rechable but game says error something is wrong with the UDP connection
I can connect to it via the game and his friends too. its something whit the certificates it seems like
how do you write port when you're adding it ?
what ?
hm.
Hello. Are there any servers, friendly for new players, I want to play in a company, just bought the game 🙂
#1201555265942724758 is where you'll want to look through then.
Thank you
Ok, i'm really confused and can't really find anything on the web to help. Maybe someone here might be able to help? I have a dedicated server running at a friends house. It's been fine till this morning. I went to log in and it was "offline". I connected via PuTTY and restart the server. I see it come up and am about to click join when the server went offline again. I reboot my system and the factory server reconnect and as soon as the server is back up i click join. It doesn't load in, i ended up with this error and now the factory server appears offline again.
@hard shoal have you tried adding -ini:Engine:[HTTPServer.Listeners]:DefaultBindAddress=any to the start parameters?
I don't get it, i did an ss status and then the game came up. I'm now connected. No idea what happened and I didn't modify the ini
Grimmy, maybe just some hickup.
Next time check the server logs/the terminal output. Looks the server was confused/crashed.
i did do a ss restart
and still had teh issue. Maybe there was some network glitch. I'll go with the "gremlins" theory.
Thanks for the reply!
Question for those on dedi servers.
I have no issues running Satisfactory on my desktop. It's plenty beefy for max settings, but I struggle to run it on my laptop.
Do most people experience better performance on lower end machines if they play on a dedicated server with Satisfactory or is it pretty much still the same performance requirements as the graphics and all are still handled locally (for the most part I would assume).
what are the specs of your laptop?
My server is satisfactoryserver with port 7777, but what protocol do I choose in Cloudflare Tunnel?
I think the server has the self signed cert (I had to click it when logging in using satisfactoryserver:7777)
when I choose HTTP or HTTPS nothing happens, I am sent back to the main menu
also noticed that joining the selfhosted server is via Server Manager and not via Join Game
Satisfactory runs on both tcp and udp
well yes
and I assume UDP is needed for the data stream, and TCP for handshakes
I simply have a server running in a VM
A Cloudflare Tunnel on a Pi
or is a FQDN not supported?
This seems to be a thing https://blog.cloudflare.com/extending-cloudflares-zero-trust-platform-to-support-udp-and-internal-dns/ but there is also some discussion about it here https://github.com/cloudflare/cloudflared/issues/215
Most notably there is a screenshot similar to yours with some disappointed comments around that.
I just dont wanna have an exposed port at home
might ask friends to install Tailscale
which they cant without me spoonfeeding them
why not wireguard your pi?
the Pi has Tailscale on it
and doesnt plain oll wireguard not also need an open port on my FW?
and how do I explain Wireguard to the friends, if they cant even click 3x next to setup tailscale and log-in with their google accounts
yeah ok, I can imagine.
I made a firewall rule now to only allow their home IP's to my router on port 7777
so at least I don't have half the world sniffing out that open port
until their IPs get reallocated at least (:
I have a solution to that, but thats offtopic
they have to go to my silly URL to click a button, so I log their IP's to give access to a media server
neat, and effective.
(i dare to say an open port itself isn't too bad. depends what, if any, is listening on it)
Gotta take off my tinfoil hat for that
but I might just get a VPS and route it that way
That's what I do (though I do a lot more than Satisfactory with my VPS)
friend -> VPS -> wiregaurd -> game server
I would only use it to proxy the traffic
then some fail2ban and done
I laughed reading that
(smol advice) i recently changed lots of the default ports for stuff. purely to reduce log noise.
regarding?
general setup. maybe fail2ban handles that anyway.
oh in this specific case port 7777 to whatever.
IP with the 2 first octet as 100.70 means it's a CGNAT....
No portforwarding will help you there.
You need to set rules on 2 routers. Yours and ISP....
Hi everyone, sorry if the question has already been asked... I've looked on many forums but didn't find an answer for my dedicated server on Epic (I see many answers about Steam server).
I've downloaded the Dedicated server from Epic and it runs well... But when my client or a friend's client update, we cannot connect due to the difference between client and server version. Also, i've set up the auto-restart at 5am, but it doesn't auto-update... how should I do ?
Thanks for your help ! 🙂
anyone else having the issue with not being able to cut down trees. or they not disappearing when cut?
We've reached object limit. Where can I find the file on a dedicated server to increase it?
According to the wiki it only points to:
%LOCALAPPDATA%\FactoryGame\Saved\Config\Windows\Engine.ini
Or do we need each to increase that on our local files?
probably just the server but I don't know.
also just restarting the game can release a bunch of leaked objects, too
(not 100% sure on that for dedicated server but for "normal" game it does)
on a dedicated server the corresponding file should be in <installation_directory>/FactoryGame/Saved/Config/LinuxServer/ (or WindowsServer/ depending on your OS), as per https://satisfactory.wiki.gg/wiki/Dedicated_servers/Configuration_files
Thanks I will take a look!
There's also the other way of getting around CGNAT using SSH tunnels out to a VPS server, but it will cost a small hosting fee monthy and will require some more advanced setup.
It's been a few since I've run a decidated server. I tried firing up a new one today, I thought I'd cleared the old world data but when I loaded in the world was still at tier 2 when I last played in .8 and I still had all my kit in my inventory. Can anyone point me in the right direction to start it all up as new?
You can do it through the Server Management tab in-game. Just navigate to your server, click on Create Game, then boom.
That's exactly what I did. Created new game > start game. I was in at the new starting location vs the old but the world was still Tier 2 and I had all my old stuff. Even chose a new name.
Milestones are at none but the Tier is 2 and my inventory has all the same stuff as it did last time I played a year ago.
that's really weird, I'm pretty sure Dedicated Servers start by default at T2 right now, but you keeping your inventory is wild
I'll do another reset on it. Maybe I had an old save or something by the same name that I missed. It's been a moment =D Didn't know they started at T2 now, thanks for that info.
sorry for the late reply but i basically made a server using the wrong ip and deleted the files and redownloaded it and the server was still there
Or use Tailscale which is free...
hey i have no idea what im doing wrong setting up the dedicated server but i have my ports opened i used steam cmd i used the server manager in satisfactory to change settings but my friend is getting this error when trying to join..i can join it and it works idk whats up
this is the most confusing setup ever
Does Tailscale support dynamic host? Or does the host need to have a static address for clients to set up their tunnel to?
its just too jank i give up
Your friend trying to join through "join game" instead of server manager?
atleast thats what it looks like.
since it says "IsServer: NO" it sounds like hes trying to join through p2p mode.
okay
i will try
@slim salmon nope not fixed
That is off topic for this channel.
server manager doesnt work either it just says servers not online
what ports did you forward then?
and is he using your public ip?
7777 and yes
upd and tcp
none of it makes sense i run a terrarira/minecraft/teamspeak server currently as well and ive never had issues setting those up
is there a way to set a custom spawn location? (I want everyone to spawn in the swamp)
you're evil
Muehehehehe
you can absolutely set a custom spawn location. Simply relocate the HUB to the place you'd like people to spawn.
Hey,
First thing, thanks for your amazing game !
I did the maj, but now the dedicated server doesn't seem to work...
I can run him, saw him in server manager, but when i try to connect, it's load long time and never success to connect....
In the console, server spam theses messages, I don't know if someone already saw them / have a solution for this ?
LogCircuit: Warning: Tick, circuit '35' has 23 reachable components but only 11 listed. Re-adding reached components.
[2024.11.11-16.30.40:958][314]LogCircuit: Warning: Tick, circuit '35' has 23 reachable components but only 11 listed. Re-adding reached components.
LogCircuit: Warning: Tick, circuit '1' has 937 reachable components but only 925 listed. Re-adding reached components.
[2024.11.11-16.30.40:992][315]LogCircuit: Warning: Tick, circuit '1' has 937 reachable components but only 925 listed. Re-adding reached components.
LogCircuit: Warning: Tick, circuit '35' has 23 reachable components but only 11 listed. Re-adding reached components.
[2024.11.11-16.30.41:023][316]LogCircuit: Warning: Tick, circuit '35' has 23 reachable components but only 11 listed. Re-adding reached components.
LogCircuit: Warning: Tick, circuit '1' has 937 reachable components but only 925 listed. Re-adding reached components.
[2024.11.11-16.30.41:071][317]LogCircuit: Warning: Tick, circuit '1' has 937 reachable components but only 925 listed. Re-adding reached components.
Thanks in advance 🙂
(I launch server in windows via epic games)
Is there a good flying mod for dedicated servers yet? I loved the pak utility but I can't seem to find something like that for dedicated yet. Is it just a waiting game?
Question, there's an issue with foliage being loaded in although previously it was destroyed but it reappeared and is now indestructable
Have I mislead myself, or do you need to open 7778 as well as 7777? It also seemed to help when I split the open ports for tcp and udp instead of together. That only got connection issues a bit further into the process, it wasn't until I opened 7778 as well that I was able to connect.
You can set the ports to whichever you like, the default is just 7777 TCP/UDP.
Weird. Well whatever I did, it started working lol.
I found a work around with SCIM btw, I didn't post it but I just regenerated the foliage and it's able to be harvested/destroyed if it bugged out.
I'm linking the bug that was listed in a forums channel.
https://discord.com/channels/370472939054956546/1286029127010484257 that post is still relevant for whatever bugged reason.
Hi, I'm running a dedicated server, but I'm dealing with a broken server administrator password. After setting up the server, the server just turns on and the password I entered there doesn't work.
I am running the server on windows..
could it be because I changed the server port to a different one?
Is it still working after the hiccup? I've been dealing with the same issue for about 5 hours. Haven't been able to stay connected for more than 2-5 minute at a time before I get this error message. The server has been running fine for 616 hours until today for some reason.
Best to save your factory files and blueprints, delete the server config files and start over.
On the wiki look for "How do I reset the Administrator password?"
The quality of dedicated servers
when I've played on dedicated servers before
is awful
genuinely
For other games hosting never had issues as much as I have for this game
lol it’s human error. I set up my dedi server in an afternoon and it’s been running ever since. The only maintenance is regular restarts to flush cache and logs that are scripted and run on a chronjob.
Not CSS’s fault that people are trying to configure something beyond their skill set.
...
It's not human error when I've literally gone into the ini files and changed things just to get it working smoothly
At least not user error
feels more like their fault than users
especially when I've seen multiple posts at this point complaining about the dedicated servers
people only post here when they cant get things working; its survivorship bias. and just because you have trouble doesnt mean something is wrong with the game. just means you aren't doing something correctly.
but there also could be something wrong with the game. But most major issues have been more or less put to bed at this point; most of the problems with the server at this point amount to papercuts.
Fair, im not trying to say that it is flawless, but it certainly isn't poor quality. These are some of the easiest servers I've ever configured.
indeed. Granted the configuration and admin tooling is admittedly somewhat anemic beyond setting passwords and ports, the API is pretty cool and does provide a lot of utility. I had more trouble getting my Icarus server up and running, that's for sure.
Yeah the "claim a server and set the password" level of admin control is definitely lacking, but that is definitely small potatoes from a functional level. Setting up an Odin Maplestory server circa 2005 was rocket science by comparison
honestly my main complaint isn't even a server-specific thing. The typeface used on rail stations is pretty sparse for glyph support. I can name a station "H₂SO₄ Pickup" but it doesn't display properly on the station sign; only the timetable UI and similar lists.
(it shows as "H[]SO[] PIckup", indicating the typeface doesn't have the subscript numeral glyphs)
Signs on the other hand don't have this problem (:
that... is an extremely specific gripe. I don't disagree with it necessarily, but yea
That isn't even a typeface thing, right? That's gotta be a text encoding thing. I wouldn't necessarily expect there to be emoji support, same as I wouldn't expect sub or super script
I mean, MS Word and Excel can't even get that right half the time without 3 separate windows
Anyone running linux based dedicated servers?
I'm getting a segfault everyonce in a while killing the server
[2024.11.12-05.58.17:698][934]LogNet: UNetConnection::SendCloseReason:
[2024.11.12-05.58.17:698][934]LogNet: - Result=ControlChannelClose, ErrorContext="ControlChannelClose"
[2024.11.12-05.58.17:698][934]LogNet: UChannel::Close: Sending CloseBunch. ChIndex == 0. Name: [UChannel] ChIndex: 0, Closing: 0 [UNetConnection] RemoteAddr: ___.___.___.__:_____, N
ame: IpConnection_2147461522, Driver: GameNetDriver FGDSIpNetDriver_2147472441, IsServer: YES, PC: BP_PlayerController_C_2147461166, Owner: BP_PlayerController_C_2147461166, UniqueI
d: Steam:1 (ForeignId=[Type=6 Handle=0 RepData=[C0715F0901001001])
[2024.11.12-05.58.18:755][935]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to write memory at address 0x0000000000000003
Im running a linux based server; how are you killing the server?
Like, how do you shut it down?
I have not manually shut it down yet - it has been killing itself
yes
that is the error that I posted
it looks like it occurs when the last player leaves the server
but I don't know enough about the logs to understand if that's correct
Its an invalid write; does that happen when someone leaves? or randomly?
the server default is to write a save whenever someone leaves, so that is why im asking
oh wow that is a new one. What does your memory utilization look like on the server?
low - my setup has 32GB of RAM with a peak utilization of ~16
Can you tell me about your setup? LAN or remote? how is it being hosted?
do you play on the same machine that you host on?
not during the crash no
but launching the client and connecting to the server (via the global IP not local) seems to make it crash less
Okay, when you do play with your remote hosts, do you play on the same device that you host on?
yup
My thought is a permissions error. I don't think the service has the permission to write to the disk when the remote client closes the session.
why would that result in a segfault instead of an error about permissions?
Because they didn't program a graceful shutdown in this instance
also why would it have permissions to auto save while the server is running?
Hm... that is a good question.
Remote host leaves, we do a write, but that write fails. This is the thing that gives me pause
FMallocBinned2 Attempt to free an unrecognized block 0x2000000000
I think we are doing a write which should be OK, but turns into invalid memory becuase the write fails
so, I still think its a permissions error.
FSendingRepState::~FSendingRepState this is calling a deconstructor on memory that has already been freed (by the error message)
I don't understand why it is doing that though nor what !UNetConnection::CleanUp() is supposed to do
Result=ControlChannelClose, ErrorContext="ControlChannelClose"
The control channel shouldn't be closing, right?
Cant write to shit if your connection is closed.
UE control channel who are you I wonder
server stops listening on player disconnect. I think thats the guy.
I have just disconnected and connected successfully several times
Yeah but your aren't the problem, your remote hosts are.
the remote clients yea but the way I am connecting it should be the same
I am not connecting using a local IP
You said you are hosting and playing client on the same box?
yes
yeah thats it.
From 1.0 they changed the network config from unique listening and beaconing ports to 7777 UDP/TCP and every night someone with a similar issue posts
there is no issue with port forwarding, connecting or maintaining a connection
Try changing the server config; anytime someone hosts and clients on the same box with the same ports it shuts the server down when a remote client leaves
I have tested against this case
I have launched just the server without client
and then gotten the remote clients to connect and attempt to crash
and ran into the same segfault
without any local client
are you saying if the client is installed this behaviour will always happen?
or if the client is running?
If the client and server share the same NIC, yes I think thats the case
so I need to uninstall the client?
also wouldn't this behaviour be reproducable right now?
does this behaviour only occur when there are remote clients + my local one
if its intermittent then we need to think some more.
or anytime my local one connects and disconnects?
I have not been able to reproduce this now with just a local client + local server
I have been able to reproduce this with local client+ local server + remote client
I have been able to reproduce this with local server + remote client
It would be any time your client is up and forwarding the server ports, since they share the same NICE.
local to local makes sense since they have the same 1=1 port mapping open
NIC*
Local client + local server + remote host makes sense since too; if your local client/server closes those ports for any reason the server has no listening port anymore
this is the log from my "local client":
[2024.11.12-07.05.06:013][376]LogNet: NotifyAcceptingConnection accepted from: __.__.___.___:41518
If you were to join the game, stay in the game, and the remote host were to leave, that would either confirm or deny my theory
Yeah that log just says you joined on a local randomly assigned port, which is normal for NAT
we arent forwarded random NAT ports, just the specific server ports, which the defaults for 1.0 are 7777 TCP/UDP
Your server should be listening remotely on 7777 TCP/UDP for anyone outside your local network. Internally, you'll get random port numbers for NAT if you join as a player on the same box as your server. Thats multihosting
Im guessing the server doesn't really consider multibox or NAT ports; if its beacon port closes, the server says "im done listening now I guess" and shuts down, since its configured ports are now closed.
yes but if this were the case I wouldn't be able to connect and disconnect repeatedly right now
Yes you would? Your connecting as localhost 0.0.0.0 any on Linux
Your sharing your NIC with your server, you can connect no matter what.
I literally just had this disucssion over the weekend.
are you saying that when I went to server manager I used localhost 0.0.0.0 in order to connect with my local server via my client?
Im saying it doesn't matter, because you share the same hardware interface
unless you subnet or mask in some way that makes your host completely unique, it doesnt matter, because your on a class B or C network, so it doesn't care.
its only looking at the last octets
hence subnet masking
unless you are reaching OUTSIDE your internal network, using a proxy or VPN to then tunnel back to the server, then yeah ok we should do more digging, but I highly doubt that.
I do not know what this has to do with the case of ONLY remote client + local server
Yeah I think its a bug from the 1.0 port change. A server shouldn't shut down when a particular remote host port is closed, but.... it does.
this is the only segfault I am getting
Since NAT hosts assign ports randomly, there are no other ports to listen to, so it just kind of goes "idk close I guess"
the segfault is write error because the connection closes before the the write operation can happen
the error is a double free shown in the logs
it is trying to deallocate the same object twice
Remote client, using default ports, without the NAT host, leaves, all ports close, no save on client exit can happen, segfault trying to write to memory it cant access
its trying to cleanup and deallocate AFTER the write error occurs.
no its trying to access memory it is not allowed to access anymore because it has already been freed
Your server control channel closes before the write; line 934 precedes line 935
that log just says that it is in the process of closing
if you look at the stack trace below it, it is just a double free
and closing happen serially
oh
I agree with that your saying. But that isn't the root cause.
the root cause is inside the code
Root cause is the server shutting down because it sees specific ports closing that it is configured to lsiten to.\
no friend, if that were the case you were be like the 23472349023490th person to report this.
so people have shown you these exact errors logs?
Thats my point, they haven't. But I've fielded a bunch of "remote client leaves and server shuts down" posts
and its always people hosting on the same box they play on.
and its always "this worked before 1.0!"
I appreciate the fix I will now go launch my client on another computer
That's not NAT, that's normal port behavior
NAT is only when you go from a private IP net to some other IP net. Inside your local subnet there's no NAT
anyone else notice that the auto pause settings enables it self after a server restart
check how you are restarting it
its happens after a 24 hour auto restarts
i keep getting issues of when i try to build/place anything it wont do it and i see this in the server console
[2024.11.12-11.42.25:378][901]LogBuildGun: Warning: (1) Holo_PowerLine_C_2147407203 failed to construct due to UFGConstructDisqualifier: FGCDEncroachingSoftClearance
[2024.11.12-11.42.25:378][901]LogBuildGun: Warning: (1) Holo_PowerLine_C_2147407203 failed to construct due to UFGConstructDisqualifier: FGCDIdenticalOverlappingBuildable
[2024.11.12-11.42.25:378][901]LogBuildGun: Warning: (1) Holo_PowerLine_C_2147407203 failed to construct due to UFGConstructDisqualifier: FGCDInvalidFloor
[2024.11.12-11.42.25:378][901]LogBuildGun: Warning: (1) Holo_PowerLine_C_2147407203::Server_ConstructHologram, failed to construct hologram from construction call.
I host on a W10 VM on a HyperV, different from my gaming PC.
are you using provider services ?
i host the game on my own hardware
I suggest you set the setting
then manually force it to restart
for some reason it fails to save some settings when gracefully shutting down
is this on something that was blueprinted? I have had the same issue; I think its a problem that arises when the client thinks placement is valid but the server disagrees
No not a blueprint
In that case I would delete and replace the floor your building the powerline on, and maybe try to space stuff out a bit more; the error is for soft clearance (bounding boxes) and it seems to think your floor is invalid
but its definitely a bug... I haven't found a fix for it yet
whats the best place to rent a dedicated server for satisfactory ?
How have people been doing with running mods in a dedicated server?
I was thinking of trying out a few, like the daylight control mod.
How do I start a dedicated server?
Go checkout the wiki site, it has a ton of examples.
I use indifferentbroccoli, works great so far.
ty i will check that out
works fine
Use SMM/SML for best results
very easy. Just specify path or FTP details of server and click away
Neeeat
Thanks for the info!
Suggestion: End server log with: "Server is fully loaded. Access it with epic://xxx".
Suggestion 2: Even a console app can have a configuration interface. Command line or window, doesn't matter. This isn't 01.01.1970 anymore.
how are dedicated servers now compared to when they first dropped?
The devs do not read this.. post on the QA site
where are the save games saved?
where to upload blue prints?
on a linux vps headless steam cmd
if u need more info ask
found it
Is there a way to run a console command at server startup? having to set a debug variable daily and id like to automate it
which os?
hosted on a linux
check out what services do on linux ask chat gpt or something and tell it udlike a service tu run a file o a command on boot or crach
thanks ill try that
let me know if u face any problems 🙂
(make sure to respond to the message so i get a ping)
Talking about the arrayupdates commands?
yep
i tried adding it to the scripts/networksettings option in engine.ini cause that made the most sense to me, but server still defaults to 2048 each time
scripts/consolevariables?
Engine.ini
[ConsoleVariables]
oh buddy you are the best!
~~I am trying to run the Docker compose for creating a Dedicated server, as i want to test different VPS providers. However i can't load an existing save.
I tried:
- Create C:/SatisfactoryTest folder
- Place /Saved from previous server in C:/SatisfactoryTest folder
- running Docker Compose, binding the volume:
´´volumes:- "C:/SatisfactoryServer:/config"
``
- "C:/SatisfactoryServer:/config"
- Connecting to the server.
I can connect just fine, however the server doesn't "see" the Saved folder / the savegames in the folder?~~
I have found out i am a dumbass, and wrote the path wrong. D'oh!
No idea, not a UE developer
Hey, linux noob here. I followed the offical guide and got my server running but it's been a while and i can't seem to figure out how to get it updated.
I ran the original install script again from my main user, not the Satisfactory user. Could that be the problem?
Or am I not in the right folder?
You'll need to run it as the Satisfactory user since it's the one that originally installed it
Do we know if hologram being shown when you deleted a blueprint is a known bug?
Integer...
@drowsy osprey you have to port forward in a couple of spots both in and out
Portforwarding out??? Why???
Question regarding performance: I am running the server as a docker container, however the server is being laggish - ping is fine, but trains are rubberbanding. Is this the server or the docker container being the typical fault?
Couldn't tell ya, I just follow instructions. I had to do it for both my firewall and network
Docker should only be minimal 1-2% performance loss, so probably something else
it really depends on the resources allocated to that container more so than the container itself.
Yea i think i figured out the likely issue: Network quality medium really hampered things. I've set it to Ultra and that have smoothed out things a ton!
yeah that quality settings sometimes helps a lot
Minimal rubberbanding with trains now, so at least thats progress
Hello. I got a version missmatch between client and server. I used "steamcmd.exe +login anonymous +app_update 1690800 validate +quit". It still reports the version missmatch.
*fixed
@cold narwhal so it turns out the reason why i am experiencing Rubber-banding is this: It is using 80% of the CPU just running the game. Going in a train? 95%.
My satisfactory server seems to go offline any time I disconnect from it. Any idea why that is?
I'm just launching it from steam.
You don't need outbond rules...
Your instructions isn't correct.
Yep; resources allocated are typically the biggest impact to performance. Over time the RAM consumption will creep up and the container will require a reboot
Can you provide server logs of the disconnect and subsequent activity?
This is the log right after I disconnect.
The log makes it seem as though the server should still be running, but we cannot connect to it from the game client.
Are you playing on the same box you are hosting the server on?>
If so, do you have multihome configured?
If you are playing and hosting on the same windows machine that's a known bug
I'm running it on bare metal on windows. What is multi home?
And yes, I am playing on the same machine.
multihome logically separates a NIC to allow you to configure multiple IP addresses on one card. There is a line to add in the server config with the -multihome flag and a unique static IP
Its not normally supposed to be necessary to do this, but there is currently a bug with this build that causes a full socket close when the admin leaves the server and only occurs when the admin and server are on the same machine
Ah. I see.
If you have a differnt machine that you can host the server on that would also fix the issue
If I ran the server in a docker container would that resolve the issue?
I should think so, since there would be a virtualized interface for your server to bind to
I'll try out those solutions. Thank you so much.
Setting multihome didn't work, but setting it up on a docker container did.
Good to know that multihome isn't the right answer, I was hoping it would be the easier fix but at least we have a reproducible work around
and im glad your server is up and running!
yeah, played a bit with multihome, ipv4, ipv6, 6to4 and 4to6 but nothing changed.
maybe additional IPs could work but, imo, thats too much effort for a single game-server
I tried that but it didn't update
I tried to setup the nightly auto-update but I'm a bit confused on how or where I'm supposed to run the commands.
where as in "what folder" not how to SSH. That part I have down.
I hate to ask, but if installed on Ubuntu using the default settings, what folder and user do I use, and what command do I run to update it?
Better yet, how would I set it to auto update?
I can help if your still online
@cold narwhal I would LOVE some help!
I believe so.
It's the latest Ubuntu Desktop
I'm not 100% sure how directories work in linux so i used whatever the default was.
steamcmd +force_install_dir ~/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 +quit
for the default
okay, and which user do I run that as and in what folder?
as my user or as the satisafactory user
on whichever terminal the server is being hosted on
I think you misunderstood my question
'su' means "im not longer a regular user, please elevate me to admin"
and it will ask you for the root password
So it doesn't matter which user?
correct
I know what super user is, I just thought it mattered which user I was logged in as
okay. I'm logged in as me, but SU
hmm..maybe not
Isn't it sudo su?
su doesn't accept my password but sudo su does
it really depends on your sudoers file; but really any command that requires elevated priviliges will ask you to elevate so it should not matter
then sudo su is okay for this.
Okay awesome. I'm there.
Now, I am assuming you did the default install directory as you said, so this would be the command for steamCMD
yeah, didn't change anything.
steamcmd +force_install_dir ~/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit
just run that in my home folder?
Run that in the elevated terminal window, yes the '~' is a relative file path from your home directory
I'm afraid I don't understand what a relative path is
it just 'knows' where I installed it last time?
instead of thing/thing/thing/server; we just use '~'
okay, here goes.
nope. game still says version mismatch
game version 378208
Server version 372858
same result.
no errors during update.
yeah then its probably not writing to the directory
wouldn't it say something during install instead of completing without throwing errors?
sometimes, but not always.
nothing is perfect. Now, we login directly as root, find the direct filepath (not the relative filepath) and run the command out of it
I am told that linux cannot login directly as root, it can only call it.
I do not have a password for root
Ubuntu doesn't ask to set one up during install
I know where the server folder is, if that's what you're asking
or rather, I somewhat know where it is.
It's under the "satisfactory' user the guide had me create
I mean, your told wrong, but I'll work from what your giving me. go to the install folder for the server in your terminal
then just type su
it should ask to elevate with a password
su doesn't work. it asks me for a password I don't have.
Only sudo su works.
is that the same thing?
its not unfortunately
headdesk
doesnt mean we can't try it
well I have installed ubuntu quite a few times and it has never asked me for a root password
are you making sure to shut the server down before attempting to update it?
It's definitely not running.
I'll reboot and try the command again.
okay, this time the update took WAY less time.
root always exists. a sudoers file (sudo command) just elevated a user to admin privileges. I'm suggesting root because I don't know your config and root has all privileges. Its not really meant to be used for anything
It's the most default config you can get.
Otherwise we would be trying to change file permissions and that is a mess
Install ubuntu with defaults then add a user, give it a password then bam....desktop
run sudo apt update && sudo apt upgrade -y
Finish
reboot
follow satisfactory dedicated server guide to the letter.
yep that for the OS itself that definitely works
okay; do this then; 'ls -a' your home directory
in which user
how many users do you have?
The satisfactory guide requires that the user "satisfactory" be used
or at least, added.
as a non-root user
good on them for being cautious, that user then
just 2 users
Me, and Satisfactory
okay. I'm logged in as satisfactory
ls-a
oops
ls-a : command not found
I only have "server" and "SatisfactoryDedicatedServer"
well, there are others but nothing server related
so we are seeing it there and so relative filepath should work; so we can eliminate the directory problem.
lets see who you are operating as: type "whoami"
output : satisfactory
prepend the steamcmd command with sudo
stay in the same terminal; use the command I provided earlier, but use 'sudo' at the front
I appreciate the help man, but I've already stated a few times that "satisfactory' user is non-root
it cannot sudo anything
correct
this is how troubleshooting works. I don't know shit about your setup.
So I am figuring it out as we go.
I've already told you everything is default
just my user, then the guide.
That's all this system is for.
so naturally, you need to add the 'satisfactory' user to the sudoers file.
the guide specifically states the satisfactory user MUST be non-root
Then the guide is wrong, because you cannot write to disk without permissions, and being in the sudoers file does NOT make your "satisfactory" user root.
Root is root.
Linux
A user without root privileges needs to be used for the installation. Using root might cause issues with permissions and missing libraries.
that is direct from the guide.
the official one.
adding an account to the sudoers file does not make them root.
root is a very specific account.
no, but it gives them root privileges
which it is specifically saying will cause issues.
@golden roost can we get a clarification on this mate?
Your other option is to change the permissions for wrx on your drive and allow your 'satisfactory' user the permissions necessary to modify your installation files.
If that user can't modify files, then how is it able to install the server?
I don't know. Did you audit permissions on that directory to verify their permissions
This is the offical method:
If your server was installed using the SteamCMD command-line client, you can shut down the server instance and then use the same command you used to install the server to check for and install an update.
?
I don't know how to audit permissions.
The official guide, I assume your using the gg wiki?
I can run the original install command using that satisfactory user and it runs and completes.
I don't know what gg is
oh. yes.
Okay, you need to understand that "Linux" is not ubiquitous. Ubuntu is not the same as Debian, etc. Each has their quirks.
it seems to have changed the non-root user to {steam} instead of {Satisfactory}
seriously? who's bright idea was that?
They say "dont run as root" because running as root is horrible security practice, not because it messes things up, at least in most cases.
"let's further complicate an already complicated OS by making different distros not work the same"
It's no wonder people pick windows.
Im not suggesting you run as root; but what I am suggesting is that unless you understand your own permissions settings, you may not be able to update the server.
If you understand Ubuntu, then it's whatever the defaults were.
I don't know how to tell you anymore. I've never once touched a permission in linux.
wouldn't even know how.
this is easily fixed by adding the account to the sudoers file to grant them write permissions to the server directory.
I do not know how to do that.
Google is your friend. I'm not a help desk.
All I know is the guide i used ended with a functional server.
Cool, so you were all good to help until you didn't want to anymore. Thanks for nothing.
Suddenly you're "not a helpdesk".
shrug.jpg
WTF did you bother helping for then?
Well you understand the problem now, don't you?
Then maybe don't attempt running a dedicated server.
we got to a permissions thing then suddenly you peaced out on helping.
Cool, so now you're being a dick. what did i do to you?
I was running one just fine until i needed to update it. don't be rude.
Okay, I won't be rude. Add the user to the sudoers file, I know that you can google.
You know what? Keep it.
I was learning up until you gave up and started being a dick.
Login as that user, sudo the steamcmd command, you should be good.
I'm not going directly against the guide the DEVS of the game made just because some impatient asshat on discord decided he didn't want to type out another command.
Then in that case I can't help you.
Douche.
Without granting direct permissions to a specific user, sudoers is the most secure way of doing what you want.
But hey, Im a douche.
Blocked.
it does mess things up because it create files as root then
when they should have permission set for specific user ownership
example : sudo mkdir /yoo
ls -lsh /yoo :
root root drwxrwxr-x /yoo
That is a fair point. And is likely the cause of their issue, and the resolution I pointed them to is still valid.
they could chmod their way out of it... but like, how am I going to explain that without making it worse
I think the mixing of adding user to sudoers and changing directory access could be confusing
they likely already are sudoer if they did that mistake once before
su isn't sudoer dependent though
which is why I suggested it first
and they were convinced su was not valid, or they didn't know the password for it.
I didn't read the whole conversation
I was only commenting on the expected problems of running sudo directly
They were convinced Ubtuntu didn't even have a root account
Not sure how I can help at this point. I explained the likely cause and provided a notional solution, I can't login and fix it for them.
I think this is a bit of a social mismatch
I think you expected too much background from them and at the same time they were not calm enough to ask you the right questions
like the sudo su thing I just saw
it asks root password because root is the default target for su and/or they confused with the sudo password which is not root
I do expect a baseline level of competency to be posting here with the intention of configuring a dedicated server. I provided a valid resolution to the problem, it is not my job to ensure that someone is capable of seeing it through.
If that makes me a dick, ok.
But I do appreciate your candor.
Don't come with solutions you haven't tested yourself and know is working.
Assumptions are the world's least accurate science.
I would like to come with an suggestion, if you have not tried it already - You should consider using one of the polished docker images for a server.
https://github.com/wolveix/satisfactory-server
Then you will not need to struggle much with permissions, libraries and such because all will come included in this one package.
Can anyone help me with optimizing my dedicated Server. I'm experiencing Belt Lag that I do not get when I play single player. As you can see this is a 780 Belt where the throughput of items is way lower. I can share my engine.ini file to whoever can help. Im on a 1G up/down and my server is running on a proxmox VM with way more dedicated resources than is required
engine.ini
You can absolutely install the SF server and SteamCMD without root privileges. The only time root should be used in this context is paired with words like "don't".
(this is emphatic agreement, not argument, for the record (: )
@wintry crow if you run "ls - a", who owns the Server files?
Did you set up a service? Can you post the config?
begging 120wpm keyboard jockeys to create meaningful statuses and error messages
Hey happy players - I updated my client as prompted and then also the steamcmd ds but for whatever reason the steamcmd version is still mismatched, any updates on when we should expect the DedServ will reflect the latest DS version?
I have the same pb with Epic. I have to stop manually the server and then update it to be able to connect to it… i would like to know if it’s possible to update automatically
The issue I am having is that after updating the server when I connect I get a time out shortly after, my daughters copy just crashes before getting on the server
are you running a dedicated server @KEQ ?
windows or linux? I play with a friend and was able to get ubuntu desktop installed on vmware workstation and then do the steamcmd ds install and use that to host our session so he can still connect while i'm working or offline. Only challenge I've had with this is the server deleted my blueprints but I think where I went wrong on that one
running on Windows
@bleak dust here is the script I run to backup the server update the server and restart the service this run every morning at 5am using a cronjob... Let me know if you want help writing something like this...assuming your running you server on ubuntu if you just want the update command its the second one below
/home/satisfactory/backup_satisfactory.sh && steamcmd +force_install_dir /home/satisfactory/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit && sudo systemctl restart satisfactory
/home/satisfactory/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit
admittedly, I'm a dangerous novice with linux at best, and I know I botched the install but its running . I will attempt to mimic what you've posted - thank you!
Also its not about the script doing vs manual doing.. the Steam client had update 7 today then when I went to connect, it rightfully showed a mismatch. so I went to steamcmd and performed and update, restarted the server and although it did update, the versions were still mismatched
Yea i just ran that update command and mine updated just fine
mine says its updating but does nothing xD
the order of this command does matter:
/home/satisfactory/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit
Make sure its exactly that on Linux
but replace the /home/Satisfactory with your path
i updated it direcly via steam cmd it said it was finisched with the update
app_update 1690800 validate
thats the command
mine does the same but when I connect to the server from the client I get version mismatch
does the same meaning it connects to steam public, downloads and installs but the client shows it mismatched. i'll try again
yep tried few tiumes
Sorry i missed the first part of the command I ran with success steamcmd +force_install_dir /home/satisfactory/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit
which version is higher, your client or server?
server
got it
its working now xD
was updating the wrong server im ki9nda not smart xDD
the simplest solution seems to always get the best of us...lol
It's possible to force update on 4Netplayers dediacted server ?
client is higher for me
Looking online, it appears that 12GB RAM is a minimum requirement for 4 slot server. Can anybody clarify if this is correct? Seems a little excessive? All the hosting providers seem to think that 6GB is suitable for 10 slots.
ok I think I know what I did wrong. I ran from within the folder rather than using the force_install_dir . once I did this in this as part of the command string, it is now doing something different than before:
Failed update Attempt #1: Sat server folder> steamcmd +login anonymous +app_update 1690800 validate +quit
Successful update attempt #2: ~ Sat server install "parent" folder> steamcmd +force_install_dir ~/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit
It's more about the save size/how far you are into the game
6GB is enough to start with
Then you will need a bit more memory as you progress
Not finding the best Info to host more than 4 Players... I want to host MAX 7.
Dedicated server by Hetzner :
i7-7770
64GB RAM
SSD Storage
will the CPU be enough to handle this?
I think not all 7 Players will play until late game.
linux?
sure
go to
exchange steam with the user u used to install
and than open the Game.ini
and add
[/Script/Engine.GameSession]
MaxPlayers=7
yes this works already.
But do you know if the CPU can handle the load?
puh idk i thing it schould but there might be some lags if the players are too far appart
but idk how the game porocesses information
but this also should only apply to the later game
oke ty
these are my server side engine.ini / game.ini and my local game.ini settings... Im running a headless linux server with 32gb and 16 CPU Cores, runs 7 just fine but starts to bog at 10.
We are at Tier 9 and have a ton going on in our save. be sure to set both server and local engine.ini to read only after making changes
Server Game.ini
TotalNetBandwidth=1200000
MaxDynamicBandwidth=320000
MinDynamicBandwidth=300000
MAXPOSITIONERRORSQUARED=32.00f ; Keeps default position error limit
MoveRepSize=512.0f
CLIENTADJUSTUPDATECOST=512.0f
ClientAuthorativePosition=true ; Client controls position updates
MAXCLIENTUPDATEINTERVAL=1.0f ; Shorter client update interval for responsiveness
MaxMoveDeltaTime=0.5f ; Shorter max move delta for precise updates
MaxClientSmoothingDeltaTime=1.0f ; Lower smoothing delta for quicker client-side smoothing
ClientNetSendMoveDeltaTime=0.0332 ; Keeps standard movement update rate
ClientNetSendMoveDeltaTimeStationary=0.0664
ClientNetSendMoveThrottleOverPlayerCount=99 ; Throttle only if player count > 99
ServerForcedUpdateHitchThreshold=1.0f ; Lower threshold to respond to hitches sooner```
Local Engine.ini
my guy took this shit to a whole new lvl
love it
took alot of tinkering but i think i've found the optimal settings for running smooth gameplay when dealing with bigger builds...still tuning these setting but its a good baseline... if you are feeling froggy make sure to backup you initial files before making changes
yea i might try to do that some time but i got a show tomorow and need to catch sum sleep
ty for not gate keeping that xD
Fader, this looks very nice! can't wait to try!
thanks a lot for the comments too!!
(regarding backup keep in mind git diff gives you a nice to read diff as well [some default lines in server engine.ini were deleted!])
(and yeah i still kinda struggle with plain ol' diff T_T)
also I just love this is an option?! ClientAuthorativePosition=true
Heads up regarding the audience you run this server for ^^;
WARNING: setlocale('en_US.UTF-8') failed, using locale: 'C'. International characters may not work.
Redirecting stderr to '/home/steam/Steam/logs/stderr.txt'
Logging directory: '/home/steam/Steam/logs'
Looks like steam didn't shutdown cleanly, scheduling immediate update check
[ 0%] Checking for available updates...
[----] Verifying installation...
UpdateUI: skip show logoSteam Console Client (c) Valve Corporation - version 1731433425
-- type 'quit' to exit --
Loading Steam API...OK
Connecting anonymously to Steam Public...OK
Waiting for client config...OK
Waiting for user info...OK
Update state (0x1) running, progress: 0.00 (0 / 0)
IPC function call IClientAppManager::GetUpdateInfo took too long: 81 msec
Update state (0x81) verifying update, progress: 18.46 (768631898 / 4164008246)
Update state (0x81) verifying update, progress: 54.39 (2264688863 / 4164008246)
Update state (0x81) verifying update, progress: 90.68 (3775830434 / 4164008246)
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (721) : m_cbBytesStaged >= 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
src/clientdll/depotreconstruct.cpp (721) : m_cbBytesStaged >= 0
src/clientdll/depotreconstruct.cpp (734) : pInfo->nNumWritesFinished == 0
IPC function call IClientAppManager::GetUpdateInfo took too long: 63 msec
Error! App '1690800' state is 0x6A6 after update job.``` am I missing something?
is it the locale?
nope..
My friends and I are using Gportal for our dedicated server but I cannot figure out how to save files!? When I try to save it says there’s not enough disk space
I tried to use Gportal’s backup feature and that reset the server
We’ve lost progress twice, please somebody spare us this Hell 😭
sounds like your gportal thingiemajig is out of space.. delete some old saves?
That’s the thing we are first timers
It’s brand new
I can’t figure out how saves work
I assumed the server manager menu with the save category would do the trick
Did today's update break anybody else's Linux Dedicated server?
100%
mv ./factoryserver ./factoryserver.old (replace with your path) then run your update script.
if you're having the same issue as me.. steamcmd wouldn't update the server, only way to make it work again was to delete and reinstall the server.
you could also rm -rf your factory servers path, but I moved mine incase I made any config changes I needed to reference.
🤔
Thanks! ❤️
I'm not sure what got broke.. I posted my steamcmd update log above my post. I tried updating libaries, reinstalled steamcmd.. reinstalling the game was the only thing that fixed it
We ran the update script and it seemed to work, but then when we tried to run the FactoryServer.sh file directly and it mentioned that some specific file (some other file) didn't exist 😅
but yeah we were getting this error too:
Error! App '1690800' state is 0x6A6 after update job.
anyone have a server site suggetion? two days with shockbyte for a $20 server and it goes done. refuses to connect. in fact it says server connection lost all day. support offered a bot reply and has ignored me since.
which CPU?
dunno what they did but that patch resolved all my dedicated servers crashes
hey , quick question.
My server is running fine but after the nighly automatic restart it does not come back alive. "Segmentation fault"
Manual restart is working fine
Would Statisfactory run fine on a N100 cpu powered mini pc?
No, it requires strong single-core performance
The single-core performance is reasonable, though a little low for 7 players. Satisfactory doesn't really make use of multiple cores, RAM-wise you'd be more than fine. Look for a Hetzner server with a better CPU, e.g. their EX44 server comes with an i5-13500 which is better suited
oh ok, guess ill use it for mc hosting instead then
having my own pc (which has a strong amd cpu) on 24/7 is.. very bad for my power bill lol
To be fair, give it a go and see it goes 🙂 It'd be sufficient for the earlier parts of the game
"Earlier" well.. nevermind then
😄
yeah i already realized this... thanks for your response!
i look right now on hetzner availables serer auctions what do you think about an i9-9900K? Cheaper than the EX44 stuff (cause of one time setup fee) .... there's also an i5-12500 .
the i9 looks great on paper with the nice 3.6- 5GHz power ... and the i5 looks meeh of the 3.0Ghz base tact... can you give me a technical advice between these two CPU's which will fit more for my need?
Yea I have not done a git init on this yet, probably just put these in a private github repo and use version control for your suggestions
sorry I bounced early last night, did you get this figured out
did you update your server to the latest patch? I was getting this pre patch knock on wood
yes i did
What other information was in the segfault
Yeah.. I posted my solution.. after this update the installs got corrupted and the server needed to be deleted and reinstalled
Someome else got to abput midgame with a n100. It works, but the N100 is not quite powerfull enougj for an entire playthrough
yeah im already past midgame lol
Clock speed isn't really the thing to consider here. While CPU passmarks aren't the best metric, I've found that they're reasonably reliable at determining adequate CPUs for this.
The i5-13500 I highlighted has an average single-core performance of 3884, while the i9-9900k you suggested has a single-core passmark of 2928. I'd absolutely go with the i5-13500 personally
@bronze hound
as baldur noted in an other channel, dont buy these stuff if you want to specifically build for it (especially new)
there are very better new cheap options
i.e it only makes sense if you stay on the recycling cheapest occasions option
Hey Everyone!
I’ve been working on a detailed guide for optimizing Satisfactory Dedicated Servers and local clients—complete with automated backups, updates, and everything you need to keep your factory running smoother than a Mk. 5 belt! 🚀
Before I unleash this guide to the world, I’d love to get some feedback from all you dedicated server pros. Does it make sense? Are there tweaks or tips I might’ve missed? This guide is for all of us, so your input is super valuable!
Drop me a comment or DM if you want to take a look and share your thoughts. Let’s make this the ultimate resource for server optimization! 🙌
Thanks 👷♂️✨
I didnt find where they were talking about auctinonned 13500 though
Hey, i'm running the dedicated server on my Windows Server 2019 VM, and been looking into the automatic updates on the wiki, and cant seem to get it working, or even understand how it is suppose to work. The service will update the server when i start it, and starts the server after. Do i need to set up daily restarts via the service? If so i feel like that step should be mentioned on the wiki.
I haven't dug into it yet, but I quite like the formatting.
I have rented a server, anyone know how I set it so the world keeps going even if no players are on?
Let me know what you think, i tried to write in in a way that is inderstandable to folks who may not be as adept in Linux as some
when I looked online everyone said its a option you can turn on and off, but I cant see it in the server options
I assume its this setting? I have that option in the server settings ingame
which wiki?
satisfactory fandom wiki, tried to link it but couldnt
okay, its seems I am blind! thank you
@warm rock Steam, Epic or Docker Install?
SteamCMD
configured with NSSM as a service?
yes, created 2 services with NSSM, one for the exe, and one for the update.bat
with two services i think they just block each other
combine them into one that first updates, then starts the server
I dont see how they would block eachother, one is running the exe, one is updating the server, and starting the service for the exe
i wouldnt mind combining them, but not sure how that would help with the automatic updates, as i dont understand how they are supposed to work
this is what the batch file looks like, and its doing its job when ran manually, either directly from the batch file, or the service, i just dont see how its supposed to be automatic, unless im missing a step. It isnt like the service is restarting at intervals or anything like that "C:\Users\Administrator\Desktop\steamcmd\steamcmd.exe" +login anonymous +app_update 1690800 -beta public validate +quit "C:\nssm\win64\nssm.exe" start SatisfactoryServerService
hm. i think you should add +force_install_dir \path\to\SatisfactoryDedicatedServerDirto the update coomand (before +login)
I'm using the default directory, so it isn't necessary, like i said, the batch file is doing its job, but it isn't automated
ah, my bad, i think i missed the point 😅
you want to auto restart the service right?
Yeah, i assume it can be done in task scheduler or something like that, just confused by how the wiki didnt mention anything like that
probably assumes the user wants to manually update ¯_(ツ)_/¯
and yeah, task scheduler is probably the beast way to do it
do you know if updates are done at a specific time, so i could make sure the server restarts and updates, after the latest patch is rolled out?
afaik they are not. so just a daily restart at a fixed time nobody is playing is best you can get
Alright, i'll go for that then, thanks!
And they're ain't gonna be many more updates until ficmas.. I think you're better off manually doing it
I wait until I get a message saying they can't join the server to do it lol
Use wiki in description link for this channel.
The wiki for this channel is functionally identical to the one i used from what i can tell, atleast for the auto update part. Still dont see how its supposed to be automated
Well I tried to tell you...
What exactly did you try to tell me? I understand that i was using the wrong wiki according to the Discord server, but i don't understand how it's supposed to work on the correct wiki either. Are you saying that it will auto update without manual input? If so, how does it work, does it check for updates and runs the batch file when an update is live, or does it restart daily and updates on restart? When i was talking with Xeet earlier we came to the conclusion that the best way was to run the batch on a daily restart which i could set up with for example task scheduler. If there is a better way and i've missed something please enlighten me.
The Service will run as until it is stopped (user, OS shuts down, stop signal)
The Serice only executes the cmd file which updates the server and then runs it
The Server will restart daily, but thats only the game server, not the service.
To automate a service restart you need to either externally trigger it or restart the entire OS.
Both best done with task sheduler under Windows
Running the update as a service won't work. Create a scheduled task that runs once a day to do your updates should work. Change your update.bat to this:
"C:\nssm\win64\nssm.exe" stop SatisfactoryServerService "C:\Users\Administrator\Desktop\steamcmd\steamcmd.exe" +login anonymous +app_update 1690800 -beta public validate +quit "C:\nssm\win64\nssm.exe" start SatisfactoryServerService
Now run this as a scheduled task.
Try to tell you to always look for information in a updated wiki and not an outdated wiki.
@frail spade @hidden forge thank you both
Thanks for the explanation, i didn't realize you meant that i should use that wiki in general and thought there was a difference between the 2 guides i had missed, i will use the updated wiki in the future.
Per my response earlier in the conversation, the Hetzner EX44 has an i5-13500, and is priced similarly to their auction servers
wdym similarly ? it's per month fee
if I had the time and gumption, I'd add a header to every single page on the old wiki saying "this is deprecated, go here" with a link to the current wiki.
are rented servers just broken?
i have 2 servers on different hosts and they're both giving me a "failed to connect to server API"
my locally run ded has a tendency to crash if it runs longer than 24h. also the restart mechanism you can configure in the server management doesn't seem to work properly. so i created a cronjob to restart the server daemon every 4 hours.
Fandom wiki wrong wiki. Use the wiki.gg one.
Well that was well scrolled up 😦 Valid statement.
Can I setup a server and play the game on the same machine?
Or do they have to be different
They can be the same, but the game effectively does the same when you just start the game without the dedicated server, so unless it's because you want it to be running when the game isn't then it's kinda pointless
I do want it to be running when im not playing. I'm running into connection issues at the moment so that was the first thing I wanted to knock out as a problem.
Get it up and running, new issue. My wife is getting the error “Encryption token missing”. Any ideas?
Are they using Join Game or Server Manager?
Should be using Server Manager and the server IP / Port