Commit graph

76 commits

Author SHA1 Message Date
minenice55
247dd4a437 turns out this needs its own pickup type (due to op order) 2026-02-21 00:26:09 -05:00
minenice55
d031a9a3e7 use the added sounds 2026-02-20 01:23:14 -05:00
NepDisk
6fb8ddf82e Don't sink cam on exiting players 2026-02-19 22:23:00 -05:00
minenice55
92f3ecdd83 allow configuring thundershield radius 2026-02-18 17:13:35 -05:00
minenice55
f8d2e149c1 enable Egg Brick by default (without enabling the cooldown) 2026-02-17 18:41:55 -05:00
NepDisk
df3209281e Remerge S-Monitor back into Invin 2026-02-17 10:52:01 -05:00
yamamama
fb6066dea9 Fix up some uncaught issues with the S-Monitor split
- Cancel-music is fixed
- Offroad gradienting is fixed
- Introduced the "slot-unhog" system (decaying power lets you pick up items again)
- Renamed some more internal variables
2026-02-16 18:44:09 -05:00
yamamama
542648e948 Add KIF_HYUCANTSTEAL
- Prevents the given item from ever being stolen by Hyudoro
- Useful for those extra-special items that you really want the player to use
2026-02-16 18:40:48 -05:00
yamamama
d5ca5516de Split Classic and Alt. Invincibility
- It's what the people want, why bother to complain?
- Alt is now its own separate item titled the S-Monitor
- Several variables, macros, functions, and comments have been renamed to fit this change
2026-02-16 18:40:48 -05:00
NepDisk
a719adb4e6 Don't allow superring rolling with rings mode off 2026-02-16 16:40:19 -05:00
yamamama
b568e040ec Attempts to salvage Alt. Invin
What do people see in this thing...

* A player's invincibility is now permanently active until they get past the cluster player
* Speed boost has been buffed
* Cluster calculations now use an average-distance between players
* The odds system now uses a binary "force or not" format, instead of the gradienting system used prior.
  This should ensure that the item is rolled only when players need it the most.
2026-02-15 19:12:58 -05:00
NepDisk
89d2fd24f6 Reset Flamedash when flamestore expires
This makes it so that the turning loss given by the flameshield resets when you use up your flameshield, rather then lingering.
2026-02-09 13:17:19 -05:00
minenice55
dd1022b18c implement the egg brick proper 2026-02-07 23:11:52 -05:00
minenice55
a2c6efb86e configurable item amount display 2026-01-26 18:12:03 -05:00
NepDisk
6aac27ff1d Add cvar to allow bubbleboost to mow offroad and shield boost rumble support
On maps with tripwires these are great for shortcuts not so much with offroad only setups. Lets try to level the playing field.

Oh and also lets add rumble support for flame and bubble boosts since it feels nice.
2026-01-21 20:11:20 -05:00
yamamama
d417033fb6 Year update attempt 2 2026-01-01 14:45:23 -05:00
NepDisk
eb4394ee90 Seperate brick and lock 2026-01-01 13:49:00 -05:00
yamamama
a8b47436dd We've made a full rotation around the sun
I'm sure I've missed things; this was me just grepping instances of "2025" and adding the necessary changes
2026-01-01 13:32:38 -05:00
NepDisk
ab1cb9429f Make eggmine slotlock a optional feature 2026-01-01 11:39:06 -05:00
yamamama
4fe0dff858 Add grandprixinfo.gp checks I forgot about 2025-12-29 10:41:05 -05:00
yamamama
474a59ab7c Add "Lunatic" and "Maniac" modes
DUDE TOUHOU LMAO

Jokes aside:
* Lunatic = Master difficulty with modifications to make the races
  significantly more difficult:
  * Introduces a "lunaticmode" boolean to grandprixinfo;
    the demoversion has been upped to 0x0010 due to this
  * The bot modifier is, at MINIMUM, 2.0, making them aggressive as hell;
    Rival bots use a 2.5 modifier
  * Bump Spark is always off in this mode
  * RUNNERAUGMENT results have their distances significantly shortened;
    if a rival bot takes the lead, this distance is shortened even FURTHER
    so they don't frontrun against the human player endlessly
  * Alt. Invinc shows up earlier as a sort of "mercy" for human players;
    it would otherwise not show up until the race was effectively over
  * Maniac = Nightmare difficulty (Master at Expert speed)
    with Lunatic's changes
2025-12-28 21:13:30 -05:00
GenericHeroGuy
51fbf12903 Start by clearing out a bunch of warnings 2025-12-28 02:00:47 +01:00
yamamama
15cd75eead Per-item RUNNERAUGMENT distances 2025-12-27 17:38:48 -05:00
GenericHeroGuy
a5b82f41cb New map patches, fix wrong name for SPB result 2025-12-25 23:32:24 +01:00
yamamama
506917e24b Shrink Fix part 1: Fudge spring launch scales 2025-12-24 23:22:04 -05:00
NepDisk
7249273ca3 Revert "Kill Alt. Invin."
This reverts commit f414006e66.
2025-12-22 20:23:45 -05:00
yamamama
f414006e66 Kill Alt. Invin. 2025-12-22 20:05:13 -05:00
NepDisk
7491793989 Fix two small warnings 2025-12-14 00:20:55 -05:00
yamamama
75bdd14cef Refactor cluster filtering
Double-clustering still needs to be done
2025-12-14 00:02:55 -05:00
yamamama
508530d088 Add missing factors to item the item roll tracker
* Track floating item pickups and Hyudoro steals
2025-12-12 23:47:11 -05:00
minenice55
382f1f1a82 make eggmine SADs add to itemlist 2025-12-12 21:56:32 -05:00
yamamama
b937c0519c Reformat the stupid cvar 2025-12-12 21:38:16 -05:00
yamamama
67a0d061da *patrick mouth gif* 2025-12-12 21:38:16 -05:00
yamamama
327035e68e Start work on an item roll tracker
Uses an unordered-map system so we don't loop through every item constantly

Opting for trying to fit everyone on the screen; 320x200 users can deal with it
Scrolling is not yet implemented, and this system isn't netsynched yet
2025-12-12 21:38:15 -05:00
NepDisk
6d6cb09280 Convert most strcmp/stricmp to fastcmp/fasticmp 2025-12-11 13:00:32 -05:00
minenice55
7df2d13c85 let's be funny, flipped by egg mine gives victim one Sad 2025-12-09 17:15:59 -05:00
minenice55
6eb1a6688a get everything working exactly like the prototype 2025-12-09 00:38:57 -05:00
minenice55
82f4599275 make eggmine pop an action like the lua 2025-12-08 22:09:16 -05:00
minenice55
3a74330c5a wall bounce 2025-12-08 21:44:53 -05:00
minenice55
f3e64e3c8a start hardcoding this 2025-12-08 21:32:54 -05: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
1dde02b85a make K_SetItemOut more general 2025-12-06 17:03:39 -05:00
minenice55
6f14af9243 separate out the "equipped item" field
will need more modularization and some coding style standardization (perhaps via K_SetItemOut?)
2025-12-06 16:56:37 -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
minenice55
2c71e4c18a semi-expose the item equipping logic
really just need enough to be able to prototype stuff with
2025-11-28 20:03:23 -05:00
minenice55
7cfdf38cb5 use renderfracs in fancyroulette
also default fancy roulette speed to 3 ticks per cycle
2025-11-23 17:49:52 -05:00
minenice55
50b6e919fe implement xitem-next's version of fancy roulette
now even fancier
2025-11-17 23:48:22 -05:00
GenericHeroGuy
67dd2c875f Add altitem flags, fix alt shrink setting indirect cooldown 2025-11-16 15:47:05 +01:00
GenericHeroGuy
9efc468979 Updated item toggles menu
Invinc is animated on the title screen, superring now gets locked out
Small odds code cleanup since the landmine's result is finally gone
2025-11-15 17:18:33 +01:00