# Planung

## Einstellungen

- Aufteilung in Bereiche: 'einfach' — 'moderat' — 'komplex'
- Spielfeld drehen
- Größen (Kartenhöhe, Schriftgröße) automatisch von der Bildschirmauflösung
- Kartenvorschlag automatisch anzeigen

## Tunier

- alles ;-)

## Übersetzung (Quelltext)

- überarbeiten (%d, %u, %s)
- Syntax beim Einlesen überprüfen (%)

## Regeln

- Sonderpunkte separat verwalten
- Sonderpunkte auch im Solo
- Farbsolo nur mit den Farbkarten (Buben + Damen eingeordnet); wie Fleischloser mit Trumpffarbe
- Mutation (für einfachere Tests)
- Armut bei vier Trümpfen wenn einer ein Fuchs ist
- spezielle Armutregeln:
  - Abgabe am Anfang des zweiten Stichs
  - Nur an den Partner abgeben (Bei einer Hochzeit nach dem Klärungsstich, wenn kein Bräutigam gefunden wurde wird nicht geschoben)
    - Aufnahmepflicht
  - Pflicht, Farben zurückzugeben
  - Pflicht, Farben zurückzugeben
- Feigheit (wenn zwei weitere Ansagen möglich gewesen wären gibt es Strafpunkte)
- Schweine dürfen nur angesagt werden, wenn man vorher Re/Kontra angesagt hat
- Trumpfpflicht, wenn die Farbe nicht bedient werden kann (Feature Request 992922)
- „black lady”: die black lady hat mann wenn man beide pikdamen besitzt, dann ist die erste von beiden die allerhöchste karte von allen (inclusive) zusatzkarten. die zweite ist wieder normal eingereiht. (Feature Request 992922)
- Supergenscher: Nur wenn gegenschert wurde, dann zählen beide Karo Buben als Genscher (Feature Request 992922)

## Fehlerbericht

- Email eintragen (Email als Einstellung)
- Fehlerbericht automatisch senden

### nachspielen

- Fenster mit allen Schritten (Kennzeichnen, was schon getan wurde + menschliche Aktivitäten)
- Vorbehalt mit reinnehmen

## KI

- genauere Aufgliederung von Choosebestcard (nach Stichnummer)
- Refenz-KIs lauffähig (Klasse 'class VirtualGame : public Game')
- Mutation in der Konfiguration (für einfachere Tests)
- Kurz- und Langübesetzung der Konfiguration
- Heuristiken separat verwalten

## GUI

- Unterstützung für Sonderzeichen (wie Umlaute)
- Kontexthilfe (S-F1)
- Kontexteinstellungen (S-F2)
- Überarbeiten vom Speichern/Laden der Regeln/KIs
- Datenbank
- Stichhaufen: Fenster mit Übersicht der Stiche (Punkte, Sonderpunkte, Ansicht) (je nach Stichansicht in Regeln)
- Vorschau bei Graphiken
- Bei Wechsel ins Fehlerberichtsfenster: alten Fehlerbericht freigeben (für Windows)
- beliebigen Kartensatz, Kartenrückseite, Hintergrund (Tisch) suchen wenn der angegebene nicht vorhanden ist
- Fehlerbehandlung bei Kartensätzen, Symbolen, ... überarbeiten (bessere Handhabung, Übersetzen)
- KI-Konfiguration zurücksetzen (für einen Spieler)
- Symbole für alle Knöpfe
- Einheit bei den Verzögerungen schreiben
- Konfiguration nur für Spielertypen zulassen, die sich von 'Aiconfig' ableiten (Gegenbeispiel ist 'AiDummy')
- Internetseite ins Programm
- Nachrichten-Fenster: Nachrichten hinzufuegen, Nachrichten loeschen
- Graphikformat png (besser: allgemein, s.u.)
- Bild vom Spieler
- Animation

### Bedienung

- Mit Taste Karte auswählen
- Mit Mausrad Karte auswählen + Klick für wählen (nur zulässige Karten bei entsprechender Regel)
- Wenn Maus über Ansage-Bereich: nächste Ansgage anzeigen und bei Klick tätigen
- Klick auf letzten Stich(-haufen) zeigt letzten Stich
- bei Tastaturkürzel Menü schließen
- Strg-+, Strg-- für Vergrößern, Verkleinern der Kartengröße
- Wenn Schrift nicht gefunden: Schriftauswahl hoch
- Drag'n drop (Verzeichnisse fuer Themen, Hintergrund, Kartenhintergrund, Regel, ai-Konfiguration, Einstellungen)
- Klick auf dem Splash-Screen versteckt ihn
- Tab-Reihenfolge

### Informationen

- nicht ausspielbare Karten abdunkeln
- letzten Stich(haufen) einfaerben
- Zeigen, an wen der Stich bisher geht (aufhellen)
- wenn Maus ueber Karte beim Ausspielen: diese verdunkeln
- rechte Maustaste auf Karte: diese in den Vordergrund
- UhrCursor (beim Laden der Karten, während KI rechnet)
- Statusbar mit Nachrichten (ai denkt, Karten laden, ...)
- Spiel-Log (→ Regeln, z.B. letzter Stich)
- Statistiken der Spieler

### Tunierpunkte

- farblich markieren: Ausspieler, Solospieler, Spielart
- Rundenenden markieren
- Punkte für Spieler als Balken
- Fenster soll wie Notizblock aussehen, keine Fenstermanager-Rahmen
- Statistik (wie Spielerstatistik, bloß nur fuer das Tunier)

### Spielende

- Spiel nachspielen
- Knopf für aktuellen Spielstand / Tunierpunkte

### Windows

- Unterdrücken, daß alle Fenster einen eigenen Eintrag in der Febsterleiste neben dem Startmenü von Windows erhalten
- GTK-Thema mit Windows-Aussehen

## Graphik

- Unterstützung verschiedener Graphikformate. Die einfachste Lösung wäre, auf Dateiendungen zu verzichten (sofern GTK dann die Dateien richtig erkennt), das ist aber nicht üblich.
- Symbol Gegenansage
- Symbole für die Sonderpunkte (gefangen: Gittermuster, Doppelkopf: 40+)
- Osterthema
- Weihnachtsthema

## Dokumentation

- Ziemlich viel
- '$HOME/.FreeDoko' erwähnen

## Multiplayer

- überhaupt
- Wenn ein Client ausfällt: Ersatz durch KI
- Wenn der Server ausfällt: Übernahme von einem anderen Client
- Chat (?)

## Pakete

### Debian

- Pakete aufspalten:
  - freedoko-all: Alles (wie bisher)
  - freedoko: Programm + Uebersetzungen und andere Textdateien
  - freedoko-help: englische Hilfe
  - freedoko-hilfe: deutsche Hilfe
  - freedoko-cardset-xskat-french: xskat-Kartensatz (französisches Blatt)
  - freedoko-cardset-xskat-german: xskat-Kartensatz (deutsches Blatt)
  - freedoko-carsets-kdecarddecks: von 'kdecarddecks' übersetzte Kartensätze
  - freedoko-cardsets-pysol: von 'pysol' übernommene Kartensätze
  Den Kartensatz 'Altenburg' wird es nicht als separates Paket geben, das erlaubt die Lizenz nicht. Aus demselben Grund wird das Paket 'freedoko-all' unter 'non-free' stehen, der Rest kann unter 'main'.
- Eigene debian-Verzeichnisse (fuer 'apt-get')

### Windows

- Ein Installationspaket fuer alle Sprachen (anderer Installer?)

## Sonstiges

- In jede Ressourcendatei die Version schreiben
- Blattsortierung vom eigentlichen Blatt abkoppeln
- Sound

## Chrome

- Blatt setzen
- Stich zurücknehmen
- Anzeige der im Spiel noch nicht ausgespielten Karten
- beliebige Karte spielen
- Anzeige, welche Karten die Gegner noch haben koennen (Nutzen der KI)
- Hochzeit: Anzeige, wieviele Stiche man noch Zeit hat, um einen Partner zu finden.
- Text-Version
- Graphikendungen → UI (+ mehrere Graphikendungen: xpm, png, jpeg)

offizielle Internetseite