Commit graph

26337 commits

Author SHA1 Message Date
toaster
616d2bb87a Menu Messages only animate when menuwipe is stopped
Reduces the amount of moving parts we have to worry about. Fire M_StartMessage at the same time you change a menu without worry!
2024-03-03 00:24:31 +00:00
toaster
e8523b69f0 Sealed Star re-ordering (resolves #606)
- If emerald not yet collected on that cup, pick the first uncollected emerald, then get the cup's CUPCACHE_SPECIAL with that ID to pick the stage
- Already collected emeralds retain their swappage across gamedata saves
- Returns to normal order if you get all 7 OR Special Mode is unlocked (chao key? debug? password in modded games? sky's the limit)
- Pops up a Message from the Stars telling you the gems have been returned to their natural place
- Add-ons will always use their dedicated sealed star, since it's unordered material

If it weren't so last minute I could have a better solution for GP Backups, but right now what I've gone for is it always trusts whatever G_GPCupIntoRoundQueue does AS LONG AS THE COURSE ISN'T THE ONE YOU'RE RELOADING INTO. If it IS, then it checks to see if it's exactly what's been saved, and complains (with the generic error message, unfortunately) if it isn't.
2024-03-03 00:24:31 +00:00
Oni
b00255e333 Merge branch 'replay-stupid-parties' into 'master'
Emulate parties when watching replays

Closes #1090

See merge request KartKrew/Kart!1977
2024-03-02 21:29:43 +00:00
Oni
b2959d8b48 Merge branch 'shitty-signs' into 'master'
Add shittysigns cheat

See merge request KartKrew/Kart!1991
2024-03-02 20:28:03 +00:00
Oni
87d189ee09 Merge branch 'extend-noshowhelp' into 'master'
Prevent CV_NOSHOWHELP cvars from being accessed or modified through the console at all

See merge request KartKrew/Kart!1978
2024-03-02 20:27:05 +00:00
Oni
48859ba80e Merge branch 'move-your-car' into 'master'
Move your car

See merge request KartKrew/Kart!1990
2024-03-02 20:26:53 +00:00
AJ Martinez
052d69e835 Don't set shittysigns value directly 2024-03-02 04:43:22 -07:00
AJ Martinez
81bb3500a4 Merge remote-tracking branch 'origin/master' into shitty-signs 2024-03-02 04:32:05 -07:00
AJ Martinez
47a9cce133 Add shittysigns cheat 2024-03-02 04:27:41 -07:00
AJ Martinez
c8757b10b2 Merge branch '4th-gear' into 'master'
Add "let's get fired up!" cheat (4th Gear)

See merge request KartKrew/Kart!1970
2024-03-02 10:38:02 +00:00
AJ Martinez
a1fd0f5353 Merge remote-tracking branch 'origin/master' into move-your-car 2024-03-02 01:25:47 -07:00
AJ Martinez
4fc6567dc6 Merge branch 'ring-shooter-fixes' into 'master'
Ring Shooter polyobject interaction + Ring Shooter cooldown

Closes #989

See merge request KartKrew/Kart!1968
2024-03-02 07:58:13 +00:00
AJ Martinez
9d00cd4851 Merge branch 'instant-ufo-sound-update' into 'master'
UFO sound fixups

See merge request KartKrew/Kart!1979
2024-03-02 07:57:58 +00:00
AJ Martinez
8f795d7b5f Merge branch 'altmusic-demo-consis' into 'master'
(demo v9) Demo save unlocks and mapmusrng

Closes #1004 and #1093

See merge request KartKrew/Kart!1981
2024-03-02 07:57:41 +00:00
AJ Martinez
75adf359cb Merge branch 'fix-sliptide-extension' into 'master'
Fix sliptide extensions activating out of fast drifts

See merge request KartKrew/Kart!1971
2024-03-02 07:57:09 +00:00
AJ Martinez
0d417a5055 Use guard break sound for Special UFO destruction 2024-03-01 18:36:19 -07:00
James R
e00b676dd8 Replays: fix camera reset when promoting splits
- Off-by-one error
2024-03-01 16:56:44 -08:00
Oni
2641ba2380 Merge branch 'tether-refinements' into 'master'
Bot tether refinements

See merge request KartKrew/Kart!1975
2024-03-01 23:51:49 +00:00
Eidolon
ad538b3bb9 Fix returning to menu after TA replay 2024-03-01 17:38:22 -06:00
Eidolon
20cb01fb94 (demo v9) Demo save unlocks and mapmusrng
Fixes KartKrew/Kart#1093
2024-03-01 17:27:41 -06:00
AJ Martinez
385fc27303 Special UFO: Don't wait for hitstop to play new damage hum 2024-03-01 15:53:57 -07:00
AJ Martinez
a87e557e4e Immediately update UFO health hum 2024-03-01 15:51:18 -07:00
James R
a9e181cde5 Prevent CV_NOSHOWHELP cvars from being accessed or modified through the console at all 2024-03-01 07:34:20 -08:00
James R
b3ff71ad0f Fix cv_mentalsonic too 2024-03-01 07:31:44 -08:00
James R
fff200d174 Save 4thgear cheat in replays
For a cvar cheat to save in replays do this:

- Make sure it's a netvar
  - Only netvars are saved in replays
  - Use OnlineCheat
- Make sure it's not CV_HIDDEN
  - CV_HIDDEN cvars are not added to the linked list, so
    replays cannot find them
  - Use CV_NOSHOWHELP instead, to prevent people from
    modifying it in console
- Use CV_Set or CV_SetValue to change a cvar's value
  - Setting cvar_t.value directly will not change its
    string value
  - The string value is used to determine how it should be
    saved in replays
2024-03-01 07:28:19 -08:00
James R
adebfb000c Replays: keep party in sync with current viewpoints
- More and more parts of the game rely on parties
- Parties are assumed to match the displayplayers
- This fixes A/B/C/D nametags
2024-03-01 06:09:07 -08:00
James R
3179183df7 Replays: do not initialize displayplayers to INT32_MAX
- Only demo playback does this and it's a mystery why
2024-03-01 06:04:20 -08:00
James R
1eb5dabbd0 Improve displayplayers command
- Tabulate data
- Show party members
2024-03-01 06:03:21 -08:00
James R
567a7cf4f1 Add G_LocalSplitscreenPartyMember 2024-03-01 06:03:21 -08:00
AJ Martinez
b5e4311704 Merge remote-tracking branch 'origin/master' into tether-refinements 2024-03-01 00:42:38 -07:00
AJ Martinez
80990c82b0 Remove debug bot tether block indicator 2024-02-29 21:56:19 -07:00
AJ Martinez
4f5063f71f Fix sliptide extensions activating out of fast drifts 2024-02-29 18:34:36 -07:00
Oni
f7f98ff6d1 Merge branch 'last-lap-points' into 'master'
Fix player->lappoints for ending last lap (resolves #1086)

Closes #1086

See merge request KartKrew/Kart!1969
2024-03-01 01:13:09 +00:00
AJ Martinez
d4d426e64b Add "let's get fired up!" cheat (4th Gear) 2024-02-29 17:43:07 -07:00
toaster
2ac891abe8 Fix player->lappoints for ending last lap
- Previous order:
    - K_HandleLapIncrement
        - K_UpdateAllPlayerPositions
            - Sets player->position
            - !! Relies on player->exiting
        - Set lap points
            - !! Based on player->position
        - Set latestlap
        - P_DoPlayerExit
            - Set player->exiting
            - K_UpdateAllPlayerPositions
                - Sets player->position
                - Relies on player->exiting
            - Overwrites latestlap if not set
            - K_InitPlayerTally
                - Based on lap points
- New order:
    - K_HandleLapIncrement
        - Set latestlap
        - If ending last lap, P_DoPlayerExit
            - Set player->exiting
            - K_UpdateAllPlayerPositions
                - Sets player->position
                - Relies on player->exiting
            - Overwrites latestlap if not set
            - [NO LONGER INITS TALLY]
        - OTHERWISE, K_UpdateAllPlayerPositions
            - Sets player->position
            - Relies on player->exiting
        - Set lap points
            - Based on player->position
    - P_PlayerAfterThink
        - If player is exiting and no tally, K_InitPlayerTally

Hopefully you can see the magnitude of the gordian knot I had to untangle to fix this
2024-02-29 20:50:04 +00:00
James R
3402c3af64 Polyobjects: add po_movecount member to mobj_t instead of using lastlook
- Polyobject carrying set lastlook on mobjs for internal
  tracking
- lastlook is used by some objects to track their own
  state
- Ring Shooter uses lastlook to remember which player
  summoned it
- A Ring Shooter spawned right next to a polyobject would
  become buggy; If its owner player pressed the respawn
  button again before the Ring Shooter despawned, that
  player would be teleported back to the Ring Shooter
  instead of spawning a new Ring Shooter (which would be
  the correct behavior)
2024-02-29 03:36:07 -08:00
James R
4ccb9b22c8 Ring Shooter: add a 2 second cooldown after respawning before you can touch a Ring Shooter
This does not prevent you from using the respawn button to
summon a Ring Shooter.

- Ring Shooter only tracks the last player who touched it,
  to prevent that player from reusing it
- If another player touches the Ring Shooter, it loses
  track of the original user
- Near a Block Lightsnake waypoint, this would enter an
  endless loop where both players are able to touch the
  Ring Shooter and use it to respawn, placing them right
  above the Ring Shooter (and the cycle repeats)
2024-02-29 03:28:53 -08:00
Oni
1990c10635 Merge branch 'title-tempest' into 'master'
Title and Credits attract fixes

Closes #1056 and #1055

See merge request KartKrew/Kart!1950
2024-02-29 10:25:25 +00:00
Oni
786e4a098d Merge branch 'throwdir-restoration' into 'master'
Improve analog handling / input display

See merge request KartKrew/Kart!1967
2024-02-29 10:25:07 +00:00
Oni
54c58580e6 Merge branch 'waypoint-distance-check' into 'master'
Prevent waypoints from updating much further ahead in the course

Closes #912

See merge request KartKrew/Kart!1966
2024-02-29 10:24:36 +00:00
AJ Martinez
0052d15fc8 Improve analog handling and input display 2024-02-28 20:08:25 -07:00
James R
9d4f57ddfb Auto respawn after 35 tics if distancetofinish jumped too much 2024-02-28 18:13:01 -08:00
James R
b4402a9486 Do not let distancetofinish change too drastically
- When updating nextwaypoint, check if distancetofinish
  jumps more than 32768 units (8192 in 1/4 scale maps)
- If it jumps this much, do not update the waypoints
- This prevents nextwaypoint from skipping ahead in a map
  where waypoints from later in the course overlap
  waypoints from earlier
2024-02-28 18:10:46 -08:00
James R
3179669ce7 Refactor player waypoint code
- Condense K_GetPlayerNextWaypoint and
  K_UpdateDistanceFromFinishLine into slightly smaller
  functions
- Rename K_GetPlayerNextWaypoint to
  K_SetPlayerNextWaypoint
- Add K_UpdatePlayerWaypoints
2024-02-28 18:06:32 -08:00
James R
9d9dac6e96 debugwaypoints: raise HUD a little
This is still obscuring lap counter if cheatchecks are
present.
2024-02-28 17:45:22 -08:00
AJ Martinez
64dd306138 Revert "Make ticcmd throwdir -1, 0, or 1, add deadzone"
This reverts commit 9028668104.
2024-02-28 18:33:07 -07:00
AJ Martinez
20c0c4d591 WIP: Limit bot tethering while turning 2024-02-28 18:19:49 -07:00
Eidolon
e1db54198f Merge branch 'cmake-find-ogg' into 'master'
cmake: Add FindOgg find module

See merge request KartKrew/Kart!1948
2024-02-29 01:10:43 +00:00
Eidolon
4de5b57d27 Merge branch 'tree-cleanup' into 'master'
Delete unused stuff in tree

See merge request KartKrew/Kart!1965
2024-02-29 01:10:21 +00:00
Oni
762a029dd9 Merge branch 'splitscreen-spectate-switch' into 'master'
Splitscreen Spectate Switch (resolves #981)

Closes #981

See merge request KartKrew/Kart!1964
2024-02-29 00:53:02 +00:00