Commit graph

1999 commits

Author SHA1 Message Date
toaster
ce085c3f66 failedtutorialchallenge -> enteredtutorialchallenge
Track ENTERING the challenge, instead of when you fail it
Allows for system-level ironclad prevention against multiple tutorial challenge runs on the same gamedata
2023-11-17 16:54:33 +00:00
toaster
e2a3acc99d Track failing the Tutorial Challenge
I do NOT want to touch ACS today, but all the important pieces are now there for this feature
2023-11-16 23:09:41 +00:00
toaster
0762b93ef2 Tutorial skipping challenge - first pass
- Go to a MainCfg-specified map on its guessed gametype
    - `TutorialChallengeMap = RR_ZonedCity`
- Some unique settings
    - K_CanChangeRules() == false
    - If GTR_CIRCUIT, make it Hard Speed
    - If GTR_BUMPERS, die in one hit
    - If GTR_BOTS, make them all difficulty 13 of the default bot skin
    - No Medals or Spray Cans during the Tutorial Challenge
- Complete the stage in 1st place or don't bother at all
- Has the "Give up" menu option available, but no "Try Again"
- Condition for successfully completing the Tutorial Skip
    - `Condition1 = TutorialSkip`

Related bugfixes:
- Correctly wipe skipstats when returning to the Title/menus
- Typing of `ultimatemode` (hey this isn't accessible by anything right now I wonder)
2023-11-16 21:44:52 +00:00
toaster
97996d1a22 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into other-progression 2023-11-16 13:46:59 +00:00
AJ Martinez
d54d2f6d04 Merge remote-tracking branch 'origin/master' into catholic-vfx 2023-11-14 21:47:51 -07:00
Oni
1c4b568ad9 Merge branch 'time-attack-refinement' into 'master'
Time attack refinement

See merge request KartKrew/Kart!1593
2023-11-14 19:12:52 +00:00
toaster
4379c62276 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into other-progression 2023-11-13 14:45:17 +00:00
AJ Martinez
06bc06869c Lite Steer profile option, itemstate pflags -> player.itemflags 2023-11-09 17:29:26 -07:00
AJ Martinez
954bd85139 WIP: Trickpanel crack experiments 2023-11-08 01:52:07 -07:00
toaster
5ffae81b08 Trick Indicator first pass
The author of this commit doesn't know what it's doing
2023-11-06 01:13:13 +00:00
toaster
ccbcd203dd Adjust PlayerPointerRemove macros + associated to check validity before removal 2023-11-06 01:11:29 +00:00
toaster
89e97a6e76 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into other-progression 2023-11-05 18:52:20 +00:00
Oni
3b04bde5b9 Merge branch 'will-it-blend' into 'master'
Will It Blend

See merge request KartKrew/Kart!1589
2023-11-05 18:45:51 +00:00
toaster
b55b17ccee G_FindMap: Support menuttl as well
Permits "map brakes" and "map balconies"
Secretly just uses the titlecard map name behind the scenes, but the author of this commit didn't want to be too intrusive.
2023-11-04 23:34:07 +00:00
toaster
ce93667fce GTR_CHECKPOINTS: Players will now respawn at Starposts
In addition, tighten up the handling for player angle at spawn time
2023-11-04 23:03:25 +00:00
toaster
993dea580c Fix tracking map completion for Tutorial stages
The author of this commit is hesitant to allow mapwarp to bypass completion requirements under regular circumstances, but happy enough to make the exception for specifically GT_TUTORIAL.
2023-11-04 22:04:29 +00:00
AJ Martinez
c7299274e1 Start with 20 rings if using attack start 2023-11-02 22:44:34 -07:00
AJ Martinez
506ab31f7f Mania-style time trials 2023-11-02 06:51:51 -07:00
toaster
388b14e956 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into will-it-blend
# Conflicts:
#	src/k_podium.c
2023-10-29 12:36:30 +00:00
Sal
cecd81b4aa Podium rank screen polished 2023-10-29 06:04:22 +00:00
toaster
e060e9dadc More consistent handling of special event round icons
- Gametypes have "GPpic" and "GPpicMini" parameters
- These are shown in contexts where a Round Number would be shown in GP, but an eventmode is under way.
- Instead of having different rules to show up on the pause menu, titlecard, and tally/intermission...
    - Pause Menu Roundqueue, Tally, and Intermission have all been aligned to the same rules.
    - As long as the titlecard is standard, it will show the GP Pic per those rules. (GTR_SPECIALSTART and GTR_BOSS still have their unique behaviour here)
2023-10-25 20:34:40 +01:00
toaster
bc8c044bb3 More consistent level init
- encoremode is set to the appropriate value
    - TITLE: Never
    - Podium: GP setting
    - Fixes a bug discovered while repeatedly testing Adventure Example.
- Remove the pointless maptol and globalweather set
    - Already done in P_LoadLevel and P_InitSpecials respectively
2023-10-24 23:10:17 +01:00
toaster
ab0094b8d0 G_Ticker: When retrying the level due to GP life-loss or manual GP/Time Attack retry, maintain the current state of encoremode 2023-10-24 23:10:16 +01:00
toaster
b166c580b9 Merge branch 'titlemap-startpos-interp' into 'master'
Defer title start in intro responder to ticker

Closes #731

See merge request KartKrew/Kart!1581
2023-10-24 09:01:23 +00:00
Oni
a221cb467e Merge branch 'master-mode-all-access' into 'master'
Rank 1 Master always enters Sealed Star

See merge request KartKrew/Kart!1582
2023-10-24 03:25:55 +00:00
Oni
bb537b8de9 Merge branch 'bot-controller' into 'master'
Revamped Bot Controllers

See merge request KartKrew/Kart!1574
2023-10-24 01:03:01 +00:00
AJ Martinez
e2e022dd6a Rank 1 Master always enters Sealed Star 2023-10-22 16:49:31 -07:00
Eidolon
d32823bac8 Defer title start in intro responder to ticker
Fixes KartKrew/Kart#731
2023-10-22 17:56:16 -05:00
Oni
9a315e7e8b Merge branch 'die-less-hard' into 'master'
Don't clear respawn lap when dying (resolves #727)

Closes #727

See merge request KartKrew/Kart!1571
2023-10-21 23:51:40 +00:00
Sally Coolatta
de9780ab3f Bot controller is stored on the sector now
- Moved destination tag off of linedef tag and into args.
- Bot controller values can be changed mid-level with ACS. (Linedefs using type 2004 will still be activated on level load.)
- Add flag to make bots fastfall
2023-10-21 03:36:26 -04:00
AJ Martinez
d3a14d087d Ugliest function in the codebase free 2023-10-19 16:23:38 -07:00
AJ Martinez
9a46eca039 Lastsafelap betweenmaps 2023-10-19 16:22:30 -07:00
toaster
a0df25b5cd UC_TOTALTUMBLETIME: Forgot to update the gamedata 2023-10-19 23:55:45 +01:00
AJ Martinez
bc950c18a2 Persist player.lastsafelap after death 2023-10-19 15:37:35 -07:00
toaster
0478d9a2e3 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into break-through-them-all 2023-10-19 17:32:35 +01:00
toaster
de79dfe983 UCRP_MAPDESTROYOBJECTS
You have to destroy all objects of a certain list of types.
UNLIKE OTHER CHALLENGES, this is dependent on a mapheader parameter!!
The author of this commit just didn't want to create too laggy a condition check.
- `Condition1 = MapDestroyObjects RR_ESPRESSOLANE tables & chairs
- Map RR_ESPRESSOLANE
    - DestroyObjectsForChallenges = MT_ESPTABLE,MT_ESPCHAIR
2023-10-19 17:28:55 +01:00
toaster
acad8754c8 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into break-through-them-all 2023-10-17 23:32:08 +01:00
Sally Coolatta
5d9e813c5e Fixes for titlemaps
- Removed all old dev title screen remainders that were interfering with titlemaps.
- F_VersionDrawer displays on all title screen types
- SA2 intro sound only plays whenever there's am actual title card to show (before it checked for not GS_CEREMONY?)
- Removed redundant customversionstring check in menus (F_VersionDrawer already handles customversionstring)
2023-10-17 17:56:10 -04:00
toaster
f8de2cfc83 UC_PRISONEGGCD
Gamedata minor version was updated again.
(God this was a weirdly big amount of work and it's not even polished.)
- Condition1 = PrisonEggCD [Level that has to be unlocked]
- Approximately every 30 Prison Eggs destroyed, you get a shot at a Prison Egg Drop.
    - The only Prison Egg Drop implemented right now is an Alt Music CD.
    - Your [Wild Prize] is guaranteed to be selected only from conditions associated with levels that are unlocked!
- Only spawns in Grand Prix Bonus Rounds, for netsync and game design.
- The number is fuzzed. If you start the level with 0 Prison Eggs to destroy, it selects a random number of Prisons in the level to bust.
- If you miss the pickup (such as into a deathpit), you'll get another shot in the immediate next Bonus Round you play.

Also:
- The number of Chao Keys you start your gamedata with is now part of the header file, not buried in the wiping function.
- Removed the ACTUAL last object definition vestiges of the Emerald Hunt gamemode.
2023-10-12 21:12:08 +01:00
James R
fa89576f34 Move freecam state to camera_t, lets splitscreen players use freecam independently of each other 2023-10-08 14:26:21 -07:00
toaster
8c734d3646 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into break-through-them-all 2023-10-07 12:42:07 +01:00
toaster
8f1bea71de G_UpdateRecords: Do not destroy existing record data if you experience other types of modeattacking on the same map
Should not have been possible to trigger with current menu setup, but was a hypothetical danger
2023-10-06 18:47:55 +01:00
toaster
21a4e7ae43 Remove last vestiges of Emerald Hunt behaviour from vanilla SRB2
Was in places the author of this commit needed to look
2023-10-05 22:57:39 +01:00
toaster
caa8d66035 G_DoCompleted: Refactor in anticipation of new Challenge conditions
- Stop sounds first, as before.
- Do most player updates before M_UpdateUnlockablesAndExtraEmblems is called
    - Allows us to make Challenges dependent on end-of-round Standings
- Then Challenges and gamedata...
- Then, group all important game state updates together.
- THEN, finally assign PF_NOCONTEST when exitlevel occours.
    - Prevents No Contest-based Challenges from firing cheesily
- Finally, Intermission-related material (also as before).
2023-10-05 14:19:46 +01:00
James R.
90d8a9643f G_CanView: unconditionally let view a player already viewed on a different splitscreen 2023-10-03 21:28:33 -07:00
James R.
d020c9faaa Add G_FixCamera, reset camera, angle and view interpolation 2023-10-03 21:28:33 -07:00
toaster
911588a5fe Challenges Tutorial messages
Currently exists for:
- Generating a Chao Key
- Attempting to use a Chao Key on a Major Challenge
    - Only shows after Generating a Chao Key just so it doesn't fire before you know what's going on
Text is preliminary
2023-09-29 00:25:51 +01:00
toaster
07afe6cb06 Challenge Grid is 5 tiles high now again
I'm sorry, it was just TOO SWAG.
Gamedata minor version increment
2023-09-28 22:30:26 +01:00
toaster
0b5fd330e6 Remove HOSTTESTERS
Now you can host for testers using a bog-standard DEVELOP build.
2023-09-26 23:56:35 +01:00
toaster
49595a621c GS_CEREMONY: Fix fade-in keeping screen blank 2023-09-20 00:43:29 +01:00