#dedicated-servers
1 messages · Page 27 of 1
This log doesn't carry crash info. You'll need to check the Crashes folder for the info.
Install Folder\FactoryGame\Saved\Crashes\UE4CC-Windows-{GUID} - that's where I got that log from. Folder contains:
CrashContent.runtime-xml (76kb)
CrashReportClient.ini (1kb)
FactoryGame.log (4.8Mb)
UE4Minidump.dmp
any of the other files of any use then?
Also, cautionary tale: it's very easy to "lose" the 3 auto-saves. I forgot that, in U7, throwing explosives at an actively hostile enemy may trigger them to detonate. Threw a nuke nobelisk at a critter; the nobelisk went off immediately, I died. Ended up being thrown gods know where under the map by the blast - couldn't move, couldn't respawn, nothing. Had to disconnect; lost autosave #1.
On reconnect, find I have no death crate. While getting there, autosave #2 got overwritten. And when I tried to load an older save, it turned out I couldn't get into the manager - it kept saying "disconnected" as soon as I connected. Had to disconnect to enter the manager... and lost autosave #3.
As it stands, my earliest save is the one immediately after spawning naked in the HUB. Thankfully, I have a save from several hours ago. Let's see what that saved.
CrashContext will be useful.
Yup, rain crash -- AFGRainOcclusionActor::ResolveTracedEntries().
> the crashes seem to come in waves and then stop for a good number of hours. strange
Yeah, it stops raining.
starts raining, game goes: "nope, ain't havin' that" crash ... lol
thanks for checking, Kad - appreciate it
Is there a way to edit the port configurations in a .ini, like the serversettings.ini? Or how could a .bat get setup like a service? End goal being a server running on non-default ports that are configured through a batch currently that will auto-start if the game crashes or the server reboots.
Platform?
Windows 10
Okay, so the Wiki tells you how to override ports both in the command line and .ini files.
It also notes that 2/3 can be set in .ini files (Beacon and Game). Query must be set on the command line.
Thanks Kad, been looking at the wiki the last 2 days and never saw that for some reason...
@austere chasm As for running it as a service - either srvany or nssm. You'd then point to the .bat file instead of the server launcher. And to be perfectly safe, remember to put full (non-relative) paths everywhere. Also, running it under SYSTEM will have implications in terms of AppData location (somewhere in /Windows).
possible to turn ficsmas off on dedicated server?
Anyone getting these crashes lately?
Dec 16 08:13:04 satisfactorysrv1 UE4Server-Linux-Shipping[11805]: PIE: Error: Only Local Player Controllers can be assigned to widgets. BP_PlayerController_C_2147437030 is not a Local Player Controller. Dec 16 19:10:06 satisfactorysrv1 UE4Server-Linux-Shipping[11805]: LogCore: Error: appError called: Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:Runtime/Core/Public\Containers/Array.h] [Line: 674] Array index out of bounds: 180 from an array of size 180 Dec 16 19:10:11 satisfactorysrv1 systemd[1]: satisfactory.service: Main process exited, code=exited, status=139/n/a Dec 16 19:10:11 satisfactorysrv1 systemd[1]: satisfactory.service: Failed with result 'exit-code'. Dec 16 19:10:11 satisfactorysrv1 systemd[1]: satisfactory.service: Consumed 15h 56min 15.817s CPU time. Dec 16 19:10:12 satisfactorysrv1 systemd[1]: satisfactory.service: Scheduled restart job, restart counter is at 5. Dec 16 19:10:12 satisfactorysrv1 systemd[1]: Stopped Satisfactory dedicated server. Dec 16 19:10:12 satisfactorysrv1 systemd[1]: satisfactory.service: Consumed 15h 56min 15.817s CPU time. Dec 16 19:10:12 satisfactorysrv1 systemd[1]: Starting Satisfactory dedicated server... Dec 16 19:10:29 satisfactorysrv1 systemd[1]: Started Satisfactory dedicated server.
FG.DisableSeasonalEvents 1 Put that in the server console and it will turn it off. The wiki has a list of some other commands that are useful as well.
I ended up using nssm and adding the arguments there for the .exe Thanks for the help and pointing out the obvious 🙂
Yes. Info on the Wiki page linked in this channel.
✓
Yes, and it can be caused by any number of things - critter AI, corrupt inventories, and rain. It seems it's mostly the rain, actually...
Hey guys i am having a bit of an issue trying to figure out how to upload some blueprint designs to my shockbyte server. When i go into the FTP files I cant see the savegames folder within the saved folder. Am i missing something?
In other news, I went back to my Original Spaghet world... and finally fixed my first nuclear setup. This resolution is brought to you by the number 5 (as in hours I just sunk into it) and the number 69 (as in fuck me), as well as a general motto of "What the fuck was I thinking?!"
You probably are. Ask Shockbyte how to manage your save files. It's likely they have some sort of bespoke System™️ in place for it...
(or they just do it by e-mail, and ask you to send the blueprints to them that way... 🤣)
(because it's not like they can't just map the damn user folder via mount -o bind, right? *hint, hint, Shockbyte*)
My Original Spaghet world not only has stable nuclear now, but I went ahead and expanded to available waste processing capacity. Basically tore down and re-did about 2/3rds of my original setup. 🤣
Thanks for the tip. turns out that shockbyte went and created the save folder in a different location under .config/epic... I didnt think to check all the other folders till you said that
Actually, they didn't. The game server did that.
I don't particularly care why they chose ~/.config as the location for their saves. I don't care why it's under Epic (though I do happen to know - the game originally released as Epic Games exclusive, and it - and the fact that it uses EOS infrastructure for everything - is historical baggage of that).
What does bother me, is the fact that there's no option to reconfigure the path. :/
yeah thats fair enough and It would be nice to reconfigure it
"Who'd want to change the save path?" -- uhh, most people who have hosted game servers ever? 🤣
I'm curious if anyone here is running their dedicated server in unRaid that might be able to help me get that up and running
Hello, I am running into this error when creating a new save and attempting to join the session once it finishes creating. When I attempt to load a save and launch it through the save manager the same problem occurs. This server is running through LGSM, however I have the exact same issue when running it normally. Any other supporting logs I should include?
@bold atlas are you on the same network as the server? just curious because if yes you could use the internal IP address and that might resolve the issue...
Kinda looks like you can't reach that IP's port 7777.
Not just "could" but in most circumstances "should". Unless you know for a fact that your router device is configured for NAT reflection, you should assume it's not. But then, that would necessitate people understanding what a "network" is, or if one is part of such.
true, but if they had been using the external IP until recently then I figured the external IP should continue to work... but not knowing their exact setup I went with could
There are clues to be had. First, the Server Manager console is mentioned, so the connection must've gone through at least to Query, then Beacon (it also implies DTLS handshake worked like it's supposed to). And secondly, assuming the default config, connections to port 7777 happen last in the chain (game join).
No word is given on whether it worked before, though. So it could be a simple misconfiguration (missing the port forward and/or fw exception for 7777, assuming NAT reflection or external host).
I'm about to fall asleep at the keyboard, so I'll hit the bunk. Later.
So.. our experience from yesterday's gameplay on DS.
- multiple client freezes (4-5 during session); game on HDD, AMD Radeon card and low memory system (8GB); this wasn't happening before, on U6.
DX11 or either lowering graphics does not help; if nobody else is on the DS looks like more stable with no frequent freezes. Client needs only 3200MB to run game, I don't belive this is memory issue.
Only this client freezes. - I got killed myself several times via Nuke Nobelisks due desync while aiming at enemy (generally during large area wipe); seen dropped box with loot, which doesn't spawn on a map. However, SCIM confirms there's a loot.
- Once autosaved occured while I was travelling in Explorer; position was correctly saved I spawned on a map instead under it like it was in U6. Seems fixed or at least I was lucky.
- No DS crash itself; it's still running stable without manual restarts. No network-related issues.
hmm... That's weird, I was connected but unable to finish research. After reconnect research is ready.
Does anyone experienced login to your server and ending up in a location you never went at all on map ? I just connect to my server and I was on my tractor on the top of a montain , far away from my Desert base. I never went anywhere else than in the desert and I'm certain having disconnected while not on my tractor, I spawn on the tractor in a total random location on the map. Something is wrong with dedicated server ...
Considering this is the first time I've heard of something like this... I'd say hold onto that tractor - it may be taking you not where you want to go, but where you need to go... :D
so back on the handshake issue, i found more info in testing
in further testing with a local windows server
LAN [MTU 1500] [0ms] - works
WAN [MTU 1500] (direct) [21ms] - works
WAN (tunnel to OVH) [MTU 1420] [40ms] - fails
now one could suspect MTU differences and fragmentation breaks the handshake
The (D)TLS handshake would be vulnerable to this sort of thing, because it's much bigger than the typical record size (several kilobytes) and needs to be heavily fragmented.
The game MUST employ PMTU discovery precisely for this reason - to determine the smallest MTU available for record size.
(because according to the spec, a DTLS record MAY NOT be fragmented in transit, since UDP doesn't guarantee order or delivery of fragments)
Nice. :D
hey, quick question, our blueprint manager is going crazy on us, not able to load any blueprints, saving is fine. anyoone else encountered the issue? Server restart didnt help, rebuilding it didnt either.
Define "not able to load": you placed blueprints in the correct folder on the server, and it's not loading them?
nah, the ingame blueprint manager, doesnt allow loading Blueprints in it, to exchange belts. There are existing ones, but he cant load them anymore
Oh. Well, I'll sit this one out, as I've little experience with the in-game Blueprint Designer and its workings.
I've had a VM running a dedicated server perfectly fine for a while now. I'm trying to move it to a container... the container appears to start but I can't figure out why I can't connect... here are all the logs I have so far... https://pastebin.com/ctYshFTw ... any help would be appreciated
MFW blueprint designer deleted all my reinforced iron plates... therefore i didnt have the building materials anymore ._. i was so sure i had them because i was working on the same blueprint before
When you clear the designer, all the mays go to a box on the console
they didnt
That doesn't have any info on why (or even whether) it goes down. Do you have any console view anywhere? How much RAM do you have available? Nvm, the log says 32 GB - is that correct?
this is part of my problem, I'm not used to unRaid yet... so I can pull up the console of the docker image but I don't know where to go in there to check anything... I think it's running based on when I run the Top command it shows UE4Server-Linux if you have any commands you want me to run I can run them and provide output
as for RAM, 32 GB is in the unRaid box so it should be plenty for whatever Satisfactory wants to chew up
I'm looking through /proc to see if I can find anything... You can use something like ps -a | grep UE4Server-Linux | cut -d ' ' -f 1 to get the process PID to feed it.
(if you have multiple, you'll probably want something more ss -nulp | grep -i ue4 | grep 20010 | cut -d '=' -f 2 | cut -d ',' -f 1 where 20010 is one of the ports used by the particular instance)
went into /proc and there is nothing when running the ps command you listed
Uh, not sure what you mean.
Running the command chain should give you a process ID.
Then you go looking into /proc/{id} for what it has open.
For instance, one of the handles in fd will be tied to the open .log file.
(fd = file descriptor)
That doesn't matter.
(i.e. where you are on the filesystem doesn't matter for that)
Can you ss -nlup | grep -i ue4 for me?
ss isn't in the container, however I can install additional pieces as needed
No idea, to be fair. Try apt update followed by apt install net-tools or something?
Ah, it's in iproute2 actually.
so apt install iproute2 instead.
no results from the ss command
(net-tools would probably give you stuff like ping, host and netstat)
So it's not running.
Okay...
but if I run top the amount of time is increasing
Are you sure you're running the commands inside Docker when trying them? What does ss -nlup show?
It looks like -p isn't working.
Here's the difference:
root@arkserver:~# ss -nlu | grep 20010
UNCONN 0 0 0.0.0.0:20010 0.0.0.0:*
root@arkserver:~# ss -nlup | grep 20010
UNCONN 0 0 0.0.0.0:20010 0.0.0.0:* users:(("UE4Server-Linux",pid=1072650,fd=35))
netstat?
shows connections but not the processes using them
netstat -nlup?
You need --cap-add=SYS_PTRACE
for the Docker image.
That should give you the proc ID.
That's not DS-related.
me and my friends can't invite each other and join the game
need that on the netstat command? (sorry I am kind of new-ish to linux, I know a lot of the basics but not a lot of the troubleshooting)
No, you need to modify the Docker image to include the SYS_PTRACE capability.
That's not DS-related.
sorry I don't understand exactly what you mean
Your problem is not related to the dedicated servers.
ohh sorry
I recommend opening a new thread in #1038092680493801533.
thanks
✓
I'm probably gonna have to take getting --cap-add=SYS_PTRACE to an unRaid help server because I'm not sure how to get unRaid to add that to the docker setup. Thanks for the help so far @blazing halo
Sure. Ping me back when you have it set up. And keep them around, because you may need further Docker-on-UnRaid assistance.
Also, ask them about running network services. It's possible that you need to "forward" a port from the main NIC to the Docker.
Or something.
I've got it on a dedicated IP so I don't need forwarding at least, it's how I setup some other services such as adguard for DNS filtering and because I'm using dedicated IPs forwarding isn't needed
I at least know the networking 🙂
Cool. :)
For creating a personal deidicated server, do people use the Epic version, or Steam CMD?
No difference. Same code & contents.
(unless EPIC is derping and serving the EX instead of EA, or the game client instead of the server... as it actually did, both, in the past)
If you prefer to have the server auto-update and be automatically managed, use either STEAM or EPIC to do it for you. If you prefer to manage the server yourself, install through steamcmd.
Also depends if the server is being hosted on their PC or if they're using any sort of box/vm for it where it makes more sense to automate via steamcmd 😛
Would the concept of a server-side mod that literally just exposes the playerlist on a server be feasible? 🤔
Obviously it'd be publicly available, and I wouldn't have an issue with that
Player count, probably. Player list? I don't know.
I'd much rather have it exposed via the Beacon protocol. And I have to assume that it's possible, because it is possible to manage players on a DS. (it's just in the most idiotic place I'd last expect it to be :D)
Totally agreed I'd rather it be via the beacon, but I'm figuring if we want to get things done and they don't want to support the DS for now (or at least comment on these requests on their questions site), I'm happy to try to figure out a server-side mod for it 😬
Again: you can manage connected users (kick them, for example, but also see the list), so it's exposed somewhere - and my guess is, it's on the Beacon protocol. Potentially.
Heh yeah, but none of that is available with any external REST APIs or similar, or any normal way for expose the data 😛
And that will likely not change, because it seems that the developers are very intent on hiding all of that information behind encryption.
On purpose, as in.
Here's a fun DS-related bug...
When the DS is saving:
- hit ESC to free the mouse
- move the mouse to another display
- wait for the DS to finish saving
- move the mouse back
Now, the ESC menu stays, cannot be interacted with, and cannot be used. The game remains in the blurry, menu-covered state. ESC does nothing. To quit game, Alt+F4.
@blazing halo so apparently I'm dumb as is unRaid/Unifi networking... I moved a VM of my Unifi controller to a container on unRaid and when I did that it screwed up my vlan settings... so even though I could ping across to the server it wasn't letting other traffic through
I appreciate the attempted help earlier
✓
im trying to make a server but when i do it says "this server appears to be offline" can anyone help?
Did you claim it?
it wont let me
You can also tells us more about your setup: where is the server (in relation to your PC and/or network), what have you already done, what address and port you're putting into the Manager, that sort of stuff.
yeh i did the address and the port
I'm sorry, but that tells me exactly nothing.
Be as specific as you can, please.
Hey guys, I have not kept up with updates for the past 6 months, is there a noticeable performance increase running dedicated servers? I ran a dedicated server on a dual Intel X5650 CPU server with 192 GB of memory, yet server would bog down to 5-10 ticks/second when approaching end-game severely impacting the experience playing on the server (I know this is because the CPU mentioned is old and its single thread performance is nothing in comparison to newer generations of CPU's).
Ever since update 7 arrived on early access, i have been getting frequent server crashes. They usually happen while dismantling things, but also sometimes while building things. Are these server crashes reported automatically, or do i need to manually report them somewhere?
yeah is mainly your hardware im on late game stuff with a 3950X and 64Gb 3466 Ram an the server is running at 120 tickrate no issues on my hardware like no rubber banding etc i do get server crashes but my script just auto restart the server and is back up within 1 minute or so...
Second this. Server is crashing repeatedly to the point it's getting unplayable at Tier 8. Changing material types, dismantling items. Anything more than a single item and it crashes. 9.5/32GB RAM server being used for the world, 2% CPU load and save times (including compression below .5ms) so it's not server specs. Logs inconclusive, just shows the server booting back up each time.
I went ahead and reported the issue here: https://questions.satisfactorygame.com/post/639f75215298eb579df0830f
still no way to save & exit from the dedicate console window?
We have some findings regarding DS stability.
When we played over same NAT forwarding rule there were instability during connections causing client to hung completly (game freeze).
Like a 4-5 times in a row.
Now I play over VPN, my 2nd player goes via NAT forward rules.
Not a single client crash. Maybe cooincidence with admin & usual player both joing over NAT rules and causing this mess?
No way to save, but Ctrl+C exits.
terrible. design. :C
Deffo ain't arguing there, but it's not that bad.
it is when autosave is set to 60 minutes and you have no idea if there's been any server activity since then
also, servers restart for reasons like Windows Update
if it isn't taking the hint to save on shutdown request, welp, loss guaranteed
and...heaven forbid it save during a shutdown
corrupt save assured
(disregard that, I still haven't woken up)
So, you mean - it restarts so that the server can load updated components, thereby mitigating or removing known security vulnerabilities?
Oh, you probably meant that it restarts like Windows Update nowadays - i.e. not asking for permission, just going ahead and doing it, fuck your work.
yes
well it warns you about it but if you miss the warning, it'll restart anyway off-peak hours
DS needs to assume save and exit, moreover, it needs to accept console commands like exit-nosave
(again, disregard, still half-asleep)
Yeah, it gives you three warnings I believe. I tend to just exit and restart manually when it does that.
It does help that I have it set to save on player disconnect, and nobody else is playing on it.
Actually, it doesn't. I don't know of any server that does that. It should, however, not auto-restart if it doesn't auto-save just before.
Terraria does
This would be much easier if you could just connect to the server, and tell it to save & shutdown.
i made a wrapper program which enabled it to even play nice with a UPS 😄
you shouldn't have to "connect" when you're literally looking at it the command window
the command window should be coded to accept plain language commands and what you do via game -> server manager should be handled as commands in the command window
ergo, commands are fully logged and visible to whomever is looking at the window
and again, there's a lot of reasons for an application to close that doesn't involve a client
hell, just today C: was full and Windows was probably on the verge of killing the process to make room
Again, I don't know of any server that accepts commands directly via STDIN. You usually interact with a server either via signals, or other means the server was intended for.
most DS do
For most game servers, this happens via RCON, which you do need to connect to.
List examples please.
as i said, Terraria, Minecraft, GoldSrc dedicated servers
Satisfactory is literally the first i ran that didn't
As far as I recall, goldsrc don't. They have RCON.
they have rcon in addition to stdin
granted, that was a long time ago so might be misremembering
You are misremembering.
So, as far as I can tell, Terraria and Minecraft both do have the option to type into the console window.
And for me, that's a very unusual thing for a server to do.
it's so practical
My knowledge of game servers that accept console input:
-
Terraria ✓
-
Minecraft ✓
-
hlds ✗ (uses RCON)
-
ARK ✗ (uses RCON)
-
Conan ✗ (uses RCON)
-
DnL ✗ (uses RCON)
-
Cryofall ✗ (uses internal console)
-
7 Days to Die ✗ (uses internal console)
-
Out of Reach ✗ (uses internal console)
-
Atlas ✗ (uses RCON)
-
Satisfactory ✗ (unknown/none)
rcon is better than what Satisfactory has because it's at least relatively easy to make a manager
Yes, but it's not encrypted.
doesn't really need to be
And as I understand, the entire point was to encrypt the traffic.
Well, you and I agree. Satisfactory developers disagree.
i mean just RCON can be unencrypted but needs some creative way to do the initial authentication handshake
The only things you can get without authenticating and doing a DTLS handshake are: version, state, and BCON port.
Not an option. It's not how DTLS works.
or, whitelist RCON sources
RCON is usually on a separate port that obviously wouldn't be DTLS
vastly simplifies the design
It usually is, yes. And it's also typical of STEAM games.
because it dates back to quake
Satisfactory however, is EOS-centric.
which GoldSrc and Source are based on
I know, I was there when they got made. I remember.
point is, i need a way to save and close; don't really care about the specifics
I'm slowly working on understanding DTLS, and once I have enough knowledge, I'll try to make a client for the BCON protocol.
There's no way that I know of, that can trigger an auto-save via console however.
The best I could do, at this point, would be to monitor the log, and then when the restart hour comes up - waiting to catch the auto-save, and then shutting down a few seconds afterwards.
Which you already can do, by the way.
Monitor the log, and after it auto-saves - send the termination signal to the process.
except that means it would kill the process everytime it autosaves
Not if you schedule it so that it only runs at the time you want it to restart.
Start it 5 minutes before scheduled restart.
if the last time someone was on the server 5 days ago...
What does that mean?
it's a messy solution that Coffee Stains is better off fixing
should be trivial for them to hook into System Events
Into WHAT now?
(which they should be doing anyway for prudence sake)
my bad, Service Events
Windows raises an event on power loss, on standby, on power restored, on request shutdown, etc.
Yeah, well, I have yet to see a game server that is built like a Windows Service.
as i said, i made a wrapper for Terraria that does these things
all powered by stdin and stdout
And you're not the only one - nssm and srvany exist.
But yeah, I haven't seen a game server that hooks into Services.
yeah, no, my program allows users to do server commands via terraria chat
it's very specific to Terraria
But to be fair, the one you should be making that request to is Epic Games, the developer of Unreal Engine.
Satisfactory devs can only use what is already provided for by the engine.
private void SystemEvents_PowerModeChanged(object sender, PowerModeChangedEventArgs e)
nailed it the first time 🤣
Yeah, sure. What about Linux?
easiest solution might be to code the DS.exe to check for existing instance with the same parameters and pass on any new parameters
that can be made to be platform agnostic
Not really. Linux doesn't have such events.
it must, just somewhere else
well then it's crap and no one should use it 🤣
Not really.
There's no reason for the application to know why it's being shut down.
yeah really, applications have to be able to respond to physical space events...like temporary power
Not really.
The application doesn't care why it's being shut down.
Only that it is.
And saving before being shut down is up to the program in question.
How does a low-power event differ from a scheduled-shutdown event, or power-off event, for the game?
if any running application needs more than a few seconds to save, it must be notified in advance
Yeah, that's SIGTERM.
If the program doesn't complete shutdown in the allotted time, it gets a SIGABRT which terminates it immediately, regardless of what it's doing.
that's what applications need to avoid
Well, that's up to the application.
Do you think Windows gives infinite time for stuff to shutdown?
No.
Which is given as a system default.
I doubt it's an issue for server environments.
dunno, never encountered a situation where it would have been an issue
You just said you did; but I assume that's on a desktop environment.
(where leniency is given to allow users to save their data, on the assumption that there is an operator at the terminal)
yeah, it was on my computer where paint or something gets left open with junk data i had no intention of saving, but it stops the user-requested shutdown indefinitely
anyway, services do support pause/resume functionality
Satisfactory (or any game server) doesn't need pause/resume.
sure they do
Nope. There's no difference between that and shutdown/reload.
time
?
pause/resume happens in <100ms, shutdown/start takes minutes potentially
You do realise that the game server would need to have pause/resume coded into it for that to work, right?
of course
And further, you are aware that it would need procedures that would make it happen, right?
yup
So tell me, how does Satisfactory save a world state that takes 15 seconds to save, in less than 100 ms?
You can't.
pause/resume doesn't save
Then what does it do?
What is different about handling a suspend/resume, from just being STR/hibernated without the app's knowlegde?
That tells me how it does it; it doesn't tell me what it does.
suspends the service so it doesn't take any CPU clocks until it's ordered to continue
Okay, I see now what you're getting at.
I suppose it might be a "nice to have", in very specific circumstances.
Assuming SFDS was running as a System Service.
I honestly have no view on that, one way or the other. I should mention however, that they should also not require it, since installing system-wide services requires elevated privileges.
requires elevated privileges to get network access
Is it possible for an executable to have Service capability without having to be hooked into it?
Requires elevated privileges to install.
oh right, but that's not a problem
install should require elevation anyway to set all the firewall settings and such
I suppose.
Though you'd probably have voices going against you on that one. But eh, life.
Not an argument for or against, I suppose.
i don't think so, i make my services also run as a console program and none of the events get raised unless it is running as a service through Windows Service
Then I suppose it's a viable option. You might want to contact Epic Games with this.
how much of DS is custom code and how much of it is UE?
The executable wrapping their code is all UE.
If you want Windows Service functionality, it needs to go into the engine's source.
i'd honestly just be happy with stdin and stdout 😄
Which, I supose, also needs to go there.
I usually don't give half a fuck, because RCON is typically a thing.
Except when it's not.
Having stdin functionality isn't all that useful in a Service environment, and it's not all that useful when the server is running remotely, necessitating logging into the machine first. And, again, assuming it's not running in the background.
It does open up options, though - you can usually open the FD for STDIN for a running process. Slightly more complicated on Windows, but doable.
if you have stdin and stdout, you can create a separate windows service that manages the server
If you have RCON, you can do the same.
rcon doesn't give you access to stdout tho
You can get it via other means. Many servers don't have stdout mapped, because why.
Logs are much more useful, in most situations.
the service starts the executable and captures stdin,stdout, and stderr and handles all of it
logs are sloppy/inefficient
have to have a separate thread which combs the log for new stuff every x time
stdout, you're constantly reading it
Capturing stdin/out/err on Windows isn't as simple. Doing it under Linux is trivial.
it's super simple in .NET 😄
Of a running process that you didn't spawn?
Because I can already tell you that it's not that simple.
just have to query windows for the process then i think you can get it from there
Nope.
yup
GetProcess(several options here) and once you get it down to a single Process, it's the same as a Process you spawned
Process.StandardError, Process.StandardIn, Process.StandardOut
{
if (e.Data != null)
{
WriteToError(e.Data);
Restart(true); // Stop and don't save
}
}```
example of handling the error data
i buffered StandardOut because apparently the game would overwhelm my application's ability to process it if it was direct
when Terraria spams (especially when loading or creating a world), it can lag behind a bit
i did some searching for Unreal Engine stdin and there is absolutely nothing...disgraceful :C
> as a Process you spawned
That's the keyword here. YOU SPAWNED.
See how I wrote "process that you didn't spawn" here?
no, not
you get the ID, you can grab any process
once you have the process (regardless if already running or started by your own application), it's the same
Can you demonstrate?
Can you please write me a POC that takes the process ID of any process, and reads its stdout?
GetProcessById(INSERT_VALUE_HERE).StandardOutput
You cannot do that; you can only ever use Standard{Input, Output, Error} if you started the process, and even then only from the process object that started it.
This tracks with what I know.
if that's the case, then it's Windows blocking it for security/privacy reasons...arbritrary
can't think of any instance where it's practical to hook one you didn't start though
Except trying to read info/post data to a game server that's running.
From, say, a docker query, or a webserver. Or an arbitrary RCON.
the wrapper program would start the game server
Good luck starting a multi-GB program from a webserver thread. :D
That's not how it works.
who said anything about a webserver?
Well, we're talking about managing a server from external sources, so...
if that was you're goal, you'd have three processes: game -> wrapper -> web
the wrapper filters what's accessible by the web/GUI/CUI frontends
wrapper has to be fast, it can't wait for users
That's the sort of complexity you don't want, and it's certainly beyond the purview of the server developer.
server dev just needs to use stdin and stdout 😉
Which most of them don't do.
hence the problem/complaint
Yes, but it's not a complaint for SF, it's a complaint to the game server developer culture.
yes, laziness 🤣
it's never a requirement, but it makes life hell for ded server operators because not having severely prohibits management automation
No it doesn't. xD
As long as you have some way to manage the server remotely/automatically, it's not an issue.
The issue with SF is that it does not currently have such a thing.
indeed...to be fair though, i hate the fact i gotta run a full 3D program to interact with the server at all
and...that program is installed entirely separate from the DS
so management from the server itself is...unwieldy
The fact that the management program isn't installed with the server is a good thing.
That way, the server maintainer isn't also tasked with maintaining the management program, and the community is free to create however many of their own they wish.
Mods on the DS are being held back, in part, due to the fact that the CLI and GUI clients for server-side mod management aren't ready.
Which is ridiculous. Not only do I know how to manage mods on a dedicated server (so I don't need a client to do it for me), I'm running a headless Linux server - so a GUI client is useless to me.
Notably, that's not the only thing holding mod support back, so I'm just using it as an example.
It's kinda like saying that you can't get the keys to your house, because the free-standing garage isn't done yet... meanwhile, you're sleeping on park benches.
Priorities - is what I'm saying.
trying to get a server working with the beacon port of 10013, the game port of 10012, and server port of 10004, Using any of these ports just says server offline but when i use the server port it spams the console with [2022.12.19-05.20.02:326][ 15]LogNet: NotifyAcceptingConnection accepted from: my.ip:50746
[2022.12.19-05.31.55:724][ 1]LogOnline: Warning: OSS: EOSSDK-LogEOSP2P: NAT Detection failed, unable to resolve host
[2022.12.19-05.31.56:225][ 16]LogOnline: Warning: OSS: EOSSDK-LogEOSAnalytics: EOS SDK Analytics disabled for route [1].
[2022.12.19-05.31.56:593][ 27]LogOnline: Warning: OSS: EOSSDK-LogEOSEcom: Purchase flow is disabled due to overlay setup failure (EOS_NotConfigured).
These are a non-issue.
> game port
> server port
You will need to clarify. I assume "server port" is the Query port?
(in normal nomenclature, there is "beacon port", "game port", and "query port")
Also, please use either -DisablePacketRouting or - if you do not care for IPv6 reachability: -multihome=0.0.0.0. Using either should disable the built-in packet router and allow you to connect.
it jsut says server offlien
invalid name or whatever
You didn't answer my question.
Okay. So your cmdline is essentially -port=10012 -beaconport=10013 -gamequeryport=10004, yes?
just swap port and queryport
And you add your server to the manager using LAN IP and the port 10012, yes?
yep
Again. You are using the LAN IP of your server, correct?
(I assume here that your server is in the same LAN as your gaming PC)
?
its not the same ip as my pc, but for some reason if i use dnschecker.org to check if the ports are open it just says timed out even though they are open
Don't use online checkers, they tend to test TCP only.
Is your server hosted by a game hosting company?
Server side question, I have dedicated server running through a hosting company - and one of my upgradeable options is dedicated CPU thread, is that something that would help with the game? If so, how?
It may or may not help; dedicated threads means other process on a shared hardware don't interfere with vCPUs You're using for Your system (eg. Satsifactory DS). However, modern servers tend to have multi-core CPUs which means lower clock per single core. So it may be not visible at all that You have now "own" dedicated 2,5GHz cores.. DS prefer high cores (5GHz+ range) for heavy loaded servers with 500k+ objects on a map.
My guess it won't change a bit. U7 has more items added, it may be even slower than it was before. So far I see only Xeon W-series as possible suitable server CPU for this app as it has high clock. Or Ryzen/Threadrippers.
That is what I thought, I did hope that maybe they had further optimized it as it did appear to be a issue having to do with packet routing since the performance did degrade linearly (even more so) depending on the amount of players connected.
I'm running 2 DSes on single system with i7-7700k non-OC yet, they're both 160k objects summary, still at tick 30 with 2 players.
My gaming rig with 5900X managed to run it perfectly fine having 500k~ objects with 4 players, tho that was multiplayer as there was no benefit running dedicated alongside the client.
except for some choppy loading at times, but the dedicated would just refuse to stream a huge portion of the objects to players at that point.
The load of entire server does not go higher than 50% when we play. Clearly DS not using available CPU resources so I give it no more than 4 vCPUs.
Generally, 30 is a default TPS that's the typical target. At 30, no player should experience any "undue" delays. Some delays are unavoidable, but in general, 30 should mean a smooth gameplay.
In fact, I think it's a UE default.
btw i have added my findings into the post @ https://questions.satisfactorygame.com/post/62e2e201ca608e080351af06
for added visibility
i have a server working now, but its less than ideal for security as its running right out the WAN vs thru the tunnel - so getting it resolved would be ideal
can someone help me with dedicated server on ubuntu? I tried to start the server as a service but this error comes out:
Job for satisfactory.service failed because the control process exited with error code.
See "systemctl status satisfactory.service" and "journalctl -xeu satisfactory.service" for details.
and the systemctl status is this
× satisfactory.service - Satisfactory dedicated server
Loaded: loaded (/etc/systemd/system/satisfactory.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Mon 2022-12-19 15:05:04 UTC; 54s ago
Process: 1778 ExecStartPre=/usr/games/steamcmd +force_install_dir /home/steam/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 validate +quit (code=exited, status=217/USER)
CPU: 1ms
Dec 19 15:05:04 v33277 systemd[1]: satisfactory.service: Scheduled restart job, restart counter is at 5.
Dec 19 15:05:04 v33277 systemd[1]: Stopped Satisfactory dedicated server.
Dec 19 15:05:04 v33277 systemd[1]: satisfactory.service: Start request repeated too quickly.
Dec 19 15:05:04 v33277 systemd[1]: satisfactory.service: Failed with result 'exit-code'.
Dec 19 15:05:04 v33277 systemd[1]: Failed to start Satisfactory dedicated server.
Can a Satisfactory server utilize more than 2 or 4 cores. If you have 10 cores and 90GB RAM, can you handle 40+ people on a server?
Deploy and give an invite, will see 😉
Ok, which sub group is best to invite as many people as possible?
My one concern would be that if someone were to join and grief it'd be painful for all. Should I just not worry about it?
would it also be chill to invite in the main satisfactory chat, or is that kinda spammy?
Got it, thanks!
A log would be most useful in this case - that tells us nothing.
Set up a password, and then if someone griefs - change it, tell only those you wish to remain. (Instruct them not to hand it out to the griefing party, obviously ;P)
Or...
set up a second server instance, and redirect griefers to that one based on incoming IP... ;-] Let them play with each other.
This is paranoia/curiosity, in the case of the griever changing the password, how can you manually change it in the server files?
You can't. It needs to be done through the Server Manager, as the password is saved to a binary file.
Without giving them the admin password, there's no way for a regular user to change the password.
And if you give out your admin password (why?), well... on your head be it. :D
Oh so there are two password, an admin password and then a normal user password, got it!
hey, how can I use the dedicated servers on an older version?
Can somebody help? -How do i update the dedicated Server to this version?
app_update 1690800 -beta experimental (Does not seem to work)
Already reinstalled the App via Steamcmd
Try -beta public, there's no experimental at the moment.
Server does not find any Update
Then you're either updating to, or launching from, the wrong directory.
where are the crash logs lol
[2022.12.19-19.31.01:711][ 0]LogOnline: Error: OSS: EOSSDK-LogEOSAnalytics: FinalizeInit did not occurr due to Tick happening during shutdown. every time I try to restart the server up
FactoryGame/Saved/Crashes
But this doesn't look like a crash.
That message only really shows up when the server is in the process of a controlled shutdown.
Meaning - it detected an error condition, and aborted.
Windows?
Okay.
something about the world tearing
So read the logs, it'll tell you why it can't complete startup.
And you gave me the logs which I wanted, so you interpreted my question the way I wanted
Doesn't matter much that I made an error in my wording
But thanks anyway
But that's not a crash, so it won't produce a crash report.
As I said, bad wording, but you gave me the logs which was what I was looking for
all fixed tho
What was it?
Port binding, forgot to kill of the first instance
Ah. Yeah, that's a fairly common oopsie. Thankfully nothing destructive.
I thought I checked (ps) for already running ones but I must have miss read
Yeah understandable
Seems fine to me.. but the files won't get updated
And what's your launch command?
Hey, do me a favour and check if you have a C:\Program folder with the server in it somewhere?
ouh... yes
And that, kids, is why we properly quote CLI params with spaces in them.
Replace C:\Program Files (x86)\Steam\steamapps\common\SatisfactoryDedicatedServer with "C:\Program Files (x86)\Steam\steamapps\common\SatisfactoryDedicatedServer" and you're set.
(notice the quotes)
Thanks man... now it is updating....
✓
Hey @blazing halo have you had any exp with running it on 8GB RAM?
It doesn't seem to like it which is why ive given it 16GB but im just wondering if its possible
Sadly, not enough. DS uses lower value until someone connect. At least 9-9,5GB needed for DS process alone.
alright I see, no worries
any ideas as to why its so high - I've had many other servers that have run with 8GB fine, even though they seem to be more intense then satisfactory...or am I wrong, is that normal?
Well, that's festive...
I wouldn't, because at present (since Update 6), the DS requires about 10 GiB minimum. But I've seen others try and get said experience... 🤣
Take cover! Storm incoming 🤣
;]
DS1 & DS2 RAM usage over past 25h
ah so just over 8GB
I'd like to look at commit and residential as well, would tell the complete story. There's also swap use, and I'm not sure if that's DS-related -- but if it is, it brings the total up by a GB higher.
Correct.
Have to implement cron for that.... 😕
Ever since the latest update each time I log into my Server it starts me as a new player. I’ve noticed on my client it now shows me as “Logging into Epic” rather than logged into Epic like I saw previously. Not sure if the two things are related but is suspect they might be.
yea, they are. you can test this by being on a singleplayer world and then signing in or out of your epic or steam account and rejoining
Is there a way to “clean up” my former selves? It’s getting a bit comical. Not to mention my gear tied up in each of their inventories
Kill 'em with the Whacking Stick.
Excellent, put my candy cane basher to use.
Having an issue with my dedicated server where every time I go to either save a blueprint or clear the designer the server just immediately crashes.
Can't tell if it's the saving or clearing that does it, but this is my fifth time trying to save it and each time it just shuts down.
Can anyone help me, my server crashes when I have to create a world, the vm has 12gb of ram and 2vcores
Can confirm, its the saving.
Log?
here's a tip
- do NOT overwrite existing blueprints, always makes a new one, and delete the ones you don't need after server shuts down (or expects to shutdown)
- do NOT delete blueprints with the UI or through file explorer, it'll bug out when you save
- In case if you did not get it, do not try to touch existing blueprints while server is up
here's a sample server log file
so the first three lines is what happens after attempting to save a blueprint
but 3 more lines down, you'll see that server fails to try to read a blueprint that doesn't exist (because that was deleted by Blueprint manager UI)
and then you shall see the critical error message that brought down the server
Hmm.. i might have a blank one thats causing this.
Will have to investigate later. How do I delete a blueprint then if not through the ui or FE?
as I said, don't do it WHILE server is running, do it when you are about to shut down the server or when the server is offline
so you might make multiple versions of the modification, and deletes them when you are about to shut down the server
(or when server is shut down)
Thank you. Will update when i can get to the computer 
Is there a way to force a save automatically before a daily restart?
you could technically have "auto-save when player logs off"
and people will logoff when they see the server restart, triggering the save
Servers just disconnect people without warning for a restart so that wouldn't really work
Yea this is my first blueprint, server just crashes as soon as I hit save blueprint. no other existing ones.
Not editing anything or changing, just tryna save my first blueprint
it should warn player since 30 min prior shut down
all the way until it's about to close
Well mine is broken then
what did you set your auto-save interval to?
like every 5 min shouldn't be that big of an issue if server restarts
I can't make sense of this, But i believe this is the correct one.
I believe this is the related section to when I try to save the blueprint
so you rented a server?
ok
[2022.12.20-00.32.32:514][859]LogCore: === Critical error: ===
Unhandled Exception: SIGSEGV: invalid attempt to write memory at address 0x0000000000000003
[2022.12.20-00.32.32:514][859]LogCore: Assertion failed: itemsToWriteOut.Num() > 0 [File:D:/BuildAgent/work/78a794e88763017d/UE4/Games/FactoryGame/Source/FactoryGame/Private/FGSaveSession.cpp] [Line: 1268]
Found circular dependency between saved actors OR a dependency was missing, see log for more info if not a shipping game
looks like it's your rented server's side issue
Ugh. I was hoping that wouldn't be the case
a warning message before shutdown would be amazing but afaik dedi servers dont have a "built in" restart function, it's more so handled by the server it's running on
eh, yes they do
I'm running dedicated server myself
it will auto restart everyday
and before it did, it will send a global restart message to everyone in game
(on the right hand side of screen)
something like the server will restart in X mins
oh interesting, I knew a client side multiplayer instance had this feature but didn't know it was also on dedi
then I can remove my schedule on pterodactyl, is there a way to tell when the restart would happen other than minutes before?
I mean if you have auto-save enabled, you shouldn't worry that much
guess i could lower it from 10 mins but the built in restart is a relief
how do I remove presents
This is a known issue with the game. We're all waiting on a fix from CSS.
hello, a friend rented a dedi server, and we would like a discord bot that can display at least the server status with online players, does anyone know if there's something like that out there? i already did a quick research, but unsuccessful
Quick question, how stable are dedicated servers for experimental?
I havent had any problems with just 4 players
Follow up, I have a train engine with one of my “former selves” trapped inside due to a unexpected reboot. I can’t enter the train engine and I can’t disassemble it either. Any suggestions how to free up that engine?
Only 1 server crash in in the last month, and even with that just starting it back up again got back to a recent save without issue.
Experimental is currently not a thing. If you meant "the (considered experimental) dedicated servers", take care - it can mean multiple things, and asking about "servers in general" may be a better idea.
I mean it's not suggested 🙂
?
You can run experimental dedicated servers just "fine" but you need to manage what you expect out of it
just like running the game in the experimental branch on your pc, but with the server side and what that entails
Okay, we need a clarification. When you say "experimental" do you mean servers in general, or servers for the experimental branch of the game?
the former doesn't really matter, but the latter is what we're talking about.
In that case, there currently is no experimental-branch DS.
EA and EX serve identical content.
yes, there is
the build numbers need to match or else you can't join... the builds may be identical, but you have to run the experimental flag on your DS if you want to join with a Steam install on your PC that's in experimental
steamcmd +force_install_dir ~/SatisfactoryDedicatedServer +login anonymous +app_update 1690800 -beta experimental validate +quit
I can't speak to whether the actual contents of the builds are any different, but you gotta get that 'experimental' flag in there if your PC build is set to it, otherwise you get a build mismatch and can't join
That is incorrect, on both counts.
I just ran these commands:
steamcmd +force_install_dir /var/NVMe/COMPARE_SF_SERVERS/EX +login anonymous +app_update 1690800 -beta experimental validate +quit
steamcmd +force_install_dir /var/NVMe/COMPARE_SF_SERVERS/EA +login anonymous +app_update 1690800 -beta public validate +quit
diff -rq /var/NVMe/COMPARE_SF_SERVERS/EX /var/NVMe/COMPARE_SF_SERVERS/EA
The result was a difference in SteamCMD's appmanifest file, and that's it. Literally no binary difference between EA and EX.
Further, I switched my Satisfactory to Experimental (STEAM didn't download anything), and I just joined my EA server with no issue.
@frosty gale
well, that's interesting. If I download the Steam version (like after an update) and don't re-pull the binaries on my DS, I get a version mismatch
I'm here to contribute and not argue
Then that might indicate an issue on your machine and/or server?
Because it should not behave like that.
And we're glad to have you. But please contribute factual info. :)
I hope you have a great day
And you.
This is not currently possible, as far as "online players" goes. Without performing the DTLS handshake and logging into the Beacon protocol with the server's password, the only information that is made available is: the server's build number, the server's beacon port, and the game state (idle = no world loaded, loading = loading a save, playing = actively running a world).
You can disable seasonal events - there's an option for it in the game's menu; as for the server, there is a switch for it you can configure via the server's console (FG.DisableSeasonalEvents 1). I think it goes into an .ini file somewhere, but I'm not sure which one (likely ServerSettings.ini? need to check). The setting requires a server restart.
Be aware that this will disable the event along with everything it's connected to - the raining gifts, the MAM research tree, the gift-producing trees, the advent calendar, and all associated recipes.
Has anyone had any issues with the game crashing recently as well? I have never had this issue before until the most recent update.
Can you provide some crash reports/logs of said crashes? The game can be crashed by many things.
Knowing whether it's the game server or client that is crashing might also be useful.
And yes, there is a number of (likely unrelated) bugs that were introduced (or exacerbated) in Update 7.
Okay, that's a GPU-related client crash.
The exact reason is also provided: with error DXGI_ERROR_DEVICE_REMOVED with Reason: DXGI_ERROR_DEVICE_HUNG
Your display driver crashed.
Interesting. I know a few other people on the same server are having the same issue. I appreciate the insight
Wiping and reinstalling the display driver may be of use here. Or the game might be calling the API in a weird way.
I have yet to run into this crash, myself, but I've seen two other people with issues like that.
One was seemingly helped with a DDU driver wipe + reinstall.
The other turned out to have a power supply that was laughably underpowered for their GPU (massively underclocking their GPU/locking down the 3D capacity resolved the issue temporarily).
I'm beginning to think that the latest version of the game puts interesting strain on the GPU, and is "unmasking" builds with underlying issues that went undiagnosed for potentially years.
I have been playing for 150 hours so far and have not come across this issue before which is why I am perplexed. The issue started only today and it was fine last week when the update first came out. I will check my drivers for the GPU and see if their is any updates
All I can say for sure is that I'm not seeing this issue, and I'm running old GTX drivers on a 1080.
Interesting, I am running on a 2060.
What you can do is start a new world on the server, and then not use the blueprint designer at all. See if the crashes happen again.
(because I wouldn't be surprised if it was BP-related, somehow, assuming it's a game bug)
That could be it. Didnt experience this issue at all until we put that item down
BPs should still be considered experimental, I believe.
The devs were in a rush to get them out before the holidays, but it honestly looks like they rushed it a little too much.
Thanks for the input
We removed the blueprints and it solved our issue
So it's BP-related after all. Interesting.
LogNet: Warning: UNetConnection::Tick: Connection TIMED OUT. Closing connection.. Elapsed: 30.01, Real: 30.02, Good: 30.02, DriverTime: 85811.06, Threshold: 30.00, [UNetConnection] RemoteAddr: [::1]:43168, why IPv6? why disconnection? uh,eh 😕
Why not -multihome=0.0.0.0? 😂
cause FactoryServer.sh -multihome 10.0.x.x
Are you missing a = there?
Because putting an IPv4 address there will disable IPv6. Since you still clearly have it enabled...
LoL. Every f...... time. One char. One letter. One number. AHGHH
we can't pickup slug on DS 😦
Any slugs, or just a few select ones?
close to border of the map, just specific yellow slug
If you're having trouble picking a specific slug up - it's a bugged slug. There's a number of them.
That the remote end didn't reply within 30 20 seconds, and so the game decided that the connection must be dead.
Is the server still running afterwards?
thx, re-adjusted, needs re-auth of admin
Yeah, the game sees it as a new server, probably.
Without a decent protocol description, I can't say more.
DTLS transmission goes over all 3 ports or just one? I can't get my NAT rule to catch this traffic.
steamclient.so
with error:
steamclient.so: cannot open shared object file: No such file or directory
[S_API] SteamAPI_Init(): Loaded '/home/container/.steam/sdk64/steamclient.so' OK. (First tried local 'steamclient.so')
[2022.12.20-23.25.28:616][222]LogSteamShared: Warning: Steam Dedicated Server API failed to initialize.
[2022.12.20-23.25.28:617][222]LogOnline: STEAM: [AppId: 0] Game Server API initialized 0
[2022.12.20-23.25.28:617][222]LogOnline: Warning: STEAM: Failed to initialize Steam, this could be due to a Steam server and client running on the same machine. Try running with -NOSTEAM on the cmdline to disable.
[2022.12.20-23.25.28:617][222]LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
[2022.12.20-23.25.28:617][222]LogOnline: Warning: STEAM: Steam API failed to initialize!
[2022.12.20-23.25.28:617][222]LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
[2022.12.20-23.25.28:617][222]LogBeacon: Beacon Join FGServerBeaconClient STEAM:(STEAM)076561198798869760
[2022.12.20-23.25.28:617][222]LogReplicationGraph: Warning: No Replication Lists were returned for connection
[2022.12.20-23.25.28:620][223]LogReplicationGraph: Warning: No Replication Lists were returned for connection
[2022.12.20-23.25.28:653][224]LogReplicationGraph: Warning: No Replication Lists were returned for connection
[2022.12.20-23.25.28:687][225]LogBeacon: Handshake complete for FGServerBeaconClient_2147481459!
[2022.12.20-23.25.31:896][321]LogNet: UChannel::ReceivedSequencedBunch: Bunch.bClose == true. ChIndex == 0. Calling ConditionalCleanUp.
[2022.12.20-23.25.31:896][321]LogNet: UChannel::CleanUp: ChIndex == 0. Closing connection. [UChannel] ChIndex: 0, Closing: 0 [UNetConnection] RemoteAddr: 85.216.65.69:59557, Name: IpConnection_2147481466, Driver: IpNetDriver_2147481474 IpNetDriver_2147481474, IsServer: YES, PC: NULL, Owner: FGServerBeaconClient_2147481459, UniqueId: STEAM:(STEAM)076561198798869760
[2022.12.20-23.25.31:896][321]LogNet: UNetConnection::Close: [UNetConnection] RemoteAddr: 85.216.65.69:59557, Name: IpConnection_2147481466, Driver: IpNetDriver_2147481474 IpNetDriver_2147481474, IsServer: YES, PC: NULL, Owner: FGServerBeaconClient_2147481459, UniqueId: STEAM:(STEAM)076561198798869760, Channels: 3, Time: 2022.12.20-23.25.31
[2022.12.20-23.25.31:896][321]LogNet: UChannel::Close: Sending CloseBunch. ChIndex == 0. Name: [UChannel] ChIndex: 0, Closing: 0 [UNetConnection] RemoteAddr: 85.216.65.69:59557, Name: IpConnection_2147481466, Driver: IpNetDriver_2147481474 IpNetDriver_2147481474, IsServer: YES, PC: NULL, Owner: FGServerBeaconClient_2147481459, UniqueId: STEAM:(STEAM)076561198798869760```
Okay, so these two tell me very little. It looks like a normal handshake exchange.
Anything further down the line?
How much RAM?
@cyan epoch
Okay, that kinda sounds like more than enough. So... does the log say anything else? Because so far, it kinda looks normal.
Non-issue.
Ok
Does Ptero say anything else?
Nop
Okay, so the cmdline is subtly wrong: ?listen is unnecessary, and then you have -Port=15777 -ServerQueryPort=15777. They can't be on the same port. One of them - the Game port (specified via -Port) gets silently incremented by 1 to 15778.
(yes, I agree that the server should fail instead of silently doing stuff, but that's how they coded it)
If you didn't set up port 15778 to allow connections, that's where your failure is. Change one of the ports.
I use seperate ports
okk its to much to read i get tire how i use the dedicate server what i have to put it ??
You're missing the third port, the Game port. Should be default 7777, yours is set to 15777.
It says so in your log: LogInit: Command Line: ?listen -Port=15777 -ServerQueryPort=15777 -BeaconPort=15000 -multihome=0.0.0.0
Since the Query port is bound first, the Game port gets auto-incremented (because 15777 is already in use), and ends up being 15778. That is also what your error ^ here shows.
And so, you tell the game to launch with:
- Query = 15777
- Game = 15777
- Beacon = 15000
What it actually launches with is:
- Query = 15777
- Game = 1577**8**
- Beacon = 15000
Please read the Wiki page linked in this channel's topic.
How would one disable the FICMAS event on a dedicated server?
Please see section 8 "Console Commands" on the Wiki page linked in this channel's topic.
Thank you! I was wondering if it was client-side or not.
No, it's host-side (the host in this case being the server).
I keep having the issue if when I remove too many objects at the same time, the server crashes. Does anyone has a workaround?
Another rain-related (?) crash, it seems (AFGRainOcclusionActor::ResolveTracedEntries()).
Rain related? 🤔 It only happens if I destroy for example a lot of foundations at the same time. The same happens for other players. It doesnt happen always but enough that its starts to be annoying
Yes, it seems to be a crash where the rain occlusion function fails to calculate because things were either added or removed without it "noticing".
Ooooo yeah that makes sense
That's what the error says, basically - array index out of bounds.
Imagine this series of steps:
- game decides to calculate rain occlusion
- a list of objects to calculate against is built
- the calculation is called
- in another thread: player input is handled, an item that happened to be on the aforementioned list gets removed from the world
- the calculation runs
- it cycles through the items it knows about
- it reaches an item that's been removed
Crash.
This is why multithreading is difficult - you could have your data altered in the middle of doing shit by another thread. This is why semaphores and critical sections exist.
(the former control which thread gets to access what data at any time; the latter only allows one thread and one only to access a specific section until it's finished)
From the syntax CSS is using, I'm assuming that there's enough time between "tracing" and "resolution of traced entries" to allow this to happen.
So it has something to do with that the Server thinks there is Rain but my client doesnt have the rain because the rain is still scuffed on the Dedicated Servers ?
Kinda sorta, yeah. It seems the dedis calculate the rain effects, but it's never passed onto the client (either not yet, or not correctly).
Another user with this crash observed that these crashes tend to "cluster" for everyone on their DS, which grants further credence to the assumption that it's rain-related. Rain comes and goes, and their crashes also come and go.
Okay that makes sense 👍 So there is no way currently to know when its rains so it will just continue to happen until they work on the DS again?
It seems that way, yes.
To be honest... if they could include a switch to disable rain on the DS... that would certainly offer a workaround.
Yeah I was just thinking that
It wouldn't fix the underlying issue, but it would allow people to not have to encounter the associated bug.
Yep, it would pretend them having the crash
which is good
well better then a crash
🤣
Since it doesn't work right yet anyway, there'd be no perceived loss of functionality. So... acceptable.
Anyway, need to bounce. It's already 4:30, and I have to get up for work in 4 and change.
is there an easy way to prevent the server from going offline after like 2 mins of inactivity?
would be nice to be able to keep it on 24/7, especially cause i have the option for it to keep running without players on
That's not normal, server stays online. Are You sure service is working correctly? In game menu indeed servers go offline due inactivity so simple refresh will cause reconnect to get new status of the server.
not sure i understand your question
also would it show it going offline in the server manager window?
There's inactivity timeout in game client when all servers go offline in game menu. But once connected it should be working stable. Any chances Your save is big?
is is it possible to transfer items from player 1 to player 2
In-game, you can either drop items or move them to a container.
@wintry meteor Where are you hosting your server?
its a brand new save, but it also did this with the old,, larger save
on my home server in my basement
How much memory does the server have available for Satisfactory DS?
Then I will need to see some logs.
where can i find those?
(note that 10 gigs is on the low side for this server)
FactoryGame/Saved/Logs. Also check FactoryGame/Saved/Crashes.
im trying to give it more but the server is a bit unhappy atm
reading this is so annoying
it doesnt crash
it just shuts itself down
Is this a complete log from start to this "shutdown"?
yep
There are no shutdown messages present. It either crashed, or was killed by the OS.
I'm thinking - the latter.
i think im gonna try wolveix/satisfactory-server, but if that doesnt work idk what to do
Launch the server manually and look at the console output, see what's going on.
a lot of yellow
when it goes down nothing goes into the console though
it still thinks its running i guess
Is it running?
wdym
As in, is the process still there, consuming RAM and CPU?
So, whatever happens, it's probably not related to the server itself.
If it's still there and running, it looks like it's doing exactly what it's supposed to.
lemme grab a screenshot of what it looks like inside of sf
Sure, go ahead.
??????
so the client is just disconnecting
ill wait the 2 mins and show you what i mean
well it still hasnt done it
maybe the problem is just on launch?
im so confused lmao
wait no it did it
but when i reload the game its there again
Hmm...
Let me see the behaviour of my own.
Yes, it does seem to stop sending updates after some time. My timer shows 5 minutes.
looking at these messages it is indeed 5 mins
It continues to run, though. If I click away and back (I have my EX server added as well), it reconnects and shows the status again.
for me it does not do that
So... I think it's an idle connection timeout.
wonder if theres a way to prevent that
I don't think so, and - why would you want to?
so i dont need to restart every time i idle a lil too long
Add a bogus server, click to it, and click back.
lol gimme 5 mins to load up and try that
Like I said - I clicked on my (offline) EX server, then clicked back - and it reconnected.
Now I'm waiting for it to disconnect again, so I can see if I can coax it into reconnecting if I close and reopen the Manager.
Huh, seems I can't. Bogus server it is, then.
yep
The damn UI needs a refresh button.
(and needs to not act dumb besides; if your server has issues connecting, it'll decide it's dead at some point, and only a game restart will make it reconsider)
(or, well, a del + re-add)
any more support for dedicated servers would be nice tbh
What sort of support are you missing?
just like general bug fixes
Oh. Well, I suppose... but the game is EA, they're rushing to get the game out the door. They did say they'll do a DS pass or two when they get the game polished a bit more.
i remember playing towards the beginning of the pandemic
i think
ah ok a bit over a year actually it lookks like
hey, is there a console command to join a dedicated server? or a command line switch to do so? (i'm on linux running the game manually through wine, not that it likely matters) I have a container running the server, so i know the ip address to join
actually, documentation on cli options or console commands would be great if anyone had it
btw: anyone know from which version it got network? i guess it always had it from the start...?
must be at least 3y ago
Don't think there is one, if I'm being honest... It would need to do a number of things in one step - contact the Query, get the port, contact Beacon on the port, handshake DTLS, login with the password, check if server can be joined, get the game port and acces token, and finally join.
Why? Is clicking in the Manager too much work? :D
I mean, I know UE games can do this, since ARK and DnL can do it just fine (and probably Conan, too). Both run unencrypted, however.
i understand, though much of this isn't needed for first joiner i guess (who would be admin)
i'm assuming the dedicated server needs to be managed in-game
i just ran the container, i haven't done anything yet
Yes. And a freshly-started server also needs to be "claimed" - named, passwords set up, game prepared and started.
Can't be done automatically.
the question was for automation purposes and not having people play local games on this lan
Once you have the server added in the manager and have authenticated with it - it'll remain in the manager, and you can join it if it's up.
For first-time setup, that needs to be done manually.
Oh, wait, it needs to be claimed from the outside? cause i'm trying to do this on a real lan; ie: no outside network
No, it needs to be claimed by an admin.
The client however requires the Internet.
One of those always-online games.
It can run offline as long as either STEAM or EPIC allow it, but they have a limited number of offline runs. DRM.
Notably, if you run offline, you will spawn in a new body each time you connect to the server, as the game uses Epic Online Services to provide a persistent ID for players. Without it, you're a "new" player each time.
Sure.
the claiming is then via the server manager, i assume?
I still need to update the client game, cause it doesn't have server manager on the main menu; but updating on place where there is no internet is annoying
my client is through epic, but i think the docker container uses the steam version, i hope that that's not gonna be a problem
Talking to do with the server, any server side commands I can issue
Hence why I asked in this channel
oh yeah, is there a console command documentation, btw?
Are there any optimisations you can do to save a bit of resources server side (or preventing possible crashes)?
Non-issue; the server is platform-agnostic.
No such commands exist, no.
Not really, no.
Not that I'm aware of, no.
You could not use the blueprint mechanic - that should save you some crashes. But that's in-game.
Okay,
am I right in saying this means its runout of memory?
I have 16GB+4GB SWAP, not sure why it's doing this
You are not. Please provide the call stack, and I'll tell you what caused that crash.
Where can I find the call stack?
In the log, below the very message you screenshotted.
Or even on the same screen, below the message you screenshotted.
question trying to make a server for satfac and its failing
can send logs and all i open my port on firewall and the sever at first in the cmd was running open the game and cant connect so restarted server now its falling apart and aborts and closes
Can someone help me. I am having trouble understanding why my friend can't join my server the server is hosted on dedicated machine not locally I am able to join it, but for him it keeps saying "Server name pending NotAuthenticated". Thanks in advance.
Are you on Windows?
Where is the server hosted?
Its hosted in UK
In relation to you, and your friend.
Possible answers include:
- in my network
- in his network
- on a machine on the Internet unrelated to either of our networks
I ask because I don't think I fully understood your initial report, so I want to clarify this.
its probably related to the server it self.
since we tried another game and he was able to join that without any problems
Could you please answer my question?
To clarify: I don't give a hoot if it's hosted by a third-party game hosting service. The devs have a "want to help, go ahead" policy in relation to those.
The worst that can happen is, I may say "nah, don't want to mess with that".
I'm not sure if I understand what you mean here. Sorry
Is the server running on a PC you own connected to your home network,
is it running on a PC your friend owns, connected to his network,
or is it maybe running on a PC that neither of you own, on the Internet somewhere?
its hosted on a PC that neither of us own.
Okay. So it's a third-party-hosted server, and while you can connect to it, your friend can't at all. Is that correct?
yea
Does he have the same information you do? As in - IP, port number, password?
yea but he never got the option to put the password in.
yea
Okay, so that's another issue that's knocked out.
(if the port was different, he may have been trying to reach the wrong server by mistake)
I could use a log of his.
Where can he find it?
In %LOCALAPPDATA%\FactoryGame\Saved\Logs.
I would like one from when he tried connecting to that server.
You are welcome to remove any information you deem sensitive, but CLEARLY MARK that something has been removed, and please use a format that is similar, e.g. "C:\Users\MyAwesomeRecognizableName\Something" with "C:\Users\NAMEREDACTED\Something" and IPs from "123.123.11.22" with "###.###.###.###" and so on. If something's been removed, I need to know that something HAS been removed, and I'd like to have an idea of how it may've looked like.
Could you be more specific with "can't connect to it"? What do you mean exactly, that he can't join the game? Or that he can't make a connection to the server it self?
He seems to be unable to connect to the server itself. His display has "Server Name Pending" and "Unauthenticated", so he hasn't pased the first stage.
There are generally two issues I can think of here: the internal router being a shit, or the DTLS handshake bug.
The former has a solution; the latter does not.
I dmed you the log file
Yes, I saw. I'll need a log that has connection attempts in it.
Nvm, seems things are working now.
So, can you tell me if you're on Windows? With the server, I mean. cmd seems to imply that, but I want to be sure.
yes
sorry was out an about
On Windows, the little black CMD-like console window disappears shortly after the server starts - but the server actually continues to run in the background. If you assume that it disappeared because the server crashed or shut itself down (which is a valid assumption!), you may try to launch it again - at which point it will actually abort, because the ports it needs to use will already be in use (by the server instance that's running, though you're not aware of it).
The easiest way to prevent this, is to keep the black window. You can achieve this by launching the server with the -log parameter - this will instruct the server to retain the console window.
This time, I was doing something else. We're even. ;]
You can easily check if the server is running - just open the Task Manager and find anything with a name like FactoryServer.exe or beginning with UE4Server. If you find any - that's the server, doing its thing.
The last two lines in the server log you sent me (via DM), these specifically:
[2022.12.22-01.47.32:332][ 1]LogOnline: Warning: OSS: EOSSDK-LogEOSP2P: NAT Detection failed, unable to resolve host
[2022.12.22-01.47.32:598][ 9]LogOnline: Warning: OSS: EOSSDK-LogEOSAnalytics: EOS SDK Analytics disabled for route [1].
- these warnings are useless as-is, but many of us use them (and a few others like it, like EOS shop errors) as indicators that the server has finished startup and is ready to accept incoming connections.
STEAM API warnings/errors are incosequential, as well. The server complains a lot about the files being missing (even when they're exactly where it expects them to be; tested), but never actually does anything with them.
In short, the server is configured in such a way that it makes use of neither STEAM API nor EOS API. The warnings are there because these handler components are left unconfigured or "neutered", and the complaint is more about these not being in a usable state should the developers want to use them, and not about the server actually needing them for anything.
tl;dr -- your server fooled you into thinking that it died, but it's still running; any subsequent launch attempt fails because there's one running already
Yay.
Do mods work on dedicated servers?
In theory, yes. In practice, no.
What if it was just the Really Simple Signs mod?
Does it list SML as a dependency?
No
Really?
Yeah, it does list SML as a depndency. I guess they don't show it, because all mods on the FICSIT App depend on SML to work.
There, see?
Long story short: SML isn't DS-compatible, and any mod that requires SML to work (read: all of them) will fail without SML.
(also, I understand that the compiling toolchain for the DS isn't fully ready, so there's also that to deal with...)
(and the Linux side of things seems to be dead in the water...)
I see
I have one other question. I dropped a stack of items on a node by accident and I can see it but can't pick it up. Is there a way to get it back?
Nope.
F
It's why I always lure critters away, so that they don't drop their biomass on 'em. I hate to waste.
Hey. Recently I realized that on my dedicated session buildings are not constructed right away. Mainly belts, conveyor lifts. After the 2nd click, they remain as hologram. If I build an other one, that will also be the same. But after like 6-12, they suddenly appear as correctly built. So it seems like building is queued up. I managed to associate this "building only the hologram" moment event with some log entries from the server console (screenshot). Strange, because this started only recently, so earlier everything was built instantly. I wonder, why this is happening. Any idea? I really hope its not because we built too many things. Honestly our world is not that crazy, we havent even finished the full unlock. I have 16GB ram (win10) in the PC that runs the dedi server, and Im continously monitoring free ram and it seems fine. 13GB/16GB. Is this just a "normal" dedi server bug, or its something I can prevent somehow?
Bit of a known issue... restarting the server usually helps.
There's probably a QA post up about it already.
oki. Thats fine, I just thought, I can do something about it, like a workaround. Because it started only recently in the session
I thought I did something "wrong"
No. It's a bug.
so... server version and game version don't match... it looks like the container with the dedicated server is too old for this
Which container? Are you using the pterodactyl image? Regular docker image?
As long as it can launch and access the Internet, it shouldn't be too old. steamcmd doesn't rely on package managers, either, so that's not the issue...
The dedicated server won't even install for me, just says "Disk write error" every time
oops
THANKS
also is this normal or does this mean something is wrong with the ip its using
Im trying to run my own dedicated server I have port fowarded the ports 7777,15777,15000 udp the default ports in my router for my server pc and did the firewall for the same as udp and when the server is up and running my mates cannot see the server it just says server pending offline they put in my public ip which I gave them with the default port 15777 and it doesn't show up. any idea why hope this is the right chat.
i did add multihome with 0.0.0.0 to make sure it found something even removing that it doesn't do anything
top image is port foward in router all three are UDP
and bottom image is the ipv4 of the server pc which is the same on the router selected ip
Is the firewall open / are the processes excepted correctly on the server host PC? By the sound of it, it sounds like Windows, which definitely has a bunch of extra steps in that regard
i disabled the firwall
firewall*
to make sure and it didnt change anything
i also did add each one to the firewall as udp in inbound and outbound and nothing same thing
Check that your external IP is the same as the one on your router (Google whatsmyip). Do you host any other services with port forwarding?
You might be double-NATted.
no i dont host any other services with port fowarding
If your router’s address and the address you see from whatsmyip are different, you won’t be able to host anything.
routers address you mean like the default gateway when you do ipconfig /all in cmd and it shows default gateway with ip
No, the internet address on your modem/router. Where you configured the port forwarding
this place
Yeah, that’s your router, I assume?
my brain is fried atm uh that ip is my servers pc ipv4
Ok, so. You have a PC on your local network that’s hosting Satisfactory. For anyone to reach it, you need port forwarding rules. The port forward, forwards traffic from the Internet to the relevant IP address on your local network (in this case the PC running the game.). The rules you screenshotted above, where are they configured?
one sec
Yes what?
so you are asking where are those above are configured yes? they are in virtual server in wan if thats what your asking for
Ok, good. So that’s on the router itself, not your PC. Somewhere else on that web interface should be a page that shows the IP address of the WAN interface.
ok
We need to know if the Router’s WAN IP address is the same as the one you see from whatsmyip.
Np
it doesnt show the wan ip i think
What’s the model of router?
asus RT-AX55
Please hold…
np
Main menu, at the top ‘quick internet setup’. Under that, go to Router Setup. You should see WAN IP there.
ah i see it now I am blind
Np, those menu systems are a maze.
ok so what am i checking that the wan ip and the public is the ip the same?
Correct. Check that wan ip address against what you see from whatsmyip
they are different
Ok. Unfortunately, your ISP is using something called Carrier Grade NAT. You won’t be able to port forward or host anything on your LAN.
that sucks I changed to new ISP my old did let me
because my old one was pretty bad
You can sometimes call them and tell them you need to host stuff. Often they can change your config. Depends on the ISP though.
yeah i could try i went with origin if you know who they are
Aus?
yea
Dump them, go Aussie Broadband. AB are fantastic.
origin is with aussie broadband
also i live in the middle of nowhere lol I think they don't do plans where I live they have 3rd partys
ill have a look tho to check
Well, it’s probably worth giving them a call anyway.
Main thing is, you were configuring your network correctly 🤙
yeah ive configured other games before so i was going what am i doing wrong for like 2h
CG-NAT is a PITA.
they do here
but i have to ring them
they dont do over website lol
alright will have to switch next year
thanks for the help tho
have you tried ipv6?
Assuming the ISP supports it, there'd have to be a 4to6 tunnel somewhere on the way for it to work.
ok i work so long with ipv6 that i assumed it is rolled out with all isp after 24 years or 5 years after rfc8200 but it seems my assumption was wrong
Yeah, the coverage is abysmal really. My ISP, when asked (last question was sometime November 2022?) says they're working on it. They've been "working on it" since 2012.
Okay, maybe not so abysmal as I thought... It looks like it's just shy of 40% world-wide, according to Google.