Commit graph

20544 commits

Author SHA1 Message Date
Sal
e8a6aa7540 Merge branch 'follower-fixes' into 'master'
Followers and Character Select improvements

See merge request KartKrew/Kart!764
2022-11-14 21:30:03 +00:00
Sal
5d535b0455 Merge branch 'legacydl-16' into 'master'
Direct file downloader changes ported from 1.6

See merge request KartKrew/Kart!759
2022-11-14 21:28:31 +00:00
Sal
1758ab0b6f Merge branch 'filestuff-16' into 'master'
Partial Addfile port from 1.6

See merge request KartKrew/Kart!757
2022-11-14 21:27:38 +00:00
toaster
f706cf479a Merge branch 'vsync-set-fix' into 'master'
Set vsync on screen update or resolution change in software mode

See merge request KartKrew/Kart!765
2022-11-13 11:48:20 +00:00
toaster
bd87ce70d6 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into filestuff-16 2022-11-12 17:55:10 +00:00
toaster
8882406ff3 On second thoughts, restrict ANY profile application in dedicated - not just on initial startup - to the Guest profile 2022-11-12 17:48:00 +00:00
toaster
f5f94b977e Deprecated constants flagged in review 2022-11-12 17:42:16 +00:00
toaster
a8a69ff03e Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into legacydl-16 2022-11-12 17:36:23 +00:00
toaster
f323a372a6 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into servers-16
# Conflicts:
#	src/d_netcmd.c
2022-11-12 17:30:40 +00:00
Sally Coolatta
492c068cdd Try some things to reduce rng biases
- Don't clamp all RNG calls to [0, FRACUNIT-1]. Only does this for P_RandomFixed now.
- Use rejection sampling for any clamped RNG calls, to remove modulo bias.
- Because of this, P_RandomRange ranges >= FRACUNIT are no longer undefined behavior.
- Added P_Random/M_Random to grab RNG output directly.
- Shuffle M_Random's RNG as well, since OS rand can be [0,INT32_MAX] instead of [0,UINT32_MAX].
2022-11-12 09:48:59 -05:00
Sal
df968e1b1a Merge branch 'chat-paste-overflow' into 'master'
Fix buffer overflow when pasting into chat

See merge request KartKrew/Kart!766
2022-11-08 11:54:13 +00:00
James R
c216cc6988 Fix buffer overflow when pasting into chat 2022-11-07 20:30:14 -08:00
toaster
6eda325561 More character select quality of life
- When selecting follower category, initial follower category is now the category of your last used follower (or None)
- More C/Extra button functionality:
    - Profile selection: Toggle between your last used profile and guest
    - Follower category: Toggle between category of your last selected follower and None
    - Follower: Return to category selection and hover over None (flows seamlessly into above option)
2022-11-07 20:57:02 +00:00
toaster
e086b52055 Fix the MP character select being completely busted and sending infinite changenameandcolor packets
Still has weird inappropriate conditions for changing skin, but gets the feature at least WORKING for now.
2022-11-07 20:16:53 +00:00
SteelT
2304ef28a5 Set vsync on screen update or resolution change in software mode
Similar to what the OGL code does, fixes vsync not being properly applied on game startup
2022-11-07 14:32:13 -05:00
toaster
2e75012645 Clean up follower setting to handle strings and values just like player->skin
- Fixes defaulting to follower id 0 (previously chao, currently hot robo) when joining a server without going through the menu flow
- No need to store TWO names for a follower, so save a little memory
- Should make it easier to add unlockable followers later
2022-11-07 18:11:45 +00:00
toaster
35a3a9db4a Remove follower on player departure 2022-11-07 17:09:51 +00:00
Oni
578908065b Merge branch 'grayscale-command' into 'master'
Add grayscale palette toggle command

See merge request KartKrew/Kart!753
2022-11-07 01:06:43 +00:00
toaster
fa5aa408be WIP: Catch a few places which could be going wrong with followers on joining servers.
Definitely better than it was, but current status: sometimes when joining a server cv_follower[n].value is 0 and I don't know why.
2022-11-07 00:58:55 +00:00
Oni
8f16a6a040 Merge branch 'backdrop-in-splitscreen' into 'master'
Overlays use dispoffset instead of position hack

See merge request KartKrew/Kart!763
2022-11-07 00:14:58 +00:00
toaster
8aeaf9738d Major changes to follower selection
- Followers now have categories, definable in SOC
- New character select step: Follower category
    - "None" is a category, just skips straight to Follower None
    - Select a category to go to the previous regular follower selection step
- Press the C/Extra button to reset a character select step to its "default"
    - Character: Center the character in the engine class (goes from [0,1] to [1,1], etc)
    - Character alts: Centers the "primary" alt (prefers Eggman over Eggrobo)
    - Skincolor: Centers the character's prefcolour
    - Follower category: Centers on the "None" option
    - Follower: [CURRENTLY NO BEHAVIOUR]
    - Followercolor: Cycles between follower's defaultcolour, "Match", and "Opposite"
2022-11-06 22:53:12 +00:00
toaster
368a45c674 Change default followercolor to "Match" (from "1") 2022-11-06 22:15:16 +00:00
Sally Coolatta
9a009cab18 Overlays use dispoffset instead of position hack 2022-11-06 15:23:18 -05:00
toaster
59cd7bfc11 Use character's prefcolour before color selection for that player 2022-11-06 17:06:29 +00:00
toaster
44f869e5e6 Adjust followers (and players) drawing on character select
- Use default colours for followers when not select(ing/ed) follower colour, to match character selection
- Adjust offsets in general, including a rework bobbing handling, so there isn't a huge variance in follower position on-screen
- Move followers to draw in front of several elements, including the "A/B/C/D PLAYER" text and the rotatey wheel so you can actually see them
- Also applies to player: Don't mirror between sides of the screen - instead, rotate the virtual player object, so asymmetrical details aren't lost!
- Player-specific: Animate when READY !! to simlate starting your engine.
2022-11-06 16:53:57 +00:00
Sal
15ce4671c7 Merge branch 'explosion-combo-redux' into 'master'
Fix invinc, scale difference, and hyudoro not blocking explosions

See merge request KartKrew/Kart!756
2022-11-06 15:51:25 +00:00
toaster
1cae2e1502 Fix loading follower default colour
Also corrects an issue where the last two skincolours were not being copied to the followercolor table
2022-11-06 15:21:22 +00:00
toaster
ca3525a81a Fixing going back in the follower list on the Character Select 2022-11-06 14:52:37 +00:00
toaster
f5eadd331e Fix follower colour handling in replays 2022-11-06 14:21:39 +00:00
James R
990e342b12 Fix KITEM DEH list not defined with KITEM_ prefix 2022-11-06 06:20:28 -08:00
toaster
0f471b1cf1 Move some command and cvar registering between D_RegisterServerCommands and D_RegisterClientCommands depending on whether a dedicated server needs them or not 2022-11-06 13:15:17 +00:00
Oni
ff6f7b62c8 Merge branch 'paperitem-backdrop' into 'master'
Add backdrop for paper items

See merge request KartKrew/Kart!755
2022-11-06 08:00:06 +00:00
toaster
11209c5d24 Fix the most significant, immediately-apparent problems with Dedicated
- Don't load level twice (only became apparent thanks to new console print warnings)
- Get first map of gametype instead of defaulting to Test Run
- Don't apply profile material
2022-11-06 00:16:36 +00:00
toaster
ebdb5db502 Unused variable cropped up during porting 2022-11-05 23:23:08 +00:00
toaster
34540b9caa More consistently time out people nearing the end of the BACKUPTICS, not just if they cross the line, to match desired v1 behaviour 2022-11-05 23:23:07 +00:00
toaster
0da626807c EXPERIMENTAL: Dedicated server idling system
- If no clients at server start or after 10 seconds of GS_LEVEL, and no Netxcmd waiting to be digested, halt all SV_MakeTic.
- It's absolutely netsafe to only have enabled on the host's end, the only risk is that a dedicated server might not re-awaken when presented with certain stimuli
2022-11-05 23:23:07 +00:00
toaster
c77147fd1c Rewrite ping timeout
- Reduce the joiner grace period for normal ping limit to 10 seconds (from 30)
- Properly account for ignoring all local players when the host is splitscreen

# Conflicts:
#	src/d_clisrv.c
2022-11-05 23:23:07 +00:00
toaster
6cbbb0b286 All download meters ported from v1 now use the 2.2 palette 2022-11-05 14:04:39 +00:00
toaster
c445b0b26a Direct file downloader changes ported from 1.6
Flattened due to changes between the code base including renamed functions.
Also renames CL_LEGACYREQUESTFAILED to the more specific CL_DOWNLOADFAILED.
2022-11-05 13:53:04 +00:00
toaster
3b212a1138 Merge branch 'miniladder-16' into 'master'
Miniladder for 1.6

See merge request KartKrew/Kart!754
2022-11-05 13:16:22 +00:00
toaster
893cc0fd9b Remove debug print 2022-11-05 12:44:51 +00:00
SteelT
7c528ead80 Set curl_failedwebdownload to true for corrupt or modified HTTP downloads.
So that it actually falls back to direct downloading
2022-11-04 17:01:56 +00:00
SteelT
923c698898 Add MD5 checking to HTTP downloading
In cases of where the file mismatches from what the server expects, it will fall back to direct downloading of the file.
2022-11-04 17:01:45 +00:00
toaster
9ce87671c7 Use Partial Addfile for G_LoadDemoExtraFiles as well
Still cope compared to the MP addfile codepath, but not the n^2 time cope of before.
2022-11-04 16:54:07 +00:00
toaster
bac58847fe Make P_InitMapData/dependents use partadd_earliestfile 2022-11-04 16:50:37 +00:00
toaster
c4fd7d74dd P_AddWadFile partial stages port from SRB2Kart 1.6
Originally written by x.organic, flattened rewrite due to massive changes between RR and SRB2Kart codebase
Notable changes:
- p_adding_file has been reworked into partadd_earliestfile to allow for final setup to use
- much like the public version required removing TEXTURE SOCs, this one required removing Flats support from ANIMDEFS
2022-11-04 16:15:53 +00:00
SteelT
84a5e28302 Don't match slope pitch and roll for MT_FLOATINGITEM (per VC discussion) 2022-11-04 11:19:27 -04:00
toaster
e486926943 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into miniladder-16
# Conflicts:
#	src/d_main.c
2022-11-04 12:03:48 +00:00
AJ Martinez
01c35b7957 Ironman: Don't do detransform unless your real skin is actually SF_IRONMAN 2022-11-03 22:22:47 -07:00
AJ Martinez
d95244a693 Ironman: Don't carry modified stats into the next race 2022-11-03 22:15:40 -07:00