Commit Graph

248 Commits

Author SHA1 Message Date
barelyprofessional
2c7e2adf48 Whycome this was Newtonsoft? 2026-02-19 19:14:50 -06:00
barelyprofessional
f1afce7fab Removed unused fields and imports 2026-02-17 22:04:27 -06:00
barelyprofessional
0dcbb25fe3 Migrated moods and prompts to the settings.
Removed the weird concurrent dictionary and replaced with Redis.
Removed the cleanup watchdog in favor of Redis expiration
2026-02-17 22:02:09 -06:00
xXCryingLaughingXx
30d9f48d2e Nora (#87) 2026-02-18 03:24:30 +01:00
alogindtractor
1ce3f0e8e5 Update KasinoMines.cs (#84) 2026-02-13 06:57:25 +01:00
alogindtractor
b43ce3f95c Update KasinoMines.cs (#83)
maybe fix explode animation
2026-02-13 06:51:54 +01:00
barelyprofessional
75630e4053 Reduce VIP log spam 2026-02-11 22:35:08 -06:00
alogindtractor
259d5c339b fix payouts (#82)
games were slightly overpaying by including the original wager in the payout
2026-02-12 04:59:06 +01:00
alogindtractor
c4995f55f2 Update KasinoMines.cs (#80)
fix payouts
2026-02-11 05:16:26 +01:00
alogindtractor
d71dd304fd update mines (#77)
* Update MinesCommand.cs

better cashout handling?
also limit mines to 8

* Update KasinoMines.cs

update cashout to have a delay before removing board message and add auto delete

* update cashout calculation

update cashout calculation
fair payout but house edge based chance for rigging
2026-02-10 15:40:43 +01:00
alogindtractor
21c8803eb9 fix board size, some fixes to auto cashout from cursor (#75)
* cursor fixes

cursor fixes

* Improve cashout condition validation

Refactor cashout condition to check for success and non-empty value.

* cursor

cursor

* Update BotServices.cs

* Update board size limit from 10 to 9

Update board size limit from 10 to 9
81 characters instead of 100
12 bytes per character per powershell, 
down from 1200 bytes to 972

* Implement message deletion for active games

Added logic to delete messages associated with active games.
2026-02-09 16:00:45 +01:00
alogindtractor
b6df015277 cursor fixes (#74)
cursor fixes
2026-02-09 07:05:39 +01:00
alogindtractor
e1b5970e8b char[,] to char[][] (#73)
* Refactor KasinoMines into MinesCommand class

char[,] to char[][]

* Refactor KasinoMines class and update game logic

char[,] to char[][]
2026-02-09 06:45:40 +01:00
alogindtractor
9643126cf8 updates message stuff (#72)
* Implement admin-only clear command for saved games

Added 'clear' command for admin to reset saved games.

* Refactor LastMessage handling in KasinoMines

Refactor LastMessage handling in KasinoMines
2026-02-09 06:26:34 +01:00
barelyprofessional
a272e155bd Ignore null 2026-02-08 22:34:15 -06:00
alogindtractor
20a267c702 fix last message id to check for null first for message reset (#71)
* Add JsonSerializerOptions for serialization and deserialization

Add JsonSerializerOptions for serialization and deserialization
apparently it has problems with lists with groups like my list<(int r, int c)> so needs options

* Fix null check for LastMessage.ChatMessageId

Fix null check for LastMessage.ChatMessageId
2026-02-09 05:33:34 +01:00
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
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
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
2fb8f0bb89 Removed the weird 3 millisecond delays and added a wait for message 2026-02-07 20:37:41 -06: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
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
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
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
bf9d3268cd Use exclusive random for the mines board 2026-02-05 23:39:35 -06:00
barelyprofessional
57e1b9c3b9 WIP rehost stuff 2026-02-05 23:26:46 -06: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
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
alogindtractor
2bb56c2388 Mines (#60)
* Add MinesCommand

Add MinesCommand
parses user input and submits it to mines service

* Add KasinoMines service to bot services

Add KasinoMines service to bot services

* kasinomines service code

kasinomines service code
holds all the game information so that games can be ongoing, you can leave your game and come back to it later,

* Update MinesCommand.cs

* Update KasinoMines.cs

* Update MinesCommand.cs

* add house edge to limbo

add house edge to limbo

* add house edge to keno

add house edge to keno

* Update BotServices.cs

forgot to add kasino mines item

* Update BuiltIn.cs

add kasinomines cleanup delay setting

* Update KenoCommand.cs

add difficulty options to keno, classic low medium high default high

* Update PlanesCommand.cs

adds house edge to planes
if your buffs cause house edge to be greater than 1, you have a HOUSE_EDGE - 1.0 % chance to get a guaranteed win,
if house edge is less than 1, 1-HOUSE EDGE chance for a guaranteed loss

* Update PlanesCommand.cs

missed a counter update

* Update PlinkoCommand.cs

plinko house edge update
changes vacuum strength based on house edge
2026-02-02 04:48:17 +01:00
barelyprofessional
de859e8fad Added missing state clear after the nobody participated message 2026-01-29 22:10:22 -06:00
barelyprofessional
65b7b19b8a Experimental convoluted rain refactor to use Redis instead of semaphores 2026-01-28 00:40:01 -06:00
barelyprofessional
b95c27d928 NEVER TRUST AN LLM FAGGOT ALWAYS VERIFY THEIR SHITTY JEET CODING BOT DIDN'T HALLUCINATE THE WRONG FUCKING HEADER NAME NOW I'VE GOT THOUSANDS OF WORTHLESS WEBPS TO CLEANUP 2026-01-15 23:35:05 -06:00