Commit graph

20546 commits

Author SHA1 Message Date
Eidolon
d31037abc9 cmake: Remove asset hashing, CMAKE_ASSETS_DIR
Simplifies build setup for cmake.

# Conflicts:
#	assets/CMakeLists.txt
#	src/config.h.in
#	src/sdl/i_system.c
2022-11-27 02:44:10 -08:00
Eidolon
f0338d22d7 cmake: Use TheLartians' Ccache script on non-Win32
Improves ccache support for Xcode
2022-11-27 02:44:10 -08:00
Eidolon
04674ca93b Include exchndl with <> 2022-11-27 02:44:10 -08:00
James R
1dd25181a9 cmake: use SRB2_SDL2_EXE_NAME, append git branch, add SRB2_SDL2_EXE_SUFFIX 2022-11-27 02:44:10 -08:00
Eidolon
0677d59d51 cmake: Build all deps and static link
Overhaul cmake build
2022-11-27 02:44:10 -08:00
Oni
340d3d53fb Merge branch 'shadows-gammaless' into 'master'
Shadows Gammaless

See merge request KartKrew/Kart!775
2022-11-27 04:10:05 +00:00
VelocitOni
e147d41ad4 Merge branch 'master' into shadows-gammaless 2022-11-26 22:52:35 -05:00
Oni
ba5c42452c Merge branch 'rankings-return' into 'master'
Re-add mid-game rankings

See merge request KartKrew/Kart!779
2022-11-27 03:47:10 +00:00
Oni
f292397993 Merge branch 'restartlevel-encore' into 'master'
Restartlevel respects cv_kartencore

See merge request KartKrew/Kart!780
2022-11-27 03:36:20 +00:00
Oni
a27e14ff21 Merge branch 'case-insensitive-wads' into 'master'
Fix instances of lump searching not being case insensitive

See merge request KartKrew/Kart!783
2022-11-27 03:31:13 +00:00
Oni
c91e46f25d Merge branch 'client-vfx' into 'master'
"Reduce VFX" toggle

Closes #343

See merge request KartKrew/Kart!786
2022-11-27 03:13:15 +00:00
Sally Coolatta
530012818f Merge branch 'master' into client-vfx 2022-11-26 21:08:59 -05:00
Oni
db621c4538 Merge branch 'waypoint-fixes' into 'master'
Big Waypoint Change

See merge request KartKrew/Kart!784
2022-11-27 02:01:43 +00:00
Oni
765bdab7f1 Merge branch 'rankpass-sfx' into 'master'
Rankpass SFX

Closes #340

See merge request KartKrew/Kart!785
2022-11-27 01:57:25 +00:00
Oni
e34b4f031b Merge branch 'double-bonus' into 'master'
Multiple BonusGame support

See merge request KartKrew/Kart!781
2022-11-27 01:57:13 +00:00
Sally Coolatta
678e674d65 Disable e-brake vfx 2022-11-26 20:55:06 -05:00
Sally Coolatta
e331910fe3 Reduce VFX toggle
Can be used to disable VFX, so it can only appear if its owner is a display player. If no owner is provided, then it will be removed entirely.

Applied to most things that Ivo asked for
2022-11-26 20:12:00 -05:00
toaster
3f1ba40246 Missing gamecontrolname 2022-11-26 23:24:02 +00:00
toaster
b1adc3d27c Fix chunky gap between Kart position numbers
There's still a big gap but that's a graphics lump size issue, code wouldn't solve it
2022-11-26 22:39:27 +00:00
toaster
1999cf0509 Rank num SFX tweak
- Add new sounds at various pitches depending on position
- Don't play sound if a pass has just happened
2022-11-26 22:25:15 +00:00
Sally Coolatta
0e654aa2f9 Fix missing currentwaypoint in saveg 2022-11-26 15:27:51 -05:00
toaster
400a7b5974 Move closed chat to behind rankings HUD 2022-11-26 16:49:57 +00:00
toaster
00e28b2915 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into rankings-return 2022-11-26 16:43:21 +00:00
toaster
15a51e370a Restartmap respects encore Auto too
Per jart's suggestion
2022-11-26 16:40:50 +00:00
toaster
f8c6351847 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into restartlevel-encore 2022-11-26 16:28:16 +00:00
Oni
dbb548d8ad Merge branch 'ironman' into 'master'
HOSTCODE 'ironman'

See merge request KartKrew/Kart!745
2022-11-26 11:56:11 +00:00
Sally Coolatta
eef87c4676 Remove even more code dupe from p_sight.c 2022-11-26 03:15:03 -05:00
Sally Coolatta
fdd016eafc Smarter WRONG WAY again 2022-11-26 02:51:46 -05:00
Sally Coolatta
0053cda35c Don't allow nextwaypoint to be past finish linedef 2022-11-26 02:51:46 -05:00
Sally Coolatta
cb580031ca Condense all of the P_CheckSight copy-paste
For something for my next commit
2022-11-26 02:51:45 -05:00
Sal
a3d395c72f Merge branch 'hide-items' into 'master'
drawpickups command to hide collectible items

Closes #336

See merge request KartKrew/Kart!782
2022-11-26 07:48:54 +00:00
Sally Coolatta
d5b62886d2 Change distance to finish calculation
It now calculates it from a position clamped inbetween lines formed by the waypoints.
2022-11-26 02:46:53 -05:00
Sally Coolatta
b55c67c29d Add currentwaypoint 2022-11-26 02:46:52 -05:00
James R
9abb5c0e62 Fix instances of lump searching not being case insensitive 2022-11-25 16:30:11 -08:00
James R
e2be36c343 drawpickups command to hide collectible items 2022-11-25 16:05:11 -08:00
Sal
90e3d01395 Merge branch 'waterstep-2' into 'master'
Waterstep 2

Closes #329 and #327

See merge request KartKrew/Kart!774
2022-11-25 22:42:19 +00:00
Sal
df68b87e93 Merge branch 'gremlin-fix' into 'master'
Evict the wall gremlin

Closes #326

See merge request KartKrew/Kart!777
2022-11-25 22:39:17 +00:00
Sal
6e791d5c8b Merge branch 'tm-as-struct' into 'master'
Put tm* variables into a struct

See merge request KartKrew/Kart!776
2022-11-25 22:39:04 +00:00
toaster
08a9f69ed6 Multiple BonusGame support
- Comma-separated (exactly the same as levellist)
- Not REQUIRED, you can still make cups with one or zero BonusGame entries
- Happens every (numlevels+1)/(numbonus+1) - 5 and 2 makes after rounds 2 and 4, for example
2022-11-25 22:31:55 +00:00
toaster
5b10fd8d93 Restartlevel respects cv_kartencore 2022-11-25 18:21:19 +00:00
toaster
db95e3144d Re-add mid-game rankings
- gc_rankings, bound to TAB by default
- Now a toggle, rather than a hold behaviour
- Rearrange HU_Drawer to have chat (and cecho/music credits) render over everything else (like, say, tab rankings)
- Update PROFILEVER to 2 so we can add the new control to old profiles
2022-11-25 17:59:18 +00:00
toaster
86813b96a3 Adjust how properties are handled in G_PlayerReborn a little.
For consistency, all conditionals are done when data is being preserved in local variables, not on write back to player struct.
2022-11-23 18:11:50 +00:00
toaster
c2183a626c Actually track lastfakeskin!
Tremendous whoopsie: turns out there's no code that actually saves it outside of netsync. This is now fixed.
Also now allows you to roll Eggman as your first skin, and doesn't cause immediate characterswaps for midgame joiners.
2022-11-23 18:03:27 +00:00
toaster
3ee8bbbfc4 Adjust various EZT_s.
- EZT_KART is now EZT_ITEMDATA.
    - Uses the new one-byte widths to reduce spurious filesize use for item type, item amount, and bumpers.
- EZT_IRONMAN is now EZT_STATDATA.
    - Now includes kartspeed, kartweight, and charflags to be tolerant to restat.
2022-11-23 18:01:23 +00:00
toaster
33203bb53f Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into ironman 2022-11-23 17:21:51 +00:00
toaster
b8f59fd227 Skin and playerstate code in demos has been partly rewritten to support more than was previously possible.
Notable new features:
- Guaranteed native compatibility with SF_IRONMAN even with differing # of skins
- Bots (todo: can still desync midway through round)

Implementation details:
- Demo code (skins):
    - Instead of writing a skin name string, and the player's kartspeed, kartweight, and charflags for each player in the initial player-interpreting loop...
    - Write a skinlist of EVERY skin's name string, kartspeed, kartweight, and flags next to the file list, to be read into `demo.skinlist`.
        - If the skin name isn't loaded, find the skin with (in order)
            - SF_IRONMAN if your skin had SF_IRONMAN, since that's more important to signal
            - the closest stats otherwise (as per previous implementation)
        - Just as tolerant to stats AND the number of base skins changing between versions (the bonuschars aegis situation)
        - Not tolerant to restat, but we can add a DXD or EZT later if we want to natively support that kind of mod
    - In the initial loop and DXD_SKIN, just write an index that can be used for `demo.skinlist`, and store it in `demo.currentskinid[p]`
    - The player's skin is now encoded as EZT_IRONMAN for ghosts (and just in case RNG sync fails for unrelated reasons)
- In the SF_IRONMAN code when demo.playback is true
    - everywhere where `skins[player->skin]` is referenced instead uses an index into `demo.skinlist`
    - SetRandomFakePlayerSkin uses the `demo.skinlist` to build a table to ensure exact random call parity
        - Also means it no longer double rejection-samples.
    - `player->fakeskin` and `lastfakeskin` are always == their original recording values, a skin id which can be used into `demo.skinlist`
- Demo code (playstate, initial player setup loop):
    - Add bot flag (`DXD_PST_ISBOT`, `DEMO_BOT`)
    - Add in-between-level botvars (difficulty, diffincrease, rival)
    - Don't rely on `PF_WANTSTOJOIN` to activate

Additional bugfixes:
- Followerskin set to -1 in CL_ClearPlayer so a bad follower isn't recorded on player join without name and color change arriving immediately
- Accomodate new joiners in demo code even if they're not on DXD_PST_SPECTATING for one reason or another
- Demo extra file list saving is now its own function for code cleanliness
- Actually only modify players relevant to the demo at the end of G_DoPlayDemo, not all 16 by supplying and overwriting garbage values (POSSIBLE MEMORY CORRUPTION FIX, mobj_t pointer was previously dereferenced)
2022-11-22 14:28:48 +00:00
James R
45604a05c3 Merge branch 'servers-16' into 'master'
Server ports from 1.6 + general Dedicated repair

See merge request KartKrew/Kart!760
2022-11-22 05:16:17 +00:00
Sally Coolatta
c41f231de0 No reference count for TryMoveResult_t 2022-11-21 16:12:53 -05:00
Sally Coolatta
8f5e0f63e9 Evict the wall gremlin
Gremlins happened whenever P_TryMove and P_SlideMove/P_BounceMove disagreed on what an object collided with. When TryMove said you collided with a line, but P_BounceMove said that you didn't, then you'd get gremlin'd.

To fix this, P_TryMove now can edit a struct to contain information on what it collides with. P_SlideMove and P_BounceMove no longer try to detect walls on their own and now requires this result from P_TryMove. If a slide/bounce is needed without moving the object, then you'd want to use P_CheckMove to get the result.

Lua is not supported right now.
2022-11-21 16:12:53 -05:00
Sally Coolatta
35f1fe580c P_RestoreTMStruct 2022-11-21 15:59:19 -05:00