Blackbox: Unterschied zwischen den Versionen

Aus Wiki CCC Göttingen
Zur Navigation springen Zur Suche springen
(Category: Projekte)
(Anleitung)
Zeile 17: Zeile 17:
Ein größerer Teil der bisher geschriebenen Software ist in [https://git.cccgoe.de/corvus/blackbox diesem Repository] zu finden.
Ein größerer Teil der bisher geschriebenen Software ist in [https://git.cccgoe.de/corvus/blackbox diesem Repository] zu finden.


== Anleitung ==
[[Datei:Blackbox_Anleitung.png|300px|rechts|Steuerung des Menüs zur Spielauswahl]]
Die Software besteht aus diversen Spielen, die über ein Menü ausgewählt werden können. Daneben sind noch eine Sammlung von Animationen enthalten. Der obere Teil der Menüansicht zeigt eine Vorschau des aktuell ausgewählten Spiels, der untere Teil dient der Steuerung:
* „unten“ ist da, wo der Aufkleber (Still blinking anyway) ist.
* Zurück zum Menü: Mit je einer Taschenlampe die beiden untersten Außen-Sensoren an den Seiten anleuchten ('''M''' im Bild)
* mit den gelben Buttons rechts und links kann zwischen den Spielen gewechselt werden.
* der mittlere, hellgrüne Button startet das ausgewählte Spiel ('''Start''' im Bild)
* die beiden Außensensoren an den mit '''O''' beschrifteten Feldern haben je nach Spiel unterschiedliche Funktionen (siehe Spalte „Optionen“ in Tabelle unten)
* Mit dem Außensensor rechts oben (bei '''E''') kann zu einer Reihe von Animationen/Effekten gewechselt bzw. zwischen diesen umgeschaltet werden
<div style="clear:both"></div>
{| class="wikitable"
{| class="wikitable"
|-
|-
! Name !! Source Code !! Video !! Beschreibung
! Spiel !! Beschreibung !! Optionen
|-
|-
| BB_Anim || || [https://nelaco.de/bb/bb_anim.mp4 Video] || Eine Animation.
| Blackbox || Finde mithilfe von Lichtstrahlen die Atome in einem unbekannten Molekül. Basiert auf einem [https://de.wikipedia.org/wiki/Black_Box_(Spiel) Brettspiel]. || Anzahl der Atome, dargestellt durch dunkelgrüne Felderreihe in der Vorschau. 4-6 auswählbar, Standard: 5.
|-
|-
| Blackbox || [https://git.cccgoe.de/corvus/blackbox/blob/master/blackbox.py Code] || [https://nelaco.de/bb/blackbox.mp4 Video] || Basiert auf einem [https://de.wikipedia.org/wiki/Black_Box_(Spiel) Brettspiel].
| Minesweeper || Die unterste Reihe ist die Legende für die Anzahl der angrenzenden Minen (1-8 von links nach rechts). Beliebige Randsensoren schalten den „Markiermodus“ um (oberste Reihe leuchtet rot). Markierte Felder können nicht versehentlich aufgedeckt werden. || Anzahl der Minen, dargestellt durch rote Randfelder. 8-20, Standard: 10.
|-
|-
| Flappy Square || [https://github.com/hwhw/usbbb-host/blob/master/flappy.py Code] || || Inspiriert von [https://de.wikipedia.org/wiki/Flappy_Bird Flappy Bird] und mit ähnlichem Frustpotential.
| Pairs || Prototyp eines Memory-artigen Spiels. Gameplay noch nicht final, die Randreihen dienen als Punkteanzeige. || Anzahl der Spieler, dargestellt durch dunkelgrüne Felderreihe in der Vorschau. 2-4 auswählbar, Standard: 2.
|-
|-
| Game of Life || || ||
| Reversi || Ein Spiel für zwei Spieler, das auch unter dem Namen [https://de.wikipedia.org/wiki/Othello_(Spiel) Othello] bekannt ist. Ziel ist es, möglichst viele der 8x8 Felder in der eigenen Farbe einzufärben, indem gegnerische Steine horizontal, vertikal oder diagonal (auch gleichzeitig) eingeschlossen werden. Zwei Ränder zeigen die Farbe des Spielers an, der am Zug ist, die anderen beiden dienen als (binäre) Punkteanzeige. || -
|-
|-
| HSL-Example || [https://github.com/hwhw/usbbb-host/blob/master/example-hsl.py Code] || || Eins der ersten Beispiele.
| Schachbrett || Zeigt ein Schachbrett an, tut sonst nichts weiter. || -
|-
|-
| MR || || [https://cccgoe.de/wiki/Datei:Blackbox.jpg Bild] || Viel buntes Licht.
| Snake || Prototyp, Steuerung noch nicht endgültig. || -
|-
|-
| Minesweeper || [https://git.cccgoe.de/corvus/blackbox/blob/master/minesweeper.py Code] || [https://nelaco.de/bb/minesweeper.mp4 Video] ||
| Tetris || Steuerung mit den unteren Außensensoren: ganz links und ganz rechts zum Verschieben, die beiden mittleren zum Drehen. Die linke Spalte ist eine (binäre) Punkteanzeige, die rechte obere Ecke zeigt die Farbe des nächsten Tetromino an. || -
|-
| Reversi || [https://git.cccgoe.de/corvus/blackbox/blob/master/reversi.py Code] || [https://nelaco.de/bb/reversi.mp4 Video] || Auch unter dem Namen [https://de.wikipedia.org/wiki/Othello_(Spiel) Othello] bekannt. Für zwei Spieler.
|-
| Snake || [https://git.cccgoe.de/corvus/blackbox/blob/master/snake.py Code] || ||
|-
| Spiral || || || Eine bunte Spiralanimation.
|-
| Waves || [https://github.com/hwhw/usbbb-host/blob/master/waves.cpp Code] || || Simuliert eine Wasseroberfläche.
|}
|}

Version vom 5. Oktober 2018, 22:27 Uhr


Ganz viel bunt
Ganz viel bunt

Inspiriert von dem Brettspiel Blackbox entstand dieses interaktive Spiele- und Animationsdisplay im Vorfeld des 33C3.

Hardware

  • 320 LEDs - aufgeteilt auf 96 Felder
  • 96 Fototransistoren (64 auf den inneren 8 x 8 Feldern + 8 auf jeder Außenseite)
  • 1 STM32 Microcontroller
  • 1 Raspberry Pi

Software

Die LEDs werden von dem Microcontroller angesteuert, der auch die Messwerte der Transistoren ausliest. Via USB ist der Raspi verbunden, auf dem dann die eigentlichen Programme laufen. Dazu existiert eine kleine C-Library mit Anbindungen zu C++ und Python.

Spiele und Animationen

Ein größerer Teil der bisher geschriebenen Software ist in diesem Repository zu finden.

Anleitung

Steuerung des Menüs zur Spielauswahl
Steuerung des Menüs zur Spielauswahl

Die Software besteht aus diversen Spielen, die über ein Menü ausgewählt werden können. Daneben sind noch eine Sammlung von Animationen enthalten. Der obere Teil der Menüansicht zeigt eine Vorschau des aktuell ausgewählten Spiels, der untere Teil dient der Steuerung:

  • „unten“ ist da, wo der Aufkleber (Still blinking anyway) ist.
  • Zurück zum Menü: Mit je einer Taschenlampe die beiden untersten Außen-Sensoren an den Seiten anleuchten (M im Bild)
  • mit den gelben Buttons rechts und links kann zwischen den Spielen gewechselt werden.
  • der mittlere, hellgrüne Button startet das ausgewählte Spiel (Start im Bild)
  • die beiden Außensensoren an den mit O beschrifteten Feldern haben je nach Spiel unterschiedliche Funktionen (siehe Spalte „Optionen“ in Tabelle unten)
  • Mit dem Außensensor rechts oben (bei E) kann zu einer Reihe von Animationen/Effekten gewechselt bzw. zwischen diesen umgeschaltet werden
Spiel Beschreibung Optionen
Blackbox Finde mithilfe von Lichtstrahlen die Atome in einem unbekannten Molekül. Basiert auf einem Brettspiel. Anzahl der Atome, dargestellt durch dunkelgrüne Felderreihe in der Vorschau. 4-6 auswählbar, Standard: 5.
Minesweeper Die unterste Reihe ist die Legende für die Anzahl der angrenzenden Minen (1-8 von links nach rechts). Beliebige Randsensoren schalten den „Markiermodus“ um (oberste Reihe leuchtet rot). Markierte Felder können nicht versehentlich aufgedeckt werden. Anzahl der Minen, dargestellt durch rote Randfelder. 8-20, Standard: 10.
Pairs Prototyp eines Memory-artigen Spiels. Gameplay noch nicht final, die Randreihen dienen als Punkteanzeige. Anzahl der Spieler, dargestellt durch dunkelgrüne Felderreihe in der Vorschau. 2-4 auswählbar, Standard: 2.
Reversi Ein Spiel für zwei Spieler, das auch unter dem Namen Othello bekannt ist. Ziel ist es, möglichst viele der 8x8 Felder in der eigenen Farbe einzufärben, indem gegnerische Steine horizontal, vertikal oder diagonal (auch gleichzeitig) eingeschlossen werden. Zwei Ränder zeigen die Farbe des Spielers an, der am Zug ist, die anderen beiden dienen als (binäre) Punkteanzeige. -
Schachbrett Zeigt ein Schachbrett an, tut sonst nichts weiter. -
Snake Prototyp, Steuerung noch nicht endgültig. -
Tetris Steuerung mit den unteren Außensensoren: ganz links und ganz rechts zum Verschieben, die beiden mittleren zum Drehen. Die linke Spalte ist eine (binäre) Punkteanzeige, die rechte obere Ecke zeigt die Farbe des nächsten Tetromino an. -