Patfinder
Projektzusammenfassung | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Zu diesem Projekt gibt es einen Thread im Forum.
Das Programm steht unter der GNU Public License (GPL) und sind damit kostenlos, aber (hoffentlich) nicht umsonst. Deswegen handelt es sich um Charityware: Sollte euch das Programm gefallen, dann bitte ich darum, den Geldbetrag, den euch das Programm wert ist, an einen wohltätigen Zweck eurer Wahl zu überweisen. Der Verwendungszweck ist freigestellt, doch bitte vergewissert euch, dass das Geld tatsächlich für wohltätige Zwecke verwendet wird. Als Orientierung kann beispielsweise das DZI Spenden-Siegel dienen.
Patfinder ist ein Patiencen-Manager zum Spielen und Verwalten von zur Zeit über 100 Patiencen. Jedes einzelne Spiel wird durch eine XML-Datei festgelegt und kann daher einfach geändert oder neuentwickelt werden. Patfinder liefert zu jedem Spiel und für jeden Benutzer eine getrennte Statistik der erzielten Punkte.
Spielprinzip


Bei Patiencen geht es in der Regel darum, Karten auf bestimmte Stapel zu spielen. Die genaueren Regeln sind sehr vielfältig. Eine kurze Anleitung aller von mir bisher umgesetzten Patiencen findet sich in den Spielregeln. Wer selbst eine Patience erstellen möchte, kann sich die Anleitung zum Aufbau der Spieldateien ansehen (im Download enthalten). Selbstverständlich nehme ich gern neue, interessante Patiencen in meine Sammlung auf.
Während Patiencen für gewöhnlich Spiele für eine Person sind, steht in der Zank-Patience und in der Patiencen Juse und Pisha Pasha ein (sehr einfacher!) Computergegner zur Verfügung, gegen den man im Kampf um das Kartenlegen antritt.
Bedienung


Das Programm besteht aus zwei Teilen: dem Verwaltungsprogramm patfinder (im Quelltext: patfinder.bi), in dem die einzelnen Patiencen (de)aktiviert, aktualisiert und gestartet werden, und dem Programmteil zum Spielen einer Patience, der aus historischen Gründen noch den Namen patwork trägt (patwork.bi). Seit Programmversion 3 handelt es sich aber nicht mehr um zwei eigenständige Programme, sondern sie wurden unter ein gemeinsames Dach vereint.
Das Spiel wird weitgehend mit der Maus bedient. Es gibt einige wenige Tastaturbefehle zur Spielsteuerung, wie z. B. die Zugrücknahme mit der Backspace-Taste oder der Hilfebildschirm mit der Taste 'h'. Genaueres steht in der beigelegten Datei README.TXT
Download
Aktuelle Version 4.0.250501 (Quelltext, ausführbare Datei für Windows und alle weiteren benötigten Dateien):
patfinder_4_0.zip (11,0 MB)
patfinder_4_0.7z (7.7 MB)
Der Download beinhaltet alle zur Zeit der Veröffentlichung verfügbaren 118 Patiencen. Wenn weitere hinzukommen, können diese direkt vom Programm aus installiert werden.
Hinweis: Das SVN-Repository scheint nicht mehr zu funktionieren.
Optionale Kartendecks:
- Ornate" von j4p4n: ein recht schönes Deck, aber nicht so sehr für kleine Kartengrößen geeignet - bei größerer Karteneinstellung mag es gehen.
https://programmierung.eulengesang.de/patfinder/Kartendeck_Ornate.7z (ca. 1 MB)
- ein Deck von momoko, dem ich den Namen "modern" gegeben habe und das auch bei kleinster Kartengröße gut erkennbar ist.
https://programmierung.eulengesang.de/patfinder/Kartendeck_Modern.7z[/list] (ca. 1 MB)
Neuerungen in Version 4
Quality of Life:
- Die Patiencen lassen sich mit Tags und einem Schwierigkeitsgrad versehen. Das Verwaltungsprogramm ermöglicht das Filtern nach diesen Tags bzw. nach dem Schwierigkeitsgrad.
- Die Felder in der Patience können mit einem <hilfe>-Tag versehen werden, dessen Inhalt beim Überfahren des Feldes mit der Maus in der Statusleiste angezeigt wird. Das Verhalten der Hilfsanzeige (immer anzeigen, nie anzeigen, nur bei gedrückter STRG-Taste anzeigen) kann in den Optionen eingestellt werden.
- Der Klick mit der mittleren Maustaste auf eine teils verdeckt liegende Karte zeigt diese komplett an.
- Optionen können jetzt auch direkt während des laufenden Spiels angepasst werden. Diese Änderungen gelten lokal bis zum Ende des Spiels. Um Einstellungen dauerhaft zu verändern, muss weiterhin das Verwaltungsprogramm verwendet werden.
- Die Möglichkeit, ein (vom Patiencenmanager aus gestartetes) laufendes Spiel neu zu starten, wird nun auch vom Spiel aus unterstützt.
Neue Inhalte:
- wieder eine Reihe an neuen Patiencen
- ein paar neue Kartenbilder, darunter ein vierfarbiges Set
- Kartenbilder werden jetzt pro Set und Größe in einer einzigen Bilddatei gespeichert.
- XML-Erweiterung, um beliebige Stapel mit einem Rand in beliebiger Farbe zu versehen; dieser Rand lässt sich auch über automatisierte Spielzüge verändern
- XML-Erweiterung, um den Wert von Feldattributen in Textausgaben (Hilfe, Anzeige, Meldung) einzubinden
- Bei den automatisierten Spielzügen haben sich die Namen der Verweise quelle und ziel geändert und heißen jetzt @quelle und @ziel. Ältere Patiencen-Dateien werden weiterhin korrekt ausgeführt, solange die darin angegebene Programmversion kleiner ist als 250501 (dies entspricht der Patfinder-Version 4.0). Ist die angegebene Programmversion jedoch 250501 (oder größer), müssen die oben genannten Verweise gegebenenfalls angepasst werden.
Bugfixes:
- Spielwiederholung sollten jetzt korrekt funktionieren.
- Die Spielstatistik wird nun direkt nach jedem Spiel aktualisiert.
- Darstellungsfehler beim Verschieben querliegender Stapel wurden behoben.
- Die graphische Darstellung beim Ausgrauen wurde komplett überarbeitet.
Patogenese
- v0.1: 30 Patiencen, verschiedene Legekontrollen, Regelsets für Spielvarianten, Punktewertung
- v0.2: Statistik über die vergangenen Spiele, graphische Aufbesserung
- v0.3: Paar-Vergleiche für Legeoperationen, die über die normalen Kontrollen hinausgehen; wurde in der folgenden Version durch Aktionen ersetzt
- v0.4: Aktionen für die Umsetzung komplexere Legeoperationen und -reaktionen
- v0.5: Online-Versions-Check und Online-Installation neuer/aktualisierter Patiencen; Speicherung eines Spiels bei Beenden und Laden beim Neustart; einzelne Erweiterungen der XML-Syntax
- v0.6: Bugfix eines unter Windows gelegentlich auftretenden Programmabsturzes; verschiedene Einstellmöglichkeiten, u. a. wählbare Kartenbilder und -größen
- v0.7: verschiedene kleinere Verbesserungen
- v0.8: Aktionen, die nach dem Spielerzug ausgeführt werden; dadurch können auch einfache Computerzüge umgesetzt werden
- v1.0: Erweiterung und Verbesserung animierter Spielzüge; flexibleres automatisches Legen
- v1.1: Bug behoben, der nur zu Beginn der "Launischen Damen" auftrat; Meldungsboxen lassen sich nun mit der Maus verschieben
Außerdem wird zur Zeit die Möglichkeit eingebaut, seine Leistung mit dem "allgemeinen Schnitt" zu vergleichen. Dies ist bisher jedoch nur bei sehr wenigen Patiencen umgesetzt. - v1.3: Einführung von Joker-Karten; diese können als Ersatz für jede Karte eingesetzt werden, jedoch (noch) nicht in Aktionen u. a. direkt angesprochen werden.
Kartenfelder können nun in Beziehung zueinander gesetzt werden, sodass bestimmte Aktionen an einem Feld vom Zustand eines anderen Feldes abhängig gemacht werden können. - v2.0: Aufräumarbeiten, Behebung diverser Bugs; offiziell stabile Version, compilierbar mit FreeBASIC v1.05
- v3.0: Zusammenfassung der beiden Programme zu einem Programm, Behebung einzelner Bugs, Aktualisierung einiger Patiencen
Erweiterung der XML-Syntax für automatisierten Spielzüge: Vergleich zweier beliebiger Karten, neue Legeposition "zufall" und die Möglichkeit, den Menütext, die Quelle und das Ziel neu zu setzen.
Verwendeter Compiler: fbc v1.09.0 - v3.1: Erweiterung der XML-Syntax: Möglichkeit, verdeckte Karten nicht automatisch aufzudecken; Legereihenfolge mit verschiedenem Symbol (z. B. Herz auf jedes Symbol außer Herz); etwas erweiterte Einstellungsmöglichkeiten für das automatische Legen
Noch ein bisschen mehr Anleitungen zum Erstellen eigener Patiencen (die wahrscheinlich keiner liest)
Die Patiencenzahl ist auf knapp über 100 angewachsen. - v4.0: Umfangreiche QoL-Verbesserung; Überarbeitung sämtlicher Patiencen, um diese QoL-Verbesserungen einzubauen.
Dateimanager |
---|
Es wurden bisher keine Sources abgelegt. |
SVN-Repository | |||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Changelog
(Hinweis: Es werden nur die bis zu 10 aktuellsten Commits angezeigt.)
|