0.8.0.9:0 — bundle Station Master v0.8.0.9
The bots that fill empty seats play far better: they plan each switching turn, stop taking cards they cannot play, no longer run Second Sections by accident, and lay track where it opens something up. The engine checks moves about three times faster, with play proven identical. No rule changed, so games in progress resume; the release notes say so in all five locales. README's bundled-version line had stayed at 0.7.9.8 through the 0.8.0 series; it now names 0.8.0.9. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017nnuCv8UodHucFfx3LWEoX
This commit is contained in:
@@ -13,8 +13,13 @@ Station Master is a railroad operations board game with an authoritative multipl
|
|||||||
solitaire needs no server and is not what this package is for. This package runs that server —
|
solitaire needs no server and is not what this package is for. This package runs that server —
|
||||||
the browser client, the lobby, and the intent/SSE API — as a single StartOS service.
|
the browser client, the lobby, and the intent/SSE API — as a single StartOS service.
|
||||||
|
|
||||||
**Bundled version: 0.7.9.8.** Eight releases of fixes since 0.7.9, most of them multiplayer, and
|
**Bundled version: 0.8.0.9.** The bots that fill empty seats play far better — they plan each switching
|
||||||
**games in progress on this server resume normally** — which was checked rather than assumed.
|
turn, stop wasting their draws, and build their districts — and the engine checks moves about three times
|
||||||
|
faster. **Games in progress on this server resume normally**: no rule changed, and the speed-up was proven
|
||||||
|
to leave play identical by hashing every event of 32 seeded games before and after each step. The game's
|
||||||
|
`CHANGELOG.md` has the measurements.
|
||||||
|
|
||||||
|
The paragraphs below were written for the 0.7.9.8 bump and still describe how a bump is checked.
|
||||||
|
|
||||||
**Why saves are safe this time, and how that was established.** 0.7.9's breakage came from a rules
|
**Why saves are safe this time, and how that was established.** 0.7.9's breakage came from a rules
|
||||||
change, and the general rule behind it is that a save is a seed plus the moves played, replayed
|
change, and the general rule behind it is that a save is a seed plus the moves played, replayed
|
||||||
|
|||||||
@@ -35,6 +35,15 @@ watches the table — there is nothing else to open.
|
|||||||
Solitaire runs entirely in your own browser and needs nothing from the server, so it works here
|
Solitaire runs entirely in your own browser and needs nothing from the server, so it works here
|
||||||
exactly as it does on the public Station Master site.
|
exactly as it does on the public Station Master site.
|
||||||
|
|
||||||
|
**What changed in 0.8.0.9. Games already running on this server are not affected** — they resume
|
||||||
|
normally; no rule changed.
|
||||||
|
|
||||||
|
**The bots are much better opponents and seat-fillers.** A bot now plans its whole switching turn before
|
||||||
|
it moves, so it delivers cars to industries that can use them and brings expedited trains home. It stops
|
||||||
|
picking up face-up cards it cannot play, so it actually builds its district, and it lays track where it
|
||||||
|
opens up something to do, including run-arounds. It also no longer runs a Second Section by accident,
|
||||||
|
which was behind many of its collisions.
|
||||||
|
|
||||||
**What changed in 0.7.9.8. Games already running on this server are not affected** — they resume
|
**What changed in 0.7.9.8. Games already running on this server are not affected** — they resume
|
||||||
normally, and nothing in this update changes a rule, so no saved game stops being playable. (That is
|
normally, and nothing in this update changes a rule, so no saved game stops being playable. (That is
|
||||||
the opposite of 0.7.9 below, which did change one. It was checked, not assumed.)
|
the opposite of 0.7.9 below, which did change one. It was checked, not assumed.)
|
||||||
|
|||||||
+77
-222
@@ -10,234 +10,81 @@ export const current = VersionInfo.of({
|
|||||||
// — checked against the SDK's own parser rather than assumed, since every example in `versions.md`
|
// — checked against the SDK's own parser rather than assumed, since every example in `versions.md`
|
||||||
// has three: `0.7.9.8:0` parses to upstream `[0,7,9,8]`, which sorts above `[0,7,9]`, so a box on
|
// has three: `0.7.9.8:0` parses to upstream `[0,7,9,8]`, which sorts above `[0,7,9]`, so a box on
|
||||||
// 0.7.9:0 sees this as an update rather than refusing it as a downgrade.
|
// 0.7.9:0 sees this as an update rather than refusing it as a downgrade.
|
||||||
version: '0.8.0.8:0',
|
version: '0.8.0.9:0',
|
||||||
releaseNotes: {
|
releaseNotes: {
|
||||||
en_US:
|
en_US:
|
||||||
'Bundles Station Master v0.8.0.8 — you can watch the other players now. GAMES IN PROGRESS ON ' +
|
'Bundles Station Master v0.8.0.9 — the bots play much better, and the server does its work ' +
|
||||||
'THIS SERVER ARE UNAFFECTED and will resume normally. Until now another player could move a ' +
|
'faster. GAMES IN PROGRESS ON THIS SERVER ARE UNAFFECTED and will resume normally: no rule ' +
|
||||||
'train the length of their district and the only trace on your screen was a line of text: your ' +
|
'changed. A bot filling an empty seat now plans its whole switching turn before its first ' +
|
||||||
'board showed your own Office Area and nobody else’s, and a bot’s whole turn arrived as a ' +
|
'move, so it delivers cars to industries that can work them instead of choosing one move at a ' +
|
||||||
'position that had simply changed. Now every move is replayed on your screen in the order it ' +
|
'time, and it brings expedited trains back to the station. It no longer takes face-up cards ' +
|
||||||
'happened. The Office Area follows whoever is acting, so you watch their switching moves step ' +
|
'it cannot play only to throw them back, so it builds its district — more track, more ' +
|
||||||
'across their board — which is the part worth seeing, and the part reading the history could ' +
|
'industries, and run-arounds far more often, because it now lays track where it opens up ' +
|
||||||
'never convey. A row above the board says how many moves behind you are and counts down, with ' +
|
'something to do. And it no longer runs a Second Section by accident when it meant to start ' +
|
||||||
'a Skip button when you would rather not wait; nothing is lost by skipping, since every line ' +
|
'an Extra, which caused many of its collisions. Measured over thousands of simulated games, a ' +
|
||||||
'is already in the History panel. The automatic phases — New Train, the Mainline, the shift ' +
|
'bot now earns about 4.8 Revenue a game, where it earned about −0.3 before. Behind the ' +
|
||||||
'change — used to resolve between one click and the next without ever being drawn, and now ' +
|
'scenes, working out where a train can move is now done once per position instead of several ' +
|
||||||
'take a visible beat when something happens in them and none at all when nothing does. ' +
|
'times, which makes the server about three times faster at checking moves — with play proven ' +
|
||||||
'Switching moves in the history finally say who made them and name the train, instead of ' +
|
'identical.',
|
||||||
'reading as an anonymous “CREW moved”. Playback speed is a per-player setting and can be ' +
|
|
||||||
'turned off entirely — and it now goes both ways, so you can slow it to twice or three times ' +
|
|
||||||
'the default if you would rather linger. Fixes over v0.8.0, from the first game played on it: ' +
|
|
||||||
'a player’s last move in a run used to vanish the instant it appeared, snapping the board back ' +
|
|
||||||
'to your own district before you could look at it, and bot turns went by far too fast to ' +
|
|
||||||
'follow — a bot now announces what it is about to do, and takes a beat over each thing it ' +
|
|
||||||
'does. **Playback speed is a control on the play screen now**, next to the zoom: press − to ' +
|
|
||||||
'watch other players more slowly, all the way to a full minute for one switching turn, or turn ' +
|
|
||||||
'it off to have every move drawn at once. It was previously only settable through the address ' +
|
|
||||||
'bar, which did not survive arriving from the front page — so it never took effect for anyone ' +
|
|
||||||
'who reached the game the ordinary way. Also fixed: the end-of-Day summary reported "0 today" ' +
|
|
||||||
'beside a running collision total that disagreed with it, because the Day had already ticked ' +
|
|
||||||
'over by the time you read it. It names the Day instead — "2 on Day 1, 2 in all". And from ' +
|
|
||||||
'playing that: Skip has moved to the left of the row, where your eye already is; the row says ' +
|
|
||||||
'WHO you are waiting on and what they are doing, instead of only how far behind you are; and ' +
|
|
||||||
'the speed setting now stretches other players\u2019 moves without stretching the clock, so ' +
|
|
||||||
'finishing your own turn no longer leaves you waiting on the phases behind it. And there is ' +
|
|
||||||
'somewhere to look: the Home Office deck is drawn at last, face down with its count, and ' +
|
|
||||||
'whichever pile a move just touched lights up for as long as that move is on screen — the deck ' +
|
|
||||||
'when somebody draws from it, the Department a card is taken from or discarded onto, the ' +
|
|
||||||
'Salvage Yard when a played card ends up there. What lights follows what is public: a card ' +
|
|
||||||
'drawn face down from the deck stays private, and only the deck getting shorter is shown. The ' +
|
|
||||||
'lit pile now keeps pulsing for as long as that move is on screen, rather than flashing once ' +
|
|
||||||
'and settling where it was easy to miss. Your own move is put away while the board is catching ' +
|
|
||||||
'up — it is behind the game at that moment, so anything offered would be a move against a ' +
|
|
||||||
'position that has already changed; Skip is always one click away. Playback can be slowed ' +
|
|
||||||
'further than before, to twenty times, and the phase names along the top now hold long enough ' +
|
|
||||||
'to read at those speeds. The Salvage Yard names the card on top of it at last — it was face up ' +
|
|
||||||
'all along and had nothing to say, because a scheduled train was being recorded there twice, ' +
|
|
||||||
'once as a card and once as a marker that matched no card. **A rules decision comes with that**: ' +
|
|
||||||
'a regularly scheduled train that has been PLAYED is already on the timetable, so when the deck ' +
|
|
||||||
'is reshuffled it stays out rather than coming back to be run a second time. One that was ' +
|
|
||||||
'DISCARDED was never played, so it returns as before, and an Extra always returns — an Extra is ' +
|
|
||||||
'a single run, not a standing slot. Games in progress are unaffected.',
|
|
||||||
es_ES:
|
es_ES:
|
||||||
'Incluye Station Master v0.8.0.8 — ahora puedes ver jugar a los demás. LAS PARTIDAS EN CURSO EN ' +
|
'Incluye Station Master v0.8.0.9 — los bots juegan mucho mejor y el servidor trabaja más ' +
|
||||||
'ESTE SERVIDOR NO SE VEN AFECTADAS y se reanudarán con normalidad. Hasta ahora otro jugador ' +
|
'rápido. LAS PARTIDAS EN CURSO EN ESTE SERVIDOR NO SE VEN AFECTADAS y se reanudarán con ' +
|
||||||
'podía mover un tren a lo largo de todo su distrito y el único rastro en tu pantalla era una ' +
|
'normalidad: no ha cambiado ninguna regla. Un bot que ocupa un asiento vacío planifica ahora ' +
|
||||||
'línea de texto: tu tablero mostraba tu propia Área de Oficina y la de nadie más, y el turno ' +
|
'su turno de maniobras completo antes de su primer movimiento, así que entrega vagones a las ' +
|
||||||
'completo de un bot llegaba como una posición que simplemente había cambiado. Ahora cada ' +
|
'industrias que pueden trabajarlos en lugar de decidir movimiento a movimiento, y devuelve ' +
|
||||||
'movimiento se reproduce en tu pantalla en el orden en que ocurrió. El Área de Oficina sigue a ' +
|
'los trenes expresos a la estación. Ya no toma cartas descubiertas que no puede jugar solo ' +
|
||||||
'quien está jugando, así que ves sus maniobras avanzar por su tablero, que es lo que merece la ' +
|
'para volver a descartarlas, así que construye su distrito — más vía, más industrias y vías ' +
|
||||||
'pena ver y lo que el historial nunca podía transmitir. Una fila sobre el tablero indica ' +
|
'de circunvalación mucho más a menudo, porque ahora tiende vía donde abre algo que hacer. Y ' +
|
||||||
'cuántos movimientos llevas de retraso y va descontando, con un botón Saltar por si prefieres ' +
|
'ya no lanza una Segunda Sección por accidente cuando quería poner en marcha un Extra, lo que ' +
|
||||||
'no esperar; no se pierde nada al saltar, porque cada línea ya está en el panel de Historial. ' +
|
'causaba muchas de sus colisiones. Medido en miles de partidas simuladas, un bot gana ahora ' +
|
||||||
'Las fases automáticas — Tren Nuevo, la Línea Principal, el cambio de turno — se resolvían ' +
|
'unos 4,8 de Ingresos por partida, frente a unos −0,3 antes. Por dentro, calcular adónde ' +
|
||||||
'entre un clic y el siguiente sin dibujarse nunca, y ahora tienen una pausa visible cuando algo ' +
|
'puede moverse un tren se hace ahora una vez por posición en lugar de varias, lo que hace al ' +
|
||||||
'ocurre en ellas y ninguna cuando no ocurre nada. Las maniobras en el historial por fin dicen ' +
|
'servidor unas tres veces más rápido al comprobar movimientos — con el juego demostrado ' +
|
||||||
'quién las hizo y nombran el tren, en lugar de leerse como un anónimo «CREW moved». La ' +
|
'idéntico.',
|
||||||
'velocidad de reproducción es un ajuste por jugador y se puede desactivar por completo, y ahora ' +
|
|
||||||
'funciona en ambos sentidos: puedes ralentizarla al doble o al triple si prefieres detenerte. ' +
|
|
||||||
'Correcciones sobre la v0.8.0, salidas de la primera partida jugada con ella: el último ' +
|
|
||||||
'movimiento de una serie desaparecía en el instante en que aparecía, devolviendo el tablero a tu ' +
|
|
||||||
'propio distrito antes de que pudieras verlo, y los turnos de los bots pasaban demasiado rápido ' +
|
|
||||||
'para seguirlos — ahora un bot anuncia lo que va a hacer y se detiene un momento en cada cosa ' +
|
|
||||||
'que hace. **La velocidad de reproducción es ahora un control en la pantalla de juego**, junto ' +
|
|
||||||
'al zoom: pulsa − para ver a los demás más despacio, hasta un minuto entero para una maniobra, ' +
|
|
||||||
'o desactívala para que cada movimiento se dibuje de golpe. Antes solo se podía ajustar desde ' +
|
|
||||||
'la barra de direcciones, y eso no sobrevivía al entrar desde la página inicial, así que nunca ' +
|
|
||||||
'surtía efecto para quien llegaba al juego por el camino normal. También corregido: el resumen ' +
|
|
||||||
'de fin de Día decía «0 hoy» junto a un total de colisiones que lo contradecía, porque el Día ' +
|
|
||||||
'ya había cambiado cuando lo leías. Ahora nombra el Día: «2 en el Día 1, 2 en total». Y a raíz ' +
|
|
||||||
'de jugarlo: Saltar se ha movido a la izquierda de la fila, donde ya está tu mirada; la fila ' +
|
|
||||||
'dice a QUIÉN estás esperando y qué está haciendo, en vez de sólo cuánto te falta; y el ajuste ' +
|
|
||||||
'de velocidad alarga ahora los movimientos de los demás sin alargar el reloj, así que terminar ' +
|
|
||||||
'tu turno ya no te deja esperando las fases que vienen detrás. Y ahora hay dónde mirar: por fin ' +
|
|
||||||
'se dibuja el mazo de la Oficina Central, boca abajo y con su recuento, y la pila que acaba de ' +
|
|
||||||
'tocar un movimiento se ilumina mientras ese movimiento está en pantalla: el mazo cuando ' +
|
|
||||||
'alguien roba de él, el Departamento del que se toma o en el que se descarta una carta, el ' +
|
|
||||||
'Depósito de Chatarra cuando allí acaba una carta jugada. Lo que se ilumina respeta lo que es ' +
|
|
||||||
'público: una carta robada boca abajo del mazo sigue siendo privada, y sólo se muestra que el ' +
|
|
||||||
'mazo mengua. La pila iluminada ahora late mientras ese movimiento está en pantalla, en vez de ' +
|
|
||||||
'destellar una vez y quedarse donde era fácil no verla. Tus propias acciones se guardan ' +
|
|
||||||
'mientras el tablero se pone al día: en ese momento va por detrás de la partida, así que lo ' +
|
|
||||||
'que se ofreciera sería una jugada contra una posición ya cambiada; Saltar está siempre a un ' +
|
|
||||||
'clic. Y la reproducción puede ralentizarse más que antes, hasta veinte veces.',
|
|
||||||
de_DE:
|
de_DE:
|
||||||
'Enthält Station Master v0.8.0.8 — Sie können den anderen jetzt beim Spielen zusehen. LAUFENDE ' +
|
'Enthält Station Master v0.8.0.9 — die Bots spielen deutlich besser, und der Server arbeitet ' +
|
||||||
'PARTIEN AUF DIESEM SERVER SIND NICHT BETROFFEN und werden normal fortgesetzt. Bisher konnte ' +
|
'schneller. LAUFENDE SPIELE AUF DIESEM SERVER SIND NICHT BETROFFEN und werden normal ' +
|
||||||
'ein anderer Spieler einen Zug durch sein ganzes Revier bewegen, und die einzige Spur auf ' +
|
'fortgesetzt: Keine Regel hat sich geändert. Ein Bot auf einem freien Platz plant jetzt ' +
|
||||||
'Ihrem Bildschirm war eine Textzeile: Ihr Brett zeigte nur Ihren eigenen Dienstbereich und den ' +
|
'seinen ganzen Rangierzug, bevor er sich zum ersten Mal bewegt, und stellt Wagen daher bei ' +
|
||||||
'von niemandem sonst, und der komplette Zug eines Bots erschien als eine Stellung, die sich ' +
|
'Industrien zu, die sie bearbeiten können, statt Zug um Zug zu entscheiden; beschleunigte ' +
|
||||||
'einfach geändert hatte. Jetzt wird jeder Zug auf Ihrem Bildschirm in der Reihenfolge ' +
|
'Züge bringt er zum Bahnhof zurück. Er nimmt keine offenen Karten mehr, die er nicht spielen ' +
|
||||||
'wiedergegeben, in der er geschah. Der Dienstbereich folgt demjenigen, der am Zug ist, sodass ' +
|
'kann, nur um sie wieder abzuwerfen, und baut deshalb seinen Bezirk aus — mehr Gleis, mehr ' +
|
||||||
'Sie seine Rangierbewegungen über sein Brett wandern sehen — das ist der sehenswerte Teil und ' +
|
'Industrien und viel öfter Umfahrgleise, weil er Gleis jetzt dort legt, wo es etwas zu tun ' +
|
||||||
'der, den das Protokoll nie vermitteln konnte. Eine Zeile über dem Brett zeigt, wie viele Züge ' +
|
'eröffnet. Und er setzt keinen zweiten Zugteil (Second Section) mehr aus Versehen ein, wenn ' +
|
||||||
'Sie im Rückstand sind, und zählt herunter, mit einer Überspringen-Schaltfläche, wenn Sie ' +
|
'er einen Sonderzug starten wollte, was viele seiner Zusammenstöße verursachte. Über Tausende ' +
|
||||||
'nicht warten möchten; dabei geht nichts verloren, denn jede Zeile steht schon im Protokoll. ' +
|
'simulierter Spiele gemessen, erzielt ein Bot jetzt etwa 4,8 Einnahmen pro Spiel, vorher etwa ' +
|
||||||
'Die automatischen Phasen — Neuer Zug, die Hauptstrecke, der Schichtwechsel — liefen zwischen ' +
|
'−0,3. Im Hintergrund wird jetzt einmal pro Stellung statt mehrfach berechnet, wohin ein Zug ' +
|
||||||
'einem Klick und dem nächsten ab, ohne je gezeichnet zu werden, und halten nun sichtbar inne, ' +
|
'fahren kann, was den Server beim Prüfen von Zügen etwa dreimal schneller macht — bei ' +
|
||||||
'wenn darin etwas passiert, und gar nicht, wenn nichts passiert. Rangierbewegungen im ' +
|
'nachweislich identischem Spielverlauf.',
|
||||||
'Protokoll nennen endlich den Spieler und den Zug, statt als anonymes „CREW moved“ zu ' +
|
|
||||||
'erscheinen. Die Wiedergabegeschwindigkeit ist eine Einstellung pro Spieler und lässt sich ' +
|
|
||||||
'ganz abschalten — und sie wirkt jetzt in beide Richtungen, sodass Sie sie auf das Doppelte ' +
|
|
||||||
'oder Dreifache verlangsamen können, wenn Sie lieber verweilen. Korrekturen gegenüber v0.8.0, ' +
|
|
||||||
'aus der ersten damit gespielten Partie: der letzte Zug einer Folge verschwand in dem Moment, in ' +
|
|
||||||
'dem er erschien, und das Brett sprang zu Ihrem eigenen Revier zurück, bevor Sie hinsehen ' +
|
|
||||||
'konnten; und Bot-Züge liefen viel zu schnell ab, um ihnen zu folgen — ein Bot kündigt jetzt an, ' +
|
|
||||||
'was er vorhat, und hält bei jedem Schritt kurz inne. **Die Wiedergabegeschwindigkeit ist jetzt ' +
|
|
||||||
'ein Bedienelement im Spielbildschirm**, neben dem Zoom: mit − sehen Sie den anderen langsamer ' +
|
|
||||||
'zu, bis zu einer ganzen Minute für einen Rangiervorgang, oder Sie schalten sie aus, damit jeder ' +
|
|
||||||
'Zug auf einmal gezeichnet wird. Bisher war sie nur über die Adresszeile einstellbar, was den ' +
|
|
||||||
'Weg über die Startseite nicht überlebte — für jeden, der das Spiel auf dem normalen Weg ' +
|
|
||||||
'erreichte, wirkte sie also nie. Ebenfalls behoben: die Tagesabschluss-Übersicht meldete „0 ' +
|
|
||||||
'heute" neben einer Kollisionssumme, die dem widersprach, weil der Tag beim Lesen schon ' +
|
|
||||||
'umgeschlagen war. Sie nennt jetzt den Tag: „2 an Tag 1, 2 insgesamt". Und aus dem Spielen ' +
|
|
||||||
'heraus: Überspringen sitzt jetzt links in der Zeile, wo Ihr Blick ohnehin ist; die Zeile sagt, ' +
|
|
||||||
'auf WEN Sie warten und was er tut, statt nur wie weit Sie zurück sind; und die ' +
|
|
||||||
'Geschwindigkeit dehnt die Züge der anderen, ohne die Uhr mitzudehnen — nach Ihrem eigenen Zug ' +
|
|
||||||
'warten Sie also nicht mehr auf die Phasen dahinter. Und es gibt jetzt etwas anzusehen: der ' +
|
|
||||||
'Stapel der Hauptverwaltung wird endlich gezeichnet, verdeckt und mit seiner Anzahl, und der ' +
|
|
||||||
'Stapel, den ein Zug gerade berührt hat, leuchtet so lange, wie dieser Zug zu sehen ist — der ' +
|
|
||||||
'Stapel, wenn jemand daraus zieht, die Abteilung, aus der eine Karte genommen oder auf die ' +
|
|
||||||
'abgeworfen wird, der Schrottplatz, wenn dort eine gespielte Karte landet. Was leuchtet, folgt ' +
|
|
||||||
'dem, was öffentlich ist: eine verdeckt gezogene Karte bleibt privat, gezeigt wird nur, dass ' +
|
|
||||||
'der Stapel kürzer wird. Der leuchtende Stapel pulsiert jetzt, solange dieser Zug zu sehen ist, ' +
|
|
||||||
'statt einmal aufzublitzen und dort liegen zu bleiben, wo er leicht zu übersehen war. Ihr ' +
|
|
||||||
'eigener Zug wird weggeräumt, während das Brett aufholt: es hinkt in diesem Moment hinterher, ' +
|
|
||||||
'ein Angebot wäre also ein Zug gegen eine bereits veränderte Stellung; Überspringen ist immer ' +
|
|
||||||
'einen Klick entfernt. Und die Wiedergabe lässt sich weiter verlangsamen als bisher, auf das ' +
|
|
||||||
'Zwanzigfache.',
|
|
||||||
pl_PL:
|
pl_PL:
|
||||||
'Zawiera Station Master v0.8.0.8 — teraz możesz obserwować grę pozostałych. TRWAJĄCE PARTIE NA ' +
|
'Zawiera Station Master v0.8.0.9 — boty grają znacznie lepiej, a serwer pracuje szybciej. GRY ' +
|
||||||
'TYM SERWERZE NIE SĄ NARUSZONE i zostaną normalnie wznowione. Do tej pory inny gracz mógł ' +
|
'W TOKU NA TYM SERWERZE NIE SĄ ZAGROŻONE i zostaną normalnie wznowione: żadna zasada się nie ' +
|
||||||
'przeprowadzić pociąg przez cały swój okręg, a jedynym śladem na twoim ekranie była linijka ' +
|
'zmieniła. Bot zajmujący wolne miejsce planuje teraz całą swoją turę manewrów przed pierwszym ' +
|
||||||
'tekstu: twoja plansza pokazywała wyłącznie twój własny Obszar Biura i niczyj inny, a cała ' +
|
'ruchem, więc dostarcza wagony do zakładów, które mogą je obsłużyć, zamiast decydować ruch po ' +
|
||||||
'tura bota pojawiała się jako pozycja, która po prostu się zmieniła. Teraz każdy ruch jest ' +
|
'ruchu, i odprowadza pociągi przyspieszone z powrotem na stację. Nie bierze już odkrytych ' +
|
||||||
'odtwarzany na twoim ekranie w kolejności, w jakiej nastąpił. Obszar Biura podąża za tym, kto ' +
|
'kart, których nie może zagrać, tylko po to, by je odrzucić, więc rozbudowuje swój okręg — ' +
|
||||||
'wykonuje ruch, więc widzisz, jak jego manewry przesuwają się po jego planszy — a to właśnie ' +
|
'więcej torów, więcej zakładów i znacznie częściej tory objazdowe, bo kładzie teraz tor tam, ' +
|
||||||
'warto zobaczyć i tego historia nigdy nie potrafiła przekazać. Wiersz nad planszą pokazuje, o ' +
|
'gdzie otwiera to coś do zrobienia. I nie uruchamia już przez przypadek Drugiej Sekcji, gdy ' +
|
||||||
'ile ruchów jesteś z tyłu, i odlicza, z przyciskiem Pomiń, jeśli wolisz nie czekać; pominięcie ' +
|
'chciał wypuścić pociąg dodatkowy, co powodowało wiele jego zderzeń. Zmierzone w tysiącach ' +
|
||||||
'nic nie kosztuje, bo każda linijka jest już w panelu Historii. Fazy automatyczne — Nowy ' +
|
'symulowanych gier: bot zarabia teraz około 4,8 Przychodu na grę, wcześniej około −0,3. W tle ' +
|
||||||
'Pociąg, Linia Główna, zmiana warty — rozstrzygały się między jednym kliknięciem a drugim, ' +
|
'to, dokąd pociąg może pojechać, jest teraz liczone raz na pozycję zamiast kilka razy, co ' +
|
||||||
'nigdy nie będąc narysowane, a teraz zatrzymują się na widoczną chwilę, gdy coś się w nich ' +
|
'czyni serwer około trzy razy szybszym przy sprawdzaniu ruchów — przy udowodnionym ' +
|
||||||
'dzieje, i wcale, gdy nic się nie dzieje. Manewry w historii wreszcie mówią, kto je wykonał, i ' +
|
'identycznym przebiegu gry.',
|
||||||
'nazywają pociąg, zamiast brzmieć jak anonimowe „CREW moved”. Szybkość odtwarzania jest ' +
|
|
||||||
'ustawieniem dla każdego gracza osobno i można ją całkiem wyłączyć — a teraz działa w obie ' +
|
|
||||||
'strony, więc możesz ją zwolnić dwu- lub trzykrotnie, jeśli wolisz się zatrzymać. Poprawki w ' +
|
|
||||||
'stosunku do v0.8.0, z pierwszej rozegranej na niej partii: ostatni ruch w serii znikał w chwili, ' +
|
|
||||||
'gdy się pojawiał, a plansza wracała do twojego własnego okręgu, zanim zdążyłeś spojrzeć; tury ' +
|
|
||||||
'botów przebiegały o wiele za szybko, by dało się je śledzić — teraz bot zapowiada, co zamierza ' +
|
|
||||||
'zrobić, i zatrzymuje się na chwilę przy każdej czynności. **Szybkość odtwarzania jest teraz ' +
|
|
||||||
'sterowana na ekranie gry**, obok powiększenia: naciśnij −, aby obserwować pozostałych wolniej, ' +
|
|
||||||
'aż do całej minuty na jeden manewr, albo wyłącz ją, by każdy ruch był rysowany od razu. ' +
|
|
||||||
'Wcześniej dawała się ustawić tylko z paska adresu, co nie przetrwało wejścia ze strony ' +
|
|
||||||
'startowej — więc dla każdego, kto trafiał do gry zwykłą drogą, nigdy nie działała. Poprawiono ' +
|
|
||||||
'także: podsumowanie końca Dnia pokazywało „0 dzisiaj" obok sumy kolizji, która temu przeczyła, ' +
|
|
||||||
'bo Dzień już się przewinął, gdy je czytałeś. Teraz nazywa Dzień: „2 w Dniu 1, 2 łącznie". A z ' +
|
|
||||||
'samej gry: Pomiń przeniesiono na lewą stronę wiersza, tam gdzie i tak patrzysz; wiersz mówi, na ' +
|
|
||||||
'KOGO czekasz i co robi, a nie tylko o ile jesteś z tyłu; a ustawienie szybkości wydłuża teraz ' +
|
|
||||||
'ruchy innych, nie wydłużając zegara — po własnej turze nie czekasz już na fazy za nią. I jest ' +
|
|
||||||
'wreszcie na co patrzeć: talia Centrali jest w końcu narysowana, zakryta i z liczbą kart, a ' +
|
|
||||||
'stos, którego właśnie dotknął ruch, podświetla się na tak długo, jak długo ten ruch jest na ' +
|
|
||||||
'ekranie — talia, gdy ktoś z niej dobiera, Dział, z którego bierze się kartę lub na który się ' +
|
|
||||||
'ją odrzuca, Złomowisko, gdy trafia tam zagrana karta. To, co się świeci, idzie za tym, co ' +
|
|
||||||
'jawne: karta dobrana zakryta z talii pozostaje prywatna, widać tylko, że talia maleje. ' +
|
|
||||||
'Podświetlony stos pulsuje teraz tak długo, jak długo ten ruch jest na ekranie, zamiast błysnąć ' +
|
|
||||||
'raz i zgasnąć tam, gdzie łatwo go było przeoczyć. Twoje własne akcje są chowane, gdy plansza ' +
|
|
||||||
'nadrabia zaległości: jest wtedy za grą, więc cokolwiek by zaproponowano, byłby to ruch wobec ' +
|
|
||||||
'pozycji już zmienionej; Pomiń jest zawsze o jedno kliknięcie. A odtwarzanie można spowolnić ' +
|
|
||||||
'bardziej niż wcześniej, aż dwudziestokrotnie, a nazwy faz w górnym wierszu utrzymują się przy ' +
|
|
||||||
'tych prędkościach wystarczająco długo, by je przeczytać. Złomowisko wreszcie nazywa kartę na ' +
|
|
||||||
'wierzchu — leżało odkryte przez cały czas i nie miało nic do powiedzenia, bo zaplanowany ' +
|
|
||||||
'pociąg zapisywano tam dwa razy: raz jako kartę i raz jako znacznik, któremu nie odpowiadała ' +
|
|
||||||
'żadna karta. **Wiąże się z tym decyzja zasad**: pociąg rozkładowy, który został ZAGRANY, jest ' +
|
|
||||||
'już w rozkładzie, więc przy przetasowaniu zostaje poza talią, zamiast wracać i jechać drugi ' +
|
|
||||||
'raz. ODRZUCONY nigdy nie był zagrany, więc wraca jak dotąd, a Extra wraca zawsze — Extra to ' +
|
|
||||||
'jeden przejazd, nie stałe miejsce. Trwające partie pozostają nienaruszone.',
|
|
||||||
fr_FR:
|
fr_FR:
|
||||||
'Contient Station Master v0.8.0.8 — vous pouvez maintenant regarder jouer les autres. LES ' +
|
'Inclut Station Master v0.8.0.9 — les bots jouent beaucoup mieux, et le serveur travaille ' +
|
||||||
'PARTIES EN COURS SUR CE SERVEUR NE SONT PAS AFFECTÉES et reprendront normalement. Jusqu’ici ' +
|
'plus vite. LES PARTIES EN COURS SUR CE SERVEUR NE SONT PAS AFFECTÉES et reprendront ' +
|
||||||
'un autre joueur pouvait déplacer un train sur toute la longueur de son district et la seule ' +
|
'normalement : aucune règle n’a changé. Un bot qui occupe une place libre planifie désormais ' +
|
||||||
'trace sur votre écran était une ligne de texte : votre plateau ne montrait que votre propre ' +
|
'tout son tour de manœuvres avant son premier mouvement, si bien qu’il livre les wagons aux ' +
|
||||||
'Zone de Bureau et celle de personne d’autre, et le tour entier d’un bot arrivait comme une ' +
|
'industries capables de les traiter au lieu de décider coup par coup, et il ramène les trains ' +
|
||||||
'position qui avait simplement changé. Désormais chaque coup est rejoué sur votre écran dans ' +
|
'accélérés en gare. Il ne prend plus de cartes face visible qu’il ne peut pas jouer pour les ' +
|
||||||
'l’ordre où il a eu lieu. La Zone de Bureau suit celui qui joue, si bien que vous voyez ses ' +
|
'défausser aussitôt, donc il développe son district — plus de voie, plus d’industries et bien ' +
|
||||||
'manœuvres progresser sur son plateau — c’est la partie qui vaut d’être vue, et celle que lire ' +
|
'plus souvent des voies d’évitement, parce qu’il pose désormais la voie là où elle ouvre ' +
|
||||||
'l’historique ne pouvait jamais rendre. Une ligne au-dessus du plateau indique de combien de ' +
|
'quelque chose à faire. Et il ne lance plus une Deuxième Section par erreur quand il voulait ' +
|
||||||
'coups vous êtes en retard et décompte, avec un bouton Passer si vous préférez ne pas ' +
|
'faire partir un train supplémentaire, ce qui causait beaucoup de ses collisions. Mesuré sur ' +
|
||||||
'attendre ; rien n’est perdu en passant, puisque chaque ligne est déjà dans le panneau ' +
|
'des milliers de parties simulées, un bot gagne maintenant environ 4,8 de Revenu par partie, ' +
|
||||||
'Historique. Les phases automatiques — Nouveau Train, la Grande Ligne, la relève — se ' +
|
'contre environ −0,3 auparavant. En coulisses, le calcul des endroits où un train peut aller ' +
|
||||||
'résolvaient entre un clic et le suivant sans jamais être dessinées, et marquent maintenant un ' +
|
'se fait désormais une fois par position au lieu de plusieurs, ce qui rend le serveur environ ' +
|
||||||
'temps visible quand quelque chose s’y produit, et aucun quand rien ne s’y produit. Les ' +
|
'trois fois plus rapide pour vérifier les coups — avec un jeu prouvé identique.',
|
||||||
'manœuvres dans l’historique disent enfin qui les a faites et nomment le train, au lieu de se ' +
|
|
||||||
'lire comme un « CREW moved » anonyme. La vitesse de relecture est un réglage par joueur et ' +
|
|
||||||
'peut être entièrement désactivée — et elle joue maintenant dans les deux sens, vous pouvez donc ' +
|
|
||||||
'la ralentir au double ou au triple si vous préférez prendre le temps. Corrections par rapport à ' +
|
|
||||||
'la v0.8.0, issues de la première partie jouée avec elle : le dernier coup d’une série ' +
|
|
||||||
'disparaissait à l’instant où il apparaissait, ramenant le plateau à votre propre district avant ' +
|
|
||||||
'que vous puissiez le voir, et les tours des bots défilaient bien trop vite pour être suivis — un ' +
|
|
||||||
'bot annonce désormais ce qu’il va faire et marque un temps sur chacune de ses actions. **La ' +
|
|
||||||
'vitesse de relecture est maintenant un réglage sur l’écran de jeu**, à côté du zoom : appuyez ' +
|
|
||||||
'sur − pour regarder les autres plus lentement, jusqu’à une minute entière pour une manœuvre, ' +
|
|
||||||
'ou désactivez-la pour que chaque coup soit dessiné d’un coup. Elle ne se réglait auparavant ' +
|
|
||||||
'que depuis la barre d’adresse, ce qui ne survivait pas à l’arrivée depuis la page d’accueil — ' +
|
|
||||||
'elle n’a donc jamais pris effet pour quiconque atteignait le jeu par le chemin normal. Corrigé ' +
|
|
||||||
'aussi : le récapitulatif de fin de Journée affichait « 0 aujourd’hui » à côté d’un total de ' +
|
|
||||||
'collisions qui le contredisait, la Journée ayant déjà tourné au moment de la lecture. Il nomme ' +
|
|
||||||
'la Journée : « 2 le Jour 1, 2 en tout ». Et à l’usage : Passer est désormais à gauche de la ' +
|
|
||||||
'ligne, là où se porte déjà le regard ; la ligne dit QUI vous attendez et ce qu’il fait, et pas ' +
|
|
||||||
'seulement de combien vous êtes en retard ; et le réglage de vitesse étire les coups des autres ' +
|
|
||||||
'sans étirer l’horloge, si bien qu’après votre propre tour vous n’attendez plus les phases qui ' +
|
|
||||||
'le suivent. Et il y a enfin où regarder : la pioche de la Direction est dessinée, face cachée ' +
|
|
||||||
'avec son compte, et la pile qu’un coup vient de toucher s’allume tant que ce coup est à ' +
|
|
||||||
'l’écran — la pioche quand quelqu’un y prend une carte, le Département d’où une carte est tirée ' +
|
|
||||||
'ou sur lequel elle est défaussée, la Casse quand une carte jouée y aboutit. Ce qui s’allume ' +
|
|
||||||
'suit ce qui est public : une carte piochée face cachée reste privée, et seule la pioche qui ' +
|
|
||||||
'raccourcit est montrée. La pile allumée pulse désormais tant que ce coup est à l’écran, au ' +
|
|
||||||
'lieu de clignoter une fois et de s’éteindre là où on la manquait facilement. Vos propres ' +
|
|
||||||
'actions sont rangées pendant que le plateau rattrape son retard : il est alors en arrière sur ' +
|
|
||||||
'la partie, et ce qui serait proposé serait un coup contre une position déjà changée ; Passer ' +
|
|
||||||
'est toujours à un clic. Et la relecture peut être ralentie plus qu’avant, jusqu’à vingt fois.',
|
|
||||||
},
|
},
|
||||||
migrations: {
|
migrations: {
|
||||||
/**
|
/**
|
||||||
@@ -299,6 +146,14 @@ export const current = VersionInfo.of({
|
|||||||
* eight seeds produced ZERO. A game that had somehow reshuffled would replay to a different deck
|
* eight seeds produced ZERO. A game that had somehow reshuffled would replay to a different deck
|
||||||
* order rather than refusing to replay, which is worth knowing and is not the same as breaking.
|
* order rather than refusing to replay, which is worth knowing and is not the same as breaking.
|
||||||
*
|
*
|
||||||
|
* v0.8.0.9 TOUCHES THE ENGINE FOR SPEED, AND PROVED IT CHANGED NOTHING. `git diff v0.8.0.8..v0.8.0.9
|
||||||
|
* -- src/engine/` adds a route cache scoped to one unchanged position (`withRouteCache`), splits
|
||||||
|
* `applyIntent` into `prepareIntent` + `commitEvents`, trims allocation in `exploreMoves`, adds
|
||||||
|
* `legalSwitchingActions`, and exports `badlyMadeUp`, `protoCard` and `extendLimitsIfNeeded` for the
|
||||||
|
* bot. No predicate's answer changed: every event and intent of 32 seeded games hashed identical before
|
||||||
|
* and after each step, and the game's `test/route-cache.test.ts` pins the split. Everything else is the
|
||||||
|
* developer bot, whose past moves are already intents in a save. Games in progress resume.
|
||||||
|
*
|
||||||
* A NEW STATE FIELD CANNOT STRAND A SAVE HERE, which is the property worth naming rather than
|
* A NEW STATE FIELD CANNOT STRAND A SAVE HERE, which is the property worth naming rather than
|
||||||
* re-deriving: a `SavedGame` holds `{ seed, config, history }` and NOT a serialised `GameState`.
|
* re-deriving: a `SavedGame` holds `{ seed, config, history }` and NOT a serialised `GameState`.
|
||||||
* Resuming calls `createGame` — which fills the new field from `setup.ts` — and then replays the
|
* Resuming calls `createGame` — which fills the new field from `setup.ts` — and then replays the
|
||||||
|
|||||||
+1
-1
Submodule station-master updated: 072029b1f7...76c6e103b3
Reference in New Issue
Block a user