Anti-cheat

Add your suggestions for improving Poker Mavens

Anti-cheat

Postby Demented » Tue Jun 02, 2009 6:36 pm

Not sure if this is possible or not. Would be pretty awesome if it is.

A "smart" code that pays attention to how people bet. Like if two people constantly play each other, and one of the people always loses and folds an all-in after pushing all of their chips but one in, the code recognizes it and if they're on the same IP or not, and after xx times it boots them from the server for 15 minutes and is shown in a log of people doing that. Easier to catch cheaters and keep it under control without having to prevent the same IP from being logged in multiple times at once.

I can explain it better if needed.
Demented
 
Posts: 83
Joined: Sun May 10, 2009 1:00 am

Re: Anti-cheat

Postby Kent Briggs » Tue Jun 02, 2009 8:14 pm

Demented wrote:A "smart" code that pays attention to how people bet. Like if two people constantly play each other, and one of the people always loses and folds an all-in after pushing all of their chips but one in, the code recognizes it and if they're on the same IP or not, and after xx times it boots them from the server for 15 minutes and is shown in a log of people doing that. Easier to catch cheaters and keep it under control without having to prevent the same IP from being logged in multiple times at once.


What you described is "chip dumping". Normally that's only an issue in tournaments. That's occurring in ring games at centpoker because of your policy of allowing unlimited account reloads. It's unlikely I'd bloat the game server code with that kind of site-specific micro-management. It wouldn't know what context things were happening under. But you can parse the hand history files with your own code to detect whatever betting patterns you don't allow. And then give warnings, suspend accounts, etc.
Kent Briggs - [email protected]
Briggs Softworks - http://www.briggsoft.com
Kent Briggs
Site Admin
 
Posts: 3818
Joined: Wed Mar 19, 2008 8:47 pm

Re: Anti-cheat

Postby Demented » Tue Jun 02, 2009 8:25 pm

Does the hand history record how many chips where bet, how many chips the player had in hand, and how many they had left when they folded? If not, I really do not see how that would help spot patterns other then just seeing if someone constantly folds to one account.
Demented
 
Posts: 83
Joined: Sun May 10, 2009 1:00 am

Re: Anti-cheat

Postby Kent Briggs » Tue Jun 02, 2009 10:01 pm

Demented wrote:Does the hand history record how many chips where bet, how many chips the player had in hand, and how many they had left when they folded?


Yes, of course, that's what a hand history file is for. You can reconstruct every aspect of the hand with it. Below is one hand I just grabbed client-side from your site. The same data is saved server-side in files if that option is enabled in the server settings. The server side file also have the option of saving the table chat and can be retrieved remotely via the API.

Hand #1812963-69 - 2009-06-02 21:53:28
Game: No Limit Hold'em (500 - 1500) - Blinds 10/20
Site: CentPoker.com
Table: Ring Game #16
Seat 1: MrGoodCat (1000)
Seat 3: riptiderat (3050) - sitting out
Seat 5: Paugh (440)
Seat 6: NumberTwo (810)
Seat 7: cbarr (2130)
Seat 8: ilovelamp (857)
Seat 10: diaper_dandy (390)
ilovelamp has the dealer button
diaper_dandy posts small blind 10
MrGoodCat posts big blind 20
** Hole Cards **
Paugh folds
NumberTwo calls 20
cbarr folds
ilovelamp raises to 80
diaper_dandy folds
MrGoodCat calls 60
NumberTwo calls 60
** Flop ** [Ad Qc 3c]
MrGoodCat checks
NumberTwo checks
ilovelamp bets 100
MrGoodCat folds
NumberTwo calls 100
** Turn ** [Js]
NumberTwo bets 50
ilovelamp calls 50
** River ** [9d]
NumberTwo bets 100
ilovelamp calls 100
** Pot Show Down ** [Ad Qc 3c Js 9d]
NumberTwo [Kd Ac] has a Pair of Aces +KQJ
ilovelamp [7h As] has a Pair of Aces +QJ9
NumberTwo wins Pot (750) with a Pair
Kent Briggs - [email protected]
Briggs Softworks - http://www.briggsoft.com
Kent Briggs
Site Admin
 
Posts: 3818
Joined: Wed Mar 19, 2008 8:47 pm

Re: Anti-cheat

Postby Demented » Tue Jun 02, 2009 10:03 pm

Awesome.
Demented
 
Posts: 83
Joined: Sun May 10, 2009 1:00 am

Re: Anti-cheat

Postby Alex » Sat Jun 20, 2009 12:02 am

How can we save it to a database?
Alex
 
Posts: 53
Joined: Sun Mar 08, 2009 10:08 pm

Re: Anti-cheat

Postby Kent Briggs » Sat Jun 20, 2009 1:37 am

Alex wrote:How can we save it to a database?


The hand history file? I suppose the same way you would save any piece of text data. Use the LogsHandHistory API to retrieve them from the game server.
Kent Briggs - [email protected]
Briggs Softworks - http://www.briggsoft.com
Kent Briggs
Site Admin
 
Posts: 3818
Joined: Wed Mar 19, 2008 8:47 pm

Re: Anti-cheat

Postby Alex » Sat Jun 20, 2009 2:19 am

we want something we can easily parse in PHP to upload to a MySQL database

is that possible?
Alex
 
Posts: 53
Joined: Sun Mar 08, 2009 10:08 pm

Re: Anti-cheat

Postby vpalmer » Sat Jun 20, 2009 2:34 am

Hey Kent, long time no see. I've been working with Alex on getting a method to parse hand history into a standard MySQL database type format.

The problem we're running into is that the history is very "conversational" in tone, and hard to parse with PHP.

It would make it a lot easier on us if the reports were in a much more standardized fashion ... and actually, I imagine it would make it easier on you as well since I know you have to have this information raw somewhere on the server. For example, something like just like a flat-file format such as:

HAND_ID DATE_TIME STAGE PLAYER_NAME SEAT_NUMBER ACTION AMOUNT CARD1 CARD2 CARD3 CARD4 CARD5
HAND_ID DATE_TIME STAGE PLAYER_NAME SEAT_NUMBER ACTION AMOUNT CARD1 CARD2 CARD3 CARD4 CARD5
HAND_ID DATE_TIME STAGE PLAYER_NAME SEAT_NUMBER ACTION AMOUNT CARD1 CARD2 CARD3 CARD4 CARD5
HAND_ID DATE_TIME STAGE PLAYER_NAME SEAT_NUMBER ACTION AMOUNT CARD1 CARD2 CARD3 CARD4 CARD5

obviously, many of these fields would be blank, such as when McCatt folds, well, then amount would be 0, etc, because it's not relevant. But that's fine for us. It's far easier for us to discard useless information than to try to reconstruct what IS useful.

So basically, what we're asking for is a play-by-play of the hand with as MUCH state information as possible, even (especially) if most of it never get's used. We have space, it's just hard to process natural language (although, you've done a GREAT job at getting a human readable summary of the hand btw ... hats off to you sir!).

Victor
vpalmer
 
Posts: 5
Joined: Thu Sep 04, 2008 1:05 am

Re: Anti-cheat

Postby rjones33 » Sat Jun 20, 2009 9:01 am

The log files are not that hard to parse. They represent everything that happened in the hand already. The files are broken up nicely into sections from the seating, Hole Cards, Flop, Turn, River, Pot Show Down. You can parse through each section and do what ever you want (Extract info and store in your MySQL database) or whatever you are looking to do. I am using vb.net in conjunction with the api , but the logic would be similar no matter what language is used. I'm not a PHP guy, but I would venture to say from the code examples that Kent has already posted that you can achieve what you want in PHP.
rjones33
 
Posts: 98
Joined: Tue Jun 24, 2008 6:51 pm
Location: Warrenville, SC

Next

Return to Wish List

Who is online

Users browsing this forum: No registered users and 2 guests