Seite 2 von 2

Verfasst: Mittwoch 25. November 2009, 21:04
von hendrikS
problembär hat geschrieben:Die Quellen von xskat 4.0 sind 873K C-Code.
Ich hatte so in der Größenordnung min. 100000 LoC geschätzt. Ich glaube das matched so halbwegs.
In Python wäre es natürlich deutlich weniger.
Sonst gibt es auch ein nettes Forum, in dem ähnlich gefachsimpelt wird wie hier.
http://www.skatforum.com

Verfasst: Donnerstag 26. November 2009, 14:41
von Sr4l
hendrikS hat geschrieben:
problembär hat geschrieben:Die Quellen von xskat 4.0 sind 873K C-Code.
Ich hatte so in der Größenordnung min. 100000 LoC geschätzt. Ich glaube das matched so halbwegs.
In Python wäre es natürlich deutlich weniger.
Sonst gibt es auch ein nettes Forum, in dem ähnlich gefachsimpelt wird wie hier.
http://www.skatforum.com
~700KB C Code und Header Files
und darin stecken nach ohcount 18 852 reine Codezeilen und 290 Kommentarzeilen

Ich finde die KI aber nicht so gut. Habe gerade 11spiele gespielt, davon habe ich 8gespielt und 6gewonnen und 3spiele hat eine der beiden KIs gespielt aber nur 1gewonnen. Dabei sind beide KIs auf höchstes Level gestellt.

Die KIs reizen einfach nicht weit genung ganz selten geht es mal über 24.

Verfasst: Donnerstag 26. November 2009, 16:02
von ms4py
Sr4l hat geschrieben:~700KB C Code und Header Files
und darin stecken nach ohcount 18 852 reine Codezeilen und 290 Kommentarzeilen.
Sind da wirklich nur 290 Zeilen Kommentare oder hast du dich vertippt? Wenn nicht, schließt ja schon diese Zahl auf die mangelnde Qualität des Programms...

Verfasst: Donnerstag 26. November 2009, 19:02
von hendrikS
Ich habs mir jetzt auch mal runtergeladen. Mal n'bisschen spielen.
Mit meinen geschätzten 100000 lag ich dann doch etwas daneben.

Verfasst: Donnerstag 26. November 2009, 21:31
von Sr4l
ice2k3 hat geschrieben:
Sr4l hat geschrieben:~700KB C Code und Header Files
und darin stecken nach ohcount 18 852 reine Codezeilen und 290 Kommentarzeilen.
Sind da wirklich nur 290 Zeilen Kommentare oder hast du dich vertippt? Wenn nicht, schließt ja schon diese Zahl auf die mangelnde Qualität des Programms...
Stimmt schon, habe es "per Hand" kontrolliert. Das sind scheinbar nur die Kommentare am Anfang jeder Datei mit der Liezens.
Musste aber feststellen das man ~5k Zeilen Code abziehen muss, die scheinbar nur GIF Bilder enthalten.

Zusätzlich ist das Spiel auf Denglisch gecodet und nur der Name der Funktion gibt Auskunft darüber was sie tut.

Verfasst: Freitag 27. November 2009, 10:31
von joh#
Sr4l hat geschrieben:Ich habe mir das so vorgestellt:
http://paste.pocoo.org/show/152873/
Also bei mir kommt da

Code: Alles auswählen

SPIELRKARTEN
============
Traceback (most recent call last):
  File "/home/joh/Python-2.6.4/work/skat1.py", line 114, in ?
    print(spiel.spielerkarten(spieler))
  File "/home/joh/Python-2.6.4/work/skat1.py", line 20, in __repr__
    return "{0}({1}, {2}, {3})".format(self.__class__.__name__, self.farbe, self.karte, self.besitzer)
AttributeError: 'str' object has no attribute 'format'
wobei ich

Code: Alles auswählen

class Karte():
zu

Code: Alles auswählen

class Karte(object):
verändern musste, damit das kompiliert, pardon interpretiert.

Verfasst: Freitag 27. November 2009, 12:16
von Sr4l

Code: Alles auswählen

return "{0}({1}, {2}, {3})".format(self.__class__.__name__, self.farbe, self.karte, self.besitzer) 
Python 3.1.

für Python2 mach einfach:

Code: Alles auswählen

return "%s(%s, %s, %s)"%(self.__class__.__name__, self.farbe, self.karte, self.besitzer) 
sollte so gehen

Habe auf meinem Windows Rechner jetzt nur noch Python3.

Verfasst: Freitag 27. November 2009, 12:22
von ms4py
Mit Python 2.6 geht str.format auch!

Verfasst: Freitag 27. November 2009, 16:41
von Sr4l
Ab Python 2.6 geht str.format auch! ;-)

Verfasst: Dienstag 1. Dezember 2009, 22:21
von joh#
BlackJack hat geschrieben:@joh#: Ich kenne die Regeln nicht, aber ich würde mich fragen, ob man das überhaupt auf diese Weise ermitteln würde, und sich nicht vielleicht eher mathematisch Gedanken darüber macht, statt stupide auszuprobieren...
OK, nur genau da hängt es, die Entscheidung des Spielers m Stich ist ja Grundlage für Stich n+1
alles hängt ja vom Zustand (des Blattes) ab.