Commit graph

25829 commits

Author SHA1 Message Date
toaster
a831fc3592 Adjust shade of no-Can dot to avoid matching any 2x2 region on the existing sprite 2025-02-22 23:28:08 +00:00
toaster
5fad786b8f Second pass at representing stacked information
Lots of internal discussion on my last approach, so here's a cleaner alternative
- No more offset with two complex flickering graphics on top of each other
- Instead, "less common" secondary info is represented by a coloured dot overlaid on the primary icon
    - Red for SPB Attack, Turquoise for Mystic Melody
- Only show Spray Can/Mystic Melody for Race-compatible courses
- Show courses where you haven't picked up a Spray Can with a dot
2025-02-22 22:32:15 +00:00
toaster
89afe780df Cup Select preview: Draw Spray Can (+ Ancient Shrine) list in Match Race
Expansion of previously implemented UI for Time Attack, but for showing gotten cans/shrines only.

Also:
- Halved flicker rate for SPB attack medals
- Made invalid cups not display Lost & Found's associated medals OR cans/shrines
2025-02-20 22:32:22 +00:00
toaster
beacbca72a M_EmblemMapNum: Free medal string once no longer relevant 2025-02-19 15:46:06 +00:00
toaster
405c6cb3e2 M_GetConditionString, UC_EMBLEM: Prevent Medal ID out-of-bounds 2025-02-19 15:46:06 +00:00
toaster
7e484150bd Cup Select preview: Draw strongly abbreviated Medal list in Time Attack 2025-02-19 15:46:06 +00:00
toaster
43f2dbe786 Level Select block: Draw relevant Medals on map thumbnail
- Medals in Time Attack
- Spray Can & Ancient Shrine in Match Race
2025-02-19 15:46:06 +00:00
Eidolon
b5483faecf Merge public master 2025-02-15 12:44:40 -06:00
Craftyawesome
1cbb266180 explicit -mno-ms-bitfields for clang 2025-02-14 21:04:04 -05:00
Eidolon
3e0b8203f4 Merge public master 2025-02-14 13:07:53 -06:00
Craftyawesome
06696e78b5 windows clang fixes 2025-02-14 12:53:41 -05:00
Eidolon
1ae570443d Merge public master 2025-02-13 22:52:03 -06:00
Eidolon
c192f13d5d Merge branch 'first-person-improvements' into 'master'
First person fixes and tweaks

Closes #180 and #179

See merge request KartKrew/RingRacers!71
2025-02-14 04:13:44 +00:00
PencilVoid
b88c001d03 First person fixes and tweaks 2025-02-14 04:13:44 +00:00
Eidolon
a2d11a61f1 Merge public master 2025-02-13 20:05:29 -06:00
Eidolon
5f10a35691 Merge branch 'fixfofalphaogl' into 'master'
Clamp rover->alpha levels in LegacyGL

See merge request KartKrew/RingRacers!57
2025-02-14 01:58:39 +00:00
Spring E. Thing
b8ec197b2a player->whip is now readable & writable through Lua 2025-02-13 22:52:40 +00:00
Eidolon
a2572f64df Update copyright years to 2025 2025-02-13 15:56:37 -06:00
Eidolon
cb7f437e60 Merge public master 2025-02-13 15:48:11 -06:00
Eidolon
a4d304a1f5 Update copyright years to 2025 2025-02-13 15:32:26 -06:00
Eidolon
ef5eb2238e Merge branch 'fix-endsign-rng' into 'master'
Fix ending sign RNG off by one error + comment for __internal_prng_bound__

See merge request KartKrew/RingRacers!78
2025-02-13 21:15:07 +00:00
Eidolon
3c69cf8dc1 Merge branch 'moreconstants' into 'master'
Expose more constants to Lua

See merge request KartKrew/RingRacers!66
2025-02-13 21:03:07 +00:00
Eidolon
3edc612ff4 Merge branch 'fixbatching' into 'master'
Small fix for LegacyGL batching

See merge request KartKrew/RingRacers!74
2025-02-13 20:57:07 +00:00
Eidolon
e2a4ed4c4a Merge branch 'fixcharmenulockup' into 'master'
Fix character select menu freeze due to smaller then required loop variables

Closes #304

See merge request KartKrew/RingRacers!68
2025-02-13 20:50:52 +00:00
Eidolon
09b225b579 Merge branch 'skincolor-fix' into 'master'
Fix for skincolors past the 256th displaying incorrectly on character select.

See merge request KartKrew/RingRacers!67
2025-02-13 20:49:00 +00:00
Eidolon
1e3a9d68f8 Merge branch 'aizdriftstraft' into 'master'
Fix "aizdriftstraft" typo

See merge request KartKrew/RingRacers!65
2025-02-13 20:46:08 +00:00
Eidolon
80a4180b2b Merge branch 'fix-huddisable' into 'master'
Fix Lua Hud Enable/Disable being offset by one

See merge request KartKrew/RingRacers!62
2025-02-13 20:41:12 +00:00
Eidolon
eeb1ac347c Merge branch 'slope-stepup-fix' into 'master'
Slope stepup fix

See merge request kart-krew-dev/ring-racers-internal!2496
2025-02-13 17:14:33 +00:00
Ashnal
1978b91677 Slope stepup fix 2025-02-13 17:14:33 +00:00
Eidolon
271c531223 Merge branch 'bheapPushWrongRealloc' into 'master'
Fix wrong size in K_BHeapPush Z_Realloc

See merge request KartKrew/RingRacers!83
2025-02-13 04:18:43 +00:00
Eidolon
5a3f1c7653 Merge public master 2025-02-12 22:01:13 -06:00
Eidolon
1a8467fdaf Merge public master 2025-02-12 19:02:38 -06:00
SteelT
c9c4796260 Set SDL_HINT_APP_NAME SDL hint
As with SDL3 and SDL2-compat, the app name logic is different and the default name is instead a generic "SDL Application"
2025-02-03 21:13:36 -05:00
JugadorXEI
f0bf674dc0 Fix wrong size in K_BHeapPush Z_Realloc 2025-02-01 18:16:06 +01:00
Ashnal
33ff42af1f Fixed math oopsie 2025-01-30 20:35:16 -05:00
Eidolon
e7f0c1e79e Clear audio graph on I_ShutdownSound
Fixes a crash when destroying SDL AudioStreams under SDL3 and
SDL2-compat.
2025-01-30 17:01:10 -06:00
Craftyawesome
093bfd9be0 use a signed type for NodeToSplitPlayer 2025-01-23 15:59:48 -05:00
Eidolon
1cc261e902 Check for input devices before opening them 2025-01-20 22:00:14 -06:00
Ashnal
d4bb225ab2 Fix hud overlap for 1 lap maps 2025-01-18 20:23:59 -05:00
Ashnal
1b0674d041 Grading adjustment 2025-01-18 19:29:49 -05:00
toaster
2104b0b0f5 Disable EXP in K_Cooperative
- HUD, tally, and roulette(!!)
- In basegame, affects Sealed Stars
2025-01-18 19:29:49 -05:00
toaster
396244780a Don't attempt to use adjusted EXP counter in invalid contexts
- Introduces new function K_GetDisplayEXP
    - Replaces duplicated code between HUD and tally
    - Returns UINT16_MAX in div/0 case for invalid result (resolves #1458)
- Hides EXP HUD/tally if no EXP can be earned
2025-01-18 19:29:49 -05:00
Eidolon
f7131d8e86 Fix src/k_hud.cpp line endings 2025-01-18 18:11:06 -06:00
Craftyawesome
6b925d6f72 adjust/correct comment for __internal_prng_bound__ 2025-01-02 02:41:06 -05:00
Craftyawesome
a481878a61 Fix end sign rng off-by-one 2025-01-02 02:30:43 -05:00
Eidolon
4be98c6c13 Fix src/d_clisrv.c line endings 2024-12-26 19:10:45 -06:00
Eidolon
ed2c0c85cc Merge branch 'non-bss-convert-imgbuf' into 'master'
Allocate imgbuf on-demand in Picture_PatchConvert

See merge request kart-krew-dev/ring-racers-internal!2491
2024-12-26 16:29:37 +00:00
Eidolon
22b20b5877 Add netgame voice chat
Implemented using libopus for the Opus codec, same as is used in Discord.
This adds the following cvars:

- `voice_chat` On/Off, triggers self-deafen state on server via weaponprefs
- `voice_mode` Activity/PTT
- `voice_selfmute` On/Off, triggers self-mute state on server via weaponprefs
- `voice_inputamp` -30 to 30, scales input by value in decibels
- `voice_activationthreshold` -30 to 0, if any peak in a frame is higher, activates voice
- `voice_loopback` On/Off, plays back local transcoded voice
- `voice_proximity` On/Off, enables proximity effects for server
- `voice_distanceattenuation_distance` distance in fracunits to scale voice volume over
- `voice_distanceattenuation_factor` distance in logarithmic factor to scale voice volume by distance to. e.g. 0.5 for "half as loud" at or above max distance
- `voice_stereopanning_factor` at 1.0, player voices are panned to left or right speaker, scaling to no effect at 0.0
- `voice_concurrentattenuation_factor` the logarithmic factor to attenuate player voices with concurrent speakers
- `voice_concurrentattenuation_min` the minimum concurrent speakers before global concurrent speaker attenuation
- `voice_concurrentattenuation_max` the maximum concurrent speakers for full global concurrent speaker attenuation
- `voice_servermute` whether voice chat is enabled on this server. visible from MS via bitflag
- `voicevolume` local volume of all voice playback

A Voice Options menu is added with a subset of these options, and Server Options has server mute.
2024-12-13 17:12:14 -06:00
Eidolon
1ee5547bb2 Allocate imgbuf on-demand in Picture_PatchConvert
This static var requires a 64 megabyte .bss section value which
is allocated on application startup. Depending on the particulars of the
operating system's virtual memory implementation, this may result in
dynamic page allocation for the span, or a full upfront allocation.
Either way, it doesn't need to be like this, we can just dynamically
allocate the buffer instead.

This may save up to 64MiB of runtime memory usage.
2024-12-13 10:55:22 -06:00
Alug
a362e3e23d reflect sorting order when filling polygon array
functionally the same, but keeps consistency
2024-11-27 18:40:57 +01:00