Skip to content

Commit b6035de

Browse files
Add and document new environmental variables for using custom beta versions. (#443)
* Add support for custom beta flags. * Document new environmental variables. * Correct the environmental variable for beta password. * Simplify beta definition. * Cleanup --------- Co-authored-by: Robert Thomas <[email protected]>
1 parent a946ec2 commit b6035de

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ ENV AUTOSAVENUM="5" \
2222
SKIPUPDATE="false" \
2323
STEAMAPPID="1690800" \
2424
STEAMBETA="false" \
25+
STEAMBETAID="" \
26+
STEAMBETAKEY="" \
2527
TIMEOUT="30" \
2628
VMOVERRIDE="false"
2729

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,8 @@ helm install satisfactory k8s-at-home/satisfactory -f values.yaml
172172
| `SERVERSTREAMING` | `true` | toggle whether the game utilizes asset streaming |
173173
| `SKIPUPDATE` | `false` | avoid updating the game on container start/restart |
174174
| `STEAMBETA` | `false` | set experimental game version |
175+
| `STEAMBETAID` | | set a custom beta game version (for testing) |
176+
| `STEAMBETAKEY` | | set password for the beta game version (for testing) |
175177
| `TIMEOUT` | `30` | set client timeout (in seconds) |
176178
| `VMOVERRIDE` | `false` | skips the CPU model check (should not ordinarily be used) |
177179

@@ -188,8 +190,8 @@ community [here](https://docs.ficsit.app/satisfactory-modding/latest/ForUsers/De
188190

189191
The container does **NOT** have an S/FTP server installed directly, as Docker images are intended to carry a single
190192
function/process. You can either SFTP into your host that houses the Satisfactory server (trivial to do if you're
191-
running Linux), or alternatively you can spin up an S/FTP server through the use of another Docker container using the
192-
Docker Compose example listed below:
193+
running Linux), or you can spin up an S/FTP server through the use of another Docker container using the Docker Compose
194+
example listed below:
193195

194196
```yaml
195197
services:

run.sh

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,16 @@ if [[ "${SKIPUPDATE,,}" != "false" ]] && [ ! -f "/config/gamefiles/FactoryServer
107107
fi
108108

109109
if [[ "${SKIPUPDATE,,}" != "true" ]]; then
110-
if [[ "${STEAMBETA,,}" == "true" ]]; then
110+
STEAMBETAPASSWORD=""
111+
112+
if [[ -n "${STEAMBETAID}" ]]; then
113+
printf "STEAMBETAID is set. Using beta ID: %s\\n" "$STEAMBETAID"
114+
STEAMBETAFLAG="$STEAMBETAID"
115+
if [[ -n "${STEAMBETAKEY}" ]]; then
116+
STEAMBETAPASSWORD="-betapassword $STEAMBETAKEY"
117+
printf "Beta password provided\\n"
118+
fi
119+
elif [[ "${STEAMBETA,,}" == "true" ]]; then
111120
printf "Experimental flag is set. Experimental will be downloaded instead of Early Access.\\n"
112121
STEAMBETAFLAG="experimental"
113122
else
@@ -127,7 +136,7 @@ if [[ "${SKIPUPDATE,,}" != "true" ]]; then
127136
printf "\\nRemoving the app manifest to force Steam to check for an update...\\n"
128137
rm "/config/gamefiles/steamapps/appmanifest_1690800.acf" || true
129138
fi
130-
steamcmd +force_install_dir /config/gamefiles +login anonymous +app_update "$STEAMAPPID" -beta "$STEAMBETAFLAG" validate +quit
139+
steamcmd +force_install_dir /config/gamefiles +login anonymous +app_update "$STEAMAPPID" -beta "$STEAMBETAFLAG" $STEAMBETAPASSWORD validate +quit
131140
cp -r /home/steam/.steam/steam/logs/* "/config/logs/steam" || printf "Failed to store Steam logs\\n"
132141
else
133142
printf "Skipping update as flag is set\\n"
@@ -159,4 +168,4 @@ shutdown() {
159168
}
160169
trap shutdown SIGINT SIGTERM
161170

162-
wait
171+
wait

0 commit comments

Comments
 (0)