Commit graph

1556 commits

Author SHA1 Message Date
toaster
fc3a0683ba Got_Mapcmd: Don't promote GTR_BOSS|GTR_SPECIAL to GPEVENT_SPECIAL unless the roundqueue size is 0
The original purpose was to make using the map command allow for multiple tries, ala standard console testing, but the condition was way too permissive and was promoting all esoteric map overrides to undue importance for the end of the Cup's evaluation.
2024-03-09 20:33:24 +00:00
James R
a32bb486e2 Disable lap cheat prevention when teleporting with console commands 2024-03-06 18:19:35 -08:00
toaster
7f0df71558 R_SkinAvailableEX
- Most R_SkinAvailable calls should be returning index into demo.skinlist (same numerical value as when demo was recorded), for demo sync
- A handful of general things permit exception for this
- Expose `replaynumskins` (calculated as `(demo.playback ? demo.numskins : numskins)`) to Lua
    - There's *always* more that can be done for this, but this is the minimum spec that can at least be somewhat stable
2024-03-05 13:21:38 -08:00
James R
5fbb32442b Fix Alternate Title Screen unlockable not saving preference
- Remove CV_NOSHOWHELP, so the config file can load
- Do not stealth set the cvar, so it is not dependent on
  order of operations of config loading and challenge
  loading
2024-03-03 22:20:12 -08:00
James R
38e1ae1c53 Replays: let name be changed any time until the file is saved 2024-03-03 06:30:54 -08:00
SteelT
cc99ead23b Merge branch 'bugfix-roundup' into 'master'
Misc bug fixes

Closes #1097 and #1096

See merge request KartKrew/Kart!1992
2024-03-03 01:45:35 +00:00
Eidolon
2775378ac2 Use G_LoadDemoInfo to validate in playdemo/TA menu
Fixes KartKrew/Kart#1096
2024-03-02 12:24:46 -06: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
1eb5dabbd0 Improve displayplayers command
- Tabulate data
- Show party members
2024-03-01 06:03:21 -08:00
toaster
edf4f7c205 Got_TeamChange: Successfully remove PF_WANTSTOJOIN if you use changeteam spectator to cancel your join 2024-02-28 20:02:23 +00:00
James R
b452232974 Add PF_ANALOGSTICK, tells if this player has bound analog stick to d-pad 2024-02-24 21:29:19 -08:00
James R
a2d22c730f Remove PF_LITESTEER
It doesn't do anything
2024-02-24 21:03:49 -08:00
James R.
36b4e88e11 Merge branch 'fix-admin-commands' into 'master'
Put bounds checking on promote and demote commands

See merge request KartKrew/Kart!1916
2024-02-20 04:20:44 +00:00
James R
10800f307c promote, demote: bounds checking, remove intermediate buffer
- Check playernum is in range [0, MAXPLAYERS-1]
- Do not copy string to intermediate buffer
2024-02-11 05:48:06 -08:00
James R
4ee00d4333 Pass const pointer to all netxcmd handlers
Ensure buffer data is read-only and not modified by
handler
2024-02-11 05:42:07 -08:00
Oni
d755d83778 Merge branch 'fix-intermission-parties' into 'master'
Fix Party management breaking during Intermission and Vote

Closes #499

See merge request KartKrew/Kart!1903
2024-02-03 19:41:57 +00:00
Oni
4ea946067a Merge branch 'srb2-tidy' into 'master'
Clear out unused SRB2/Kart stuff from info tables

See merge request KartKrew/Kart!1811
2024-02-03 19:40:52 +00:00
James R
6f27714011 invite, leaveparty commands: use party API to check party size
Use G_PartySize/G_LocalSplitscreenPartySize instead of
r_splitscreen/splitscreen. This should be less
error-prone in case r_splitscreen fails to be updated
somehow.
2024-02-01 02:50:25 -08:00
toaster
106553f89d Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into srb2-tidy
# Conflicts:
#	src/p_mobj.c
2024-01-27 17:04:00 +00:00
James R
4576956ca6 Got_Cheat/CHEAT_GIVEPOWERUP: avoid reading out of bounds 2024-01-27 01:11:48 -08:00
James R
84641c896e Battle: add POINTS power-up, get 6 points 2024-01-26 14:30:56 -08:00
toaster
6fdec66dc3 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into srb2-tidy 2024-01-26 00:29:06 +00:00
James R
db4e2e692b Add LobbySize option to level headers, controls whether the map appears in vote, based on player count
- Prevents a map from appearing on the vote screen if
  there are too many players
- LobbySize
  - Duel - 2 players max
  - Small - 5 players max
  - Medium - 10 players max
  - Large - 16 players max (default if not set)
- Future proofing
  - Doesn't count bot players in gametypes that don't
    support bots
2024-01-13 22:56:17 -08:00
James R
fd7eb42e9d Vote: fix Encore appearing on Battle, if gametype was changed 2024-01-13 22:56:16 -08:00
toaster
325079a39a Delete everything major flagged up by listunusedsprites
Notable deletions:
- Metal Sonic Race
    - Includes all the specialised recording/playback apparatus which made g_demo.c harder to read
- A bunch of hyperspecialised code inside several A_ actions
- EXCEPTION: intentfully left in the spriteless SMK stuff for Sal's add-on down the line.
2024-01-11 01:21:43 +00:00
toaster
8733f16a72 listunusedsprites command
First, simple step in a cross-low-energy spare-moment project for clearing out unused SRB2 stuff in the info tables
2024-01-09 21:17:24 +00:00
toaster
01738e2264 Command_cxdiag_f: Evaluate Time Medals as well
- Tag-0 specified times of less than a second
- Invalid tags
    - <= AUTOMEDAL_MAX (invalid Auto Medal)
    - >= course's ghostCount (invalid specific Ghost-matching Medal)
- AUTOMEDAL_ with invalid number of Ghosts
    - PLATINUM with no best Ghost to match
    - All other types with less than two associated ghosts
2024-01-05 12:32:25 +00:00
James R
483519ea07 pointlimit: rename Default to Auto 2024-01-01 03:05:16 -08:00
toaster
7691629903 Further cxdiag faff
- Loop over each set of conditions twice
    - first to determine relevant level/gametype
    - secondly to evaluate everything else in that context
- Pick up called events which are invalid for the relevant gametype
- Pick up multiple levels per single condition
2023-12-27 16:34:23 +00:00
toaster
122ede8de9 More cxdiag Challenge condition minor error identification 2023-12-26 17:23:17 +00:00
toaster
798e016aa1 Fix compilation error for cxdiag 2023-12-26 15:47:32 +00:00
toaster
286c6d12a2 Add "cxdiag" console command
Challenge eXception Diagnostic for development purposes
2023-12-23 23:12:25 +00:00
toaster
f5722b7569 Intro adjustments
- Force to play when selecting "START GAME" from the Goner Setup
- Make far shorter on the First Boot, obscuring the extended Kart Krew vroom, to prevent it playing identically twice
- Prevent skipping the intro at all if Ring Cup hasn't been unlocked
    - Both for the shortened initial startup and the START GAME first encounter
- It already clears dirmenu if relevant, don't do that twice
2023-12-18 01:10:37 +00:00
toaster
933faf1d9d Command_Addfile: Only allocate after argc is sanity checked 2023-12-16 21:55:42 +00:00
Eidolon
88ee385ee3 Enforce C11 standard compliance, -Werror=vla 2023-12-14 21:53:18 -06:00
SteelT
5df44e4c70 Don't show gametype was changed message if the same gametype 2023-12-11 20:58:51 -05: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
toaster
a55803b690 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into other-progression 2023-11-18 18:00:05 +00:00
James R
7d7110ead7 Let devmode work in replays, let teleport commands work in replay freecam 2023-11-16 18:45:04 -08:00
James R
dd214db693 Let teleport commands work locally, without cheats enabled, for spectators 2023-11-16 18:45:04 -08: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
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
49fb2fe6b6 WIP: Trick Panel crack 2023-11-07 03:46:11 -07:00
toaster
b417c0655e Map command: If you provide -force and the level has no associated gametype, safely assume Race as the default instead of requiring a -gt race addition 2023-11-06 21:44:55 +00:00
toaster
6b37f86be0 Map command: GT_TUTORIAL is incompatible with the default of single-course GP, default to -match behaviour 2023-11-05 00:07:01 +00:00
toaster
1ac64dc0ed Assorted minor tidyup while handling previous commits in this branch 2023-11-05 00:01:44 +00:00
AJ Martinez
f9f5c74244 New bans 2023-10-16 23:50:50 +00: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