Karten bei Online-Pokern vergleichen



  • Du glaubst doch selber nicht was du da schreibst, oder?

    Wenn ich mir in einem Buch mal etwas Poker gelesen habe und da steht, dass wenn die Karten AA oder KK kommen, dass ich immer erhöhen soll.
    Entweder habe ich das auswendig gelernt oder ich schreib mir das auf ein Zettel spielt doch keine Rolle, oder?

    Weil ich mit mal gelernt habe, dass bei AA immer erhöhen soll, macht mich doch nicht zum Cheater!!!



  • Hallo

    Weil ich mit mal gelernt habe, dass bei AA immer erhöhen soll, macht mich doch nicht zum Cheater!!!

    Ich sags nochmal : Meine Meinung ist egal, der Betreiber entscheidet. Schau also bei den Benutzerregeln des Casinos nach.
    Wie ser1al schon geschrieben hat : der Betreiber möchte vielleicht verhindern, das nur noch Bot gegen Bot spielt.

    bis bald
    akari



  • Wer redet, dass ich ein Bot programmiere.
    Ich will nur die Karten nicht manuell eingeben.



  • Hallo Leute

    Allgemein : das könntest du durch Screenshots (siehe FAQ) und aufwendige Mustererkennung erreichen.

    Warum aufwendige Mustererkennung?
    Er könnte doch nur einen relevanten Teil jeder Karte per Screenshot (Bitmap) speichern.
    Zum Beispiel die linke obere Ecke mit Farbe und Nummer der Karte.
    Dann ein Programm schreiben, das die gespeicherten Screenshots Pixel für Pixel mit den aktuellen vergleicht. Die genaue Position der Karten wird ja wohl jedesmal gleich sein.

    So würde ich an die Sache rangehen

    Bis Bald...
    wNw



  • Danke wNw

    so habe ich es mir gedacht. Geht das eigentlich, dass man bestimmte stelle im Bild speichert (Screenshot) ich dachte man kann nur von der gesamte Größe ein Sreenshot machen



  • In der FAQ findet man zwei Variante zur Screenshot, aber keins was ich brauche. Ich will ja aus dem Fenster ein Ausschnitt des Screenshots machen.

    Kann mir da einer Helfen?



  • Leider kann ich Dir in Sachen Screenshot auch nicht viel mehr sagen als die Beispiele in den FAQs.
    Habe das auch schonmal getestet. Soweit bin ich damals gekommen:
    Ich konnte aus einem bestimmten Bereich des Screens in ein Bild speichern:

    //---------------------------------------------------------------------------

    #include <vcl.h>
    #pragma hdrstop
    
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
            : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    
    void __fastcall TForm1::FormCreate(TObject *Sender)
    {
    Form1->WindowState=wsMaximized;
    Form1->Left=15;
    Form1->Top=120;
    Form1->Width=320;
    Form1->Height=242;
    HDC HScreenDC = GetDC(0);
        Image1->Picture->Bitmap->Handle = CreateCompatibleBitmap(HScreenDC,
                                                Form1->Width,
                                                Form1->Height);
    
        int result = GetDeviceCaps(HScreenDC, RASTERCAPS);
        if (result & RC_PALETTE)
        {
            int palette_size = GetDeviceCaps(HScreenDC, SIZEPALETTE);
            if (palette_size == 256)
            {
                const size_t size = sizeof(LOGPALETTE) + 255 * sizeof(PALETTEENTRY);
                unsigned char* pBuffer = new unsigned char[size];
    
                LPLOGPALETTE lplogpal =
                    reinterpret_cast<LPLOGPALETTE>(pBuffer);
                lplogpal->palVersion = 0x300;
                lplogpal->palNumEntries = 256;
                GetSystemPaletteEntries(HScreenDC, 0, 256,
                                        lplogpal->palPalEntry);
    
                Image1->Picture->Bitmap->Palette = CreatePalette(lplogpal);
                delete [] pBuffer;
            }
        }
        ReleaseDC(0, HScreenDC);
    
        HDC HWindowDC = GetWindowDC(Form1->Handle);
        BitBlt(Image1->Picture->Bitmap->Canvas->Handle, 0, 0,
               Image1->Picture->Bitmap->Width, Image1->Picture->Bitmap->Height,
               HWindowDC, 0, 0,
               SRCCOPY);
    //---------------------------------------------------------------------------
        Image1->Picture->SaveToFile("Test.bmp");
        //Form1->Visible=false;
        Form1->WindowState=wsMinimized;
    //---------------------------------------------------------------------------
        ReleaseDC(Form1->Handle, HWindowDC);
    }
    //---------------------------------------------------------------------------
    

    Beachte bitte Zeilen 18 bis 21.
    Hoffe, darauf kannst Du aufbauen.

    Bis Bald...
    wNw



  • Sorry, Zeilen 19 bis 22 und Zeile 56!



  • Danke bin etwas weiter.

    Er macht aber Screenshots vom Desktop und was alles davor steht. Kann ich nicht sofort aus dem Fenster der Poker Software ein Screenshot machen?



  • mal so ne idee die mir grad gekommen ist!!
    wäre es vll ne möglichkeit den quelltext von der webseite
    (ich vermute mal des ist en php script) auszuwerten, vll haben die bilder eindeute
    kennungen!
    ich kenn mich jetzt mit dem aufbau so einer seite nicht aus aber des wäre vll
    auch nen gedanken wert.
    Gruß KY



  • Er macht aber Screenshots vom Desktop und was alles davor steht. Kann ich nicht sofort aus dem Fenster der Poker Software ein Screenshot machen?

    Das Problem hatte ich auch.
    Erzeuge zum testen eine Verknüpfung deiner .exe Datei und ziehe sie in die Startleiste.Dann ggf Den BCB minimieren und andere Fenster schliessen (Oder auf Desktop klicken). Dann Starte von der Start-Leiste. (Poker muss laufen)

    Dann wird auch der richtige Ausschnitt gespeichert

    Bis Bald...
    wNw



  • Wie vergleiche ich die Bilder am besten?

    Hat einer eine Idee??

    Danke



  • BigBro schrieb:

    Er macht aber Screenshots vom Desktop und was alles davor steht. Kann ich nicht sofort aus dem Fenster der Poker Software ein Screenshot machen?

    Anstatt stumpfsinnig den Beispielcode zu kopieren und dich dann zu wundern, dass er nicht genau das macht, was du willst, solltest erstmal versuchen, zu verstehen, wie der Code funktioniert. Z.B. indem du die einzelnen Funktionen nachschlägst, und ja, das kann schon mal ein paar Stunden oder auch Tage dauern.

    Zur o.g. Frage wäre z.B. ein Blick auf GetDC() interessant.

    Und bitte versuche nicht, sämtliche Probleme bis zur Vollendung deines Programmes hier in einem Thread abzuhandeln. Zerlege den Programmablauf in logische Abschnitte und eröffne für konkrete Einzelprobleme bei Bedarf einen eigenen Thread. Natürlich nicht, ohne zuvor ausgiebig von der FAQ, der Suchfunktion und der BCB-Hilfe Gebrauch gemacht zu haben.
    Danke!



  • Wie vergleiche ich die Bilder am besten?

    Wie gesagt : Pixel für Pixel in einer Schleife, die zur nächsten Karte übergeht, sobald ein Pixel nicht übereinstimmt.
    Bei 52 Karten müsste das sehr schnell gehen.
    Einfach die RGB Werte vergleichen...

    Bis Bald
    wNw



  • Mehr als die Hälfte der Funktionen gibts es bei Borland Hilfe nicht.



  • Mehr als meine Herangehensweise kann und will ich hier nicht posten.
    Bei mir läuft das alles, und gut.
    Den Rest musst Du schon selber machen !

    Bis Bald...
    wNw



  • Danke du hast mir jetzt schon sehr viel Weiter geholfen. Vergleich von Bildern klappt jetzt auch schon!!

    echt vielen DANK



  • Freud mch zu hören!
    Ich spiele manchmal bei Pacific Poker, und Du?



  • Seit kurzem wieder bei PartyPoker


Anmelden zum Antworten