git34 - reading CB/2B/3B now. Some doc updates

This commit is contained in:
steffen123 2008-08-13 08:11:20 +01:00
parent 61d0857a4c
commit e56a65b4c9
6 changed files with 39 additions and 23 deletions

View File

@ -1,9 +1,8 @@
todolist (db=database, imp=importer, tv=tableviewer)
Everything is subject to change.
Everything is subject to change and especially the order will often change. Patches for any of these or other features are very welcome, see readme-overview.txt for contacts.
alpha2
alpha2 (release by 17Aug)
======
CB, 2nd/3rd Barrel, fold to these -> actually calculate them
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
auto-import
seperate and improve instructions for update
@ -15,18 +14,21 @@ finish updating filelist
return sng support
update abbreviations.txt
fix up bg colours in tv
ebuild symlink doesnt work
more automation in the ebuild, update install-in-gentoo.txt, set permissions in it
gentoo ebuild: USE dedicated, USE postgresql, copy docs
ebuild: symlink doesnt work, USE gtk, more automation, update install-in-gentoo.txt, set permissions in it, copy docs to correct place, use games eclass or whatever to get games group notice, print notice about install-in-gentoo.txt and mysql --config
alpha3
======
anonymiser script to generate testdata without making a dozen find&replace all... remember to replace hand no by running no
check-raise/call-raise on all streets
anonymiser script to generate testdata without making a dozen find&replace all... remember to replace hand no with running no
table with data for graphs for SD/F, W$wSF, W$@SD
SD/F, W$wsF, W$@SD too low as reported by daedal in 2+2 forum on 12/13aug
show database version error in GUI
show database version error in GUI and use fpdb_db class const for it, add it to title
split hud data generation into separate for loops and make it more efficient
fix bug that sawFlop/Turn/River gets miscalculated if someone is allin - might as well add all-in recognition for this
before beta
===========
gentoo ebuild: USE postgresql
optionally combine FB/FS and CB/2B/3B
separate all gui and all processing into files that are named accordingly
ensure that there is only one db handle flying around and that its state is handled properly, ie. by the GUI. i think that might be why we have to reconnect the DB in tableviewer.
@ -35,7 +37,6 @@ why do we have to reconnect in tv.read_names_clicked?
implement error file in importer
catch index error, type error, file not found error
use different colours according to classification.
table with data for graphs for SD/F, W$wSF, W$@SD
add stud, razz and tourney back to imp/tv but with less seperate codepathes
move prepare-git.sh and create-release.sh to utils
@ -65,9 +66,9 @@ verify at least 2 or 3 sng hands
no rush but before 1.0RC
========================
recognise&handle all-in for CB etc. (mostly useful for NL/PL, in limit I would argue missing a chance due to lack of money is the same as missing it due to sneezing and clicking the wrong button)
In many places there are unnecessary database accesses or it regenerates information it already had before or just generally does things in obscenely inefficient ways. Optimise this
multi-select in bulk importer
move version into seperate file
make option to use "traditional" labels, e.g. WtSD instead of SD/F
HTMLify docs and validate them
cut down action_types array size to appropriate length
@ -99,7 +100,7 @@ Probably PartyPoker for all or most supported games
repair hands where the seat lines are missing, happens when observing at FTP
flags for storing the reason for winning (best hi, tie for best low, etc.) to DB. not sure actually if this is such a good idea remember that there can be multiple reasons for the same player in the same hand
windows integrated installer
benchmark properly on mysql innodb, mysql myisam, postgresql, sqlite, more?
benchmark properly on mysql innodb, postgresql, more?
rename things like this: ClassName.methodName and variableName. do this on tables too. update codingstyle
CLI (not ncurses, proper CLI) equivalent for fpdb.py
optimise/simplify storing by creating the SQL statements depending on hand rather than calling different methods

View File

@ -2,7 +2,7 @@ For all support please note that the tables WILL be changed, almost certainly wi
If support for another site/game would encourage you to help with this software please let me know at steffen@sycamoretest.info.
IMPORTANT: git10 and below contain at least one significant bug that cause wrong data to be displayed. I wrote a new query script for testing so I can track this down.
IMPORTANT: There appears to be a bug in at least up to git34 in reading WtSD/W$wsF/W$SD
Holdem/Omaha ring games on PokerStars
======================================
@ -18,7 +18,7 @@ Broken - used to work, hardly tested. Needs to be updated to new infrastructure.
Full Tilt Poker
===============
Not sure - it should import them, but I believe the table viewer won't work. Would be easy to fix I think, volunteers welcome. This used to work in a pre-alpha but basically was left behind during updates to the other stuff.
Might work - used to work and was very well test. It should import them (except HudData), but I believe the table viewer won't work. Would be easy to fix I think, volunteers welcome. This used to work in a pre-alpha but basically was left behind during updates to the other stuff.
Other Sites
===========
@ -42,6 +42,12 @@ Regression Testing
==================
The query scripts are done-ish, need to verify more data so it can be used in automated regression testing.
Database Backends
=================
- MySQL InnoDB is the default
- PostgreSQL should work but I haven't tried it. If it doesn't please let me know.
- MySQL ISAM won't be supported since it is not transactional
Legal
=====
General: This will offer more or less the same kind of functionality as HM and PT so there shouldn't be any problem on any site that allows tracking.

View File

@ -14,7 +14,7 @@ SRC_URI="mirror://sourceforge/fpdb/fpdb-alpha1-git27.tar.bz2"
LICENSE="AGPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
#note: I would be very surprised if this doesnt work on other architectures, please send me your experiences
#note: this should work on other architectures too, please send me your experiences
IUSE=""
RDEPEND="virtual/mysql

View File

@ -347,7 +347,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: alpha1+, git33")
self.window.set_title("Free Poker DB - version: alpha1+, git34")
self.window.set_border_width(1)
self.window.set_size_request(950,400)
self.window.set_resizable(True)

View File

@ -289,7 +289,7 @@ class fpdb_db:
thirdBarrelChance INT,
thirdBarrelDone INT)""")
self.cursor.execute("INSERT INTO settings VALUES (33);")
self.cursor.execute("INSERT INTO settings VALUES (34);")
self.cursor.execute("INSERT INTO sites VALUES (DEFAULT, \"Full Tilt Poker\", 'USD');")
self.cursor.execute("INSERT INTO sites VALUES (DEFAULT, \"PokerStars\", 'USD');")
self.db.commit()

View File

@ -1495,7 +1495,7 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
if someoneStole and (positions[player]=='B' or positions[player]=='S') and firstPfRaiserId!=player_ids[player]:
street=0
for count in range (len(action_types[street][player])):#finally individual actions
for count in range (len(action_types[street][player])):#individual actions
if positions[player]=='B':
myFoldBbToStealChance=True
if action_types[street][player][count]=="fold":
@ -1522,11 +1522,14 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
myContBetChance=False
myContBetDone=False
#calc CB
if PFR[player]:
myContBetChance=True
if raisedFlop[player]:
myContBetDone=True
contBetChance.append(myContBetChance)
contBetDone.append(myContBetDone)
result['contBetChance']=contBetDone
result['contBetChance']=contBetChance
result['contBetDone']=contBetDone
#now 2B
@ -1536,11 +1539,14 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
mySecondBarrelChance=False
mySecondBarrelDone=False
#calc 2b
if contBetDone[player]:
mySecondBarrelChance=True
if raisedTurn[player]:
mySecondBarrelDone=True
secondBarrelChance.append(mySecondBarrelChance)
secondBarrelDone.append(mySecondBarrelDone)
result['secondBarrelChance']=secondBarrelDone
result['secondBarrelChance']=secondBarrelChance
result['secondBarrelDone']=secondBarrelDone
#now 3B
@ -1550,11 +1556,14 @@ def generateHudData(player_ids, category, action_types, actionTypeByNo, winnings
myThirdBarrelChance=False
myThirdBarrelDone=False
#calc 3b
if secondBarrelDone[player]:
myThirdBarrelChance=True
if raisedRiver[player]:
myThirdBarrelDone=True
thirdBarrelChance.append(myThirdBarrelChance)
thirdBarrelDone.append(myThirdBarrelDone)
result['thirdBarrelChance']=thirdBarrelDone
result['thirdBarrelChance']=thirdBarrelChance
result['thirdBarrelDone']=thirdBarrelDone
return result