Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

[Spiel: Patience] Patfinder
Gehe zu Seite Zurück  1, 2
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 15.08.2009, 14:13    Titel: Antworten mit Zitat

@Muh:
Mit einer Child-Struktur ála root->getNode("XY OR NUMERICAL ID")->text(), oder einer DOM/XPath-artigen Ansprechbarkeit wie bspw. root->getNode("/xyz/578/890")->getNode("/lala")->text()?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 28.08.2009, 14:44    Titel: Antworten mit Zitat

Nachdem ich jetzt drei Tage nichts neues mehr am Programm gemacht, sondern nur noch Fehler gesucht (und auch gefunden und ausgebessert) habe, mag ich nicht mehr. Hier Version 0.2.90827, die ich einfach mal zur ersten stable-Version erkläre.

Das Programm besteht aus zwei Teilen: patfinder verwaltet die Patiencen, startet sie und wertet sie aus, während patwork nur für den Ablauf der einzelnen Patience zuständig ist. Für gewöhnlich läuft der Start eines neuen Spieles über patfinder.

Wie es sich für eine anständige stable gehört, gibt es auch schon den ersten Bug in der kompilierten Windows-Version - die temporäre Datei wird nicht wieder gelöscht. Ist im Quellcode bereits korrigiert, komme jetzt aber nicht ohne Rechnerneustart an ein neues Windows-Compilat.

Download Source, Spieldaten und compilierte Dateien (exe und elf)
http://programmierung.eulengesang.de/patfinder/patfinder.zip (448 kB)

Geplant für die nächste stable:
* The_Muhs Spielstand-Speicherung
* Internet-Check der Programmversion
* evtl. Auswahl/Nachladen neuer Patiencen über Netz
* ob ich die Regelanleitungen über Internet lasse, weiß ich noch nicht
* selbstverständlich Weiterentwicklung der XML-Syntax
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 03.02.2010, 23:13    Titel: Antworten mit Zitat

Obwohl ich mir die Spielspeicherung fest als Ziel für die nächste stable vorgenommen hatte, gab es nun doch eine ganze Menge anderer Dinge, die mir wichtiger waren. Die XML-Syntax wurde weiter verfeinert und um Aktionen erweitert, um einerseits den Spielen mehr Möglichkeiten zu eröffnen und andererseits die Syntax trotzdem übersichtlich und intuitiv zu halten. Auch die Bedienbarkeit wurde (hoffentlich) wesentlich verbessert, und die Anzahl der Spiele wurde weiter erhöht. Außerdem verwende ich teilweise Stuebers Listentyp, was den benötigten Speicherbedarf ein Stück reduziert hat.

http://programmierung.eulengesang.de/patfinder/patfinder.zip (ca. 328 kB)

Gegen meine eigene Politik liegen neben dem Quelltext nur die exe- und keine elf-Dateien bei, um weniger visierte Computernutzer, denen ich den Link schicken möchte, nicht zu verwirren. grinsen
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 13.04.2010, 22:03    Titel: Antworten mit Zitat

Windows regt mich auf. Ist es normal, dass der fbc 0.20.0 bei
Code:
put #f,, len(lp.id)

meckert und ich das als
Code:
with lp
  put #f,, len(.id)
end with

umschreiben muss? Und das Konstanten nicht immer den richtigen Integerwert speichern?
Ich habe es seltsamerweise noch nie geschafft, eine unter Linux funktionierende Version auch unter Windows ohne Änderung zu compilieren. mit den Augen rollen

Wie auch immer: Es gibt eine neue Version v0.5 mit ein paar Neuerungen:
* Online-Versions-Check und Online-Installation neuer/aktualisierter Patiencen
* Speicherung eines Spiels bei Beenden und Laden beim Neustart
* ein paar Erweiterungen der XML-Syntax
* ein paar Bugfixes

Die Windows-Version flackert leider etwas, wenn eine Karte über einem passenden Stapel bewegt wird.
[edit: Das Flackern sollte inzwischen behoben sein]

Download (exe, Spieldateien und Quellcode): zip oder 7z
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.


Zuletzt bearbeitet von nemored am 16.04.2010, 20:52, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Muttonhead



Anmeldungsdatum: 26.08.2008
Beiträge: 546
Wohnort: Jüterbog

BeitragVerfasst am: 14.04.2010, 17:23    Titel: Antworten mit Zitat

*kopfkratz*
Hab das hier bei dir gefunden...
Code:
for each(.vergleich)
'
'
next


hab ich so noch nie gesehen, ich gehe mal davon aus das each (noch) kein Schlüsselwort ist! Wo ist das denn dokumentiert?

Mutton
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
MOD
Fleißiger Referenzredakteur


Anmeldungsdatum: 10.09.2007
Beiträge: 1003

BeitragVerfasst am: 14.04.2010, 17:32    Titel: Antworten mit Zitat

Das wird ein Macro sein, durchsuch die Dateien einfach mal na "#define each".
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 14.04.2010, 17:34    Titel: Antworten mit Zitat

Das ist eine spezielle Definition in der List.bi (oder einer der anderen Dateien) von Stuebers Listentypen. Wird vom Compiler ersetzt durch etwas in der Art von (weiß ich gerade nicht auswendig)
Code:
FOR fb_i AS INTEGER = 1 TO .vergleich.count

_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Stueber



Anmeldungsdatum: 07.07.2008
Beiträge: 202

BeitragVerfasst am: 14.04.2010, 18:52    Titel: Antworten mit Zitat

Jop, genau so wirds gemacht. Schön das du meinen Type benutzt. lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 14.04.2010, 21:54    Titel: Antworten mit Zitat

Schön, dass so ein Type zur Verfügung steht. lächeln
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 06.08.2010, 20:04    Titel: Antworten mit Zitat

Die letzten drei Tage habe ich mit dem Versuch verbracht, herauszufinden, warum die Windowsversion bei manchen Patiencen abstürzt (aber scheinbar nicht bei allen). Jetzt mag ich nicht mehr. Hier die aktuelle Version v0.6. Der Übersichtlichkeit halber habe ich die mitgelieferte Patiencenzahl reduziert; weitere Patiencen lassen sich im Verwaltungsprogramm (patfinder) bequem über die Update-Funktion nachinstallieren. Außerdem gibt es auf der Projektseite noch ein zweites Set an Kartenbildern. Steht noch keine Lizenz dabei, wird irgend etwas im Bereich CC+Namensnennung.

Windows (bei mir instabil; edit: vorerst behoben) http://programmierung.eulengesang.de/patfinder/patfinder.7z
Linux (bei mir stabil) http://programmierung.eulengesang.de/patfinder/patfinder_linux.7z
beides inklusive Quellcode und aller für das Spiel benötigten Dateien. Unter Linux braucht man die bass.so (BASS24) von un4seen.com (oder man compiliert selbst und kommentiert in patwork.bas die erste Zeile aus).

edit: Ich habe den Windows-Bug erst einmal umgangen, indem ich dort keine verkettete Liste, sondern ein festes Array verwende. Ist zwar nicht annähernd so flexibel, aber vorerst reicht es.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.


Zuletzt bearbeitet von nemored am 05.04.2011, 19:45, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 05.04.2011, 19:08    Titel: Antworten mit Zitat

Irgendwie scheine ich vergessen zu haben, die Version 0.7 zu releasen?

Egal, jetzt ist Version 0.8 da, und damit gibt es die Möglichkeit gegen einen (sehr einfachen) Computerspieler anzutreten. Eine Umsetzung dazu findet der interessierte Spieler in der Zank-Patience.

Link bleibt derselbe.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 01.05.2011, 22:49    Titel: Antworten mit Zitat

Nochmal eine neue Version:
Das automatisierte Legen wurde nochmal überarbeitet; jetzt können die zu legenden Karten und ihre Anzahl direkt angesteuert werden, Klick- / Mischgeräusche und Animation sind ebenfalls einstellbar.
Die Animation beim Legen wurde ebenfalls generalüberholt und grafische Fehler beseitigt.
Es gibt auch ein paar neue Patiencen, die aber noch nicht alle "fertig" sind; werden im Laufe der Zeit zum Download bereitgestellt.

Insgesamt ist das Programm jetzt auf einem Stand, der meiner Ansicht nach eine Hauptversionsnummer 1 verdient: Hier also patfinder 1.0.110421 und patwork 1.0.110425.
Links bleiben dieselben wie oben.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 15.04.2013, 23:09    Titel: Antworten mit Zitat

Version 1.3 mit ein paar Neuerungen:

Es steht eine Joker-Karte zur Verfügung, die bei Bedarf eingebunden werden kann. Die Möglichkeiten des Jokers sind noch sehr begrenzt (er wird einfach wie eine normale Karte gelegt und nimmt dabei den Wert dieser Karte an); wer Lust hat, kann ihn sich in einer Regelvariante der 'kleinen Harfe' ansehen.
Des weiteren können Beziehungen zwischen verschiedenen Feldern aufgebaut werden, womit Spiele wie der 'Rangierbahnhof' möglich werden.

Insbesondere wurden aber einige kleinere Fehler behoben und die Anzeige der Hilfstexte für größere Auflösungen korrigiert. Außerdem steht der Standard-Kartenset jetzt für alle Größen von 40x60 bis 96x144 zur Verfügung.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 14.05.2014, 22:27    Titel: Antworten mit Zitat

Update 14.05.2014 auf Version 2.0

Die Spieledateien können Vorlagen für die Felder enthalten, wodurch bei Feldern mit gleichen oder sehr ähnlichen Eigenschaften nicht dieselben Angaben immer wieder getätigt werden müssen. Die Dateien wurden dadurch im Schnitt etwa um die Hälfte kleiner. Vorlagen können auch auf anderen Vorlagen aufbauen - kurz und gut, die Spieledateien können jetzt Vererbung. lachen

Für Felder kann jetzt auch eingestellt werden, dass nur eine bestimmte Zahl an Karten angezeigt werden sollen (z. B. die drei obersten Karten des Abwurfstapels). Außerdem sind Sperren und Textanzeigen über die Aktionen (de)aktivierbar.

Auch das Punktesystem wurde flexibler gestaltet, und es können mehrere verschiedene Punktezählungen für dasselbe Feld definiert werden.

Alle bestehenden Patiencen wurden komplett überarbeitet und an das Vorlagen-System angepasst; bei einigen Patiencen wurde wahlweise das 100-Punkte-System hinzugefügt (z. B. beim Aufbau von Ass bis König zählt jede Karte auf dem Grundkartenstapel einen Punkt; Buben, Damen und Könige zählen 5 Punkte; damit sind 100 Punkte erreichbar). Die spinnenartigen Patiencen haben eine neue Punktewertung erhalten und zählen nicht mehr nur für vollständige Folgen.

Es gibt unter anderem auch zwei neue Mehrspieler-Patiencen (gegen den Computer) Juse und Pisha Pasha, wobei letztere sehr einfach ist und man fast nichts falsch machen kann. Mit dem Download-Paket sind wieder nur 24 Patiencen mitgeliefert, alle anderen können im laufenden Spiel online nachinstalliert werden. Ich werde aber vermutlich auch noch ein Paket mit allen momentanen Patiencen zusammenstellen.

Download: http://programmierung.eulengesang.de/patfinder/patfinder.7z
nur Quelltext; die beiden Dateien patfinder.bas und patwork.bas müssen kompiliert werden, gestartet wird dann patfinder. Für Windows habe ich die bass.dll beigelegt, allerdings habe ich in letzter Zeit das Kompilieren unter Windows nicht mehr getestet ...
Sollte es mit bass Probleme geben, kann der Sound in der dritten Zeile in patwork.bas deaktiviert werden.

Spielanleitung zu allen Patiencen liegt im Download-Paket bei und ist auch online verfügbar:
http://programmierung.eulengesang.de/patfinder/regeln/regeln.php
Die Anleitung ist noch nicht auf dem allerletzten Stand und wird in nächster Zeit noch aktualisiert.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4512
Wohnort: ~/

BeitragVerfasst am: 28.08.2022, 17:29    Titel: Antworten mit Zitat

Ich habe entsetzt feststellen müssen, dass sich patfinder nicht mehr unter den ersten zehn Einträgen unter den Projektvorstellungen befindet geschockt da musste ich dringend was tun. (kleiner Scherz)

Update 28.08.2022 auf Version 3.0

Ich habe die beiden Programme patfinder und patwork zu einem gemeinsamen Programm zusammengefasst, ein paar Fehler behoben, ein paar Erweiterungen in der Spieldatei-XML-Syntax vorgenommen, ein paar neue Patiencen hinzugefügt, ein paar alte aktualisiert, die Seite mit den Spielregeln überarbeitet und ergänzt ... also halt überall ein bisschen was.

Änderungen in der XML-Syntax
  • Aktionen: Änderung von Quelle und Ziel einer Legeaktion während des Aktionslaufs
  • Aktionen: Änderung des Menütextes (z. B. temporäres Überschreiben mit "AUTO" während eines längeren Aktionsdurchlaufs)
  • Aktionen: Vergleich zweier beliebiger Karten im Spiel
  • Aktionen: Legen an eine zufällige Position innerhalb eines Stapels möglich
  • Aktionen: ID-Listen an einigen Stellen erlaubt, an denen früher nur einzelne IDs akzeptiert wurden

Download: http://programmierung.eulengesang.de/patfinder/patfinder_3.0.zip
(alle Dateien einschließlich aller meiner Kartenbilder)
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2
Seite 2 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz