Szenario: Während Sie programmieren, verspüren Sie einen plötzlichen nostalgischen Drang nach den 80ern und kitschigen Spielen.
Anforderungen: Erstellen Sie ein GUI-Programm (Text wird wahrscheinlich nicht funktionieren) für Simon, das Spiel. Die Eingabe kann durch Klicken oder Drücken einer Taste erfolgen. Sie sollten den Bildschirm in 4 Bereiche unterteilen: Gelb, Blau, Rot, Grün. Wenn das Spiel startet, leuchtet eine zufällige Farbe auf und du aktivierst sie. Dann leuchten nacheinander zwei Lichter auf und Sie müssen diese in der richtigen Reihenfolge aktivieren. Das Spiel endet, wenn Sie die falsche Farbe drücken.
Boni:
-100, wenn Sie Sound einschließen (eine andere Note wird gespielt, wenn Sie auf die einzelnen Regionen drücken und wenn das Spiel die Farben anzeigt)
-25, wenn Sie einen Punktezähler einschließen.
Antworten:
Bash
318297281273268244240-125 = 115Dies ist in erster Linie eine Antwort auf "Text wird wahrscheinlich nicht funktionieren". der folgende Text-basierte Bash - Skript läuft gut in
Konsole
,gnome-terminal
usw. auf meinem Ubuntu 14.04 Maschine. Zum Erstellen der Farbbereiche wird die Texthintergrundfarbe festgelegt. Tatsächlich macht das Hinzufügen von Text das Spiel farbenblinden Spielern zugänglicher. Um das Spiel noch zugänglicher zu machen, werden die Zeichen gelesen, die der Spieler drücken muss (es wird davon ausgegangen, dass diesespeak
installiert ist). Es geht auch davon aus, dass die einzige Datei Anpassung/d*/ur*/
ist/dev/urandom
. Damit die Farbbereiche eine nicht triviale Größe haben, möchten Sie die Textgröße wahrscheinlich auf eine ziemlich große Größe einstellen. Auch wenn die Farbbereiche Quadranten sein sollen, müssen Sie sie in einem Terminal ausführen, das zwei Zeichen breit ist.Zum Abspielen drücken Sie y, r, g oder b.
Diese Lösung enthält zwei nicht druckbare ESC-Zeichen. Obwohl diese ESC-Zeichen in der Vorschau angezeigt werden, scheinen sie nach der Übermittlung gelöscht zu werden, sodass der obige Code ein Wrapper ist, der den Golfspieler generiert und ausführt
simon_golf.sh
.Siehe auch die ursprüngliche ungolfed-Version und die etwas besser spielbare 256-Byte-Version .
Die folgenden Screenshots sind, wenn das gelbe Licht leuchtet und der Punktestand des Spielers 7 beträgt. Der Screenshot rechts wurde entsättigt, um Farbenblindheit zu simulieren.
quelle
Kratzer, 1604 - 125 = 1479
Ich bin hier zum Spaß, nicht zum Golfen.
Bearbeiten: Aktualisierte Bewertungsmethode basierend auf dem Konsens der Community .
Hauptprogramm:
Einzelne Sprites:
Dies ist das Sprite mit der Nummer
0
. Die anderen Sprites haben bis auf die Nummer dasselbe Skript.Spielen Sie mit ihrem Online .
Für die Bytezählung verwendeter Code: (Codeausschnitt zum Ausblenden des Codes verwenden)
Code-Snippet anzeigen
Hinweis: Code, der automatisch mithilfe des Scratchblock-Generators generiert wird , wurde geändert, da der Generator Dezimalzahlen nicht korrekt verarbeitet (wobei 0,3 als 0 behandelt wird).
Bildschirmfoto:
Hinweis: Bitte drücken Sie nicht innerhalb von 0,3 Sekunden zwei Tasten.
quelle
Mathematica, 409 - 125 = 284
quelle
Windows PowerShell (CLI), 272 - 100 - 25 = 147
Ich habe hier Zeilenumbrüche hinzugefügt, um ein seitliches Scrollen zu vermeiden, aber es funktioniert als eine Zeile, sodass die Anzahl der Zeichen ohne Zeilenumbrüche ist.
Bildschirmfoto:
Spielen:
Bemerkungen:
quelle
ZXBasic: 422 - 100 - 25 = 297
Dies gilt definitiv als nostalgischer Drang für die 80er ...
ZXBasic verwendet eine Kombination aus Befehlen vom Typ FreeBASIC und ZX Spectrum BASIC, um Schleifen und Wiederholungen zuzulassen, die dann in das TZX-Format umgewandelt werden, um in einen Spectrum-Emulator geladen zu werden.
Diese Version ändert den Rand (obwohl eine Legende auf dem Bildschirm angibt, welche Taste gedrückt werden muss). Es spielt die gleichen Noten wie das ursprüngliche Simon-Spiel ( http://en.wikipedia.org/wiki/Simon_%28game%29 ).
quelle
HTML5 und Javascript, 1118-100-25 = 993 Bytes
Viel zu aufgeblähte HTML + Js-Version.
Spielt Sounds über die Web-Audio-API ab .
Die Frequenzen der Noten sollten denen des Originals entsprechen, auch die Farben und die Farbplatzierung.
Eine Online-Demo finden Sie hier: http://www.dantonag.it/miniSimon.html . Funktioniert in Web-Audio-kompatiblen Browsern (mindestens Chrome und Firefox, IE unterstützt es nicht, AFAIK).
Mein Rekord liegt bei 15 (ich bin ziemlich schlecht in diesem Spiel). Welches ist deines?
quelle