Connectivity Problem with Windrose – Crash on Client Connect (Wine / gRPC Assertion)

System Information

Field Value
Operating System Linux - Ubuntu 24.04.3 on x86_64
Product AMP ‘Deimos’ v2.7.2.0 (Mainline)
Virtualization None
Application Windrose
Module GenericModule
Running in Container No
Current State Ready

Problem Description

Problem Description

I am running a Windrose server through AMP on Linux using Wine.
The server starts correctly and appears reachable externally.

However, clients cannot successfully connect:

  • Using Invite CodeServer not found

  • Using Direct IP → returns to menu (no error shown)


Key Findings

  • Port forwarding is correctly configured (UDP 7777 open externally)

  • Server is listening on:

    0.0.0.0:7777 (UDP)
    
  • Firewall (UFW) is disabled

  • Direct connection settings configured correctly:

    "UseDirectConnection": true,
    "DirectConnectionServerAddress": "<public-ip>",
    "DirectConnectionServerPort": 7777,
    "P2pProxyAddress": "0.0.0.0"
    

Critical Behavior (Important)

When a client attempts to connect:

  1. Connection is initially successful:

    Client connection verified successfully
    
  2. Server begins sending initial data:

    Send initial data. TotalSize 2475953 B
    
  3. Server crashes immediately with:

    ASSERTION FAILED: result.bytes_transferred == buffer_->Length()
    ... grpc ... windows_endpoint.cc:355
    
  4. Followed by full crash stack trace from:

    WindroseServer-Win64-Shipping.exe
    

Conclusion

This does not appear to be a networking issue.

The server:

  • Accepts connections
  • Begins data transfer
  • Then crashes during replication

This strongly suggests:

A compatibility issue between Windrose (Windows build), Wine, and gRPC networking layerReproduction Steps

  • Install AMP on Linux (Ubuntu 24.04)
  • Create Windrose instance (GenericModule / Wine)
  • Start server
  • Connect via:
    • Invite Code → fails

    • Direct IP → triggers crash

  • Observe server crash in logs

Additional Notes

  • Issue started after recent Windrose update

  • Server previously worked for a few days

  • No containerization or unusual network setup involved

  • Same behavior regardless of client retry

Request

Can you confirm:

  1. Is Windrose server officially supported under Wine/Linux via AMP?

  2. Is this a known issue with recent updates (gRPC / networking layer)?

  3. Any recommended Wine version or configuration?

Been coming across this same error for the last few days and can’t get my server back up and running. I was able to get it running on my local machine with the same world. But my set up in the cloud is a bit more complex. I am running it on a ARM64 server on Oracles free tier. I am using FEX-Emu and Wine. No luck finding anything to help with it yet.

This 100% is a networking issue due to non-blocking send calls. Load the save into a Windows game and it works just fine. Upgrade wine to at least 9.18 to fix it.

Here’s the bug report and resolution, which is upgrade wine, for the nerdy.
https://bugs.winehq.org/show_bug.cgi?id=10648

And how to update to the latest by skipping your distro’s version, at least a guide I used. Note, make /sure/ you get rid of all pieces parts of wine from your distro before upgrading.
https://gitlab.winehq.org/wine/wine/-/wikis/Debian-Ubuntu

I’d suggest testing Wine 10.x, possibly compiled from source. Wine 9.x gave me issues compiling.

Warning untested code below.

1. Install build tools/deps

sudo apt update
sudo apt install -y \
  build-essential git flex bison gcc g++ make pkg-config \
  libx11-dev libxext-dev libxrender-dev libxrandr-dev libxi-dev \
  libxcursor-dev libxinerama-dev libxcomposite-dev libxdamage-dev \
  libxfixes-dev libfreetype6-dev libfontconfig1-dev \
  libasound2-dev libpulse-dev libdbus-1-dev libudev-dev \
  libvulkan-dev libgl1-mesa-dev libglu1-mesa-dev \
  libgnutls28-dev libunwind-dev

2. Get Wine 10 source

cd /root
git clone https://gitlab.winehq.org/wine/wine.git
cd wine
git fetch --tags
git checkout wine-10.0

Wine 10.0 was released by WineHQ in January 2025.

3. Build 64-bit only

mkdir build64
cd build64
../configure --enable-win64 --prefix=/opt/wine-10
make -j$(nproc)
sudo make install

Not sure if I did this?
4. Add command links
# sudo ln -sf /opt/wine-10/bin/wine64 /usr/local/bin/wine64
# sudo ln -sf /opt/wine-10/bin/wine64 /usr/local/bin/wine

5. Test
wine64 --version
# wine --version

Expected:

wine-10.0