knuspermagier.de
Ein L und zwei P. Philipp!

Lahme Farben (2)

Ich würde nicht sagen, dass es in dieser Ausbaustufe schon besonders viel Spaß macht, denn es ist visuell noch nicht besonders ansehnlich, aber die Spielmechanik sollte soweit funktionieren.

Es gibt also:

  • Einen Startscreen, an dem man auswählt wie viele SpielerInnen teilnehmen, und Namen eintragen kann.
  • Einen Endscreen, der kommt, wenn alle im Ziel sind, der die Zuordnungen auflöst und sagt, wer SiegerIn ist.
  • Einen Screen auf dem man die Regeln / den Spielablauf lesen kann.
  • und natürlich den Screen, auf dem gespielt wird. Mit einem Spielfeld, dass zumindest irgendeine Form hat, Spielfiguren, auch wenn es nur 50x50 Pixel große divs sind und einen Würfel-Button

Wie ich mir schon dachte, war es gar nicht leicht alle möglichen Edge-Cases herauszufinden. Natürlich sind manche Züge nicht erlaubt, und dürfen nicht angezeigt werden. Der Würfel-Button soll auch nur aktiviert sein, sobald man beide Züge durchgeführt hat — außer natürlich es ist kein weitere Zug möglich, weil z.B. schon alle Spielfiguren mit der gewürfelten Farbe im Ziel sind. Das will alles abgedeckt werden.

screenshot-2022-02-25-at-22.09.56.png
Nein, es gibt noch keine KI, aber auch keinen Namensgenerator für unbesetzte Spieler.

Ich entschied mich ja, mal wieder, dafür, Svelte eine Chance zu geben, aber ich glaube, ich werde nicht besonders warm damit. Auch wenn ich die Single File-Herangehensweise, wie ich sie von Vue kenne, gut finde, ist es mir ein bisschen zu viel compile-time Magic. Zum Beispiel dieses deklarieren von reactive Statements:

$: {
    console.log(‘the count is ‘ + count);
    alert(‘I SAID THE COUNT IS ‘ + count);
}

Dazu so Syntax-Sugar wie, dass man den Wert eines Stores direkt mit $storeName aufrufen kann, obwohl der Store halt eigentlich in storeName definiert ist. Sorry an alle, die noch nie einen Blick auf Svelte warfen, für euch ist dieser Abschnitt sicher nicht sehr gehaltvoll.

Mit der Zeit kommt man natürlich damit klar, insgesamt hab ich mich in letzter Zeit allerdings doch mit Sachen angefreundet, die einfach plain JavaScript sind.


Ich habe den, natürlich Quatschprojekt-mäßig furchtbaren, Code mal zu Github gepusht und einen Build hochgeladen, wenn man das ausprobieren möchte. Meilenstein Eins habe ich damit erfolgreich und mit viel Spaß und nur wenig Frustration erreicht. Nun stehe ich am Scheidepunkt: Gehe ich weiter zum nächsten Meilenstein, oder fange ich wieder was neue an?

In meiner ursprünglichen Planung habe ich zwei weitere Schritte geplant:

  • Ein Backend, mit Websockets, damit man das Spiel über das ✨Internet✨ mit FreundInnen spielen kann
  • Das Spiel visuell ansprechend machen. Das Spielfeld sollte irgendwie schön aussehen, die Spielfiguren echte Figuren sein, die man per Drag’n’Drop bewegen kann, statt diese langweiligen Buttons, etc.

Ich fürchte, das Backend ist das, was ich schneller hinkriege, denn das visuelle macht mir natürlich sowohl kreativ als auch von der Umsetzung her wahrscheinlich mehr Probleme und hat größeres Frust-Potential.

Schauen wir mal!

Kommentare, Feedback und andere Anmerkungen?
Schreib mir eine E-Mail 🤓