From 1abd5a8a9d2dd383f8f36ef24ccc756aa56f2b67 Mon Sep 17 00:00:00 2001 From: Jesse Date: Thu, 10 Sep 2026 05:51:28 -0400 Subject: [PATCH] =?UTF-8?q?0.8.0.6:0=20=E2=80=94=20bundle=20Station=20Mast?= =?UTF-8?q?er=20v0.8.0.6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The lit pile keeps pulsing for as long as that move is on screen, rather than flashing once and settling where it was easy to miss — measured at just under seven seconds lit at 10x, so it was never brief, only quiet. 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. That change could have locked a player out of their own game where requestAnimationFrame is missing and the queue therefore never drains, so there are now two fallbacks and a test pinning that the queue can always be emptied. And playback can be slowed to twenty times, because ten was the top of the ladder and was reported still a bit fast. Release notes updated in all five locales. Still no migration — git diff v0.8.0.2..v0.8.0.6 -- src/engine/ is empty. Games in progress resume. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01X6cF1iYvJ1kNmzYBzu4QX6 --- startos/versions/current.ts | 47 +++++++++++++++++++++++++++---------- station-master | 2 +- 2 files changed, 36 insertions(+), 13 deletions(-) diff --git a/startos/versions/current.ts b/startos/versions/current.ts index 418a8f6..e6fd5d2 100644 --- a/startos/versions/current.ts +++ b/startos/versions/current.ts @@ -10,10 +10,10 @@ export const current = VersionInfo.of({ // — 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 // 0.7.9:0 sees this as an update rather than refusing it as a downgrade. - version: '0.8.0.5:0', + version: '0.8.0.6:0', releaseNotes: { en_US: - 'Bundles Station Master v0.8.0.5 — you can watch the other players now. GAMES IN PROGRESS ON ' + + 'Bundles Station Master v0.8.0.6 — you can watch the other players now. GAMES IN PROGRESS ON ' + 'THIS SERVER ARE UNAFFECTED and will resume normally. Until now another player could move a ' + 'train the length of their district and the only trace on your screen was a line of text: your ' + 'board showed your own Office Area and nobody else’s, and a bot’s whole turn arrived as a ' + @@ -47,9 +47,14 @@ export const current = VersionInfo.of({ '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.', + '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. And playback can be slowed ' + + 'further than before, to twenty times.', es_ES: - 'Incluye Station Master v0.8.0.5 — ahora puedes ver jugar a los demás. LAS PARTIDAS EN CURSO EN ' + + 'Incluye Station Master v0.8.0.6 — ahora puedes ver jugar a los demás. LAS PARTIDAS EN CURSO EN ' + 'ESTE SERVIDOR NO SE VEN AFECTADAS y se reanudarán con normalidad. Hasta ahora otro jugador ' + 'podía mover un tren a lo largo de todo su distrito y el único rastro en tu pantalla era una ' + 'línea de texto: tu tablero mostraba tu propia Área de Oficina y la de nadie más, y el turno ' + @@ -85,9 +90,13 @@ export const current = VersionInfo.of({ '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.', + '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: - 'Enthält Station Master v0.8.0.5 — Sie können den anderen jetzt beim Spielen zusehen. LAUFENDE ' + + 'Enthält Station Master v0.8.0.6 — Sie können den anderen jetzt beim Spielen zusehen. LAUFENDE ' + 'PARTIEN AUF DIESEM SERVER SIND NICHT BETROFFEN und werden normal fortgesetzt. Bisher konnte ' + 'ein anderer Spieler einen Zug durch sein ganzes Revier bewegen, und die einzige Spur auf ' + 'Ihrem Bildschirm war eine Textzeile: Ihr Brett zeigte nur Ihren eigenen Dienstbereich und den ' + @@ -125,9 +134,14 @@ export const current = VersionInfo.of({ '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 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: - 'Zawiera Station Master v0.8.0.5 — teraz możesz obserwować grę pozostałych. TRWAJĄCE PARTIE NA ' + + 'Zawiera Station Master v0.8.0.6 — teraz możesz obserwować grę pozostałych. TRWAJĄCE PARTIE NA ' + 'TYM SERWERZE NIE SĄ NARUSZONE i zostaną normalnie wznowione. Do tej pory inny gracz mógł ' + 'przeprowadzić pociąg przez cały swój okręg, a jedynym śladem na twoim ekranie była linijka ' + 'tekstu: twoja plansza pokazywała wyłącznie twój własny Obszar Biura i niczyj inny, a cała ' + @@ -160,9 +174,14 @@ export const current = VersionInfo.of({ '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.', + '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.', fr_FR: - 'Contient Station Master v0.8.0.5 — vous pouvez maintenant regarder jouer les autres. LES ' + + 'Contient Station Master v0.8.0.6 — vous pouvez maintenant regarder jouer les autres. LES ' + 'PARTIES EN COURS SUR CE SERVEUR NE SONT PAS AFFECTÉES et reprendront normalement. Jusqu’ici ' + 'un autre joueur pouvait déplacer un train sur toute la longueur de son district et la seule ' + 'trace sur votre écran était une ligne de texte : votre plateau ne montrait que votre propre ' + @@ -200,7 +219,11 @@ export const current = VersionInfo.of({ '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.', + '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: { /** @@ -240,7 +263,7 @@ export const current = VersionInfo.of({ * `advance.ts`. It is a counter that nothing checks — no predicate reads it, so no once-legal move * became illegal. * - * v0.8.0.3 THROUGH v0.8.0.5 ADD NOTHING AGAIN: `git diff v0.8.0.2..v0.8.0.5 -- src/engine/` is empty. + * v0.8.0.3 THROUGH v0.8.0.6 ADD NOTHING AGAIN: `git diff v0.8.0.2..v0.8.0.6 -- src/engine/` is empty. * One moved the Skip button, changed what the waiting row says, and stopped the speed control * stretching the clock; one took a hostname out of comments; the last drew the Home Office deck * and lit the pile a watched move touched, which is a diff of two frames the client already diff --git a/station-master b/station-master index 3fca325..64e8ce5 160000 --- a/station-master +++ b/station-master @@ -1 +1 @@ -Subproject commit 3fca325699db097c88d7f91bfcc7dda53826933e +Subproject commit 64e8ce584f82e77f9083c6dd4ee3abd2aec8d72b