Commit Graph

258 Commits

Author SHA1 Message Date
barelyprofessional
7b1e33da78 Minor update to Discord presence so it'll give the generic presence info if there's no platform presence data 2026-03-04 21:18:43 -06:00
barelyprofessional
28881143be Ignore Bossman stream if a capture is already running due to Twitch GraphQL being trash 2026-03-01 14:32:42 -06:00
barelyprofessional
82a69f48dd Null warnings 2026-02-28 15:35:59 -06:00
barelyprofessional
c8016b4fc6 Update for new chyat 2026-02-28 15:34:36 -06:00
barelyprofessional
8a827a17de Handle presence updates that don't contain a username 2026-02-27 00:35:03 -06:00
barelyprofessional
81a6f0fdd5 Total Cloudflare Death 2026-02-21 00:08:47 -06:00
barelyprofessional
4962472312 Flaresolverr is dogshit. Going to try real and raw 2026-02-21 00:01:20 -06:00
barelyprofessional
6967a81d73 Use RandN properly and get rid of the iterations thingy for next double 2026-02-19 20:55:55 -06:00
barelyprofessional
f1ab9cfcdd Add auto delete to VIP message 2026-02-19 20:27:07 -06:00
barelyprofessional
60f74894ca Broke meta 2026-02-19 19:30:05 -06:00
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