AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Texas Hol'dem Gewinner-Erkennung

Ein Thema von Joe_the_Junkie · begonnen am 20. Jun 2007 · letzter Beitrag vom 21. Jun 2007
Antwort Antwort
Joe_the_Junkie
(Gast)

n/a Beiträge
 
#1

Texas Hol'dem Gewinner-Erkennung

  Alt 20. Jun 2007, 09:30
Moin Moin liebe Gemeinde,

Eben ein bisschen OT

Ich habe jetzt seit neustem einen Nebenjob als Dealer bei Pokerturnieren.
Dabei solte man so schnell wie möglich beim Showdown die Gewinnerhand erkennen.

Extra dafür wollte ich eine Software schreiben, bei der Zufallsmäßig zwei bis 4 Spieler (virtuell) beim Showdown mitmachen. Dann, nach einer gewissen Zeit wird dann vom Programm angesagt, wer gewonnen hat.

Dies soll als Training zur schnellen Erkennung der Gewinnerhand dienen.


Jetzt aber zu meinem Problem.

Ich hab im Moment keien Plan, wie ich das umsetzen könnte, dass das Programm erkennt, welche Hand denn die Gewinnerhand ist und womit der Betreffende gewonnen hat.
Könnte mir vielleicht jemand von euch helfen?

Vielen Dank
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#2

Re: Texas Hol'dem Gewinner-Erkennung

  Alt 20. Jun 2007, 09:42
Als erstes würde ich mir eine Routine schreiben die bestimmte Konstellationen von Karten erkennt (Paar, Drilling, Full House, etc.).

Anhand dieser Konstellation gewichtest du die Blätter der einzelnen Spieler.
Bei zwei gleichen Gewichtungen an erster Stelle musst du noch die Symbole auf den Karten mit einbeziehen.
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Texas Hol'dem Gewinner-Erkennung

  Alt 20. Jun 2007, 09:50
Du könntest einfach eine Liste mit allen möglichen Händen machen (High Card bis Royal Flush) und dann jeweils mit der Hand des Spielers vergleichen.
Programmtechnisch am besten als Schleife von oben nach unten. Also
Delphi-Quellcode:
if HandIsRoyalFlush(SpielerHand) then
 begin
 showmessage('Wow, Cheater!');
 break;
 end;

if HandIsstraightFlush(Spielerhand) then
 begin
 showmessage('SF');
 break;
 end;
Das Break sorgt dafür, dass bei einem Vierling nicht auch noch 2 Paare erkannt werden.

Dann musst du noch die einzelnen Funktionen schreiben. Da kannst du recht BruteForce vorgehen, da du immer nur wenige Hände betrachten musst. Also jede Möglichkeit 5 Karten zusammenzunehmen ausprobieren.
Wenn du dann fünf Karten hast, solltest du die aufsteigend sortieren. Dann die einzelnen Funktionen könntest du z.b. so machen:

Delphi-Quellcode:
IsFlush: for i=2 to 5 do
if notkarteNrI.Farbe=KarteNr1.Farbe break;
Is straigt: schleife, if not karteNr(i+1).Wert=KarteNr(i).Wert+1 break;
Aus denen kannst du dann den RoyalFlush zusammenbauen: if IsFlush and IsStraigt and karteNr5.Wert=13(Ass) then true; drilling kannst du überprüfen, in dem du alle zusammenhängenden dreiergruppen prüfst, usw

Zitat:
Bei zwei gleichen Gewichtungen an erster Stelle musst du noch die Symbole auf den Karten mit einbeziehen.
Nein. Die Symbole sind alle gleichwertig. Bei gleichen Händen wird der Pot mittig geteilt. Passiert meistens z.B. in so Fällen, wenn offen eine straight oder sowas liegt.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Texas Hol'dem Gewinner-Erkennung

  Alt 20. Jun 2007, 15:16
Zitat von Nikolas:
Delphi-Quellcode:
if HandIsRoyalFlush(SpielerHand) then
 begin
 showmessage('Wow, Cheater!');
 break;
 end;

if HandIsstraightFlush(Spielerhand) then
 begin
 showmessage('SF');
 break;
 end;
Das Break sorgt dafür, dass bei einem Vierling nicht auch noch 2 Paare erkannt werden.
Naja, ich glaube mit else bekommst du das schöner hin
Benjamin
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Texas Hol'dem Gewinner-Erkennung

  Alt 20. Jun 2007, 17:44
War ja nur ein schneller hack zur Demo. Ich persönlich mag solche extremen else-Schachteln nicht, da es doch unübersichtlich wird.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#6

Re: Texas Hol'dem Gewinner-Erkennung

  Alt 20. Jun 2007, 17:54
Leicht OT: Es gibt bundesweit öfters einige Dealerkurse die von Casinos zu einem annehmlichen Preis veranstaltet werden. Über Google sollte man leicht solche Angebote finden.

Grüße
  Mit Zitat antworten Zitat
Joe_the_Junkie
(Gast)

n/a Beiträge
 
#7

Re: Texas Hol'dem Gewinner-Erkennung

  Alt 21. Jun 2007, 15:44
Jo erst einmal danke für eure Tipps.

Sorry, dass ich mich jetzt erst melde, hatte aber viel zu tun.

Leicht OT:

Ich hab an so einem Dealerkurs teilgenommen. Der war für mich aber kostenlos. Hat ein riesen Spaß gemacht.
Fruee mich schon auf Freitag, da hab ich dann mein erstes Turnier bei dem ich deale.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz