Commit graph

2185 commits

Author SHA1 Message Date
James R.
c50fdc254c Merge branch 'failed-timeattack-keys' into 'master'
G_DoCompleted: Gamedata-handling updates

See merge request KartKrew/Kart!1738
2023-12-30 08:58:22 +00:00
AJ Martinez
2a9351f36e Adjust bot difficulty adjustments 2023-12-29 18:09:13 -07:00
James R.
d3cb721381 Merge branch 'time-attack-rng' into 'master'
Use deterministic RNG seed for Time Attack

See merge request KartKrew/Kart!1741
2023-12-29 13:39:54 +00:00
Sally Coolatta
643538ab5a Use deterministic RNG seed for Time Attack
Based off of the hash from the map's lump name.
2023-12-28 22:10:40 -05:00
toaster
6b984eab55 G_DoCompleted: Gamedata-handling updates
- Don't give Chao Keys, roundsplayed for failing a round in time attack modes (Prison Break/SPB Attack/Special Mode)
- Always defer a save, since playtime is constantly incremented over the course of the round and may not be saved with crashes at certain points
2023-12-28 16:25:54 +00:00
toaster
57724baf9f Merge branch 'fix-downward-camera' into 'master'
Fix slope camera in Software mode

Closes #626

See merge request KartKrew/Kart!1714
2023-12-28 14:56:40 +00:00
toaster
2a1b2d427c G_DoLoadLevelEx: Don't fake profile set when transitioning to titlemap
Fixes Profile not being selectable on game boot, solving Charyb's recent issue
2023-12-27 17:07:03 +00:00
toaster
43880b4a4b G_LoadGamedata: Add a sanity check when imbibing pendingkeyroundoffset
Should solve Laz's infinite key increment hell
2023-12-26 15:52:22 +00:00
Oni
710e561981 Merge branch 'cmd-const' into 'master'
Enforce const in bot ticcmds

See merge request KartKrew/Kart!1705
2023-12-23 22:40:52 +00:00
James R
8f9c383188 Partial revert 89c503135a: fix aiming range for downward slope camera 2023-12-23 08:55:47 -08:00
toaster
5ce27ee799 GP bots: Difficulty nerf on GP level restart is now gamespeed-dependent, not a constant, per VC request
Easy, Normal: -3
Hard: -2
(Master continues to be -0)
2023-12-23 16:45:43 +00:00
Sally Coolatta
abde576c58 Enforce const in bot ticcmds
There were a few remaining cases of bot ticcmd generation editing player structures directly. Fix all of this and make as much of it pass const player pointers so this physically can't be allowed to happen ever again. Appears to improve bot sync in netgames & demos bot support, but I have not tested extensively.
2023-12-22 23:28:08 -05:00
Sally Coolatta
1df1e841d2 Continues reduce bot level by 2 2023-12-22 20:54:11 -05:00
toaster
a4c91f66ec Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into tutorial-pass 2023-12-17 12:09:06 +00:00
James R
acbb4cf912 Revert change to gamemap default value
- Some code assumes mapheaderinfo[gamemap-1] is valid
  before gamemap is set

blame 5d0c062785
2023-12-10 22:02:32 -08:00
toaster
6c7a1c14e5 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into tutorial-pass 2023-12-08 13:08:43 +00:00
Oni
6378c9d544 Merge branch 'no-position-no-music-reset' into 'master'
Do not reset music in Sealed Stars and Tutorials

See merge request KartKrew/Kart!1676
2023-12-08 04:37:17 +00:00
James R
b6c7a42a97 Pause menu: changing gametype goes to vote screen
- If you change it during the vote screen, voting
  restarts.
2023-12-06 00:00:54 -08:00
James R
f7eddffdb4 Give GTR_NOPOSITION to GT_SPECIAL 2023-12-04 20:14:00 -08:00
toaster
e91115a8fa Goner Setup: Cook 2
- More dialogue
- Restrict access to your choices based on your progress through the Goner Setup.
- Save progress through the setup to gamedata
    - Resets to beginning when Challenges is cleared
- Passwords
    - Only permit the password entry in like the first two seconds
        - Preemptively disarms potentially annoying people in stream chats
    - Make wrongwarp also quit the game on exit instead of returning to the title screen
    - Add GDQ cheats
        - `savetheanimals`
        - `savetheframes`
        - Both do practically the same thing, with slightly modified dialogue.
            - Skips all of the normal dialogue.
            - Performing a social experiment on anyone who might stream this game at a charity event. :)
2023-12-03 22:34:06 +00:00
toaster
30383ba82f Replace a whole bunch of copypasted boilerplate with direct call to Command_ExitGame_f
Fixes not going back to the Title Screen at the cusp of the game's true beginning.
Also generally cleaner code
2023-12-01 17:03:37 +00:00
toaster
d41188ded3 Permit re-entering the Tutorial Challenge if the full game is accessible to you 2023-11-29 18:51:52 +00:00
James R
5d0c062785 Add g_reloadingMap, true if the map is restarted/retried 2023-11-27 06:28:29 -08:00
James R
d3f9c6e826 Remove mapmusflags 2023-11-27 05:38:20 -08:00
Oni
25d10e382a Merge branch 'locked-cuprow' into 'master'
Second row of cups is invisible if none of them are unlocked

See merge request KartKrew/Kart!1652
2023-11-22 07:30:36 +00:00
toaster
21f152989d Clear separation between basegame and mods
- Always force a page seperation between the last core files cup and the first modded cup
- Lost and Found sits exactly between them
    - If any cup on the last page of basegame is unlocked, place LnF on the last core page
    - Else, LnF is the first "cup" on the first Modded page
    - It's done this way so no Core material is spoiled if you haven't unlocked it yet. We want people to believe RR contains only 7 cups unless they go above and beyond

Also address Volt's bug report: Prevent the first page of cups from being overridden if everything is locked
2023-11-21 22:59:12 +00:00
toaster
0dd4fa52e3 Increment SAV_VERSIONMINOR 2023-11-19 19:14:47 +00:00
toaster
b09a9b40c4 Account for Hidden Palace-like replacement levels in the round queue and ranking systems
- When a nextmapoverride is in play, do not insert the just-played map into the GP Rank
- Put all the behaviour that determines which Round icon to show in exactly one places

Also, fix a bug where it would show the skin realname for a spectating player's tally instead of the ROUND text.
2023-11-19 18:01:02 +00:00
toaster
146666fad4 Use K_IsPlayerLosing for failure of Tutorial Challenge instead of recreated conditions, to reduce the number of moving parts 2023-11-18 20:01:38 +00:00
toaster
a55803b690 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into other-progression 2023-11-18 18:00:05 +00:00
toaster
55c6602473 Review: Don't award map visitation when the tutorial challenge is queued up, either 2023-11-18 12:15:36 +00:00
toaster
1ef427631e Review: Fix incorrect levelsearch apparatus
- M_LevelListFromGametype: Correctly wipe tutorial status when changing from tutorial to gametype with cups
- G_GetFirstMapOfGametype: Fix tutorial handling, gametype's datatype
- M_InitExtras: to prevent duplicated code, use G_GetFirstMapOfGametype
2023-11-18 11:49:17 +00:00
toaster
dc4e14d9d9 G_DoCompleted: Use gamedata->deferredsave to reduce the number of intermediate gamedata saves 2023-11-17 16:58:38 +00:00
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
Oni
f54ad00662 Merge branch 'mega-barrier' into 'master'
Mega Barrier

See merge request KartKrew/Kart!1636
2023-11-17 08:53:41 +00:00
James R
8e23d66540 CL_ClearPlayer, G_PlayerReborn: clear powerup.barrier 2023-11-16 21:08:30 -08: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
AJ Martinez
c4e1a98e6b Fix tournament mode cheat saving 2023-11-16 13:58:06 -07: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