All projects Skibbo · Write-up

Plates in orderSchilder der Reihe nach

Skibbo is our own take on the stock-pile card game for the afternoon meeting, alone against bots or with friends: enamel number plates built up from 1 to 12 on four shared piles, the table laid out for the tablet first, and every hand kept to its own page.Skibbo ist unser eigenes Kartenspiel mit dem eigenen Stapel fürs Nachmittags-Meeting, allein gegen Bots oder mit Freunden: Nummernschilder aus Emaille, auf vier gemeinsamen Aufbaustapeln von 1 bis 12 gelegt, der Tisch zuerst fürs Tablet gemacht, und jede Hand bleibt auf ihrer eigenen Seite.

skibbo.ewolution.cloud Source

Type
Web appWeb-App
Stack
Svelte 5 · Node · Server-Sent Events
Year
2026
Code
Public on GitHubÖffentlich auf GitHub

Four piles from 1 to 12

Skibbo is our own take on the stock-pile card game, for the afternoon meeting: play out your stock before everyone else, onto four shared piles that count from 1 to 12. Alone, it opens straight onto the table against one to five bots. A table with friends gets a four-letter code, a link and a QR code; there are no accounts, a name and a seal are enough, and a reload or a locked phone puts you back in your seat. The host picks the game's length, one round or to 500, the size of the stock, teams of two with four or six at the table, a clock if the table wants one, and how well the bots play. The name is the app's own, and the wild card is simply the Joker.

The rules as printed

The rules were checked against the publisher's leaflets from 1980 to 2011 and the German one of 2003. 162 cards: twelve each of 1 to 12 and 18 Jokers. Everyone gets a stock with its top card face up, 30 cards with two to four players and 20 with five or six, or 10 for a short game, and four discard piles of their own. A turn starts by drawing up to five; then you play onto the piles in order, from your hand, your stock or the top of a discard pile, a Joker counting as whatever comes next. An empty pile takes a 1 or a Joker, a pile that reaches 12 is cleared, and the cleared piles become the new draw pile once it runs out. Empty your hand and you draw five more at once. You end the turn by laying a card from your hand on one of your discard piles. Whoever plays their last stock card wins the round: 25 points, and 5 for every card left in the others' stocks. With teams, you may also play from your partner's stock and discard piles, and a team wins once both its stocks are empty. One rule the leaflets leave open is decided here: a seat that can't play passes, and when every seat in a row has passed, the round ends without a winner.

162Cards: twelve each of 1 to 12, and 18 Jokers.
12The top of every pile; at 12 it's cleared away.
30Cards in a stock, 20 from five players, 10 for a short game.

Enamel plates

Every card is an enamel house-number plate, drawn in the page: white numerals and a white rim on Enzian blue for 1 to 4, fir green for 5 to 8 and fuchsia for 9 to 12, with a gloss across one corner and a small chip of the enamel gone at another, always the same one for the same card. The Joker carries all three colours and a white star, and once it's on a pile it shows the number it stands for. The table is a lime-washed wall with a navy street sign across the top, set in one typeface, Barlow Semi Condensed, and it stays light whatever the device prefers. The app's icon is one of the plates hanging from its screw, and when the installed app opens, it swings there for a moment.

Made for the tablet

The table is drawn for an iPad held sideways: the others along the top, each with their stock and all four discard piles fanned out, so you can see what the next player needs; the four piles in the middle, with a row of twelve dots under each that fills in blue, green and fuchsia as it climbs, and the draw pile and the cleared piles beside them; your stock, your four discard piles and your hand of five along the bottom. Held upright, the hand gets a row of its own. A laptop or a big screen gets the same table as large as the window allows, and a phone gets a layout of its own with the others' top cards only. You drag a plate onto a pile, or tap it and then the pile; the piles it fits light up. A card from your hand onto a discard pile ends the turn, so it waits for a check mark beside it. On a computer, number keys pick from the hand and letters pick the piles. Nothing on the table changes size or moves while you play, and the hand keeps its five places as cards leave it.

Hands stay secret

A Node server without dependencies keeps the tables in memory and sends every page the game as that seat may see it, over Server-Sent Events: its own hand, the others' hands only as a count, no stock card below the top and nothing of the draw pile. Your own moves show at once and fly to where they go while the server checks them; if it refuses one, the plate goes back. The others' moves fly the same way from their side of the table, one after another, so a quick bot never skips ahead of what you can follow.

Bots in three ranks

The bots play at the same three ranks as the other games here, and they see only what their own seat sees. The apprentice plays its stock card when it fits and otherwise whatever fits from its hand. The journeyman plans the turn towards its stock card, spends as few Jokers as it can, avoids setting up the next player and keeps its discard piles in descending runs. The master searches the turn's possible plays and weighs where they leave it against how close each opponent is to winning. Head to head, the journeyman beats the apprentice in about seven games out of ten, and the master beats the journeyman about as often. The master decides in well under a millisecond as a rule and has a hard stop at 150.

Alone, and offline

The rules and the bots are plain modules that the server and the page share, so a game alone runs entirely in the page and keeps playing without a connection once the app is installed. It's saved on the device as it goes, and finished games go into a small record of games played and won. A script plays whole games through the real page, a host and a guest and a bot, on an iPad's screen both ways and on a phone's, dragging and tapping as a person would, and checks that nothing on the table jumps. The page is in German and English and installs to a home screen.

Vier Stapel von 1 bis 12

Skibbo ist unser eigenes Kartenspiel mit dem eigenen Stapel, fürs Nachmittags-Meeting: den eigenen Stapel als Erstes leer spielen, auf vier gemeinsame Aufbaustapel, die von 1 bis 12 zählen. Allein öffnet es direkt den Tisch, gegen einen bis fünf Bots. Ein Tisch mit Freunden bekommt einen Code aus vier Buchstaben, einen Link und einen QR-Code; Konten gibt es keine, ein Name und ein Wappen reichen, und nach einem Neuladen oder mit gesperrtem Handy sitzt man wieder auf seinem Platz. Der Gastgeber wählt die Spiellänge, eine Runde oder bis 500, die Größe des Stapels, Teams zu zweit bei vier oder sechs am Tisch, auf Wunsch eine Uhr und wie gut die Bots spielen. Der Name ist der App eigener, und die wilde Karte heißt einfach Joker.

Die Regeln, wie sie gedruckt sind

Die Regeln sind mit den Spielanleitungen des Verlags von 1980 bis 2011 und der deutschen von 2003 abgeglichen. 162 Karten: je zwölf von 1 bis 12 und 18 Joker. Jeder bekommt einen Stapel, die oberste Karte offen, 30 Karten bei zwei bis vier Spielern und 20 bei fünf oder sechs, oder 10 für eine kurze Runde, und vier eigene Ablagen. Ein Zug beginnt mit Nachziehen auf fünf; dann legt man der Reihe nach auf die Aufbaustapel, aus der Hand, vom Stapel oder oben von einer Ablage, und ein Joker zählt als das, was als Nächstes kommt. Ein leerer Aufbaustapel nimmt eine 1 oder einen Joker, einer bei 12 wird abgeräumt, und die abgeräumten werden zum neuen Ziehstapel, wenn der alte leer ist. Ist die Hand leer, zieht man sofort fünf neue. Der Zug endet mit einer Karte aus der Hand auf einer der eigenen Ablagen. Wer die letzte Karte seines Stapels legt, gewinnt die Runde: 25 Punkte und 5 für jede Karte, die den anderen im Stapel bleibt. Im Team darf man auch vom Stapel und den Ablagen des Partners legen, und ein Team gewinnt, wenn beide Stapel leer sind. Eine Regel, die die Anleitungen offenlassen, ist hier entschieden: Wer nicht legen kann, passt, und haben alle der Reihe nach gepasst, endet die Runde ohne Sieger.

162Karten: je zwölf von 1 bis 12 und 18 Joker.
12Das Ende jedes Aufbaustapels; bei 12 wird er abgeräumt.
30Karten im Stapel, ab fünf Spielern 20, 10 für eine kurze Runde.

Schilder aus Emaille

Jede Karte ist ein Hausnummernschild aus Emaille, in der Seite gezeichnet: weiße Ziffern und ein weißer Rand auf Enzianblau für 1 bis 4, Tannengrün für 5 bis 8 und Fuchsia für 9 bis 12, mit einem Glanz über einer Ecke und einer kleinen abgeplatzten Stelle an einer anderen, für dieselbe Karte immer dieselbe. Der Joker trägt alle drei Farben und einen weißen Stern, und auf einem Aufbaustapel zeigt er, welche Zahl er ist. Der Tisch ist eine gekalkte Wand mit einem marineblauen Straßenschild oben, gesetzt in einer einzigen Schrift, Barlow Semi Condensed, und er bleibt hell, egal was das Gerät bevorzugt. Das Icon der App ist eines der Schilder, das an seiner Schraube hängt, und beim Öffnen der installierten App schwingt es dort einen Moment.

Fürs Tablet gemacht

Der Tisch ist für ein quer gehaltenes iPad gezeichnet: oben die anderen, jeweils mit ihrem Stapel und allen vier Ablagen aufgefächert, damit man sieht, was der Nächste braucht; in der Mitte die vier Aufbaustapel, unter jedem eine Reihe aus zwölf Punkten, die sich beim Aufbauen blau, grün und fuchsia füllt, daneben der Ziehstapel und die abgeräumten Stapel; unten der eigene Stapel, die vier eigenen Ablagen und die Hand mit fünf Karten. Hochkant bekommt die Hand eine eigene Reihe. Ein Laptop oder ein großer Bildschirm zeigt denselben Tisch so groß, wie das Fenster es zulässt, und das Handy hat ein eigenes Layout mit nur den obersten Karten der anderen. Man zieht ein Schild auf einen Aufbaustapel oder tippt es an und dann den Aufbaustapel; die, auf die es passt, leuchten auf. Eine Karte aus der Hand auf eine Ablage beendet den Zug, deshalb wartet sie auf ein Häkchen daneben. Am Computer wählen Zahlentasten aus der Hand und Buchstaben die Aufbaustapel. Nichts auf dem Tisch ändert beim Spielen Größe oder Platz, und die Hand behält ihre fünf Plätze, wenn Karten sie verlassen.

Die Hände bleiben geheim

Ein Node-Server ohne Abhängigkeiten hält die Tische im Speicher und schickt jeder Seite per Server-Sent Events das Spiel so, wie ihr Platz es sehen darf: die eigene Hand, die der anderen nur als Anzahl, keine Stapelkarte unter der obersten und nichts vom Ziehstapel. Die eigenen Züge zeigen sich sofort und fliegen an ihren Platz, während der Server sie prüft; lehnt er einen ab, geht das Schild zurück. Die Züge der anderen fliegen genauso von ihrer Seite des Tisches herüber, einer nach dem anderen, damit ein schneller Bot nie weiter ist, als man folgen kann.

Bots in drei Rängen

Die Bots spielen in denselben drei Rängen wie die anderen Spiele hier, und sie sehen nur, was ihr eigener Platz sieht. Der Lehrling legt seine Stapelkarte, wenn sie passt, und sonst, was aus der Hand passt. Der Geselle plant den Zug auf seine Stapelkarte hin, gibt so wenige Joker aus wie möglich, bereitet dem Nächsten nichts vor und hält seine Ablagen in absteigenden Reihen. Der Meister durchsucht die möglichen Züge und wägt ab, wo sie ihn hinbringen und wie nah jeder Gegner am Sieg ist. Im Zweikampf schlägt der Geselle den Lehrling in etwa sieben von zehn Spielen, und der Meister den Gesellen ungefähr genauso oft. Der Meister entscheidet in aller Regel in weit unter einer Millisekunde und hat einen harten Stopp bei 150.

Allein, auch offline

Regeln und Bots sind einfache Module, die Server und Seite teilen, so läuft ein Spiel allein ganz in der Seite und spielt ohne Verbindung weiter, sobald die App installiert ist. Es wird beim Spielen auf dem Gerät gespeichert, und fertige Spiele kommen in eine kleine Bilanz aus gespielten und gewonnenen Spielen. Ein Skript spielt ganze Spiele durch die echte Seite, ein Gastgeber, ein Gast und ein Bot, auf dem Bildschirm eines iPads in beiden Richtungen und auf dem eines Handys, und zieht und tippt dabei wie ein Mensch; es prüft, dass nichts auf dem Tisch springt. Die Seite ist auf Deutsch und Englisch und lässt sich auf den Home-Bildschirm legen.