Technikfrage: Wie kann ich Karten vom Tisch einlesen?

    • LuMpeH
      LuMpeH
      Bronze
      Dabei seit: 11.10.2006 Beiträge: 1.775
      hio,

      ich bin dabei ein kleines Programm zu schreiben (für party), welches Outs / Odds usw berechnet und diese dann am Tisch direkt anzeigt. Dafür soll es Realtime die Karten vom Tisch(en) einlesen können.

      Ich mache es immoment so, dass das Prog bestimmte Zeilen einliest und sie dann mit den Karten vergleicht. Das ist aber recht umständlich, da sich das Pokerfenster in der größe ändern kann.
      Ich habe gehört viele Programme zeigen MuckedHands an, da sie sie aus der HH auslesen (noch während dem spiel). Von daher dachte ich jetzt, ich könne das einfach direkt aus der HH auslesen. Habe aber eben festgestellt, dass die History erst eingetragen wird (in die Datei geschrieben), wenn ein neues Spiel beginnt...Das ist leider etwas zu spät :D

      Jemand eine Ahnung wie man trotzdem darauf zugreifen könnte?

      Und ja ich weiß es gibt schon viele solcher Programme, möchte das gern selbst machen und vorallem ist das dann kostenlos :)

      Danke für die Tips

      Alex
  • 9 Antworten
    • LuMpeH
      LuMpeH
      Bronze
      Dabei seit: 11.10.2006 Beiträge: 1.775
      grae wohl schon selbst fündig geworden

      free PHG 2 schreibt _live_ ne HH :)

      denke damit ist mein Problem gelöst

      es sei denn jemand hat noch wat besseres :D
    • Bliss86
      Bliss86
      Bronze
      Dabei seit: 03.08.2006 Beiträge: 5.562
      nunja, jetz währe es ja interessant zu wissen, wie FreePHG das macht, um das ganze auch ohne das Programm lauffähig zu bekommen..
    • LuMpeH
      LuMpeH
      Bronze
      Dabei seit: 11.10.2006 Beiträge: 1.775
      jo

      den sourcecode von dem Tool gibt es sogar, jedoch nur von einer alten Version (langsam und fehleranfällig). Der autor hat aber ne neue Version, in der das alles "ultra schnell und sicher und CPU schonend und haste nich gesehn" gemacht wird, wo er aber den SC nicht freigibt, da ein "anonymer Programmierer", der ihm half, das nicht möchte.

      Also immoment denke ich, werd ich dann einfach die HHs auslesen, die das Programm generiert (live). Hoffe das wird klappen :)

      Hatte auch mal überlegt, ob es möglich wäre Daten aus dem Netzwerkverkehr von PP auszulesen. Dazu habe ich mir mal ein paar Pakete zu gemüte geführt aber leider ist alles codiert...

      Mir kam dann der Gedanke die Karten über "Pixelvergleiche" auszulesen, was auch ohne Probleme funktioniert. Jedoch nur wenn der Table fullsize hat, andernfalls gibt es Auflösungen, in denen es nicht funkioniert... das ist halt alles recht aufwendig und fehleranfällig, deshalb möchte ich auf die HH Methode umsteigen. Dann funzt es auch mit anderen Skins, allen Auflösungen usw usf.

      Wenn das Programm anständig läuft, kann ich es ja mal hier Posten ...
    • Foxy79
      Foxy79
      Bronze
      Dabei seit: 14.06.2006 Beiträge: 1.773
      Also immoment denke ich, werd ich dann einfach die HHs auslesen, die das Programm generiert (live). Hoffe das wird klappen

      Das klappt, so mache ich es mit PokerStats auch :D
      Würde auch gerne wissen wer er das hinbekommt....
    • LuMpeH
      LuMpeH
      Bronze
      Dabei seit: 11.10.2006 Beiträge: 1.775
      hehe

      liest du aus dem live ordner die Daten aus? wenn ja wie bekommst du die momentan gespielte GamingNumber? Diese große Zahl, die rechts oben steht beim Pokertisch. Nach der sind ja die .LIVE Dateien benannt.
      Oder liest du einfach aus den hhf files aus?
    • Foxy79
      Foxy79
      Bronze
      Dabei seit: 14.06.2006 Beiträge: 1.773
      ich lese aus den .hff datein
    • LuMpeH
      LuMpeH
      Bronze
      Dabei seit: 11.10.2006 Beiträge: 1.775
      ok dacht ich mir :)

      habe mir grade eine komplizierte Lösung ausgedacht, da in den Live dateien der Table drinsteht könnte man das dort auslesen und dann mit dem TitleBar String des Fensters vergleichen und wüsste so wo man dran ist

      aber werds wohl auch aus den hhf dateien auslesen. Man muss ja nur irgendwie nen Zeiger an die letzte History information lotsen, dann ist man ja schon goldrichtig :)
    • Mr.Snood
      Mr.Snood
      Bronze
      Dabei seit: 22.01.2005 Beiträge: 5.352
      Original von LuMpeH
      Hatte auch mal überlegt, ob es möglich wäre Daten aus dem Netzwerkverkehr von PP auszulesen. Dazu habe ich mir mal ein paar Pakete zu gemüte geführt aber leider ist alles codiert...
      Hook dich einfach an den "SSL_Read" und die kodierung war umsonst :)

      FreePHG hookt sich meines Wissen nach an den "memcpy".
    • klausschreiber
      klausschreiber
      Bronze
      Dabei seit: 30.07.2006 Beiträge: 5.773
      es gibt auch im Forum zwei Programmierer, die das glaub auf die gleiche Weise, wie FreePHG gelöst haben. Dazu gehört der Handrecorder und der HHMiner. Kannst ja mal einen von denen fragen, ob sie dir sagen, wie sie das gemacht haben, wobei Mr.Snood das Prinzip ja bereits genannt hat.