Closed dragonis41 closed 1 month ago
Hi @dragonis41,
Thank you for your interest in this project and for providing lots of information in this issue.
You should not need to alter the SATISFACTORY_BOT_LOG_LOCATION
path in the docker-compose.yml
file. It just has to match the container path.
As your FactoryGame.log
file is available on the host at /home/satisfactory/satisfactory-server/gamefiles/FactoryGame/Saved/Logs/FactoryGame.log
, your docker-compose.yml
should look like the following. I have just reverted SATISFACTORY_BOT_LOG_LOCATION
to match the container file mapping:
services:
server:
build:
context: .
environment:
NODE_ENV: production
SATISFACTORY_BOT_DB_PATH: /usr/src/app/db/db.json
SATISFACTORY_BOT_LOG_LOCATION: /home/steam/SatisfactoryDedicatedServer/FactoryGame/Saved/Logs/FactoryGame.log
env_file:
- ./.env.local
volumes:
- ./docker-volumes/db/:/usr/src/app/db/
- /home/satisfactory/satisfactory-server/gamefiles/FactoryGame/Saved/Logs/FactoryGame.log:/home/steam/SatisfactoryDedicatedServer/FactoryGame/Saved/Logs/FactoryGame.log:ro
restart: unless-stopped
Hopefully this will fix your issue. If you need to debug the log file processing further, here is some information to help you:
LogNet: Login request:
, LogNet: Join request:
and LogNet: Join succeeded:
. The lines should contain a combination of Name
and userId
attributes and the bot will store a mapping between those values. The regular expressions that match those lines can be found here.LogNet: UNetConnection::Close:
.
The line should contain a UniqueId
value and the bot will look up the corresponding player name using the mapping that was stored when the player joined. The regular expression that matches that line can be found here.Hey,
Thank you for the detailed response !
I reverted the SATISFACTORY_BOT_LOG_LOCATION
line with the composer you provided but I still have the same issue.
In the previously sent SF log file (a connection and a deconnection) I don't see any LogNet: Join request
, LogNet: Join succeeded
or UNetConnection::Close
, and I think this is my issue :thinking:
Are you aware of a potential log level option in the SF server ? The -log
argument is On by default and this is the only one I see.
Update : It's fixed now :) The problem came from the Satisfactory server which was deleting the logs for LogNet !
Thanks again for your time and your work
Hello,
I am trying to setup your Discord bot but I struggle to make it to work. Similar to #9 but it didn't fix my issue + I use Docker. The Discord bot's status don't update either, it always stays at
0/8 player connected
(seems logic if it doesn't detect player connection).For the server
wolveix/satisfactory-server
with Docker./home/satisfactory/satisfactory-server/gamefiles/FactoryGame/Saved/Logs/FactoryGame.log
Here is my server's
docker-compose.yml
:For the Discord bot
Here is my
.env.local
file : Note : I redacted privates information between[ ]
And the
compose.yml
file : Note : The volume point to the file created bywolveix/satisfactory-server
Docker image, and I can read the file when I log inside the Discord bot container and try to readhome/steam/SatisfactoryDedicatedServer/FactoryGame/Saved/Logs/FactoryGame.log
.Behavior :
Also, something is strange in my SF server's logs :
When someone connects, I only see
And when I disconnect I don't see any log except that the server is saving the game (because in the SF parameters it's set-up to do so). So I don't know how the bot is supposed to know if a player disconnects :sweat_smile: . Also, This is after a server startup. If I reconnect again, I don't see my username :
And same thing with disconnection :/
Do you have any clue how I can debug this ? Thanks for your time spent on this nice project !