Problem
Russian players frequently get stuck on "Загрузка контента сервера…" when connecting to any server. This is a universal problem across all servers, not server-specific. VPN resolves it.
Root cause
robust-builds.cdn.spacestation14.com resolves to 185.93.3.244 (Datacamp/AS60068, Madrid). This IP is being blocked or throttled by Russian ISP-level filtering (TSPU). launcher-data.cdn.spacestation14.com resolves to the same IP and is equally affected.
The existing fallback (robust-builds.fallback.cdn.spacestation14.com, Contabo 156.67.24.95) works for some Russian ISPs but not all.
Evidence
Tested via check-host.net from 3 Russian nodes on 2025-02-25:
robust-builds.cdn.spacestation14.com (primary, Datacamp):
| Node |
ISP |
Result |
| ru1, Moscow |
AS14576 |
Connection timed out (25s) |
| ru2, Moscow |
AS210644 |
Connection timed out (20s) |
| ru3, St. Petersburg |
AS210644 |
OK, 2.15s |
robust-builds.fallback.cdn.spacestation14.com (fallback, Contabo):
| Node |
ISP |
Result |
| ru1, Moscow |
AS14576 |
Connection timed out (25s) |
| ru2, Moscow |
AS210644 |
OK, 0.78s |
| ru3, St. Petersburg |
AS210644 |
OK, 0.62s |
For comparison, Cloudflare-hosted endpoints (hub, auth) work from all 3 nodes. The v0.31.0 auth/hub fallback is working. The problem is specifically the Datacamp IP.
Suggested fix
Add a Russian-hosted mirror (e.g. Selectel, Yandex Cloud) as an additional fallback in ConfigConstants.cs for RobustBuildsBaseUrl and LauncherDataBaseUrl. The UrlFallbackSet mechanism already supports this — it just needs a third URL.
Side note (localization)
In the Russian locale, both connecting-update-status-downloading-engine and connecting-update-status-downloading-content are translated to the same string "Загрузка контента сервера…", making it impossible for players to tell which step is actually hanging.
Problem
Russian players frequently get stuck on "Загрузка контента сервера…" when connecting to any server. This is a universal problem across all servers, not server-specific. VPN resolves it.
Root cause
robust-builds.cdn.spacestation14.com resolves to 185.93.3.244 (Datacamp/AS60068, Madrid). This IP is being blocked or throttled by Russian ISP-level filtering (TSPU). launcher-data.cdn.spacestation14.com resolves to the same IP and is equally affected.
The existing fallback (robust-builds.fallback.cdn.spacestation14.com, Contabo 156.67.24.95) works for some Russian ISPs but not all.
Evidence
Tested via check-host.net from 3 Russian nodes on 2025-02-25:
robust-builds.cdn.spacestation14.com (primary, Datacamp):
robust-builds.fallback.cdn.spacestation14.com (fallback, Contabo):
For comparison, Cloudflare-hosted endpoints (hub, auth) work from all 3 nodes. The v0.31.0 auth/hub fallback is working. The problem is specifically the Datacamp IP.
Suggested fix
Add a Russian-hosted mirror (e.g. Selectel, Yandex Cloud) as an additional fallback in ConfigConstants.cs for RobustBuildsBaseUrl and LauncherDataBaseUrl. The UrlFallbackSet mechanism already supports this — it just needs a third URL.
Side note (localization)
In the Russian locale, both connecting-update-status-downloading-engine and connecting-update-status-downloading-content are translated to the same string "Загрузка контента сервера…", making it impossible for players to tell which step is actually hanging.