git11 - documentation improved. tv shows 3B4B number of hands in brackets.

set correct permissions on docs
This commit is contained in:
steffen123 2008-08-05 19:55:50 +01:00
parent 84b3851cb5
commit fb7a8ba9a2
13 changed files with 58 additions and 52 deletions

0
docs/filelist.txt Executable file → Normal file
View File

View File

@ -2,11 +2,8 @@ todolist (db=database, imp=importer, tv=tableviewer)
before alpha before alpha
============ ============
PrintPlayerFlag - the actual flags
verify at least one PrintPlayerFlags verify at least one PrintPlayerFlags
in tv, select from hud table using named fields rather than the current * in tv, select from hud table using named fields rather than the current *
tv: add in brackets number of hands on which 3B4B is based
imp/tv bug: handcount is only about 1/2 of what it should be imp/tv bug: handcount is only about 1/2 of what it should be
add stud functionality back to imp/tv add stud functionality back to imp/tv
db+imp+tv WtSD (went to showdown) db+imp+tv WtSD (went to showdown)

0
docs/readme-dev.txt Executable file → Normal file
View File

38
docs/readme-overview.txt Executable file → Normal file
View File

@ -1,16 +1,23 @@
Summary Summary
======= =======
A database program to track your online poker games, the behaviour of the other players and your winnings/losses. Support Holdem, Omaha, Stud and Razz for cash games as well as SnG and MTT tournaments with more possibly coming in the future A database program to track your online poker games, the behaviour of the other players and your winnings/losses. Supports Holdem, Omaha, Stud and Razz for cash games as well as SnG and MTT tournaments with more possibly coming in the future
Longer summary Contact
============== =======
This program is poker tracking software, a class of utilities that will record and track every little detail of your poker sessions. Want to know how many times player Y has raised before the flop at your current stakes? This program will tell you - allowing you to make much more accurate reads (poker slang for "[educated] guessing your opponents hand") and as a result better decisions. Of course in poker the end result in $ is never guaranteed, but this software will make it much easier for you. mail: steffen(at)sycamoretest.info
The software currently supports importing and processing hand history files for: jabber/xmpp/Google Talk: as above
- Holdem, Omaha (Hi and Hi/Lo), Stud (Hi and Hi/Lo) and Razz (I am not aware of any modern software that supports more than Holdem) ICQ: 7806355
- No Limit, Pot Limit, Fixed Limit and Full Tilt's CapNL and CapPL MSN: steffenjf@gmx.de (don't email that)
- Any stakes
- Cash games, Sit and Gos and Multi Table Tourneys You can also create tickets on our assembla page at todo get link
- All the above from PokerStars, all the above except SnG/Tourney for Full Tilt
But you could send all my hand histories to yourself!
=====================================================
At the end of the day this comes down to a question of trust, but unlike Windows and the poker client software you don't have to trust fpdb blindly. You can:
- Verify the source code yourself.
- Convince or pay someone to verify the source code for you.
- Use a personal firewall to completely block fpdb from the Internet
- (for the uber-paranoid) Get yourself the virtualisation software VirtualBox, set up a VM (virtual machine) to run fpdb but run the poker software on your real PC. Then cut the VM off the Internet, fpdb doesn't need it. If you have a PC made in the last few years this should run fast enough as well. Note that most Windows licenses do NOT permit you to use two Windows installations at once, even if they are on the same PC.
Installing Installing
========== ==========
@ -45,27 +52,26 @@ Why Free Software?
================== ==================
This program is released under the terms of the free/libre software license AGPL3 as released by the FSF. The AGPL3 protects your rights and those of the wider community. As Richard Stallman, one of the founders of the free software movement, put it: "Free software is a matter of liberty, not price. To understand the concept, you should think of free as in free speech, not as in free beer." (well, it is both really, like the right to vote used to be free) This program is released under the terms of the free/libre software license AGPL3 as released by the FSF. The AGPL3 protects your rights and those of the wider community. As Richard Stallman, one of the founders of the free software movement, put it: "Free software is a matter of liberty, not price. To understand the concept, you should think of free as in free speech, not as in free beer." (well, it is both really, like the right to vote used to be free)
For example, a "pirated" copy of proprietary software X is free of charge, but you don't actually have a legal right to use it, you don't have any possibility to fix its bugs and you certainly don't have any legal right to share it with your friends. You also won't be able to get support, often not even security fixes. Actually, even if you pay hundreds of pounds for your program they deny your right to fix their errors for them. Imagine buying a car where you're not permitted (under threat of jail) to replace parts.. For example, a "pirated" copy of proprietary software X is free of charge, but you don't actually have a legal right to use it, you don't have any possibility to fix its bugs and you certainly don't have any legal right to share it with your friends. You also won't be able to get support, often not even security fixes. Actually, even if you pay hundreds of pounds for your program they deny your right to fix their errors for them. Imagine buying a car where you're not permitted (under threat of jail) to replace broken parts..
With free/libre software (also known as open source software, or short FOSS or FLOSS) on the other hand you get all these freedoms: With free/libre software (also known as open source software, or short FOSS or FLOSS) on the other hand you get all these freedoms:
(note: the legally binding terms are in the license text, this is merely an amateur summary so normal people don't have to read pages of silly legalese) (note: the legally binding terms are in the license text, this is merely an amateur summary so normal people don't have to read pages of legalese)
Freedom 0: The freedom to use: To run the program, for any purpose. Freedom 0: The freedom to use: To run the program, for any purpose. Free of Charge.
Freedom 1: The freedom to study and help yourself. This freedom guarantees your right to study and learn from the source code of the program, and to fix it if it is broken. If you're not a programmer yourself the developers will generally be happy to fix it for you. Failing that you can always pay someone from the money you saved on not having to pay for it. Freedom 1: The freedom to study and help yourself. This freedom guarantees your right to study and learn from the source code of the program, and to fix it if it is broken. If you're not a programmer yourself the developers will generally be happy to fix it for you. Failing that you can always pay someone from the money you saved on not having to pay for it.
Freedom 2: The freedom to be a decent human being and help your neighbour: I don't threaten you with criminal charges or jail time if you share with your friends and neighbours, subject to the very modest restrictions of the AGPL3. Freedom 2: The freedom to be a decent human being and help your neighbour: I don't threaten you with criminal charges or jail time if you share with your friends and neighbours, subject to the very modest restrictions of the AGPL3.
Freedom 3: The freedom to improve the program and release your improvements to the public (or parts thereof) so that the whole community benefits. Note that you are PERMITTED, but not REQUIRED to distribute your changes. If you do distribute your changes you must do so under the terms of the AGPL3 however. Freedom 3: The freedom to improve the program and release your improvements to the public (or parts thereof) so that the whole community benefits. Note that you are PERMITTED, but not REQUIRED to distribute your changes. If you do distribute your changes you must do so under the terms of the AGPL3 however.
Note that this is the license - I retain full copyright over my code, including the right to change the license for future versions. I do not intend to do this however. In any case, any version I released under AGPL3 remains available under that license forever, or more accurately until my copyright expires at which point it goes into the public domain. Note that this is the license - I retain full copyright over my code, including the right to change the license for future versions. I do not intend to do this however. In any case, any version I released under AGPL3 remains available under that license forever, or more accurately until my copyright expires at which point it goes into the public domain.
I reject the concept of software patents as a crime and under the European Patent Agreement software patents - even if you mislabel them as "computer-implemented inventions" or whatever - are explicitly prohibited. This view has been uphelp by numerous courts including the highest German appeals courts for patent matters (BGH-Zivilsenat?). I reject the concept of software patents as a crime and under the European Patent Agreement software patents - even if you mislabel them as "computer-implemented inventions" or whatever - are explicitly prohibited.
I therefore do not recognise the validity or applicability of any software patent. I realise that the European Patent Office completely ignores the laws and treaties that govern its operation but that means that EPO management are criminals, not that software patents are valid.
Can I get/use this under a different license? Can I get/use this under a different license?
============================================= =============================================
The short answer: Maybe. The short answer: Maybe.
The long one: As detailed, I fully support what the FSF does and aims to achieve with the GPL. However, I realise that many free software developers don't object to closed source, some don't even object to closed source profiteering of their charity, and I don't think I have any right to go and tell them they're wrong. The long one: As detailed, I fully support what the FSF does and aims to achieve with the GPL. However, I realise that many free software developers don't object to closed source, some don't even object to closed source profiteering of their charity, and I don't think I have any right to go and tell them they're wrong.
So if anyone wishes to use all or part of my code in another open source project with an AGPL3-incompatible license then let me know and we should be able to come to an agreement. So if anyone wishes to use all or part of my code in another open source project with an AGPL3-incompatible license then let me know and we should be able to come to an agreement.
If you wish to use all or part of this in closed source let me know how much that is worth to you :) If you wish to use all or part of this in closed source let me know how much that is worth to you, I support free software but at the end of the day you can't pay rent with code ;)
Disclaimer, License of this Document Disclaimer, License of this Document

0
docs/release-notes.txt Executable file → Normal file
View File

0
docs/requirements.txt Executable file → Normal file
View File

65
docs/status.txt Executable file → Normal file
View File

@ -1,52 +1,52 @@
For all support please note that the tables will almost certainly be changed without keeping backwards compatibility. Therefore you should keep your history files after import so you can re-import if necessary. For all support please note that the tables WILL be changed, almost certainly without keeping backwards compatibility. Therefore you should keep your history files after import so you can re-import when necessary. Should you lose history files and need a "database updater" let me know.
If support for another site/game would encourage you to help with this software please let me know at steffen@sycamoretest.info. If support for another site/game would encourage you to help with this software please let me know at steffen@sycamoretest.info.
Note for git100 until further notice (not long though): deactivated all import of stud/razz pending update of that code for the new caching tables. 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.
Database Holdem/Omaha ring games on PokerStars
======== ======================================
Holdem, Omaha Hi/HiLo, Razz and Stud Hi/HiLo in NL/PL/FL are supported for ring games and tourneys. Actual storage tables are nearly final. Support/cache tables for improved viewer speed are in heavy flux. Works, quite well tested, works in table viewer and is useful now. Functionality is quite limited so far though. This includes the holdem/omaha parts of HORSE, HOSE and any other mixed game
Importer (imp) Stud/Razz ring games on PokerStars
============== ==================================
Ringgames on FTP and PS: Broken - used to work, hardly tested. Needs to be updated to new infrastructure using a HudData table rather than hands_players_flags. Will fix this shortly.
Holdem, Omaha Hi/HiLo, Razz and Stud Hi/HiLo in NL/PL/FL/CapNL/CapPL: beta
This should be pretty much done, I imported 30k hands.
Bug reports welcome, please send the hand that caused the error.
Tourney support: on PS alpha, on FTP incomplete, see svn comments. A note on No Limit and Pot Limit
================================
Fpdb fully supports NL/PL, however currently only as far as it does limit games. So it'll tell you how often a player has bet, but not how much. But the mate I'm writing this for doesnt play NL/PL (and neither do I) so volunteers would be most welcome.
Mixed Games (e.g. HORSE): alpha Tournaments/SnGs
GUI for importer
================ ================
alpha Broken - used to work, hardly tested. Needs to be updated to new infrastructure.. Not sure when I'll fix this, volunteers welcome :)
Most functionality still missing, but thats a backend problem not really a GUI thing. Independent of the current broken state at the moment tourney support would only show information as if a tourney is a ring game - but it's not. If you play tournaments and would like to help improving this let me know, I probably won't bother.
CLI/automated testing interface Full Tilt Poker
=============================== ===============
Simple DB Statistics Script -> migrate to GUI Not sure - it should import them, but I believe the table viewer won't work. Should only take minutes to fix this so I'll probably do it soon.
Simple player stats report script -> migrate to GUI
Hand printout script -> badly needs updating
Simple regression testing script done. Need to updating existing data and create (much) more.
Table Viewer (tv) Other Sites
================= ===========
pre-alpha Patches/Volunteers welcome.
Currently the importer fills a flags table, and tv selects an id field from that and does some things to create the data. Thinking of instead or additionally creating a count table that imp would also directly access. Imp would increment the values for each player that tv currently has to select for - implementing this now, as of git100.
I know tv is rather low on functionality so far, but as soon as I've finished the above update adding more will be easy and quick. GUI
===
Alpha - the infrastructure stands and is fast enough, now "just" need to add more functionality.
HUD HUD
=== ===
? Not started - volunteers welcome. I found a *nix utility based on xlib that does half the work for this (most of the other half is already in the table viewer), see http://www.roard.com/docs/cookbook/cbsu19.html. There's also a python implementation of xlib which should run even on Windows.
Packaging Packaging
========= =========
Gentoo GNU/Linux: I'll make ebuilds, if you want one now let me know. Gentoo GNU/Linux: I'll make ebuilds, if you want one now let me know.
Other free/libre systems (e.g. other GNU/Linux-Distros, *BSD): Let me know what you use (OS/Distribution+version, arch) and I'll make a package. Other free/libre systems (e.g. other GNU/Linux-Distros, *BSD, and I'd love to help in getting this to work on any Hurd based system): Let me know what you use (Distribution, version and CPU type) and I'll make a package.
Windows/MacOSX: Manual installation of dependencies for now, integrated installer would be nice - volunteers welcome, but I'll do it eventually in any case. Windows/MacOSX: Manual installation of dependencies for now, integrated installer would be nice - volunteers welcome, but I'll do it eventually in any case.
Regression Testing
==================
The query scripts are done-ish, need to verify more data so it can be used in automated regression testing.
Legal 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. 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.
@ -54,9 +54,12 @@ PS: I have asked them and they said that due to the fast changing nature
of pre-release software they don't review that. However, looking at their of pre-release software they don't review that. However, looking at their
posted guidelines we're fine posted guidelines we're fine
FTP: I sent them an email and what I described there was ok for them. FTP: I sent them an email and what I described there was ok for them.
I will write them again for "certification" on release of 1.0
To avoid any misunderstandings, PS and FTP obviously do not sponsor, endorse, or support fpdb. They allow using it, that's all. Any problems with fpdb should be reported to us, not the poker site.
A note on viewing/tracking mucked hands. Many people will say this is cheating. I agree. However, I don't make the rules on these sites. The sites that store mucked hands into the history file clearly think that being able to see other people's mucked hands is ok. This software - like HM and PT - merely takes info provided by the poker site and makes it more easily accessible. A note on viewing/tracking mucked hands. Many people will say this is cheating. I agree. However, I don't make the rules on these sites. The sites that store mucked hands into the history file clearly think that being able to see other people's mucked hands is ok. This software - like HM and PT - merely takes info provided by the poker site and makes it more easily accessible.
Apparently PS has now turned this off. Apparently PS has now turned this off :)
License License
======= =======

View File

@ -1303,7 +1303,7 @@ def calculateHudImport(player_ids, category, action_types):
#add each value to the appropriate array #add each value to the appropriate array
VPIP.append(myVPIP) VPIP.append(myVPIP)
PFR.append(myPFR) PFR.append(myPFR)
PF3B4BChance.append(PF3B4BChance) PF3B4BChance.append(myPF3B4BChance)
PF3B4B.append(myPF3B4B) PF3B4B.append(myPF3B4B)
sawFlop.append(mySawFlop) sawFlop.append(mySawFlop)
sawTurn.append(mySawTurn) sawTurn.append(mySawTurn)

View File

@ -77,7 +77,7 @@ class table_viewer (threading.Thread):
tmp.append(str(row[4]))#Hands tmp.append(str(row[4]))#Hands
tmp.append(self.hudDivide(row[5],row[4])) #VPIP tmp.append(self.hudDivide(row[5],row[4])) #VPIP
tmp.append(self.hudDivide(row[6],row[4])) #PFR tmp.append(self.hudDivide(row[6],row[4])) #PFR
tmp.append(self.hudDivide(row[8],row[7])) #PF3B4B tmp.append(self.hudDivide(row[8],row[7])+" ("+str(row[7])+")") #PF3B4B
tmp.append(self.hudDivide(row[13],row[9])+" ("+str(row[9])+")") #AF tmp.append(self.hudDivide(row[13],row[9])+" ("+str(row[9])+")") #AF
tmp.append(self.hudDivide(row[17],row[16])+" ("+str(row[16])+")") #FF tmp.append(self.hudDivide(row[17],row[16])+" ("+str(row[16])+")") #FF
tmp.append(self.hudDivide(row[14],row[10])+" ("+str(row[10])+")") #AT tmp.append(self.hudDivide(row[14],row[10])+" ("+str(row[10])+")") #AT