From 8d78e11a4fad7b5861f7e37a817aec200ae985c9 Mon Sep 17 00:00:00 2001 From: Mika Bostrom Date: Sun, 16 Jan 2011 10:43:36 +0200 Subject: [PATCH 01/15] Add support for specifying DB port In case someone needs to connect to a DB engine in non-standard port, defining the TCP port is required. This is a rare corner case which should only arise when a given DB host runs multiple versions of the same DB engine. However, the support is relatively straightforward to implement and it shouldn't conflict with any other options. --- pyfpdb/Configuration.py | 19 +++++++++++++------ pyfpdb/Database.py | 13 ++++++++++--- pyfpdb/HUD_config.xml.example | 6 ++++++ 3 files changed, 29 insertions(+), 9 deletions(-) diff --git a/pyfpdb/Configuration.py b/pyfpdb/Configuration.py index a0ad4bad..3a5e0787 100644 --- a/pyfpdb/Configuration.py +++ b/pyfpdb/Configuration.py @@ -409,12 +409,13 @@ class Database: self.db_name = node.getAttribute("db_name") self.db_desc = node.getAttribute("db_desc") self.db_server = node.getAttribute("db_server").lower() - self.db_ip = node.getAttribute("db_ip") + self.db_ip = node.getAttribute("db_ip") + self.db_port = node.getAttribute("db_port") self.db_user = node.getAttribute("db_user") self.db_pass = node.getAttribute("db_pass") self.db_selected = string_to_bool(node.getAttribute("default"), default=False) - log.debug("Database db_name:'%(name)s' db_server:'%(server)s' db_ip:'%(ip)s' db_user:'%(user)s' db_pass (not logged) selected:'%(sel)s'" \ - % { 'name':self.db_name, 'server':self.db_server, 'ip':self.db_ip, 'user':self.db_user, 'sel':self.db_selected} ) + log.debug("Database db_name:'%(name)s' db_server:'%(server)s' db_ip:'%(ip)s' db_port:'%(port)s' db_user:'%(user)s' db_pass (not logged) selected:'%(sel)s'" \ + % { 'name':self.db_name, 'server':self.db_server, 'ip':self.db_ip, 'port':self.db_port, 'user':self.db_user, 'sel':self.db_selected} ) def __str__(self): temp = 'Database = ' + self.db_name + '\n' @@ -1059,6 +1060,9 @@ class Config: try: db['db-host'] = self.supported_databases[name].db_ip except: pass + try: db['db-port'] = self.supported_databases[name].db_port + except KeyError: pass + try: db['db-user'] = self.supported_databases[name].db_user except: pass @@ -1072,15 +1076,16 @@ class Config: return db - def set_db_parameters(self, db_name = 'fpdb', db_ip = None, db_user = None, - db_pass = None, db_desc = None, db_server = None, - default = "False"): + def set_db_parameters(self, db_name = 'fpdb', db_ip = None, db_port = None, + db_user = None, db_pass = None, db_desc = None, + db_server = None, default = "False"): db_node = self.get_db_node(db_name) default = default.lower() defaultb = string_to_bool(default, False) if db_node != None: if db_desc is not None: db_node.setAttribute("db_desc", db_desc) if db_ip is not None: db_node.setAttribute("db_ip", db_ip) + if db_port is not None: db_node.setAttribute("db_port", db_port) if db_user is not None: db_node.setAttribute("db_user", db_user) if db_pass is not None: db_node.setAttribute("db_pass", db_pass) if db_server is not None: db_node.setAttribute("db_server", db_server) @@ -1094,6 +1099,7 @@ class Config: if self.supported_databases.has_key(db_name): if db_desc is not None: self.supported_databases[db_name].dp_desc = db_desc if db_ip is not None: self.supported_databases[db_name].dp_ip = db_ip + if db_port is not None: self.supported_databases[db_name].dp_port = db_port if db_user is not None: self.supported_databases[db_name].dp_user = db_user if db_pass is not None: self.supported_databases[db_name].dp_pass = db_pass if db_server is not None: self.supported_databases[db_name].dp_server = db_server @@ -1148,6 +1154,7 @@ class Config: if self.supported_databases.has_key(db_name): if db_desc is not None: self.supported_databases[db_name].dp_desc = db_desc if db_ip is not None: self.supported_databases[db_name].dp_ip = db_ip + if db_port is not None: self.supported_databases[db_name].dp_port = db_port if db_user is not None: self.supported_databases[db_name].dp_user = db_user if db_pass is not None: self.supported_databases[db_name].dp_pass = db_pass if db_server is not None: self.supported_databases[db_name].dp_server = db_server diff --git a/pyfpdb/Database.py b/pyfpdb/Database.py index 8ed0e3bc..96f7ec38 100644 --- a/pyfpdb/Database.py +++ b/pyfpdb/Database.py @@ -254,6 +254,7 @@ class Database: self.db_server = db_params['db-server'] self.database = db_params['db-databaseName'] self.host = db_params['db-host'] + self.db_port = db_params['db-port'] self.db_path = '' gen = c.get_general_params() self.day_start = 0 @@ -349,6 +350,7 @@ class Database: try: self.connect(backend=db['db-backend'], host=db['db-host'], + port=db['db-port'], database=db['db-databaseName'], user=db['db-user'], password=db['db-password']) @@ -363,14 +365,17 @@ class Database: self.db_server = db_params['db-server'] self.database = db_params['db-databaseName'] self.host = db_params['db-host'] + self.db_port = db_params['db-port'] - def connect(self, backend=None, host=None, database=None, - user=None, password=None, create=False): + def connect(self, backend=None, host=None, port=None, + database=None, user=None, password=None, + create=False): """Connects a database with the given parameters""" if backend is None: raise FpdbError('Database backend not defined') self.backend = backend self.host = host + self.port = port self.user = user self.password = password self.database = database @@ -382,7 +387,8 @@ class Database: if use_pool: MySQLdb = pool.manage(MySQLdb, pool_size=5) try: - self.connection = MySQLdb.connect(host=host, user=user, passwd=password, db=database, use_unicode=True) + self.connection = MySQLdb.connect(host=host, port=port, user=user, + passwd=password, db=database, use_unicode=True) self.__connected = True #TODO: Add port option except MySQLdb.Error, ex: @@ -416,6 +422,7 @@ class Database: if not self.is_connected(): try: self.connection = psycopg2.connect(host = host, + port = port, user = user, password = password, database = database) diff --git a/pyfpdb/HUD_config.xml.example b/pyfpdb/HUD_config.xml.example index 7bb30e0f..a3df15a2 100644 --- a/pyfpdb/HUD_config.xml.example +++ b/pyfpdb/HUD_config.xml.example @@ -796,6 +796,12 @@ Left-Drag to Move" + From 118afa7c926d1c726e0b384d433a3638d553a55c Mon Sep 17 00:00:00 2001 From: Donoban Date: Wed, 2 Feb 2011 10:36:54 +0100 Subject: [PATCH 02/15] Uncommeting wrong line on import --- pyfpdb/fpdb.pyw | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyfpdb/fpdb.pyw b/pyfpdb/fpdb.pyw index 8512c0e1..8ca14256 100755 --- a/pyfpdb/fpdb.pyw +++ b/pyfpdb/fpdb.pyw @@ -116,7 +116,7 @@ import GuiGraphViewer import GuiTourneyGraphViewer import GuiSessionViewer import GuiReplayer -#import GuiStove +import GuiStove import SQL import Database import Configuration From b1f62de4e5211c173520d23c4f5d9014246c16e3 Mon Sep 17 00:00:00 2001 From: Donoban Date: Thu, 3 Feb 2011 02:50:51 +0100 Subject: [PATCH 03/15] Database.py code rewroten line[X] replaced by line.append(), easy to read and mantain --- pyfpdb/Database.py | 181 +++++++++++++++++++++++---------------------- 1 file changed, 91 insertions(+), 90 deletions(-) diff --git a/pyfpdb/Database.py b/pyfpdb/Database.py index a0a0f9c8..1446666e 100644 --- a/pyfpdb/Database.py +++ b/pyfpdb/Database.py @@ -1930,99 +1930,100 @@ class Database: #print "DEBUG: %s %s %s" %(hid, pids, pdata) inserts = [] for p in pdata: - line = [0]*89 + #NOTE: Insert new stats at right place because SQL needs strict order + line = [] - line[0] = 1 # HDs - if pdata[p]['street0VPI']: line[1] = 1 - if pdata[p]['street0Aggr']: line[2] = 1 - if pdata[p]['street0_3BChance']: line[3] = 1 - if pdata[p]['street0_3BDone']: line[4] = 1 - if pdata[p]['street0_4BChance']: line[5] = 1 - if pdata[p]['street0_4BDone']: line[6] = 1 - if pdata[p]['street0_FoldTo3BChance']: line[7] = 1 - if pdata[p]['street0_FoldTo3BDone']: line[8] = 1 - if pdata[p]['street0_FoldTo4BChance']: line[9] = 1 - if pdata[p]['street0_FoldTo4BDone']: line[10] = 1 - if pdata[p]['other3BStreet0']: line[11] = 1 - if pdata[p]['other4BStreet0']: line[12] = 1 - if pdata[p]['street1Seen']: line[13] = 1 - if pdata[p]['street2Seen']: line[14] = 1 - if pdata[p]['street3Seen']: line[15] = 1 - if pdata[p]['street4Seen']: line[16] = 1 - if pdata[p]['sawShowdown']: line[17] = 1 - if pdata[p]['street1Aggr']: line[18] = 1 - if pdata[p]['street2Aggr']: line[19] = 1 - if pdata[p]['street3Aggr']: line[20] = 1 - if pdata[p]['street4Aggr']: line[21] = 1 - if pdata[p]['otherRaisedStreet0']: line[22] = 1 - if pdata[p]['otherRaisedStreet1']: line[23] = 1 - if pdata[p]['otherRaisedStreet2']: line[24] = 1 - if pdata[p]['otherRaisedStreet3']: line[25] = 1 - if pdata[p]['otherRaisedStreet4']: line[26] = 1 - if pdata[p]['foldToOtherRaisedStreet0']: line[27] = 1 - if pdata[p]['foldToOtherRaisedStreet1']: line[28] = 1 - if pdata[p]['foldToOtherRaisedStreet2']: line[29] = 1 - if pdata[p]['foldToOtherRaisedStreet3']: line[30] = 1 - if pdata[p]['foldToOtherRaisedStreet4']: line[31] = 1 - line[32] = pdata[p]['wonWhenSeenStreet1'] - line[33] = pdata[p]['wonWhenSeenStreet2'] - line[34] = pdata[p]['wonWhenSeenStreet3'] - line[35] = pdata[p]['wonWhenSeenStreet4'] - line[36] = pdata[p]['wonAtSD'] - if pdata[p]['raiseFirstInChance']: line[37] = 1 - if pdata[p]['raisedFirstIn']: line[38] = 1 - if pdata[p]['foldBbToStealChance']: line[39] = 1 - if pdata[p]['foldedBbToSteal']: line[40] = 1 - if pdata[p]['foldSbToStealChance']: line[41] = 1 - if pdata[p]['foldedSbToSteal']: line[42] = 1 - if pdata[p]['street1CBChance']: line[43] = 1 - if pdata[p]['street1CBDone']: line[44] = 1 - if pdata[p]['street2CBChance']: line[45] = 1 - if pdata[p]['street2CBDone']: line[46] = 1 - if pdata[p]['street3CBChance']: line[47] = 1 - if pdata[p]['street3CBDone']: line[48] = 1 - if pdata[p]['street4CBChance']: line[49] = 1 - if pdata[p]['street4CBDone']: line[50] = 1 - if pdata[p]['foldToStreet1CBChance']: line[51] = 1 - if pdata[p]['foldToStreet1CBDone']: line[52] = 1 - if pdata[p]['foldToStreet2CBChance']: line[53] = 1 - if pdata[p]['foldToStreet2CBDone']: line[54] = 1 - if pdata[p]['foldToStreet3CBChance']: line[55] = 1 - if pdata[p]['foldToStreet3CBDone']: line[56] = 1 - if pdata[p]['foldToStreet4CBChance']: line[57] = 1 - if pdata[p]['foldToStreet4CBDone']: line[58] = 1 - line[59] = pdata[p]['totalProfit'] - if pdata[p]['street1CheckCallRaiseChance']: line[60] = 1 - if pdata[p]['street1CheckCallRaiseDone']: line[61] = 1 - if pdata[p]['street2CheckCallRaiseChance']: line[62] = 1 - if pdata[p]['street2CheckCallRaiseDone']: line[63] = 1 - if pdata[p]['street3CheckCallRaiseChance']: line[64] = 1 - if pdata[p]['street3CheckCallRaiseDone']: line[65] = 1 - if pdata[p]['street4CheckCallRaiseChance']: line[66] = 1 - if pdata[p]['street4CheckCallRaiseDone']: line[67] = 1 - if pdata[p]['street0Calls']: line[68] = 1 - if pdata[p]['street1Calls']: line[69] = 1 - if pdata[p]['street2Calls']: line[70] = 1 - if pdata[p]['street3Calls']: line[71] = 1 - if pdata[p]['street4Calls']: line[72] = 1 - if pdata[p]['street0Bets']: line[73] = 1 - if pdata[p]['street1Bets']: line[74] = 1 - if pdata[p]['street2Bets']: line[75] = 1 - if pdata[p]['street3Bets']: line[76] = 1 - if pdata[p]['street4Bets']: line[77] = 1 - if pdata[p]['street0Raises']: line[78] = 1 - if pdata[p]['street1Raises']: line[79] = 1 - if pdata[p]['street2Raises']: line[80] = 1 - if pdata[p]['street3Raises']: line[81] = 1 - if pdata[p]['street4Raises']: line[82] = 1 + line.append(1) # HDs + line.append(pdata[p]['street0VPI']) + line.append(pdata[p]['street0Aggr']) + line.append(pdata[p]['street0_3BChance']) + line.append(pdata[p]['street0_3BDone']) + line.append(pdata[p]['street0_4BChance']) + line.append(pdata[p]['street0_4BDone']) + line.append(pdata[p]['street0_FoldTo3BChance']) + line.append(pdata[p]['street0_FoldTo3BDone']) + line.append(pdata[p]['street0_FoldTo4BChance']) + line.append(pdata[p]['street0_FoldTo4BDone']) + line.append(pdata[p]['other3BStreet0']) + line.append(pdata[p]['other4BStreet0']) + line.append(pdata[p]['street1Seen']) + line.append(pdata[p]['street2Seen']) + line.append(pdata[p]['street3Seen']) + line.append(pdata[p]['street4Seen']) + line.append(pdata[p]['sawShowdown']) + line.append(pdata[p]['street1Aggr']) + line.append(pdata[p]['street2Aggr']) + line.append(pdata[p]['street3Aggr']) + line.append(pdata[p]['street4Aggr']) + line.append(pdata[p]['otherRaisedStreet0']) + line.append(pdata[p]['otherRaisedStreet1']) + line.append(pdata[p]['otherRaisedStreet2']) + line.append(pdata[p]['otherRaisedStreet3']) + line.append(pdata[p]['otherRaisedStreet4']) + line.append(pdata[p]['foldToOtherRaisedStreet0']) + line.append(pdata[p]['foldToOtherRaisedStreet1']) + line.append(pdata[p]['foldToOtherRaisedStreet2']) + line.append(pdata[p]['foldToOtherRaisedStreet3']) + line.append(pdata[p]['foldToOtherRaisedStreet4']) + line.append(pdata[p]['wonWhenSeenStreet1']) + line.append(pdata[p]['wonWhenSeenStreet2']) + line.append(pdata[p]['wonWhenSeenStreet3']) + line.append(pdata[p]['wonWhenSeenStreet4']) + line.append(pdata[p]['wonAtSD']) + line.append(pdata[p]['raiseFirstInChance']) + line.append(pdata[p]['raisedFirstIn']) + line.append(pdata[p]['foldBbToStealChance']) + line.append(pdata[p]['foldedBbToSteal']) + line.append(pdata[p]['foldSbToStealChance']) + line.append(pdata[p]['foldedSbToSteal']) + line.append(pdata[p]['street1CBChance']) + line.append(pdata[p]['street1CBDone']) + line.append(pdata[p]['street2CBChance']) + line.append(pdata[p]['street2CBDone']) + line.append(pdata[p]['street3CBChance']) + line.append(pdata[p]['street3CBDone']) + line.append(pdata[p]['street4CBChance']) + line.append(pdata[p]['street4CBDone']) + line.append(pdata[p]['foldToStreet1CBChance']) + line.append(pdata[p]['foldToStreet1CBDone']) + line.append(pdata[p]['foldToStreet2CBChance']) + line.append(pdata[p]['foldToStreet2CBDone']) + line.append(pdata[p]['foldToStreet3CBChance']) + line.append(pdata[p]['foldToStreet3CBDone']) + line.append(pdata[p]['foldToStreet4CBChance']) + line.append(pdata[p]['foldToStreet4CBDone']) + line.append(pdata[p]['totalProfit']) + line.append(pdata[p]['street1CheckCallRaiseChance']) + line.append(pdata[p]['street1CheckCallRaiseDone']) + line.append(pdata[p]['street2CheckCallRaiseChance']) + line.append(pdata[p]['street2CheckCallRaiseDone']) + line.append(pdata[p]['street3CheckCallRaiseChance']) + line.append(pdata[p]['street3CheckCallRaiseDone']) + line.append(pdata[p]['street4CheckCallRaiseChance']) + line.append(pdata[p]['street4CheckCallRaiseDone']) + line.append(pdata[p]['street0Calls']) + line.append(pdata[p]['street1Calls']) + line.append(pdata[p]['street2Calls']) + line.append(pdata[p]['street3Calls']) + line.append(pdata[p]['street4Calls']) + line.append(pdata[p]['street0Bets']) + line.append(pdata[p]['street1Bets']) + line.append(pdata[p]['street2Bets']) + line.append(pdata[p]['street3Bets']) + line.append(pdata[p]['street4Bets']) + line.append(pdata[p]['street0Raises']) + line.append(pdata[p]['street1Raises']) + line.append(pdata[p]['street2Raises']) + line.append(pdata[p]['street3Raises']) + line.append(pdata[p]['street4Raises']) - line[83] = gid # gametypeId - line[84] = pids[p] # playerId - line[85] = len(pids) # activeSeats + line.append(gid) # gametypeId + line.append(pids[p]) # playerId + line.append(len(pids)) # activeSeats pos = {'B':'B', 'S':'S', 0:'D', 1:'C', 2:'M', 3:'M', 4:'M', 5:'E', 6:'E', 7:'E', 8:'E', 9:'E' } - line[86] = pos[pdata[p]['position']] - line[87] = pdata[p]['tourneyTypeId'] - line[88] = styleKey # styleKey + line.append(pos[pdata[p]['position']]) + line.append(pdata[p]['tourneyTypeId']) + line.append(styleKey) # styleKey inserts.append(line) From da05252b2fcc3ceef13294ce852b47911508308f Mon Sep 17 00:00:00 2001 From: Donoban Date: Thu, 3 Feb 2011 04:55:52 +0100 Subject: [PATCH 04/15] Wrap GuiStove import on try/except --- pyfpdb/fpdb.pyw | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pyfpdb/fpdb.pyw b/pyfpdb/fpdb.pyw index 8ca14256..95f53668 100755 --- a/pyfpdb/fpdb.pyw +++ b/pyfpdb/fpdb.pyw @@ -116,7 +116,10 @@ import GuiGraphViewer import GuiTourneyGraphViewer import GuiSessionViewer import GuiReplayer -import GuiStove +try: + import GuiStove +except: + print "GuiStove disabled" import SQL import Database import Configuration From 1a0d76686fbed360fb9d9cb76e195fdeb159f75a Mon Sep 17 00:00:00 2001 From: Donoban Date: Thu, 3 Feb 2011 05:04:12 +0100 Subject: [PATCH 05/15] Added 4bet and fold to 4bet stat --- pyfpdb/SQL.py | 60 ++++++++++++++++++++++++++++++++----------------- pyfpdb/Stats.py | 35 ++++++++++++++++++++++------- 2 files changed, 67 insertions(+), 28 deletions(-) diff --git a/pyfpdb/SQL.py b/pyfpdb/SQL.py index c705b8f8..c05eef00 100644 --- a/pyfpdb/SQL.py +++ b/pyfpdb/SQL.py @@ -1511,10 +1511,14 @@ class Sql: sum(hc.HDs) AS n, sum(hc.street0VPI) AS vpip, sum(hc.street0Aggr) AS pfr, - sum(hc.street0_3BChance) AS TB_opp_0, - sum(hc.street0_3BDone) AS TB_0, - sum(hc.street0_FoldTo3BChance) AS FTB_opp_0, - sum(hc.street0_FoldTo3BDone) AS FTB_0, + sum(hc.street0_3BChance) AS 3B_opp_0, + sum(hc.street0_3BDone) AS 3B_0, + sum(hc.street0_4BChance) AS 4B_opp_0, + sum(hc.street0_4BDone) AS 4B_0, + sum(hc.street0_FoldTo3BChance) AS F3B_opp_0, + sum(hc.street0_FoldTo3BDone) AS F3B_0, + sum(hc.street0_FoldTo4BChance) AS F4B_opp_0, + sum(hc.street0_FoldTo4BDone) AS F4B_0, sum(hc.street1Seen) AS saw_f, sum(hc.street1Seen) AS saw_1, sum(hc.street2Seen) AS saw_2, @@ -1624,10 +1628,14 @@ class Sql: sum(hc.HDs) AS n, sum(hc.street0VPI) AS vpip, sum(hc.street0Aggr) AS pfr, - sum(hc.street0_3BChance) AS TB_opp_0, - sum(hc.street0_3BDone) AS TB_0, - sum(hc.street0_FoldTo3BChance) AS FTB_opp_0, - sum(hc.street0_FoldTo3BDone) AS FTB_0, + sum(hc.street0_3BChance) AS 3B_opp_0, + sum(hc.street0_3BDone) AS 3B_0, + sum(hc.street0_4BChance) AS 4B_opp_0, + sum(hc.street0_4BDone) AS 4B_0, + sum(hc.street0_FoldTo3BChance) AS F3B_opp_0, + sum(hc.street0_FoldTo3BDone) AS F3B_0, + sum(hc.street0_FoldTo4BChance) AS F4B_opp_0, + sum(hc.street0_FoldTo4BDone) AS F4B_0, sum(hc.street1Seen) AS saw_f, sum(hc.street1Seen) AS saw_1, sum(hc.street2Seen) AS saw_2, @@ -1754,10 +1762,14 @@ class Sql: 1 AS n, cast(hp2.street0VPI as integer) AS vpip, cast(hp2.street0Aggr as integer) AS pfr, - cast(hp2.street0_3BChance as integer) AS TB_opp_0, - cast(hp2.street0_3BDone as integer) AS TB_0, - cast(hp2.street0_FoldTo3BChance as integer) AS FTB_opp_0, - cast(hp2.street0_FoldTo3BDone as integer) AS FTB_0, + cast(hp2.street0_3BChance as integer) AS 3B_opp_0, + cast(hp2.street0_3BDone as integer) AS 3B_0, + cast(hp2.street0_4BChance as integer) AS 4B_opp_0, + cast(hp2.street0_4BDone as integer) AS 4B_0, + cast(hp2.street0_FoldTo3BChance as integer) AS F3B_opp_0, + cast(hp2.street0_FoldTo3BDone as integer) AS F3B_0, + cast(hp2.street0_FoldTo4BChance as integer) AS F4B_opp_0, + cast(hp2.street0_FoldTo4BDone as integer) AS F4B_0, cast(hp2.street1Seen as integer) AS saw_f, cast(hp2.street1Seen as integer) AS saw_1, cast(hp2.street2Seen as integer) AS saw_2, @@ -1860,10 +1872,14 @@ class Sql: 1 AS n, cast(hp2.street0VPI as integer) AS vpip, cast(hp2.street0Aggr as integer) AS pfr, - cast(hp2.street0_3BChance as integer) AS TB_opp_0, - cast(hp2.street0_3BDone as integer) AS TB_0, - cast(hp2.street0_FoldTo3BChance as integer) AS FTB_opp_0, - cast(hp2.street0_FoldTo3BDone as integer) AS FTB_0, + cast(hp2.street0_3BChance as integer) AS 3B_opp_0, + cast(hp2.street0_3BDone as integer) AS 3B_0, + cast(hp2.street0_4BChance as integer) AS 4B_opp_0, + cast(hp2.street0_4BDone as integer) AS 4B_0, + cast(hp2.street0_FoldTo3BChance as integer) AS 3TB_opp_0, + cast(hp2.street0_FoldTo3BDone as integer) AS 3TB_0, + cast(hp2.street0_FoldTo4BChance as integer) AS 4TB_opp_0, + cast(hp2.street0_FoldTo4BDone as integer) AS 4TB_0, cast(hp2.street1Seen as integer) AS saw_f, cast(hp2.street1Seen as integer) AS saw_1, cast(hp2.street2Seen as integer) AS saw_2, @@ -1967,10 +1983,14 @@ class Sql: 1 AS n, cast(hp2.street0VPI as integer) AS vpip, cast(hp2.street0Aggr as integer) AS pfr, - cast(hp2.street0_3BChance as integer) AS TB_opp_0, - cast(hp2.street0_3BDone as integer) AS TB_0, - cast(hp2.street0_FoldTo3BChance as integer) AS TB_opp_0, - cast(hp2.street0_FoldTo3BDone as integer) AS TB_0, + cast(hp2.street0_3BChance as integer) AS 3B_opp_0, + cast(hp2.street0_3BDone as integer) AS 3B_0, + cast(hp2.street0_4BChance as integer) AS 4B_opp_0, + cast(hp2.street0_4BDone as integer) AS 4B_0, + cast(hp2.street0_FoldTo3BChance as integer) AS F3B_opp_0, + cast(hp2.street0_FoldTo3BDone as integer) AS F3B_0, + cast(hp2.street0_FoldTo4BChance as integer) AS F4B_opp_0, + cast(hp2.street0_FoldTo4BDone as integer) AS F4B_0, cast(hp2.street1Seen as integer) AS saw_f, cast(hp2.street1Seen as integer) AS saw_1, cast(hp2.street2Seen as integer) AS saw_2, diff --git a/pyfpdb/Stats.py b/pyfpdb/Stats.py index 8d9a4329..a85ac058 100755 --- a/pyfpdb/Stats.py +++ b/pyfpdb/Stats.py @@ -442,31 +442,50 @@ def three_B(stat_dict, player): """ Three bet preflop/3rd.""" stat = 0.0 try: - stat = float(stat_dict[player]['tb_0'])/float(stat_dict[player]['tb_opp_0']) + stat = float(stat_dict[player]['3b_0'])/float(stat_dict[player]['3b_opp_0']) return (stat, '%3.1f' % (100.0*stat), '3B=%3.1f%%' % (100.0*stat), '3B_pf=%3.1f%%' % (100.0*stat), - '(%d/%d)' % (stat_dict[player]['tb_0'], stat_dict[player]['tb_opp_0']), - _('% 3/4 Bet preflop/3rd')) + '(%d/%d)' % (stat_dict[player]['3b_0'], stat_dict[player]['3b_opp_0']), + _('% 4 Bet preflop/3rd')) except: return (stat, 'NA', '3B=NA', '3B_pf=NA', '(0/0)', - _('% 3/4 Bet preflop/3rd')) + _('% 3 Bet preflop/3rd')) + +def four_B(stat_dict, player): + """ Four bet preflop/4rd.""" + stat = 0.0 + try: + stat = float(stat_dict[player]['4b_0'])/float(stat_dict[player]['4b_opp_0']) + return (stat, + '%3.1f' % (100.0*stat), + '4B=%3.1f%%' % (100.0*stat), + '4B_pf=%3.1f%%' % (100.0*stat), + '(%d/%d)' % (stat_dict[player]['4b_0'], stat_dict[player]['4b_opp_0']), + _('% 4 Bet preflop/4rd')) + except: + return (stat, + 'NA', + '4B=NA', + '4B_pf=NA', + '(0/0)', + _('% 4 Bet preflop/4rd')) def f_3bet(stat_dict, player): """ Fold to 3bet preflop. """ stat = 0.0 try: - stat = float(stat_dict[player]['ftb_0'])/float(stat_dict[player]['ftb_opp_0']) + stat = float(stat_dict[player]['f3b_0'])/float(stat_dict[player]['f3b_opp_0']) return (stat, '%3.1f' % (100.0*stat), 'F3B=%3.1f%%' % (100.0*stat), 'F3B_pf=%3.1f%%' % (100.0*stat), - '(%d/%d)' % (stat_dict[player]['ftb_0'], stat_dict[player]['ftb_opp_0']), + '(%d/%d)' % (stat_dict[player]['f3b_0'], stat_dict[player]['f3b_opp_0']), _('% Fold to 3 Bet preflop')) except: return (stat, @@ -480,12 +499,12 @@ def f_4bet(stat_dict, player): """ Fold to 4bet preflop. """ stat = 0.0 try: - stat = float(stat_dict[player]['ffb_0'])/float(stat_dict[player]['ffb_opp_0']) + stat = float(stat_dict[player]['f4b_0'])/float(stat_dict[player]['f4b_opp_0']) return (stat, '%3.1f' % (100.0*stat), 'F4B=%3.1f%%' % (100.0*stat), 'F4B_pf=%3.1f%%' % (100.0*stat), - '(%d/%d)' % (stat_dict[player]['ffb_0'], stat_dict[player]['ffb_opp_0']), + '(%d/%d)' % (stat_dict[player]['f4b_0'], stat_dict[player]['f4b_opp_0']), _('% Fold to 4 Bet preflop')) except: return (stat, From 5b3d80fbcd2924c0d583f99be98c6196b1d015d2 Mon Sep 17 00:00:00 2001 From: Worros Date: Thu, 3 Feb 2011 13:21:54 +0800 Subject: [PATCH 06/15] Regression: Add Fold to 3/4bet to .hp files for Winamax --- ...E-USD-0.05-0.10-Date-unknown.Sample.txt.hp | 12 +++++++++++ ...O-EUR-0.05-0.10-Date-unknown.Sample.txt.hp | 20 +++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/pyfpdb/regression-test-files/cash/Win2day/Flop/NLHE-USD-0.05-0.10-Date-unknown.Sample.txt.hp b/pyfpdb/regression-test-files/cash/Win2day/Flop/NLHE-USD-0.05-0.10-Date-unknown.Sample.txt.hp index 0ee07b2d..c556aeeb 100644 --- a/pyfpdb/regression-test-files/cash/Win2day/Flop/NLHE-USD-0.05-0.10-Date-unknown.Sample.txt.hp +++ b/pyfpdb/regression-test-files/cash/Win2day/Flop/NLHE-USD-0.05-0.10-Date-unknown.Sample.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/Win2day/Flop/PLO-EUR-0.05-0.10-Date-unknown.Sample.txt.hp b/pyfpdb/regression-test-files/cash/Win2day/Flop/PLO-EUR-0.05-0.10-Date-unknown.Sample.txt.hp index 5ac2a97f..5e75242e 100644 --- a/pyfpdb/regression-test-files/cash/Win2day/Flop/PLO-EUR-0.05-0.10-Date-unknown.Sample.txt.hp +++ b/pyfpdb/regression-test-files/cash/Win2day/Flop/PLO-EUR-0.05-0.10-Date-unknown.Sample.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, From f267d85c54108769689580f91ec5f082f9de487a Mon Sep 17 00:00:00 2001 From: Worros Date: Thu, 3 Feb 2011 17:02:02 +0800 Subject: [PATCH 07/15] Regression: Add Fold to 3/4bet to .hp files for Absolute --- ...it $0.02(Real Money) Table 25932774.txt.hp | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/pyfpdb/regression-test-files/cash/UltimateBet/Flop/IHH20101106 Baseline Rd - Hold'em No Limit $0.02(Real Money) Table 25932774.txt.hp b/pyfpdb/regression-test-files/cash/UltimateBet/Flop/IHH20101106 Baseline Rd - Hold'em No Limit $0.02(Real Money) Table 25932774.txt.hp index 0fd0c27d..d70ac4c7 100644 --- a/pyfpdb/regression-test-files/cash/UltimateBet/Flop/IHH20101106 Baseline Rd - Hold'em No Limit $0.02(Real Money) Table 25932774.txt.hp +++ b/pyfpdb/regression-test-files/cash/UltimateBet/Flop/IHH20101106 Baseline Rd - Hold'em No Limit $0.02(Real Money) Table 25932774.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -799,6 +831,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, From 4539fe4d898d071e139421ecb58ed7dddbbd50e0 Mon Sep 17 00:00:00 2001 From: Eratosthenes Date: Thu, 3 Feb 2011 10:19:39 -0500 Subject: [PATCH 08/15] Change hand no back to approx the way Carl had it. --- pyfpdb/WinamaxToFpdb.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pyfpdb/WinamaxToFpdb.py b/pyfpdb/WinamaxToFpdb.py index 2baf3558..f42714be 100644 --- a/pyfpdb/WinamaxToFpdb.py +++ b/pyfpdb/WinamaxToFpdb.py @@ -219,13 +219,15 @@ class Winamax(HandHistoryConverter): # TODO: Manually adjust time against OFFSET hand.startTime = datetime.datetime.strptime(datetimestr, "%Y/%m/%d %H:%M:%S") # also timezone at end, e.g. " ET" hand.startTime = HandHistoryConverter.changeTimezone(hand.startTime, "CET", "UTC") -# if key == 'HID1': -# # Need to remove non-alphanumerics for MySQL + if key == 'HID1': + # Need to remove non-alphanumerics for MySQL # hand.handid = "1%.9d%s%s"%(int(info['HID2']),info['HID1'],info['HID3']) -# if len (hand.handid) > 19: -# hand.handid = "%s" % info['HID1'] - if key == 'HID3': - hand.handid = int(info['HID3']) # correct hand no (REB) + hand.handid = "%s%s%s"%(int(info['HID2']),info['HID1'],info['HID3']) + if len (hand.handid) > 19: + hand.handid = "%s%s" % (int(info['HID21']), int(info['HID3'])) + +# if key == 'HID3': +# hand.handid = int(info['HID3']) # correct hand no (REB) if key == 'TOURNO': hand.tourNo = info[key] if key == 'TABLE': From 27132b722a11c620b4055032537b7a03e410d763 Mon Sep 17 00:00:00 2001 From: Worros Date: Fri, 4 Feb 2011 10:47:46 +0800 Subject: [PATCH 09/15] Regression: Add Fold to 3/4bet to .hp files for Winamax --- ....05-201010.Invalid.side.pot.Player8.txt.hp | 36 +++++++++++++++++++ ...th.bad.collected.Biggest.stack.wins.txt.hp | 36 +++++++++++++++++++ ...09.Real.side.pot.with.bad.collected.txt.hp | 36 +++++++++++++++++++ 3 files changed, 108 insertions(+) diff --git a/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Invalid.side.pot.Player8.txt.hp b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Invalid.side.pot.Player8.txt.hp index ec43928b..eb8f97ea 100644 --- a/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Invalid.side.pot.Player8.txt.hp +++ b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Invalid.side.pot.Player8.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': True, @@ -799,6 +831,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp index 31b9a23c..18c28727 100644 --- a/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp +++ b/pyfpdb/regression-test-files/cash/Winamax/Flop/NLHE-FR-EUR-0.02-0.05-201010.Real.side.pot.with.bad.collected.Biggest.stack.wins.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, @@ -799,6 +831,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/Winamax/Flop/PLO-FR-EUR-0.02-0.05-201009.Real.side.pot.with.bad.collected.txt.hp b/pyfpdb/regression-test-files/cash/Winamax/Flop/PLO-FR-EUR-0.02-0.05-201009.Real.side.pot.with.bad.collected.txt.hp index 6e859733..59fe0747 100644 --- a/pyfpdb/regression-test-files/cash/Winamax/Flop/PLO-FR-EUR-0.02-0.05-201009.Real.side.pot.with.bad.collected.txt.hp +++ b/pyfpdb/regression-test-files/cash/Winamax/Flop/PLO-FR-EUR-0.02-0.05-201009.Real.side.pot.with.bad.collected.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -799,6 +831,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, From 0dfbe63446cbafaff384d8e342c17c3949f6768d Mon Sep 17 00:00:00 2001 From: Worros Date: Fri, 4 Feb 2011 11:07:08 +0800 Subject: [PATCH 10/15] Regression: Add Fold to 3/4bet to .hp files for Everleaf and Carbon --- ...ax-USD-0.25-0.50.200810.All.Streets.txt.hp | 32 +++++++++++++++++++ ...SD-0.01-0.02-201008.2Way.All-in.pre.txt.hp | 32 +++++++++++++++++++ 2 files changed, 64 insertions(+) diff --git a/pyfpdb/regression-test-files/cash/Carbon/Flop/NLHE-9max-USD-0.25-0.50.200810.All.Streets.txt.hp b/pyfpdb/regression-test-files/cash/Carbon/Flop/NLHE-9max-USD-0.25-0.50.200810.All.Streets.txt.hp index c16c6d63..8452dcd2 100644 --- a/pyfpdb/regression-test-files/cash/Carbon/Flop/NLHE-9max-USD-0.25-0.50.200810.All.Streets.txt.hp +++ b/pyfpdb/regression-test-files/cash/Carbon/Flop/NLHE-9max-USD-0.25-0.50.200810.All.Streets.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': True, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': True, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/Everleaf/Flop/NLHE-10max-USD-0.01-0.02-201008.2Way.All-in.pre.txt.hp b/pyfpdb/regression-test-files/cash/Everleaf/Flop/NLHE-10max-USD-0.01-0.02-201008.2Way.All-in.pre.txt.hp index 53d34e60..1e3cdfd9 100644 --- a/pyfpdb/regression-test-files/cash/Everleaf/Flop/NLHE-10max-USD-0.01-0.02-201008.2Way.All-in.pre.txt.hp +++ b/pyfpdb/regression-test-files/cash/Everleaf/Flop/NLHE-10max-USD-0.01-0.02-201008.2Way.All-in.pre.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': True, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, From 7dc6c9551540e467cd832beffc8a796fd2e80d5e Mon Sep 17 00:00:00 2001 From: Worros Date: Fri, 4 Feb 2011 11:17:07 +0800 Subject: [PATCH 11/15] Regression: Add Fold to 3/4bet to .hp files for Absoilute, OnGame, Party --- ...mit $0.02(Real Money) Table 9339866.txt.hp | 32 +++++++++++++++++++ ...50-1.00-201008.All-in.with.showdown.txt.hp | 20 ++++++++++++ .../NLHE-USD-0.01-0.02-201008.Sample.txt.hp | 24 ++++++++++++++ 3 files changed, 76 insertions(+) diff --git a/pyfpdb/regression-test-files/cash/Absolute/Flop/IHH20090610 Chile Way - Hold'em No Limit $0.02(Real Money) Table 9339866.txt.hp b/pyfpdb/regression-test-files/cash/Absolute/Flop/IHH20090610 Chile Way - Hold'em No Limit $0.02(Real Money) Table 9339866.txt.hp index fcce3360..26e2c35d 100644 --- a/pyfpdb/regression-test-files/cash/Absolute/Flop/IHH20090610 Chile Way - Hold'em No Limit $0.02(Real Money) Table 9339866.txt.hp +++ b/pyfpdb/regression-test-files/cash/Absolute/Flop/IHH20090610 Chile Way - Hold'em No Limit $0.02(Real Money) Table 9339866.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/OnGame/Flop/LHE-9max-USD-0.50-1.00-201008.All-in.with.showdown.txt.hp b/pyfpdb/regression-test-files/cash/OnGame/Flop/LHE-9max-USD-0.50-1.00-201008.All-in.with.showdown.txt.hp index 6a9111e6..1c2f8ba6 100644 --- a/pyfpdb/regression-test-files/cash/OnGame/Flop/LHE-9max-USD-0.50-1.00-201008.All-in.with.showdown.txt.hp +++ b/pyfpdb/regression-test-files/cash/OnGame/Flop/LHE-9max-USD-0.50-1.00-201008.All-in.with.showdown.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': True, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': True, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/PartyPoker/Flop/NLHE-USD-0.01-0.02-201008.Sample.txt.hp b/pyfpdb/regression-test-files/cash/PartyPoker/Flop/NLHE-USD-0.01-0.02-201008.Sample.txt.hp index ec224560..a44ec8da 100644 --- a/pyfpdb/regression-test-files/cash/PartyPoker/Flop/NLHE-USD-0.01-0.02-201008.Sample.txt.hp +++ b/pyfpdb/regression-test-files/cash/PartyPoker/Flop/NLHE-USD-0.01-0.02-201008.Sample.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, From 912a28511fb1e0828b7733fa36032ed61644aaab Mon Sep 17 00:00:00 2001 From: Worros Date: Fri, 4 Feb 2011 11:51:30 +0800 Subject: [PATCH 12/15] Add Fold to 3/4bet to .hp files for FTP files --- .../3-Draw-Limit-USD-0.10-0.20-201011.txt.hp | 24 +++++++++++++ .../3-Draw-Limit-USD-150-300-201012.txt.hp | 20 +++++++++++ ...011.Hero.sitting.out.but.not.listed.txt.hp | 16 +++++++++ ...2.201012.Button.Player4.Sitting.out.txt.hp | 28 +++++++++++++++ ...1-0.02.201008.Weird.table.character.txt.hp | 24 +++++++++++++ ...0.05.201007.Short.lived.date.format.txt.hp | 36 +++++++++++++++++++ ...USD-0.01-0.02.201003.River.Showdown.txt.hp | 24 +++++++++++++ ...3-6-20106.Steal.from.Button.Failure.txt.hp | 28 +++++++++++++++ ...0-0.20-201012.CCT.and.ET.timeformat.txt.hp | 28 +++++++++++++++ ...01012.Player6.listed.but.doesnt.act.txt.hp | 32 +++++++++++++++++ 10 files changed, 260 insertions(+) diff --git a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt.hp index fe514d83..4ee3f055 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-0.10-0.20-201011.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': True, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-150-300-201012.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-150-300-201012.txt.hp index 583521f6..ea91b78e 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-150-300-201012.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-150-300-201012.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': True, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': True, @@ -423,6 +439,10 @@ 'street0_3BDone': True, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-250-500-201011.Hero.sitting.out.but.not.listed.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-250-500-201011.Hero.sitting.out.but.not.listed.txt.hp index 832fb6ee..99480387 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-250-500-201011.Hero.sitting.out.but.not.listed.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Draw/3-Draw-Limit-USD-250-500-201011.Hero.sitting.out.but.not.listed.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Flop/LHE-9max-USD-1-2.201012.Button.Player4.Sitting.out.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Flop/LHE-9max-USD-1-2.201012.Button.Player4.Sitting.out.txt.hp index 7dbc76c1..55a4640f 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Flop/LHE-9max-USD-1-2.201012.Button.Player4.Sitting.out.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Flop/LHE-9max-USD-1-2.201012.Button.Player4.Sitting.out.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': True, diff --git a/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-6max-EUR-0.01-0.02.201008.Weird.table.character.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-6max-EUR-0.01-0.02.201008.Weird.table.character.txt.hp index d4bba5fb..b9083181 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-6max-EUR-0.01-0.02.201008.Weird.table.character.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-6max-EUR-0.01-0.02.201008.Weird.table.character.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-9max-USD-0.02-0.05.201007.Short.lived.date.format.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-9max-USD-0.02-0.05.201007.Short.lived.date.format.txt.hp index d04306a5..0b733471 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-9max-USD-0.02-0.05.201007.Short.lived.date.format.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Flop/NLHE-9max-USD-0.02-0.05.201007.Short.lived.date.format.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -799,6 +831,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Flop/PLO-6max-USD-0.01-0.02.201003.River.Showdown.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Flop/PLO-6max-USD-0.01-0.02.201003.River.Showdown.txt.hp index fcd3eb6f..3e582b8d 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Flop/PLO-6max-USD-0.01-0.02.201003.River.Showdown.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Flop/PLO-6max-USD-0.01-0.02.201003.River.Showdown.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Stud/7-Stud-USD-3-6-20106.Steal.from.Button.Failure.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Stud/7-Stud-USD-3-6-20106.Steal.from.Button.Failure.txt.hp index d02e65c6..33661ab2 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Stud/7-Stud-USD-3-6-20106.Steal.from.Button.Failure.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Stud/7-Stud-USD-3-6-20106.Steal.from.Button.Failure.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': True, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.CCT.and.ET.timeformat.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.CCT.and.ET.timeformat.txt.hp index 63e7eb16..48c0d6df 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.CCT.and.ET.timeformat.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.CCT.and.ET.timeformat.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, diff --git a/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.Player6.listed.but.doesnt.act.txt.hp b/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.Player6.listed.but.doesnt.act.txt.hp index 2fffb326..29a22f29 100644 --- a/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.Player6.listed.but.doesnt.act.txt.hp +++ b/pyfpdb/regression-test-files/cash/FTP/Stud/Razz-USD-0.10-0.20-201012.Player6.listed.but.doesnt.act.txt.hp @@ -47,6 +47,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': True, 'street1Bets': 1, 'street1CBChance': False, @@ -141,6 +145,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -235,6 +243,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -329,6 +341,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -423,6 +439,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -517,6 +537,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -611,6 +635,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, @@ -705,6 +733,10 @@ 'street0_3BDone': False, 'street0_4BChance': False, 'street0_4BDone': False, + 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BDone': False, + 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, 'street1CBChance': False, From 115d187ed1f1b52009f0708896232e1f5867eef4 Mon Sep 17 00:00:00 2001 From: donoban Date: Fri, 4 Feb 2011 05:23:52 +0100 Subject: [PATCH 13/15] calc34BetStreet0() rewritten More efficient with use of break and continue --- pyfpdb/DerivedStats.py | 44 ++++++++++++++++++++++++++++-------------- 1 file changed, 29 insertions(+), 15 deletions(-) diff --git a/pyfpdb/DerivedStats.py b/pyfpdb/DerivedStats.py index 5ab047de..2bb3542f 100644 --- a/pyfpdb/DerivedStats.py +++ b/pyfpdb/DerivedStats.py @@ -446,21 +446,35 @@ class DerivedStats(): for action in hand.actions[hand.actionStreets[1]]: # FIXME: fill other(3|4)BStreet0 - i have no idea what does it mean pname, act, aggr = action[0], action[1], action[1] in ('raises', 'bets') - if aggr and bet_level == 1: - first_agressor = pname - if aggr and bet_level == 2: - self.handsplayers[pname]['street0_3BDone'] = True - second_agressor = pname - self.handsplayers[pname]['street0_4BDone'] = aggr and bet_level == 3 and pname == second_agressor - self.handsplayers[pname]['street0_3BChance'] = self.handsplayers[pname]['street0_3BChance'] or bet_level == 2 - self.handsplayers[pname]['street0_4BChance'] = self.handsplayers[pname]['street0_4BChance'] or bet_level == 3 and pname == first_agressor - self.handsplayers[pname]['street0_FoldTo3BChance'] = self.handsplayers[pname]['street0_FoldTo3BChance'] or (bet_level == 3 and pname == first_agressor) - self.handsplayers[pname]['street0_FoldTo4BChance'] = self.handsplayers[pname]['street0_FoldTo4BChance'] or (bet_level == 4 and pname == second_agressor) - self.handsplayers[pname]['street0_FoldTo3BDone'] = act == 'folds' and bet_level == 3 and pname == first_agressor - self.handsplayers[pname]['street0_FoldTo4BDone'] = act == 'folds' and bet_level == 4 and pname == second_agressor - if aggr: - bet_level += 1 - + if bet_level == 1: + if aggr: + first_agressor = pname + bet_level += 1 + continue + elif bet_level == 2: + self.handsplayers[pname]['street0_3BChance'] = True + if aggr: + self.handsplayers[pname]['street0_3BDone'] = True + second_agressor = pname + bet_level += 1 + continue + elif bet_level == 3: + if pname == first_agressor: + self.handsplayers[pname]['street0_4BChance'] = True + self.handsplayers[pname]['street0_FoldTo3BChance'] = True + if aggr: + self.handsplayers[pname]['street0_4BDone'] = True + bet_level += 1 + elif act == 'folds': + self.handsplayers[pname]['street0_FoldTo3BDone'] = True + break + continue + elif bet_level == 4: + if pname == second_agressor: + self.handsplayers[pname]['street0_FoldTo4BChance'] = True + if act == 'folds': + self.handsplayers[pname]['street0_FoldTo4BDone'] = True + break def calcCBets(self, hand): """Fill streetXCBChance, streetXCBDone, foldToStreetXCBDone, foldToStreetXCBChance From 6b384634f84e7422d01e72b81f63e26be5378637 Mon Sep 17 00:00:00 2001 From: Worros Date: Fri, 4 Feb 2011 13:00:59 +0800 Subject: [PATCH 14/15] Regression: Fix Stars foldto3/4bet for Allin-pre.txt --- .../Flop/NLHE-6max-USD-0.05-0.10-200912.Allin-pre.txt.hp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pyfpdb/regression-test-files/cash/Stars/Flop/NLHE-6max-USD-0.05-0.10-200912.Allin-pre.txt.hp b/pyfpdb/regression-test-files/cash/Stars/Flop/NLHE-6max-USD-0.05-0.10-200912.Allin-pre.txt.hp index 826d4bba..1c131411 100644 --- a/pyfpdb/regression-test-files/cash/Stars/Flop/NLHE-6max-USD-0.05-0.10-200912.Allin-pre.txt.hp +++ b/pyfpdb/regression-test-files/cash/Stars/Flop/NLHE-6max-USD-0.05-0.10-200912.Allin-pre.txt.hp @@ -49,7 +49,7 @@ 'street0_4BDone': False, 'street0_FoldTo3BChance': False, 'street0_FoldTo3BDone': False, - 'street0_FoldTo4BChance': False, + 'street0_FoldTo4BChance': True, 'street0_FoldTo4BDone': False, 'street1Aggr': False, 'street1Bets': 0, @@ -537,7 +537,7 @@ 'street0_3BDone': False, 'street0_4BChance': True, 'street0_4BDone': True, - 'street0_FoldTo3BChance': False, + 'street0_FoldTo3BChance': True, 'street0_FoldTo3BDone': False, 'street0_FoldTo4BChance': False, 'street0_FoldTo4BDone': False, From 5ff3e414eb6adb2f86c81eeead40abcc2fe158f6 Mon Sep 17 00:00:00 2001 From: Worros Date: Fri, 4 Feb 2011 17:18:10 +0800 Subject: [PATCH 15/15] Winamax: Major revision to readCollected This should fix most issues with the way Winamax writes its hand histories. --- pyfpdb/WinamaxToFpdb.py | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/pyfpdb/WinamaxToFpdb.py b/pyfpdb/WinamaxToFpdb.py index f42714be..b8b5ed1e 100644 --- a/pyfpdb/WinamaxToFpdb.py +++ b/pyfpdb/WinamaxToFpdb.py @@ -107,6 +107,7 @@ class Winamax(HandHistoryConverter): re_TailSplitHands = re.compile(r'\n\s*\n') re_Button = re.compile(r'Seat\s#(?P