rename for Klugscheisser

This commit is contained in:
Björn Runden committed 2026-04-06 19:12:45 +02:00
1 parent b9ee61b82d
commit b792de6a85
1 file changed
+2
+59
View File
@@ -0,0 +1,59 @@
# AI Prompt
Ich möchte eine Python-Anwendung für das CLI entwickeln, in dem Battleship, also Schiffe versenken, realisiert wird. Die Konfiguration soll in einer .env-Datei entstehen und so etwas wie Zeichen für Wasser, sprich Ozean, Zeichen für Schiff und Zeichen für Fehl. Auch soll im CLI Farbkodierung verwendet werden, zum Beispiel '~' blau-dunkel für den Ozean. Schiff soll ein helles Grau und ein Center-dot im dunklen Grau.
Auch sollen die Dimensionen des Spielfeldes vergeben werden und ein Rahmen ist ja der eigene , und ein Spielfeldrahmen ist der Gegnerrahmen, der zu Beginn komplett unveröffentlicht ist. Und es soll vielleicht noch kleine grüne Landinseln, mit char = zum Beispiel als großes, hellgrünes M.
Beispiel .env:
OCEAN_WIDTH=10
OCEAN_HEIGHT=10
COLOR_WATER=\033[34m
COLOR_SHIP=\033[37m
COLOR_MISS=\033[90m
CHAR_SHIP=O
CHAR_WATER=~
CHAR_MISS=·
ISLAND_CHAR=M
ISLAND_COLOR=\033[32m
FRAME_COLOR_SELF=\033[92m
FRAME_COLOR_ENEMY=\033[31m
SOUND_MISS=blupp.wav
SOUND_HIT=explosion.wav
MQTT_TOPIC=sink_my_ships
wir implementieren mit rich + input()
Es muss eine Hilfeseite (Legende) geben. darin dann die kurzen kommandos. Beide spielfelder müssen dargestellt werden können.
Und aus einer Legende muss ersichtlich sein, welches der Schiffe bereits positioniert ist während der Setzphase
oder welche Gegnerschiffe bereits abgeschossen wurden in der Spielphase.
insel: dunkel-grünes ‘M’, Schiff hellgraues ‘O’, treffer: Rotes ‘X’, miss dunkelgraues ‘·’ (aber nicht “Punkt” sondern center-dot) Ocean: dunkelblaue ‘~’Spielfeldrahmen: hell grüne ‘*’ für eigenens Spielfeld, dunkelrote ‘*’ f gegner spielfeld.sowohl das char als auch der styleund auch alles andere: Dimension der felder, schiff-shapes und auch die IPadresse des zu verbindenden gegners sind bitte in einer .env zu pflegen.
und nun zum größten Teil dieser Herausforderung:
Wir machen iterative Entwicklung:
wir kümmern uns Stück für Stück um Teilprobleme,
da wir Anfänger in python sind und du als ein Coach
Konzepte wie Formatted Strings. Listen und Iteratoren Text-Output in Farbe durch das Rich-Framework. Shape-Modellierung von Schiffen. Auslagerung der kompletten Konfiguration in eine .env-Datei. Verbindung zweier Instanzen über IPv4-Stack. Und zur Usability-Verbesserung vielleicht das prompt:toolkit.
im "Krieg"-Modus: Wenn ein Miss = Sound ausgabe von Blupp.wav, wenn ein Hit = Sound ausgabe von explosion.wav
Ich erwäge einen MQTT-Server zu nutzen oder eventuell einen Web-Server, aber es muss etwas sein, auf dem man sich treffen und schreiben zugreifen kann. Ich möchte ja einen Zug oder eine Bewegung eines Schiffes oder auch den initialen Ozean und die Position der Inseln mitteilen können.
Fest steht: ein mqtt server muss eingesetzt werden, Das "Topic" sollte konfigurierbar sein.
(= .env file)
transfer (.json) initialer Ocean,
schiffe,
Züge,
Textchat :-)