Commit Graph

187 Commits

Author SHA1 Message Date
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
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
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
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
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
696339f359 Include the trailing space for cashout in the optional match for cashout 2026-02-05 23:34:57 -06:00
alogindtractor
477c121f72 Refactor MinesCommand regex patterns and messages (#62) 2026-02-06 06:26:11 +01: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
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
18b19ffcef Refactored Roulette to use Redis instead of locks and probably made it even buggier 2026-02-01 22:52:58 -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
CrackmaticSoftware
ca2e2c7874 Live Roulette v1 (#59)
* Enabling/disabling gamba games with dynamic settting lookup.

* Its roulette baby
2026-01-29 12:20:57 -06:00
barelyprofessional
6209a76e94 Check if a rain exists 2026-01-28 00:50:25 -06:00
barelyprofessional
305082e17f Extend timeout and prevent creators from raining on themselves 2026-01-28 00:47:26 -06:00
barelyprofessional
96f17c14cf Missing + 1 for participant count 2026-01-28 00:45:23 -06:00
barelyprofessional
051a663c4e Forgot to finish my sentence :( 2026-01-28 00:42:15 -06:00
barelyprofessional
a4ad3f4b45 Forgot to add a delay for the rain timer 2026-01-28 00:41:48 -06:00
barelyprofessional
65b7b19b8a Experimental convoluted rain refactor to use Redis instead of semaphores 2026-01-28 00:40:01 -06:00
alogindtractor
9a7762a933 rain command (#58)
* attempt at rain command

attempt at rain command

* Add 'Rain' to MoneyDbModels enum

Added 'Rain' to the enum for additional game types.

* some cleanup

some cleanup
2026-01-28 04:38:30 +01:00
CrackmaticSoftware
2179d59edd Enabling/disabling gamba games with dynamic settting lookup. (#53) 2026-01-28 04:28:49 +01:00
cohlexyz
2709b3054c Append unix timestamp to coinflip images to bypass caching (#51)
* Append unix timestamp to coinflip image urls

to prevent browser cache from spoiling the result

* Extend result delay a bit
2026-01-16 15:26:00 -06:00
barelyprofessional
981700e889 Preloaded images with predictable URLs instead of continually reuploading the webps 2026-01-15 23:56:29 -06:00
cohlexyz
28a4e71c58 Add coinflip game (#50) 2026-01-16 06:36:55 +01:00
alogindtractor
071136f910 Disable wager limit check in PlinkoCommand (#49)
Comment out wager limit check for Plinko command.
2026-01-15 02:55:33 +01:00
barelyprofessional
60be8d45d6 Added missing await 2026-01-14 19:46:40 -06:00
alogindtractor
17ce32a69c update to show net balance change per request (#48)
update to show net balance change per request
2026-01-14 09:36:01 -06:00
barelyprofessional
eb4bb8dc47 Add missing await 2026-01-13 23:04:53 -06:00
barelyprofessional
ee9ae62e39 Use the target instead of whoever is running the command 2026-01-13 23:01:39 -06:00
barelyprofessional
8f0ada8c78 Fix compiler error and tried to improve the formatting of wins/losses 2026-01-13 21:00:15 -06:00
alogindtractor
128726d5a9 adds pause between spins and delays win/lose message based on length of image (#45)
* adds delay based on frame count so it doesn't spoil outcome on long spins

adds delay based on frame count so it doesn't spoil outcome on long spins

* adds pause between each spin

adds pause between each spin

* Refactor delay calculation for slot animation

Replaced delaySec with delayHSec to calculate delay based on frame delays.
2026-01-14 03:56:48 +01:00
alogindtractor
cf45a14eff update slots multispin to actually work (#42)
update slots multispin to actually work
2026-01-12 05:39:56 +01:00
barelyprofessional
56817cf471 Toggle between active gambler stats and all stats 2026-01-09 19:06:47 -06:00
barelyprofessional
68d0984b77 Fix display of amounts for Plinko 2026-01-09 18:59:12 -06:00
alogindtractor
61e47ad591 fix plinko spam, allow multiple slot spins within the same image (#40)
* spam reduction

spam reduction

* Update SlotsCommand to handle multiple spins

Update SlotsCommand to handle multiple spins
2026-01-10 01:53:52 +01:00
barelyprofessional
31023bc960 Use Humanizer for enum 2026-01-09 18:52:17 -06:00
ClaudetteTheGreat
79a1b7a224 Add !legitcheck command for user RTP statistics (#41)
New command that calculates Return-to-Player statistics for any user
by aggregating all their kasino wagers across all gambler entities.
Shows overall RTP, total wagered/returned, wager count, and luckiest
game (highest RTP with minimum 10 wagers to qualify).
2026-01-10 01:49:59 +01:00
barelyprofessional
fa9cbff738 Fix formatting, lack of ct support for Task.Delay and readd missing await 2026-01-09 00:17:33 -06:00