notcoffee418 / multitablepro Goto Github PK
View Code? Open in Web Editor NEWAdvanced mass multi-tabling software
License: Creative Commons Zero v1.0 Universal
Advanced mass multi-tabling software
License: Creative Commons Zero v1.0 Universal
Currently it moves everything to inactive when first starting. This is not optimal if the WindowHandler starts during a session.
Have user choose what to do? (leave everything until we get more info or move to inactive)
Hopefully there's a better way
Log files would be removed. Currently the program would just die with no info.
Leave it for when we can manually start/stop everything
Also remove the fatal crash when no logs are found by the same mechanism.
Better name would be neat
and vice versa
Weird things happen
it shouldn't
Create a config setting for the 200ms pause on table move.
The flicker seems to be gone by simply resizing offscreen with the new movement system.
allow config in case of singletabling or user really wants to change their config regardless.
But add a messagebox to confirm config should run if slots contain tables.
If slots contain virtual tables, do not allowthem to click the button as config is already running.
Adding and removing tables in a certain order causes them to not set their slot priority correctly somehow
This allows width/height to be exactly the same as often as possible, removing the need to move offscreen.
Though, move the X and Y slightly to make it clear to user that they did in fact create a new slot
Closing B-Win table doesn't remove the table from the table list
something to do with the cloning i assume
If user kills the window, PS crashes or something else weird happens, the app shouldn't crash
When spawning a new slotconfigwindow with the ADD TABLE button, the width/height and used as properties are changed.
tie a specific hand to a specific slot when possible so user can keep better track of what's what.
And remove the else CanStack = false; in ActivityUse property
Even after restart (wat?)
The slots do exist & load fine in the setup afterwards though.
Tested on clone of new profile
Also renaming them.
UI should display underscore as space in filename
Compress any log files older than today
Multiple threads can access the Log function at the same time.
Use a static constructor to assign a new thread decicated to writing to logger file & use a queue to submit new messages.
Sitout everywhere
Sitout on table vpip < x
These should all send POST requests to their corresponding API url:
Response is in json array. Just call it, call json deserialize and roll use the output.
All responses look like this:
array(
'result' => array(),
'errors' => array(),
);
check if response contains errors before anything else (errors exists at all rather)
errors: array("error strings", "other error")
call Logger.Log() to display errors to user, or show em in the window
All relevant return data is contained in the "result" variable
/api/validate_license
Post params:
macaddr - mac address string
license_key - (should be 'TRIAL' for trial check, all caps)
request_product_group - should be 1 for MTP
Return
is_active - int (0 or 1) (basically true or false but DB outputs tinyint)
expires_at - time string (DateTime.Parse())
^ Only these return on trial check
for non trial it also adds:
'product_name' => $r->product_name,
'product_description' => $r->product_description,
'first_name' => $r->first_name,
'last_name' => $r->last_name,
'email' => $r->email,
'restrictions' => $restrictions, // described below
'license_status_message' => 'Active license',
restrictions - array ( - not all keys may exist, so check if they do first - they all return as string (probably)
UNLIMITED_COMPUTERS - bool
MAX_STAKE - int of max buyin (Table.BigBlind x 100)
BUILD_TYPE - enum("RELEASE", "INTERNAL", "BETA") (so string basically) - indicates optional access to non-release builds
)
obvious reasons
Slot 1 has 2 tables
Slot 2 has 0 tables (since table moved to active
Slot 1 should move the newest table to Slot2
Button that can be pressed to auto generate a profile best fit for the user's setup.
Request which screens to use
Request whic screen should contain active slots
Request amount of tables
Ask if there should be an aside table (not possible on small screens
Multiscreen:
Medium screen:
1 active
1 (optional aside)
2-4 inactives (look into that)
Small screen:
Either it shouldn't be possble during session
Or the active profile should be renamed to (DELETED) with a propertychanged event on the naem
Top menu
File
Statusbar
[ ] Running/notrunning
[ ] Version (New Version Available) (link if there is
in TryMoveTable near Slot.ActivityUses? activity = null.
Some people might prefer to have empty action slots when no action is required
Test whether or not these timestamps are formatted the same in different locations.
Likely not a problem but GL finding the problem when someone reports that the program does literally nothing.
See if there's a log message when rightclicking a player.
All tables should be forced to go back into position every 100-1000ms in case the user moves or resizes them.
Force all tables to be relocated
If people export their config & share it, they share their key too.
Seems to just select default. Is it not saving (unless another setting is changed also)? look into that
My Broken 970
bwin: has heavy delay on- (barely playable
PokerStars: table movement delay of 100-200 is fine:
Mathias:
OP beeldkaart (2080?)
PokerStars: ??
Bwin: 50 should be more than enough based on video footage
Also plz test other beeldkaart if you get chance
If multiple slots are available, don't use a table's preferred slot
Ensure previously configured slots are still valid on startup.
If not, request that user runs the config again & cancel startup.
This can occur if user changed a screen's position or removed a screen.
Slot.IsNewLocationValid() and/or TryInitialize needs to be modified
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.