Commit graph

22724 commits

Author SHA1 Message Date
Anonimus
c366eef0b4 Buff Bubble Shield boosts 2025-10-26 02:39:41 -04:00
NepDisk
764018420e Lower bonus accel for drafting
.50 -> .25
2025-10-25 22:52:47 -04:00
Anonimus
f16b480829 Increase Hyudoro rarity
6.67% max now
2025-10-25 19:16:28 -04:00
Anonimus
08a93a3b61 Increase Land Mine rarity 2025-10-25 19:13:55 -04:00
GenericHeroGuy
3a343824f5 Again? Really? 2025-10-25 22:24:04 +02:00
NepDisk
7b12bc82ff Add more backcompat for old unused v1 kart flags 2025-10-25 15:15:55 -04:00
NepDisk
a36c0291cb ; 2025-10-25 14:46:12 -04:00
NepDisk
6a85aed2d8 Add backwards compat for FULLSTASIS 2025-10-25 14:44:02 -04:00
NepDisk
6bfe5cd9aa Update hash to fix rocks 2025-10-25 14:33:41 -04:00
NepDisk
b63cd14ecf Update hash for starpost fix 2025-10-25 14:07:49 -04:00
Anonimus
23489786b8 Prevent mines from crashing the game when littering is off 2025-10-25 12:53:11 -04:00
Anonimus
4b448de85e Bubble Shield adjustments
Primarily to improve its defensive capabilities
* Trade penetrating attacks (like a Thunder Shield's AoE attack)
* Remove bump-chip
* Make how items damage the Bubble Shield more modular overall
2025-10-25 12:52:36 -04:00
Anonimus
289db04dec Nerf mine odds, remove bottom-half limiter on tinypop 2025-10-25 10:44:51 -04:00
NepDisk
7458efc0ec Minor cherries fixes 2025-10-24 14:41:28 -04:00
NepDisk
65cea70c05 Merge pull request 'Cherries™️ Part 2' (#175) from cherries into blankart-dev
Reviewed-on: https://codeberg.org/NepDisk/blankart/pulls/175
2025-10-24 20:20:57 +02:00
NepDisk
7b0151d146 Update SDL_Mixer for windows 2025-10-24 08:35:42 -04:00
Alug
7618566aa4 dont force directsound for sdl versions from 2.26.5 on windows
directsound is deprecated since 13 years!
superseeded by wasapi
2.26.5 sdl brought some major improvements to resampling which fixes the issues this aimed to work around, but instead this workaround caused a plethora of issues, like breaking loops in some cases or the votescreen music
2025-10-24 08:13:15 -04:00
NepDisk
ad329fcc66 Remove unused define 2025-10-24 08:10:48 -04:00
NepDisk
68597c87fb These should be fine as the original types 2025-10-24 07:39:43 -04:00
NepDisk
7f3a867575 Add C23 and CXX23 Compile flag since this works now 2025-10-24 00:39:34 -04:00
NepDisk
22120bafbc Un-shitify T_* pointers
as with the last commit that did this, this fixes possible undefined behaviour reported by UBSan
2025-10-23 23:48:06 -04:00
NepDisk
0da6852029 Update hash 2025-10-23 23:33:38 -04:00
NepDisk
a8609d7204 Un-shitify function.acp1 pointers 2025-10-23 23:26:26 -04:00
NepDisk
abdf530730 initialize sdl window,renderer and texture to something 2025-10-23 21:59:40 -04:00
NepDisk
63f93f082f cleanup + optimizations mixer_sound
41407538d4
2025-10-23 21:56:50 -04:00
NepDisk
7296d9932d handle more memory allocation failure cases
5f394cd938
2025-10-23 21:28:19 -04:00
Anonimus
92315e271d Remove FIXME comment 2025-10-23 20:26:54 -04:00
Anonimus
0ba416f3f1 Fix flamometer Anonbrain moment 2025-10-23 20:25:16 -04:00
Anonimus
e56cfa847e Update credits
I seriously need to keep better track of the people joining these test sessions
2025-10-23 18:25:47 -04:00
Anonimus
c1d1a4be4b Miguelius Flamometer (and colorization of such) 2025-10-23 18:25:22 -04:00
GenericHeroGuy
92f17189b0 Repair and interpolate overtime/jitters 2025-10-23 23:15:26 +02:00
Anonimus
da7f35cb2a Adjust clustering
* Increase epsilon value, let it modulate based on gamespeed
* Adjust where the 'cluster point' is visualized in debugging
* Relay the role of 'cluster player' to the highest placing player in the bottom half, should the previous enter the top half
2025-10-23 16:06:00 -04:00
toaster
d9b8eab1ea No contesters use the position of their broken kart on the minimap
This is instead of their flung body, which drifts significantly from where you died and muddies the "LOL YOU DIED THAT CLOSE TO THE FINISH!?" voicecall laughter moments
2025-10-23 20:36:05 +02:00
toaster
2a6627a1b8 Always show timelimit if timelimitintics is set, to allow spotting weird bugs before they cause problems 2025-10-23 20:36:05 +02:00
toaster
204951f6af Clean up K_TimerInit()
- Fix not being able to change timelimit in MP break the capsules
- Use more readable variable name (singleplayercontext --> domodeattack)
- Reset timelimitintics in K_TimerReset()
2025-10-23 20:36:05 +02:00
toaster
f4b2d9b4fd Fix modeattacking being assumed to be boolean in K_CanChangeRules 2025-10-23 20:36:05 +02:00
toaster
45c23445d6 timelimitintics-related shenanigans
- Play a countdown sound (same as introcountdown) per each of the last 3 seconds
- Jitter the time display HUD extra strong in a two-tic window around the above
- Fix timelimitintics not being set in TESTOVERTIMEINFREEPLAY builds (which is now all DEVELOP builds)
2025-10-23 20:36:05 +02:00
toaster
6ab7b3e6c3 Also tick (almost) all karthud array timers even during hitlag
Only exception is timers relating to ring usage, as that's intended to signify ring boost power (which is obviously paused during hitlag)
2025-10-23 20:36:05 +02:00
toaster
50721175ce Rearrange P_PlayerThink to make some things occur even in Hitlag
Notably REALTIME - prevents the timer stopping when you get hit, but also:
- Typing indicator
- Airtime tracking
- Kickstart accel
- No Contesting due to racecountdown
- Spectator data wipe
- Stronger preventative measure for possible finish line multi-hit events
2025-10-23 20:36:05 +02:00
toaster
eeafd2bcc0 If timelimit is being modified before starttime, tick the secret timer but don't modify the total limit. 2025-10-23 20:36:05 +02:00
toaster
dea4512fd8 If timelimit is set while being modified (extremely unlikely but technically possible), stop adding extra time. 2025-10-23 20:36:05 +02:00
toaster
5a1d232c9a No time limit in Capsule timeattack 2025-10-23 20:36:05 +02:00
toaster
6b8ac3c301 Fix pointlimit messages occouring in singleplayer contexts
Still an awful child that hasn't shaped up like their sister cv_timelimit, but this will do for now.
2025-10-23 20:36:05 +02:00
toaster
805b82abd7 Don't make gptest behaviour apply in Record Attack. 2025-10-23 20:36:05 +02:00
toaster
fe01c780fe Fix cup level list behaviour
- Frees existing string data
- Unbinds cup backreference here instead of in p_setup
2025-10-23 20:36:05 +02:00
toaster
877ee24ac2 Add "allowdemos" option to K_CanChangeRules()
It's been used interchangably as "this is a singleplayer gameplay context" and "This is a no cvar changing context". This addition repairs some behaviour which might have been inconsistent between netgame and netreplay.
2025-10-23 20:36:05 +02:00
toaster
caf91c30dd Fix the case where GP coop would cause no Capsules + possibly DUELs in eventmode
Also reduces some of the dead time before Break The Capsules begins by cutting out the majority of POSITION!! and hiding the one measly bulb that would otherwise appear
2025-10-23 20:36:00 +02:00
toaster
2939f63418 Support alternate gameplay events during GP
- Implementation details:
    - grandprixinfo.eventmode is the reference point
    - All bots have spectator applied and removed at map start depending on eventmode, and I've done my best to guard against side effects of not removing them entirely
    - You shouldn't turn off grandprixinfo.gp when turning on things like specialStage.active or bossinfo.boss when pursuing eventmode behaviour
    - Probably needs to be integrated into XD_MAP for any future netplay support, is currently disabled.
    - You technically don't have to assign a Capsules map to be the bonus and a Special Stage to be the special. A Capsules map can be assigned to a Special Stage too, and a Boss can be assigned to either of them.
    - Special Stages are still just as incomplete as they were before.
- Break the Capsules has special behaviour.
   - Timelimit starts at 20 seconds.
   - Earn 10 seconds (plus a little extra cheaty time) every capsule you destroy.
   - WIN + extra life if you bust all the capsules, COOL if you get some but run out of time, LOSE if you lose your bumper or run out of time without breaking a single capsule.
   - Supposed to also give you rings, but ran into a LOT of difficulty with this and didn't want to commit half-baked stuff, so it'll be a later project.
Also:
- Fix a long standing bug where totalring was reset between maps, preventing the sum from adding up across GP rounds and depriving you of extra lives you were owed.
- Fix an issue where Break the Capsules record attack was KARTSPEED_HARD.
- Send timelimitintics in savegames, since it's handled seperately now.
2025-10-23 16:28:40 +02:00
James R
b26d2b29de Fix 2P FINISH text scrolling
Was using the wrong center offset.
2025-10-23 16:28:39 +02:00
toaster
56fe869def Seperate FINISH text from khud_cardanimation
- Fixes an issue where the card animation and the FINISH animation operating on two different timers, but using the same variable, would intefere with each other
- Also makes khud_fault use the same drawer, so it can benefit from interpolation
2025-10-23 16:28:39 +02:00