The new AppID changes the name on the friends list, nothing else
The AppID commit claimed the switch off Spacewar meant a Steam account now had to have Red Planet on it, and that an account without it would drop to the TCP fallback. That is wrong, and it was never tested - it was reasoned from how AppIDs work in general and written down as fact, in the handbook, the environ.ini template, the README and the three-machine test doc. Cyd checked it the direct way: put 5108000 into an older dist and ran it. It behaved exactly as it had under 480. SteamAPI_Init does not check entitlement; steam_appid.txt only tells the API which app it is. The one real difference is that the Steam client now names Red Planet instead of Spacewar. So all four places now say that, and say nothing about entitlement. The part that was always true is kept: a copy started from its own folder needs the file, and without it Steam networking cannot start and the game falls back to TCP. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -94,8 +94,8 @@ run `start-windowed.bat` — the game boots into the setup menu, where the
|
||||
SCENARIO group picks Death Race or Football (Football swaps in the
|
||||
team/position columns and its own track list). Steam multiplayer: see
|
||||
[docs/STEAM-3-MACHINE-TEST.md](docs/STEAM-3-MACHINE-TEST.md). It runs
|
||||
under Red Planet's own AppID, 5108000, so the Steam account playing it
|
||||
needs the game on it; without that the wire falls back to TCP.
|
||||
under Red Planet's own AppID, 5108000, so the Steam client reports the
|
||||
game by name instead of as Spacewar.
|
||||
|
||||
The config files beside the exe are self-documenting and none of them
|
||||
ship: the game writes each one the first time it needs it and then leaves
|
||||
|
||||
@@ -312,10 +312,10 @@ namespace
|
||||
"# stop the game starting, and steam_api.dll being absent altogether is\n"
|
||||
"# fine. 0 = TCP only.\n"
|
||||
"#\n"
|
||||
"# steam_appid.txt holds 5108000, which is Red Planet's own AppID, so the\n"
|
||||
"# Steam account running the game needs Red Planet on it. An account\n"
|
||||
"# without it gets the TCP fallback - the same quiet symptom as a missing\n"
|
||||
"# file, so check the log before blaming the network.\n"
|
||||
"# steam_appid.txt holds 5108000, Red Planet's own AppID, so the Steam\n"
|
||||
"# client reports you as playing Red Planet rather than Spacewar. It has\n"
|
||||
"# to be there for a copy started from its own folder; the number itself\n"
|
||||
"# changes nothing else.\n"
|
||||
"RP412STEAM=1\n"
|
||||
"\n"
|
||||
"# Line up each remote player's clock with ours, so their vehicle is\n"
|
||||
|
||||
@@ -17,11 +17,11 @@ Planet's own AppID; builds before that ran under Spacewar, 480) and ships
|
||||
both before blaming the network: a missing appid file makes
|
||||
SteamAPI_Init fail and the game quietly falls back to TCP.
|
||||
|
||||
Now that the AppID is ours rather than Valve's public one, the Steam
|
||||
account on each machine has to actually have Red Planet on it. An account
|
||||
without it gets the TCP fallback — same silent symptom as a missing
|
||||
appid file, so check library access first when one machine will not join
|
||||
the mesh.
|
||||
The switch off Spacewar changes what Steam thinks you are playing and
|
||||
nothing else: the client now names Red Planet on the friends list.
|
||||
`SteamAPI_Init` does not check entitlement, so a machine behaves exactly
|
||||
as it did under 480 — confirmed by dropping the new number into an older
|
||||
dist, which ran unchanged.
|
||||
|
||||
Sanity check per machine: `rpl4.log` should show
|
||||
`SteamNetTransport: up as 169.254.x.y (fake ports N console, M game)`.
|
||||
|
||||
@@ -1543,7 +1543,7 @@
|
||||
<tr><th class="mono">JOYSTICK.INI</th><td>The 1995 single-stick calibration, for the legacy <code>L4CONTROLS=DIJOYSTICK</code> path only. Modern sticks are configured in <code>bindings.txt</code> — see above.</td></tr>
|
||||
<tr><th class="mono">*.CFG <span style="color:var(--ink-quiet);font-family:var(--sans)">in AUDIO\</span></th><td>Pod audio-hardware mixer tables. Dead weight on a desktop; kept because the arcade path still reads them.</td></tr>
|
||||
<tr><th class="mono">RPL4.RES</th><td>Resource blob, not text.</td></tr>
|
||||
<tr><th class="mono">steam_appid.txt</th><td>Red Planet’s Steam AppID, 5108000. It tells the Steam client which game this is when you start it straight from the folder. Your Steam account needs Red Planet on it; without that the game quietly falls back to plain TCP.</td></tr>
|
||||
<tr><th class="mono">steam_appid.txt</th><td>Red Planet’s Steam AppID, 5108000. It tells the Steam client which game this is when you start it straight from the folder, so your friends list shows Red Planet rather than Spacewar. Delete it and Steam networking cannot start — the game falls back to plain TCP without saying much about it.</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
+5
-3
@@ -101,9 +101,11 @@ Copy-Item (Join-Path $root 'extern\steamworks_sdk_165\sdk\redistributable_bin\st
|
||||
# SteamAPI_Init fails and the game drops to plain TCP, which is exactly
|
||||
# the confusing symptom testers hit when it goes missing.
|
||||
#
|
||||
# Unlike the Spacewar days this AppID is ours, so the Steam account
|
||||
# running it has to actually have Red Planet on it. An account without it
|
||||
# gets the TCP fallback, not the Steam wire.
|
||||
# What changes against the old Spacewar (480) number is what Steam thinks
|
||||
# you are playing: the client now says Red Planet. SteamAPI_Init itself
|
||||
# does not check entitlement, so a build carrying this file behaves the
|
||||
# same as it did under 480 - verified by dropping the new number into an
|
||||
# older dist.
|
||||
#
|
||||
# Retail builds launched BY the Steam client do not need this file at all
|
||||
# - the client supplies the AppID - and Valve would rather it were not in
|
||||
|
||||
Reference in New Issue
Block a user