kk logo

Tetris ist der absolute König der Puzzlespiele und auf einer 8x32 LED-Matrix fallen die Steine wie von einem Hochhaus, gut das Joystick, die Steine ultimativ schnell beschleunigt. In diesem Projekt zeige ich dir, wie du den Klassiker hochkant auf dein Display bringst, inklusive Highscore-Anzeige und Helligkeitssteuerung ABER Vorsicht, das Spiel ist wird nur auf 8 Pixeln Breite gespielt🕹️. 

Eines von 60 Highlights aus meiner Neopixel-Spielesammlung!

Arduino Tetris auf 8x32 NeoPixel, geht das?

Das klassische Tetris-Feld ist normalerweise 10 Pixel breit. Ich nutze hier 8 Spalten, was das Spiel deutlich rasanter macht. Durch die enorme Höhe von 32 Pixeln ist genug Platz für ein fettes Highscore-Display, das sogar dreistellige Ergebnisse (über 99 gelöschte Linien) problemlos anzeigen kann. Nimmst du diese Herausforderung an? 

Die Features im Überblick

  • Vertikaler Modus: Keine Lust auf Umbauen? Stell deine Matrix einfach hochkant auf (Kabelanschluss unten). Der Code erledigt die Rotation für dich!
  • Hardware-Schutz: Damit deine Augen nicht "durchbrennen", habe ich die auf 60 Limitiert.
  • Dynamic Speed: Je mehr Linien du löschst, desto schneller fallen die Steine.
  • Arcade-Steuerung: Präziser Joystick-Drop und Button-Rotation für das echte Spielhallen-Gefühl.

Die Verdrahtung

Für das volle Erlebnis nutzt du am besten ein Joystick-Shield oder baust dir dein eigenes Pult mit vier Tastern.

Komponente Pin am Arduino Beschreibung
8x32 Matrix D9 Dateneingang (DIN)
Joystick X-Achse A0 Steine nach links/rechts bewegen
Joystick Y-Achse A1 Soft Drop: Stein schnell nach unten jagen
Button A D2 Stein rotieren
Button B D3 Helligkeit erhöhen (nur im Startmenü)
Button C D4 Start / Reset
Button D D5 Helligkeit verringern (nur im Startmenü)

Bedienungsanleitung

  1. Start: Nach dem Einschalten siehst du ein gelbes "GO". Hier kannst du mit Button B und D die Helligkeit anpassen.
  2. Loslegen: Drücke Button C, um die Steine fallen zu lassen.
  3. Action: Nutze den Joystick für die Bewegung. Der Soft Drop (Joystick ziehen) ist extra schnell eingestellt, damit du keine Zeit verlierst!
  4. Game Over: Wenn das Feld voll ist, blitzt die Matrix rot auf und zeigt dir deinen Score vertikal untereinander an. Mit Button C landest du wieder im Startmenü.

3 Arduino R4 Tetris extrem der ultimative Arcade Klon im Hochhaus Format

Der Arduino Code für das Hochhaus Tetris Spiel

 

Damit du das Spiel perfekt auf dein eigenes Gefühl abstimmen kannst, zeige ich dir hier genau, an welchen Stellschrauben du im Code drehen musst um die Geschwindigkeiten anzupassen. 

1. Die Start-Geschwindigkeit
Ganz oben im Bereich der Konfiguration findest du diese Zeile:

  • const int SOFT_DROP_SPEED = 40; // Joystick-Fallgeschwindigkeit in ms
    • Was sie macht: Das ist das Tempo, mit dem die Steine zu Beginn des Spiels ganz von alleine fallen.
    • Anpassung: Wenn dir 300 ms noch zu langsam sind, stelle den Wert kleiner (z. B. auf 200). Willst du es gemütlicher, stelle ihn höher (z. B. auf 400).

2. Der "Soft Drop" (Joystick nach unten)
Diese Variable ist neu und steuert nur die Reaktion auf deinen Joystick:

  • const int SOFT_DROP_SPEED = 40; // Joystick-Fallgeschwindigkeit in ms
      • Was sie macht: Sobald du den Joystick nach unten ziehst, wird die normale Fallgeschwindigkeit ignoriert und dieser Wert genutzt.
      • Anpassung: Mit 40 ms rasen die Blöcke förmlich nach unten. Wenn dir das zu hektisch ist, erhöhe den Wert auf 80 oder 100.

3. Der automatische Speed-Up (Level-System)
Damit es nicht langweilig wird, erhöht der Arduino das Tempo jedes Mal, wenn du eine Reihe löschst. Das passiert in der Funktion clearLines():

  • fallSpeed = max(80, fallSpeed - 8);
    • Was sie macht: * Die -8 bestimmt, um wie viele Millisekunden das Spiel pro gelöschter Reihe schneller wird.
      • Die 80 ist die absolute Geschwindigkeitsgrenze (das "Limit"). Schneller als 80 ms wird das Spiel niemals, damit es noch spielbar bleibt.
      • Anpassung: Wenn das Spiel schneller "anziehen" soll, ändere die - 8 in eine - 15.

ACHTUNG!!!🕹️

Wenn du den Code anpasst, ändere immer nur einen Wert dieser Zeiten und teste kurz, wie sich das Spielgefühl verändert. So findest du am schnellsten dein persönliches "Arcade-Setup"! 

Kontakt

visitenkarte

Ronnie

schwäbischer tüftler und bastler, kraftsportler, neurodivers, 45 Jahre, 1 Frau, 5 Kinder und 1003 Ideen. 

1.2 ronnie berzins