Commit graph

2240 commits

Author SHA1 Message Date
toaster
e7f111c25a 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
2022-10-15 14:57:35 +01:00
toaster
f281f47c6f 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.
2022-10-14 18:34:43 +01:00
toaster
c2ef5a32e9 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
2022-10-13 18:14:48 +01:00
toaster
44eb099cfb Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into special-stages 2022-10-11 15:44:32 +01:00
Sally Coolatta
2ac062e5b3 Merge branch 'master' into udmf-cherrypick 2022-10-10 19:34:11 -04:00
toaster
d364e5a5f6 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into rename-kart-commands
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
2022-10-10 17:34:28 +01:00
Sally Coolatta
0614a8739c Duel items use args 2022-10-10 10:48:44 -04:00
MascaraSnake
3b971835ee Add Lua backwards compatibility for FOF flags 2022-10-09 01:56:50 -04:00
Nev3r
5c9599f0a9 "UDMF: The whole thing" merged
See merge request STJr/SRB2!1714

Barely any RR features reimplemented
2022-10-09 01:13:37 -04:00
James R
641d3c89b9 Merge branch 'spb-debug' into 'master'
Restore SPB force-seek define as 'spbtest' cvar

See merge request KartKrew/Kart!725
2022-10-03 02:14:41 +00:00
James R
f3545a6e6f Merge remote-tracking branch 'origin/duel-stuff' 2022-10-02 19:10:22 -07:00
AJ Martinez
224bd9baf3 Don't DEVELOP guard spbtest 2022-10-02 04:12:03 -07:00
AJ Martinez
47cdce239a Only register spbtest in DEVELOP 2022-10-01 22:26:17 -07:00
AJ Martinez
6a7c5050ad Restore SPB force-seek define as 'spbtest' cvar 2022-10-01 21:46:26 -07:00
Sally Coolatta
7b7cbbbf26 Fix oddities with duel items not always spawning 2022-10-01 22:58:58 -04:00
Sally Coolatta
d19924d96d Merge branch 'master' into duel-stuff 2022-10-01 21:46:02 -04:00
Sally Coolatta
ef9975709c Actually add proper item table 2022-10-01 21:36:17 -04:00
Sally Coolatta
4ee46c74d7 Basic start on Special Stages 2022-10-01 21:32:55 -04:00
James R
f891535065 Remove kartdebugcheckpoint, merge into debugwaypoints 2022-10-01 17:44:07 -07:00
James R
08f9628e6c Remove kartminimap, kartcheck, kartcomeback cvars 2022-10-01 17:04:48 -07:00
James R
05dd7d7871 Merge remote-tracking branch 'origin/master' into HEAD 2022-10-01 14:45:39 -07:00
James R
f3668fbd7c Merge branch 'top-final' 2022-09-29 10:52:45 -07:00
James R
8529e8b95e Make Garden Top backwards throw leap consistent across player scales 2022-09-29 10:02:28 -07:00
James R
56a5432f41 Adjust most player physics for Garden Top
- Auto accel
- 800% acceleration
- 110% top speed
- Infinite tether like Lightning Shield

- Resists going upward on slopes
- Less friction

- Can always turn your sprite
- Turning speed does not get weaker at high speeds
- Turning speed is normal underwater
- Keeps moving in momentum direction, regardless of how
you turn
- Releasing a drift redirects all your momentum in that
direction

- Floats over bananas, damage sectors and offroad
- No stair janking while floating

- Hold drift for extra gravity. Not only does this fast
fall (this stacks with true fast falling), it builds
momentum down slopes too!

- Parries Big Players (Grow), Invincibility, Flame Shield
and, of course, other Tops -- all except if you're
grinding
- Wipes out anyone you touch
- Infinite weight like Bubble Shield

- Does not water skip
- Does not water run while holding drift
2022-09-28 02:01:37 -07:00
James R
5063a4acf1 The Garden Top
This is all the visual effects and item logic of the Top
minus (almost all [1]) physics adjustments when a player is
riding one.

While on a Top:

- Otherwordly humming while floating

- Cannot drift [1]. Instead, holding drift begins grinding
the Top into the ground -- sparks fly out
- Sprite tilts left and right as you turn
- No wheel screech when turning too far
- Speed lines while holding drift
- Tripwire Boost effect scales to cover you AND the Top

- One hit and you lose it

- Throwing forward, getting hit or just losing it because
you were in first place for too long: the Top flies out
from under you and begins snaking like crazy
- Throwing backward also makes the Top fly out from under
you but it also thrusts you forward. The Top dies
instantly so it's not dangerous ;-)

- If you're in first for too long, it begins vibrating
- If you tumble, it dances across your entire screen

A loose top will tumble anyone it hits.
2022-09-28 02:01:37 -07:00
James R
aba30a1c16 Rebalance item odds around Garden Top 2022-09-28 02:01:35 -07:00
James R
77bc259986 Separate water skipping condition into K_WaterSkip 2022-09-28 00:07:26 -07:00
James R
7b301452cc Add Garden Top related states
MT_GARDENTOP
S_GARDENTOP
KITEM_GARDENTOP
KSHIELD_TOP
2022-09-28 00:07:25 -07:00
James R
d66b82605b Cleanup order and indentation of item definitions 2022-09-28 00:07:00 -07:00
Sally Coolatta
f9c4f66931 Add duel bomb objects
Basically a landmine, but strafes back and forth. Currently uses SPB sprites, IDK if we'll end up replacing it later.
2022-09-28 01:47:56 -04:00
Sally Coolatta
d7be3d3aca Add Duel objects
- Banana, Eggman Items, Proxi Mine, Land Mine, Hyudoro, and Drop Targets are now placeable in maps.
- By default, will only appear when in 1v1s. (Extra flag can be checked to enable spawning in all modes.)
- Most of these objects will need tweaks to account for being placeable now.
2022-09-27 22:43:45 -04:00
Sally Coolatta
de506b8ff1 Merge branch 'master' into water-skip-conditions 2022-09-27 19:21:20 -04:00
Sally Coolatta
e34ec94721 Smoothly adjust underwater turn nerf
The actual issue was that turning was nerfed by a flat x0.5 when strafing was enabled, but the strafe amount was speed based. This meant that you got way less turning at low speed, and no strafe to make up for it.
2022-09-27 18:14:44 -04:00
Sally Coolatta
85499045f9 Merge branch 'master' into cheats-streamline 2022-09-27 15:41:17 -04:00
Sally Coolatta
afc2a0dcdc Properly spawn effects for the other objects 2022-09-27 13:09:30 -04:00
Sally Coolatta
841bcf3619 Allow non-players to water skip/run
Water skipping is enabled for Orbinaut, Jawz, and Ballhog currently. Jawz can water run, as long as their target is on/above the plane they're at -- once their target goes into the water, they'll start skipping.
2022-09-27 12:31:33 -04:00
Sally Coolatta
81926947d5 Merge branch 'master' into water-skip-conditions 2022-09-27 12:02:34 -04:00
Sally Coolatta
884f710269 Add minimum strafe to water physics 2022-09-27 11:43:55 -04:00
Sally Coolatta
f6b62b6ac6 Clean up water skip conditions
- Use Digital Empire's water running conditions (fully prevents ever being able to water-run on water that isn't level)
- Code cleanup of other parts of this code
- Made the threshold for water skipping much more strict
- Fixed water skip being scaled to player scale instead of map scale
- Make water run / tripwire easier for rubberbanding bots
2022-09-27 11:07:25 -04:00
toaster
d8bb2fe8fe Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into setangle
# Conflicts:
#	src/k_kart.c
#	src/p_enemy.c
#	src/p_mobj.c
2022-09-26 16:25:06 +01:00
Sally Coolatta
21d32511a5 Merge branch 'master' into better-splash 2022-09-25 20:01:27 -04:00
Sally Coolatta
4165fae63f Merge branch 'master' into cheats-streamline 2022-09-25 17:29:38 -04:00
VelocitOni
1d2e1420f6 Merge branch 'master' into cheats-streamline 2022-09-25 14:27:17 -04:00
Sally Coolatta
15edb40eb5 Merge branch 'master' into rng-states-2 2022-09-25 14:04:42 -04:00
Sally Coolatta
139d6f4a49 Merge branch 'master' into rng-states-2 2022-09-25 14:04:19 -04:00
Sally Coolatta
4b51f12c09 Merge branch 'master' into better-splash 2022-09-25 13:39:55 -04:00
Sally Coolatta
ead1c59d58 Weight dist even less heavily 2022-09-25 12:41:23 -04:00
Sally Coolatta
13e6dfb79e New Jawz swap prevention
Instead of a static 5 tic delay each time the reticule changes, its a timer that increments the longer your target is on someone, up to 10 tics. When trying to swap targets, it will reduce this timer, and only swap when it reaches 0.
2022-09-25 12:29:18 -04:00
Sally Coolatta
13e94dfee0 Polish up Jawz target conditions slightly 2022-09-25 12:14:21 -04:00
Sally Coolatta
bbec083d4e Polish backwards behavior 2022-09-25 12:04:08 -04:00