toaster
fb2224e9b1
Allow pressing <a> again while a follower is on your Profile (or you have a local party and can't make any profile edits from here) to play horn... with goofy bonus text from the only obvious source
2025-08-15 13:20:09 +01:00
toaster
2e0c8fab33
Force a Challenge tile flip if you activate the effect of a given Challenge (profile set and alt title)
...
Racers and Followers will also play their unique sound too
2025-08-15 13:20:09 +01:00
toaster
a7f119328e
Challenge Preview for SECRET_ALTMUSIC: Consistency
...
- Since we're only using 50% of rollangle steps at 35fps, we can smooth it out under interp conditions like the flipping tile
- Don't grey out the text/stop the button animation for the input prompt, since pressing it again will stop the music, whereas grey text on Drivers/Followers/Colors means no function
- Keep the tile flipping even when not hovered over
2025-08-15 13:20:09 +01:00
toaster
d98b88a61f
M_DrawChallengeTile: The non-category size of SECRET_MAP will now show a "map face", ala Map Anger/menu Round Queue
2025-08-15 13:20:09 +01:00
toaster
ee76f539e9
M_DrawChallengeTile: Fix brief flickers of invalid side caused by interpolation
2025-08-15 13:20:09 +01:00
toaster
bc75a1702e
Extra polish to SECRET_ALTMUSIC on Challenges menu
...
If playing a given altmusic unlock...
- If selected, spin the disc
- If not selected, constantly flip the relevant tile on the board
- Either way, flash the relevant pixel in the scroll bar
2025-08-15 13:20:08 +01:00
toaster
4fcdb3c5fe
Challenges menu QoL: <a> to set Driver and Follower
...
Also adjusts coordinates of other Challenges UI previews with control inputs to match
2025-08-15 13:20:08 +01:00
toaster
7b6b26fe30
Add skincolor Profile set Qol too
2025-08-15 13:20:08 +01:00
toaster
9074eaf3c8
Add the ability to play Tutorial courses from the Challenges menu
...
- Only works in parties of 1
- Currently intentionally disabled for other types of Match Race, as they tend to have too many options and I don't want to risk infinite menu loops
2025-08-15 13:20:08 +01:00
toaster
248541833a
extras-challenges: Clean up open and close
...
- Dedicated function for cleaning up Challenges Menu memory
- Adjust the required function slate to open Challenges menu without malformed data
- Permits it to be used with restoreMenu, where it would silently infinitely loop before
2025-08-15 13:20:08 +01:00
toaster
7c7bfe6054
Adjust how major and minor challenges affect percieved challenge completion
...
- The Chao Medal in the top right corner will be completely filled if you've unlocked everything, even if that was via skips
- You basically never saw the silver Chao Medal. Major challenges *are* designed to be skipped if you don't want to, only 101% should be gruelling (complementary)
- The Scroll Bar at the top will darken pixels of complete columns ever so slightly even if minor challenges aren't yet achieved, to make it easier to find conditions to go back and fulfil if you're truly hunting for everything
2025-08-15 13:20:08 +01:00
Oni VelocitOni
56fe6580e2
Merge branch 'tuto-minor' into 'master'
...
Minor tutorial addendums
See merge request kart-krew-dev/ring-racers-internal!2733
2025-08-15 04:44:26 +00:00
AJ Martinez
e7e719b595
Merge branch 'jartha/fix-titledemo-freeze' into 'master'
...
Fix replay playback not processing ticcmds after a titledemo ends
Closes #1623
See merge request kart-krew-dev/ring-racers-internal!2732
2025-08-13 21:50:38 +00:00
AJ Martinez
5ec12247ba
Merge branch 'fix-slow-split-crash' into 'master'
...
Store initial skin configuration for split display
See merge request kart-krew-dev/ring-racers-internal!2734
2025-08-13 21:50:23 +00:00
toaster
1c6ca63933
K_DrawGameControl: Use _FONT enums instead of fragile laundered magic numbers
...
Fixes the Genesis font breaking all Menu font'd control visuals
2025-08-13 18:05:23 +01:00
VelocitOni
94197b13e1
"These may sometimes be needed for progression"
...
(Tutorial unlock message drops hint that some may block cups, in-case challenge board is unfortunately configured for the file)
2025-08-13 15:40:36 +01:00
toaster
cc72be970b
Support UC_CONDITIONSET for condition text on Challenges menu
...
Permits recursion by exactly one level
2025-08-13 15:40:30 +01:00
toaster
2143fc6662
Dialogue UI: Tactical Normie Countermeasure
...
Fade and overlay with Genesis font depending on context
2025-08-13 15:40:16 +01:00
toaster
e76262ae5b
Add Genesis font
2025-08-13 15:39:01 +01:00
toaster
b97e8a581e
Challenges: Add "New Tutorial Data" popup alongside map unlock
...
Doesn't appear for Playground as it's explicitly not part of Tails' Way
2025-08-13 15:38:52 +01:00
toaster
08d8bc7f58
Fix direct skin assignment in netsave + Heavy Magician
...
Was not caught by compiler because these are void pointers 🥹
2025-08-13 10:14:09 +01:00
Antonio Martinez
662f849a71
Remove skin configuration debug prints
2025-08-13 03:57:23 -04:00
Antonio Martinez
5244648070
Store initial skin configuration for split display
2025-08-13 02:48:23 -04:00
Eidolon
892a6b8620
Merge public master
2025-08-12 16:49:14 -05:00
Eidolon
60e95ab0d8
Merge branch 'dynamic-skin-allocation' into 'master'
...
Dynamically allocate skins
See merge request KartKrew/RingRacers!125
2025-08-12 21:16:44 +00:00
Eidolon
255570cfca
Dynamically allocate skins
...
This avoids an issue where the skins array takes up a fixed, but large
amount of memory at runtime. On x86_64 linux, that array is roughly 80
megabytes in memory, most of which is unused when the game is unmodded.
Instead, we treat `skins` as a dynamically resizing array, and it is an
array-of-pointers into separate allocated `skin_t`.
This is based on Lactozilla's skin limit MR for SRB2, but I've rewritten
it because RR has diverged quite a bit.
This was verified to check every access of `skins` by using clangd's
find-all-references function. However, I have only tested plain skins,
not Lua addons, so that could afford some extra checking.
2025-08-12 15:33:00 -05:00
toaster
2b3697e8c8
WERROR fixes
2025-08-12 12:55:04 +01:00
Antonio Martinez
9dc7453159
Toaster recs for demo hygiene
2025-08-12 04:40:04 -04:00
Antonio Martinez
1c66631e18
Also unset waitingfortally when adding ghosts
2025-08-12 04:30:34 -04:00
James R
d8732affdf
Fix replay playback not processing ticcmds after a titledemo ends
2025-08-12 01:13:54 -07:00
Oni VelocitOni
18307871bf
Merge branch 'ta-spindash-leniency' into 'master'
...
E-brake leniency in TA starts only
See merge request kart-krew-dev/ring-racers-internal!2729
2025-08-12 01:24:22 +00:00
Oni VelocitOni
148e72542e
Merge branch 'speedy-stairjank' into 'master'
...
More lenient stairjank when moving quickly
See merge request kart-krew-dev/ring-racers-internal!2728
2025-08-11 23:46:43 +00:00
Oni VelocitOni
5bb1cf3036
Merge branch 'ancient-gear-ii' into 'master'
...
Ancient Gear Tweaks
See merge request kart-krew-dev/ring-racers-internal!2727
2025-08-11 23:46:38 +00:00
Antonio Martinez
da6b6abb03
E-brake leniency in TA starts only
2025-08-10 19:47:09 -04:00
Antonio Martinez
e82217c23e
More lenient stairjank when moving quickly
2025-08-10 19:32:53 -04:00
VelocitOni
1c14edfe5b
Gear & Gear Parts w/ MF_DRAWFROMFARAWAY
...
They draw from further away now, should be more visible in Playground
2025-08-10 07:45:30 -04:00
Lach
e6bef7a7d1
Disallow Ancient Gears from respawning after a retry
2025-08-10 18:27:00 +10:00
Lach
ae2a3cffaf
Increase default Ancient Gear scale to 1.5
2025-08-10 16:09:30 +10:00
Oni VelocitOni
c7b3a49c85
Merge branch 'ancient-gear' into 'master'
...
Ancient Gear (resolves #1599 )
Closes #1599
See merge request kart-krew-dev/ring-racers-internal!2726
2025-08-10 00:43:23 +00:00
Lach
bbe231e994
Add Ancient Gear object type & unlock type
2025-08-10 01:51:34 +10:00
Lach
0e45149045
Fix objectplace thing scales
2025-08-10 01:21:50 +10:00
Oni VelocitOni
39cb84f06c
Merge branch 'ta-decompat' into 'master'
...
Replay de-compatibility
See merge request kart-krew-dev/ring-racers-internal!2715
2025-08-09 04:12:29 +00:00
Oni VelocitOni
3d1a7c1684
Merge branch 'ballhog-buffs' into 'master'
...
Ballhog Buffs & Feature
See merge request kart-krew-dev/ring-racers-internal!2725
2025-08-09 04:12:18 +00:00
Oni VelocitOni
0bab971e70
Merge branch 'match-race-splits' into 'master'
...
Splits in Race gametypes
See merge request kart-krew-dev/ring-racers-internal!2724
2025-08-09 04:12:08 +00:00
Oni VelocitOni
217316787a
Merge branch 'lost-time-protection' into 'master'
...
TA: Prevent reset during tally if time is a new best
See merge request kart-krew-dev/ring-racers-internal!2723
2025-08-09 03:06:46 +00:00
Antonio Martinez
5e9a80bb32
Fix race split carryover between rounds
2025-08-08 22:42:42 -04:00
Antonio Martinez
385257af73
Splits in Race gametypes
2025-08-08 20:09:14 -04:00
Antonio Martinez
015e2f0930
TA: Prevent reset during tally if time is a new best
2025-08-07 21:59:42 -04:00
AJ Martinez
0918e83873
Merge branch 'ta-rebalance-gaiden' into 'master'
...
TA rebalance gaiden
See merge request kart-krew-dev/ring-racers-internal!2710
2025-08-08 01:34:11 +00:00
Antonio Martinez
fad24db244
Merge remote-tracking branch 'origin/master' into ta-rebalance-gaiden
2025-08-07 21:20:00 -04:00