Skip to content

Wine based game servers fail to initialize #264

@VincedoubleO

Description

@VincedoubleO

Problem

I've tested Star Rupture, Abiotic Factory and Space engineers game servers which all require wine in order to run on linux. Safe to assume that all game servers requiring Wine fail to start with a free(): invalid pointer crash during Wine initialization. This occurs on the latest AMP-dockerized release (v24) haven't tested on the other releases, despite Wine being supported since v22.

Environment

  • Container Version: mitchtalmadge/amp-dockerized:latest (v24)
  • Wine Version in Container: wine-10.0 (Debian 10.0~repack-6)
  • Host OS for docker: TrueNAS Scale 25.04.2.6
  • Docker Compose Version: 3

Affected Games

I tested multiple Wine-based game servers from the CubeCoders supported applications list - all fail identically:

Game Steam App ID Wine Required Result
StarRupture 3809400 ✅ Yes ❌ Crashes
Abiotic Factor 2857750 ✅ Yes ❌ Crashes
Space Engineers 244850 ✅ Yes ❌ Crashes

Wine support was introduced in v22. I am testing on v24 and all Wine-based game servers above fail to initialize.

Reproduction Steps

Minimal Setup

  1. Use the basic docker-compose configuration following v24 volume recommendations or migration steps:
services:
  amp:
    container_name: amp
    environment:
      - UID=568
      - GID=568
      - TZ=Europe/Paris
    image: mitchtalmadge/amp-dockerized:latest
    restart: unless-stopped
    volumes:
      - /path/to/data:/home/amp/
    ports:
      - '8080:8080'
version: '3'
  1. Start the container
  2. Access AMP web interface at http://server-ip:8080
  3. Create a new instance for any Wine-based game (Star Rupture, Abiotic Factor, Space Engineers, or from this list .
  4. Start/update the instance
  5. Observe the crash during Wine initialization

Expected Behavior

Wine should initialize successfully and the game server should start.

Actual Behavior

  • ✅ Game files download successfully via SteamCMD
  • ✅ All pre-Wine steps complete normally
  • ❌ Wine crashes immediately when creating Wine prefix
  • ❌ Instance fails to start with exit code 134

Error Logs

Consistent error across all tested games

Update state (0x61) downloading, progress: 99.90 (...)
Update state (0x81) verifying update, progress: 100.00 (...)
Update state (0x0) unknown, progress: 0.00 (0 / 0)

quit
Unloading Steam API...OK

bash
wine: created the configuration directory '/home/amp/.ampdata/instances/[instance-name]/[game]/.wine'
free(): invalid pointer

/bin/bash failed with exit code 134
Troubleshooting Performed

Troubleshooting Performed

Initial Testing

This issue reproduces with the vanilla container - no configuration changes needed.

Extensive Troubleshooting

After confirming vanilla setup fails, I attempted various Wine-related fixes:

Fix Attempted Result
tmpfs mount for /tmp with mode 1777 ❌ Still crashes
Set TMPDIR, TEMP, TMP environment variables ❌ Still crashes
Added MALLOC_CHECK_=0 ❌ Still crashes
Added WINEDEBUG=-all ❌ Still crashes
Added WINEDLLOVERRIDES=mscoree,mshtml= ❌ Still crashes
Custom tmpfs at /home/amp/.tmp with correct uid/gid ❌ Still crashes
Verified /tmp permissions (1777) ✅ Correct, still crashes
Tested wine --version as amp user ✅ Works, but game servers crash
Multiple different games ❌ All crash identically

Final attempted configuration (still fails):

services:
  amp:
    container_name: amp
    environment:
      - UID=568
      - GID=568
      - TZ=Europe/Paris
      - TMPDIR=/home/amp/.tmp
      - TEMP=/home/amp/.tmp
      - TMP=/home/amp/.tmp
      - WINEDEBUG=-all
      - WINEDLLOVERRIDES=mscoree,mshtml=
      - MALLOC_CHECK_=0
    image: mitchtalmadge/amp-dockerized:latest
    restart: unless-stopped
    tmpfs:
      - /tmp:exec,mode=1777
      - /home/amp/.tmp:exec,mode=1777,uid=568,gid=568
    volumes:
      - /path/to/data:/home/amp/
      - /path/to/scripts:/home/amp/scripts
    ports:
      - '8080:8080'
version: '3'

Root Cause

Wine 10.0 from Debian 13 appears to have a memory management bug causing free(): invalid pointer crashes. This is a known issue with Wine 10.0 in certain environments and occurs regardless of configuration or permissions.

Impact

Severity: Critical

  • All Windows-based game servers are completely non-functional
  • ❌ No user-level workaround exists - requires container-level fix
  • ❌ Multiple popular games affected (Space Engineers, StarRupture, Abiotic Factor, etc.)
  • ❌ v22 release claims Wine support but Wine is unusable in practice on v24

According to the CubeCoders compatibility list, many popular game servers require Wine, making this a significant functionality gap.

Additional Context

  • Wine support was introduced in v22 with release notes stating: "Support for Wine and Xvfb" and "Progress towards Space Engineers support"
  • However, on v24 (latest), Wine crashes immediately on first use with any game server
  • This suggests Wine functionality may not be fully implemented for amp to use.

Request

Please prioritize this fix as it completely blocks Wine-based game server functionality. Wine-based game servers are a significant use case for AMP, and the container currently cannot support them despite release notes claiming Wine support since v22.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions