Commit graph

26974 commits

Author SHA1 Message Date
toaster
56e8964427 Challenges Menu: Keep your last focus when returning to it without a new Tile being unlocked
- Going back to it on the menus picks up where you left off
- Going back to it after earning ONLY a Chao Key(s)

Possibly useful for full-game 9-hour speedruns, where unlock tile identification/breakage could genuinely be a part of routing.
2024-03-19 19:30:16 +00:00
toaster
9fd44f21da Less hostile, sheen-like highlight if a lot of the Challenge Grid is still pending 2024-03-19 19:30:16 +00:00
toaster
90ac08fb0a Don't force newline for OR in Challenge descriptions 2024-03-19 19:30:16 +00:00
toaster
e62c16c502 Challenges Menu: Scroll bar
Goes hand in hand with the previous commit's highlight feature at being accessibility UI polish for the intimidating number of Challenges we have.
Finally, there's a consistent frame of reference for where you are scrolling through the board!
2024-03-19 19:30:16 +00:00
toaster
966ce7a256 Challenges Menu: Highlight overlay for newly unlocked tiles that haven't yet been focused on
Game design solution to the problem of multiple Challenges being unlocked at once not being clear enough.

Uses the `unlockpending` array for gamedata save purposes, which I was always intending to use for this purpose but never quite got around to.
2024-03-19 19:30:16 +00:00
toaster
aad69b5209 Challenges Menu: Indicate a new Chao Key by putting the menu cursor hand directly next to it
I don't want to pop up the tutorial menumessage every time, which was the other proposed solution
2024-03-19 19:30:16 +00:00
toaster
78266e2dad Rename "Lost And Found" to "Lost & Found", as intended
We have the & symbol in the Cup font now, so doing it JUST before it's too late
2024-03-19 19:30:16 +00:00
toaster
32afe48aab M_StartControlPanel: Guarantee titlemap contexts have internal server stopped when entering menu
Guarantees netUnlocked is correctly updated in most contexts, since that's dependent on SV_ResetServer, which isn't called if a server is running
Also guarantees titlemapinaction isn't true during regular play
2024-03-19 19:30:16 +00:00
AJ Martinez
b7825dba88 Merge branch 'sort-staff-replays' into 'master'
Sort staff replays

Closes #1171

See merge request KartKrew/Kart!2137
2024-03-19 12:30:48 +00:00
James R
60a1ac320a Replays: support old demo format 0x0009
- Old staff ghosts remain compatible
2024-03-19 01:25:56 -07:00
James R
5445d59d57 Replays: larger buffers for player name, skin name, color name; bump demo version 0x0009 -> 0x000A
- Name buffers are the same size as everywhere else
  - Billiards Cactus no longer gets cut short
  - Long player names no longer get cut short
- System in place to allow easily changing the buffer
  sizes across all the demo code
2024-03-19 01:23:51 -07:00
AJ Martinez
628be3950f Hide useless instawhip charge between picking up and confirming item boxes 2024-03-19 01:22:44 -07:00
James R
2cb62c8663 devmode replay: show demo format version 2024-03-19 01:12:59 -07:00
James R
92bc1c2a17 Sort staff replays
- This lets the 1st replay on the "Replay Staff" selector
  actually be the fastest one
2024-03-18 22:16:12 -07:00
AJ Martinez
4d4f6f3bdd Merge branch 'fix-splitscreen-tally-ff-inter-music' into 'master'
Intermission: Don't retrigger music, even if tally ffwd sets countdown

See merge request KartKrew/Kart!2136
2024-03-19 03:51:16 +00:00
AJ Martinez
33b73f5121 Merge branch 'fix-replay-input-vflip' into 'master'
Input display: fix flipped vertical inputs when reading ticcmds

Closes #1157

See merge request KartKrew/Kart!2135
2024-03-19 03:51:08 +00:00
AJ Martinez
d7030fd912 Merge branch 'tally-ff-intermission-music' into 'master'
Tally: Fix intermission music being played on rounds without intermissions

Closes #1178

See merge request KartKrew/Kart!2134
2024-03-19 03:50:58 +00:00
AJ Martinez
6af971cd45 Merge branch 'fix-debug-item-default-value' into 'master'
debugitem: fix default value

See merge request KartKrew/Kart!2132
2024-03-19 03:50:52 +00:00
AJ Martinez
e369bbc538 Merge branch 'cpu-names-conflict' into 'master'
CPU Naming conflict

See merge request KartKrew/Kart!2131
2024-03-19 03:50:44 +00:00
AJ Martinez
604d4d21db Intermission: Don't retrigger music, even if tally ffwd sets countdown 2024-03-18 20:23:27 -07:00
AJ Martinez
dc31ae20c6 Input display: fix flipped vertical inputs when reading ticcmds 2024-03-18 19:56:02 -07:00
AJ Martinez
c7aac9f119 Merge branch 'prison-pickup-clown' into 'master'
Prison Pickup Clown

See merge request KartKrew/Kart!2130
2024-03-19 02:10:58 +00:00
AJ Martinez
57e7a735ce drawPing: Remove packet loss debug condition 2024-03-18 18:43:19 -07:00
AJ Martinez
17cd1550a1 Tally: Fix intermission music being played on rounds without intermissions 2024-03-18 18:38:41 -07:00
AJ Martinez
50aadee23e drawPing: Colored border packet loss indicator 2024-03-18 18:08:48 -07:00
AJ Martinez
858eecaef3 Merge branch 'attract-fixes' into 'master'
Attract mode and Credits fixes

Closes #1053, #1166, and #1167

See merge request KartKrew/Kart!2128
2024-03-19 00:46:53 +00:00
AJ Martinez
2d2dd3fbe1 Merge branch 'two-trucks' into 'master'
Add SalCRT Sharp

See merge request KartKrew/Kart!2127
2024-03-19 00:04:49 +00:00
James R
3f5a9f85de debugitem: fix default value 2024-03-18 15:56:47 -07:00
toaster
a161df579f EnsurePlayerNameIsGood: Remove trailing whitespace, instead of just failing on it
Interesting error with its recursive duplication resolving exposed by the previous commit!
2024-03-18 19:24:42 +00:00
toaster
a4cec98c26 K_SetNameForBot
Func specifically for setting name for CPU players.
Lets anything go in offline mode, as per previous behaviour.
In online mode, attempts to append a slot-specific char before running EnsurePlayerNameIsGood (which removes characters at the end if a pre-existing match is found).
2024-03-18 19:23:55 +00:00
toaster
1ef3063772 EnsurePlayerNameIsGood: Only evaluate strlen once
Also has a slightly better chance of conflict avoidance for its absolute worst case scenario
2024-03-18 19:17:34 +00:00
toaster
d2ddeb65f2 M_UpdateNextPrisonEggPickup: Stop trying to be so pre-optimised and just do the job plainly
Should resolve the crash which for some reason doesn't have an issue to reference here

Also, for `debugprisoncd On`:
- Extensive debug logging
- Disable the "if all achieved, still force a pre-existing CD" behaviour
    - The list is empty if you've achieved every Prison CD and then restart the game, so it wasn't consistent at always making something. Without that kind of reliability I think it's more important for it to just be a fastforward
2024-03-18 14:11:33 +00:00
James R
95216563a6 Interp: do not update view interpolation state during sped-up tics
- If you called R_ResetViewInterpolation once but G_Ticker
  got called more than once, then the effect of
  R_ResetViewInterpolation would be cancelled
- This should be a comprehensive solution to the titlemap
  camera bug
- Multiple tests:
  - -skipintro
  - -warp, then exit to title
  - map command, then exit to title
  - Wait for attract demo, then skip and exit to title
2024-03-18 04:15:52 -07:00
James R
f1df1b8555 Attract, Credits: do not spend more than 2 seconds real time skipping forward in a replay 2024-03-18 02:42:22 -07:00
James R
0ce93b2d96 Add g_fast_forward_clock_stop, means to end g_fast_forward early if too much real world time is taken 2024-03-18 02:42:22 -07:00
James R
4281cd1283 Attract: fade out and timescale at end of demo
- Do not use a wipe so player can keep moving while fading
  out
- Timescale by half for a "slowdown" effect
2024-03-18 02:42:21 -07:00
James R
7abe285f84 Refactor: replace references to cv_timescale with I_GetTimeScale 2024-03-18 02:42:21 -07:00
James R
6efa35549b Refactor: separate parts of V_DrawCustomFadeScreen into reusable functions 2024-03-18 02:42:21 -07:00
James R
244d5e1063 Attract: play demo for 30 seconds, starts at random timestamp
- Starting timestamp is not truly "random"
  - Uses a lookup table because I didn't like the PRNG
    distribution
2024-03-18 02:42:21 -07:00
James R
7a5020470d Attract: show music credit on return to title screen 2024-03-18 02:42:21 -07:00
James R
326e560329 Attract: fix attract demos end handling
Fixes two bugs:

- Attract mode carrying over to gameplay if an attract
  demo is allowed to finish without interrupting it
- Credits ending after the first replay ends
2024-03-18 02:42:21 -07:00
James R
0a1f8331fe Attract: no intermission or tally for Attract demos 2024-03-18 01:19:10 -07:00
AJ Martinez
0072170b2e Add SalCRT Sharp 2024-03-17 17:50:29 -07:00
Gunla
9e549d5607 Merge branch 'replay-hud-fixes' into 'master'
Replay HUD fixes; also fix HERE COMES A NEW CHALLENGER in splitscreen

Closes #1172, #1169, #1177, and #1165

See merge request KartKrew/Kart!2125
2024-03-17 22:07:38 +00:00
AJ Martinez
aff5cc05ac Merge branch 'dialogue-pass' into 'master'
Dialogue pass (code side)

See merge request KartKrew/Kart!2126
2024-03-17 22:02:11 +00:00
Gunla
5b20a5df60 Merge branch 'gamespeed-explainer' into 'master'
Include gamespeed / GP difficulty on the Pause menu

See merge request KartKrew/Kart!2124
2024-03-17 21:56:09 +00:00
Gunla
f70fa802e1 Merge branch 'browse-menu-help-text' into 'master'
Add extra help text to Online>Browse menu

See merge request KartKrew/Kart!2123
2024-03-17 21:55:55 +00:00
Gunla
17c055dfd3 Merge branch 'new-record' into 'master'
TA record/playback fixes

Closes #1176

See merge request KartKrew/Kart!2122
2024-03-17 21:55:36 +00:00
Gunla
3d06ede948 Merge branch 'skip-ghost-player-extradata' into 'master'
Allow player extradatas past p0 in ghost demos

Closes #1175

See merge request KartKrew/Kart!2120
2024-03-17 21:53:28 +00:00
Gunla
05007085f5 Merge branch 'debug-time-attack' into 'master'
Time Attack debug tools

See merge request KartKrew/Kart!2118
2024-03-17 21:53:15 +00:00