Alug
f58772a570
z_zone: add asserts if zone memory functions are called from non main thread
...
also taken from srb2classic thanks!
2026-02-02 18:14:38 +01:00
Alug
f7c065b22e
refactor i_thread stuff
...
based on https://codeberg.org/srb2classic/srb2classic/commit/3670a7c1c193185cf4921de8955c96e63fbecc62
and other things from srb2classic
this also now allows to check if a thread failed to spawn and reduces duped stuff and such
2026-02-02 18:14:35 +01:00
Alug
55c8546d68
do not use Zone Memory for masterserver rules
...
this gets called from within non main threads!
zone memory is not thread safe!
2026-02-02 17:27:23 +01:00
Alug
1762f18116
delet all the Z_Free checks
...
Z_Free already checks its input internally!
2026-02-02 16:12:38 +01:00
Alug
e4dbf1ce11
plug a potential memory leak in M_SaveConfig
2026-02-02 16:11:57 +01:00
Alug
10b9d96259
hw_clip: replace "RoundToInt" with lrint
...
prefer to use standard lib functions if possible
lrint does the same thing (well ofc as long as no one touches the rounding direction löl) and is even quite a lot faster (though this is negligible in this case)
2026-02-02 16:11:54 +01:00
indev
b23154fd93
Prevent replays menu scoll bar from disappearing
2026-02-02 02:28:33 +03:00
Alug
b0ee972178
r_plane: fix visplane hashing overflowing
...
shift into "int" to prevent super large values during multiply
2026-02-01 20:52:48 +01:00
Alug
544e1d3b21
"fix" overflow in R_InitViewMapping with high resolutions
2026-02-01 17:07:18 +01:00
Alug
0ca6947f99
fix a few type issues
2026-02-01 16:27:25 +01:00
indev
3122c08039
Add focus options for gamepad led and rumble
2026-02-01 02:49:03 +03:00
indev
7a279a6fd9
Prefix autoaccel cvars with 'kart' to avoid conflict with hostmod
2026-01-28 19:19:02 +03:00
Alug
c4581bd9a6
Only save and keep track of controller ids on SDL versions 2.32.4 and up
...
Older versions break and have unstable ids on Windows, cant check for linux but ill just add a version check at this point
This was part of updating sdl with v9, which got reverted due to other issues but this was not reverted oopsie
2026-01-24 18:20:54 +01:00
Alug
bb47b976a7
software: fix drawseg xrange item coord type being too small
...
both sprite and drawseg coords are int32
might fix some clipping issues
2026-01-23 18:33:11 +01:00
Alug
6c419ff22e
fix few more implicit double/float conversions
2026-01-23 18:33:08 +01:00
Alug
522904527f
add missing HAVE_CURL
2026-01-23 10:08:35 +01:00
Alug
30539371c2
more cmake stuffs
...
-add LTO option, enabled by default
-set optimization level to O3 and O0 for debug builds
-add ASAN and UBSAN options
-always compile with gnu debug symbols
2026-01-22 14:46:12 +01:00
Alug
e2ecc315b4
cmake: attempt to fix dedicated build uhh building
2026-01-22 14:44:47 +01:00
Alug
eb2f186205
Merge pull request #221 from P-AS/morecmakefixes
...
CMake fixes cherry-picked from srb2-legacy
2026-01-22 14:43:38 +01:00
Alug
bbf06b3376
add "vid.udup" same as vid.dup but not scaled with "highreshudscale"
2026-01-22 14:26:24 +01:00
Alug
a1f70b0b31
opengl: attempt to scale vhs effect "fuzzyness"
...
this makes it appear more or less the same in all resolutions, similar to software, while also improving performance quite a bit on higher resolutions
2026-01-22 14:26:23 +01:00
Alug
2e0f5c02a4
opengl: make vhs effect bars be affected by "fuzzines"
...
makes stuff slightly slower, but matches the software effect
2026-01-22 14:25:57 +01:00
Alug
0f7001ef5c
opengl: tiny optimiazation for vhs effect
...
dont call rand within the loop, use xorshift instead
while not massive, we dont need to call rand thousands of times, the xorshift is visually indistinguishable
this is still rather slow due to the crapton of draw calls and should best be replaced by a shader or something
2026-01-22 14:25:54 +01:00
PAS
4600da5782
restore SRB2_SDL2_EXE_NAME
2026-01-21 15:54:32 -05:00
indev
a3557fadef
P_PlayRinglossSound from lua might desynch so print warning about that
2026-01-21 23:38:41 +03:00
Alug
d9a67faf47
fix windoze compile
2026-01-21 21:11:52 +01:00
PAS
96eaf8850e
Add path suffix for libgme cmake module
2026-01-21 15:01:51 -05:00
PAS
e7efd46419
Fix FindGME pkg-config command, update LibFindMacros.cmake
2026-01-21 15:01:33 -05:00
PAS
346b1456cd
CMake: Fix FindOPENMPT
2026-01-21 14:59:01 -05:00
PAS
9f5a5a735b
Allow changing Cpak generator (from upstream)
2026-01-21 14:58:32 -05:00
PAS
8e4b304bed
CMake: don't configure before CPACK_PACKAGE_DESCRIPTION_SUMMARY is set
2026-01-21 14:51:17 -05:00
Alug
607fbc54fc
Merge pull request #220 from Indev450/fixcmake2
...
Fixup CMake, but simpler
2026-01-21 20:45:24 +01:00
Alug
276cf0a8cb
fix string.c include
...
whoops, not sure why that was even done like that
string.c will include strcasestr.c and SRB2_HAVE_STRLCPY will ensure eitherways we dont use the included strlcpy stuff
2026-01-21 20:04:19 +01:00
Alug
59c9af97c2
joy_open: make debug prints actually print the player number
2026-01-21 19:54:03 +01:00
Alug
4e75d99026
simplify LUA_Alloc
...
Z_Realloc already handles everything internally, no need to manually free anything
2026-01-21 19:49:55 +01:00
Alug
8e91c16e97
cmake: enable gnu extensions
...
we rely on some of them like the cleanup macro
dont want those breaking or smth
2026-01-21 19:34:44 +01:00
Alug
186421fe85
cmake: link with peethread
2026-01-21 19:23:36 +01:00
Alug
af952870c3
fix fbo oopsie
2026-01-21 19:22:40 +01:00
Alug
4eeb0b4b20
update readme to reflect this
2026-01-21 19:16:05 +01:00
Alug
cb2c65e9d9
more cmake fixups
...
- skip asset install for linux
- pass fwrapv flag
- fix asset hash stuff
- pass rdynamic flag
- add saturn specific stuff, saturnpak, saturnjoin, libbacktrace and fix screen fbo stuff
2026-01-21 19:09:50 +01:00
cobalt2727
f7bbde3982
fix ARM builds being completely broken
...
If merged, this is the quickest approach to resolve https://github.com/STJr/SRB2/issues/513
...alternatively, we could just remove the option altogether but I don't have the time right now to test whether it's needed or not
To the best of my knowledge, this covers all possible amd64 `CMAKE_SYSTEM_PROCESSOR` values based on what I'm seeing at https://stackoverflow.com/questions/70475665/what-are-the-possible-values-of-cmake-system-processor
2026-01-21 18:24:53 +01:00
Alug
c9fc3b4820
fixup cmake for macos
...
mostly based on the patch from https://github.com/Bijman/srb2bld
with some changes from https://github.com/Indev450/SRB2Kart-Saturn/pull/216
but doesent completely replace the build system with what blan has
compiles fine on nix, but needs testing on mac
2026-01-21 18:23:21 +01:00
Alug
f5195dd137
Merge branch 'crashissuereports' into Saturn-Next
2026-01-20 17:32:30 +01:00
Alug
5289f13891
Show report issue button also on I_Error
...
also make wrapper functions for everything, to reduce code dupe
2026-01-20 17:32:22 +01:00
Alug
073b35690b
dont attempt to show sdl message box on non dedicated builds running as dedicated
2026-01-20 17:32:19 +01:00
Alug
43d3ac102d
HWR_RenderPlane: cleanup code that does nothing
2026-01-20 15:42:37 +01:00
Alug
aa96f9ceb3
V_DrawVhsEffect: fix scaling with highreshudscale, fix downwards bar going out of screen bounds
...
this shouldnt account for highreshudscale at all
on very high resolutions the bars are still only half size, but atleast they dont become minuscule or just dont draw at all
also ensures both bars are clamped, on some resolutions sometimes they just go out of visible screen range
2026-01-20 14:57:18 +01:00
Alug
104b8260fb
add reducevfx to accesability menu
...
If there are things that should be handled by that toggle def feel free to suggest them!
2026-01-19 14:35:10 +01:00
Alug
edebc728ef
remove unused stuff from joyinfo
2026-01-18 19:00:05 +01:00
Alug
08e7ce3b5b
m_menu: clean up the skin display stuff a little
2026-01-16 13:27:20 +01:00
Alug
29f187b751
fix some windoze specific "-Wzero-as-null-pointer-constant" warnings
2026-01-16 12:53:34 +01:00
indev
ac3a1ad5eb
Add gcc 13.3 into list of supported versions
2026-01-16 12:02:21 +03:00
indev
1b8d7b1541
I_Error when dedi tries to go to main error
...
This will not fix the issue entirely but will at least prevent server
getting stuck and backtrace will show where did it try to go into menu from
2026-01-16 11:11:36 +03:00
Alug
b812d61da2
Merge branch 'crashissuereports' into Saturn-Next
2026-01-14 12:58:44 +01:00
indev
6fd64383d3
This isn't ceepeepee rn :SmolBuncle:
2026-01-12 22:33:30 +03:00
Alug
e984e7a6c8
Merge branch 'menumodels' into Saturn-Next
2026-01-12 19:13:21 +01:00
Alug
96f90ff9c4
push back models even further
...
bigger models still had parts being culled, hope this is generous enough idk
2026-01-12 19:13:17 +01:00
Alug
51aec0e012
Merge branch 'menumodels' into Saturn-Next
2026-01-12 18:40:38 +01:00
Alug
faadd3e89f
support the uhhh localskin setup with 3d models
2026-01-12 18:40:00 +01:00
Alug
0c091256f4
tiny cleanup + warning fix
2026-01-12 18:30:11 +01:00
indev
7a0fb01626
Make glOrtho remap coordinates to vid.width and vid.height, this makes calculating coordinates in HWR_Draw2DModel easier
2026-01-12 18:30:08 +01:00
Alug
c01818e2e3
simplify skinnum bounds check
...
lul
2026-01-12 18:30:06 +01:00
Alug
e17a8a505c
fix the culling issues
...
i hope this is right.......
2026-01-12 18:30:03 +01:00
indev
ab654deba7
Make HWR_Draw2DModel not depend on resolution, make 3d skin select use skinselectspin cvar
2026-01-12 18:29:58 +01:00
Alug
b145d7fd0e
WIP: show 3d models in player setup
...
this is incredibly ugly and hacked together
theres some weird culling issues and shit doesent really "scale" with different resolutions which needs to be fixed
but it kinda works
2026-01-12 18:29:55 +01:00
Alug
264c9e38ad
d_netfil: dont use zone memory in CURLGetFile
2026-01-11 19:46:46 +01:00
indev
e88773da4e
How did i miss the =
2026-01-11 13:08:23 +03:00
indev
310f67a06c
Fix smol mistake in strcasestr
2026-01-11 03:49:07 +03:00
indev
0914d5b8e2
-Wzero-as-null-pointer-constant is valid for c only since GCC 15.2 (from what i see)
2026-01-11 00:49:48 +03:00
Alug
291a4dbb25
disable midnight channel border flicker with "reducevfx"
2026-01-09 13:01:30 +01:00
Alug
8fe3d13935
fix InitColorLUT
2026-01-09 11:08:22 +01:00
Alug
bdc326b14e
leveltime be tic_t
...
:chaosleep:
2026-01-08 00:43:43 +01:00
Alug
d938e38ad3
Acessability: add basic "reducevfx" toggle to disable/reduce certain effects
...
toggles certain effects, which may be troublesome to some players
-disabled hyudoro flashing, instead makes player translucent
- Makes rainbow colour effects, such as invul, change colours very slowly
- Disables underwater and heatwave screen effects
- Disables palette flashing
- Disables vhs effect
not the most pretty implementation, but im lazy and this works
feel free to suggest more things
2026-01-08 00:40:24 +01:00
Alug
3d4772455b
K_SpawnSparkleTrail: check for blend effect apply outside the loop
...
tiny optimization
2026-01-08 00:40:24 +01:00
Alug
e1f0089627
enable "Wzero-as-null-pointer-constant", fix cases of it
...
prevent ambiguity
shoutout blankart for making me aware this exists
2026-01-08 00:40:24 +01:00
Alug
edbebbf082
fix wrong type for K_DriftSparkColor
...
all the colour stuff is still a bit of a mess, but generally its handled as an uint8
2026-01-02 18:34:13 +01:00
Alug
242dee499d
initialize more globals that have been missed
2026-01-02 18:34:10 +01:00
Alug
a2de1e24c5
d_cliserv: fix casts from nan to int type
...
in few cases the files totalsize might be 0, which results in a nan, casting that to int type is undefined behavior
2025-12-28 17:46:44 +01:00
Alug
c0cce90e60
properly handle getcwd error in IdentifyVersion
...
if getcwd fails, the buffer contents will be undefined
so we shall just overwrite it again with "."
2025-12-27 15:34:26 +01:00
Alug
67e74b5874
fix w_wad oopsie
2025-12-27 15:13:20 +01:00
Alug
9639ace28a
fix dedicated server build warnings
2025-12-27 15:07:13 +01:00
Alug
a2616778cc
fix another -Wnull-dereference warning
2025-12-27 15:06:50 +01:00
Alug
495c34dd40
fix gcc version detection fallback stuff
...
latest_gcc_version should always just be X.x not X.x.x
this broke some warning flags for me
2025-12-27 13:02:30 +01:00
Alug
f38ca9aa28
Signal Handler: Add button to report issues to github
...
mostly based on what srb2 does with some stuff from srb2-legacy
the button will attempt to open the issue page on the saturn git when a crash occurs
2025-12-27 12:41:41 +01:00
Alug
b0bf588c27
fix some null pointer dereferences
...
and enable -Wnull-dereference by default
2025-12-27 10:52:21 +01:00
Alug
35e4f35f6e
fix some shadowed variables, enable -Wshadow by default
2025-12-27 10:32:16 +01:00
LJ Sonic
7866b769cc
Do not archive table values for nil keys
2025-12-27 00:00:39 +01:00
Alug
1af1e42dab
FBO: remove nvidia xwayland hack
...
this has been a non issue since a while now, so can remove this (we shouldnt work around driver bugs anyways)
2025-12-26 23:20:42 +01:00
Alug
40bd3e5e19
simplify opengl vsync set
2025-12-26 23:20:39 +01:00
Alug
25dd3b4976
Revert "Fix static memory being re-tagged as purgable"
...
This reverts commit c544cf9a7c .
2025-12-26 21:44:58 +01:00
Alug
0fe3086a5a
Fixup the doomednum lookup
...
properly match the old linear lookup by returning the FIRST match for doomednum
also shrinks the array, doomednum max is 4095, no need for such massive array, also fixed a off by
should fix some join desynchs and desynchs on certain maps
2025-12-26 18:58:41 +01:00
Alug
c9afd4a2cd
G_GetDemoDate: make safer and use static memory
...
bunch of smaller issues before, no real checks for strltol and potential free on a null pointer lul
also skips replays with shorter than 10 char names and handles errors better
2025-12-24 00:06:17 +01:00
indev
7518a6f181
Revert "Sort directories too in replay list"
...
This reverts commit 7c848f4be5 .
2025-12-24 01:36:02 +03:00
indev
2bf4c44259
Revert "Actually add filepath to directories to sort them"
...
This reverts commit 1c95e5f40e .
2025-12-24 01:36:00 +03:00
indev
1c95e5f40e
Actually add filepath to directories to sort them
2025-12-24 01:23:20 +03:00
indev
7c848f4be5
Sort directories too in replay list
2025-12-24 00:54:39 +03:00
Alug
a4af254643
Revert "dont call I_Quit from within "quit_handler", let it signal main loop to quit"
...
This reverts commit a2feaa7fde .
2025-12-22 20:16:04 +01:00
Alug
860dc37fe4
Optimize: move a few strlen calls out of loops
...
when applicable and the input does not get modified within the loop
needs some testing incase i oversaw something
2025-12-18 19:13:47 +01:00
Alug
8b3d55fbc8
HWR_ProcessSeg: port softwares code to skip rendering inner sides that are "joined" to other fofs
...
This seems to improve performance on maps with moderate to lots of fofs quite a bit.
On maps with only a few fofs, this makes no difference or has very very little regression
Need to test and check if there are any visual errors, but so far everything seems good
2025-12-18 19:11:37 +01:00
Alug
0540b5656a
OpenGL: keep around our drawnodes memory
...
no need to constantly reallocate new memory
we dont have renderer switch, and the next level will render drawnodes anyways
those wont grow super big also, so theres no big worry about wasting tons of memory
yes i like ceepeepee vectors, how can you tell
2025-12-18 19:11:26 +01:00
Alug
6c98440f27
Remove pure attribute from fasticmp
...
While i assume this to be fine currently, i quite frankly dont trust the srb2 codebase enough aswell as preventing any future issues if there should ever be need to switch locales, since toupper WILL change behaviour in such cases which does not qualify as pure
2025-12-16 17:52:13 +01:00
indev
3828a9f8e0
Add flipcammode toggle for using local flipcam settings instead of player flags
2025-12-11 22:58:45 +03:00
Alug
2c7c9ec32a
fastcmp.h: mark fastcmp functions as pure
...
this might let the compiler optimize aways subsequent calls in some cases
strcmp etc from glibc also does it
prayin nothin changes the locale at runtime lmao
2025-12-11 20:28:31 +01:00
indev
1ccd3e37bc
Init playerinfo[i].node to 255 so if playerinfo packet gets lost, server join screen doesn't display empty player names
2025-12-11 21:37:31 +03:00
Alug
6ad344f65d
findfile: let files added with "-file" look in addon/downloads folders first
...
due to https://github.com/Indev450/SRB2Kart-Saturn/commit/956fc099adcd7f33993c43c8ee3aea64df3fe9b4
IWADS shouldnt use findfile anymore
If there should be such case we can always expose the startupiwad count to check if were currently searching for iwads iirc
2025-12-11 18:19:21 +01:00
indev
1c289d73ca
Oopsie
2025-12-11 17:54:03 +03:00
indev
44ba69cf53
Move lite steer and turn smoothing cvars into individual player controls menu
2025-12-11 17:35:35 +03:00
indev
4cea0c1414
Add autoaccel into accessibility menu
2025-12-11 16:43:59 +03:00
Alug
4ee468f5c6
Accessability: Add "Auto Acceleration" feature
...
ported from hostmod
2025-12-11 14:27:09 +01:00
Alug
9a58eb3010
G_BuildLocalTiccmd: remove "moveinput" variable
...
checking both cmd->buttons aswell as cmd->driftturn already handles those cases
2025-12-11 14:27:06 +01:00
Alug
59ff5e61bf
Revert "Fix use-after-free when mobj is removed while still playing sounds"
...
This reverts commit 3bdc745bd1 .
2025-12-10 19:13:07 +01:00
Alug
821c061f82
Optimize: Use doomednum lookup also when (re)spawning mapthings
...
not just for loading savegame thinkers
Actually even provides slight runtime performance improvement, but mostly makes levelload faster
2025-12-10 18:22:34 +01:00
Gustaf Alhäll
eb4d9bbdd5
Fix decompression warning when starting a server
2025-12-09 17:57:02 +01:00
Alug
c19c80d797
command.c: fix "alias" command crashing when no aliases were registered
...
if we dont have aliases list how do we check the next alias in the list aswell?
2025-12-07 21:08:38 +01:00
Alug
a2feaa7fde
dont call I_Quit from within "quit_handler", let it signal main loop to quit
...
fixes an issue for me which led to having the game threads getting stuck when sending an interrupt signal to the game due to some thread issues with the sdl subsystems
shoutout to dsda doom for this
2025-12-07 20:27:57 +01:00
Alug
3cb4e86b48
i_system: "fix" recursive i_quit
...
well this still aint working all to great, but atleast this allows me to quit the game if it gets stuck without having to always send a kill signal to it
copy pasted from what the dedicated build does
2025-12-07 20:24:18 +01:00
Alug
ed758fc921
g_demo: check for maplump existance directly
...
cant really rely on mapheaderinfo to tell us if some map exists or not
2025-12-07 20:23:57 +01:00
Alug
a191c8b71e
g_demo: screw you LF2_EXISTSHACK
2025-12-07 19:04:21 +01:00
Gustaf Alhäll
3f2e0bd349
Fix memory leak in AATree string trees
2025-12-06 19:40:54 +01:00
Gustaf Alhäll
3bdc745bd1
Fix use-after-free when mobj is removed while still playing sounds
2025-12-06 19:40:49 +01:00
Alug
f578781418
put "string.c" earliest in sourcefile
...
otherwise Windows is unable to find nongnu_strcasestr
2025-12-06 15:45:45 +01:00
indev
0bb63ee0af
Use size_t there
2025-12-06 17:34:05 +03:00
Alug
2ae9563ab3
Menu: fix camera options from within accessability options returning to the main menu
...
really wonky setup, but some other menus do similar things...
2025-12-05 19:13:01 +01:00
indev
6b429e4388
Add locatelump command
2025-12-05 20:35:48 +03:00
Alug
0321b0d94a
m_menu: do some cleanup - replay drawers
2025-12-05 17:29:49 +01:00
Alug
ac57b7fd2d
Menu: show stats for current skin in Time Attack menu
...
+ some cleanup
2025-12-05 17:29:46 +01:00
Alug
7013e63142
Menus: dont advertise encore toggle if its not unlocked yet!
...
this wont do anything anyways besides telling you you havent unlocked it yet
so can just hide it
2025-12-05 17:29:43 +01:00
Alug
4e1ef7c0cd
Revert "remove the wonky double tap input for controllers"
...
This reverts commit 9e2fd091a8 .
causes some wonky issues still, will need to look into it more, but for now revert
2025-12-05 15:11:51 +01:00
Alug
892f2253ea
p_spec: remove hardcoded animdefs table
...
srb2.srb includes an ANIMDEFS file which WILL override this anyways and includes any of these.
so no need to complicate the code with this
2025-12-05 14:58:19 +01:00
Alug
bebe62346f
fix Flat loading code passing non null terminated strings to W_CheckNumForName
2025-12-05 14:58:15 +01:00
indev
834a94e429
Ok i guess we still need old_z2 :ChonkBunckle:
2025-12-05 03:10:41 +03:00
indev
fcf833ff48
Move ghost mobj old_x2 hack into P_SpawnGhostMobj to cover all cases where it would matter
...
ty lug <3
2025-12-05 03:10:41 +03:00
indev
f2a27539d3
Experimental: remove mobj->old_x2, old_y2, etc fields
2025-12-05 03:10:41 +03:00
Alug
05d26654df
p_user: do some tiny cleanups
2025-12-05 01:07:18 +01:00
Alug
cee6a27340
mark debugfile with UNLIKELY
...
this is for debug, and esp network debug which barely anyone ever needs, so can tell compiler better branch hint
2025-12-05 01:07:14 +01:00
Alug
66e35a9d67
k_kart: slightly cleanup driftrelease code
2025-12-05 00:29:31 +01:00
indev
ad096ccd42
Update LUASTUFF.md
2025-12-04 19:21:30 +03:00
Alug
7a9e81828a
forgot to remove this oops
2025-12-04 15:41:20 +01:00
Alug
71e7dacb56
r_opengl: dont set directional light model shader uniforms if we dont use them
2025-12-04 01:26:43 +01:00
Alug
f9c0ee865f
make those ternaries a little prettier lul
2025-12-04 01:23:42 +01:00
Alug
154eaaf027
hw_main: cleanup and simplify HWR_RenderPolyObjectPlane
2025-12-04 01:23:39 +01:00
Alug
66f5f9b2a2
hw_main: handle implicit float conversion cases explicitly
2025-12-04 01:23:36 +01:00
Alug
b27275b887
hw_batching: fix typo in non shader polygon comparitor
...
checked poly1 against poly1 sky
2025-12-03 18:15:30 +01:00
indev
c81c2c1d8d
Add option to show current song credits in pause menu
2025-12-03 15:47:38 +03:00
indev
ccfab57a8c
Add 'time per frame' argument for hud.setVoteBackground
2025-12-02 23:59:02 +03:00
Alug
56d1343f1b
dont call CON_Drawer during frameskip, just call CON_MoveConsole instead
...
fixes the issue at hand, without making the console flicker in gifs
sigh....
2025-12-02 20:49:56 +01:00
indev
b273bc3ca8
Hide localskins menus immediately when option is changed
...
@Alug :blobhug:
2025-12-02 22:12:49 +03:00
Alug
d4f58a885b
add toggle to let console prints show in main menus
...
if you want this for some reason
2025-12-02 20:07:56 +01:00
Alug
04458f18f8
m_menu: fix splitscreen players being unable to change the names from player setup
...
smol oversight :blobcatpats:
2025-12-02 19:43:05 +01:00
indev
64152eea0d
Fix few possible multithreading bugs related to ReplayNamesLoadThread
2025-12-02 20:59:27 +03:00
indev
0e0a690e3c
Print a warning when luaL_resourcetryagain force triggers garbage collector
2025-12-02 20:39:38 +03:00
Alug
f283d3ca43
suppress wrong "-Warray-bounds" warning in G_DeviceLEDTick
...
newer gcc does this for whatever reason, its fine
splitscreen will never call this out of its bounds
2025-12-02 18:40:30 +01:00
Alug
982fff959f
blua: attempt emergency garbo collection on file io operations if they fail
...
ports of
https://github.com/lua/lua/commit/e885dee5ab4dbee2457ee2023340e848fdabdef9
and
https://github.com/lua/lua/commit/3d838f635cc81ec3332f9a904992db1c6d8a46ad
prevents massive memory leaks and other issues due to faulty lua scripts
2025-12-02 18:31:32 +01:00
Alug
b0e968e3c3
raise version number to 9.2
2025-12-02 15:54:53 +01:00
Alug
e5bbb14ce0
replayhut: fix race condition in M_ResetDemoList freeing the demolist vars
...
in rare cases this could free the data the thread is currently using
so we gotta wait for it to finish first
2025-12-02 14:59:12 +01:00
Alug
327cca2e8e
change freecam condition for awayview
...
shouldnt change the behavior much as we wont see anything without a camera, but this is explicit about what exactly is wanted (i.e. thiscam may be null, we only check due to null deref, we only care about if freecam is active)
2025-12-02 12:48:47 +01:00
Alug
e02e9a12d7
ticcmd: replace magic numbers with constants
...
names lifted from RR
2025-12-02 12:48:43 +01:00
Alug
9e2fd091a8
remove the wonky double tap input for controllers
...
finally figured out what occasionally messed up my bound controls lol
why in the world is this even a thing for controllers??
2025-12-02 00:58:18 +01:00
Alug
0a04fca634
remove mlooky, rename mousesens to mousexsens, make mouse y sensitivity not be affected by x sensitivity
...
mlooky basically just took the place of mousey, which did nothing before, but is a better name
2025-12-02 00:55:59 +01:00
Alug
8a3f793324
g_input: init some globals that were missed
2025-12-02 00:43:27 +01:00
Alug
e91892849c
dont let splitplayers 3 and 4 input gamecontrols in the menu
...
oversight lul
2025-12-02 00:43:22 +01:00
Alug
6b4e3c9d13
update saturn credits
...
phew so every line now has two names
otherwise we cannot fit everything and anyone into this anymore
this even allowed to put back the tooltip at the bottom
i still want to redo the credits completely at some point with some cool stuff though
2025-12-01 23:41:27 +01:00
indev
5f55b81fbf
Fix M_ClearMenus being called too early in map command func
2025-12-02 00:51:40 +03:00
Alug
ca68bab002
fix more cases of dangerous PU_PATCH_LOWPRIORITY
2025-12-01 22:31:20 +01:00
Alug
339eb1879e
fix the credits freeing our HUD item patches
...
goddamit i hate PU_PATCH_LOWPRIORITY
2025-12-01 22:24:42 +01:00
indev
1adb49c65c
Fix emotes being slightly offset in chat log
2025-12-02 00:02:55 +03:00
Alug
1d33a05a85
Fix some Serverbrowser issues
...
- Fix serverlist results not being properly reset, which lead to reopening/refreshing the serverlist to show the old state, selecting one of those "old" servers then lead to just connecting to nothing
- Fix the resfresh button making servers disappear if hit too often too fast (from srb2)
https://codeberg.org/srb2classic/srb2classic/commit/3acc312923da0fe5e07c0517d9bff9e8b657b1eb
2025-12-01 21:57:57 +01:00
Alug
cfcd20d44a
G_AdjustViewEx and macro for G_AdjustView
...
neppy likes it more which is fair so we do this too
2025-12-01 21:08:30 +01:00
Alug
204607e272
replays: always check if map is loaded not just in old 1.0 replays
...
cause like, otherwise it will just I_Error which is worse lol
like this we just get thrown back to titlescreen
2025-12-01 21:03:57 +01:00
Alug
b89a8ca6f9
replays: properly throw player back to titlescreen from replay error
...
fixes the game becoming stuck in limbo state if replay fails to start
2025-12-01 21:03:57 +01:00
indev
d4aa352d59
Don't try to open replay if no replays are found
2025-12-01 22:49:36 +03:00
Alug
c489841732
Fix record attack ghosts sometimes crashing
...
due to ghosts occasionally ending to early and game interpreting them as still valid uhhhhh
lets pray this wont explode or cause any weird issues......
credits to RR
REVERT THIS ONCE I GO AND FIXUP THE REPLAY MESS
2025-12-01 20:19:11 +01:00
Alug
a6a97b4c4f
add gdb_history to gitignore
2025-12-01 20:19:03 +01:00
indev
fba070f82e
Expose cameras to lua outside of hud hooks
2025-12-01 21:08:24 +03:00
Alug
10c117f95f
dont reset freecam if the player you are "supposed to be watching" specs in replays
...
this aint pretty, but im too lazy to make it pretty sincerly
2025-12-01 18:23:51 +01:00
Alug
bceda5beb4
dont force awayview when in freecam
2025-12-01 18:23:48 +01:00
Alug
c50c936b1f
remove hwr_shutdown call
...
honestly this didnt help with the issue i had, game should already release all the memory on quit anyways.
this just makes it take longer to quit
2025-11-30 20:28:46 +01:00
Alug
22a6be76b5
OpenGL: fix frustum culling not accounting for spritescales
...
also rename "this_scale" to "thing_scale" to be more descriptive
Fixes the comically large tree disappearing when it shouldnt on "Ethereal Crystal"
2025-11-30 14:47:02 +01:00
Alug
d3d25df3c5
hw_main: cleanup HWR_RenderX stuff a bit
2025-11-30 14:46:30 +01:00
Alug
2a3f9e9ee6
hw_cache:rename some stuff
...
more in line with the rest of the code
2025-11-30 14:45:37 +01:00
Alug
31f01fd5da
Revert "Provide our own SDL2 dll files"
...
This reverts commit 91530c61ad .
i hate windows, i hate sdl breaking with every single update
2025-11-30 14:37:00 +01:00
indev
bb9a4a0da0
Add listemotes command, also fix few emote warnings not printing newlines
2025-11-30 00:36:36 +03:00
Alug
3bac722562
m_menu: cleanup gamepad menu stuff a little
2025-11-29 19:13:12 +01:00
Alug
3769ab74ac
m_menu: move onchages back to m_menu, get rid of nextmap onchange hack
2025-11-29 19:07:01 +01:00
Alug
c3d6cdd272
ensure modelMatrix is initialized
2025-11-29 14:26:08 +01:00
Alug
093602fd6b
comment out unused dynslope member from levelinterpolator_t struct
...
this wont ever work with our thinkerless dynslopes
2025-11-29 14:26:05 +01:00
James R
a80d119c58
Rename strcasestr to nongnu_strcasestr, macro strcasestr ifndef _GNU_SOURCE
...
Fix for GCC C++ compiler, which always defines _GNU_SOURCE.
2025-11-28 18:23:25 +01:00
Alug
1cdc92a62b
HWR_Precache: lookup for flats that already have been precached
...
yes i used c++ unordered_set here, yes i suck with linked lists, lol
maybe speeds this process up a little
2025-11-28 18:07:21 +01:00
Alug
6b8de308b7
HWR_Precache: check against gl_numtextures not numtextures
...
in practice those should mostly be the same but the variable is for gl so
2025-11-28 16:53:12 +01:00
Alug
310e64d8be
OpenGL: add a little more checks during texture free
...
prob not necessary but feels better
2025-11-28 16:53:10 +01:00
Alug
d2d3afc7f4
software: clip sprites that are out of view
...
similar to what the frustum cull does in opengl, clips sprites that are out of view in vertical direction
2025-11-27 22:53:12 +01:00
Alug
c26d2faee9
OpenGL: fixup spherefrustum culling and use it for sprites
...
clips sprites that are out of our view, especially with precip this may lead to significant speedup in certain cases
huge thanks to indev for helping with this <3
huge thanks to dsda-doom for the maths needed!
2025-11-27 22:53:12 +01:00
Alug
1c82c338a5
sprite gzt is float in opengl render........
2025-11-27 18:57:21 +01:00
Alug
c81cd48552
R_ProjectSprite: move fakeflat clipping before light maths
...
so if applicable we have slightly less work
2025-11-27 17:43:40 +01:00
Alug
306f7d455e
tiny optimizations k_kart
2025-11-27 17:43:36 +01:00
indev
dc40befa88
Use I_GetTime for animated emotes, so anim argument in M_DrawEmote is not needed
2025-11-27 18:49:43 +03:00
Alug
2222272d6f
remove more unused/uneeded things
...
- delet hw_dll
- remove sector_t ceilspeed and floorspeed
- remove a bunch of stuff from viewvars_s
2025-11-27 16:49:50 +01:00
Alug
1849d5aade
R_ProjectSprite: make sprite clipping work with sloped fake floors/ceilings
...
from eternity engine
2025-11-27 16:49:47 +01:00
Alug
3878c2f72a
DoAddLine: add fast check for lines with same front and back sectors without middle tex
...
taken from dsda-doom
2025-11-27 16:49:44 +01:00
Alug
7cf3bceaff
HWR_Subsector: avoid calling HWR_AddSprites on already processed sectors
2025-11-27 16:49:41 +01:00
Alug
1e394b0530
pass frontsector ceiling z to R_Prep3DFloors
...
in both cases "R_Subsector" already got the frontsectors ceiling z, so no need to get it again within R_Prep3DFloors
should save some P_GetSectorCeilingZAt per frame
2025-11-27 16:49:38 +01:00
Alug
b09660204a
r_bsp: move polyobj renderside check into R_AddPolyObjects
...
uneeded within R_AddLine as outside R_AddPolyObjects this will never be called if currecnt seg is a polyseg
2025-11-27 16:49:35 +01:00
indev
7b4592377e
Make emote search case insensetive (emotes themself still are case sensetive)
2025-11-27 18:40:52 +03:00
indev
45ba69a45a
Discordify emotes a bit more :chonkbunckle:
...
- When autocompleting emote with enter, don't send it immediately
- Don't autocomplete after typing 1 character after : (allows text emotes like ":c")
2025-11-26 22:56:04 +03:00
indev
4d9c345202
Add support for emotes in console chat mode (and support for emotes in console in general)
2025-11-26 22:45:03 +03:00
Alug
0437952027
mark checkcoord as const
2025-11-26 10:09:55 +01:00
Alug
d188839d0b
move R_QuickCamDist to r_main
...
also mark it with PUREFUNC and R_QuickDist with FUNCMATH, so compiler may optimze it more agressively
2025-11-26 10:09:52 +01:00
Alug
86ac11f877
replace localangle assignments with P_ForceLocalAngle
...
just a little neater, there also was a function to force the player angle, but this most likely wouldve changed behavior
2025-11-25 22:53:30 +01:00
Alug
0f59e0e270
some mobj interp fixes
...
copy pasted from RR thx
2025-11-25 22:53:27 +01:00
Alug
cd32270ec0
. W
...
:mompie:
2025-11-25 20:25:29 +01:00
Alug
f2a7f9ccaa
fix compile with HAVE_DISCORDRPC
2025-11-25 20:21:23 +01:00
Alug
2c2ffe36d7
init a few more globals that were missed
...
i love globals that are in the middle of files.....
2025-11-25 20:15:27 +01:00
Alug
951b880acb
d_netcmd: use cleanup macro for map and localskin command
...
did Command_Map_f really leak memory all the time? lul
2025-11-25 19:19:19 +01:00
Alug
ecfa973e6b
move M_ResetDemoList hack to G_InitNew
2025-11-25 19:19:17 +01:00
Alug
749b87b4ca
bring back addon name scroll that was lost
...
oopsie
2025-11-25 17:46:58 +01:00
Alug
7f671e4e30
clean and fixup addon menu
...
Hopefully should finally fix addons not showing as loaded sometimes and other issues with warning windows being unclosable, etc
lets pray this doesent cause any issues....
add a tickroutine for menus aswell, which will be called in M_Ticker
courtesy of Ring Racers
https://gitlab.com/kart-krew-dev/ring-racers/-/commit/bc9f9d740a0262c249917a37e250ef0209185b12
https://gitlab.com/kart-krew-dev/ring-racers/-/commit/8312f12d6cae934ae8de7e46da231c311f4b4fde
https://gitlab.com/kart-krew-dev/ring-racers/-/commit/6e671d4894e56cd3af09d6e9af2635f030817361
2025-11-25 17:42:01 +01:00
indev
ee0e4836f5
Fix race condition in server list search
2025-11-25 19:06:02 +03:00
Alug
a01cd628ab
do some more cleanup when shutting down graphics system
...
make sure we free all our opengl allocated stuff by calling HWR_Shutdown
make sure we also destroy our sdl texture, renderer and window if the exist
2025-11-25 16:38:19 +01:00
Alug
4a4e668d21
delet more unused/empty sdl stuff
...
I_WaitVBL, I_BeginRead and I_EndReada
2025-11-25 16:38:16 +01:00
Alug
03c579769c
delet some duped declarations
2025-11-25 13:15:53 +01:00
Alug
2e88b6a1dd
fix portal contents being culled erroneously also in software
...
also dont rember commenting those out in gl lul
2025-11-25 02:18:23 +01:00
Alug
5265b147f5
HWR_BlendMidtextureSurface: add extra guard to check linedef alpha
2025-11-24 22:42:53 +01:00
Alug
b4a37a2fa4
fix performance regression in certain cases due to changed polygon order
...
wonky, needs testing as this may slow down other parts
2025-11-24 22:42:50 +01:00
Alug
93eb2b336d
Dedicated: dont create or destroy ANY lua hud drawlist
...
not needed at all in dedi
2025-11-24 21:32:26 +01:00
Alug
30acdca9d3
cache SRB2BACK patch on startup
...
this is used in a bunch of places while being pretty small, so just cache it on start
2025-11-24 21:26:07 +01:00
Alug
677b34c174
dont free PU_PATCH_LOWPRIORITY patches in render_none
...
also dont cache them either!
simply not needed at all
so save us a little work
2025-11-24 21:16:17 +01:00
Alug
b3be7bcedc
Player Infoscreen: if availible, display player names in their skincolor
...
we hijack the playerinfo data field for this, and pray to the kart gods this is unused on the ms
2025-11-24 18:20:00 +01:00
Alug
19c10be76b
R_QuickCamDist & R_QuickDist: turn into function and make it fixed point
...
since we mostly use it in fixed point maths, this just makes alot more sense
moving it into inline functions ensures that in C code this wont evaluate its arguments multiple times
2025-11-24 17:44:20 +01:00
Alug
60222f2f00
R_AllocateTextures: remove "reallocuser"
...
this just does... what Z_Realloc does anyways...
Z_Realloc already zeroes out the new memory it allocates
2025-11-24 17:44:16 +01:00
Alug
34edd0a2e3
some misc cleanups
...
also account for a few more double evluations from min/max macros
and save a few angle to fixed conversions in spb handling
2025-11-24 17:44:13 +01:00
Alug
46b485df14
Server Infoscreen: Show server kart speed instead of "Cheats"
...
effectively almost all servers will get flagges as having cheats enabled, so instead show the game speed
2025-11-24 16:57:50 +01:00
Alug
8d3632caca
ensure all our savebuffers are initialized
...
just some safety
2025-11-24 03:16:50 +01:00
Alug
b5ae9ba733
remove erronous P_RunDynamicSlopes call in P_PreTicker
...
we dont run preticker when we netjoin so.....
2025-11-24 01:03:44 +01:00
Alug
2a823ecd60
move K_KartPlayerHUDUpdate to k_hud
...
how tf did i miss that lul
2025-11-24 00:35:25 +01:00
Alug
940327210f
p_setup: move interpolator reset into P_FreeLevelState
2025-11-24 00:35:23 +01:00
Alug
20a08df1e1
K_PlayerEffectsShouldBlend: also apply when player has invulnerability
2025-11-24 00:30:28 +01:00
Alug
4cf27d40e9
apply additive blending to ghosts aswell when using "playerblendeffects"
...
same conditions as the others
either be in sneakerboost, or go fast enough
2025-11-24 00:28:31 +01:00
Alug
d18c9a257a
remove erronous ";"
2025-11-24 00:15:59 +01:00
Alug
65dc5bb1fd
dont free our titlescreen patches
...
ever...
Fixes a crash when you take ages on server join and timeout due to it.
2025-11-23 22:31:29 +01:00
Alug
e18be33c91
F_IntroDrawer: remove "highres" variable
...
this was ALWAYS true anyways
2025-11-23 22:02:01 +01:00
Alug
9ad6751719
make Controller Rumble strength user changable
...
range from 0.25 to 4
to account for all types of controllers and such
base 1 was set around what felt good on my dualsense, not entirely sure if this is the best baseline to go with
otherwise it could still be adjusted
2025-11-23 18:49:40 +01:00
Alug
86ab994408
G_DeviceRumbleTick: get rid of magic numbers
...
use named constants instead
2025-11-23 18:01:30 +01:00
Alug
21f0d603c3
move gamepad led and rumble tickers into g_input
...
not entirely sure why i placed them in d_main and p_tick respectively
but they should be here
thx neppy for making me question this lul
2025-11-23 17:59:51 +01:00
Alug
971513e7d3
HWR_BlendMidtextureSurface: fix major performance regression
...
big oopsie from my side
this caused textures that werent translucent to be marked with translucent in a bunch of cases, which led to them being rendered in a slower path
2025-11-23 15:47:03 +01:00
indev
03929e551f
emotes: change autocompletion behavior to work like console
2025-11-23 01:31:38 +03:00
Alug
db5ae247b6
LoadMobjThinker: revert faulty local player check
2025-11-22 21:54:54 +01:00
Alug
d46beab34e
fix signed integer overflow in polygon hash calculation
...
also gives a speedup on some maps lul
2025-11-22 21:47:45 +01:00
Alug
9a794232d7
HWR_ProcessSeg: fix cliphigh overflow
2025-11-21 19:51:00 +01:00
Alug
db635e5c5b
K_GetScreenCoords: fix signed overflow
...
why even cast that to signed......
2025-11-21 19:41:46 +01:00
indev
8a105a9679
If there is only 1 emote suggestion and user presses enter, autocomplete emote
2025-11-21 20:39:33 +03:00
indev
46b968a351
Fix autocomplete messing up emote in few cases
2025-11-21 20:34:34 +03:00
indev
a9836307b2
Allow suggesting emotes if currently typed part matches inside emote, not only at beginning
2025-11-21 20:16:19 +03:00
Alug
b6515bb0ae
fix Wimplicit-const-int-float-conversion warning
2025-11-21 15:16:39 +01:00
Alug
b8257e9037
fix memoryleak when searching for iwads
...
I_LocateWad returns mallocd memory that needs to be freed
and our home search does not need a tmp ptr
just do as we did before and sprintf it into returnwadpath
also check home directory before the hardcoded lists like before (might speed up startup a little on nix)
also cleanup iwad search in dedi builds and apply everything there aswell
2025-11-21 14:47:13 +01:00
Alug
416a2565f9
hw_batching: use polygon hash signbit to detect skywalls/horizonlines
...
in comparepolygons
gives a nice little performance bump of around 10-15fps in heavy cases
2025-11-20 17:52:14 +01:00
Alug
fa75ad4cdd
r_opengl: smol micro optimizations
...
not much, mostly just avoiding redoing things
2025-11-20 17:52:10 +01:00
Alug
cedddaadfc
r_opengl: delet byte2float lookup
...
just do direct division
no performance difference at all, but gets rid of that huge ass table
2025-11-20 17:52:07 +01:00
Alug
43ec517cdd
small fixes for gamepad indicator led stuff
...
- skincolors are uint8 type not uint16
- ensure desired colour is within skincolor range
- rename G_GetSkinColor to G_GetSkinColorForGamepad
- replace pointless array with single variable for current color in D_DeviceLEDTick
- remove pointless call to G_GetSkinColorForGamepad when hotplugging gamepads (G_SetPlayerGamepadIndicatorColor will call it itself when 0/skincolor_none is passed)
2025-11-19 23:38:29 +01:00
Alug
495ad5ce06
move this back oop
2025-11-19 22:44:38 +01:00
indev
31ce643311
Check if mobj was actually spawned before setting islocal
2025-11-19 22:07:55 +03:00
Alug
b5c1f21ac1
mark all batching variables with static
...
they are only used within this file, no need to advertise them as global
2025-11-19 18:13:32 +01:00
Alug
86c1b2cbef
simplify the vector buffer stuff
...
honestly doesent make that much sense in most cases to grow capacity * 2 (slightly misunderstood some stuff on implementation)
and in other cases dont need to manually check for resize
2025-11-19 18:12:20 +01:00
Alug
ad828b8f4b
reduce scope of some fps counter vars
2025-11-19 00:26:07 +01:00
Alug
5dda681c8a
clean up some more render float maths
...
- dont use M_PIl in double or float maths
- dont use M_PI in float maths (use M_PIf)
- use tanf instead of tan
2025-11-19 00:26:03 +01:00
Alug
92df8ffe01
remove thread.h include, use "thread_local" for everything
...
we enforce c++ 17, thread_local is a c++11 extension, so this should work everywhere
2025-11-18 22:38:37 +01:00
Alug
2ee8dc09d1
fix opengl portals (and its contents) being culled in some cases they shouldnt be
...
we do culling per our viewmatrix since a while, which wasnt properly set up for portals beforehand and used whatever was last which was then incorrectly applied to portal culling :chaobaba:
2025-11-18 22:38:32 +01:00
Alug
b8f9392efd
delet I_UpdateNoBlit
...
this didnt do anything anymore
2025-11-18 22:38:30 +01:00
Alug
99f1166eb1
p_mobj: check for common mobjs first
...
players first, then kart items, shadows and then some srb2 things that are commonly used
makes more sense to check for all of those first everywhere, so we may skip a crapton of pointless checks in many cases
2025-11-18 16:23:27 +01:00
indev
7ab8bf1bbf
Emotes: only print 'too many frames' warning if we actually get non-empty frame
2025-11-18 12:20:33 +03:00
Alug
a994d7c050
G_DoPlayDemo: fix maybe unitialized warning
...
in this case this wouldve been fine, tho variables using the cleanup macro should always be initzialized for safety
2025-11-17 21:59:21 +01:00
Alug
e46d548080
testing test
2025-11-17 20:23:58 +01:00
Alug
3a7108ecfa
Merge branch 'Saturn' into Saturn-Next
2025-11-17 20:23:23 +01:00
Alug
bcf876a4c4
Merge branch 'Saturn-Next' into Saturn
2025-11-17 17:52:31 +01:00
Alug
8ab15b73a9
raise version to 9.1
2025-11-17 17:05:19 +01:00
Alug
301d73a30e
Merge pull request #213 from Indev450/revertsdl
...
Revert SDL2 to 2.28.5 and revert SDL_Mixer to 2.0.4
2025-11-17 17:26:20 +01:00
Alug
2ef4e7fcba
Merge branch 'Saturn-Next' into revertsdl
2025-11-17 16:00:16 +01:00
Alug
7eb118920f
SOCK_Get: recvfrom returning 0 still means its not a valid packet
...
0 lenght packets means, nothing
0 is still failure, just graceful, ignore that shit, those are not "valid" packets
2025-11-17 15:57:06 +01:00
Alug
2f0588355e
remove old xcode stuff
...
apparently this does not work at all, and instead cmake can be used on macos
2025-11-17 04:56:58 +01:00
Alug
3e6830fc70
remove sdlsound, provide dummy sound instead
...
sdl sound was completely broken, so just provide a blank dummy interface instead, when compiling without sdl or mixer
2025-11-17 04:56:55 +01:00
Alug
2faf859e32
add mapicon packets to packettypename
...
so they properly show in the net debugfile
2025-11-17 04:56:15 +01:00
indev
8c31fd8a34
Allow searching for files inside luafiles
2025-11-17 03:15:23 +03:00
indev
4dd6d52550
Revert "Only skip exclude_paths if we're looking for addons (allows commands like exec find configs in luafiles)"
...
This reverts commit 8524465767 .
Right, -file exists
2025-11-17 03:14:20 +03:00
indev
8524465767
Only skip exclude_paths if we're looking for addons (allows commands like exec find configs in luafiles)
2025-11-17 03:12:00 +03:00
Alug
91530c61ad
Provide our own SDL2 dll files
...
this is plain 2.28.5 like before, but with a fix for the right ALT-GR key backported, so non US layouts can work properly
2025-11-16 22:22:14 +01:00
Alug
89f450db27
Revert "Simplify intermission timer code"
...
This reverts commit ed16c4fd9f .
2025-11-16 21:56:15 +01:00
Alug
3e212ebaad
Revert "Simplify intermission timer code"
...
This reverts commit ed16c4fd9f .
2025-11-16 21:47:21 +01:00
Alug
14af9eb82a
Revert "Merge pull request #204 from Indev450/updatesdl2again"
...
This reverts commit 38bfb58f78 , reversing
changes made to 1fa50e12a8 .
2025-11-16 21:20:31 +01:00
Alug
ed5dbf74f4
Revert "Merge pull request #206 from Indev450/updatemixer"
...
This reverts commit ca3f40ddf1 , reversing
changes made to 38bfb58f78 .
2025-11-16 21:20:26 +01:00
Alug
2bf0a24ab6
Revert "comment out directsound thing"
...
This reverts commit 37cd720dd6 .
2025-11-16 21:20:14 +01:00
Alug
88a9d6c29e
Fix dedicated server build
...
forgor about I_HandleControllerHatRepeat
fixes https://github.com/Indev450/SRB2Kart-Saturn/issues/212
2025-11-16 20:50:15 +01:00
Alug
335b7ba737
Fix dedicated server build
...
forgor about I_HandleControllerHatRepeat
fixes https://github.com/Indev450/SRB2Kart-Saturn/issues/212
2025-11-16 20:50:09 +01:00
Alug
37cd720dd6
comment out directsound thing
...
somehow this still applied on 32 bit build
2025-11-16 19:58:17 +01:00
Alug
a085abe538
remove "stun.c" from sourcefile
...
fixes linking on windoze
will need to handle this in cmake seperately!
2025-11-16 19:58:15 +01:00
Alug
57dc099641
Update README
2025-11-16 19:51:44 +01:00
Alug
84a3503262
comment out directsound thing
...
somehow this still applied on 32 bit build
2025-11-16 16:54:11 +01:00
Alug
5117bf1f85
remove "stun.c" from sourcefile
...
fixes linking on windoze
will need to handle this in cmake seperately!
2025-11-16 16:31:23 +01:00
Alug
d4a29f2a44
this aint testing anymore :3
2025-11-16 17:18:23 +01:00
Alug
6129e7c864
Merge branch 'Saturn-Next' into Saturn
2025-11-16 17:02:58 +01:00
Alug
51371dce80
delet cv_birdmusic toggle
...
stuff was from ages ago, we can just check for the feature toggles instead
2025-11-16 15:27:59 +01:00
Alug
4814088265
mixer_sound/s_sound: remove all the pointless "else"
...
+ some tiny optimizations here and there
2025-11-16 15:27:56 +01:00
Alug
2344c391d2
Renderer: port some texture skewing fixes from SRB2
...
- ffloors on the frontsector in opengl now support texture skewing like software
- alot of cleanups, simplifycation and optimizations
2025-11-16 15:27:36 +01:00
Alug
105267612b
git pls
2025-11-14 15:30:14 +01:00
Alug
69ef78b2e8
Merge branch 'fakeseed' into Saturn-Next
2025-11-14 15:29:38 +01:00
Alug
f4349988c4
smol timing related changes
...
avoid mixing integer maths AFTER casting to float types, even though its all double this may lead to wonky precision issues
I_GetPrecisePrecision now also doesent always call SDL_GetPerformanceFrequency everytime, since its return value will never change since its solely dependant on the platform
and also removing some dead code
2025-11-14 15:12:54 +01:00
Alug
1b42131c6f
remove md5 from sourcefile list
...
we handle it seperately both in make and cmake, having it here just breaks compile
2025-11-14 14:51:04 +01:00
indev
c8db86379d
Merge pull request #210 from Indev450/lua-check-local-addon
...
Automatically check if lua-spawned mobj comes from "addfilelocal addon" hook
2025-11-14 16:50:04 +03:00
Alug
40d2bf816c
Merge pull request #207 from Indev450/controllerfixes
...
Some Controller fixes
2025-11-14 14:47:27 +01:00
Alug
ca3f40ddf1
Merge pull request #206 from Indev450/updatemixer
...
Update sdl2_mixer to 2.8.1 for Windows
2025-11-14 14:47:16 +01:00
Alug
38bfb58f78
Merge pull request #204 from Indev450/updatesdl2again
...
Update SDL2 to 2.32.10 on Windows builds
2025-11-14 14:46:33 +01:00
Alug
1fa50e12a8
hw_main: some smoller optimizations
...
- use sqrtf for fade/tint alpha for shaderless light calc
- save recalcing the cosine/sine from angle on angled flats 3 times in HWR_RenderPlane
- precalc float "int32 min/max "
2025-11-14 13:31:57 +01:00
Alug
f73e616b97
fail loudly if sdl window/renderer/gl context creation fails
...
this will crash eitherways, so much rather get atleast a somewhat more informative error
2025-11-14 12:35:45 +01:00
Alug
fe0ade1d9c
fix some shadowed variables
2025-11-14 06:00:52 +01:00
Alug
1fb60e8230
fix sourcefile for src dir
2025-11-13 19:54:09 +01:00
Alug
efe7009650
PT_ReceivedGamestate: add missing SATURNPAK ifdef
2025-11-13 19:31:33 +01:00
Alug
19a4e379d7
HWR_DoWipe: always draw a black screen if it returns early
...
otherwise this just flashes like crazy should there ever be any issue here
2025-11-13 17:38:45 +01:00
Alug
4e8865d495
cleanup some wonky float/double maths
2025-11-13 17:38:43 +01:00
Alug
dfca24b370
HWR_SkyDomeVertex: tiny optimization
...
save a tiny bit of float division, use float sin and cos functions, handle implicit float conversions
2025-11-13 16:45:57 +01:00
Alug
a4c2fd2414
Merge branch 'Saturn-Next' into updatesdl2again
2025-11-12 19:22:07 +01:00
Alug
aa985823ba
speed up GL_SetPalette "take 2"
...
ensuring bytecolor is packed nd mypalettedata is initialized this seems to now work properly on windows
2025-11-12 19:20:43 +01:00
Alug
b779c9e63d
ensure byteColor_t is packed
...
make sure it is always sized 4 bytes and not padded at all since that is assumed to be the size
2025-11-12 19:04:39 +01:00
Alug
c58e54544d
initialize all remaining globals
...
well atleast all i can find lel
2025-11-12 16:49:44 +01:00
Alug
c080fc8732
GL_UpdateTexture: fix small oversight
...
from when i refactored it
GL_TEXFMT_AP_88 needs to increment the image data ptr even if chromakeyed
2025-11-11 22:39:31 +01:00
Alug
24163a7c92
Merge branch 'Saturn-Next' into controllerfixes
2025-11-11 14:53:40 +01:00
Alug
d934197246
git merge pls
2025-11-11 14:49:11 +01:00
Alug
76747b4677
git merge pls
2025-11-11 14:48:59 +01:00
Alug
5268fc2d19
Merge branch 'Saturn-Next' into fakeseed
2025-11-11 14:42:41 +01:00
Alug
bcd54110d5
only call netkeepalive between calls during gl precache
...
this caused some crashes in blankart, hopefully this is fine though
2025-11-11 14:19:11 +01:00
Alug
83d538b16a
gl_viewludsin/viewludcos is only needed for sprite billboarding
...
which is not needed with shearing
2025-11-11 14:19:08 +01:00
Alug
2a6a7e1d2b
smol optimization R_NoEncore
...
reuse secspecial for invertencore check
2025-11-11 14:19:06 +01:00
Alug
c977c4fc45
initialize most of our global variables
...
just to be safe, not really trusting the game at this point, maybe this helps with some obscure bugs or smth lel
2025-11-11 14:19:02 +01:00
Alug
87e0b55f01
fix windowmoved never resetting
2025-11-09 19:13:49 +01:00
Alug
54f5b5ebfb
enable software cyan pixel "cutting" for flats by default
2025-11-08 12:30:58 +01:00
Alug
b421893646
call NetKeepAlive during ogl precache
...
should prevent timeouts on slower systems (*cough* *cough* windoze *cough*) hopefully
thx neppy for the idea!
2025-11-07 21:28:45 +01:00
Alug
237aeb7834
use early returns for "I_Finish" stuff
...
i like that more, less checks for stuff
2025-11-07 21:28:42 +01:00
Alug
7dbd95d556
Merge pull request #208 from Indev450/deletglseg
...
Remove OpenGL adjusted "segs"
2025-11-06 21:03:38 +01:00
Alug
1e4ba39691
Merge pull request #209 from Indev450/gammastuff
...
Port RR´s gamma correction + split gamma and brightness
2025-11-06 21:02:37 +01:00
Alug
a7805ae3f0
Merge branch 'Saturn-Next' into gammastuff
2025-11-06 21:01:49 +01:00
Alug
325338bfbf
sound precache: add option to keep sounds cached but not precache them
...
ugh i suck so much at explaining
this is the default now pretty much
2025-11-06 20:41:07 +01:00
Alug
01a54e4d0b
delete remaining M_Memcpy that were missed
...
those werent there in lugstuff branch oops lel
2025-11-06 19:15:59 +01:00
Alug
e2df018e38
simplify srb2::floattofixed
...
my tired ass didnt think about just reusing shit kek
ty indev <3
2025-11-06 19:01:25 +01:00
indev
33b62cba33
Push empty string instead of null if len == 0 in lua_pushlstring
2025-11-06 20:44:29 +03:00
Alug
29b4f78b64
lib_concat: fix zero lenght string case
...
continue the loop, not return, it might just be an empty line, so returning might break some luas
0 lenght would make realloc allocate nothing at all, so just skip it
2025-11-06 18:44:36 +01:00
Alug
bce18e3d61
delet M_Memcpy
...
was just a wrapper for memcpy eitherway
so should make no difference other than avoid any confusion
figured i could just use "sed" command lel
2025-11-06 17:37:19 +01:00
Alug
e9c2b982c6
smol cleanup JoyAxis stuff & g_game
2025-11-06 17:37:15 +01:00
Alug
67e1793f49
software renderer: handle some float type related issues with slope drawers
...
there were a bunch of cases where inf and nan float results were casted and used with integer things, which is undefined in c
yes i did use ceepeepee for that crap, cause this wouldve been really annoying without templating
if someone really wants that crap to use outside ceepeepee, feel free to make a bunch of wrappers cause im too lazy for that stuff
2025-11-05 23:41:56 +01:00
Alug
80613a8a49
R_AllocClippingTables & R_AllocTextureColumnTables: fix nullptr arithmetic
2025-11-05 23:04:21 +01:00
Alug
b017a72026
R_DrawPlanes: dont increment garbage ptr
...
does not need to be there at all eitherways
2025-11-05 23:04:18 +01:00
Alug
a7c5254a32
set "-Wno-cast-qual" for clang
...
see comment
2025-11-05 23:04:15 +01:00
Alug
9dd1a47969
fix SINT8 write macro, fix big endian READUINT32 macro
2025-11-05 23:04:13 +01:00
Alug
bbbd42e653
use "offsetof" for skydome vbo offsets
...
silences UBSAN complaining about accessing struct members through null ptr
2025-11-05 23:04:10 +01:00
Alug
2b7f2da5ee
Mipmaps: fix translucent textures turning black
...
i.e. since we allow texture filtering on translucent textures now, the min filter may specifcy one of the mipmap filters, this means we NEED to call GL_GENERATE_MIPMAP and set the LODs for them, otherwise no texture will be generated
alternatively we could do a bunch of special cases for the mipmap filters, but this is simpler
2025-11-02 14:36:08 +01:00
Blue Staggo
23ba827726
Give midtextures filtering without ugly borders + Clean up padding code
...
Couldn't do proper translucent blending on midtextures because of wrapping.
2025-11-02 14:36:04 +01:00
Blue Staggo
326a28ec36
Oops, forgot to disable padding for nearest texture mode
2025-11-02 14:36:00 +01:00
Blue Staggo
19d6a1600e
Optimise padding algorithm
2025-11-02 14:35:56 +01:00
Alug
3095303a4b
Revert "simplify vhs effect interpolation"
...
This reverts commit e26fb91350 .
2025-11-02 14:35:28 +01:00
Alug
2a1807422c
Merge branch 'fastcmpstuff' into Saturn-Next
2025-11-01 23:45:22 +01:00
Alug
4676885521
fixup: replace stricmp with fasticmp
...
actually replace everything correctly
my dumbass forgor about the fast both strcmp and stricmp matter in sort stuff so we cannot use the fastcmp stuff there, which means we should not redifine stricmp as fasticmp in case something relies on that behaviour ugh
2025-11-01 23:45:06 +01:00
Alug
30cea37248
use npow2 screen textures if GL_ARB_texture_non_power_of_two is supported
...
apparently some gl drivers may use a slower path for streamed textures that only get partly updated, this tricks them into thinking this did a "full update" and resulting in using a faster renderpath
2025-11-01 23:42:35 +01:00
Alug
080d3c6b18
Merge branch 'luacvarfixes' into Saturn-Next
2025-11-01 23:38:39 +01:00
Alug
df10855483
fix oopsie that broke name change
2025-11-01 23:15:38 +01:00
Alug
dc6bf05f35
experiment: replace every strcasecmp with fasticmp
...
same as before, tho this is not twice as fast but atleast 1/3 faster
2025-11-01 23:15:26 +01:00
Alug
871545024d
experiment: replace every strcmp with fastcmp
...
did some profiling and in basically every single test fastcmp was twice as fast as strcmp
maybe this speeds up some things
2025-11-01 23:15:21 +01:00
Alug
aeb172f2ab
do some smol cleanup r_skins
...
mostly style fixes, some minor caching for some things
2025-11-01 22:35:34 +01:00
James R
ec757ceb2c
Pass const pointer to all netxcmd handlers
...
Ensure buffer data is read-only and not modified by
handler
2025-11-01 21:21:06 +01:00
Alug
e00783da82
fix stuff from merge conflict
2025-11-01 21:21:03 +01:00
toaster
52a9486974
Remove heinous pointer-sent-over-the-network hack remnants
...
This used to be used for `P_RelinkPointers()`, but was superseded by the far saner mobjnum. HOWEVER, its lingering effect was to leave `mobj->info` in an invalid state until a later `P_FinishMobjs()` was called. This is memory unsafety :D
After removing the last remnants of this ancient hack, it is now once again possible to connect to a server without crashing immediately. However, I did get a crash after a few seconds, so there is definitely still *something* nasty going on under the hood.
2025-11-01 21:20:58 +01:00
Alug
26b26b8f25
consolelib: fix some early returns not properly cleaning lua stack
2025-11-01 21:20:53 +01:00
James R
81f7335b05
Got_Luacmd: always read netxcmd data, even if command is not executed
2025-11-01 21:20:48 +01:00
Eidolon
f603106ac8
Check Lua stack before pushing cons args
...
Prevents a Lua stack overrun when executing absurd console commands for
local-only lua commands.
2025-11-01 21:20:43 +01:00
James R
5675eefeb2
Got_Luacmd: ensure lua stack is large enough for command arguments
2025-11-01 21:20:39 +01:00
Monster Iestyn
1d0fb17da4
Fixes for lib_cvRegisterVar (the Lua version of CV_RegisterVar):
...
* Make sure the consvar's properties are all initialised to zeros as defaults
* Error if the consvar is not given a name
* Error if the consvar has CV_CALL but no call function
* Error if the consvar has CV_NOINIT but not CV_CALL
2025-11-01 21:20:31 +01:00
James R
f53d37052a
Replace LUA_PushLightUserdata with LUA_PushUserdata
...
See c92378fa and a7e20f70. I didn't realize that light
userdata's metatable is shared--like numbers or strings.
So it cannot be paired with a metatable.
I also made a few minor tweaks to Lua cvars, other than
accounting for the double pointer in the userdata.
2025-11-01 21:20:22 +01:00
Alug
cae5e73d7d
LUA_RawPushUserdata
...
"Same as LUA_PushUserdata but don't set a metatable yet."
from RR
2025-11-01 21:20:17 +01:00
Alug
4fccb48d2a
fix wonky variable names
2025-11-01 20:58:04 +01:00
Alug
3e0150d4f3
remove auto/postload check variables
...
we can just check our counts since D_FindAddonsToAutoload will never be called again
2025-11-01 20:53:31 +01:00
Alug
7c1f17bb8d
pass our file counts to W_InitMultipleFiles
...
smol opzimiation, skips some ptr deref
2025-11-01 20:49:03 +01:00
Alug
c8ae4a89d9
throw motion blur effect stuff behind an ifdef
...
so we can get rid of the unused array
prob could just remove it at this point, but maybe ill fix it someday for the funnis
2025-11-01 20:08:36 +01:00
Alug
42b1f849c0
cleanup and optimize startup wad handling
2025-11-01 20:08:33 +01:00
Alug
c0f24ebbbc
postautoloaded can be static
...
not used outside of d_main
2025-11-01 20:08:30 +01:00
Alug
de73c53665
optimize addon autoload handling
2025-11-01 20:08:25 +01:00
Alug
908e073628
removed unused autoload variables
...
M_ConnectMenuModChecks been checking an uninitialized bool the whole time Zzz...
2025-11-01 18:29:10 +01:00
Gustaf Alhäll
eaee95a026
Add -workdir
2025-11-01 18:15:20 +01:00
Alug
456a380e3a
HWR_PrecacheLevel: disable sprite precaching
...
in some cases this may lead to crashes, its mostly useless in gl eitherway due to how colourmapped sprites work
2025-11-01 16:32:27 +01:00
Alug
c428472c6f
dont precache anything ever in HWR_PrecacheLevel if disabled
...
before some cvar callbacks called this unconditionally
2025-11-01 16:32:19 +01:00
Alug
feff5a7c17
make a toggle for using angleturn in replays
...
while this is more accurate to how the player experienced stuff in the actual game, this also can be somewhat jittery and stuttery depending on the net conditions the replay was recorded in, so make this toggable if someone wants it
2025-11-01 16:32:16 +01:00
Alug
ae306351ba
add cv_precachetextures to advanced video options
2025-11-01 16:32:13 +01:00
Alug
03de30df3e
SV_StopServer: reset textcmdbuf
...
fixes an issue where in some rare cases, the game may get stuck in a weird limbo state due to the text command buffer being full and never be cleared, so net commands can never be executed
2025-11-01 03:01:40 +01:00
toaster
e45c72f525
SV_StopServer: Use G_SetGamestate instead of a direct write
...
An apparent oversight identified while working on the previous commit.
2025-11-01 03:01:17 +01:00
Alug
36c43d89e6
GL encore: use struct for encore texture handling
...
struct with two sets of maptextures, one for normal another for encore textures
functionally identical, hopefully also performancewise
more explicit than doing this with just one set and indexing stuff :bloblcatpats:
2025-10-31 15:10:39 +01:00
Alug
f34a47c50d
HWR_PrecacheLevelFlats: only run flat encore case when having an "encoremap"
...
not when its just encore mode
might save some time on some maps, as we dont need to check for remapping
2025-10-31 15:10:32 +01:00
Alug
24895874ed
UDP_Bind: check socket send buffer size aswell
...
if to small than adjust, like receive buffer
2025-10-30 18:04:04 +01:00
Gustaf Alhäll
129f88b6a7
Fix buffer underflow when querying invalid nodes
2025-10-30 18:03:47 +01:00
Alug
cb5c4e482e
SOCK_GetAddr: freeaddrinfo does not need to be called on getaddrinfo failure
2025-10-30 18:03:43 +01:00
Alug
db2062ed1d
some i_tcp fixes
...
- SOCK_Get return true when receiving good packet from a lan player
- SOCK_GetAddr fix handling of ipv6 addresses, so ipv6 servers can be found in the serverlist
taken from srb2/classic
2025-10-30 18:03:38 +01:00
Alug
45ee50b47d
remove reduntant stuff from D_ClearState and G_StopDemo
...
we only need R_ExecuteSetViewSize from splitscreen_onchange, the rest doesent do anything due to SV_StopServer call earlier setting cl_mode to CL_ABORTED
SV_StopServer also calls Y_EndIntermission and Y_EndVote if necessary
2025-10-28 01:21:38 +01:00
Alug
694a8eeb69
P_TryMove: save one R_PointInSubsector call per player
...
by reusing the special sector calculated earlier, this didnt change for when its checked another time
also one fixedmul in P_SceneryTryMove in some cases
2025-10-28 00:50:02 +01:00
Alug
908bba2c8a
rename subsector variable in P_TryCameraMove to be more descriptive
2025-10-28 00:49:58 +01:00
Alug
7325c8dbfd
Merge branch 'Saturn-Next' into fakeseed
2025-10-28 00:02:35 +01:00
Alug
88363cf45d
add NOHOLEPUNCH flag to disable holepunch entirely
2025-10-27 22:58:42 +01:00
Alug
e5c18ae1f1
update ms listing if fakeseed was changed
2025-10-27 22:47:18 +01:00
Alug
4bb5b8fa04
add "Fake Seed" system
...
allow sending a fake player to the ms and serverbrowser when your dedicated server is empty
effectively functioning as a "seed" player without manual intervention and occupieng a server slot
2025-10-27 22:24:21 +01:00
Alug
509e7140e3
use strlcpy for filling playerinfo names
...
MAXPLAYERNAME+1 so it copies 21 and null terminates the last
2025-10-27 21:21:39 +01:00
Alug
056f919bbe
DrawTiltedSpan: more micro optimize
...
- do pointerdiff outside the loops, no need to do them 16 times per span
- cache tiltilighting and planezlight, mark as const and restrict
2025-10-27 00:56:21 +01:00
Alug
548cad76b2
drawspan: some type fixes, mark const and reordering
2025-10-26 14:05:12 +01:00
Alug
95d8864faa
fix software hiding the wrong thing in video options
2025-10-26 02:19:35 +01:00
Alug
e26fb91350
simplify vhs effect interpolation
2025-10-25 22:32:58 +02:00
Alug
da67f6feb8
rename most "gamma" vars to "brightness"
...
lots of confusion
but it does more brightness adjustment than gamma adjustments, yes this does some gamma correction but not user changable global gamma adjustments like globalgamma
uhhh
2025-10-25 22:21:37 +02:00
Alug
8cc73bc482
Port RR´s gamma correction + split gamma and brightness
...
port of https://gitlab.com/kart-krew-dev/ring-racers/-/commit/e27506c660933e19dbcfe9ec776caf7819952e30
not cherry picked since it differs too much it would be hellish to untangle (sry!)
Gamma is split from brightness since both do somewhat different things in the context here
2025-10-25 22:21:19 +02:00
Alug
28685ea658
fix some tooltips issues, wording and inconsistencies
...
fbo also now supports from gl 2.1
2025-10-25 20:39:01 +02:00
Alug
a69df8807d
fix some messed up whitespaces lel
2025-10-24 21:57:57 +02:00
Alug
d4a130f1dc
remove those memsets
...
not needed anymore now
2025-10-24 18:40:29 +02:00
Alug
8ccf4eb9ba
this can be alot smoler
2025-10-24 18:40:25 +02:00
Alug
cdb7b6fede
initialize input events to something
2025-10-24 18:40:21 +02:00
Alug
fcae072625
refactor controller dpad menu repeat handling
...
dont hack around manually checking for state checks
just use sdl provided stuff and poll if a dpad button currently is being held
2025-10-24 18:40:18 +02:00
Alug
26fc417555
forgor about localskin menu
...
Zzz....
2025-10-24 16:09:53 +02:00
Alug
bb3dd435f0
oop didnt mean to move this
2025-10-24 15:49:40 +02:00
indev
16a531272f
Skip repeating backslashes in HU_DoCEcho when printing to console
2025-10-24 16:36:50 +03:00
Alug
ba5b79e48a
dont double print kitchen sink message to log
...
we already handle this in HU_DoCEcho
2025-10-24 15:37:11 +02:00
Alug
59470ddbd4
fix oob access in D_SetupVote
...
check if luamaps was set before
2025-10-24 15:37:08 +02:00
Alug
82c4191516
Revert "SDLSetMode: render immediately after resolution change to avoid 1-frame of texture presented at wrong size"
...
This reverts commit 0e2ffdeb1d .
2025-10-24 04:09:43 +02:00
Alug
8a305d3c79
move those to D_ClearState
2025-10-24 03:47:59 +02:00
Alug
7c507c7b3b
do some cleanup g_demo
...
:shook:
use the CLEANUP macro everywhere
init some things that may not be initialized
and make this more readable
lets hope didnt break anything Zzz...
TODO: if there are still issues with demo records and stuff crashing might consider porting some of the fixes from RR
2025-10-24 03:44:56 +02:00
Alug
ca27dad6c1
use D_ClearState in G_StopDemo
...
actually fixes issues with crashes AND palette reset
also resets a bunch of more stuff which def is good
2025-10-24 03:44:53 +02:00
Alug
383d55cac6
smol cleanup V_DrawVhsEffect
...
dont need to assign all the software stuff in gl mode
2025-10-24 03:37:45 +02:00
James R.
0e2ffdeb1d
SDLSetMode: render immediately after resolution change to avoid 1-frame of texture presented at wrong size
2025-10-24 01:55:20 +02:00
Alug
b84d101337
initialize sdl window,renderer and texture to something
2025-10-24 01:55:17 +02:00
indev
eb04271c83
Actually try to do this with hooks
2025-10-23 22:52:03 +03:00
Alug
852aa74d62
random style fixes and stuff
2025-10-23 21:01:20 +02:00
Alug
aa06459c09
set special case for console key when using native keyboard input
...
ALWAYS make sure that remains in the same physical place
otherwise things might get very annoying
it already does so with my german layout
2025-10-23 21:01:20 +02:00
indev
54e7ad571e
Check if mobj is spawned from local addon in most of lua_baselib functions related to mobjs
2025-10-23 22:00:46 +03:00
Alug
1d3dae01e9
set SDL_HINT_AUTO_UPDATE_SENSORS hint to 0
...
we dont need any of that so disable it
2025-10-23 20:58:01 +02:00
Alug
736a626ccf
init joyinfo in I_InitJoystick
2025-10-23 20:57:58 +02:00
Alug
a4cc8b0585
keep track of joystick instance index
...
means we dont constantly need to refetch it
needs testing on windoze
2025-10-23 20:57:55 +02:00
Alug
333c94be52
clean up controller dpad input handling
...
just treat them as "normal" buttons instead of manually polling for them
alot cleaner and gets rid of yet another polling loop
also clean up some other stuff
needs to be tested with multiple controllers in splitscreen but cba to do that atm
2025-10-23 20:57:52 +02:00
Alug
92ec4e65c1
update sdl2_mixer to 2.8.1
...
since we use wasapi now we can finally update this to 2.8.1 hopefully without any regressions now
2025-10-23 20:57:24 +02:00
Alug
a3e97b90f6
dont force directsound for sdl versions from 2.26.5 on windows
...
directsound is deprecated since 13 years!
superseeded by wasapi
2.26.5 sdl brought some major improvements to resampling which fixes the issues this aimed to work around, but instead this workaround caused a plethora of issues, like breaking loops in some cases or the votescreen music
2025-10-23 20:57:21 +02:00
Alug
c07502bf5a
use strl instead of strn stuff to copy cecho text
...
ALOT safer than whatever this did before
2025-10-23 20:51:24 +02:00
Alug
f751161693
fix CECHO text being overwritten with nothing
...
strlcat not strlcpy
2025-10-23 20:37:57 +02:00
toaster
ed16c4fd9f
Simplify intermission timer code
...
- We had two ways of ending the intermission, but only one would actually be used, and it resulted in code duplication.
- Combine the two ways.
- Disable the reached-but-didn't-do-anything-before-now code path for setting endtic.
2025-10-22 23:08:43 +02:00
Alug
41407538d4
cleanup + optimizations mixer_sound
...
thx indev for the better ms rounding code <3
2025-10-22 22:53:14 +02:00
Alug
5f394cd938
handle more memory allocation failure cases
...
reported with -Wformat-overflow
2025-10-22 16:02:35 +02:00
Alug
e5bae89d0f
fix namescrollbuf and mapmusic.name copies
...
ensure those are properly null terminated
as reported by ubsan
2025-10-22 15:34:43 +02:00
Alug
f749800276
fix playersetup skin speen reading out of bounds
...
reported by ubsan
2025-10-22 15:34:40 +02:00
Alug
5289027272
uninline ctf resynch stuff
...
this wont ever be used and just makes lto and others complain occasionally (maybe frenmod uses ctf? forgor)
2025-10-22 15:34:38 +02:00
Alug
77f4d4ef3b
fix replays occasionally crashing when stopping
...
due to R_ReInitColormaps our extra_colormaps pointer may be freed
so ensure it only gets called after gamestate has been set to GS_NULL so we dont risk doing this mid renderframe
fixes crashes in software and palette render mode
2025-10-22 13:48:56 +02:00
AJ Martinez
a94740f5e9
Fix unsteady camera movement in demos
2025-10-22 13:44:32 +02:00
toaster
ab27090ecf
Don't send a netxcmd when using addfile outside of netgame
...
Was supposed to be happening already, but `multiplayer` is a useless variable...
2025-10-22 11:32:49 +02:00
Alug
93d0106c28
remove erronous ";"
2025-10-22 11:32:46 +02:00
Alug
27433f6fb5
call R_SetupFreelook in R_ExecuteSetViewSize
...
to instantly update our now stale yslope pointer!
fixes random crashes when switching numbers of splitviews in replays
2025-10-21 19:26:31 +02:00
Alug
f8e5049d76
fix R_MakeSpans accessing "spanstart" out of bounds when in splitscreen
...
it gets allocated for viewheight not vid.height!
2025-10-21 19:26:27 +02:00
Alug
2009cdeaeb
init few more things
2025-10-21 18:36:05 +02:00
Alug
0f43f19b71
remove unused maskdraw_t struct
2025-10-21 18:01:03 +02:00
Alug
1ac7852bd2
initialize a bunch of stuff that gets passed to realloc
2025-10-21 17:52:21 +02:00
indev
f5e7b65ae0
Fix replay names not displaying if you have more than INT16_MAX replays
2025-10-21 17:11:45 +03:00
Alug
4c5d34e82c
Revert "Fix ghost hitlist causing zone errors ( closes #118 )"
...
This reverts commit ab13b28106 .
2025-10-21 16:09:02 +02:00
Alug
0dad927c05
fix 4th player background not drawin in gl in 3 player splitscreen
2025-10-21 15:42:33 +02:00
Alug
f231417465
fix splitscreen view in gl
2025-10-21 15:27:05 +02:00
Alug
51b8dc9101
m_menu: add textinput special case for playername string
...
itself it already checks to not write out of bounds, this is mostly just to fix visual issues
kind hacky, but works for now
2025-10-21 14:45:10 +02:00
Alug
71e9c4f5af
use "viewssnum" for shadowdir stuff
2025-10-21 14:34:33 +02:00
Alug
1acae3e4af
use malloc for spawnstate mapdata copies
...
they might be somewhat large and get completely overwritten eitherway so save us the 0 init
2025-10-21 14:34:30 +02:00
Alug
4c04d09d18
rename
2025-10-21 14:34:28 +02:00
indev
b99cd88947
Fix possible buffer overflow in M_TextInputSetString when string length is greatter than buffer length
2025-10-21 01:46:39 +03:00
Alug
4a786449c4
fix NIGHTS hoop hoopcenter
...
fixes visual issues when going through them
2025-10-20 19:48:28 +02:00
Alug
aef6dcdbc9
handle ceepeepee
2025-10-20 19:25:41 +02:00
Alug
0e9ec096c2
slightly clean up makefile
...
- pass "-g" on mingw builds generally after everything (needs testing)
-use "libs" instead of "LDFLAGS" (identical purpose)
- pass "mno-ms-bitfields" on gcc, shouldnt be really needed but just in case
2025-10-20 17:02:36 +01:00
Alug
50ce3c4431
R_FlushQuad: dont use 64bit/8byte copy on 32bit targets
...
on 32bit targets this will just compile into two 32bit copies which gcc cant optimize as well as it can with the byte copy (it seems to love to do some AVX stuff atleast in my tests)
so this is only useful for 64bit capable platforms (compiler does not seem to do 64bit copys for the byte copy case, so this ends up being faster)
2025-10-20 16:32:48 +02:00
Alug
c6c1dbd066
R_FlushQuad: also check "source" for alignment
2025-10-20 16:17:01 +02:00
Alug
ece8d9e80c
R_FlushQuad: fix column flush on odd width resolutions
2025-10-20 00:56:30 +02:00
Alug
fdcbd276e9
remove unessecaary template branch in R_DrawColumnPixel
2025-10-19 23:07:21 +02:00
Alug
6d77672ee3
no need to pass anything to R_InitViewBuffer
2025-10-19 22:19:20 +02:00
Alug
28aec6cad5
add USEUBSAN compiler flag
...
to compile with ubsan duh
2025-10-19 21:59:39 +02:00
Alug
1f028f523e
R_FlushQuad: fix unaligned memory access
2025-10-19 21:59:35 +02:00
Alug
349bf06e4b
macrofy column function definitions
2025-10-19 21:59:32 +02:00
Alug
e044db73f5
those should be initialised to something
2025-10-19 21:59:29 +02:00
Alug
7555d689db
clear our column buffer after allocation
2025-10-19 21:59:27 +02:00
Alug
a6438da531
use spawn sector and line tags for P_ReloadSaveLevelData
...
should speed up resynch a little, now that we properly save them
2025-10-18 23:11:00 +02:00
Alug
8c6893cff6
init taglists in P_LoadMapData
...
no reason to init them in P_SpawnSpecials
fixes join crashes on some maps
2025-10-18 23:04:25 +02:00
Alug
af03b51191
add guard to vid.screens free
...
not super necessary but better safe than sorry
2025-10-18 21:34:23 +02:00
Alug
178d8b7b53
fix demo_slug compiler warning
...
Zzz....
2025-10-18 16:15:19 +02:00
NepDisk
de99a3036d
Update Discord RPC
...
Based on some of the changes from RR.
Accounts for the fact discord does not have tags anymore and makes skin code easier to manage
2025-10-18 16:15:17 +02:00
NepDisk
5c613f6c8f
Use a constant for file path stuff
2025-10-18 16:15:14 +02:00
James R
59628377fa
Resize menudemo_t filepath to fix -Wformat-truncation
2025-10-18 16:15:11 +02:00
Alug
278f3c3ef6
turnsmoothing splitscreen player support
...
i hate our menus Zzz....
2025-10-17 09:24:33 +02:00
Alug
3ba1596976
change wheel input "sensitivity"
...
200 maps perfectly to our turn values
so the wheel now actually better reflects the inputs and does not turn fully super early uhh
2025-10-16 23:15:42 +02:00
Alug
02f6fa0665
HACK: call texture precache when toggling a setting that flushes opengl textures
...
workaround for batching sort issues
should be good eitherway to reduce stutters after toggling them
2025-10-16 22:21:37 +02:00
Alug
f4aec1d591
port "Lite Steer" from RR
...
took me a while to realize RR makes everything go though "analogue" input handlers
2025-10-16 21:53:40 +02:00
Alug
5c2a87dea6
fix off by one when playing with controller sticks
...
also simplify driftturn handling
2025-10-16 21:53:37 +02:00
Alug
6f17ed0883
Merge branch 'Saturn-Next' into updatesdl2again
2025-10-16 15:07:54 +01:00
Alug
d5aa9ae0f1
fix 32bit windoze compile
...
again......
2025-10-16 15:07:35 +01:00
indev
6096822cbb
Use str.resize(size) instead of str = str.substr(0, size) (ty lug <3)
2025-10-16 15:16:23 +03:00
Alug
0030367649
fix UB in R_PointOnSide
...
by not shifting a 32bit int by 31 bits
this is more in line with the original function eitherways
2025-10-16 14:08:30 +02:00
Alug
66f67c91e8
G_SaveDemo: fix oob reads/writes for replay names
...
demo.titlename has a size of 65! not 128!
also handles memory failure and checks bounds for the remaining lenght in the demo slug
2025-10-16 14:01:02 +02:00
Alug
c73c1af2d5
let replays with empty name save
...
this does not crash for us
2025-10-16 14:00:57 +02:00
toaster
638e95325a
G_SaveDemo: Resolve memory errors that could result in crashes
...
- Empty `demo.titlename` case
- Don't try to save demo of name `.lmp`
- Doesn't fall back to anything, because emptying out the name field can be reasonably treated as not wanting to save
- `demo.titlename` consists only of invalid characters
- Don't try to save demo of name `-.lmp`
- Falls back to the default demo title, because the user clearly wanted to save and just happened to provide invalid text
2025-10-16 14:00:55 +02:00
Alug
66ce745e91
add allocation failure case in R_DrawMasked
2025-10-16 14:00:51 +02:00
Alug
2b39d137b4
guard against null string in stringwidth functions
...
hud drawlists may actually pass null to them
2025-10-16 14:00:48 +02:00
Alug
1ed616dcef
pass rover directly to check_fof_offscreen
2025-10-16 14:00:45 +02:00
indev
24ef2819b0
Merge pull request #205 from Indev450/dsdacol
...
Software Renderer: Implement Column buffering system
2025-10-15 21:52:45 +03:00
Alug
a9732e9564
Merge branch 'Saturn-Next' into dsdacol
2025-10-15 20:51:47 +02:00
Alug
c262d3f532
prevent potential 0 division in CV_AddValue
...
as repoted by clang-tidy
2025-10-15 20:41:57 +02:00
Alug
ae456fee31
force inline savegame archive stuff
2025-10-15 17:05:05 +02:00
LJ Sonic
68f69049d4
Fix incorrect error message during Lua archiving
2025-10-15 17:05:02 +02:00
LJ Sonic
e180918e48
Do not archive nil table keys
2025-10-15 17:04:59 +02:00
Alam Ed Arias
951c090b35
set CURLOPT_MAXREDIRS to 30
2025-10-15 17:04:55 +02:00
Gustaf Alhäll
a87e07155a
Remove WINSOCK1 support
...
WINSOCK2 has been supported since Windows XP and is required for IPv6,
so I don't see a reason to support it anymore.
2025-10-15 17:04:52 +02:00
Alug
da16ce3a23
mark flush error functions with noreturn
...
silences clang
2025-10-15 06:28:54 +02:00
Alug
64bdae5e5d
delet dead code ogl models
2025-10-15 06:16:46 +02:00
Alug
4f91a0b234
remove dead renderer code
...
remove
- broken viewborder code (if we really want it back for some reason, we should rather port RR´s fixed version of it)
- remove console clipping code for software (this was broken eiherway)
- remove hud message clearing stuff
- remove renderscreen and linesize variables (they just pointed to vid.screen and vid.widht)
2025-10-15 06:16:46 +02:00
Alug
bb0a59540f
use stdlibs abs for CompareDrawNodePlanes
...
we dont need our own abs for this
2025-10-15 06:16:46 +02:00
Alug
dd9d6de0d6
delet gl_viewwidth, gl_viewheight, gl_baseviewwindowx, gl_baseviewwindowy gl_basewindowcenterx, gl_basewindowcentery
...
they were effectively unused
2025-10-15 06:16:46 +02:00
Alug
3de4c7cbad
Merge branch 'Saturn-Next' into dsdacol
2025-10-14 23:14:24 +02:00
Alug
0eeacaf51e
remove dead renderer code
...
remove
- broken viewborder code (if we really want it back for some reason, we should rather port RR´s fixed version of it)
- remove console clipping code for software (this was broken eiherway)
- remove hud message clearing stuff
- remove renderscreen and linesize variables (they just pointed to vid.screen and vid.widht)
2025-10-14 23:14:07 +02:00
Alug
a4684b3004
use stdlibs abs for CompareDrawNodePlanes
...
we dont need our own abs for this
2025-10-14 23:13:52 +02:00
Alug
9c014eb2ea
delet gl_viewwidth, gl_viewheight, gl_baseviewwindowx, gl_baseviewwindowy gl_basewindowcenterx, gl_basewindowcentery
...
they were effectively unused
the last two werent ever even initialized to anything, using HWR_DrawViewBorder wouldve crashed
2025-10-14 23:13:49 +02:00
Alug
37579187cc
remove dead renderer code
...
remove
- broken viewborder code (if we really want it back for some reason, we should rather port RR´s fixed version of it)
- remove console clipping code for software (this was broken eiherway)
- remove hud message clearing stuff
- remove renderscreen and linesize variables (they just pointed to vid.screen and vid.widht)
2025-10-14 23:13:39 +02:00
Alug
af8ce028ba
use stdlibs abs for CompareDrawNodePlanes
...
we dont need our own abs for this
2025-10-14 23:12:50 +02:00
Alug
9310a68cff
delet gl_viewwidth, gl_viewheight, gl_baseviewwindowx, gl_baseviewwindowy gl_basewindowcenterx, gl_basewindowcentery
...
they were effectively unused
the last two werent ever even initialized to anything, using HWR_DrawViewBorder wouldve crashed
2025-10-14 23:12:47 +02:00
Hanicef
89b8121282
Fix vertical aim being off when using lack of perspective
2025-10-14 22:28:18 +02:00
Alug
b2260bbebb
move R_SetColumnContext call
...
we set this later to flush eitherway for non skybox draw
2025-10-13 21:27:43 +02:00
Alug
6a9aea4dd1
use std::vector for our image buffers
...
this is just to have it cleaner and less code bloat
the resizing loop will almost never trigger, 1meg is enough to even rotate gigantamax eevee without needing to grow
2025-10-13 19:20:40 +02:00
Eidolon
6f4dfb35fa
Calculate staging buffer maximum size in Picture_Convert
2025-10-13 19:20:37 +02:00
Alug
459b2e62ce
oops missed this case
2025-10-12 23:12:26 +02:00
Alug
5765f3df5a
this does not need marked as restrict
2025-10-12 22:30:25 +02:00
Alug
8488da4b1a
smol style adjustment span stuff
2025-10-12 22:11:39 +02:00
Alug
c82495f48b
tiny optimization span drawers
...
if we dont "ripple" our spans, we dont need to increment an additional pointer for them
2025-10-12 22:11:36 +02:00
Alug
f55b8793ec
Merge branch 'Saturn-Next' into dsdacol
2025-10-12 22:11:23 +02:00
Alug
b0b048c703
move "newview sky" check before skyplane loop
...
saves us some pointless work going through all planes if we dont need to draw the sky
2025-10-10 23:37:20 +02:00
Alug
b7f1a0b631
speed up masked sprites a bit
...
thx eternity engine!
2025-10-10 22:33:04 +02:00
Alug
02d6fccfa9
Merge remote-tracking branch 'origin/Saturn-Next' into updatesdl2again
2025-10-10 16:40:05 +01:00
Alug
513613d83b
dont update hud during skipped frames
...
this was to fix issues with some lua huds looking really bad during frameskip
but this causes issues with the hud flashing during gif recording
2025-10-09 19:13:09 +02:00
Alug
f2afc5135c
fix buffer overflows in dedi build too
2025-10-09 18:17:09 +02:00
K J
3783e30a8a
fix: multiple additional buffer overruns
...
found by Zwip-Zwap_Zapony
2025-10-09 18:11:59 +02:00
Alug
ff80a34627
unnest fsp counter and ping display stuff
2025-10-09 18:01:27 +02:00
Alug
38c96d5ec2
Merge branch 'Saturn-Next' into dsdacol
2025-10-08 21:38:26 +02:00
Alug
2ec467f062
check with "__SIZEOF_POINTER__"
2025-10-08 21:38:20 +02:00
Alug
b3106d55d1
inline R_ThingLightLevel
...
just points to thing->lightlevel field eitherway
2025-10-08 21:38:17 +02:00
Alug
90c3d02dbf
ensure columnbuffer gets flushed during portal traversal
...
in worst case this does nothing btw
2025-10-08 20:46:37 +02:00
Alug
48dc5461cd
cleanup column flusher stuff
...
- properly make use of templates!, reduce code dupe
- inline the "DrawPixel" stuff
- use local "const" pointers everywhere
2025-10-08 16:50:17 +02:00
Alug
0843a586f8
fuckit, lets buffer 8 columns instead of 4
...
improves performance across the board on my ryzen 5600 cpu
between 10 -15fps + in best case and around 5fps+ in worst case
will need to check how this affects older cpus and 32bit builds since we do 64bit copies now
(if needed can always add 32bit specific code)
effectively, we also reduce the amount of flushing needed in many cases, writing more things at once during flushes
2025-10-08 16:47:54 +02:00
Alug
8c8f96cf49
force flush our column buffer directly after bsp traversal (again)
...
TODO: actually check what portals do
2025-10-08 16:47:54 +02:00
Alug
55afe9be7e
update copyright header for draw flush stuff
2025-10-08 16:47:54 +02:00
Alug
fe54f2fba2
add Column drawer context switching
...
reasoning explained in screen.c
effectively, there are cases where drawing our columns directly to the screen is the better choice
2025-10-08 16:47:54 +02:00
Alug
b12989f51c
lessen our manual column buffer resetting
...
not really needed
2025-10-08 16:47:54 +02:00
Alug
57990100c5
speed up masked sprites a bit
...
thx eternity engine!
2025-10-08 16:47:54 +02:00
Alug
32504b9e8e
speed up Opague quad flush
...
from eternity engine
2025-10-08 16:47:54 +02:00
Alug
ba3404d823
cleanup + type fixes
2025-10-08 16:47:54 +02:00
Alug
c9f50ca0c8
sizeof(UINT8) is 1 lel
2025-10-08 16:47:54 +02:00
Alug
b6943ce92e
can check on compile if sizeof int == 4
...
can prob remove it alltogether we dont support 16 bit cpus kek
2025-10-08 16:47:54 +02:00
Alug
41b78feef5
remove R_GetColumnTranslucent
2025-10-08 16:47:54 +02:00
Alug
c9b6276a02
merge sky column drawer back
...
lets hope this is safe lulul
2025-10-08 16:47:54 +02:00
Alug
39a5165d91
reset our column buffer directly after bsp traversal
...
we do not need to wait for sky draw since the sky gets instantly drawn
2025-10-08 16:47:54 +02:00
Alug
e5a03dc3bb
fix translucency being only half as translucent
...
oops lmao didnt notice in all of this doom uses the inverse of our blendlevels kek
2025-10-08 16:47:54 +02:00
Alug
4deebf8912
translucency is handled on the flush side!
2025-10-08 16:47:54 +02:00
Alug
fa8901f6b0
fix ColumnFlushType enum
2025-10-08 16:47:54 +02:00
Alug
23512f0a6c
align our tempbuf
2025-10-08 16:47:54 +02:00
Alug
b44548b7ac
dedupe those a bit
2025-10-08 16:47:54 +02:00
Alug
955812bd8d
template the flush functions
2025-10-08 16:47:54 +02:00
indev
e4ac394d29
Fix DC_COLORMAP and DC_TRANSMAP column drawers always using DC_COLORMAP|DC_TRANSMAP func
2025-10-08 16:47:54 +02:00
Alug
2b6185d7d6
reenable colormapped / translucent columns
2025-10-08 16:47:54 +02:00
Alug
2753052ee7
fix FlushColumns being called without being initialized
...
aack
2025-10-08 16:47:54 +02:00
Alug
3c9292c137
reorder column flush functions
...
also add some comments that used to be in drawcolumn X)
2025-10-08 16:47:54 +02:00
Alug
e68136de3e
remove tempbuf resolution limit
...
by allocating it dynamically per our actual screen resolution
2025-10-08 16:47:54 +02:00
Alug
e852c23441
move the temp columndata into a struct
...
TODO:dynamic allocate our temporary screen buffer
2025-10-08 16:47:54 +02:00
Alug
031e8ee477
WIP: column buffering/flushing system
...
it "works" so far no performance improvement
everything but fully opague columns dont work for now until fixed
really messy and needs to be templated when working
from prboom & eternity engine
2025-10-08 16:47:54 +02:00
indev
d7422b8ec9
Don't I_Error in W_InitFileError, that causes dedicated servers to bootloop
2025-10-06 17:44:47 +03:00
James R
0bbd8246cc
Read only header bytes when creating textures list
...
R_LoadTextures was reading in the entirety of every
texture lump, now it only reads the 8 byte PNG header.
This saved more than 1 second for me (1.68 s -> 0.24 s).
PNG still need to be read in entirely to check their
dimensions; I didn't bother looking into optimizing it
since we don't have many PNG textures right now.
2025-10-05 20:59:40 +02:00
Alug
9e8ddd5f9e
add a print to Joinable_OnChange
...
also change the other cvar messages to CONS_NOTICE
2025-10-05 20:39:09 +02:00
indev
3964d4e188
Always initialize all column offsets inside multi-patch textures
2025-10-05 21:12:46 +03:00
Alug
005af4362e
remove unused W_LumpLenghtPwad call from R_GenerateTexture
2025-10-05 20:11:05 +02:00
Alug
f817676033
fix uninitialized "i" counter in R_StoreWallRange
2025-10-05 20:10:49 +02:00
Alug
79140b3bdc
fix oopsie in R_GenerateTexture
2025-10-05 20:10:46 +02:00
Alug
48722ef591
fix oob access in CV_AddValue and M_CanShowLevelInList
...
lets hope this doesent break anything Zzz....
2025-10-05 20:10:42 +02:00
Alug
6be5478fa8
dont free levelstate in D_ClearState
...
Titledemos be damned!
2025-10-05 20:10:36 +02:00
James R
953d9d15d6
Clear g_dc each frame
...
I was running into a memcpy of overlapping memory regions
in R_RenderMaskedSegRange.
- This is because of the reallocation of lightlists, which
uses Z_Frame_Alloc.
- The memory pool that Z_Frame_Alloc draws from is cleared
each frame.
- g_dc was not cleared though, so when the lightlists were
reallocated, it'd try to copy from invalidated pointers.
- Access to invalid pointers within the memory pool does
not cause a segfault directly (because the memory pool
is allocated once). However, a memcpy involving such an
invalid pointer leads to overlap, which may cause memory
corruption.
2025-10-05 20:10:33 +02:00
Alug
0c56755e09
fix R_MarkSegBounds
2025-10-05 20:10:30 +02:00
Lactozilla
c166075754
Don't generate textures in R_GetColumn
2025-10-05 20:10:27 +02:00
Alug
90ff1c4fc0
small fixups for r_segs
2025-10-05 20:10:23 +02:00
Alug
1d0fedddfd
add bounds check to R_GetLinedefTransTable
2025-10-05 20:10:20 +02:00
Alug
f5b60c3f36
port "Use separate table for maskedtexturecol"
...
from: https://git.do.srb2.org/STJr/SRB2/-/commit/97311dc5b00ab232a6e898c085c20d2f6bdbfa3b
~~cherry-picking this would be horrendous sry~~
2025-10-05 20:10:16 +02:00
Alug
78ad3e9710
some fixes for texture generation
...
- Fix negative y offsets for both normal and y-flipped patches
- simplify column wrapping/nonpow2 handling
- Single-patch textures: print an error if patch header is missing, cease memory errors
sadly does not fix our invalid columns we get occasionally
2025-10-05 20:10:13 +02:00
Alug
b03d5c53ed
simplify titledlighting stuff for span drawers
...
- use a std::vector for the tiltlightbufffer, only for easier checking if it needs to be resized from resolution change
- move stuff into its own function
- simplify R_CalcTiltedLighting
no functional change, no performance improvement, just looks neater
2025-10-04 22:05:07 +02:00
indev
c5dce0e785
oops
2025-10-04 17:25:39 +03:00
indev
f85c7ef961
Copyleft :3
2025-10-04 17:25:03 +03:00
Alug
0ceaca4b2f
Merge branch 'Saturn-Next' into updatesdl2again
2025-10-03 22:43:29 +01:00
Alug
4d211f8f82
Merge branch 'updatelibbacktrace' into Saturn-Next
2025-10-03 22:42:28 +01:00
Alug
8d3435291b
fix windows compile
2025-10-03 22:41:02 +01:00
Alug
8f007155cd
update libbacktrace (win x64)
2025-10-03 21:36:49 +01:00
Alug
af9fa77501
update SDL2 to 2.32.10
...
Fixes keyboard input issues for certain languages when using the "native" keyboard input setting
probably fixes some other issues aswell
needs regression testing
2025-10-03 21:29:26 +01:00
Alug
58a38ac6c4
add "SATURN_TESTING" define
...
currently to hide the commit string from titlescreen on release builds
could be used for other crap
wish could use comptime to autogenerate this, but it runs after compile & linking
2025-10-03 16:40:31 +02:00
Alug
1e1dbfc450
oops all include guards
2025-10-03 16:39:51 +02:00
Alug
2eac9fc295
tiny cleanup p_map
...
also save a little division and abs
2025-10-03 16:39:48 +02:00
Alug
21920112ee
a thousand curses upon you polyobjects!
2025-10-02 18:37:18 +02:00
Alug
9b7bf5e7d8
Merge remote-tracking branch 'origin/Saturn-Next' into deletglseg
2025-10-02 18:00:59 +02:00
indev
4416be2ddc
Merge pull request #203 from Indev450/curl-cli-args
...
CURL cli args
2025-10-02 19:00:29 +03:00
Alug
524168b20b
experiment: remove opengl adjusted segs
...
in theory this should improve levelload times and reduce memory usage?
gotta see if it really does, visually so far there seems to be no difference at all
2025-10-02 17:57:52 +02:00
indev
10b52c11ac
Add -curl-proxy and -curl-header CLI arguments
...
-curl-proxy will set proxy used by curl for masterserver requests and
http downloads
-curl-header can receive multiple arguments (like -file), and can either
edit, replace or remove headers from http requests
(srb2kart -curl-header "New-Header: Some Value" "Accept: */*" "User-Agent:"
In this example, New-Header will be added, Accept header will be edited
and User-Agent header will be removed)
2025-10-02 18:57:33 +03:00
Alug
db732bd1bd
fix non polyvertex path for horizonlines
...
this was a typo all along, i somehow assumed its just like that, but its not kek
2025-10-02 17:34:51 +02:00
Alug
146d4da72c
use floats for calculating ticratescaled
...
this does not need to be double lel
actually improves performance in some cases
2025-10-02 17:34:51 +02:00
indev
20c570c97c
Fix sector sound origin not working (mobj_t wasn't consistent with degenmobj_t)
2025-10-02 16:48:58 +03:00
Alug
e550edb93e
smol micro optimizations hw_main
...
- dont check for polyflags (rendersides) inside HWR_Addline, move to HWR_AddPolyObjectSegs
- save some sector checks by assigning pointer HWR_RenderPlane
- check for numpolys instead of numPolyObjects in HWR_Subsector (will only be "true" if theres polyobjs in currently traversed subsector instead of when polyobjs are generally on the map)
2025-10-02 15:10:46 +02:00
Alug
fac4d3c2c0
add toggle for frameskip
...
just in case someone wants to toggle that off for some reason
2025-10-01 14:20:37 +02:00
Alug
7d2bcbd1ee
cleanup some stuff w_wad & filesrch
...
mostly delet some "dead" code
use pathisdirectory for filebrowser to declutter code
properly declare FUNCNORETURN and ATTRNORETURN for some quit functions
2025-10-01 14:20:34 +02:00
Alug
f3bbb5af56
ensure ALL savebuffers use Zone memory
...
fixes a crash when sending an uncompressed save to clients
2025-09-30 22:07:34 +02:00
Alug
8e8ef04860
delet BUGTRAP
...
psure this never worked anyways
2025-09-30 19:40:24 +02:00
Alug
98b105c02a
delet CLIENT_LOADINGSCREEN
2025-09-30 19:35:29 +02:00
Alug
ccdb73f861
delet VANILLAJOINNEXTROUND
2025-09-30 19:35:26 +02:00
Alug
9cb150b8eb
delet NONET
2025-09-30 19:35:23 +02:00
Alug
e6af82f450
delet JOININGAME
2025-09-30 19:35:21 +02:00
Alug
7400eeac2a
fix dedicated build compile
2025-09-30 17:27:42 +02:00
Alug
2656a87e46
Signal handler improvements
...
- Move the backtrace and signal stuff into one "block" in both i_system files
- print the current platform into the crashlog
- dedupe code a little
- make crash messages slightly more understandable
- handle more signals (if they exist)
mostly taken from https://git.do.srb2.org/STJr/SRB2/-/merge_requests/2732
2025-09-30 17:27:33 +02:00
Alug
202e24c69c
fix precip not propely accounting for moving fofs (again)
...
was fixed a while ago, then i broke it again due to performance concerns
now we only update this twice a seconds, and its only for the currently rendered precipmobjs
lets see how it performs
2025-09-29 20:14:36 +02:00
Alug
c7d78fe948
only recalc precipfloor twice a second
2025-09-29 20:13:48 +02:00
Alug
f381239825
smol changes R_ProjectSprite
...
- remove oldthing (idk what that was even for)
- properly account for localskins
- save a few FixedMuls during clipping
2025-09-29 13:43:33 +02:00
Alug
394beb7533
rename this
2025-09-29 13:43:30 +02:00
Alug
2ea1ac9331
qs22j: handle cases with (0 or 1) elements to sort
...
avoid undefined behaviour and return early
if we only have 1 element we can skip all the crap since we dont need to sort anyways
2025-09-28 22:51:35 +02:00
Alug
34f8181e56
dont draw the leveltitle card for each splitscreen player
...
they just overlap since they draw in the very same place
2025-09-28 21:40:07 +02:00
GenericHeroGuy
ab13b28106
Fix ghost hitlist causing zone errors ( closes #118 )
...
Beware the wrath of PU_LEVEL
2025-09-28 16:36:55 +02:00
Alug
7e5019bd36
handle D_AutoloadFile better
...
only malloc stuff if we need it mallocd
2025-09-28 16:29:04 +02:00
Alug
423ca0eca0
redo native keyboard handling
...
instead of like, constantly checking stuff each frame
Now we check whenever we change the menu entry or open/close the chat or console instead and set sdl textinput mode directly and accordingly no more weird hacking around
this is similar to how srb2classic handles it, just a bit simplified (i dont wanna touch anything menu related if it can be avoided lmao)
this hopefully should resolve any weird remaining issues (lets hope i didnt miss some wonky edge case ugghhh)
TODO: update sdl2 lib on windows to fix issues on sdl side with certain layouts
2025-09-28 16:15:16 +02:00
Alug
939354f483
port over most fixes from srb2classics clang-tidy pr
...
mostly taken from https://codeberg.org/srb2classic/srb2classic/pulls/156
manually done to ensure we only port things that are guaranteed to not cause any potential desynchs
we should probably run this ourselves sometimes aswell
2025-09-28 16:14:56 +02:00
Alug
418ee2ce5f
remove localfile from wadfile struct
...
this was a leftover from localskins
we check for the "important" flag instead
2025-09-28 09:09:53 +02:00
Alug
934184a006
revert localfile check hack in CL_CheckFiles
...
this was added ages ago and broke server joining with actual modifieng addons that were not added locally
W_InitFile should already handle this and mark local addons not as important, which would skip those checks eitherway
atleast thats what im hoping
2025-09-28 09:09:50 +02:00
Alug
e94ef8d9c3
handle W_VerifyNMUSlumps error in W_InitFile
2025-09-28 09:09:48 +02:00
Alug
ba985248ea
fix crash when theres no minimap patch
...
fall back to the "inaccurate" calc from before, so automap may still work
2025-09-27 20:30:34 +02:00
Alug
65bd06aae5
fix some potential leaks
2025-09-27 18:16:23 +02:00
Alug
2434acf825
change comment for PU_PATCH_ROTATED
2025-09-27 16:35:19 +02:00
Alug
b85a718500
merge vid dupx and dupy
...
they always contained the same value, so just remove it
2025-09-27 16:32:40 +02:00
Alug
a0e023527c
move the "video" stuff in i_video
...
so its mostly together in the file
2025-09-27 16:32:16 +02:00
Alug
a6dce95eca
delet vid.buffer
...
unused memory allocation
2025-09-27 16:30:33 +02:00
Alug
f05ac73df6
cache this stuff
...
slight sprites optimization
2025-09-27 16:30:30 +02:00
Alug
c90fe4627b
handle rotated patch img buffer allocations better
...
just always initally allocate it with 1mb size, this is enough for just about everything including gigantamax eevee
if thats not enough, just double our capacity until it fits what we need
this way we save effectively reallocating 99% of the time
this prob can be used for out imgbuf in r_patch, but that needs it allocation size be handled a little differently
2025-09-27 01:44:52 +02:00
Alug
0efedae2c3
remove vid.rowbytes
...
it was just vid.width lel
2025-09-27 00:30:33 +02:00
Alug
a6d6c03a58
fix compiler warning
2025-09-27 00:30:22 +02:00
GenericHeroGuy
2d5664b54a
Fix VID_BlitLinearScreen's SSE version ignoring width ( closes #128 )
2025-09-27 00:30:19 +02:00
Alug
a25b3f6e59
oops lmfao this got lost by accident
...
fixes models kek
2025-09-26 21:41:04 +02:00
Alug
9edcbe22f4
delet apng support
...
this never really worked so get rid of it
2025-09-26 20:13:51 +02:00
Alug
8f4385c39b
fix windoze compile
2025-09-26 17:46:59 +01:00
Alug
e383b0885d
use uintptr_t to fix compiler warning (srb2classic change)
2025-09-26 15:53:29 +02:00
Alug
adcd62ed59
merge GL_ReadScreenTexture and GL_ReadScreenFinalTexture
2025-09-26 15:53:26 +02:00
Gustaf Alhäll
7cdf69c6a1
Fix compiler warning
2025-09-26 15:53:23 +02:00
GenericHeroGuy
ee12d25a8f
Fix GIF recording at 1x resolution, and stop recording on resolution change
...
Simplifies the framebuffer management and eliminates the memcpy per frame
2025-09-26 15:53:20 +02:00
GenericHeroGuy
881c9f8e43
Remove GetTexImage stuff
2025-09-26 15:53:17 +02:00
GenericHeroGuy
b1ac9f94cd
(WIP) Rewrite screen capture code for GIFs
...
Downscaling is now performed during screen capture instead of GIF writing
This may or may not make GIF recording faster?
Maybe it would be faster if I knew how OpenGL worked...
Regardless, the m*th in the GIF code is gone, fixing the high/odd res issues
Also includes a little deduped hardware code, and GL 4.3 debugging code
2025-09-26 15:53:13 +02:00
Alug
9ab4d01b8c
Update README.md
...
mention dlls just in case
2025-09-25 23:02:26 +02:00
Alug
7378ca8479
Update README.md
2025-09-25 22:39:36 +02:00
Alug
a87a7ccbda
delet circleci too
...
non functional psure
2025-09-25 22:00:03 +02:00
Alug
4a5449905b
cleanup broken/old stuff
...
TODO: fix cmake
2025-09-25 21:35:22 +02:00
Alam Ed Arias
3c8bdd7862
SDL2: use SDL_GetSystemRAM() to get total RAM
2025-09-25 16:09:41 +02:00
Alug
9b26f1fdcb
make the game fail loud if some critical gl function cant be loaded
...
also add safety to the portal stencil stuff, if that fails.
everything gl2.0 and newer is not critical and will just prevent some effects from working so that does not need to error loudly
TODO: perhaps actually port renderer switching so this instead will fallback to software if smth fails this late during gl initalization
2025-09-25 16:09:41 +02:00
Alug
76560f4179
enable fbo prints for ogllog file
2025-09-25 16:06:42 +02:00
Alug
f48fdda3f3
fixup STATIC_OPENGL
...
probably should handle the fbo stuff a bit differently
not sure tho in which context STATIC_OPENGL may be ever used though
2025-09-25 16:06:39 +02:00
Alug
2c73593fcd
ensure "rawconv" is nulled before reuse
...
otherwise there might be some leftovers from earlier calls
2025-09-25 03:44:24 +02:00
Alam Ed Arias
4613ec48b3
curl: add code to check the output of curl_multi_*()
2025-09-25 03:14:39 +02:00
Alam Ed Arias
3269b62225
curl: add code to check the output of curl_easy_*()
2025-09-25 03:14:36 +02:00
Alug
7e8f6d759c
add missing dummy makefile
...
dont think this compiles though
2025-09-25 00:29:32 +01:00
Alug
75cfd382f6
fix compile without HAVE_THREADS
...
we dont have gammacorrectedpalette
2025-09-25 00:29:05 +01:00
Alug
e524d3edab
remove erronous win_main.h include
...
this doesent exist since ages anymore lel
2025-09-25 00:25:25 +01:00
Alug
8c9fb9f146
kill off MSVC support completely
...
delet michealsoft
psure this was broken since quite a long time, now since we use quite a bunch of GNU extensions (and actually rely on the cleanup attribute), supporting this in any way is just too much, so remove everything to declutter the codebase
2025-09-24 21:23:58 +02:00
Alug
ff2fc6170d
avoid constant reallocations for patch rotation
...
instead keep our buffers, resize em on need
improves perf a bit
maybe will be changed to free on levelload not sure, depends on how much memory this will allocate
2025-09-24 15:39:21 +01:00
Alug
f27cb0ba8f
allocate imgbuf for "to patch" conversions only if needed
...
should save around 64 megs on dedis
2025-09-24 15:39:21 +01:00
Alug
58705fb184
cleanup w_wad again
...
- add pfree for CLEANUP macro
- use CLEANUP everywhere applicable
- delet duped code
- make directory signatures static and const at file scope
2025-09-24 17:22:09 +02:00
Alug
487b71f82c
ensure Addfile filehandle will always be properly closed
...
TODO: probs could reuse this function in more places where filehandles are used
2025-09-24 00:00:54 +02:00
GenericHeroGuy
2b1b4544f9
Introducing: __attribute__((__cleanup__))
...
I don't wanna hear about MSVC... or C++...
This fixes NUMEROUS memory leaks introduced by G_ReadDemoHeader,
which I was utterly oblivious to up until an hour ago
2025-09-23 23:57:54 +02:00
Alug
af1507b530
fix md5checks breaking for pk3s
2025-09-23 20:23:00 +02:00
Alug
a193604d0f
revert minimap bounds calculation back to vanilla karts (fixes https://github.com/Indev450/SRB2Kart-Saturn/issues/201 )
2025-09-23 20:22:58 +02:00
Alug
e359c8dcd0
port blankarts GLDEBUGMESSAGE stuff
...
credits GenericHeroGuy
switched to use CON_LogMessage for now, since console print functions may die during startup
2025-09-23 00:13:03 +02:00
Alug
f0d2685a60
keep some stuff for screentextures
...
prevent reinit, stack allocations and such
most of these never change and are readonly
this might slightly speedup rendering, though prob negligble
2025-09-22 23:59:55 +02:00
Alug
f3de6c15eb
force disable fbo if it fails to create
2025-09-22 23:47:44 +02:00
Alug
53cea0a835
move fbo stuff to a better place in r_opengl
2025-09-22 23:44:44 +02:00
Alug
4b4d038ac8
cleanup fbo stuff a bit
2025-09-22 23:38:11 +02:00
Alug
9ba305eb77
add backwards compat support for ogl 2.1 fbo extensions
...
this should allow older gpus to use the feature aswell, not super clean but seems to work
TODO: refactor this whole crap, switch to seperate read and draw to use blitting and make this multisampling compatible so we can get rid of the messy "downsample" code and have this active by default
2025-09-22 23:37:30 +02:00
Alug
fcadd03607
add back toggle for mouse cursor visability behaviour
2025-09-20 18:51:55 +02:00
Alug
e1ad48ec16
always interpolate weather when using interpolation
...
same here, a fix, not a feature
2025-09-20 18:08:12 +02:00
Alug
fbb77e8428
always account for mobjscale in precip
...
this is a fix not some feature honestly
2025-09-20 18:08:09 +02:00
Alug
72c05fae77
add gba RR check for software cyan cut
2025-09-20 17:57:47 +02:00
Alug
8867dc959e
dedupe and cleanup nights hoops spawn
...
most of the actual spawn is split into P_SpawnNiGHTSHoop, which takes arguments to determine if to spawn just a hoop or its collision detectors
(if you wonder why this takes a mobj pointer to pointer is due to collision detector need the former hoops last mobj to link into)
- also actually fixes midgame join crash (hoop hnext was directly nulled instead of using p_settarget)
- added some extra safety checks
- reduced the amounts of r_pointinsubsector calls for things that used to go through this function
2025-09-20 16:36:19 +02:00
Alug
e9fc57b97d
move saltyhop stuff into seperate struct
...
no functional change, just as little cleaner lookin
+ reduce size by using stdbools boolean
2025-09-20 16:34:35 +02:00
Alug
7c490de93e
delet metal sonic replay code
...
massively cluttered the demo code
hope this aint used for some super obscure thing
guess we´ll see
2025-09-20 16:34:17 +02:00
Alug
3c85295622
fix most implicit float > double conversions
2025-09-19 13:48:51 +02:00
Alug
bdeb7e5e9d
fix potential leak in protocol registering
2025-09-19 13:48:47 +02:00
Alug
2e766a7e16
fix potential NULL deref of string in lua chatprint lib functions
2025-09-19 13:48:44 +02:00
Alug
9bab3d5795
fix some potential leaks in M_DrawSplitText
2025-09-19 13:48:40 +02:00
Alug
1015800483
delet some double defined things
2025-09-19 13:48:38 +02:00
indev
c4149e26e8
Oops there's 1 more
2025-09-19 02:10:44 +03:00
indev
602e4df5b9
Fix smol oversight :3
2025-09-19 02:06:05 +03:00
Alug
9be5780597
rename "ffloor" global to "visffloor"
...
prevent name conflicts with a bunch of local variables named "ffloor"
2025-09-18 21:08:41 +02:00
Alug
363f4c56f4
dedupe map replacement checks
...
the actual checks are in P_CheckMapReplacements
2025-09-18 18:20:26 +02:00
Alug
9ca21f1fb4
simplify startup map checks a little
2025-09-18 16:41:07 +02:00
Alug
826183ce2a
skip checking for replaced maps on start if no extra wads are loaded
...
~~technically this also should be done for autoload~~
2025-09-18 16:41:03 +02:00
Alug
ec41a7152c
remove erronous errors
...
W_InitFileError from within W_InitMultipleFiles will handle this
2025-09-18 16:41:01 +02:00
Alug
4e394951bc
allow freecam to work with first person
2025-09-18 12:16:27 +02:00
Alug
837f74f28a
simplify startedInFreePlay check
2025-09-18 10:51:33 +02:00
Alug
fb02389922
use P_SetupCamera for P_MoveCameraToSpawn
...
also modify P_SetupCamera to always just move the camera to the playerstarts
2025-09-18 10:51:33 +02:00
Alug
f12f5b8bd1
delet P_Initsecnode
...
empty function now
2025-09-18 10:51:33 +02:00
Alug
20a3f4b6f3
only check cyan floor hack on flats that contain cyan
...
there was the remap loop that would already check this for us, so we can save a few calls to W_CheckNameForNum and memcmp
2025-09-18 10:51:33 +02:00
Alug
f1ca991041
make static, cleanup and delet dead code hw_cache
2025-09-18 10:51:33 +02:00
Alug
83df870bb5
change version string
2025-09-17 23:44:02 +02:00
Alug
8e56998c9a
Merge pull request #200 from Indev450/Saturn-Testing
...
merge testing into next branch
2025-09-17 22:42:47 +01:00
Alug
43e5f694bc
Merge pull request #181 from chromaticpipe/dynamicdelay
...
GIF dynamic delay
2025-09-17 22:42:20 +01:00
Alug
9197a50c5b
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-09-17 23:41:41 +02:00
Alug
40fb4da2e8
Merge pull request #198 from Indev450/servericonpack
...
port Map icon packet from srb2classic
2025-09-17 22:40:57 +01:00
Alug
f458fdbebe
Merge pull request #195 from Indev450/texhash
...
Do not reload every texture when adding a wad
2025-09-17 22:40:53 +01:00
Alug
069f8bc009
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-09-17 23:37:42 +02:00
Alug
a9f579d949
move replay replayhut list free and reset into M_ResetDemoList
...
use it to free demolists from within levelload when you switched maps out of a replay
2025-09-17 23:32:34 +02:00
Alug
7b0b2d8cd7
Merge pull request #197 from Indev450/fastfilesearch
...
Speedup Filesearch
2025-09-17 20:08:25 +01:00
James R
4dce42e458
R_GenerateBlendTables: allocate copy of palette for use in thread
...
The palette can be freed while this thread is still
running, which means the thread would end up reading from
freed memory.
2025-09-17 21:06:21 +02:00
James R
f819471c06
Send R_GenerateBlendTables number crunch to parallel thread
2025-09-17 21:06:18 +02:00
Alug
45393cbb78
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-09-17 21:06:13 +02:00
indev
bf6727b43a
Simplify G_ D/S cpyTiccmd, since n is always a multiple of sizeof(ticcmd_t)
2025-09-17 21:38:55 +03:00
Alug
87134a42b4
fix signal handler stuff for worker threads
...
g_in_exiting_signal_handler needs to be set BEFORE it actually exits lol
2025-09-17 20:35:32 +02:00
Alug
d27a849d79
decouple precipmobj_t from mobj_t
...
vissprite_t now keeps pointer to precipmobj directly instead of just a simple boolean check
this has multiple benefits
the mobj_t struct now can be reorderer and modified as pleased without having to worry about precipmobj struct layouts since all precipmobj -> mobj casts are eliminated
this allows to remove a massive amount of fields from precipmobj struct which never were used massively reducing the footprint of a precipmobj thing
kinda wish there was a neat way to template function headers to take different types for the same arguments in C to reduce code duplication, but this glady is atleast a rather small case
2025-09-17 17:42:16 +02:00
Alug
2aaa52c639
remove precip blendmode visability check
...
this WILL never trigger since we neither can access precipmobjs nor do their translucency values ever change
so save us a little bit of work
2025-09-17 17:41:31 +02:00
Alug
5348739a2c
fix precip translucency in software renderer
...
precipmobjs always spawned with AST_COPY blendmode which failed the check, but they are supposed to be translucent when rain
restore the correct behaviour
2025-09-17 04:25:08 +02:00
Alug
b21396bd34
ensure deterministic order for P_Random stuff passed as arguments
...
the evaluation order of arguments passed to functions is undefined in C/C++, so its up to the compiler in which order to evaluate these
P_Random functions modify the randomseed each time theyre called, which can lead to different outcomes (thus desynchs) on different platforms, compilers, compiler versions etc.
so match up with the most common which is last to first (seemingly the order gcc on nix and windows handle it)
2025-09-17 03:28:02 +02:00
Alug
19c97d3137
explicitly cast those
2025-09-17 02:48:44 +02:00
James R
421dca5615
Inflate only size out bytes
...
Saves time uncompressing an entire lump when only part of
it is needed.
2025-09-17 02:48:41 +02:00
Alug
d5b64a4df3
move G_CopyTiccmd & G_MoveTiccmd back to g_game
...
accidentally misplaced those during g_demo split
2025-09-17 01:31:18 +02:00
Alug
098d1afb50
add P_FreeLevelState + extra stuff for D_ClearState
...
this just takes out the cleanup code from P_SetupLevel so it can be called from within D_ClearState and all the mapdata will be freed when going back to the main menu
Not super crazy and really necessary in kart, but why not tbh
this is mostly based on what RR does
2025-09-17 01:31:15 +02:00
Alug
9d122aa686
change type and name of var here
2025-09-16 14:47:32 +02:00
Gustaf Alhäll
e465e83cb3
Remove maxsend limits
2025-09-16 14:47:29 +02:00
Alug
619a8e2f42
cleanup some unused stuff
2025-09-16 14:47:26 +02:00
Alug
b3c0c6f2b4
preconvert our polyvertex coords to fixed point
...
yes this is unironically faster, by atleast 5-10fps in the wandering falls test case
2025-09-16 02:45:46 +02:00
Alug
f0a1cd01c3
remove floatlenght from seg_t
...
this will get converted to fixedpoint anyways and is only used in ONE place to determine texture x offsets in gl
yes this does get readjusted in adjustsegs if our glsegs differ, but this should be so marginal so save us the work at mapload
i dare anyone to even see a difference if any
2025-09-16 02:45:41 +02:00
Alug
144740a270
declare pv1 and pv2 properly as polyvertex_t
...
this most likely was done due to issues with header includes
this saves an crapton of pointless casts and type conversions
2025-09-16 02:44:46 +02:00
Alug
0b478b7a91
get rid of "spawn_" sector_t fields
...
we now make copies of lines, sectors and vertices on mapload that have the spawn state, so those fields are redundant now
also fix copy paste that made ceiling flat angle check if its differs from the floor flat angle on netsave
saves a whopping 32bytes per sector_t entry!
2025-09-15 21:07:45 +02:00
Alug
d23451b6e7
revert demo ghosttic hitlist resynch double free hack
...
now that we dont reload the map anymore during gamestate reload
2025-09-15 17:27:10 +02:00
Alug
20897deeee
Merge branch 'servericonpack' into Saturn-Testing
2025-09-15 17:27:06 +02:00
Alug
677e381a2c
dont send server icon if current map is supposed to be hidden
...
in line with kart not sending maptitle to ms in the same case
2025-09-15 16:16:43 +02:00
Alug
4b06a3eabf
Merge branch 'fastfilesearch' into Saturn-Testing
2025-09-15 15:08:40 +02:00
Alug
36c1369041
fix filesearch oopsie
...
lulul
2025-09-15 15:08:22 +02:00
Alug
d4b179d59e
fix functionnames in polyobject interp warnings for netunarchival
2025-09-15 14:50:52 +02:00
Alug
81fbd75646
add sector checks to netsave plane interpolators
...
seems like this may be null in a few cases
2025-09-15 14:50:49 +02:00
Alug
c7e37eac05
remove inline from SaveFireflickerThinker
...
doubt theres a single map in kart that uses those and even if it wont be so much that it needs to be inlined
2025-09-15 14:39:57 +02:00
Alug
dd6403691f
fix dedi build compile
2025-09-15 14:35:53 +02:00
Gustaf Alhäll
e42b179fad
Rearrange mobj_t fields to reduce holes
2025-09-15 14:07:31 +02:00
Gustaf Alhäll
ebb0ebcab0
Reduce size of memblock_t structure
2025-09-15 14:07:28 +02:00
Gustaf Alhäll
347a5ed40a
Do not store all states for recursion inside P_SetMobjState
2025-09-15 14:07:25 +02:00
Gustaf Alhäll
dee91ed1ef
Kill RESETDATA
2025-09-15 14:07:21 +02:00
Alug
a80f702bb8
Merge branch 'Saturn-Next' into Saturn-Testing
2025-09-15 14:07:15 +02:00
Gustaf Alhäll
7d91d06ce0
Fix crash on OS X on resolutions that are not multiples of 32
2025-09-15 13:14:28 +02:00
Alug
ab1f04ac31
handle native keyboard in a better way
...
not particulary great, but i dont feel like working this out much atm
2025-09-14 23:32:25 +02:00
Alug
0696ac7340
we dont support gamecube wii or playstation lel
2025-09-14 23:20:46 +02:00
Alug
137a917f58
delet mousegrabok
2025-09-14 23:20:43 +02:00
Alug
00cfdfef27
add P_GetLocalPlayerNumForNum and P_IsLocalPlayerNum and cleanup a bunch of splitscreen checks
...
- P_GetLocalPlayerNumForNum returns the playernumber for a given index
- P_IsLocalPlayerNum returns if a playernum is local to the maschine
- replaced most if else chains from checking splitscreen things with loops using P_GetLocalPlayerNumForNum and P_GetLocalPlayerForNum
2025-09-14 21:30:56 +02:00
Alug
c1d5d153aa
Merge branch 'fastfilesearch' into Saturn-Testing
2025-09-14 20:48:33 +02:00
Alug
1fb3b2110c
bit of cleanup w_wad
2025-09-14 20:48:24 +02:00
Alug
ef9472097d
clean up faster filesearch
...
-use parts of RR´s implementation to get rid of the windows specific code and generally simplify this
- also use SRB2´s symlink detection as its simpler and saves one lstat call per searched file
2025-09-14 20:47:57 +02:00
Alug
ed75d89baf
bit of random cleanup + cache strlen in some places
2025-09-14 18:23:24 +02:00
Alug
fed4c934ad
Merge branch 'Saturn-Next' into Saturn-Testing
2025-09-14 18:20:23 +02:00
Alug
63ea13ab3c
Merge pull request #196 from Indev450/updatemd5
...
Update md5 lib
2025-09-13 13:57:05 +01:00
Alug
2c802799e8
Merge pull request #194 from Indev450/winzlib-ng
...
Replace zlib with zlib-ng on Windows
2025-09-13 13:56:57 +01:00
Alug
fe30cbb4aa
big cleanup levelloading code
...
- made levelfadecol a local variable
- renamed all the "Raw" functions
- moved axis mapthing spawn into the mapthing spawn function
- moved mapthing load to mapdata load, saves opening the THING virtual lump twice
- split out linedef init out of the loop it now gets done within linedef load code saving the hassle of iterating through all the lines twice
- removed a bunch of dead code and useless variables
- moved virtual resource free to after the mapdata has been loaded completely
- sidedef loop now increments pointer instead of reassinging it each iteration
- lastloadedmaplumpnum now gets checked for LUMPERROR instead of INT16_MAX since W_CheckNumForName returns LUMPERROR if lump was not found
2025-09-13 14:36:57 +02:00
Alug
ca1d3e337a
reset our gamepad colour in some cases
...
to account for mappalettes properly
2025-09-12 22:30:47 +02:00
indev
28f1ee6335
Attempt to fix some lua userdata being corrupted when allocated via PoolAllocator
2025-09-12 23:18:39 +03:00
Alug
91f377b382
remove remaining field initalizing thats being taken care of by calloc
2025-09-12 21:19:53 +02:00
Alug
6d6fa156f3
skip manually initializing some fields P_SetupLines
...
redundant due to earlier calloc
2025-09-12 18:29:07 +02:00
Alug
5383fee6af
speedup P_LoadRawSectors a bit
...
the sector array already will be calloc´d, so we dont need to set all of this to 0
also use a premade initalizer for some things
2025-09-12 18:24:21 +02:00
Alug
a2c7b68a60
cache player pointer for P_LevelInitStuff
2025-09-12 18:09:47 +02:00
Alug
7be0b38f47
fix taglist stuff on gamestate resend
...
got kinda lost here lulul
fixed diamond square elevator
2025-09-12 18:06:26 +02:00
Alug
4e05679b10
cache our player and sector pointers for net un/archiving
2025-09-12 17:19:36 +02:00
Alug
36d3c76a52
actually use our spawnside pointer
2025-09-12 17:08:28 +02:00
Alug
eee263c2c2
skip checking for "srb2.wad" and "patch.dta"
...
during server addon checking
both have never existed in kart and are from super old srb2 versions
so save us some string comparisons
2025-09-12 16:25:37 +02:00
Alug
c1cdb83e8d
use hash to determine if polygon state has changed
...
we do not use it in the polygon comparitors as it apparently may lay them out in a really unperformant way
2025-09-12 16:25:34 +02:00
Alug
451ab81f0b
combine this block
2025-09-12 16:22:06 +02:00
Alug
d803c1b9cd
smol change i forgor for testing branch
2025-09-12 16:00:56 +02:00
Alug
72b26c19ce
Reload from spawnsectors/spawnlines/spawnsides (adjusted for kart)
...
from https://gitlab.com/kart-krew-dev/ring-racers/-/commit/4f77c9f228274afb9f0b5bf9b30e0eb22f9b385f
2025-09-12 16:00:12 +02:00
Alug
f35d827bd4
copy initial map state on mapload for Netarchiving + cleanup
...
like this we dont have to reopen the mapdata 3 times each time we prepare a netsave
also allows us to directly compare sector and line properties
this should save a bit of time when someone joins or resynchs with gamestate system
this is based on some UDMF work from srb2
2025-09-12 16:00:08 +02:00
Sally Coolatta
358eeaa981
Don't reload level on gamestate resend
...
The level will only reload during a gamestate reload if the map is horribly mismatched somehow. Minor differences in level state are already handled by other parts of the reload, so doing this on *every* reload wastes lots of time.
2025-09-12 16:00:05 +02:00
Eidolon
55e88cf740
Put seclist nodes in LevelPool memory
...
Replaces the old freelist solution with the LevelPool, which
dramatically reduces the number of allocations needed for mobj and
precip sector assignment. In measurement, this cuts down the time taken
for spawning precipitation by 50%.
2025-09-12 16:00:02 +02:00
Eidolon
be4125e4ca
Add level pool allocator and use it for mobj, precip, thinkers
...
This should substantially reduce the number of malloc/free calls made to
create and destroy mobjs, especially during level load and net
save/load.
memory_resource standard header is not available on the OSX deployment
target we are using, so I had to write my own fixed size pool allocator.
2025-09-12 15:59:59 +02:00
Eidolon
920b00348e
Make the mouse cursor sane
2025-09-12 15:59:56 +02:00
Alug
80aeae1692
implement "startup" stuff for W_InitFileError
...
so it can I_Error if a wad file fails to load on startup
2025-09-12 15:59:52 +02:00
toaster
0e52845f50
W_VerifyNMUSlumps: Rewind back to beginning of file handle for WAD
2025-09-12 15:59:47 +02:00
toaster
ca5dd9e78f
W_VerifyNMUSlumps: Clean up
...
- Bake W_VerifyFile in, since it was a stub never called anywhere else
- Make it operate off file handles, since the following locations quickly filesearch'd more than once in quick succession.
- W_InitFile
- Command_Addfile
- Remove spurious call from W_InitMultipleFiles for `-file` startup param
2025-09-12 15:59:44 +02:00
toaster
956fc099ad
findfile aggressive optimisation: If srb2home and srb2path are the current working directory, don't search in them
...
srb2path will report "." while this optimisation is in play, but this can be disabled if necessary by modifying the small #if (1) in IdentifyVersion
2025-09-12 15:59:41 +02:00
Sally Coolatta
1da376e777
Create doomednum lookup for loading mobjthinkers
...
Cuts off 10% of the time it takes to load mobj thinkers.
2025-09-12 15:59:37 +02:00
Alug
b0b4259af6
fix "missing initializer for member" warning
2025-09-12 15:59:34 +02:00
Alug
26343b4449
remove duped functions in r_fps
...
those didnt do anything different tbh
2025-09-12 15:59:31 +02:00
Alug
a46926f5cc
Set SDL_HINT_APP_NAME SDL hint
2025-09-12 15:59:28 +02:00
Eidolon
49518059d1
Use std::vector for r_fps storage
...
This isn't an optimization for the mobj pointer list, but it is an
optimization for level interpolators, which previously made N
allocations for N non-mobj thinkers. Now those allocations are amortized
according to std::vector's storage.
This could still be further cleaned up to be more C++-ey.
2025-09-12 15:59:24 +02:00
Alug
e6ce425bbd
ceepeepeefy r_fps
2025-09-12 15:59:21 +02:00
Alug
19b9ec0521
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-09-10 13:23:22 +01:00
Alug
c98861be6e
fix tracker module playback going nuts when changing audio buffer size
...
forgor CV_CALL :chaosleep:
2025-09-10 13:08:26 +02:00
Alug
29db810c54
delet remaining "highcolor" stuff
2025-09-09 18:17:04 +02:00
indev
14bf24ed27
Revert stopping music in D_StartTitle and G_EndGame
2025-09-09 18:08:58 +03:00
Alug
ff5bb34204
parentheses hell
2025-09-08 19:33:55 +02:00
Alug
77a00b08a5
optimize gl vhseffect slightly
...
we dont need to remake our screen texture 3 times
also avoid combining float with interger maths esp in the loop
2025-09-08 19:29:01 +02:00
Alug
27caf1bc70
Merge branch 'servericonpack' into Saturn-Testing
2025-09-08 18:09:09 +02:00
Gustaf Alhäll
01b24e5417
Fix use-after-free when listing servers
2025-09-08 18:08:45 +02:00
Gustaf Alhäll
7a320c9c54
Refactor aatree_t to accept strings
2025-09-05 20:05:10 +02:00
Alug
3a65b687a8
some more micro optimizations p_mobj
...
dont revaluate P_GetSlopeZAt multiple times due to min/max
save a few abs calls by putting em in constants
remove pointless fixedmuls
2025-09-05 20:05:05 +02:00
Alug
0919ad015c
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-09-05 20:05:01 +02:00
indev
437f900c25
Clear dangling pointers in VoteScreen struct after mapload
2025-09-05 18:21:01 +03:00
indev
cd7ce5698c
Update vote background if hud.setVoteBackground was called on vote screen
2025-09-05 17:34:30 +03:00
indev
86eda4f358
Revert "wonky: cache and reuse our testpoint subsector for sloped mobj z checks"
...
This reverts commit 6f93299aaf .
2025-09-03 18:51:35 +03:00
indev
d791d2ce55
Revert "make sure subsec gets initalised to smth"
...
This reverts commit 32d8120516 .
2025-09-03 18:51:32 +03:00
Alug
1883a4884a
(hopefully) fix replayhut calling waitingplayers drawer
...
due to server list setting netgame to true and never resetting it
also cleanup some mess here
lets hope this doesent break anything
2025-09-03 14:10:26 +02:00
Alug
403c34fe5c
Merge branch 'servericonpack' into Saturn-Testing
2025-09-03 12:34:06 +02:00
Alug
f86a99cd1b
Merge branch 'Saturn-Next' into servericonpack
2025-09-03 12:33:56 +02:00
Alug
85cac497ea
fixup building map title string for serverinfo
...
fixes numerous issues, like zonetitle not appearing on bots and serverinfo screen
and generally making this more sane by appending stuff if needed
also fixes "Zone" not displaying in serverinfo screen
2025-09-03 12:33:49 +02:00
Alug
92d6c2b7b0
make patch/pixel conversion account for padding data/no data
...
just set everything to transparent pixel 247 (0xf7)
so we neither write nor read garbage data and just can cut it out as transparent during pixel to patch conversion
2025-09-03 12:32:32 +02:00
Alug
46be62b256
Merge branch 'servericonpack' into Saturn-Testing
2025-09-02 23:04:03 +02:00
Alug
f67f8e7dbf
cache patch width
...
just to avoid some cache misses in a somewhat tight lööp
2025-09-02 22:20:37 +02:00
Alug
191fd4b68a
Merge branch 'servericonpack' into Saturn-Testing
2025-09-02 22:03:59 +02:00
Alug
c504c0f8f0
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-09-02 22:03:55 +02:00
indev
6adf39b460
Don't check for opengl in NOHW/DEDICATED builds
2025-09-02 23:01:07 +03:00
Alug
e160427108
add smol comment
2025-09-02 21:38:10 +02:00
Alug
275d28c9c6
implement map icon request counter/limit
...
tries 5 times then gives up
this is just since vanilla clients do not send anything back to us so this would endlessly retry which is pointless
can be adjusted if needed
2025-09-02 21:27:32 +02:00
Alug
2a848e32e4
port map icon packet for serverinfo screen
...
based on https://codeberg.org/srb2classic/srb2classic/pulls/134
with adjustments
many thanks for the help @indev450 ! <3
2025-09-02 21:27:28 +02:00
Alug
039daa0145
inline P_PointOn stuff + fix declarations
2025-09-02 14:56:41 +02:00
Alug
a425935bc4
Merge branch 'Saturn-Next' into Saturn-Testing
2025-09-02 14:56:36 +02:00
indev
6af09bd215
Add offset for small nametags in opengl without shearing enabled
2025-09-01 19:56:42 +03:00
Gustaf Alhäll
015d9208e3
Refactor software blitting logic
2025-09-01 18:24:53 +02:00
Alug
f247796ffc
small cleanup PT_ServerTics
2025-09-01 11:03:31 +02:00
Alug
29c72be994
Revert "Always accept tics received from the server"
...
This reverts commit 29006e9926 .
Causes random desynchs
2025-09-01 10:58:28 +02:00
Alug
8d70016edc
use a macro for mobjtimefrac
...
just looks a little tidier
2025-08-31 13:36:08 +02:00
Alug
6919b9fd91
skip distance checks if we dont use interpolation
...
will also indirectly skip calling R_GetTimeFrac
2025-08-31 13:36:05 +02:00
Alug
c5d58f5de2
this went missing during merge
2025-08-31 13:36:02 +02:00
GenericHeroGuy
4855d29d31
Fix interpolation going missing for freecam
2025-08-31 13:35:57 +02:00
GenericHeroGuy
2d22c2b265
Rework rendertimefrac and gate it behind a function
...
Fixes intermission background shifting when toggling fullscreen (yup)
and fixes audio caption text losing interp when paused
2025-08-31 13:35:54 +02:00
Alug
acf121cac6
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-31 13:35:51 +02:00
Alug
94d01d1ee9
check clientcfg packet length to skip potential garbage data
...
dont think this ever broke, but better safe than sorry
2025-08-30 14:43:04 +02:00
Alug
e3c9ae6de5
replace strlcat and strlcpy with OpenBSD versions in "string.h"
...
those started throwing warnings on Windows, so just use the BSD ones, since those also match with what we got on nix
2025-08-28 15:51:57 +01:00
Alug
dff8f549da
precalculate linedef angles
...
so we dont have to recalc it runtime
the map is static and linedefs shouldnt be able to be moved so this should be fine
2025-08-28 16:25:59 +02:00
Alug
b93a5c5305
replace those with P_GetLocalPlayerForNum
2025-08-28 16:25:35 +02:00
Alug
0c75d8aca3
P_CheckCameraPosition can be static
2025-08-28 16:25:18 +02:00
Alug
71c28ad00b
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-08-28 16:25:14 +02:00
indev
7e5acd72c1
Make replay search textbox fit on all resolutions
2025-08-28 15:37:03 +03:00
Gustaf Alhäll
29006e9926
Always accept tics received from the server
2025-08-28 10:10:29 +02:00
indev
10d4365376
Pass rgba or fadergba pointer into P_LoadSideColormapGL directly
2025-08-27 23:17:18 +03:00
Alug
611edea6e0
make paletterender lightlevel shifting less ambigous
...
that macro was from the older approach, but is uneeded now
this better shows whats going on here
2025-08-27 10:11:30 +02:00
Alug
fcbf45521a
smol optimizations by avoiding multiple reevaluations
...
due to clamping macros, those may get reevaluated multiple times
nothing crazy
2025-08-27 10:07:34 +02:00
Alug
32d8120516
make sure subsec gets initalised to smth
2025-08-27 09:01:35 +02:00
Alug
fdba6a253a
dont recheck paletterendering state multiple times during opengl lighting calc
2025-08-26 19:33:31 +02:00
indev
18bdbfdb07
Revert using quick dist functions in lua hud, since some lua scripts need it to be precise (lua driftgauge for example)
2025-08-26 20:17:40 +03:00
Alug
6f93299aaf
wonky: cache and reuse our testpoint subsector for sloped mobj z checks
...
its suprisingly common for the test coords to not change between calling those functions, so we can potentially save us alot of R_PointInSubsector calls
Need to check for branch prediction slowdowns, but from some quick timedemoing, this speeds up things a bunch
2025-08-26 18:05:33 +02:00
Alug
c47814c29a
dont revaluate HighestOnLine twice for slope mobj z checks
2025-08-26 17:49:40 +02:00
Alug
0dd49869f5
Merge branch 'fastfilesearch' into Saturn-Testing
2025-08-26 12:05:23 +02:00
Alug
74c9c09fcd
remove skipexclude variable
...
with the folderchange check this becomes erronous
2025-08-26 12:04:14 +02:00
Alug
6f891dd235
use GetFileAttributes for pathisdirectory on Windows
...
should slightly speedup gamestartup with autoloaded files
2025-08-26 10:39:02 +02:00
Alug
6e123b0732
fix filesearch portability
2025-08-26 10:38:58 +02:00
Alug
2c51c9f5f8
use GetFileAttributes for pathisdirectory on Windows
...
should slightly speedup gamestartup with autoloaded files
2025-08-26 08:36:00 +01:00
Alug
8a781b4fa2
fix filesearch portability
2025-08-26 08:34:57 +01:00
Alug
e3a79ab099
fix windows compile
2025-08-26 08:24:51 +01:00
Alug
05364cc4dc
fix "invert encore special"
...
R_NoEncore always checked for the wrong special "240"
we keep that behavior for compat, incase someone else figured it and used that
2025-08-26 09:44:00 +02:00
Alug
3c5d997eff
simplyfied P_PointOn checks from prboom
...
should be functionally identical
2025-08-26 09:43:11 +02:00
Alug
696a9ea464
smol cleanup r_data
2025-08-26 09:43:05 +02:00
Alug
c2d97397e8
test: use faster distance and sight functions for hud hooks
2025-08-26 09:42:58 +02:00
Alug
4f534c5ce3
remove d_main include from filesrch
2025-08-25 16:12:57 +02:00
Alug
15288ced57
this ceepeepee
2025-08-25 16:10:49 +02:00
Alug
30eca524d9
remove d_main include from filesrch
2025-08-25 16:10:46 +02:00
Alug
168a2c9684
just drop the connection instead of I_error if connection gets lost
...
partial port from srb2classic
2025-08-25 15:40:50 +02:00
Alug
0e05dca3d5
try to fix nodes being occupied if connection didnt recieve any acks
...
partial port from srb2classic
2025-08-25 15:40:50 +02:00
Alug
717f5e3c13
Merge branch 'fastfilesearch' into Saturn-Testing
2025-08-25 13:10:03 +02:00
Alug
2cad7f7210
dont recheck if we should skip the folder if folder did not change
...
saves a whole lotta string comparisons and speeds this up even further
2025-08-25 12:56:09 +02:00
Alug
34783cfe94
dont evaluate strtol multiple times
2025-08-25 03:39:37 +02:00
Alug
12149a4773
target x86-64-v2 instead of nocona for 64bit windows
...
slightly newer target, should still be compatible enough with anything from 2009 and onwards
may help with compiler optimizations
needs some testing
32bit builds remain unchanged as they are intended purely for compatibility
2025-08-24 23:02:13 +02:00
Alug
7d81990699
always set this to 0
...
dont need to check this beforehand
2025-08-24 23:02:09 +02:00
Alug
531de8bd1e
make lua string to number conversion consistent between platforms
...
effectively clamps it to 32bit range
maybe fixes some issues between windows and other builds
2025-08-24 23:02:06 +02:00
Alug
232e6a4b5b
use hash checks for W_CheckNumForName
2025-08-24 23:02:03 +02:00
Alug
65d3684d0b
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-24 23:01:53 +02:00
Alug
6017543666
dont try to make glpatch from nothing
2025-08-24 23:01:48 +02:00
Alug
7c7f924ef1
actually dont add any level interpolators on render_none
2025-08-21 18:33:11 +02:00
Alug
ba40d45321
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-08-21 18:33:08 +02:00
indev
3af0009453
Fix off-by-one in M_FindFirstMap
2025-08-20 16:18:33 +03:00
Alug
7ac01390d0
dont add mobj and level interpolators on render_none
...
i dont think we need to interpolate anything on dedicated
this should improve performance a bit on maps with many mobjs/moving level stuff
2025-08-19 11:49:59 +02:00
Alug
6dee986a28
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-19 11:49:56 +02:00
Alug
145eecf8a4
move sprite reset stuff into R_ResetMobjInterpolationState
...
this also gets called at the start of the tic
and sets a bunch of rendering crap eitherways
so we can save another thinker loop and a bunch of checks with this
bit of perf gain, 3-4fps on that awful hadal trench timedemo
2025-08-19 11:49:29 +02:00
Alug
080719c251
move all of this stuff into the switch above it lel
2025-08-18 17:56:38 +02:00
Alug
d58719d09b
cleanup and splitup P_LoadSideColormaps
2025-08-18 17:56:35 +02:00
Alug
05d1eab441
remove bottommap,midmap and topmap stuff
...
was non functional anyways so get rid of it
2025-08-18 17:56:31 +02:00
Alug
caffda3221
dont need to do this without viewmorph stuff
2025-08-18 17:56:08 +02:00
Alug
650a50278a
move camera slidemove stuff behind ifndef NOCLIPCAM
...
dont think this is needed at all with camera noclip
2025-08-18 17:56:05 +02:00
Alug
1ef0909204
dont need to completely clamp those
...
we already check for the top coords right before
2025-08-18 17:55:55 +02:00
Alug
42878841e6
Fix FOF intersections in multitagging for the renderer.
...
backport from srb2
2025-08-18 17:55:52 +02:00
Monster Iestyn
34e4cf123d
Fix FOF slopes briefly glitching on level load in software mode, by ensuring the FOFs' target sectors have hasslope set on creation
2025-08-18 17:55:48 +02:00
Alug
7ffb3ebdfe
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-18 17:55:45 +02:00
Alug
684a43a95c
fix software extra 3d floors
...
lmao was a copy paste oopsie from ages ago
shoutout to phoenix´s new map making me find this
2025-08-18 16:49:36 +02:00
Alug
4fcb41f659
mark stuff for blitting loop as const and with register
...
gives another 5-7fps or so for me
2025-08-17 18:19:20 +02:00
Alug
2d1c876e0d
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-16 22:21:13 +02:00
Alug
8d1ef1721f
port srb2classic´s sdl blitting stuff for software
...
all credits to hanicef
mostly from https://codeberg.org/srb2classic/srb2classic/commit/a1fa0b89dbf75ef8be17c9ca5c728cc9c1848582
and
https://codeberg.org/srb2classic/srb2classic/commit/a1cf54e66ad1cb66af99056bc940fc68dce24224
boosts my fps around 20-25 fps
2025-08-16 22:20:58 +02:00
Alug
02ffceb300
fix rotating polyobject interpolation
2025-08-16 22:20:55 +02:00
Alug
44fe156751
update comment for lightcontrast
2025-08-16 22:20:52 +02:00
Alug
aca48d69cd
style fixes
2025-08-16 22:20:48 +02:00
Alug
294ce055cd
mark this with restrict
2025-08-16 22:20:33 +02:00
Alug
4117eb5b40
fix Paranoia compile
2025-08-16 22:20:30 +02:00
Alug
a9068ee162
mark this with "noreturn"
...
clang kept yelling for some reason
2025-08-16 22:20:27 +02:00
indev
9549a204a5
Add tooltip for centered chat text
2025-08-15 22:57:09 +03:00
indev
c276736002
Add option to center text in chat (chatcentertext)
2025-08-15 21:51:58 +03:00
Hanicef
cfd960124e
Do not access memory on misaligned addresses
2025-08-15 10:11:07 +02:00
Alug
77cd898bd2
TEST: compile with fwrapv
...
fixes clang desynchs with prng
maybe other stuff/platforms aswell
2025-08-15 10:02:59 +02:00
Alug
e7c40dd914
fix -Wunused-value warnings
...
we dont do anything with this, so just skip both
2025-08-15 10:02:56 +02:00
Alug
bcb1a1d5eb
port RR´s c++ compatible byteptr macros
...
means we can also get rid of the mumble hack
2025-08-15 10:02:52 +02:00
Alug
bf53db8d68
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-15 10:02:48 +02:00
Alug
b5dfe74cfe
add USECLANG compile flag to force building with clang
2025-08-15 08:01:58 +02:00
Alug
6c891f1146
supress align and unkown pragma warnings in clang
2025-08-15 08:01:56 +02:00
Alug
7d06f59da5
append those to LDFLAGS instead of libs
...
so they may be passed to other things
2025-08-15 08:01:47 +02:00
Alug
9dee0f0ea8
fix restrict being in wrong place in declaration R_DrawColumnPixel
2025-08-15 08:01:37 +02:00
Alug
9338b5b10f
dont need to realloc this
...
didnt see when i added realloc everywhere this doesent need to keep old data
2025-08-14 16:19:17 +02:00
Gustaf Alhäll
b7ecffedcd
Fix pixel shift caused by negative pixel positioning in software
2025-08-13 22:44:25 +02:00
Alug
71ab8c0b7d
workaround for lua menu conrols for spectators
...
TODO: refactor all of this into one cmdbuilder and get rid of the codedupe in p_user for cameracmd
2025-08-13 22:40:50 +02:00
Alug
8901c62201
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-13 22:40:46 +02:00
Alug
7deeb4486f
port RR camera slope pitch stuff + make it toggable
...
"cam_pitch" this makes the camera pitch on upwards and downwards slopes a bit
2025-08-13 18:01:00 +02:00
Alug
a559e36306
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-12 20:29:18 +02:00
Alug
602bd1a010
fix directional light stuff
2025-08-12 20:29:13 +02:00
Alug
f57b8092fc
dont need to reinit those gl vars
2025-08-12 20:29:10 +02:00
Alug
5777c638f1
hack for vanilla gba rr cyan floor in gl
2025-08-12 20:28:54 +02:00
Alug
60307da80e
move dedi idle stuff into function + port smol cleanup from srb2
2025-08-12 20:28:51 +02:00
Gustaf Alhäll
d6e97c328a
Simplify NetXCmd client distribution
2025-08-12 20:28:48 +02:00
Alug
e4f35e827d
free minimap patch on mapload
2025-08-11 13:48:02 +02:00
Alug
e7cab1a376
check if minimaphead exists
...
hopefully fixes a random crash there
2025-08-11 13:47:59 +02:00
Alug
6eb1114d17
reduce scope of some more netstuff
2025-08-11 13:47:54 +02:00
Alug
e6a0b4f58b
fix oopsie copy paste
2025-08-10 18:34:43 +02:00
Alug
c8d9ff6575
use GetFileAttributes also for preparefilemenu
...
untested as of now
2025-08-10 18:34:40 +02:00
Alug
0d9d176415
use GetFileAttributes instead of stat for filesearch on windows
...
this is slightly faster and the recommended way of doing this
apparently stat on windows has to emulate some POSIX stuff for that which may slow it down
2025-08-10 18:34:35 +02:00
Alug
e1413764f6
speedup addon search
...
by adding a blacklist of folders
logs, luafiles, replay etc shouldnt ever contain addons so those can be skipped entirely
this massively speeds up searching for addons on windows
also will make findfile try to search in the designated addon folders first so it doesent look in the home or kart folders before it
this is probably not the best way to do things
but idk what im even doing, im not a coder just some chao who likes to sleep all day
2025-08-10 18:34:11 +02:00
Alug
ca04e084a2
link stdc++. pthread and gcclib statically on windows
...
fixes the game throwing super cryptic errors when you dont have the right dlls
2025-08-09 23:32:03 +01:00
Alug
56d03042ec
link stdc++. pthread and gcclib statically on windows
...
fixes the game throwing super cryptic errors when you dont have the right dlls
2025-08-09 23:31:55 +01:00
Alug
0c8df833e9
test: use SDL_GetDesktopDisplayMode instead of SDL_GetCurrentDisplayMode
...
this seems to fix some smol freezes for some
need to test this a bit
2025-08-09 22:32:24 +01:00
Alug
f275eb5f9a
test: disable sdl textinput when not using native keyboard layout
...
this may fix issues on newer sdl2/-compat versions with dead keys on non us layouts
2025-08-09 22:32:20 +01:00
Alug
88081068e9
fix oopsie copy paste
2025-08-09 22:32:13 +01:00
Alug
9893584b4f
use GetFileAttributes also for preparefilemenu
...
untested as of now
2025-08-09 22:28:45 +01:00
Alug
0b4fad3cca
use GetFileAttributes instead of stat for filesearch on windows
...
this is slightly faster and the recommended way of doing this
apparently stat on windows has to emulate some POSIX stuff for that which may slow it down
2025-08-09 21:26:15 +02:00
Alug
bbb4749815
speedup addon search
...
by adding a blacklist of folders
logs, luafiles, replay etc shouldnt ever contain addons so those can be skipped entirely
this massively speeds up searching for addons on windows
also will make findfile try to search in the designated addon folders first so it doesent look in the home or kart folders before it
this is probably not the best way to do things
but idk what im even doing, im not a coder just some chao who likes to sleep all day
2025-08-09 17:21:21 +02:00
Alug
4fc780298f
remove I_BaseTiccmd
...
just complicates things, can just memset our ticcmnds instead
psure this was used ages ago for smth but its not needed here at all
2025-08-09 17:21:18 +02:00
Alug
f24f3b5b23
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-09 17:21:15 +02:00
Alug
ff6279a406
add P_GetLocalPlayerForNum
...
just to get rid of ternaries lel
2025-08-09 17:21:08 +02:00
Alug
c36f64e97b
use memcmp for legacy sky check
...
just gotta know if first three letters match it
2025-08-09 17:21:05 +02:00
Alug
2c4bee6e6a
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-08-09 00:50:50 +01:00
Alug
7b776f01bd
change flow of K_drawKartStats a bit
...
nothing notable, just the non splitscreen path will return early now
2025-08-08 22:43:43 +02:00
Alug
43b7492300
disable pointless "Couldn't read mobj_t" warnings in replays
...
mobjs just cannot be unarchived in replays ever
so this will always spam those for something that WILL never work in kart
maybe if i decide to fix this for 32p or smth those become useful again
2025-08-08 22:29:29 +02:00
indev
1fe79fe236
Add -strict, -strict-soc and -strict-lua cli params
...
Both trigger I_Error if a warning occurs during addon load in a SOC or lua
script
2025-08-08 18:59:07 +03:00
Alug
222b63d2c3
move the windoze thing to windoze makefile
2025-08-08 17:53:25 +02:00
indev
a7c41b458a
Use NOLIBGME instead of NOGME
2025-08-08 18:33:24 +03:00
indev
3901c7c7da
Revert "Fix makefiles checking for NOLIBGME instead of NOGME"
...
This reverts commit 932a08b2da .
2025-08-08 18:31:45 +03:00
indev
932a08b2da
Fix makefiles checking for NOLIBGME instead of NOGME
2025-08-08 18:29:05 +03:00
indev
4c97a4f9e0
Fix potential buffer overflow in DEH_LoadDehackedFile
2025-08-08 17:53:46 +03:00
indev
a1d16b4613
Update dedicated/i_sound.c I_StartSound and I_UpdateSoundParams
2025-08-08 17:43:40 +03:00
Alug
16e1e00c67
"reenable" midi support
...
well it was never really disabled, but like this we can atleast change its volume lel
menu entry is still disabled, i dont think theres a single map with midi music, so this would just clutter the menu
2025-08-08 00:55:06 +02:00
Alug
b76fc9699a
fixup midi menu stuff
...
i love M_DrawSkyRoom
2025-08-08 00:55:03 +02:00
indev
cb3638e3ab
Add SetupVote hook
2025-08-07 23:48:11 +03:00
Alug
e85d91e682
save a few checks for st debug drawer
...
if we dont use it
2025-08-07 22:27:28 +02:00
Alug
2653b59af4
dont double free our vote patches
...
those may point to the same thing so uhhhh
PU_PATCH_LOWPRIORITY will ensure the memory will be freed on mapload
2025-08-07 22:26:27 +02:00
Alug
caff071a1b
fix spacing in Z_CheckHeap errors
2025-08-07 22:10:03 +02:00
JugadorXEI
86ccf40884
Fix displayplayers.iterate hang when multiple viewports view the same player
2025-08-07 20:51:31 +02:00
Alug
85dba64b84
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-07 20:51:28 +02:00
Alug
40165fd6db
make leveltitlecard be affected by colour hud
2025-08-07 19:42:39 +02:00
Alug
c701e1fe7e
make inputdisplay colour match the rest of colourhud better
2025-08-07 19:38:03 +02:00
Alug
525e19566e
smol refactor hwr precache
...
not faster or anything
real time consuming thing is he actual calls to getetxture and getflat
2025-08-07 19:38:00 +02:00
Alug
27e734bde0
make music toggle/volume handling less of a mess
...
based on work in srb2 from sphere
this gets rid of all the duplicated midi stuff
since we dont really have a whole midi soundtrack like srb2, S_GetMusicLumpNum will always prefer non midi music
2025-08-06 19:49:35 +02:00
Alug
fa10eb5801
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-08-06 18:09:24 +01:00
Alug
2e44a50f7f
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-06 00:13:39 +02:00
Alug
bd53786887
fix LoadElevatorThinker interp oopsie
2025-08-06 00:12:34 +02:00
Alug
ad1b1eabe4
fix levelstuff not being interpolated on netgame join or resynch
...
i love polyobjects
2025-08-06 00:10:47 +02:00
Alug
2de9a2be68
fix a desynch due to wrong assumption
2025-08-05 18:33:02 +02:00
Alug
e120907e0f
make driftgauge stuff a bit more readable
2025-08-03 20:12:13 +02:00
Alug
b0c217201e
move flat cyan check into a function
...
and also limit it to software renderer only
we dont need this anywhere else, so can save a bit of work
2025-08-03 15:59:57 +02:00
Alug
dac7026739
use R_GetFlat here
...
does the exact same thing
2025-08-03 15:59:23 +02:00
Alug
91a4646f19
dont PU_CACHE our planeflats
2025-08-03 15:51:52 +02:00
Alug
8963e17b83
check if __THROW is defined
...
Windows does not have it at all, so we gotta check this otherwise compile may fail
2025-08-03 14:40:09 +01:00
Alug
8ba52e2530
check if __THROW is defined
...
Windows does not have it at all, so we gotta check this otherwise compile may fail
2025-08-03 14:40:01 +01:00
Alug
bf2184582a
delet those
2025-08-03 16:30:56 +02:00
Alug
501a770fee
Merge branch 'optional-freeslot-test' into Saturn-Testing
2025-08-03 16:30:25 +02:00
Alug
327f7085f6
idk whats up here with the win libs
2025-08-03 16:30:17 +02:00
Alug
8aef549cfc
restore optional freeslot stuff
2025-08-03 16:24:35 +02:00
Alug
8dd268b83e
fix conflicts
2025-08-03 16:23:00 +02:00
Alug
5fddc3156b
Merge branch 'Saturn-Next' into optional-freeslot-test
2025-08-03 16:22:30 +02:00
Alug
d6976ca64f
inline most of lua lib stuff
...
a bit faster
2025-08-03 16:15:15 +02:00
Alug
809219d5e8
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-03 16:08:20 +02:00
Alug
278dd12ced
Merge branch 'Saturn-Next' into Saturn-Testing
2025-08-03 15:51:58 +02:00
Alug
f3cfa969c9
TEST:raise size of sectors considered too smol for precip
...
theres been a bunch of very smoll sectors that still get precip spawned (see howling bogs, outside of the actual map)
this i just an abitrary value, so gotta see how thi s goes
2025-08-03 15:39:01 +02:00
Alug
7b64b22012
some tiny optimizations
2025-08-03 15:38:58 +02:00
Alug
267ccae3a9
Add driftpulse controller rumble
...
inspired by radioracers, this does a "weak" rumble pulse the moment the sparks pulse (this is slightly after reaching the new driftlevel)
may want a toggle for this
2025-08-03 15:38:55 +02:00
Alug
5f77dbb946
cleanup the wadpath mess
2025-08-03 15:38:51 +02:00
Alug
1a46d7d16c
HACK reset demo.inreplayhut on levelload when not in replay playback
...
this is really hacky, but M_QuitReplayHut will be skipped if we change maps, connect to a server or basically anything in that manner from within a replay that we started from the replayhut
which can lead to crashes or the replayhut to become nonfunctional
note, like this demolist is not freed, but that shouldnt matter much since it will be freed anyways the moment you open the replayhut again
2025-08-03 15:27:55 +02:00
Alug
c8a2278cb7
Testing again
2025-08-03 15:25:13 +02:00
Alug
75b269d4bb
Merge branch 'updatemd5' into Saturn-Testing
2025-08-03 15:24:39 +02:00
Alug
35e499027d
Merge branch 'texhash' into Saturn-Testing
2025-08-03 15:24:34 +02:00
Alug
356b2f279c
Merge remote-tracking branch 'origin/winzlib-ng' into Saturn-Testing
2025-08-03 15:24:30 +02:00
Alug
eba5965220
move rainbow color calc into K_Rainbowcolor
2025-08-03 14:42:49 +02:00
Alug
feda0bae80
update md5 lib
...
no real changes, mostly just cleanup and some memory alignment fixes
2025-08-03 00:38:52 +02:00
Alug
44ecb677ad
fix merge conflicts texturehashing
2025-08-03 00:37:28 +02:00
Alug
3e99f4d142
Do not reload every texture when adding a wad (squashed)
...
port of https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1725#c829d21709a4f5cd81d140271e883bc40dd00b1b
2025-08-03 00:35:46 +02:00
Alug
2891983cde
replace zlib with zlib-ng on windows
2025-08-03 00:32:40 +02:00
Alug
612f910b9c
Merge remote-tracking branch 'origin/Saturn-Next' into winzlib-ng
2025-08-03 00:29:50 +02:00
Alug
a9d0e2154b
clamp software lightlevels before shifting it
...
was a little oopsie porting this over
,after shifting we only get 32 lightlevels
decided to clamp this in range aswell, just incase
2025-08-02 19:13:23 +02:00
Alug
16a0953d1d
fix the "is valid for C/ObjC but not for C++" warnings
...
fixes https://github.com/Indev450/SRB2Kart-Saturn/issues/192
2025-08-02 01:54:57 +02:00
Alug
737ae08355
dont need to reinit those ever
2025-08-02 01:01:06 +02:00
Alug
6d83a7e187
remove usefulness and volume from sfxinfo_struct struct
...
those are unused anyways, hope this doesent break shit lol
2025-08-02 01:00:58 +02:00
Alug
56df9b6af3
who tf needs 999999999 sound channels
...
:chaobaba:
even 255 are kinda overkill lol
2025-08-02 01:00:51 +02:00
Alug
7f2435d821
add an Accessibility options menu
...
still a work in progress, feel free to suggest more things to add!
2025-08-01 22:26:00 +02:00
Alug
b180f29fd9
readd secbright to menu
...
into advanced video options menu
2025-08-01 21:27:38 +02:00
Alug
32c85f96a4
remove secbright from menu
...
need to slot it somewhere else but little too lazy atm
2025-08-01 21:27:35 +02:00
chromaticpipe
ec83c60320
Configurable sector brightness in software
2025-08-01 21:27:32 +02:00
chromaticpipe
fb4a912dba
Clamp the lightlevel at the start of HWR_Lighting()
...
Allows secbright to work without shaders
2025-08-01 21:27:29 +02:00
James R
123b2aa60b
lua_hooklib.c: refactor HUD hook call
2025-08-01 21:04:30 +02:00
Logan Aerl Arias
bd82a8db29
Update lauxlib.h
...
lauxlib.h: mark luaL_error as a REPORT function
2025-08-01 21:04:27 +02:00
Alug
6f71fc17c2
mark this as unlikely
...
those will never run ever after displaying once
2025-08-01 21:04:24 +02:00
Alug
d8c3e9f41c
fix windows being unable to link with LTO and openmpt
...
idk why this works but it does, mirrors how it was before the new makefiles
2025-08-01 17:55:02 +01:00
Alug
e10345b4de
pass "-g" again for lto and asan on windows
...
for some weird reason it will omit all debug symbols otherwise, which we need for crashlogs and stuff
2025-08-01 17:31:12 +01:00
Alug
2ab66b113c
we dont need cv_samplerate with sdl mixer
2025-08-01 04:51:00 +02:00
Alug
f64263cf6f
remove some unused stuff s_sound
2025-08-01 04:50:57 +02:00
Alug
55c72f32da
rename buffersize to audiobuffersize
...
buffersize was not a good name lel
2025-08-01 04:50:54 +02:00
Alug
53bc12baad
init "lenght" in S_AddSoundFx
...
seems like this never init this lel
2025-08-01 03:58:41 +02:00
Alug
b391e763bc
fix gme
2025-08-01 03:56:47 +02:00
Alug
2bae0bdb0f
indent deez
2025-07-31 23:34:29 +02:00
Alug
d42df54901
fix borderless sometimes not toggling on windows
...
idk why windoze is like this, but gotta call this after SDL_SetWindowFullscreen here
2025-07-31 23:34:28 +02:00
Alug
e6256d448f
TEST: banish LUA_Step
...
checking stuff there never seemed to be any garbage left here
so we can just skip this
2025-07-31 21:23:33 +02:00
Alug
ad1a980eb1
memset listener outside the loop S_StartSoundAtVolume
...
same effect, but we dont need to call it multiple times and can be sure this is never unitialized
2025-07-31 19:55:29 +02:00
Alug
1b50858fa6
add a configurable same sound limit
...
inspired by dsda-doom
in alot of cases the game may play a crapton of the same sound at once, becoming unbearably loud
2025-07-31 19:42:56 +02:00
Alug
3276bbb7b6
restore mumble postional sounds for displayplayers
...
we essentially always passed 0 before lol
2025-07-31 19:42:53 +02:00
Alug
dc00fa3429
fix passing garbage to mumble outside of levels
...
this just deadass passed the unitialized listener array into mumble
2025-07-31 19:42:37 +02:00
indev
dc9276b73c
Make 'visit mb.srb2.org/addons' text fit on default resolution ('& make' bit refers more to wiki than mb anyway)
2025-07-31 13:33:48 +03:00
Alug
271d70d6f3
inline HWR_GetTexturePalette
...
makes ui draw slightly faster from quick test
should be in hw_glob, but cant include hw_main there Zzz...
2025-07-30 15:29:56 +02:00
Alug
e52a6c430b
smol changes k_hud
...
nothing crazy mostly just smol reordering
2025-07-30 14:55:44 +02:00
Alug
d77d25acf8
use hypotf for P_SegLengthFloat
...
well its hypot but for floats lel
2025-07-29 19:21:34 +02:00
Alug
9898809f0a
remove erronous HWR_FreeExtraSubsectors call
...
this will be called from within HWR_CreatePlanePolygons anyways
2025-07-29 18:48:02 +02:00
Alug
48768aa13c
fix the rare infinite loop hang in ogl (sunset hill map)
...
use new doom-legacies PointInSeg and add a selfref check to CutOutSubsecPoly
(somewhat related, but it appears this whole file is able to mess with the actual sector planes outside of rendering, this is not really good since it may actually lead to some super hard to debug desynchs)
2025-07-29 18:40:40 +02:00
Alug
b1c01a763f
cleanup hw_bsp a little
...
mostly just get rid of debug bloat that isnt even used
adding some branching hints for the I_errors (never seen any one of them happen tbh lel)
and remove some redundant checks
2025-07-29 18:40:02 +02:00
Alug
d9bcd6007c
move horizonline check to hw_bsp
...
to where maps also get checked for portals
should speed up levelload slightly
2025-07-29 15:37:14 +02:00
Alug
d1b478b3b1
oop
2025-07-29 02:36:45 +02:00
Alug
14b421f533
camera noclip sec special is effectively unused in kart
...
its not even in the kart zb config
so mark it with unlikely
2025-07-29 02:35:58 +02:00
Alug
7310a8e4df
add slope check here
...
not necessary but may skip more uneeded checks and stuff
2025-07-29 01:23:01 +02:00
Alug
c1c3a7dc78
remove unecessary casts for colormap
2025-07-29 00:48:26 +02:00
chromaticpipe
ff10b77414
Fix OpenGL flash palettes ignoring saturation
2025-07-29 00:31:10 +02:00
chromaticpipe
4667c332b4
Fix brightness issues with blend textures in Pallette Rendering
2025-07-29 00:31:07 +02:00
Alug
4a9f6b6a22
we dont need to clamp sprite lightlevels everywhere in ogl
...
theyre an int32 due to the directional light system stuff and get clamped in HWR_Lighting as a result
2025-07-29 00:31:04 +02:00
indev
f1d78243d0
Move setting c++ standard bit below
2025-07-27 19:45:10 +03:00
Alug
6e41c8a2a0
readd std=c++17 to cxxflags
2025-07-27 18:42:16 +02:00
Alug
9c5955feb0
Store last ticcmd in a buffer rather than in netcmd
...
port of https://codeberg.org/srb2classic/srb2classic/commit/fe663f799e733e9a59a95dfd561e506571838554
testing this, since the faketic calc seems a bit "off" to me
2025-07-27 18:29:55 +02:00
Alug
0764b180f7
fixup! next branch
...
- remove a bunch of clutter
- Fix AATtree stuff by properly balancing it
- replace getcolumn calc with modulo calc
- use strlcpy for some things
- cache wadfile start and endfolders
2025-07-27 18:28:19 +02:00
Alug
b883e4e4fe
Merge branch 'Saturn-Testing' into Saturn-Next
2025-07-27 18:21:07 +02:00
Alug
f78688b684
Merge pull request #189 from Indev450/mmenucleanup
...
Cleanup m_menu a bit
2025-07-27 17:18:07 +01:00
Alug
097cd5e2ca
Merge remote-tracking branch 'origin/Saturn-Next' into mmenucleanup
2025-07-27 18:17:49 +02:00
Alug
cd4836ae99
Merge pull request #187 from Indev450/emotes
...
Add emotes support
2025-07-27 17:16:23 +01:00
Alug
f0acf179c2
Merge pull request #185 from Indev450/fixupnet
...
Cleanup netcode a bit
2025-07-27 17:16:16 +01:00
Alug
836ad12c40
Merge pull request #180 from Indev450/fixgnu23
...
Make codebase C23 compliant
2025-07-27 17:16:02 +01:00
Alug
a147fa3100
Merge pull request #179 from Indev450/unnestmothink
...
Unnest mobj thinker stuff + cleanup p_mobj
2025-07-27 17:15:55 +01:00
Alug
4f0cf44e78
Merge branch 'unnestmothink' into fixgnu23
2025-07-27 18:15:31 +02:00
Alug
2417647110
Merge branch 'Saturn-Next' into fixgnu23
2025-07-27 18:15:04 +02:00
Alug
982cd7bde2
add mobj islocal field
...
so we can skip the pushable trigger stuff for local mobjs for synch reasons
very sketchy
2025-07-27 18:14:27 +02:00
Alug
d6bd289fcf
Merge branch 'Saturn-Next' into unnestmothink
2025-07-27 18:14:17 +02:00
Alug
a68a05a838
fix conflict
2025-07-27 15:18:46 +02:00
Alug
95504547df
add mobj islocal field
...
so we can skip the pushable trigger stuff for local mobjs for synch reasons
very sketchy
2025-07-27 15:17:51 +02:00
Alug
ceb2a70664
reduce netbuffer scope even further
2025-07-27 15:17:17 +02:00
Alug
8593a1975c
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-27 15:17:09 +02:00
Alug
2049353647
move this out of maptitle condition
...
it does not rely on it and may even fail
idk why i threw it in there
2025-07-27 15:11:07 +02:00
Alug
ba44e61733
Merge branch 'Saturn' into Saturn-Next
2025-07-27 15:09:58 +02:00
chromaticpipe
845652cbfe
Make it a part of fullscreen cvar
2025-07-27 15:02:24 +02:00
chromaticpipe
ceafa06efc
Borderless window toggle
2025-07-27 15:01:47 +02:00
Alug
e6f487474b
register chasecam with the other cam vars
...
why dupe a loop
2025-07-27 14:53:31 +02:00
Alug
d8461bb44f
dont apply player camfade when exiting or in freecam mode
...
also renames it and moves the check outside
2025-07-27 14:53:07 +02:00
Alug
e25d366728
add toggable player close to camera fade
...
similar to some other kartracers
only takes other players into account
2025-07-27 14:51:10 +02:00
Alug
2abf0b98ac
dont do this in dedi
...
dont need to, its pointless and prob causes more issues than anything
2025-07-27 14:32:38 +02:00
Alug
0f087d13bb
dont do this in dedi
...
dont need to, its pointless and prob causes more issues than anything
2025-07-27 14:18:41 +02:00
indev
2e914c61d1
Init displayplayers to {0}
2025-07-27 14:33:01 +03:00
indev
3f599d5a28
Fix smol typo :3
2025-07-27 14:03:35 +03:00
indev
6ef1f73d4d
Init displayplayers to {0}
2025-07-27 13:54:27 +03:00
Alug
38b84baf9d
Merge pull request #193 from chromaticpipe/borderlesswindowtoggle
...
Borderless window toggle
2025-07-26 21:42:50 +01:00
chromaticpipe
fae50c0e19
Make it a part of fullscreen cvar
2025-07-26 15:18:03 -05:00
Alug
50f7e2084c
seenames stuff is always unlikely
2025-07-26 21:29:25 +02:00
Alug
67cc5402cf
move assignments after early returns ST_drawLevelTitle
2025-07-26 21:29:21 +02:00
Alug
2259d4f309
get rid of code dupe for fpscapping stuff
2025-07-26 21:29:16 +02:00
Alug
f8d903e7d2
simplify this
2025-07-26 21:29:13 +02:00
Alug
805cde8ae8
D_CleanFile can be static
2025-07-26 21:29:09 +02:00
Alug
b23906e327
update link in addon menu to "mb.srb2.org/addons"
...
:chonkbuncle:
2025-07-26 21:29:04 +02:00
Gustaf Alhäll
2052afdb66
Fix custom addon directory being ignored when downloading addons
2025-07-26 21:29:01 +02:00
chromaticpipe
d9c7a40d4a
Borderless window toggle
2025-07-26 11:58:55 -05:00
Alug
48d9b2bc98
reduce netbuffer scope even further
2025-07-26 16:19:13 +02:00
Alug
939bf588b3
Merge branch 'Saturn-Next' into fixupnet
2025-07-26 16:19:09 +02:00
Alug
cb2e017bcf
seenames stuff is always unlikely
2025-07-26 16:18:59 +02:00
Alug
d91fbf5d36
move assignments after early returns ST_drawLevelTitle
2025-07-26 16:18:56 +02:00
Alug
9859e43be7
get rid of some redundancy R_Frame stuff
...
R_SetupCommonFrame already checks the actual sector for us, so we dont need to do this before
2025-07-26 16:18:52 +02:00
Alug
306fec6f9e
get rid of code dupe for fpscapping stuff
2025-07-26 16:18:25 +02:00
Alug
3e8b3e868b
simplify this
2025-07-26 16:18:22 +02:00
Alug
9261d9c5b2
D_CleanFile can be static
2025-07-26 16:18:20 +02:00
Alug
f97941f86e
update link in addon menu to "mb.srb2.org/addons"
...
:chonkbuncle:
2025-07-24 23:47:41 +02:00
Gustaf Alhäll
a4810bd6c8
Fix custom addon directory being ignored when downloading addons
2025-07-24 23:45:55 +02:00
Alug
93cbba218a
add mobj islocal field
...
so we can skip the pushable trigger stuff for local mobjs for synch reasons
very sketchy
2025-07-24 22:33:53 +02:00
Alug
e749346f0c
fix console taking minutes to open during frameskipping
...
prob not the best way to handle this, but its the simplest
the console should always be openable without issues unless during wipes, since in some cases you end up having to kill the game to do anything
2025-07-24 20:47:31 +02:00
Alug
a658883664
fix console taking minutes to open during frameskipping
...
prob not the best way to handle this, but its the simplest
the console should always be openable without issues unless during wipes, since in some cases you end up having to kill the game to do anything
2025-07-24 20:47:21 +02:00
indev
d94c10014f
Move server search below refresh option
2025-07-24 21:20:19 +03:00
Alug
45629386bb
update credits
...
this is super full and we need to think about something better for this X)
2025-07-24 19:03:06 +02:00
Alug
ffec9d64d5
delet windoze users (winuser.h)
...
apparently this makes cross compile commit sudoku, need to test this on actual windoze and see if this breaks anything since idk how this file even works
thx nep for the tip!
2025-07-24 15:22:44 +01:00
Alug
3e9f17af86
raise version number to 8.3
...
so i dont forger before release lul
2025-07-24 17:18:57 +02:00
Alug
03ff2fc007
enable ZDEBUG by default
...
this is just quite useful honestly
2025-07-24 17:03:23 +02:00
Alug
4492c00840
move prints to ZDEBUG2
...
as it seems to be for this purpose
2025-07-24 17:03:18 +02:00
Alug
e15319ac9b
move this stuff behind ZDEBUG
2025-07-24 17:03:10 +02:00
Alug
fa012aefe1
let Z_CheckHeap print file and line of where it occured
...
like its supposed to lel
2025-07-24 17:03:06 +02:00
Alug
e681d2d24d
remove itemamount check here
...
replicate vanilla
even if this becomes negative
this does not seem to crash, so id rather do whatever vanilla does
2025-07-24 16:41:28 +02:00
Alug
76e54762d8
add toggle for quake screenshake effects
...
TODO: make an accessability option menu for certain effects
2025-07-24 16:39:06 +02:00
GenericHeroGuy
3b7d517be2
bruh
...
Let's try that again, this time putting the camera in a local...
2025-07-24 16:38:55 +02:00
Alug
f4da64e3fa
remove prob pointless check
...
viewplayer will be the currently viewed displayplayer lel
2025-07-24 16:38:44 +02:00
GenericHeroGuy
384acf8e31
Fix fake floors in Donut Plains disappearing when chasecam is off
...
Also remove the useless R_PointInSubsector calls
2025-07-24 16:37:18 +02:00
indev
a423451383
SF_HIRES is already handled via spritexscale and spriteyscale
2025-07-24 16:37:08 +02:00
indev
66cfceedaf
If gamestate resend took too long, abort resynching
2025-07-24 16:36:26 +02:00
Alug
fe9107fa9d
fix the fov adjust check
...
lmao oops
2025-07-24 16:33:29 +02:00
chromaticpipe
e4f2db54e7
Fix level interpolators jittering during objectplac
2025-07-24 16:33:01 +02:00
chromaticpipe
2f5fe01ae0
Truncate trailing zeroes in float CVars
2025-07-24 16:32:04 +02:00
chromaticpipe
1bb7bd0abc
Fix help command for CV_FLOAT CVars
2025-07-24 16:31:57 +02:00
indev
a84ec88bc3
dedi's do run got_mapcmd :p
2025-07-24 16:29:09 +02:00
Alug
4a2e78081a
shut up curl im already long
2025-07-24 16:27:56 +02:00
Alug
d09d2cb445
use memcmp during startup map check
...
prob not faster just looks a bit better tbh
2025-07-24 16:27:30 +02:00
Alug
1faa585e83
fix memoryleak in pk3 verify functions
2025-07-24 16:27:16 +02:00
Alug
7479c82691
some crap from ceepeepeecheck
2025-07-24 16:27:04 +02:00
Alug
cfab2236da
fix awayview join crash
...
player->awayviewmobj may not exist yet in some cases
2025-07-24 16:26:48 +02:00
Alug
d2ee344b22
Fix underflow in consistancy checking code
...
https://git.srb2.org/Hanicef/SRB2Classic/-/commit/9f5686ef48956cd64ef92f737e59cbbaa27d8cf9
2025-07-24 16:25:57 +02:00
Alug
b22737223e
didnt mean to change this lel
2025-07-24 16:25:06 +02:00
Alug
578158c060
move HWR_GetTexturePalette calls
...
to after early returns/where they are used
2025-07-24 16:24:48 +02:00
Alug
8eda0f78f7
call HWR_LoadMapTextures in paletterender toggle callback
...
from srb2 pr
2025-07-24 16:24:45 +02:00
Alug
2c2c82dc1a
add mo checks to automap stuff
2025-07-24 16:24:22 +02:00
Alug
d8c9522ec9
add a bunch of checks for if G_BuildMapTitle returns NULL
2025-07-24 16:24:14 +02:00
Alug
492aef2165
no need for an else here
2025-07-24 16:23:50 +02:00
Alug
fc0409e967
readd cubeapply check here
2025-07-24 16:23:32 +02:00
Alug
8a89b57e48
this memset is incorrect and does nothing
2025-07-24 16:22:45 +02:00
Alug
0f6b9ba181
remove this
...
prob wrong assumption, our netcode sucks massive ass
2025-07-24 16:22:23 +02:00
Alug
8f1b4004c9
fix compiler warning bout playeringame
2025-07-24 16:21:45 +02:00
Alug
bee5250940
readd flexible array for softwarepatch columnofs
...
how did this ever work lel
2025-07-24 16:20:48 +02:00
Alug
c61a2e6ba2
fix https://github.com/Indev450/SRB2Kart-Saturn/issues/191
...
was an oversight when i cleaned up the gamepad stuff a bit
2025-07-24 16:16:04 +02:00
Alug
d293bb9672
fix https://github.com/Indev450/SRB2Kart-Saturn/issues/190
...
doing it like this, so potentially wonky socked maps dont show up if its disabled
2025-07-24 16:15:57 +02:00
Alug
9fb3f4c9a3
fix https://github.com/Indev450/SRB2Kart-Saturn/issues/191
...
was an oversight when i cleaned up the gamepad stuff a bit
2025-07-24 15:38:05 +02:00
Alug
9a60441e54
few more things for hw renderer
...
just moving aaround some things and declaring more stuff as const
2025-07-23 17:07:38 +02:00
Alug
a61b028e97
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-22 17:35:21 +02:00
Alug
29cf728fac
enable ZDEBUG by default
...
this is just quite useful honestly
2025-07-22 17:33:23 +02:00
Alug
3c78c5c57d
ok git very cool
2025-07-22 17:33:11 +02:00
Alug
7f3f332821
Remove aligned allocation functions
2025-07-22 17:33:07 +02:00
Alug
38576082fb
move prints to ZDEBUG2
...
as it seems to be for this purpose
2025-07-22 17:31:44 +02:00
Alug
4a4b5661f2
move this stuff behind ZDEBUG
2025-07-22 17:31:22 +02:00
Alug
1e879dc432
let Z_CheckHeap print file and line of where it occured
...
like its supposed to lel
2025-07-22 14:18:00 +02:00
Alug
e29bdd09c5
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-21 19:45:01 +02:00
Alug
f3c8ff19b9
remove redundant R_SetColumnFunc call
...
this would only be needed if we had brightmap support, but like this it just sets the column function to what it already is
2025-07-21 19:11:01 +02:00
Alug
fdd19632bf
Use R_RenderSegLoop if the back sector has any 3D floor planes
...
fixes issues in northern district zone
2025-07-21 19:10:58 +02:00
Alug
74b082760d
abuse c++ templates for Hwr_AddSprites
...
test this, but we can avoid a bunch of branching and functions calls like this when drawdist is inifite
2025-07-21 11:56:00 +02:00
Alug
4460fa608b
merge fix
2025-07-21 11:55:39 +02:00
Alug
949192c570
branch hints for nights and 2d stuff
...
gotta keep em for compat reasons Zzz..
2025-07-21 11:49:49 +02:00
Alug
4fa0ca2304
move a bunch of stuff after early returns
...
+ add some branching instrincts to stuff
maybe saves a bit of time if we dont need the thing
2025-07-21 11:49:44 +02:00
Alug
d9d2f043fa
use branch instrincts for P_MobjThinker
...
based on observations from kart stuff
2025-07-21 11:49:00 +02:00
Alug
1ea51f29c5
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-21 11:48:35 +02:00
Alug
b0653416f6
Merge branch 'Saturn-Next' into fixupnet
2025-07-20 17:03:30 +02:00
Alug
efc4a513ce
Merge branch 'Saturn-Next' into fixgnu23
2025-07-20 17:02:31 +02:00
Alug
b13793b2a4
Merge branch 'Saturn-Next' into unnestmothink
2025-07-20 17:00:53 +02:00
Alug
e102d218ff
add toggle for quake screenshake effects
...
TODO: make an accessability option menu for certain effects
2025-07-19 22:54:37 +02:00
Alug
20cdec33fb
fix https://github.com/Indev450/SRB2Kart-Saturn/issues/190
...
doing it like this, so potentially wonky socked maps dont show up if its disabled
2025-07-19 22:42:37 +02:00
indev
12d4a6d291
Also add scoll into level select for displaying map source filename
2025-07-18 23:19:19 +03:00
Alug
d2b1ff595d
remove itemamount check here
...
replicate vanilla
even if this becomes negative
this does not seem to crash, so id rather do whatever vanilla does
2025-07-18 17:57:45 +02:00
indev
03d79fba16
Add filename scrolling for addons menu
2025-07-18 14:48:45 +03:00
indev
989c29f7a0
Move scrollMusicName into m_misc as M_ScrollString
2025-07-18 14:21:05 +03:00
Alug
8a79c0a4e0
simplify free block in P_RemoveMobj
...
should be functionally the same
2025-07-18 11:01:58 +02:00
Alug
307c333c50
use branch instrincts for P_MobjThinker
...
based on observations from kart stuff
2025-07-18 11:01:28 +02:00
Alug
3ce8b9f09c
oop move this back
...
this is some global, dont wanna mess things up
2025-07-18 10:57:15 +02:00
Alug
4dbe637510
remove pointless var P_TryCameraMove
2025-07-17 00:28:22 +02:00
Alug
c0e97e7f43
store sector directly P_CheckPosition
...
hopefully this makes pointer access faster here
2025-07-17 00:28:19 +02:00
Alug
37fc64e97d
optimization K_KartUpdatePosition
...
this checked the distance to every single waypoint on the map always and unconditionally, but we dont need the distance unconditionally so only check if we need to
+5fps in techbatics hadal classic timedemo
2025-07-17 00:06:59 +02:00
Alug
ca93f08230
use branch instricts for blua
...
mostly just for error handling
similar to upstream lua and bluajit
hope this speeds this up a little
2025-07-16 23:01:16 +02:00
Alug
3581ce811c
cache those things
2025-07-16 23:01:12 +02:00
Alug
b4570cbdaa
Merge branch 'mmenucleanup' into Saturn-Testing
2025-07-16 20:42:45 +02:00
Alug
f2dc344bf8
copy paste oopsie
2025-07-15 19:55:13 +02:00
Alug
c0654448f0
oop this was unsigned
2025-07-15 19:18:52 +02:00
Alug
2bf3912633
unmangle localskin menu mess a bit
2025-07-15 19:17:06 +02:00
Alug
4d71fb8409
few more things i missed
2025-07-15 18:59:28 +02:00
Alug
8543a099f4
split m_menu definitions to m_menudefs
...
idk if this is a good idea lel
2025-07-15 18:59:25 +02:00
Alug
9c6ec02b18
do some cleanup m_menu
...
gets rid of a bunch of duplicated splitscreen shit
unused srb2 stuff
commented out stuff aswell
we dont need any of this
this is def still far from tidy and itll never be like this
2025-07-15 18:59:22 +02:00
Alug
bb9118ee32
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-15 18:57:23 +02:00
Alug
0411c40fae
discord rpc my butt
2025-07-15 17:04:32 +02:00
Alug
68cb96ab97
💀 fix menu screentex toggle lel
...
thx neppy!
2025-07-15 15:30:34 +02:00
Alug
0159b8d0a3
use the tooltips array in the menu_t struct for tooltips
...
so this was always there lel
gets rid of massively duplicated tooltip calls and is generally cleaner
2025-07-15 15:03:00 +02:00
Alug
aea3b49a51
💀 fix menu screentex toggle lel
...
thx neppy!
2025-07-15 14:00:57 +02:00
GenericHeroGuy
1a6f775cc3
bruh
...
Let's try that again, this time putting the camera in a local...
2025-07-15 14:00:53 +02:00
Alug
ddd192fad0
declare all the kart "time" stuff as const
...
as far as i can see those never get overwritten and cant be overwritten
2025-07-15 14:00:49 +02:00
Alug
2e4fb32dac
dont apply player camfade when exiting or in freecam mode
...
also renames it and moves the check outside
2025-07-15 14:00:46 +02:00
Alug
7d6e210625
use c++ template for HWR_DrawSprites
...
works just as well without code dupe
2025-07-13 23:11:52 +02:00
Alug
3ca42ce42f
register chasecam with the other cam vars
...
why dupe a loop
2025-07-13 21:52:26 +02:00
Alug
e4e40cf049
remove prob pointless check
...
viewplayer will be the currently viewed displayplayer lel
2025-07-13 21:52:23 +02:00
Alug
d4f912e3b0
add toggable player close to camera fade
...
similar to some other kartracers
only takes other players into account
2025-07-13 21:52:20 +02:00
Alug
eec4443c95
smol stuff i missed i_video
2025-07-13 16:31:59 +02:00
Alug
b938c75892
clean up i_video.c a little
...
what a mess
this is still far from tidy
2025-07-13 16:17:32 +02:00
Alug
455cb9ca24
delet windoze users
...
apparently this makes cross compile commit sudoku, need to test this on actual windoze and see if this breaks anything since idk how this file even works
thx nep for the tip!
2025-07-12 14:56:34 +02:00
Alug
24e7f5f864
readd R_PointInSubsectorFast
...
use it for camera, viewpoint, some precip and sound stuff and (visual) banana slope calc
after profiling it a bit, this may be 2-4x faster in a bunch cases
2025-07-12 13:39:57 +02:00
Alug
298fa36c5d
uninline R_IsPointInSubsector
...
this gets used like once or twice, we dont need that inlined
2025-07-12 13:35:12 +02:00
indev
d31e9c5b55
Strip colors from server name when searching through server list
2025-07-11 23:15:19 +03:00
Alug
30f53f398f
move CopyCaretColors to m_misc
2025-07-11 21:56:10 +02:00
indev
eee217deec
Add server search
2025-07-11 22:43:36 +03:00
Alug
1847aac223
fix windoze for the 50 trillionth time
...
when do we finally remove windows support?
those two things do absolutely fucking nothing but shit dies without em for whatever reason
2025-07-08 17:06:06 +01:00
Alug
487ef6f1b9
fix windoze for the 50 trillionth time
...
when do we finally remove windows support?
those two things do absolutely fucking nothing but shit dies without em for whatever reason
2025-07-08 17:05:44 +01:00
Alug
14be968089
fix for non pow2 width textures in software from doom-legacy
2025-07-08 16:52:56 +01:00
Alug
9f678263d0
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-07-08 16:52:32 +01:00
Alug
a554b886c6
fix peeindex overflow
...
lelelele thx indev <3
2025-07-08 14:23:34 +02:00
Alug
f2d68b075c
texturewidthmask can be static
2025-07-08 13:48:18 +02:00
Alug
dc24de3501
fix color translated spans lmao
...
oopsie
well atleast we got some extra safety with the spandata source lel
2025-07-08 13:48:14 +02:00
Alug
d2c73f072e
reuse "i"
2025-07-08 12:02:10 +02:00
GenericHeroGuy
96bc7f7aa6
Fix fake floors in Donut Plains disappearing when chasecam is off
...
Also remove the useless R_PointInSubsector calls
2025-07-08 12:01:49 +02:00
Alug
bd48b24000
some micro optimize
2025-07-08 12:01:46 +02:00
indev
a26867bbdb
Add separate option to toggle parallel rendering in R_DrawMaskedList
2025-07-08 00:36:25 +03:00
indev
8d570b7ba3
Revert "Disable multithreading in R_DrawMaskedList"
...
This reverts commit 5a44afcd9f .
2025-07-08 00:10:08 +03:00
Alug
96f5a8adb3
fix for non pow2 width textures in software from doom-legacy
2025-07-07 21:47:48 +02:00
indev
3b34f0a972
Sort replays in replay hut
2025-07-06 15:48:18 +03:00
Alug
fe5a0b7c64
GL_
2025-07-05 15:51:30 +02:00
BlueStaggo
2aa5324225
Manual mipmapping + Texture padding
2025-07-05 15:51:27 +02:00
Alug
22f50402fe
remove this
2025-07-05 15:51:15 +02:00
Gustaf Alhäll
4e2f1bcf2b
Fix invalid formats being passed to interal texture formats
...
The effects that this had on the engine is unknown, but the reference
pages makes in very clear that the old behavior is wrong.
2025-07-05 15:50:48 +02:00
indev
ca34b0c8d6
Add /mute chat command
2025-07-05 00:27:17 +03:00
indev
0df5ef996c
(kinda) unify LookupPlayer and nametonum, rename first into D_LookupPlayer
2025-07-04 23:15:31 +03:00
Alug
4c0ea2695e
remove smoothpos cvar and add it as setting for "postitionanimation" cvar
2025-07-04 12:32:49 +02:00
Alug
48556ca428
oop lmao
2025-07-04 12:23:34 +02:00
Alug
cb0667921e
oop lmao
2025-07-04 12:07:56 +02:00
Alug
52ab27a825
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-04 11:23:26 +02:00
NepDisk
5db50bbaff
Port HEPII(I) position number scaling
2025-07-04 11:19:48 +02:00
Alug
416da7cdc8
use memset for S_ClearQueue
...
just simpler
2025-07-04 11:19:45 +02:00
Alug
f47057e800
update credits
...
this is super full and we need to think about something better for this X)
2025-07-03 10:17:12 +02:00
Alug
090559a766
move this out of maptitle condition
...
it does not rely on it and may even fail
idk why i threw it in there
2025-07-03 00:34:19 +02:00
Alug
1a6a3de443
double fpscounter samples
...
slightly more readable
2025-07-03 00:32:15 +02:00
Alug
0293fbfe99
why are you still here wtf
2025-07-01 21:51:28 +02:00
Alug
ecfb52eabe
delet GETTEXT and translation stuff
2025-07-01 21:50:56 +02:00
Alug
999e1a525e
use quickcamdist for render distance culling stuff
...
we do not need this to be accurate at all in these cases, so this is probably faster than doing le fixedhypot
2025-07-01 21:24:58 +02:00
Alug
ef530c2f7d
tiny optimizations hw_main again
2025-07-01 21:15:17 +02:00
indev
3e5d1a436c
Add option for smallminimapplayers to only downscale non-displayplayers icons
2025-07-01 22:07:12 +03:00
Alug
38b89093fa
Merge remote-tracking branch 'origin/emotes' into Saturn-Testing
2025-07-01 19:22:07 +02:00
Alug
224ce007e1
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-01 19:21:58 +02:00
indev
2800685cfc
Merge branch 'Saturn-Next' into emotes
2025-07-01 20:15:44 +03:00
Alug
962eb531ff
clamp the sprite lightlevel stuff + ensure proper type cast
...
this is a mess
lets hope this doesent change how the game looks lel
2025-07-01 19:12:54 +02:00
Alug
07e1ca40a4
oop dont need those
2025-07-01 19:12:32 +02:00
sphere
c479d9d706
Merge branch 'allowdesync' into 'next'
...
Add a console variable that will allow individual demos to desync....
See merge request STJr/SRB2!2361
2025-07-01 19:06:10 +02:00
Alug
338fbfbeaf
whoops those are demo related lol
2025-07-01 19:06:07 +02:00
Alug
5ca12bb421
split replay stuff into g_demo
2025-07-01 18:48:46 +02:00
Alug
6c94e0c9bf
conflict moment
2025-07-01 18:29:45 +02:00
Alug
83d0f6bb50
move kart hud stuff into k_hud
...
hope i got everything lol
2025-07-01 18:27:39 +02:00
Alug
0241d7fe00
Merge branch 'Saturn-Next' into Saturn-Testing
2025-07-01 15:27:39 +02:00
Alug
7e06fc986f
this is INT32 so cast to that lel
2025-07-01 15:26:21 +02:00
Alug
3f5328371a
put interp distance stuff into a function
...
just some code dupe cleanup
also account for c++ so we can use the same macro lel
2025-07-01 15:26:18 +02:00
Alug
148fcc8dab
friendship with constexpr started
2025-07-01 15:26:02 +02:00
Alug
72a67d306f
slightly cleanup addline stuff
...
no clue why i just didnt do this before lel
2025-07-01 15:25:57 +02:00
Alug
0dcdcc3da1
fix hw_main compiler warning
2025-07-01 15:25:53 +02:00
Alug
729c60c9b0
thanks michaelsoft very cool
2025-07-01 15:25:26 +02:00
Alug
1b418caf6b
ceepeepeefy hw_main, abuse templates for portal stuff
...
no idea if this is faster at all lmao
2025-07-01 15:25:23 +02:00
Alug
d275db9bb4
turn TC_ stuff into enum
2025-07-01 15:25:14 +02:00
Alug
21cfd7c361
Merge pull request #186 from Indev450/softwarecrap
...
Give the software renderer some love!
2025-07-01 15:21:48 +02:00
indev
5a44afcd9f
Disable multithreading in R_DrawMaskedList
2025-07-01 16:09:18 +03:00
Alug
3c282b5022
this can use min/max
2025-07-01 14:42:28 +02:00
Alug
f4d40bd55f
"-Wno-aggregate-return" for c++
2025-07-01 14:38:42 +02:00
indev
5d8bb3223f
No need for this now
2025-07-01 15:25:48 +03:00
indev
5e1f943a38
Merge branch 'Saturn-Next' into emotes
2025-07-01 15:24:42 +03:00
Alug
612431c1f1
dont define min and max with c++
2025-07-01 14:22:49 +02:00
indev
fca7b4a837
Use std::min
2025-07-01 15:15:36 +03:00
Alug
02ce2ff5ec
Merge remote-tracking branch 'origin/emotes' into Saturn-Testing
2025-07-01 10:31:58 +02:00
indev
d2bab80b29
Add emote suggestions and autocompletion
2025-06-30 16:43:14 +03:00
Alug
667a8bb166
"restrict" macro for c++
...
since it does not have it, use __restrict instead
2025-06-30 12:18:32 +02:00
Alug
465fea8bb3
"restrict" macro for c++
...
since it does not have it, use __restrict instead
2025-06-30 12:18:21 +02:00
Alug
76a18d001f
friendship with constexpr started
2025-06-30 12:11:45 +02:00
Alug
78ab90c1a6
"restrict" macro for c++
...
since it does not have it, use __restrict instead
2025-06-30 12:54:15 +03:00
Alug
45b9aeb85a
slightly cleanup addline stuff
...
no clue why i just didnt do this before lel
2025-06-30 08:17:41 +02:00
Alug
d580306b8a
fix hw_main compiler warning
2025-06-30 08:17:38 +02:00
indev
102e944fd5
Preview emotes in chat input
2025-06-30 00:28:14 +03:00
Alug
04385d9700
add "songcredits" to saturn hud menu
...
since we have a new style for this now, want to have it in the menu instead
2025-06-29 12:02:11 +02:00
Alug
d47e20b54e
those can be const
2025-06-29 11:44:29 +02:00
Alug
7ef2da5922
tiny cleanup hw_batching
2025-06-29 11:44:12 +02:00
Alug
5638709670
some cleanup k_kart
...
perhaps we could also move the saturn stuff into arrays, those massive walls of variables are kinda ugly lel
2025-06-29 11:44:04 +02:00
Alug
3748896ebc
thanks michaelsoft very cool
2025-06-29 10:20:33 +01:00
Alug
79988dea3d
this makes no sense lol
2025-06-29 10:13:00 +01:00
Alug
4409a5848f
Merge branch 'Saturn-Next' into Saturn-Testing
2025-06-29 12:08:06 +02:00
Alug
07c13636fc
ceepeepeefy hw_main, abuse templates for portal stuff
...
no idea if this is faster at all lmao
2025-06-29 11:49:36 +02:00
Alug
51cc706b1e
Merge remote-tracking branch 'origin/emotes' into Saturn-Testing
2025-06-29 11:48:33 +02:00
Alug
54bd31c80a
Merge branch 'Saturn-Next' into Saturn-Testing
2025-06-29 11:48:18 +02:00
Alug
61534d7356
Merge branch 'softwarecrap' into Saturn-Testing
2025-06-29 11:48:12 +02:00
indev
9bd4a933cf
Check if text is inside chat log box for emotes
2025-06-29 00:30:24 +03:00
indev
e233635783
huh?
2025-06-29 00:05:25 +03:00
indev
da24ba20c7
Fix emotes having not enough 'background' rendered :chonkbunckle:
2025-06-28 22:39:44 +03:00
indev
74bdabc636
Load emotes from base wads too at boot (so it loads ones from -file wads)
2025-06-28 22:31:33 +03:00
indev
4b129314d3
Right that got removed in the end :chonkbunckle:
2025-06-28 21:04:09 +03:00
indev
3a55972997
Initial emote support
2025-06-28 21:03:15 +03:00
Alug
6e04e4171e
fix the goddamn boolean
2025-06-28 19:21:45 +03:00
Alug
4e9f9b7e0e
Revert "add "for_each" to srb2 threadpool"
...
This reverts commit 604bc40021 .
2025-06-27 16:38:19 +02:00
Alug
9650139470
Revert "allocate tiltlighting buffer in R_AllocViewMemory again"
...
This reverts commit b541de4f8c .
2025-06-27 16:38:16 +02:00
Alug
054a40a4b2
Revert "omit realloc and use unique_ptr for our tiltlighting buffer"
...
This reverts commit e351c1e62a .
2025-06-27 16:38:13 +02:00
indev
db67176eca
Revert "Replace '\' symbols with '\\' in comptime.sh"
...
This reverts commit 0b7a4ff4e0 .
2025-06-26 22:50:59 +03:00
indev
0b7a4ff4e0
Replace '\' symbols with '\\' in comptime.sh
2025-06-26 21:18:22 +03:00
Alug
972ee5cf76
remove erronous BACKSLASH
...
was from when this was a macro lel
edit: screw you comptime
2025-06-26 20:17:33 +02:00
Gustaf Alhäll
aef02cb347
Fix one-pixel wide gaps in tall sprites
2025-06-26 20:09:16 +02:00
Alug
36e485b2a3
move gl portalcullsector check back to the right place lel
...
oopsie
2025-06-26 15:13:54 +02:00
Alug
d23c51e707
mark node as restrict again pointonside
2025-06-26 13:22:17 +02:00
Alug
0db437aadd
do some more tiny optimizations
...
-those can all be declared with restrict
-our ternary clamp macro is slightly faster than std::clamp
2025-06-26 13:22:15 +02:00
Alug
e351c1e62a
omit realloc and use unique_ptr for our tiltlighting buffer
...
this makes asan shut up, since those effectively clean up after themselves
2025-06-26 13:22:11 +02:00
Alug
b541de4f8c
allocate tiltlighting buffer in R_AllocViewMemory again
...
just removes the ugly stuff in the span drawers
needs to be tested a little, but should be fine
2025-06-26 13:21:56 +02:00
Alug
604bc40021
add "for_each" to srb2 threadpool
...
this exectures something for EACH thread not some abritatrily choosen ones
2025-06-26 13:21:52 +02:00
Alug
be8ddebd80
forgor about the new signal handler oop
2025-06-26 00:39:01 +02:00
Alug
02feb3ad5c
Merge pull request #177 from Indev450/votebgstuff
...
Cleanup Votescreen stuff
2025-06-25 13:24:48 +02:00
Alug
49f13d2a59
Merge pull request #176 from Indev450/luamusicdef
...
Expose musicdefs to lua
2025-06-25 13:24:37 +02:00
Alug
b2a36850cb
Merge branch 'Saturn-Next' into softwarecrap
2025-06-25 12:47:43 +02:00
Alug
8353c1efdd
add toggle for software cyan cut stuff
...
"softwarecyancut"
this is disabled by default, since some vanilla maps were designed around this
also costs a bit of performance (splat span drawers are slooooow)
2025-06-25 12:47:25 +02:00
Alug
d19a2e0912
attempt to make fofs in software always cut cyan pixels
...
if they do contain cyan pixels lel
kinda meh, and needs a toggle
2025-06-25 12:45:14 +02:00
Alug
07432c0381
turn angle stuff into a switch in R_SetupSkyScale
2025-06-25 12:29:58 +02:00
Alug
4fb3b63152
optimize R_StoreWallRange with cut down version of rendersegloop when a seg is untextured
...
from srb2, its just a cut down rendersegloop with alot less things to check and such
2025-06-23 19:38:57 +02:00
Alug
85b736620a
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Next
2025-06-23 19:26:07 +02:00
Alug
9f770993d4
proper init enterprecise
2025-06-23 19:25:50 +02:00
Alug
4bd02ad325
check if player is local here
2025-06-23 19:25:46 +02:00
Alug
6e7b45d15c
simplify R_SetupAimingFrame
2025-06-23 19:25:34 +02:00
Alug
99ebca51d5
use const_cast for colfunccopy
...
idk its from rr idk why it was like this
2025-06-23 19:23:56 +02:00
Alug
24eb888af3
make skytextures support texture offsets in software
2025-06-23 19:20:20 +02:00
Alug
09ce33abb9
just always clamp the non psprite texture column
...
this may underflow, which the check in the lööp body does not account for
2025-06-23 19:18:11 +02:00
indev
044ff158a1
SF_HIRES is already handled via spritexscale and spriteyscale
2025-06-23 18:37:57 +03:00
Alug
36c68d055c
minor optimizations r_things
2025-06-21 18:07:44 +02:00
Alug
ddf7d7cdcb
use templates for R_ClipWallSegment
...
actual slight speedup
2025-06-21 18:07:41 +02:00
Alug
38950d580f
fix a clang warning
2025-06-20 09:54:20 +02:00
Alug
707701f317
do palette stuff in st_ticker
...
cleanup and dont call it in normal ogl at all unless palette render with flashpals is enabled
inspired by Nyan-Doom/Woof
2025-06-20 09:54:17 +02:00
Alug
cccfaaabfd
proper init enterprecise
2025-06-19 17:48:12 +02:00
Alug
eadbe9c2e5
delet this
2025-06-19 17:47:57 +02:00
Alug
9bbabcee06
delet this
2025-06-19 17:47:42 +02:00
Alug
7ca6fa6772
turn translation colormaps stuff into an enum
2025-06-19 17:44:04 +02:00
Alug
6317e9c510
cleanup colormap translation stuff
...
needs testing
2025-06-19 17:43:56 +02:00
Alug
0a80985771
check if player is local here
2025-06-19 17:41:49 +02:00
Alug
548d52cc60
simplify R_SetupAimingFrame
2025-06-19 17:41:42 +02:00
Alug
11c6c69a00
Merge branch 'softwarecrap' into Saturn-Testing
2025-06-19 17:41:33 +02:00
Alug
09507d635b
remove now unecessary type cast
2025-06-19 17:41:26 +02:00
Alug
ab85d6a693
shut the up -Waggregate-return
2025-06-19 17:41:23 +02:00
Alug
08025d2da3
ok git very cool
2025-06-19 17:41:12 +02:00
Gustaf Alhäll
4169e7bd71
Remove aligned allocation functions
2025-06-19 17:41:09 +02:00
Gustaf Alhäll
bfb7a6b08d
Fix potential NULL deference if memory runs out during cURL request
2025-06-19 17:41:06 +02:00
Alug
58abb0d4c3
Merge remote-tracking branch 'origin/softwarecrap' into Saturn-Testing
2025-06-19 17:40:42 +02:00
Alug
9658279cb1
Merge branch 'fixupnet' into Saturn-Testing
2025-06-19 17:40:34 +02:00
Alug
5011b17f88
attempt at optimizing drawcolumn drawers a bit more
...
inspired by dsda/prboom
seems to be super slighty faster
2025-06-19 15:57:21 +02:00
Alug
83bb908ff0
Merge remote-tracking branch 'origin/Saturn-Next' into unnestmothink
2025-06-19 15:56:32 +02:00
Alug
515c18c855
Merge remote-tracking branch 'origin/Saturn-Next' into fixgnu23
2025-06-19 15:55:58 +02:00
Alug
d1a6394e52
Merge remote-tracking branch 'origin/Saturn-Next' into fixupnet
2025-06-19 15:55:22 +02:00
Alug
7bef45f701
Merge remote-tracking branch 'origin/Saturn-Next' into softwarecrap
2025-06-19 15:50:55 +02:00
indev
40cbce8f9f
Merge pull request #178 from Indev450/newmakefiles
...
Port over SRB2´s makefile rewrites + Port Dedicated server build
2025-06-19 16:47:34 +03:00
Alug
70a70084c9
macrofy ogl function pointer setup
...
should make it a little less annoying to add new functions
2025-06-17 19:21:09 +02:00
indev
b6da6359d3
If gamestate resend took too long, abort resynching
2025-06-16 21:43:54 +03:00
Alug
97075ca5c5
remove some code dupe
...
starting to like those lambda things
2025-06-13 16:08:06 +02:00
Alug
e94737945a
fix double sided skies per addline clipping code
...
fixes greencave skybox
hopefully this is it and doesent break anything else sigh
2025-06-13 08:11:45 +02:00
Alug
57f15e0213
R_GenerateBlendTables can be static
2025-06-13 03:23:31 +02:00
Alug
2eae9b197c
port the span and column drawer templates + tilted translucent splat drawer
...
took the liberty to also carry over our optimizations, this is actually slightly faster than what we had before
2025-06-13 03:23:25 +02:00
Alug
68c7620349
Merge branch 'Saturn-Next' into softwarecrap
2025-06-13 00:53:30 +02:00
Alug
7a3faf34e7
move this into an if else
...
saves us a little work
2025-06-13 00:20:59 +02:00
Alug
d401644447
tweak the sky checks even more
...
apparently koda has a skybox, and checking like this makes it not trigger, lets hope this has no bad side effects Zzz...
2025-06-13 00:20:48 +02:00
Alug
dfc349b230
Merge branch 'newmakefiles' into softwarecrap
2025-06-12 23:33:49 +02:00
Alug
be3e5a964d
pass -flto to linkerflags too
...
lel forgor
somehow this still worked anyways
2025-06-12 23:33:41 +02:00
Alug
687d2bd894
Merge remote-tracking branch 'origin/Saturn' into Saturn-Next
2025-06-12 23:18:45 +02:00
Alug
78b642cf2d
Merge pull request #183 from P-AS/mac-fixes
...
Fix build on macOS
2025-06-12 21:46:39 +01:00
Alug
6f4e387061
Merge branch 'softwarecrap' into Saturn-Testing
2025-06-12 21:47:29 +02:00
Alug
33ef566fd2
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Testing
2025-06-12 21:47:26 +02:00
Alug
cb3b6ca34b
Merge pull request #184 from chromaticpipe/levelinterpolatorjitter
...
Fix level interpolators jittering during objectplace
2025-06-12 20:46:31 +01:00
Alug
ad15bf0ea3
readd some lost comments in r_bsp
2025-06-12 19:48:58 +02:00
Alug
56021ed999
dont compile with software multithread if NOTHREADS/HAVE_THREADS=0
...
might be useful for smth ig
2025-06-12 19:48:55 +02:00
chromaticpipe
3d22a5906f
Fix level interpolators jittering during objectplac
2025-06-12 11:37:25 -05:00
Alug
eeecd954e2
Merge branch 'softwarecrap' into Saturn-Testing
2025-06-12 17:19:38 +02:00
Alug
ccb804a4ed
Merge branch 'fixupnet' into Saturn-Testing
2025-06-12 17:18:09 +02:00
Alug
a21029ee9e
Merge branch 'Saturn-Next' into Saturn-Testing
2025-06-12 17:17:54 +02:00
Alug
b6d771b48f
unnest the skybox scale setup stuff
2025-06-12 17:10:26 +02:00
Alug
ab30fb2e5e
check if seg has any texture at all
...
seems to work even better and less "false positives"
also removing some redundant conditons
2025-06-12 17:10:22 +02:00
Alug
ccc90842a7
move CopyCaretColors to m_misc
2025-06-12 17:10:08 +02:00
Alug
dc069d7bb5
unnest HandlePacketFromPlayer
...
+ some cleanup
2025-06-12 00:53:47 +02:00
Alug
f4a827dfc2
fix conflicts
2025-06-12 00:02:55 +02:00
Alug
4f3232b6cc
Merge branch 'Saturn-Next' into fixupnet
2025-06-12 00:02:05 +02:00
Alug
618d9e4cdf
add lugent to credits
2025-06-11 20:55:26 +02:00
Alug
bf78ad9c75
absolute insanity to hopefully fix all sky issues while keeping skyvisible
2025-06-11 20:28:16 +02:00
Alug
918a4e8cd9
add tilted fog span drawer
...
fixes the red fog blocks on mkrevamp
2025-06-11 17:10:47 +02:00
Alug
e90c84c9ac
we have a var for that lul
2025-06-11 16:32:36 +02:00
PAS
a9209a4887
Include errno.h on macOS
2025-06-10 21:53:43 -04:00
Eidolon
0a3e7ba09f
Include poll.h on UNIXCOMMON
...
Apple was not including poll.h despite needing it.
2025-06-10 21:49:00 -04:00
Alug
eb132b08c0
make the check a little more robust + account for slopes a little
2025-06-11 00:31:01 +02:00
Alug
82407c3560
add missing plane bounds check to R_DrawSkyPlane
2025-06-11 00:30:59 +02:00
Alug
f1a8210663
another attempt at actually fixing sky issues
...
absolutely fucking horrible
but this also does account for single sided lines aswell and gets rid of artifacts and perf
2025-06-10 18:33:20 +02:00
Alug
1d722be4bc
few smoler optimizations r_segs
2025-06-10 01:21:36 +02:00
Alug
62a660bfe1
maybe this makes perf better somehow
2025-06-10 01:21:34 +02:00
Alug
2984795175
kill the splitscreen lööps from R_RenderPlayerView
...
this already gets called from within the one that assigns viewssnum which we can just use here
2025-06-09 23:45:02 +02:00
Alug
da706d89a5
absolutely disgusting hack for sky issues
...
instead of homremoval, we draw the fucking skyplane before everything lmao
there probably is a right way to fix this, but im too dumb for that
needs some performance testing, but since i could move the semaphores back, its even better in some instances
2025-06-09 22:59:52 +02:00
Alug
a8005d5cec
fix portals dying
...
due to nummasks being too small and causing an overflow
ty hannu!
2025-06-09 20:57:19 +02:00
Alug
793ccff6e6
fix the goddamn portal use after free
...
https://git.do.srb2.org/STJr/SRB2/-/commit/f536ab34674fb8d3ee262a0009753f552074305c
2025-06-09 19:02:58 +02:00
Alug
e7db9bf1fd
fix bad copy paste lul
2025-06-09 17:09:57 +02:00
Alug
88d62c93a1
fix SHITPLANESPARENCY and QUINCUNX
...
maybe
2025-06-09 17:06:31 +02:00
Alug
d73532d019
fix some fofs not rendering in software
...
i did an oopsie in 7.2 X)
2025-06-09 17:06:23 +02:00
Alug
84d3d23936
declare fracstep as const
2025-06-09 17:06:20 +02:00
Alug
717947843b
memset those
2025-06-09 17:06:16 +02:00
Alug
968584a316
make skyportals account for how kart sets the viewheight
...
no we still dont use it
2025-06-09 17:06:14 +02:00
Alug
ccd67f621a
dont set any texture mapped drawer when fog
2025-06-09 17:06:10 +02:00
Alug
80b301dbbe
unnest the overflow_test stuff
...
its also a ternary now lul
2025-06-09 17:06:07 +02:00
Alug
001e61d39d
Merge branch 'Saturn-Next' into softwarecrap
2025-06-09 17:06:02 +02:00
Alug
19c98a436a
fix some fofs not rendering in software
...
i did an oopsie in 7.2 X)
2025-06-09 17:05:42 +02:00
Alug
8dd6d7cfdd
fix the fov adjust check
...
lmao oops
2025-06-09 16:59:00 +02:00
Alug
7456b6e02c
Revert "bring back old clipwallsegment stuff"
...
This reverts commit 6af77afc44 .
2025-06-09 04:27:58 +02:00
Alug
5e8096f74c
move hom removal to D_Renderview
...
removes the hwr code dupe and moves this out of the splitscreen loop
2025-06-09 00:21:41 +02:00
Alug
6af77afc44
bring back old clipwallsegment stuff
...
i just didnt like the flow of the new ones
2025-06-08 21:38:57 +02:00
Alug
42eeb7bdf5
fix the massive slowdown on ante
...
due to really bad loop layout
std::fill is only cause it looks fancy :3
2025-06-08 21:38:54 +02:00
Alug
6f4b1e5125
fix portals on slopes
...
idk this is quite the hack, but it works
this adjustment somehow got omitted from srb2 during the portal refactor
2025-06-08 20:03:09 +02:00
Alug
22e65cdda8
readd portalcullsector
...
+ sprite clipping improvements with portals
2025-06-08 20:03:06 +02:00
Alug
9d342d0f3d
fix lightlist memory leak
...
not sure if we need to copy over the old shit, but this seems to work aswell
2025-06-08 17:24:18 +02:00
Alug
9583bed718
fix da rippled wöter
...
i hate fixed point maths lmao
2025-06-08 00:43:15 +02:00
Alug
b69ce75712
do NOT use Z_ functions in threaded stuff
...
shit dies
2025-06-08 00:25:03 +02:00
Alug
a1cd19b023
make the fov dependant init stuff bit more safe and stuff
2025-06-07 23:54:12 +02:00
Alug
6e50710b25
fix column data colormap shit in R_RenderThickSideRange
...
too lazy to explain so https://git.do.srb2.org/KartKrew/RingRacers/-/commit/1ccd41c3dbb3132ce7467edf0c12c9d420b189f9
2025-06-07 23:31:51 +02:00
indev
989a971d27
Fix 'C++11 requires a space between literal and string macro' warning
2025-06-07 23:18:55 +03:00
indev
24ee56ce7a
ceepeepee 17 :3
2025-06-07 23:15:55 +03:00
Alug
52f99dd9c1
fix span corruption due to wrong types being used
...
i did not realise srb2 changed this at some point to use fixed_t
2025-06-07 20:05:51 +02:00
Alug
6374fda570
convert i_system to cpp add missing exit for threading errors
2025-06-07 20:05:48 +02:00
Alug
cdd2d6323e
dont think we need this twice lel
2025-06-07 20:05:03 +02:00
Alug
c508a7ea78
smol makefile stuff
2025-06-07 20:05:01 +02:00
Alug
1380a394c7
remove duped declaration
2025-06-07 20:04:58 +02:00
Alug
2c937099d4
this does nothing lel
2025-06-07 20:04:55 +02:00
Alug
0a936b3bba
fix le sourcefile
2025-06-07 20:04:52 +02:00
Alug
7393eb728c
Merge branch 'Saturn-Next' into Saturn-Testing
2025-06-07 11:56:17 +02:00
Alug
1e715f8cd7
Merge branch 'newmakefiles' into Saturn-Testing
2025-06-07 11:56:13 +02:00
Alug
0a31e0a65e
use realloc for batching stuff
...
seems to strangely speed things up even
didnt think those happen often?
2025-06-07 11:55:52 +02:00
Alug
8627a18452
Merge pull request #182 from chromaticpipe/fixedhelp
...
Fixed help command
2025-06-07 10:54:36 +01:00
Alug
be528adea5
thanks michaelsoft!
2025-06-07 10:21:25 +01:00
James R.
5eb4ed8391
R_FindPlane: fix offsets rotation overflow for non-sloped planes
2025-06-07 11:43:13 +02:00
James R
9a00d30c0c
Do not factor height into sprite thickseg sorting
2025-06-07 11:43:10 +02:00
James R
71237c5e11
Check that top of sprite is above plane or bottom is below
...
This fixes slightly raised fofs drawing on top of sprites that should be in
front of them. Previously would check that the bottom of the object was above
the plane. Now also uses sprite offsets like the fof seg sorting does.
2025-06-07 11:43:07 +02:00
Alug
9c6e32a1ab
HACK: dont pass wflags to c++
...
silences some annoying compiler complaints lel
2025-06-07 11:43:04 +02:00
Alug
1bc18801c8
cleanup the software drawers even more + unroll them
...
looks pretty clean now, not sure if i want to port the templates, this is good enough for now
2025-06-07 11:43:01 +02:00
Alug
221f2a956e
tiny optimizations
2025-06-07 11:42:58 +02:00
Alug
b450abdf4d
simplify R_ExpandPlane
2025-06-07 11:42:55 +02:00
Alug
d36eed3c09
convert r_segs to ceepeepee + overflow fix from RR R_DrawRepeatMaskedColumn
...
+ alot of cleanup
should more or less function the same, just alot less messy
2025-06-07 11:42:52 +02:00
Alug
43ee791d4a
fix slopes and slope flat alignment
...
software slopes finally are sane........
fixes certain maps like stardust speedway looking like complete butt
need to test ogl, not sure if theres any real change there
2025-06-07 11:42:48 +02:00
Alug
c921945922
cleanup software drawer handling stuff
...
mostly ported from rr
is alot more readable and less confusing
2025-06-07 11:42:45 +02:00
Alug
5f8c77e752
test: allow multithreading for masked planes
...
quite a neat speedup on some maps
needs testing
2025-06-07 01:20:52 +02:00
Alug
064db977aa
HACK: move semaphores into the drawplane loop, to fix a few visual glitches
...
a bit of slowdown, but i have no clue what exactly causes shit, so this is the best solution for now i guess
2025-06-07 01:20:48 +02:00
Alug
5868cd9777
make drawcolum lightlists use realloc again lel
...
otherwise theres a crapton of overlapping memory lel
2025-06-07 01:20:44 +02:00
Alug
b0ddde996a
forgor this from removing screen size static array stuff lel
2025-06-07 01:20:41 +02:00
Alug
e03c3766f0
forgor to free the mask heads lel
2025-06-07 01:20:37 +02:00
Alug
953c0d7451
convert r_things to ceepeepee
2025-06-07 01:20:34 +02:00
Alug
97b303c362
split skin stuff from r_things into r_skins
...
what a mess
2025-06-07 01:20:31 +02:00
Alug
2ffe736a20
smol cleanup
2025-06-07 01:20:28 +02:00
Alug
21f2032f34
save smol amount of fixed to double conversions in R_StoreWallRange
...
also adds those as actual functions in case we wanna use it for smth else
2025-06-06 17:37:55 +02:00
Alug
2f66207205
make this less ugly
2025-06-06 16:55:38 +02:00
Alug
5a14b09c1f
cache ds->transmap for translucent span drawers
...
super slight speedup
2025-06-06 16:35:26 +02:00
Alug
7e9da92dbe
dont redundantly clamp the sprites texturecolumn
...
we already take care of this in the lööp header
2025-06-06 16:35:23 +02:00
Alug
a27550b95b
fix R_ProjectSprite clipping checks overflowing
...
was causing sprites to disappear in some angles
2025-06-06 14:43:03 +02:00
Alug
556883487d
optimize software hud drawing
...
from srb2classic adjusted to our drawers
2025-06-06 01:17:36 +02:00
Alug
96f8533479
dont check for wraps on 0 height textures in column drawers
...
slight speedup thx srb2classic!
2025-06-06 01:04:20 +02:00
Alug
f3cca27448
cache vid.width in the column drawers
...
shit was really slow lel
2025-06-06 00:55:23 +02:00
indev
252563725d
Make tiltlighting buffer thread_local
2025-06-06 01:42:15 +03:00
indev
9a934a55e2
Revert "ok fuck you tiltlighting static buffer it is"
...
This reverts commit 2a023246be .
2025-06-06 01:39:51 +03:00
Alug
f07d5d381e
fix the goddamn boolean
2025-06-06 00:19:23 +02:00
Alug
3faab66ef4
add toggle for software multithread
2025-06-06 00:04:42 +02:00
Alug
2a023246be
ok fuck you tiltlighting static buffer it is
2025-06-06 00:04:39 +02:00
Alug
006e7fe8f8
move this
2025-06-06 00:04:36 +02:00
Alug
1a7ff21a04
fix some warnings and plane ripple
2025-06-06 00:04:33 +02:00
Alug
98cb0fdcb2
fix slopes and other shit
2025-06-06 00:04:30 +02:00
indev
1fd7e9cdac
Add -lpthread into libs and cxxopts into c++ compilation flags
2025-06-06 00:04:27 +02:00
indev
0a2eac4d3a
Add ifdef __cplusplus into hardware/hw_main.h
2025-06-06 00:04:24 +02:00
Alug
9ac6fffd4d
busted ass multithreading for le soft
2025-06-06 00:04:19 +02:00
Alug
da20f4a087
Merge branch 'newmakefiles' into softwarecrap
2025-06-06 00:04:14 +02:00
Alug
dbf822ced9
dont draw precip in the skybox lel
2025-06-05 15:05:29 +02:00
Alug
095842f4aa
smol cleanup the splat drawers
...
didnt knew we actually use em so kinda didnt care lel
2025-06-05 15:00:35 +02:00
Alug
8c290d7597
kill static buffer for tiltlighting, again
...
kinda ugly but gets the job done lel
2025-06-05 14:48:50 +02:00
Alug
8a6f4db9af
fix precip not drawing
2025-06-05 14:48:47 +02:00
Alug
99186a86db
port masked drawlists for software + portal visplanes
...
Note: need to check if we gotta readd portalcullsector for ogl portals, technically this is alot faster and fixes the occasional portal disappearing, but may introduce occasional visual bugs
2025-06-05 14:48:44 +02:00
Alug
c67bf97f7b
unglobalize drawspandata
2025-06-05 14:48:41 +02:00
Alug
33a1540fcd
unglobalise drawcolumndata
...
from RRs multithread
will follow up with spandata
2025-06-05 14:48:38 +02:00
Alug
529b0d643a
delet dc_hires
2025-06-05 01:41:55 +02:00
Alug
4576efbe5c
remove FIXMEs from draw column stuff
2025-06-05 01:27:34 +02:00
Alug
185375ece1
use ternaries for column clamp
...
it is slightly faster for me lel
also lets us get rid of an extra variable
npow2min is also declared static as its always -1
2025-06-05 01:25:33 +02:00
Alug
d11521954e
move those around + remove NOWATER ifdef
2025-06-05 01:01:31 +02:00
Alug
41c4300ec2
split r_draw8 into r_drawcolumn and r_drawspan
...
+ remove the _8 from the "namespace" since we dont have highcolor stuff
2025-06-05 00:52:53 +02:00
Alug
51d5023f29
those can be just "while" lööps
2025-06-05 00:44:59 +02:00
Alug
d2878f8834
set MAXVIDWIDTH and MAXVIDHEIGHT to 8192
...
should accomidate absolutely everything
2025-06-04 23:03:17 +02:00
Alug
7808159d23
get rid of static screen size buffers, alloc em to current screen size instead
...
mostly taken from srb2s any-resolution branch
2025-06-04 23:03:14 +02:00
Alug
e759431948
clamp shit so vhs effect doesent do oob writes on some resolutions
...
shoddy way but fuckit
2025-06-04 20:46:12 +02:00
Alug
268ccce955
move ripple blit stuff into own function
2025-06-04 20:00:06 +02:00
Alug
f2d3432bf5
make software ripple splitscreen checks less awful to look at
2025-06-04 18:48:33 +02:00
Alug
2da89f1946
remove ylookup, columnofs and topleft lookups
...
move screens array to "vid" struct
remove a bunch of unused stuff
this speeds up 4 player splitscreen ever so slighty
mostly just alot cleaner than the mess it was before
2025-06-04 15:55:46 +02:00
Alug
6153733df4
unroll span drawer loops
2025-06-04 15:55:43 +02:00
Alug
d280b39f9f
use floats flor slope drawing
...
idea from srb2classic
2025-06-04 15:55:40 +02:00
indev
236e7b8d45
Fix game rendering only first splitscreen player in opengl
2025-06-04 03:57:54 +03:00
chromaticpipe
dcccf672c9
Truncate trailing zeroes in float CVars
2025-06-03 13:18:02 -05:00
Alug
03f81bed16
dont initialise those twice lol
2025-06-03 20:00:52 +02:00
chromaticpipe
fc51c1ba88
Fix help command for CV_FLOAT CVars
2025-06-03 11:38:46 -05:00
chromaticpipe
d6b838f7cb
GIF Dynamic Delay
2025-06-02 15:57:43 -05:00
Alug
83d20a72ab
delet this since its mostly wrong anyways
2025-06-02 20:05:09 +02:00
indev
d50c1ab6d7
dedi's do run got_mapcmd :p
2025-06-02 14:21:34 +03:00
Alug
984c2ff8d6
Merge pull request #175 from chromaticpipe/serverinfo
...
Display server information before connecting to it
2025-06-01 21:03:19 +01:00
chromaticpipe
74646acdca
Options.
2025-05-31 16:27:34 -05:00
indev
45ffe87ba6
Add new music credit draw style, 'songcredits Box'
2025-05-31 22:27:17 +03:00
Alug
37eb8cfa57
shut up curl im already long
2025-05-31 21:01:57 +02:00
Alug
a0f903f162
i like switches mhhhm
2025-05-31 21:01:53 +02:00
Alug
7aadc77a69
Merge remote-tracking branch 'origin/luamusicdef' into Saturn-Testing
2025-05-31 19:39:39 +02:00
indev
8fb1775606
Forgot MusicCredit hook
2025-05-31 19:15:04 +03:00
indev
fab7635373
Add musicdef lua stuff into LUASTUFF.md
2025-05-31 19:10:58 +03:00
indev
b29ca13916
Add musicdefs table into lua
2025-05-31 18:54:07 +03:00
Alug
27e1406e6d
Merge branch 'Saturn-Next' into Saturn-Testing
2025-05-31 17:44:33 +02:00
Alug
f1f0782256
fix memoryleak in pk3 verify functions
2025-05-31 17:30:19 +02:00
Alug
0e9a825f63
some crap from ceepeepeecheck
2025-05-31 17:27:07 +02:00
Alug
796204d376
use memcmp during startup map check
...
prob not faster just looks a bit better tbh
2025-05-31 17:20:46 +02:00
Alug
e13ba89f1a
use memcmp during startup map check
...
prob not faster just looks a bit better tbh
2025-05-31 17:20:38 +02:00
Alug
acabd1a03e
Merge branch 'votebgstuff' into Saturn-Testing
2025-05-31 17:13:58 +02:00
Alug
c08aae2622
Merge branch 'Saturn-Next' into Saturn-Testing
2025-05-31 17:13:00 +02:00
indev
68ae880979
Change the way how musicdefs are stored (preparing for exposing them to lua)
2025-05-31 18:04:08 +03:00
Alug
5c53a90eea
hack: reset musiccredits when changing gamestate
...
otherwise they may persist if theyve been currently displayed
2025-05-31 16:20:58 +02:00
Alug
55c6ba6d12
fix awayview join crash
...
player->awayviewmobj may not exist yet in some cases
2025-05-31 15:57:20 +02:00
Alug
d8b2134aef
dont let dedi cache vote patches lol
2025-05-31 15:32:57 +02:00
Alug
c168832f8e
forgor to remove this
2025-05-31 15:32:53 +02:00
Alug
448a603a56
dont let dedi free votepatches lel
2025-05-31 15:32:42 +02:00
Alug
2a95201c6d
free votepatches also in ogl not just software
2025-05-31 15:32:39 +02:00
Alug
a73de55f96
also put votescreen patches into votescreen struct
...
+ more cleanup
2025-05-31 15:32:34 +02:00
Alug
e4a4496be6
rename luaVoteScreen to luaPrefix + make it static buffer
...
since its effectively just a prefix,
2025-05-31 15:32:18 +02:00
Alug
a8f3a8dfb0
fix oopsie that caused use after free
2025-05-31 15:32:14 +02:00
Alug
e19b9d1c60
fix smol mistake votescreen check
2025-05-31 15:32:11 +02:00
Alug
e28ec4e7cb
unnest loop stuff in P_PartialAddWadFile
...
may speed this up ever so slightly since we dont need to go through all wad lumps 3 times per call anymore
2025-05-31 15:31:58 +02:00
Alug
d0f09b467b
Put votescreen background stuff into a struct
...
+ some refactoring and renaming
- removed some unused and redundant variables
- renamed some variables
turns out the lua votescreens always used the animated votescreen drawer, so i renamed it to lua votescreen drawer
2025-05-31 15:30:50 +02:00
Alug
6617382f54
Revert "reset the palette earlier during levelload"
...
This reverts commit 5e532a76cf .
2025-05-30 23:59:08 +02:00
chromaticpipe
dd499a410f
Very bad gamepad support
2025-05-30 13:30:47 -05:00
chromaticpipe
c04ba992a7
Forgort something
2025-05-30 13:26:27 -05:00
chromaticpipe
27c053cd48
Add Server info screen, ported from SRB2Classic
2025-05-30 13:23:36 -05:00
Alug
7d68c0598c
Fix underflow in consistancy checking code
...
https://git.srb2.org/Hanicef/SRB2Classic/-/commit/9f5686ef48956cd64ef92f737e59cbbaa27d8cf9
2025-05-30 02:54:48 +02:00
Alug
201c725dc7
cleanup d_main a little
2025-05-30 02:54:45 +02:00
Alug
e47e58a982
fixup ceepeepee support
2025-05-29 21:40:15 +02:00
Alug
3eba512ad4
Merge branch 'newmakefiles' into Saturn-Testing
2025-05-29 19:35:34 +02:00
Alug
c05068f22f
why are those still here lel
2025-05-29 19:35:15 +02:00
Alug
f5cb473f3d
thanks windoze very cool part 2
2025-05-29 19:33:46 +02:00
Alug
c5b72f24b5
thanks windoze very cool
2025-05-29 19:33:37 +02:00
Alug
57b2316c42
didnt mean to change this lel
2025-05-29 19:01:19 +02:00
Alug
fe682a8071
only make screentexture for postprocess if we need to
...
gives quite a neat perfboost on the gpu side
2025-05-29 19:01:16 +02:00
Alug
c99115d552
thanks windoze very cool part 2
2025-05-29 17:27:38 +01:00
Alug
bf44a054a1
move HWR_GetTexturePalette calls
...
to after early returns/where they are used
2025-05-29 18:17:26 +02:00
Alug
eca9c60d9b
call HWR_LoadMapTextures in paletterender toggle callback
...
from srb2 pr
2025-05-29 18:17:23 +02:00
Alug
bf6c682cc1
thanks windoze very cool
2025-05-29 17:16:51 +01:00
Alug
dc2f0b5707
Merge branch 'Saturn-Next' into Saturn-Testing
2025-05-29 18:23:08 +02:00
Alug
58de672915
add comment
2025-05-29 15:31:32 +02:00
Alug
9488d98cfd
Merge branch 'Saturn-Next' into Saturn-Testing
2025-05-29 12:43:04 +01:00
Alug
906b8165d3
dont use stdbool´s bool type
...
this badly breaks everything
apparently the code assumes boolean to be an interger type or some shit
2025-05-29 12:41:56 +01:00
Alug
16b5037486
dont use stdbool´s bool type
...
this badly breaks everything
apparently the code assumes boolean to be an interger type or some shit
2025-05-29 12:41:45 +01:00
Alug
cf42c35b9f
add mo checks to automap stuff
2025-05-29 13:40:57 +02:00
Alug
a364068abb
add a bunch of checks for if G_BuildMapTitle returns NULL
2025-05-29 13:40:53 +02:00
Alug
e88093d9cf
no need for an else here
2025-05-29 12:30:07 +02:00
Alug
5e532a76cf
reset the palette earlier during levelload
...
generally make this behave like srb2/rr again
2025-05-29 12:30:05 +02:00
Alug
fb9c459269
readd cubeapply check here
2025-05-29 12:30:00 +02:00
Alug
7c34733eea
add nofork parameter to dedibuild
2025-05-28 23:58:10 +02:00
indev
359befd857
Add MusicCredit lua hook
2025-05-28 23:27:30 +03:00
Alug
74c8325987
Merge branch 'updatewinlibs' into Saturn-Testing
2025-05-28 22:16:37 +02:00
Alug
e30efbfe6c
Revert "update lzf to 1.6"
...
This reverts commit 9899747a7f .
2025-05-28 22:16:30 +02:00
Alug
5d4bb0f5ce
Merge branch 'Saturn-Next' into Saturn-Testing
2025-05-28 22:14:17 +02:00
Alug
a6898bd1cd
this memset is incorrect and does nothing
2025-05-28 22:12:00 +02:00
Alug
ff474d18ee
remove this
...
prob wrong assumption, our netcode sucks massive ass
2025-05-28 21:44:38 +02:00
Alug
e63777c7d6
remove this
...
prob wrong assumption, our netcode sucks massive ass
2025-05-28 21:42:29 +02:00
indev
279dfcafc4
Expose S_FindMusicCredit and musiccredit_t to lua
2025-05-28 22:10:25 +03:00
Alug
a34ca05bff
this is testing lel
2025-05-28 20:45:26 +02:00
Alug
f15d3be263
forgor the hw state lel
2025-05-28 18:39:20 +02:00
Alug
19e5366c5b
add wireframe mode for ogl
2025-05-28 18:31:55 +02:00
Alug
346dee019c
fix compiler warning bout playeringame
2025-05-28 18:31:37 +02:00
Alug
18914f22f2
remove crappy memcpy redifine from md5
2025-05-28 18:31:33 +02:00
Alug
bcec8b98f7
make the game c23 compatible properly
...
+ some cleanup and removal of some redundant checks
2025-05-28 18:25:07 +02:00
Alug
af9ffc1f6f
forgor the hw state lel
2025-05-28 16:37:37 +01:00
Alug
18816453f4
add wireframe mode for ogl
2025-05-28 18:31:21 +02:00
Alug
1eb8a75058
fix compiler warning bout playeringame
2025-05-28 18:30:26 +02:00
Alug
5abf42fe75
remove crappy memcpy redifine from md5
2025-05-28 18:29:18 +02:00
Alug
1306a233b8
Further improve sleep accuracy on UNIX systems
...
but not for dedis
https://git.srb2.org/STJr/SRB2/-/merge_requests/2583
2025-05-28 18:28:22 +02:00
Alug
46f8c6b7a5
remove forcing c17 from makefile
2025-05-28 18:26:47 +02:00
Alug
face5cf447
Merge branch 'fixgnu23' into Saturn-Testing
2025-05-28 18:26:24 +02:00
Alug
603267b753
fix W_CheckNumForFolderStartPK3
2025-05-28 17:47:29 +02:00
Gustaf Alhäll
7cf3113d67
Fix long names using the wrong hash field
2025-05-28 17:47:25 +02:00
Alug
397fa962b1
Optimize lump searching
...
https://git.srb2.org/Hanicef/SRB2Classic/-/commit/dc608f084c76cf72de9fc3f3f347752f04acae42
2025-05-28 17:47:22 +02:00
Alug
d2637ab71f
Merge branch 'newmakefiles' into Saturn-Testing
2025-05-28 17:47:01 +02:00
Alug
a6e020adeb
Merge branch 'texloadstuff' into Saturn-Testing
2025-05-28 17:46:43 +02:00
Alug
d50dcac0c0
Merge branch 'unnestmothink' into Saturn-Testing
2025-05-28 17:46:40 +02:00
Alug
dd6bc23a8e
Merge branch 'updatewinlibs' into Saturn-Testing
2025-05-28 17:46:35 +02:00
Alug
1219ecf818
check for 32bit with __SIZEOF_POINTER__ for precip drawdistance
...
thx @chromaticpipe for the tip!
2025-05-28 16:27:40 +02:00
Alug
b6923d0d0d
readd flexible array for softwarepatch columnofs
...
how did this ever work lel
2025-05-28 16:21:57 +02:00
Alug
393ade780c
add missing "time" include from dedi i_system
2025-05-28 14:43:27 +01:00
indev
8b2e6ea17b
libpeethread
2025-05-28 16:54:37 +03:00
Alug
8c31682723
smol adjustments for main
2025-05-28 15:43:21 +02:00
Alug
7c87b5259a
port SRB2s new makefiles + add dedicated build (squashed)
...
also fix some of the new warnings
to make a dedicated build just pass DEDICATED=1 to the compiler
TODO:make this compatible with bluajit
2025-05-28 15:38:25 +02:00
Alug
e8969b0645
dont always print openmpt version to console
...
just use I_OutputMsg instead
2025-05-27 18:31:20 +02:00
Alug
7932c1af6f
Print the current SDL_mixer version
...
when initializing the sound system
2025-05-27 18:30:55 +02:00
Alug
71575f5cf8
Revert "update sdl_mixer to 2.8.1"
...
This reverts commit b8ae656968 .
2025-05-26 22:11:03 +01:00
Alug
3685502edf
Revert "delet tic resending stuff"
...
This reverts commit 17bc8a4a36 .
2025-05-26 18:10:03 +02:00
Alug
9899747a7f
update lzf to 1.6
2025-05-26 18:02:21 +02:00
Alug
d2a415380d
oop we still need libgme.dll
2025-05-26 15:15:46 +01:00
Alug
dd7ffd7dfe
delet GETTEXT and translation stuff
2025-05-26 14:48:31 +01:00
Alug
770f9af5e1
cleanup some stuff
2025-05-26 14:31:53 +01:00
Alug
c2ab5be8b8
Merge remote-tracking branch 'origin/winzlib-ng' into updatewinlibs
2025-05-26 13:21:03 +01:00
Alug
b8ae656968
update sdl_mixer to 2.8.1
...
we can also get rid of a bunch of dlls now
2025-05-26 13:12:43 +01:00
Alug
553b61e1f5
update SDL2 to 2.32.6
...
also removes a bunch of files we dont need
2025-05-26 12:51:45 +01:00
Alug
95b4228d3c
update windoze libbacktrace
...
never was updated since we added this 2 years ago lel
2025-05-26 11:03:56 +01:00
Alug
a0ff44043f
Merge branch 'Saturn' into Saturn-Next
2025-05-25 17:37:40 +02:00
Alug
1e15816057
make screen tilt stuff slightly prettier lel
2025-05-25 17:36:38 +02:00
Alug
a4566e9496
v8.2
2025-05-25 13:59:36 +01:00
Alug
18f88c28dd
Merge pull request #174 from Indev450/Saturn-Next
...
Saturn v8.2
2025-05-25 14:59:06 +01:00
indev
b8dc1b13df
Merge pull request #173 from chromaticpipe/wateramplitude
...
Adjust the amplitude of GL underwater effect
2025-05-24 18:12:38 +03:00
chromaticpipe
33c03f1e7a
Adjust the amplitude of GL underwater effect
...
Also fixed a string truncation warning
2025-05-24 09:02:49 -05:00
Alug
f87bcef079
try fixing some crash with bogus netxcmds
2025-05-23 16:55:47 +02:00
Alug
c3458afe2b
unglobalise holepunchpacket aswell
2025-05-23 16:53:42 +02:00
Alug
17bc8a4a36
delet tic resending stuff
2025-05-23 16:51:26 +02:00
Alug
b04f017ab6
change ticqueue system to be more like srb 2.2
...
mostly just renaming lel
2025-05-23 16:51:10 +02:00
Alug
083ddb6396
Refactor netbuffer out of global namespace
...
https://git.do.srb2.org/Hanicef/SRB2Classic/-/commit/079fd2cef97a9cf22fb5d2b66a9b500914efbc72
+ move some things into functions
2025-05-23 16:48:34 +02:00
Alug
c3129742c3
simplify cmpack
2025-05-23 16:44:52 +02:00
Alug
877bd640f3
fix destinationnode check in Processackpak
2025-05-23 16:43:52 +02:00
Alug
3233df9c6c
do not resolve ipv4 in curl when using ipv6
2025-05-23 16:43:24 +02:00
Alug
9ad5f5189c
split portnum retrieval into own function
2025-05-23 16:43:02 +02:00
Alug
c7718dea79
fixup! i_tcp
...
technically make ipv6 work,, but its disabled by default
2025-05-23 16:40:38 +02:00
Alug
fa3dcdb24f
massive cleanup p_mobj
2025-05-23 16:31:17 +02:00
Alug
311258dda0
more unnesting for mobj think stuff
2025-05-23 16:24:50 +02:00
Alug
a0f8816de7
readd itembox fuse think that was lost somehow lmao
2025-05-23 16:22:03 +02:00
Alug
c546b6225c
move this since it does check for fuse
2025-05-23 16:21:48 +02:00
Alug
f6c6621af8
unnest and cleanup P_MobjThinker
...
everything was moved into seperate functions lel
2025-05-23 16:21:27 +02:00
Alug
5a0fb59b26
Do not reload every texture when adding a wad (squashed)
...
port of https://git.do.srb2.org/STJr/SRB2/-/merge_requests/1725#c829d21709a4f5cd81d140271e883bc40dd00b1b
2025-05-23 16:16:10 +02:00
indev
7e5ae71714
Do backups for custom configs too
2025-05-23 15:14:42 +03:00
Alug
b574ed0b1b
allow capping the game fps seperately for when its unfocused
2025-05-22 23:17:48 +02:00
Alug
01c621832b
Merge remote-tracking branch 'origin/Saturn-Next' into Saturn-Next
2025-05-21 12:14:51 +02:00
Alug
608cc66d78
try to fix curl crashing if you dont have write access to download folder
2025-05-21 12:14:45 +02:00
indev
35103ad810
Only run song credits drawer and ticker in menu instead of all hud
2025-05-20 16:48:51 +03:00
indev
5ac0262654
Fix 'make clean' keeping depend.dep file
2025-05-20 01:02:03 +03:00
Alug
c361285790
we may fixed the double free, but now we fix the ghost hitlist also crashing
2025-05-19 20:01:29 +02:00
Alug
a168b5e2b9
let resynch method be "toggable"
...
setting gamestate attempts to 0 should disable saturn resynch and setting resynchattempts to 0 should disable vanilla resynch
2025-05-19 16:40:02 +02:00
Alug
f70c38a853
Merge pull request #171 from Indev450/votebgscaling
...
Better Vote Background scaling behaviour
2025-05-19 15:01:07 +01:00
Alug
4c05c063a9
oop this was always true effectively
2025-05-19 15:59:15 +02:00
Alug
e1e45ad3ad
readd player var to lib_pDoSuperTransformation
...
otherwise this may desynch?
2025-05-19 15:48:29 +02:00
Alug
ca9b001c9f
even more random cleanup 2
...
hope i got everything right lel
2025-05-19 15:30:54 +02:00
Alug
3976d80867
delet old tools
...
they dont work anymore anyways
2025-05-19 00:22:34 +02:00
Alug
1ee10457f8
delet dummy
2025-05-19 00:22:31 +02:00
Alug
116bcd0cb1
random cleanups
...
note: 2d camera didnt work anyways
2025-05-18 16:46:25 +02:00
Alug
fcdccb96aa
move camera to spawn if you press freecam toggle when spectating
...
since we dont use the toggle in spectatormode
might be useful to return to the mapstart fast or smth
this is mostly just copy pasted from P_ResetCamera, which should be fine hopefully since we dont move our spectators anymore
2025-05-17 14:54:11 +02:00
Alug
723286826b
make this switch slighty prettier
2025-05-17 14:02:00 +02:00
Alug
b190f09aea
fix 3d models rollangle on gravflip
...
idk if this is correct, but it works lel
2025-05-17 14:01:57 +02:00
Alug
ff6358b031
make ogl screenflip stuff directly assignable
...
those dont need to be seperate bools lel
also simplify the assignment aswell
2025-05-17 14:01:54 +02:00
Alug
c68c61975e
Merge pull request #169 from Indev450/Saturn-Next
...
Saturn v8.1
2025-05-11 16:42:59 +01:00
Alug
7e31536ff9
Merge branch 'Saturn-Next' into Saturn
2025-05-10 16:23:03 +02:00
Alug
c2cf6f17d1
Merge pull request #167 from Indev450/Saturn-Next
...
Saturn v8
2025-05-10 09:39:39 +01:00
Alug
07c52e6af5
static link this to get rid of stinky extra dll
...
thx indev <3
2025-03-20 14:45:35 +01:00
Alug
405c566038
import zlib-ng in compat mode
2025-03-20 14:31:02 +01:00
Alug
78780799ea
delet zlib from windoze
2025-03-20 14:15:38 +01:00
Alug
82b9457aa7
Merge branch 'Saturn-Testing' into winzlib-ng
2025-03-20 13:37:06 +01:00
Alug
4e6abb39dd
Merge remote-tracking branch 'origin/rankingsrefactor' into winzlib-ng
2025-03-20 13:34:51 +01:00
indev
14400097dd
Only do lookup for mobjtype and states for drift stars and water trails at map load
2024-07-29 01:04:46 +03:00
indev
c44c0e10c1
Lets not compile lua code multiple time each frame x)
2024-07-27 03:28:13 +03:00
indev
bbf49db184
Oops
2024-07-25 21:24:29 +03:00
indev
15787a97bb
Make water trail not use hardcode freeslots too
2024-07-25 21:17:48 +03:00
indev
b76ce23ed2
Make drift stars not use hardcode freeslots
2024-07-25 19:02:39 +03:00