Commit graph

174 commits

Author SHA1 Message Date
toaster
21849ef1ce Horncode
A much more focused replacement for Hornmod, specc'd out by Tyron and Oni working together and implemented by the author of this commit because it's pretty funny.

- Followers have `hornsound` in their SOC configuration.
    - The default sound for all followers without a provided one is sfx_horn00.
- They'll play this sound if you use lookback with one following you, and there's nearby players to get the player looking all the way around.
    - Only the players who are successfully considered for lookback will hear it.
- Has a v1-like visual with less randomisation, but still netsynced.
- Also controlled by the cvar `taunthorns`, which, like `tauntvoices`, takes "Tasteful" (default), "Meme", and "Off".

TODO: make the condition for horn a little delayed, so you have to hold lookback for a little bit.
2026-02-01 16:16:02 -05:00
Indev
14e04ff360 Fix mapheaderinfo[i] always returning green hills mapheader for invalid map id 2026-01-05 11:32:54 -05:00
GenericHeroGuy
e45c8d1835 Add cup select
Also, backspace remembers your last selected map/cup now, for easy searching
2026-01-02 02:54:02 +01:00
GenericHeroGuy
271cec1907 Fix more warnings reported by clang 2025-12-29 00:56:18 +01:00
yamamama
7331e41b57 Fix realloc use-after-free, better safeguard the defaultvalue overwrite 2025-12-27 17:38:48 -05:00
yamamama
606784ce14 Forgot to actually differentiate Alt. item runnerdist cvars 2025-12-27 17:38:48 -05:00
yamamama
3013a720a4 Properly set the cvar value 2025-12-27 17:38:48 -05:00
yamamama
15cd75eead Per-item RUNNERAUGMENT distances 2025-12-27 17:38:48 -05:00
NepDisk
729c8f9947 Add compatmode to mobjinfo 2025-12-17 15:59:43 -05:00
GenericHeroGuy
47f0289a52 Add level platter to ALL menus, clear out ALL the old nextmap code
and delete the unused custom preset stuff because the cvars just happened to
call Nextmap_OnChange
2025-12-15 22:50:29 +01:00
NepDisk
3028839f2f Port most of SECRET_SKIN and player->availabilities changes from RR
based on 6d0637d39d
2025-12-11 20:47:52 -05:00
GenericHeroGuy
9eebf2ae67 Add encore and addon sorting to platter, and obligatory tweaking 2025-12-11 23:49:06 +01:00
GenericHeroGuy
bcb0eb95cc More fastcmp cleanup 2025-12-11 21:58:37 +01:00
NepDisk
6d6cb09280 Convert most strcmp/stricmp to fastcmp/fasticmp 2025-12-11 13:00:32 -05:00
GenericHeroGuy
6ad95bacd0 Level platter, ported from 2.2
Just enough to be feature-complete lol, will need some more tweaking
2025-12-11 00:05:23 +01:00
GenericHeroGuy
e733394ded New Lua item API + cleanup 2025-12-08 20:54:36 +01:00
yamamama
6aa50b62d7 Add support for Alt. item patches 2025-12-07 20:38:41 -05:00
minenice55
83176e4c9f make equip style a property of the items proper
KNOWN ISSUE: rockets and eggman leave the item slot empty when equipped, should probably add a "equipped item type" field to the player struct
2025-12-06 00:33:51 -05:00
NepDisk
d6c9eecd7f Use strlcpy instead of regular strcpy 2025-12-03 19:34:17 -05:00
toaster
6749b54968 readlevelheader: Support lowercase for ZoneTitle
Exposed by increased lowercase prevalence, fix before boarding that up.
2025-12-02 19:44:33 +01:00
GenericHeroGuy
58b4949c24 Completely retire the old skinsound system
Everything in Lua related to it is now locked behind compatmode
Also fixed SFX allocations eating into skinsounds
2025-12-01 21:42:06 +01:00
GenericHeroGuy
aebe13c2d6 Whole-diff garbage collection 2025-11-30 22:25:52 +01:00
yamamama
51a005a7de Refactor voices
* Tie all voices to skins, allocate voices during skin allocation and patching
* Bring back voice.name, kill voice.parent, add voice.id
* Lua compatibility for voices (again) soon (hopefully)
2025-11-29 20:51:25 -05:00
yamamama
22ff92ea43 Voice -> KartVoice (mostly)
Guest-starring: META_VOICE_ARRAY
2025-11-26 07:49:25 -05:00
yamamama
f2f6ba9a72 Remove redundant KVOICE_ check, automatically allocate KARTVOICE fields in SOCs 2025-11-26 07:49:24 -05:00
yamamama
fa47868240 Automatically allocate voice sounds should they not already exist in memory
No more stupid SFX freeslotting in SOCs
2025-11-26 07:49:24 -05:00
yamamama
e0d4a8e385 Consolidate voice allocation
Skin voices and freeslot voices are no longer separated, with all voices allocating as skin voices would prior.
Due to this, skin voice allocation has been refactored a bit:
- No longer relies on a name string, instead using Dehacked name info hashes and string offsets
- Name string checks now check the voice's Dehacked name; the skin 'tails' will allocate KVOICE_TAILS, and so on
- Overall refactors to fit this new system
2025-11-26 07:49:24 -05:00
yamamama
b7a60c2fea Voice dub freeslotting
Full transparency: the way I set up dub reading from an SOC is Yanderedev-tier garbage.
2025-11-26 07:46:37 -05:00
GenericHeroGuy
67dd2c875f Add altitem flags, fix alt shrink setting indirect cooldown 2025-11-16 15:47:05 +01:00
GenericHeroGuy
911c454fa8 Fix graphics replacements, fix altitem flag not being synced 2025-11-13 16:04:45 +01:00
GenericHeroGuy
f7c1c474e6 Clean up and consolidate all item cooldown code
* The "unique item" flag has moved to kartitem, and split to accomodate
  shields (item slot only, not paper items)
* "BGoneTime" renamed to "CooldownTime"
* indirectitemcooldown has been folded into the existing cooldown system,
  all results with the indirect flag share the highest cooldown time
* Added cooldown debugger to kartdebugdistribution
* Fixed Thunder Shield not resetting cooldown when killing an SPB
2025-11-09 22:00:48 +01:00
GenericHeroGuy
96b766fb56 Merge branch 'blankart-dev' into itemstuff 2025-11-08 16:34:13 +01:00
NepDisk
d7ed03fab9 Remove M_Memcpy
Was quite literally a wrapper that did nothing.
2025-11-08 02:00:30 -05:00
GenericHeroGuy
4986bde9ab Restore the item toggle menu back to working order 2025-11-08 02:15:47 +01:00
GenericHeroGuy
3c64f345fb SOC the items... finally! 2025-11-07 23:23:23 +01: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
a8609d7204 Un-shitify function.acp1 pointers 2025-10-23 23:26:26 -04: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
GenericHeroGuy
96bf11c706 WIP: User-defined time attack presets 2025-10-17 22:00:57 +02:00
NepDisk
ff467c676c port over most fixes from srb2classics clang-tidy pr
Based on 939354f483
2025-10-17 10:32:21 -04:00
NepDisk
83bc2dc9fb Add support for parsing follower icons 2025-09-24 16:42:22 -04:00
NepDisk
9df538fe32 Merge branch 'blankart-dev' into AirDrop 2025-09-22 15:35:20 -04:00
Anonimus
fb5b72a600 Add bumpspark as a TA modifier
Also a bunch of other things in relation to that
Kart mode has bumpspark off, Blan mode uses "keep drift, lose charge", and Tech has bumpspark enabled
2025-09-22 02:04:03 -04:00
NepDisk
ffa7850bb6 AirDrop Starting Commit
This introduces a new optional feature called Airdropping. When holding brake in the air you will start to fall faster. If you have rings active and have rings on you, you Ring Drop to fall even faster and with less delay. The ringboost output from this move is weaker then using rings normally making it so always using ring drop isn't the best play
2025-09-20 00:41:08 -04:00
NepDisk
a171d5a61a Show Music credits across more places. 2025-08-21 16:50:20 -04:00
NepDisk
497fe4bcac Rename sfx->pitch to sfx->flags 2025-08-12 19:47:50 -04:00
NepDisk
6d6c0f54a5 Hardcode slopeboost
Ported and based on the slopeboost from booststack by indev
2025-07-21 21:12:02 -04:00
NepDisk
2f84779d41 Update rest of the existing files to use blankart branding 2025-07-01 00:23:30 -04:00
NepDisk
f004b36dbb Revert 'Merge pull request 'File loading refactor' (#68) from wadstrbuf into blankart-dev'
This reverts commit f72475b557, reversing
changes made to 0c89c85aae.

Sorry Generic this branch is really cool but it needs more work. I shouldn't have merged it too early...
2025-06-30 01:45:01 -04:00
NepDisk
fd4e128641 Account for PRECIP_NONE 2025-06-29 16:48:21 -04:00