Commit Graph

827 Commits

Author SHA1 Message Date
alogindtractor 3385722455 Add JsonSerializerOptions for serialization and deserialization (#70)
Add JsonSerializerOptions for serialization and deserialization
apparently it has problems with lists with groups like my list<(int r, int c)> so needs options
2026-02-09 04:48:00 +01:00
barelyprofessional e96620381f Move the responsibility for updating cookies and reconnecting to RefreshXfToken so it's always handled properly 2026-02-08 20:50:13 -06:00
barelyprofessional 4c8cbc1748 Actually save cookies 2026-02-08 20:40:39 -06:00
barelyprofessional 1e44dbe6c1 Parse it from Set-Cookie because honestly fuck it 2026-02-08 20:35:44 -06:00
barelyprofessional d2cc3f04ad Cookie container is fucking trash 2026-02-08 20:31:42 -06:00
barelyprofessional 9334cac344 Losing my mind this is fucking ridiculous 2026-02-08 20:28:53 -06:00
barelyprofessional d8a8b7341a Why am I not getting the fucking cookie 2026-02-08 20:27:11 -06:00
barelyprofessional 24e864f8f5 WaitAsync didn't like TimeSpan.MaxValue 2026-02-08 20:21:12 -06:00
barelyprofessional 2d255198ea Forgot to move null for TTRS 2026-02-08 20:19:52 -06:00
barelyprofessional d0cabbf759 203 check for disconnect 2026-02-08 20:15:35 -06:00
barelyprofessional e7c309582a Send all cookies to the websocket connection as the clearance token is now needed 2026-02-08 20:12:41 -06:00
barelyprofessional cdd309fa24 Suppress nullable warnings, re-implement the missing wait for message, extend the delay a little to make sure shit doesn't go out of order and update the ResetMessage message null check given A Log changed the type for whatever reason 2026-02-08 19:11:35 -06:00
alogindtractor d5f04b5228 some sloppa fixes (#69)
* update

update

* service

service

* Optimize message retrieval in MinesCommand

Refactor message handling in MinesCommand to use last message directly.

* Replace LastMessageId with LastMessage object
2026-02-09 02:06:15 +01:00
barelyprofessional 1901507c25 Added a minimum wager requirement to all games 2026-02-08 12:02:24 -06:00
barelyprofessional 2fb8f0bb89 Removed the weird 3 millisecond delays and added a wait for message 2026-02-07 20:37:41 -06:00
alogindtractor 670336145d mines update (#68)
* mines update

mines update

* Refactor betting logic to use valid coordinates

Refactor betting logic to use valid coordinates

* Refactor bet coordinate selection logic

Refactor random bet coordinate selection to improve clarity and prevent duplicate entries.

* update tostring

update tostring

* Refactor Bet method and update gem handling

Refactor Bet method to include an additional parameter for tracking calls. Update logic for handling gem counts and cash-out conditions.

* update regex

update regex
2026-02-08 03:33:58 +01:00
alogindtractor 6a47d0d25e mines update (#67)
* mines update

mines update

* Refactor betting logic to use valid coordinates

Refactor betting logic to use valid coordinates

* Refactor bet coordinate selection logic

Refactor random bet coordinate selection to improve clarity and prevent duplicate entries.

* update tostring

update tostring

* Refactor Bet method and update gem handling

Refactor Bet method to include an additional parameter for tracking calls. Update logic for handling gem counts and cash-out conditions.
2026-02-07 23:10:19 +01:00
barelyprofessional eccbe44acd Merging changes from #66
Closes PR #66
2026-02-07 11:33:09 -06:00
barelyprofessional 8246b75868 Use gambler ID in Redis key to avoid the possibility of concurrent games messing with the state 2026-02-07 11:27:03 -06:00
barelyprofessional 54d989f64f Wager limit while mines is fucked 2026-02-07 00:21:08 -06:00
barelyprofessional 6c6ed8d09e Check if LastMessageId is its default value or not before attempting to delete 2026-02-07 00:11:41 -06:00
barelyprofessional 0c61206e08 Added missing awaits for mines wins 2026-02-07 00:03:06 -06:00
barelyprofessional 15f68ee99b Add log message for reset 2026-02-06 23:59:45 -06:00
alogindtractor 3ec623f6a4 fix display, unfuck riggery (#65)
fix display, unfuck riggery
2026-02-07 06:53:25 +01:00
barelyprofessional 0272d79ee1 Massively reduce the rate limiting for mines 2026-02-06 23:48:23 -06:00
barelyprofessional 503d0de41b Wager limit for roulette 2026-02-06 23:43:02 -06:00
barelyprofessional dd469c36b3 Usability shit for roulette 2026-02-06 23:40:57 -06:00
alogindtractor daba3012a4 fix for slot issue (#64)
* fix chat message ID handling and index out of bounds error

fix chat message ID handling and index out of bounds error

* fix feature incorrectly showing for some reason

idk why this started happening hopefully this fixes it, actual features might still be broken though

* actual fix for slot display issue

actual fix for slot display issue
after adding rigging i was passing in the rig parameter as the current type of feature
2026-02-07 06:34:30 +01:00
barelyprofessional 57e1f7eb04 Break on rate limit instead of continue so it doesn't spam multiple rate limit messages if multiple regexes match 2026-02-06 23:30:07 -06:00
barelyprofessional 7179cf72ce Suppress nullable warnings 2026-02-06 23:12:31 -06:00
barelyprofessional a64d4456ab Discard return value for explode so it stops crying 2026-02-06 23:12:00 -06:00
barelyprofessional 4072709ec6 Added missing awaits to Mines 2026-02-06 23:09:38 -06:00
barelyprofessional 12d184ebac Update query for oldest entry in IsRateLimited to First as this seems to make more sense when it's using an ascending order? The behavior isn't right regardless right now 2026-02-06 23:07:02 -06:00
alogindtractor d726b4f638 fix chat message ID handling and index out of bounds error (#63)
* fix chat message ID handling and index out of bounds error

fix chat message ID handling and index out of bounds error

* fix feature incorrectly showing for some reason

idk why this started happening hopefully this fixes it, actual features might still be broken though
2026-02-06 09:59:54 -06:00
barelyprofessional 1890e3606b Another wait for message... 2026-02-05 23:46:29 -06:00
barelyprofessional 28cc6a2651 Added wait for message to be received 2026-02-05 23:43:24 -06:00
barelyprofessional bf9d3268cd Use exclusive random for the mines board 2026-02-05 23:39:35 -06:00
barelyprofessional 696339f359 Include the trailing space for cashout in the optional match for cashout 2026-02-05 23:34:57 -06:00
barelyprofessional 57e1b9c3b9 WIP rehost stuff 2026-02-05 23:26:46 -06:00
alogindtractor 477c121f72 Refactor MinesCommand regex patterns and messages (#62) 2026-02-06 06:26:11 +01:00
barelyprofessional 42804c90e4 Experimental ttrs support 2026-02-05 23:04:43 -06:00
barelyprofessional 32ae015c3b Reduce the absurd 100 second default timeout to 10 seconds for KiwiFlare 2026-02-05 20:52:56 -06:00
barelyprofessional 80d4f81610 Fixed compiler warnings 2026-02-05 20:42:40 -06:00
barelyprofessional b579789860 Added whoami/addy command 2026-02-05 20:25:35 -06:00
barelyprofessional 1996b2b638 Refactored naming for Kasino Mines and decoupled it from BotServices as it has no long lived tasks or whatever 2026-02-05 20:19:34 -06:00
barelyprofessional 21f2019366 Moved RouletteCommand.cs to the parent Kasino folder 2026-02-05 19:28:56 -06:00
alogindtractor 4dba9b4133 Implement minimum wager requirement for slots (#61)
* Implement minimum wager requirement for slots

Added minimum wager validation for slots command.

* Implement house edge and rigged outcomes in SlotsCommand

adds house edge to slots
if your house edge is greater than 1, HOUSE_EDGE - 100% chance for guaranteed max win chance (spawns all the symbols in the right place, does not guarantee top tier multi)

if house edge is less than 1, 100% - HOUSE_EDGE chance for guaranteed loss
2026-02-06 02:23:52 +01:00
barelyprofessional 6ba82ff213 Added support for !kasino open/close 2026-02-03 16:22:24 -06:00
barelyprofessional cac30a24a2 Fixed broken settings descriptions 2026-02-01 22:54:24 -06:00
barelyprofessional 18b19ffcef Refactored Roulette to use Redis instead of locks and probably made it even buggier 2026-02-01 22:52:58 -06:00