Commit graph

20905 commits

Author SHA1 Message Date
Sally Coolatta
8034fd326f Add save/load stream for ACS
Saves the majority of the VM state, but not the SRB2-specific vars ... that can come after food
2022-12-26 22:17:36 -05:00
Sally Coolatta
7a5b276ece Merge branch 'save_p-unglobal' into acs 2022-12-26 18:05:15 -05:00
Sally Coolatta
56ae811ced Contain end & size into savebuffer_t
I would've liked to make it use a single allocate function to do this very cleanly, but these cases were very clearly not meant to be standardized and use wildly different methods to allocate & free...
2022-12-26 17:45:25 -05:00
Sal
d4beb91e18 Merge branch 'remove-lua_save_p' into 'save_p-unglobal'
Let LUA_Archive / LUA_UnArchive use savebuffer_t

See merge request KartKrew/Kart!837
2022-12-26 21:10:26 +00:00
James R
842f375920 Remove global lua_save_p and use savebuffer_t for LUA_Archive / LUA_UnArchive 2022-12-25 14:11:44 -08:00
James R
ea41f91e7f g_demo.c: use savebuffer_t 2022-12-25 14:04:06 -08:00
Sally Coolatta
8bdb5bdb77 Make save_p / savebuffers not global
This caused some scary issues with P_SaveNetGame the other day, and it's making ACS net sync harder. Let's just cut this off right now.

Also fixed some scary mix-ups in some of the Lua archiving code.
2022-12-23 08:32:01 -05:00
Sally Coolatta
7f9ae90f88 Don't compile ACSVM's C API
No longer required
2022-12-23 05:26:12 -05:00
Sally Coolatta
8eef5efa95 Fully port the ACS integration to C++ 2022-12-23 04:38:05 -05:00
Sally Coolatta
88ffab9f3c Add ACSVM building to CMake
Currently this breaks some parts of the ACS functionality ... before I made a handful of small extensions to ACSVM's slightly-limited C API myself, and I didn't get them into the actual repo yet.

But now that we've moved to actual C++ compiling, I will likely just flat-out rewrite the SRB2 side of the code in C++ so it can use the library directly.
2022-12-22 09:44:38 -05:00
Sally Coolatta
2a790d10da Merge branch 'master' into acs 2022-12-22 08:24:21 -05:00
Oni
3101cf25cd Merge branch 'special-stages' into 'master'
Special Stages

See merge request KartKrew/Kart!778
2022-12-22 10:58:44 +00:00
Sally Coolatta
86c3a8ab78 Fix Gachabom merge 2022-12-22 05:35:35 -05:00
Sally Coolatta
82df346417 Merge branch 'master' into special-stages 2022-12-22 05:18:56 -05:00
Oni
8222b4d52b Merge branch 'ring-respawn-fuck' into 'master'
Make ring respawn a division

See merge request KartKrew/Kart!833
2022-12-22 10:18:28 +00:00
Sally Coolatta
40bc79a9d4 Merge branch 'master' into ring-respawn-fuck 2022-12-22 03:40:11 -05:00
Sal
1662414e0e Merge branch 'neutral-explosion-hitlag' into 'master'
Add half hitlag to invulnerable players if they would normally take damage

Closes #364

See merge request KartKrew/Kart!814
2022-12-22 08:37:47 +00:00
Sally Coolatta
ae8df1b97b Merge branch 'master' into neutral-explosion-hitlag 2022-12-22 02:45:08 -05:00
Oni
7af133d378 Merge branch 'spring-overflow' into 'master'
Fix spring stack overflow

Closes #377

See merge request KartKrew/Kart!831
2022-12-22 07:43:39 +00:00
Sally Coolatta
ba7b2f3fc9 Merge branch 'master' into ring-respawn-fuck 2022-12-22 02:27:39 -05:00
Oni
58c4f6009f Merge branch 'noclip-isnt-noclipthing' into 'master'
Alter MF_NOCLIP behavior

See merge request KartKrew/Kart!829
2022-12-22 07:25:54 +00:00
Sally Coolatta
c804129f3a Merge branch 'master' into spring-overflow 2022-12-22 02:25:46 -05:00
Oni
580de12d24 Merge branch 'fix-load-savegame' into 'master'
Fix netsave loading crash from saving gamedata

Closes #380

See merge request KartKrew/Kart!832
2022-12-22 07:25:15 +00:00
James R
90903e999f Fix MAXAVAILABILITY loop 2022-12-21 23:17:49 -08:00
James R
18acc54706 Merge branch 'cmake-testers' into 'master'
Add TESTERS and HOSTTESTERS builds to CMake options

See merge request KartKrew/Kart!830
2022-12-22 07:02:20 +00:00
Sally Coolatta
9c9d2934c5 Make ring respawn a division
Lets it stay very long for 1v1 like we want, but not matter the closer it gets to 8 players. Tired of people spamming rings to compensate for this problem :V
2022-12-22 01:53:50 -05:00
James R
a29d43d3b5 Restore save_p after P_LoadLevel
P_LoadLevel calls some functions that save gamedata and
unset save_p.
2022-12-21 22:45:46 -08:00
Sally Coolatta
0d8e13e942 Fix spring stack overflow
Closes #377
2022-12-22 01:35:08 -05:00
James R
d496e0f298 Add Tyron's invinc/grow blocked hit sfx 2022-12-21 08:35:26 -08:00
James R
9ddf10c9a5 Broly: detect added hitlag even if damage call didn't deal real damage 2022-12-21 08:35:26 -08:00
James R
ba2a7744d1 Add half hitlag to invincible players if they would've been damaged 2022-12-21 08:35:26 -08:00
James R
b73bbd3712 Add invulnhitlag, timeshit and timeshitprev fields to player_t 2022-12-21 08:08:59 -08:00
Sally Coolatta
19fd6d12e2 Rebalance Jawz
Jawz have their old missable handling, but now deal more damage.
2022-12-20 19:53:19 -05:00
Sally Coolatta
5461abb022 Always update ufo_pieces if possible 2022-12-20 19:51:24 -05:00
Sally Coolatta
df96c633bc Set Battle for Boss warp 2022-12-20 19:47:20 -05:00
Sally Coolatta
07767c4d03 No reference count update in K_ResetSpecialStage 2022-12-20 19:46:22 -05:00
Sally Coolatta
0502affedb Remove offset copy from overlays 2022-12-20 19:44:49 -05:00
Sally Coolatta
138e6ba846 Break the Capsules is always Time Attack rules 2022-12-20 19:39:50 -05:00
toaster
33167078c8 Merge branch 'capsules-improvement' into 'master'
Break the Capsules additions

See merge request KartKrew/Kart!793
2022-12-20 21:26:46 +00:00
Oni
62906ebd4e Merge branch 'unlockables-undefeatable' into 'master'
Unlockables Undefeatable

Closes #350 and #324

See merge request KartKrew/Kart!789
2022-12-19 22:21:30 +00:00
toaster
c89fb15399 Use our updated name where appropriate. (text strings only) 2022-12-19 21:48:19 +00:00
toaster
0214f62057 Add descriptions for TESTERS and HOSTTESTERS builds. 2022-12-19 21:47:37 +00:00
toaster
48a43eb9af Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into cmake-testers 2022-12-19 21:41:25 +00:00
toaster
8edf099f78 Sal's review: Clear levels on gamedata addition by default
Instead, if you want an exception - in the *same* MainCfg block, set `doClearLevels = False` (or `0`, or `No`)
2022-12-19 21:26:52 +00:00
toaster
d0cd059c5e Rework the Level List functions to operate off a provided levelsearch_t pointer.
* Prevents the dependency on a `levellist` global that could be corrupted
* Fixes the issue where cups that were not unlocked would not show up on the cup select (because `M_MapLocked` would make `M_CanShowLevelInList` fail).
* Shows both Race and Battle maps in the cup unlock preview.
2022-12-19 21:18:36 +00:00
toaster
8e88a840bb Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into unlockables-undefeatable
# Conflicts:
#	src/k_menudraw.c
#	src/k_menufunc.c
2022-12-19 20:13:44 +00:00
toaster
f693faeaa3 Merge branch 'cmake-nodynamicbase' into 'master'
Remove dynamic base from CMake target link options

See merge request KartKrew/Kart!827
2022-12-19 19:54:10 +00:00
toaster
d106c0a329 Add TESTERS and HOSTTESTERS builds to CMake options 2022-12-19 19:52:53 +00:00
toaster
a62282aa4e Make Wl,--disable-dynamicbase its own link option seperate from -static 2022-12-19 19:43:31 +00:00
toaster
9c8601ed9e Merge branch 'fix-soundorg' into 'master'
Fix not being able to play sounds from sector->soundorg

See merge request KartKrew/Kart!828
2022-12-19 12:03:44 +00:00