Commit graph

21001 commits

Author SHA1 Message Date
toaster
afafdea14b readfollower: Fix plenty of memory unsafety
- Fix uninitialised memory usage caused by goofy delayed strcpy
- Use strlcpy instead of strcpy for unknown length sources, just for additional memory safety
- Remove opportunity for printing a number of more than one digit into a buffer only two chars long
2023-01-05 19:31:49 +00:00
toaster
4520d56fa3 K_InitTerrain: Do what ANIMDEFs parsing does and create a copy of the TERRAIN lump with a guaranteed null terminator 2023-01-05 18:10:42 +00:00
toaster
b35c33a1b5 M_GetToken: check whether startPos is beyond string length BEFORE using it as string index 2023-01-05 18:09:50 +00:00
Eidolon
4522b4953e core: change SRB2WADDIR var to RINGRACERSWADDIR 2023-01-04 19:36:33 -06:00
Eidolon
d53efbdace core: load exchndl.dll at runtime
This allows the game to run without exchndl.dll present.
2023-01-04 19:34:41 -06:00
Eidolon
4a7463d134 Merge branch 'split-cpm-scripts' into 'master'
Split cpm scripts

See merge request KartKrew/Kart!856
2023-01-05 01:31:26 +00:00
Eidolon
81d1aa79c2 cmake: Split common deps setup scripts 2023-01-04 17:30:45 -06:00
Eidolon
dd182cd0a1 cmake: Separate cpm discordrpc setup 2023-01-04 17:30:45 -06:00
Eidolon
ac7ca10061 cmake: Separate cpm xmp-lite setup 2023-01-04 17:30:45 -06:00
Eidolon
181a159f33 Merge branch 'new-audio-mixer' into 'master'
New Audio Mixer

See merge request KartKrew/Kart!847
2023-01-04 22:52:50 +00:00
Eidolon
b95fd459b9 cmake: Remove SDL2_mixer and OpenMPT
Libraries superceded by libxmp-lite and new mixer.
2023-01-04 16:51:12 -06:00
Eidolon
8c259487b2 audio: Add pure-ISO C++17 audio mixer and backend
This replaces SDL2_mixer.
2023-01-04 16:51:12 -06:00
Eidolon
ba109d8981 core: Catch and I_Error uncaught exceptions in main 2023-01-04 16:51:12 -06:00
Eidolon
9806df5883 cmake: Add stb-vorbis
This is a lightweight single-file Ogg Vorbis decoder which will be used
for Ogg playback instead of libogg/libvorbis.
2023-01-04 16:51:12 -06:00
Eidolon
210b513c8b cmake: Add xmp-lite
This is a very lightweight module playback engine which will replace
OpenMPT.
2023-01-04 16:51:12 -06:00
Eidolon
25e3b4239c io: Allow span and vec stream to seek past end 2023-01-04 16:51:12 -06:00
Eidolon
2a0e183340 legal: Add copyright notice to io/streams 2023-01-04 16:51:12 -06:00
James R
5bdbbd1695 Comptime.cmake: escape \backslashes and "quotes" in git subject line 2023-01-02 20:06:30 -08:00
Oni
e400625da8 Merge branch 'broly-sigfpe' into 'master'
Fix Broly SIGFPE

See merge request KartKrew/Kart!841
2023-01-03 02:49:58 +00:00
Oni
46005089f1 Merge branch 'rulesify' into 'master'
Rulesify (resolves #375)

Closes #360 and #375

See merge request KartKrew/Kart!836
2023-01-03 02:43:52 +00:00
Sal
2335c849fe Merge branch 'monitors-prep' into 'master'
Misc. changes for the sake of monitors

See merge request KartKrew/Kart!805
2023-01-03 00:52:52 +00:00
Sal
3f6cc8a183 Merge branch 'cmake-build-type-titlescreen' into 'master'
Show CMAKE_BUILD_TYPE on title screen

See merge request KartKrew/Kart!849
2023-01-03 00:51:30 +00:00
Sal
cab15b7d07 Merge branch 'file-and-header-fix' into 'master'
File and header fix (resolves #370)

Closes #370

See merge request KartKrew/Kart!848
2023-01-03 00:40:38 +00:00
toaster
e73e0bd835 Don't treat players with 0 lives that are exiting (definitely just completed a race) as irrelevant in P_CheckRacers counts
Fixes special stages not booting you back to the title screen after running out of lives on them
2023-01-02 20:20:47 +00:00
toaster
26f3490ba8 Increased memory safety with cupgrid memory allocation
Also clearer variable name for length of cupgrid page in memory
2023-01-02 13:32:12 +00:00
toaster
4b9797fe26 Correct for recursive iteration of multiple mines in succession clobbering filescope minehitlag 2023-01-02 13:08:11 +00:00
James R
5887c36111 Show CMAKE_BUILD_TYPE on title screen
Includes a hint if optimizations may have been turned off.
2023-01-02 01:46:05 -08:00
James R
8a92f03f7b Set fuse for Battle items 2023-01-01 18:38:53 -08:00
James R
71004d4b46 Halve spawn time for Battle items 2023-01-01 18:38:53 -08:00
James R
3965f77763 Add BATTLE_SPAWN_INTERVAL 2023-01-01 18:38:53 -08:00
James R
6eb8da1a56 Add K_GetTotallyRandomResult, for battle item spawners 2023-01-01 18:38:53 -08:00
James R
a94e18c277 Add K_UpdateMobjItemOverlay 2023-01-01 18:38:53 -08:00
James R
43aa162fcb Add K_GetChaosEmeraldColor 2023-01-01 18:38:53 -08:00
James R
2e4b5bd061 Clean up P_FuseThink flicker condition 2023-01-01 18:38:53 -08:00
toaster
718eb8b11f Permit losing a life when exited if the player has PF_NOCONTEST 2023-01-02 00:54:24 +00:00
James R
151dccf32f Parity between title screen and menu version info 2023-01-01 15:40:51 -08:00
toaster
c10bd068de Fix loading a map in a seperate file before loading a file with the relevant header 2023-01-01 23:39:28 +00:00
Eidolon
d13f2c34b9 Merge branch 'cxx-foundations' into 'master'
Add SRB2_ASSERT, srb2::NotNull

See merge request KartKrew/Kart!843
2023-01-01 21:05:51 +00:00
Eidolon
2e229dcdde Merge branch 'discord-rpc-internal' into 'master'
cmake: build discord-rpc internally

See merge request KartKrew/Kart!846
2023-01-01 20:54:56 +00:00
Eidolon
19c5711092 cmake: build discord-rpc internally 2023-01-01 14:50:52 -06:00
Sal
21774564da Merge branch 'fix-c++-strcasestr' into 'master'
Fix strcasestr redefine warnings for G++

See merge request KartKrew/Kart!844
2023-01-01 19:41:14 +00:00
toaster
8f78b37e57 Fix yellowmap not being included
Was going to `#include "console.h"` but not worth it for literally one placeholder index
2023-01-01 16:02:55 +00:00
toaster
a020ea86c8 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart into rulesify
# Conflicts:
#	src/k_boss.h
#	src/k_specialstage.h
#	src/y_inter.h
2023-01-01 16:02:05 +00:00
toaster
4bbe3d7177 Draw Rings/Lives HUD even when not GTR_CIRCUIT 2023-01-01 14:55:58 +00:00
toaster
d5cd4f6798 Make placeholder for vote screen gametype color yellowmap[0] instead of 255 cyan 2023-01-01 14:54:58 +00:00
toaster
42a6b03e48 Remove "circuitmap"
An effectively useless global scope boolean that literally checks for the presence of a finish line, created in and used only by things we inherited from vanilla SRB2
2022-12-31 23:27:59 +00:00
toaster
84b066245e Demo savemode text is consistent colour now 2022-12-31 23:14:43 +00:00
toaster
425a02d09b Make GTR_BUMPERS less monolithic
* Battle-like item box respawn handling inverse of GTR_CIRCUIT
* Make battle fullscreen overlay forbid GTR_CIRCUIT
* Make GTR_ITEMARROWS actually do something
* Make everything related to points actually use GTR_POINTLIMIT
* Fobid sphere addition without GTR_SPHERES, to mirror ring addition forbidding
2022-12-31 23:12:41 +00:00
toaster
c23a2d8dca Don't force a reset of the level in GTR_BUMPER when lonesome if not GTR_CAPSULES 2022-12-31 22:49:20 +00:00
toaster
3357f56c9e G_RandMap should consider & all valid flags for gametype, not ==. 2022-12-31 22:44:49 +00:00