norimicry / stardew-multiplayer-docker

Run a Stardew Valley Multiplayer Server with docker-compose
102 stars 26 forks source link

[REQUEST]: Local files documentation(Linux Steam) #20

Closed ygandahvn closed 7 months ago

ygandahvn commented 7 months ago

Could anyone add a documentation on what changes need to be done to make it work with steam files, or simply put a path that files needed to start are located? Game is installed via steam(snap). Path seems to be somewhere around snap/steam/common/.local/share/Steam/steamapps/common/Stardew\ Valley/

ygandahvn commented 7 months ago

Or maybe let me know the contents of start.sh, since that seems to be the part I am missing. My best guess is that it starts a game, and then some type of logger or something, will try to find a way to make it work.

u-r-s commented 7 months ago

I"m not sure if it"s allowed to post the content of start.sh from GOG -> so I won't do it.

it just starts the file Stardew\ Valley and exports ENV variable TERM=xterm

the problem with the steam version will be DRM.

just try to start the Stardew\ Valley file in terminal and you will see the check of the steam client.

ygandahvn commented 7 months ago

Managed to do it.

  1. Copied everything from snap/steam/common/.local/share/Steam/steamapps/common/Stardew\ Valley/ to docker/actualGame (Copied from my pc to dedicated server, I guess you do not have to copy anything if you are hosting on your PC, symlink or direct docker cp would work just fine)
  2. In docker/Dockerfile added COPY actualGame/ /data/Stardew/game/ right above the copy mods part
  3. In docker/docker-entrypoint.sh changed bash -c "/data/Stardew/start.sh" to bash -c "/data/Stardew/game/StardewModdingAPI" (Keep in mind I had SMAPI installed on my PC, so running mods aint a problem)

Too lazy to make a pr for the readme file. :)

ygandahvn commented 7 months ago

Pretty sure last comment sums it up, feel free to add it to readme and reopen a ticket if you feel like something is missing.

norimicry commented 7 months ago

Managed to do it.

  1. Copied everything from snap/steam/common/.local/share/Steam/steamapps/common/Stardew\ Valley/ to docker/actualGame (Copied from my pc to dedicated server, I guess you do not have to copy anything if you are hosting on your PC, symlink or direct docker cp would work just fine)

  2. In docker/Dockerfile added COPY actualGame/ /data/Stardew/game/ right above the copy mods part

  3. In docker/docker-entrypoint.sh changed bash -c "/data/Stardew/start.sh" to bash -c "/data/Stardew/game/StardewModdingAPI" (Keep in mind I had SMAPI installed on my PC, so running mods aint a problem)

Too lazy to make a pr for the readme file. :)

Yup I plan on adding some generic instructions similar to this for GoG/Steam. Something along the lines of "put game files in x directory" with a similar copy command in the docker file, just haven't gotten around to it yet.

pinduzera commented 7 months ago

I was able to recreate to pull the game directly from Steam server through steamcmd. It also deals with Game Guard, but a little clunky for that though. I will cleanup a little bit during this week a make a PR.

Probably with an alternative that also handles GOG. (or a Separated Dockerfile, not decided yet)