p72 - redid foldToCB, this might be correct now but havent verified
This commit is contained in:
		
							parent
							
								
									a289f7b151
								
							
						
					
					
						commit
						37e111067b
					
				| 
						 | 
				
			
			@ -22,7 +22,6 @@ update abbreviations.txt
 | 
			
		|||
(steffen) finish bringing back tourney
 | 
			
		||||
export settings[hud-defaultInterval] to conf
 | 
			
		||||
fill check-/call-raise cache fields
 | 
			
		||||
fix foldToCB cache fields to catch everything properly
 | 
			
		||||
table with data for graphs for SD/F, W$wSF, W$@SD
 | 
			
		||||
 | 
			
		||||
printhand each and the 2/3 relevant printplayerflags respectively on ps-lhe-ring-successful-steal-by-cutoff.txt and ps-lhe-ring-call-3B-preflop-cb-no2b.txt
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -391,7 +391,7 @@ This program is licensed under the AGPL3, see docs"""+os.sep+"agpl-3.0.txt")
 | 
			
		|||
		self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
 | 
			
		||||
		self.window.connect("delete_event", self.delete_event)
 | 
			
		||||
		self.window.connect("destroy", self.destroy)
 | 
			
		||||
		self.window.set_title("Free Poker DB - version: alpha2+, p71")
 | 
			
		||||
		self.window.set_title("Free Poker DB - version: alpha2+, p72")
 | 
			
		||||
		self.window.set_border_width(1)
 | 
			
		||||
		self.window.set_size_request(1020,400)
 | 
			
		||||
		self.window.set_resizable(True)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -70,13 +70,16 @@ def mainParser(db, cursor, site, category, hand):
 | 
			
		|||
	#3b read positions
 | 
			
		||||
	if (category=="holdem" or category=="omahahi" or category=="omahahilo"):
 | 
			
		||||
		positions = fpdb_simple.parsePositions (hand, names)
 | 
			
		||||
		base="hold"
 | 
			
		||||
	else:
 | 
			
		||||
		base="stud"
 | 
			
		||||
	
 | 
			
		||||
	#part 4: take appropriate action for each line based on linetype
 | 
			
		||||
	for i in range(len(hand)):
 | 
			
		||||
		if (lineTypes[i]=="cards"):
 | 
			
		||||
			fpdb_simple.parseCardLine (site, category, lineStreets[i], hand[i], names, cardValues, cardSuits, boardValues, boardSuits)
 | 
			
		||||
		elif (lineTypes[i]=="action"):
 | 
			
		||||
			fpdb_simple.parseActionLine (site, hand[i], lineStreets[i], playerIDs, names, actionTypes, actionAmounts, actionNos, actionTypeByNo)
 | 
			
		||||
			fpdb_simple.parseActionLine (site, base, hand[i], lineStreets[i], playerIDs, names, actionTypes, actionAmounts, actionNos, actionTypeByNo)
 | 
			
		||||
		elif (lineTypes[i]=="win"):
 | 
			
		||||
			fpdb_simple.parseWinLine (hand[i], site, names, winnings, isTourney)
 | 
			
		||||
		elif (lineTypes[i]=="rake"):
 | 
			
		||||
| 
						 | 
				
			
			@ -113,7 +116,7 @@ def mainParser(db, cursor, site, category, hand):
 | 
			
		|||
	totalWinnings=0
 | 
			
		||||
	for i in range(len(winnings)):
 | 
			
		||||
		totalWinnings+=winnings[i]
 | 
			
		||||
	hudImportData=fpdb_simple.generateHudData(playerIDs, category, actionTypes, actionTypeByNo, winnings, totalWinnings, positions)
 | 
			
		||||
	hudImportData=fpdb_simple.generateHudCacheData(playerIDs, category, actionTypes, actionTypeByNo, winnings, totalWinnings, positions)
 | 
			
		||||
	
 | 
			
		||||
	if isTourney:
 | 
			
		||||
		ranks=[]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -586,7 +586,7 @@ def parseActionAmount(line, atype, site):
 | 
			
		|||
#doesnt return anything, simply changes the passed arrays action_types and
 | 
			
		||||
#	action_amounts. For stud this expects numeric streets (3-7), for
 | 
			
		||||
#	holdem/omaha it expects predeal, preflop, flop, turn or river
 | 
			
		||||
def parseActionLine(site, line, street, playerIDs, names, action_types, action_amounts, actionNos, actionTypeByNo):
 | 
			
		||||
def parseActionLine(site, base, line, street, playerIDs, names, action_types, action_amounts, actionNos, actionTypeByNo):
 | 
			
		||||
	#this only applies to stud
 | 
			
		||||
	if (street<3):
 | 
			
		||||
		text="invalid street ("+str(street)+") for line: "+line
 | 
			
		||||
| 
						 | 
				
			
			@ -1283,7 +1283,7 @@ def store_hands_players_stud_tourney(cursor, hands_id, player_ids, start_cashes,
 | 
			
		|||
	return result
 | 
			
		||||
#end def store_hands_players_stud_tourney
 | 
			
		||||
 | 
			
		||||
def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings, totalWinnings, positions):
 | 
			
		||||
def generateHudCacheData(player_ids, category, action_types, actionTypeByNo, winnings, totalWinnings, positions):
 | 
			
		||||
	"""calculates data for the HUD during import. IMPORTANT: if you change this method make sure to also change the following storage method and table_viewer.prepare_data if necessary"""
 | 
			
		||||
	#setup subarrays of the result dictionary.
 | 
			
		||||
	street0VPI=[]
 | 
			
		||||
| 
						 | 
				
			
			@ -1608,7 +1608,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
	#now CB
 | 
			
		||||
	street1CBChance=[]
 | 
			
		||||
	street1CBDone=[]
 | 
			
		||||
	someoneDidStreet1CB=False
 | 
			
		||||
	didStreet1CB=[]
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myStreet1CBChance=False
 | 
			
		||||
		myStreet1CBDone=False
 | 
			
		||||
| 
						 | 
				
			
			@ -1617,7 +1617,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
			myStreet1CBChance=True
 | 
			
		||||
			if street1Aggr[player]:
 | 
			
		||||
				myStreet1CBDone=True
 | 
			
		||||
				someoneDidStreet1CB=True
 | 
			
		||||
				didStreet1CB.append(player_ids[player])
 | 
			
		||||
				
 | 
			
		||||
		street1CBChance.append(myStreet1CBChance)
 | 
			
		||||
		street1CBDone.append(myStreet1CBDone)
 | 
			
		||||
| 
						 | 
				
			
			@ -1627,7 +1627,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
	#now 2B
 | 
			
		||||
	street2CBChance=[]
 | 
			
		||||
	street2CBDone=[]
 | 
			
		||||
	someoneDidStreet2CB=False
 | 
			
		||||
	didStreet2CB=[]
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myStreet2CBChance=False
 | 
			
		||||
		myStreet2CBDone=False
 | 
			
		||||
| 
						 | 
				
			
			@ -1636,7 +1636,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
			myStreet2CBChance=True
 | 
			
		||||
			if street2Aggr[player]:
 | 
			
		||||
				myStreet2CBDone=True
 | 
			
		||||
				someoneDidStreet2CB=True
 | 
			
		||||
				didStreet2CB.append(player_ids[player])
 | 
			
		||||
 | 
			
		||||
		street2CBChance.append(myStreet2CBChance)
 | 
			
		||||
		street2CBDone.append(myStreet2CBDone)
 | 
			
		||||
| 
						 | 
				
			
			@ -1646,7 +1646,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
	#now 3B
 | 
			
		||||
	street3CBChance=[]
 | 
			
		||||
	street3CBDone=[]
 | 
			
		||||
	someoneDidStreet3CB=False
 | 
			
		||||
	didStreet3CB=[]
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myStreet3CBChance=False
 | 
			
		||||
		myStreet3CBDone=False
 | 
			
		||||
| 
						 | 
				
			
			@ -1655,7 +1655,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
			myStreet3CBChance=True
 | 
			
		||||
			if street3Aggr[player]:
 | 
			
		||||
				myStreet3CBDone=True
 | 
			
		||||
				someoneDidStreet3CB=True
 | 
			
		||||
				didStreet3CB.append(player_ids[player])
 | 
			
		||||
 | 
			
		||||
		street3CBChance.append(myStreet3CBChance)
 | 
			
		||||
		street3CBDone.append(myStreet3CBDone)
 | 
			
		||||
| 
						 | 
				
			
			@ -1665,7 +1665,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
	#and 4B
 | 
			
		||||
	street4CBChance=[]
 | 
			
		||||
	street4CBDone=[]
 | 
			
		||||
	someoneDidStreet4CB=False
 | 
			
		||||
	didStreet4CB=[]
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myStreet4CBChance=False
 | 
			
		||||
		myStreet4CBDone=False
 | 
			
		||||
| 
						 | 
				
			
			@ -1674,7 +1674,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
			myStreet4CBChance=True
 | 
			
		||||
			if street4Aggr[player]:
 | 
			
		||||
				myStreet4CBDone=True
 | 
			
		||||
				someoneDidStreet4CB=True
 | 
			
		||||
				didStreet4CB.append(player_ids[player])
 | 
			
		||||
		
 | 
			
		||||
		street4CBChance.append(myStreet4CBChance)
 | 
			
		||||
		street4CBDone.append(myStreet4CBDone)
 | 
			
		||||
| 
						 | 
				
			
			@ -1696,59 +1696,38 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
	for player in range (len(player_ids)):
 | 
			
		||||
		myFoldToStreet1CBChance=False
 | 
			
		||||
		myFoldToStreet1CBDone=False
 | 
			
		||||
		if someoneDidStreet1CB:
 | 
			
		||||
			if street1CBDone[player]:
 | 
			
		||||
				pass
 | 
			
		||||
			elif street1Seen[player]:
 | 
			
		||||
				myFoldToStreet1CBChance=True
 | 
			
		||||
				if foldToOtherRaisedStreet1[player]:
 | 
			
		||||
					myFoldToStreet1CBDone=True
 | 
			
		||||
		
 | 
			
		||||
		foldToStreet1CBChance.append(myFoldToStreet1CBChance)
 | 
			
		||||
		foldToStreet1CBDone.append(myFoldToStreet1CBDone)
 | 
			
		||||
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myFoldToStreet2CBChance=False
 | 
			
		||||
		myFoldToStreet2CBDone=False
 | 
			
		||||
		if someoneDidStreet2CB:
 | 
			
		||||
			if street2CBDone[player]:
 | 
			
		||||
				pass
 | 
			
		||||
			elif street2Seen[player]:
 | 
			
		||||
				myFoldToStreet2CBChance=True
 | 
			
		||||
				if foldToOtherRaisedStreet2[player]:
 | 
			
		||||
					myFoldToStreet2CBDone=True
 | 
			
		||||
		
 | 
			
		||||
		foldToStreet2CBChance.append(myFoldToStreet2CBChance)
 | 
			
		||||
		foldToStreet2CBDone.append(myFoldToStreet2CBDone)
 | 
			
		||||
		
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myFoldToStreet3CBChance=False
 | 
			
		||||
		myFoldToStreet3CBDone=False
 | 
			
		||||
		if someoneDidStreet3CB:
 | 
			
		||||
			if street3CBDone[player]:
 | 
			
		||||
				pass
 | 
			
		||||
			elif street3Seen[player]:
 | 
			
		||||
				myFoldToStreet3CBChance=True
 | 
			
		||||
				if foldToOtherRaisedStreet3[player]:
 | 
			
		||||
					myFoldToStreet3CBDone=True
 | 
			
		||||
		
 | 
			
		||||
		foldToStreet3CBChance.append(myFoldToStreet3CBChance)
 | 
			
		||||
		foldToStreet3CBDone.append(myFoldToStreet3CBDone)
 | 
			
		||||
		
 | 
			
		||||
	for player in range (len(player_ids)):
 | 
			
		||||
		myFoldToStreet4CBChance=False
 | 
			
		||||
		myFoldToStreet4CBDone=False
 | 
			
		||||
		if someoneDidStreet4CB:
 | 
			
		||||
			if street4CBDone[player]:
 | 
			
		||||
				pass
 | 
			
		||||
			elif street4Seen[player]:
 | 
			
		||||
				myFoldToStreet4CBChance=True
 | 
			
		||||
				if foldToOtherRaisedStreet4[player]:
 | 
			
		||||
					myFoldToStreet4CBDone=True
 | 
			
		||||
		
 | 
			
		||||
		foldToStreet4CBChance.append(myFoldToStreet4CBChance)
 | 
			
		||||
		foldToStreet4CBDone.append(myFoldToStreet4CBDone)
 | 
			
		||||
	
 | 
			
		||||
	print "actionTypeByNo:", actionTypeByNo
 | 
			
		||||
	
 | 
			
		||||
	if len(didStreet1CB)>=1:
 | 
			
		||||
		generateFoldToCB(1, player_ids, didStreet1CB, street1CBDone, foldToStreet1CBChance, foldToStreet1CBDone, actionTypeByNo)
 | 
			
		||||
		
 | 
			
		||||
		if len(didStreet2CB)>=1:
 | 
			
		||||
			generateFoldToCB(2, player_ids, didStreet2CB, street2CBDone, foldToStreet2CBChance, foldToStreet2CBDone, actionTypeByNo)
 | 
			
		||||
 | 
			
		||||
			if len(didStreet3CB)>=1:
 | 
			
		||||
				generateFoldToCB(3, player_ids, didStreet3CB, street3CBDone, foldToStreet3CBChance, foldToStreet3CBDone, actionTypeByNo)
 | 
			
		||||
 | 
			
		||||
				if len(didStreet4CB)>=1:
 | 
			
		||||
					generateFoldToCB(4, player_ids, didStreet4CB, street4CBDone, foldToStreet4CBChance, foldToStreet4CBDone, actionTypeByNo)
 | 
			
		||||
			
 | 
			
		||||
	result['foldToStreet1CBChance']=foldToStreet1CBChance
 | 
			
		||||
	result['foldToStreet1CBDone']=foldToStreet1CBDone
 | 
			
		||||
	result['foldToStreet2CBChance']=foldToStreet2CBChance
 | 
			
		||||
| 
						 | 
				
			
			@ -1803,7 +1782,27 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
 | 
			
		|||
	result['street4CheckCallRaiseChance']=street4CheckCallRaiseChance
 | 
			
		||||
	result['street4CheckCallRaiseDone']=street4CheckCallRaiseDone
 | 
			
		||||
	return result
 | 
			
		||||
#end def calculateHudImport
 | 
			
		||||
#end def generateHudCacheData
 | 
			
		||||
 | 
			
		||||
def generateFoldToCB(street, playerIDs, didStreetCB, streetCBDone, foldToStreetCBChance, foldToStreetCBDone, actionTypeByNo):
 | 
			
		||||
	"""fills the passed foldToStreetCB* arrays appropriately depending on the given street"""
 | 
			
		||||
	print "beginning of generateFoldToCB, street:", street, "len(actionTypeByNo):", len(actionTypeByNo)
 | 
			
		||||
	print "len(actionTypeByNo[street]):",len(actionTypeByNo[street])
 | 
			
		||||
	firstCBReaction=0
 | 
			
		||||
	for action in range(len(actionTypeByNo[street])):
 | 
			
		||||
		if actionTypeByNo[street][action][1]=="bet":
 | 
			
		||||
			for player in didStreetCB:
 | 
			
		||||
				if player==actionTypeByNo[street][action][0] and firstCBReaction==0:
 | 
			
		||||
					firstCBReaction=action+1
 | 
			
		||||
					break
 | 
			
		||||
	
 | 
			
		||||
	for action in actionTypeByNo[street][firstCBReaction:]:
 | 
			
		||||
		for player in range(len(playerIDs)):
 | 
			
		||||
			if playerIDs[player]==action[0]:
 | 
			
		||||
				foldToStreetCBChance[player]=True
 | 
			
		||||
				if action[1]=="fold":
 | 
			
		||||
					foldToStreetCBDone[player]=True
 | 
			
		||||
#end def generateFoldToCB
 | 
			
		||||
 | 
			
		||||
def storeHudCache(cursor, category, gametypeId, playerIds, hudImportData):
 | 
			
		||||
	if (category=="holdem" or category=="omahahi" or category=="omahahilo"):
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user