Commit Graph

289 Commits

Author SHA1 Message Date
Worros
faf19215e8 Make Hand initable without a hhc
Proof of concept code in test_PokerStars.py
2009-03-14 23:01:40 +09:00
Matt Turnbull
c1a7c45966 Merge branch 'master' of git://git.assembla.com/fpdboz 2009-03-14 13:45:40 +00:00
Matt Turnbull
547ffd0e41 tiny output bugs fixed. 2009-03-14 13:45:09 +00:00
Worros
d847a71c6e Move addDiscard from upper class to specialised DrawHand 2009-03-14 22:23:30 +09:00
Matt Turnbull
2caddfe97a Merge branch 'master' of git://git.assembla.com/fpdboz 2009-03-14 12:48:13 +00:00
Matt Turnbull
822546da7b blinds can be all in. 2009-03-14 12:44:14 +00:00
Worros
42e23ae449 Merge branch 'calcstats' 2009-03-14 21:21:04 +09:00
Worros
b41afcd076 Add stub insert and select methods to Hand class 2009-03-14 21:19:20 +09:00
Worros
d212d81e03 Add variables for most HudCache stats and add optional arg to Hand
Will almost certainly need to change all of the data structures in the
variables as they are only for a single player
2009-03-14 20:40:27 +09:00
Worros
04b43e3b95 Add preliminary Badugi support
Done to flesh out what DrawHand will look like
2009-03-14 19:48:34 +09:00
Worros
93acab5bcb Merge branch 'master' of git://git.assembla.com/mctfpdb 2009-03-14 06:20:53 +09:00
Worros
f4e3c8de28 Remove lookupLimitBetSize() - appears to no longer be necessary 2009-03-14 02:51:10 +09:00
Matt Turnbull
21376c0b62 slight change in logic, I hope the this is right:
if win & show : player showed [x] and won $
elif win: player won $
elif folded: player folded
else: if shown: player showed [x] and lost...
      else: player mucked
2009-03-13 16:50:46 +00:00
Matt Turnbull
771a95fe32 if holecards can be infered from summary line, indicate that they were
'shown' so that they can be output in summary line
2009-03-13 16:45:32 +00:00
Worros
c523fce123 Merge branch 'master' of git://git.assembla.com/mctfpdb
Conflicts:

	pyfpdb/fpdb_import.py
2009-03-12 22:57:43 +09:00
Matt Turnbull
ff675fb3ae import working? 2009-03-12 03:15:34 +00:00
eblade
27e0df2a24 Merge branch 'master' of git://git.assembla.com/fpdboz.git
Conflicts:
	pyfpdb/Configuration.py
	pyfpdb/Database.py
2009-03-11 22:41:43 -04:00
Matt Turnbull
89bb8e3d69 stars stud sometimes says 'brings-in', 'brings in', 'brings in low'
fewer negative rakes appearing.
2009-03-11 18:40:17 +00:00
eblade
23c1e0c405 add 3/6 FL to Everleaf table 2009-03-11 12:56:38 -04:00
Matt Turnbull
0058f47775 fulltilt razz. is this complete? can you check whether it imports? 2009-03-11 16:51:58 +00:00
Matt Turnbull
cfbf57dd1b if dont have site and BB in lookupLimit table, just halve them for
sb,bb. Should work for higher limits almost always anyway, and there are
a finite number of ulimits which we should already have in the table
2009-03-11 14:33:07 +00:00
Matt Turnbull
904c108813 people who put in blinds or antes are also counted as actors preflop 2009-03-11 14:07:38 +00:00
Matt Turnbull
1bbb2f2769 here you go 2009-03-11 14:05:38 +00:00
eblade
cc5b73bb2e add 50c/1 1/2 2/4 stakes FLHE to lookup table 2009-03-10 18:50:40 -04:00
Matt Turnbull
22df50327a Everleaf stud hands are passed if not instantiated with debugging=True
(this is default from cmdline but not from fpdb_import)
Eerleaf gametype tests... added one.
Everleaf action fixed to capture bet amounts, I hope. The 'complete to'
has a problematic . at the end, so we must handle
[ $ 1.40 USD ]
[ $ 1 USD ]
$1.40.
$1. (haven't seen this one yet)
Sorry I've kind of destroyed the sanityCheck thing, some of it belongs
in fpdb_simple where the paths are made. I've retained check for
in_path!=out_path.
2009-03-10 21:49:23 +00:00
Matt Turnbull
f714b25487 everleaf stud markstreets, antes, bringin
todo: completes
todo: strange pot bug :( maybe go away if we add bringin completes or
something
fulltilt: warning if bringin not found
2009-03-10 17:25:49 +00:00
Matt Turnbull
2c44d634f9 commit, time to pull carl's ftp stud stuff 2009-03-10 16:17:54 +00:00
Worros
da88e1b20c Merge branch 'master' of git://git.assembla.com/mctfpdb
Conflicts:

	pyfpdb/EverleafToFpdb.py
	pyfpdb/FulltiltToFpdb.py
2009-03-08 14:09:16 +09:00
Worros
b07823b372 Merge branch 'futz' from Matt
Conflicts:

	pyfpdb/EverleafToFpdb.py
	pyfpdb/FulltiltToFpdb.py
	pyfpdb/Hand.py
	pyfpdb/HandHistoryConverter.py
2009-03-08 00:43:33 +09:00
Matt Turnbull
ca6f6e513b message 2009-03-06 18:10:04 +00:00
Matt Turnbull
426b5c2db5 had a go at PokerStars -> PokerStars conversion...
fpt : bugfix
hand : DrawHand class, moved discardCards there
is 'studhi' = '7 Card Stud' in PokerStars string? was playing with
Natalie HORSE file
2009-03-06 01:24:38 +00:00
Worros
50a1ec1ccf Add logging function from futz 2009-03-05 01:46:01 +09:00
Worros
740fe92914 rename hand.string to hand.handText
Few other minor updates to match monkeyfutz
2009-03-05 00:10:08 +09:00
Worros
e8552023da Whitespace and comment updates from monkeyfutz 2009-03-04 23:29:13 +09:00
Matt Turnbull
7049a959ec I attempted to merge monkeyfutz into master.
Let me know how you get on.
I just remembered autoimport probably broken at this point, I have
changed the way HHC is called and only been testing standalone
filtering..
Just try it and then git checkout ^HEAD

Merge branch 'monkeyfutz'

Conflicts:

	pyfpdb/EverleafToFpdb.py
	pyfpdb/FulltiltToFpdb.py
	pyfpdb/Hand.py
2009-03-03 18:45:02 +00:00
Matt Turnbull
703fa40073 Merge branch 'master' of git://git.assembla.com/fpdboz
Conflicts:

	pyfpdb/Hand.py
2009-03-03 12:24:42 +00:00
Matt Turnbull
36befa43a8 More futzing
- made it so that Hand.__init__ calls the hhc readX methods in the right
  order for that kind of Hand (Stud or Holdem/Omaha)
- hhc.readX methods then callback Hand.addX methods
Why? WHY! I hear you ask. Actually I can see there's very little gain,
sorry about that; but it sort of makes sense. Now you just make the
right kind of Hand, give it the text and the right kind of HHC filter,
and it makes itself.
- apart from that, biggest actual thing done is probably in adding
  player cards for stud hands -- revamped and made it really clear (I
think) whats happening (see FullTilt.readStudPlayerCards)
When I run FullTiltToFpdf.py it goes through all the hands.
- Still have some print statements, have been changing them to
  logging.debug or logging.info as I come across them.
  You may find "tail -f logging.out" useful
Actually I'm not at all convinced about the use of logging except that
you can redirect it to stderr quite easily and then set the threshold
for what gets logged quite easily, so that might be a plus.
- Oh and the subclassing of Hand is getting clearer.
2009-03-02 21:48:30 +00:00
Worros
25ae39d7b5 Minor fixups: set->list and FullTilt lookup table 2009-03-03 00:10:15 +09:00
Matt Turnbull
5c26bb028d Merge branch 'master' into monkeyfutz
Everleaf converts hands
Moved process hand logic into the hand subclass that knows what it
wants, it calls back to the hhc (which knows about the format) to populate itself

Conflicts:

	pyfpdb/EverleafToFpdb.py
	pyfpdb/Hand.py
	pyfpdb/HandHistoryConverter.py
2009-03-01 23:22:47 +00:00
eblade
3018483a6f changes to lookup list for sb/bb in flhe 2009-03-01 15:58:12 -05:00
Worros
d4cc5d4182 Initial fix for Everlead limit games
Only one entry in the lookup table at the moment, need to collect data
and expand for all known limits
2009-03-02 01:52:52 +09:00
Worros
3cf8239cc9 Fix bug inmporting Everleaf PLO 2009-03-01 23:05:21 +09:00
Matt Turnbull
7087ede374 temp commit 2009-02-27 18:42:53 +00:00
Matt Turnbull
0773818831 set -> list 2009-02-26 16:50:45 +00:00
Worros
6d862cff52 addPlayerCards done - now need to print it 2009-02-27 00:35:15 +09:00
Matt Turnbull
0986e36648 work in progress!
- command line options
  Try the following
  ./Everleaf --help
  cat everleaf.txt | ./Everleaf -i - -o -
  Try using -i -, and pasting in a hand. Be aware it needs an EOF
<ctrl>-d (unless you specify --follow, which isn't done yet)
- HHC is a thread
- hand gametypes per hand
- lots of stupid little things just to cause trouble
- added logging

Not yet done:
- tail -f mode
- integration into fpdb_import. Two options for grand plan here:
  1)  recently modified files get a HHC filter attached
      when the HHC runs out of pipe it waits
      runUpdated finds modified files and notifies the thread
  2)  the thread follows independently, when it runs out of input it
sleeps and then tries again at intervals
I like both, 1) involves bigger changes to fpdb_import whilst with 2) we
just point the existing fpdb_import code at the filter output (the way
we currently do filtering has to be altered though)

Comments welcome of course.
2009-02-26 00:59:36 +00:00
Worros
354a67c0e4 Some bringin code for stud/razz 2009-02-26 01:23:46 +09:00
Worros
a71be6ddd3 Add stud/razz ante for FullTilt converter 2009-02-26 00:45:46 +09:00
Matt Turnbull
bb4eece2f7 Merge branch 'master' of git://git.assembla.com/fpdboz
Only seemed to conflict the [ --> \[ in the HeroCards re

Conflicts:

	pyfpdb/FulltiltToFpdb.py
2009-02-25 12:36:45 +00:00
Worros
d500a9f9c5 More Razz - First pass through hh that doesn't crash 2009-02-25 21:34:05 +09:00
Matt Turnbull
a324dc4c7e Merge branch 'master' of git://git.assembla.com/fpdboz 2009-02-25 11:32:14 +00:00
Matt Turnbull
a5b7b8202a tiny changes 2009-02-25 11:32:03 +00:00
Worros
3d9026da2c More razz updates 2009-02-25 19:32:12 +09:00
Worros
a4f0e9a1fd Fulltilt nlhe working, more razz stuff
Everleaf still broken - need to create/move button regex to new abstract
method
2009-02-25 02:05:51 +09:00
Worros
b38c62367a Preliminary razz support for Fulltilt
Breaks stuff
2009-02-25 01:17:25 +09:00
Worros
232c0df33a determineGameType fixed for FTP, PLO working 2009-02-22 18:07:11 +09:00
Worros
baae7af5e0 Remove a tonne of debug, neaten output 2009-02-22 14:37:38 +09:00
Worros
40ccefe105 Separate collected and collectees for output 2009-02-22 01:17:06 +09:00
Worros
cf52ee4822 Fix blinds output
Changes self.posted to be a list of lists.
[[p1, "small blind"][p2, "big blind"][p3, "big blind"][p4, "both"]]
2009-02-22 00:22:25 +09:00
Worros
76688ed1c2 Fix regex for posting both blinds
Partially fix output:

neslein: posts small blind [$ 0.05 USD]
dokiprogym: posts big blind [$ 0.10 USD]
EricBlade: posts both blinds [$ 0.15 USD]
Tilting2: posts big blind [$ 0.10 USD]

becomes:

neslein: posts small blind $0.05
dokiprogym: posts big blind $0.10
Tilting2: posts big blind $0.10
EricBlade: posts big blind $0.10

EricBlade should post .15
2009-02-21 23:26:37 +09:00
Worros
d196b80a60 Deal with case 'no small blind and walk in bb' 2009-02-21 22:31:57 +09:00
Worros
420c4fec69 Add 'Uncalled bet' line to output of new converter 2009-02-21 21:37:47 +09:00
Worros
36568075fe Add output line for main import code
Main import should probably read summary, meh
2009-02-21 20:24:11 +09:00
eblade
b8f88661f3 Add comment to Hand.py, around addCollectPot(). Please look at that, Matt. 2009-02-20 03:33:25 -05:00
eblade
c02f5dbaeb Merge branch 'master' of git://git.assembla.com/fpdboz.git 2009-02-20 03:26:12 -05:00
Worros
81c92f9599 Revert last change and try alternate
Assumes that the player names cannot have a ':' or a ' ' in them
2009-02-20 17:22:58 +09:00
eblade
fe5045b14f hand error in checkPlayerExists will tell you why it failed 2009-02-20 02:44:06 -05:00
Worros
65821dbd2b Remove debug line that slipped thorugh in last commit 2009-02-20 16:42:57 +09:00
Worros
77591788e4 Minor regex update for raises in Everleaf 2009-02-20 16:38:13 +09:00
Worros
08a4d568cc Fix parseHandStartTime for FullTilt
Doesn't come close to fixing Full Tilt tourneys as far as i can tell.
2009-02-20 02:26:29 +09:00
Worros
d9656b25f6 Oversight in Hand.py (?)
Bp missing in this function, and doesn't run if called. No idea if the
function has ever been called.
2009-02-20 01:37:48 +09:00
Matt Turnbull
a6c2152be4 break less badly on a hand which I can't handle at the moment 2008-12-20 22:52:47 +00:00
Matt Turnbull
da41e8e2ce Rid of cruft 2008-12-20 16:57:12 +00:00
Matt Turnbull
319ea7080d Pot taking on much functionality
committing before deleting a lot of commented out bits
2008-12-20 16:48:25 +00:00
Matt Turnbull
16f9906d84 pot total line output matches pokerstars better 2008-12-20 02:22:21 +00:00
Matt Turnbull
b37ddc5ace So close, yet so far. Need to calculate rake to output the side pots
line correctly.
2008-12-19 03:01:45 +00:00
Matt Turnbull
d168166495 Added:
addCallandRaise  - when reported amount is the actual amount transfered
addRaiseBy       - when reported is the amount additional to the
previous bet
_addRaise        - common helper
2008-12-17 11:54:26 +00:00
Matt Turnbull
a5bd749959 quick hack to Hand to help ongame 2008-12-17 00:30:31 +00:00
Matt Turnbull
58411a1ae3 use python datetime handling functions : strptime strftime 2008-12-16 23:23:33 +00:00
Matt Turnbull
070091472c first BB is treated as a call & raise of sb, so if folded round to bb,
it's an uncalled bet and he collects pot
2008-12-16 22:03:13 +00:00
Matt Turnbull
6f1e335275 FullTilt output is looking good, tried it on a HandHQ history, no crashes!
Hand.py: report summary line only for players who acted preflop (as with
stacks)

bug in a BB calling itself fixed
2008-12-16 21:49:04 +00:00
Matt Turnbull
1f1332b849 a bit more FTP; works? on 7 hand sample. No regression test of Everleaf
:(
2008-12-16 21:08:10 +00:00
Worros
186ef42663 Upper case Flop Turn and River in board dict 2008-12-16 23:48:49 +09:00
Matt Turnbull
988a7e3eb5 Added 'and is all-in' logic.
Altered to read actions in correct street order. hand.streetList must be
set correctly for different types of games.
2008-12-16 04:29:11 +00:00
Matt Turnbull
9c5d0f4598 Writes hands to stderr, miscellanous crap to stdout; usuable as cmdline
filter: ./Everleaf 'hhfile' 1>/dev/null 2>outfile

Holecards are sets -- should work on Omaha hi hands also.

Successfully imported Speed_Kuala_full.txt to fpdb.

Added gettext.

cards strings are handled a little better (one fewer regex)

Testfile can be supplied as first cmd line arg.
2008-12-15 23:56:19 +00:00
Matt Turnbull
fb02d9224b Merge branch 'exp'
Conflicts:

	pyfpdb/Hand.py
2008-12-14 22:15:14 +00:00
Matt Turnbull
3dbb0e8376 Everleaf uncalled bets; pot total; rake 2008-12-14 22:05:51 +00:00
Matt Turnbull
7926ac9def multiple 'collected pots' handles side pots, rake calculated from
totalbets - totalcollected.
2008-12-14 19:25:04 +00:00
Worros
ec7c21621d Move hand into its own file and fix 2008-12-12 23:29:45 +09:00