Skip to content

Commit 1bec0e3

Browse files
committed
#78 implemented fixes to startup and cleaner logs
1 parent 83c5603 commit 1bec0e3

7 files changed

Lines changed: 32 additions & 12 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
## 2025-03-29
66

7-
- Added FILTER_SHADER_AND_MESH environment variable to filter out shader and mesh-related warning/error messages from the logs @jammsen (#72)
7+
- Added FILTER_SHADER_AND_MESH_AND_WINE_DEBUG environment variable to filter out shader and mesh-related warning/error messages and Wine debug-logs from the logs @jammsen (#72)
88

99
## 2025-01-26
1010

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ ENV DEBIAN_FRONTEND=noninteractive \
4444
TIMEZONE=Europe/Berlin \
4545
PUID=1000 \
4646
PGID=1000 \
47-
FILTER_SHADER_AND_MESH=true \
47+
FILTER_SHADER_AND_MESH_AND_WINE_DEBUG=true \
4848
# SteamCMD-settings
4949
ALWAYS_UPDATE_ON_START=true \
5050
# Gameserver-start-settings-overrides
51-
SKIP_NETWORK_ACCESSIBILITY_TEST=false
51+
SKIP_NETWORK_ACCESSIBILITY_TEST=true
5252

5353

5454
VOLUME ["${GAME_PATH}"]

README.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ services:
102102
PGID: 1000
103103
ALWAYS_UPDATE_ON_START: true
104104
SKIP_NETWORK_ACCESSIBILITY_TEST: true
105-
FILTER_SHADER_AND_MESH: true
105+
FILTER_SHADER_AND_MESH_AND_WINE_DEBUG: true
106106
ports:
107107
- 8766:8766/udp
108108
- 27016:27016/udp
@@ -111,13 +111,22 @@ services:
111111
- ./game:/sonsoftheforest
112112
```
113113
114-
> **Note:** The `FILTER_SHADER_AND_MESH` environment variable (default: true) controls whether shader-related warning messages are filtered from the container logs. When set to true, it removes the following messages keeping your logs cleaner. Set to false if you want to see all shader warnings.
114+
> **Note:** The `FILTER_SHADER_AND_MESH_AND_WINE_DEBUG` environment variable (default: true) controls whether Wine debug-logs and shader-related warning messages are filtered from the container logs. When set to true, it removes the following messages keeping your logs cleaner. Set to false if you want to see all shader warnings.
115115
> * Shader XYZ shader is not supported on this GPU
116116
> * WARNING: Shader Unsupported: 'XYZ' - All subshaders removed
117117
> * WARNING: Shader Did you use XYZ and omit this platform?
118118
> * WARNING: Shader If subshaders removal was intentional, you may have forgotten turning Fallback off?
119119
> * No mesh data available for mesh XYZ
120120
> * Couldn't create a Convex Mesh from source mesh XYZ
121+
> * 0060:fixme:mountmgr:harddisk_ioctl The DISK_PARTITION_INFO and DISK_DETECTION_INFO structures will not be filled
122+
> * 0240:fixme:wbemprox:enum_class_object_Next timeout not supported
123+
> * 0060:fixme:mountmgr:query_property Faking StorageDeviceProperty data
124+
> * 013c:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 00006FFFF011313C, 31) stub
125+
> * 0250:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 00007307F05EFF50
126+
> * 013c:fixme:system:NtUserGetDisplayConfigBufferSizes only returning active paths
127+
> * 013c:fixme:system:NtUserQueryDisplayConfig only returning active paths
128+
> * 013c:fixme:system:NtUserQueryDisplayConfig setting toplogyid to DISPLAYCONFIG_TOPOLOGY_INTERNAL
129+
> * 023c:fixme:cryptnet:check_ocsp_response_info check responder id
121130

122131
## Planned features in the future
123132

configs/dedicatedserver.cfg.example

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
"LogFilesEnabled": false,
1818
"TimestampLogFilenames": true,
1919
"TimestampLogEntries": true,
20-
"SkipNetworkAccessibilityTest": false,
20+
"SkipNetworkAccessibilityTest": true,
2121
"GameSettings": {},
2222
"CustomGameModeSettings": {}
2323
}

docker-run-local-testing.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
#!/usr/bin/env bash
2+
./docker-build.sh
3+
#sudo rm -Rf game/ steamcmd/ winedata/
4+
docker run --rm -i -t --name sons-of-the-forest-dedicated-server -p 8766:8766/udp -p 27016:27016/udp -p 9700:9700/udp -e PUID=7351 -e PGID=2431 -v ./game:/sonsoftheforest/ --stop-timeout 30 jammsen/sons-of-the-forest-dedicated-server:latest && docker logs -f sons-of-the-forest-dedicated-server
File renamed without changes.

scripts/servermanager.sh

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -94,14 +94,21 @@ function startServer() {
9494
rm -f /tmp/.X1-lock 2> /dev/null
9595
# shellcheck disable=SC2164
9696
cd "$GAME_PATH"
97-
98-
if [[ ${FILTER_SHADER_AND_MESH} == true ]]; then
97+
98+
if [[ ${FILTER_SHADER_AND_MESH_AND_WINE_DEBUG} == true ]]; then
9999
ei ">>> Shader and Mesh warning/error filtering is enabled"
100-
# Start the server and pipe through grep to filter out shader warnings
101-
wine64 "$GAME_PATH"/SonsOfTheForestDS.exe -userdatapath "$GAME_USERDATA_PATH" 2>&1 | grep -v -E ".*WARNING: Shader.*|.*ERROR: Shader.*|.*No mesh data available for mesh.*|.*Couldn't create a Convex Mesh from source.*|.*The referenced script.*|.*Could not find video decode shader pass.*"
100+
# Start the server without output buffering and pipe through grep to filter out shader warnings
101+
# If you want to use stdbuf, uncomment the next lines and build the image yourself
102+
#stdbuf -oL -eL wine64 "$GAME_PATH"/SonsOfTheForestDS.exe -userdatapath "$GAME_USERDATA_PATH" 2>&1 | \
103+
#stdbuf -oL grep -v -E ".*WARNING: Shader.*|.*ERROR: Shader.*|.*No mesh data available for mesh.*|.*Couldn't create a Convex Mesh from source.*|.*The referenced script.*|.*Could not find video decode shader pass.*"
104+
# Start the server with output buffering and pipe through grep to filter out shader warnings
105+
WINEDEBUG=-all wine64 "$GAME_PATH"/SonsOfTheForestDS.exe -userdatapath "$GAME_USERDATA_PATH" 2>&1 | grep -v -E ".*WARNING: Shader.*|.*ERROR: Shader.*|.*No mesh data available for mesh.*|.*Couldn't create a Convex Mesh from source.*|.*The referenced script.*|.*Could not find video decode shader pass.*"
102106
else
103107
ei ">>> Shader warning filtering is disabled"
104-
# Start the server normally without filtering
108+
# Start the server without output buffering and without filtering
109+
# If you want to use stdbuf, uncomment the next line and build the image yourself
110+
#stdbuf -oL -eL wine64 "$GAME_PATH"/SonsOfTheForestDS.exe -userdatapath "$GAME_USERDATA_PATH"
111+
# Start the server with output buffering and pipe through grep to filter out shader warnings
105112
wine64 "$GAME_PATH"/SonsOfTheForestDS.exe -userdatapath "$GAME_USERDATA_PATH"
106113
fi
107114
}
@@ -149,7 +156,7 @@ do
149156
ei ">>> Listing config options ..."
150157
e "> ALWAYS_UPDATE_ON_START is set to: $ALWAYS_UPDATE_ON_START"
151158
e "> SKIP_NETWORK_ACCESSIBILITY_TEST is set to: $SKIP_NETWORK_ACCESSIBILITY_TEST"
152-
e "> FILTER_SHADER_AND_MESH is set to: $FILTER_SHADER_AND_MESH"
159+
e "> FILTER_SHADER_AND_MESH_AND_WINE_DEBUG is set to: $FILTER_SHADER_AND_MESH_AND_WINE_DEBUG"
153160

154161
startMain &
155162
START_MAIN_PID="$!"

0 commit comments

Comments
 (0)