Commit graph

17111 commits

Author SHA1 Message Date
Sally Coolatta
369d5398c5 Lots of FPS stuff
- Disabled VSync, due to the numerous problems it has.
- Instead, added an FPS cap.
- Frame interpolation is now tied to fpscap != 35.
- By default, the FPS cap is set to the monitor's refresh rate.
- Rewrote the FPS counter.
2022-03-26 23:48:08 -04:00
Sally Coolatta
417bbd1bf2 Keep rect in memory
Feel better about this than creating one all da time
2022-03-26 17:16:13 -04:00
Sally Coolatta
33f316ded2 Calculate FPS stuff even if frame is skipped
I decided ultimately to actually keep the frame skip optimization disabled, because I think it is actually a little bit helpful that you can still get accurate rendering perfstats while paused, however if we decide otherwise then we can have this optimization back without making the game act like it's lagging.
2022-03-26 16:32:43 -04:00
James R
af1177a92e Merge branch 'spring-level-up' into 'master'
Increase spring strengths by ONE

See merge request KartKrew/Kart!560
2022-03-24 19:39:48 +00:00
SteelT
44c95916b6 Merge branch 'battlesync' into 'master'
BATTLE SYNC

See merge request KartKrew/Kart!564
2022-03-24 01:28:28 +00:00
James R
db619f1ed6 Fix bad merge @ 37e16db41e 2022-03-23 13:52:59 -07:00
toaster
b9864c9294 BATTLE SYNC
* Fix majority of Battle resyncs.
    * Change how Paperitem spawners work. Instead of rerolling the RNG if a map spot is already used, maintain a list of available spots...
    * Correct over-the-network type of player->spheredigestion.
    * Remove the condition that prevented the spheres' spawnpoints from being sent over the network, which meant they were only respawning on the host's end...
* Fix itemroulette on Battle playerarrow. (Rarely seen these days but still possible to observe as spectator for Break the Targets)
* Change draw order of Position Faces and Tab Rankings to allow for players' numbers to draw on top of the big out-of-bumpers X.
2022-03-23 00:34:23 +00:00
toaster
982c6d9a2e Merge branch 'boss-code-extras' into 'master'
Extra code changes for boss

See merge request KartKrew/Kart!563
2022-03-22 13:06:15 +00:00
SteelT
002e07dceb Merge branch 'mergeladder' into 'master'
Merge Ladder

See merge request KartKrew/Kart!558
2022-03-22 03:34:08 +00:00
SteelT
dbdaebbb04 Merge branch 'droptarget' into 'master'
"Drop Target" item

See merge request KartKrew/Kart!562
2022-03-22 03:33:54 +00:00
SteelT
60948d887a Merge branch 'unnerf-wall-transfer' into 'master'
Unnerf wall transfer speed

See merge request KartKrew/Kart!559
2022-03-22 03:33:40 +00:00
toaster
3aba8084d4 FORGOT 2022-03-22 01:34:12 +00:00
toaster
1d74dae951 Change order of item constants (Capsules makes them hard to change, now...) 2022-03-22 01:31:14 +00:00
toaster
e2640cbe9e Shadow adjustment (per VC discussion) 2022-03-22 01:00:22 +00:00
toaster
52d2472ed7 "Drop Target" item initial commit.
Most of the way there, but still a bit left to do.
2022-03-21 23:40:30 +00:00
James R
6dd38f001a Fix boss flash in opengl 2022-03-21 13:05:01 -07:00
James R
fbe3106890 Refactor R_SpriteIsFlashing into R_ThingIsFlashing
Checks for boss fret AND hitlag.
2022-03-21 13:03:30 -07:00
Sally Coolatta
48160b6417 Increase spring strengths by ONE 2022-03-21 00:46:58 -04:00
Sally Coolatta
995ebae2bd Unnerf wall transfer speed
(Sorry Ramp Park...)
2022-03-20 23:50:42 -04:00
toaster
2a40ab39fa Made a HOSTTESTERS build for Tyron, fixed some stuff that came up:
* Grand Prix temp menu now won't open if there are no cups available
* No more Boss Missions entry on the menu, since that won't exist post-newmenus
2022-03-19 11:43:12 +00:00
toaster
60ff5de92d Made a HOSTTESTERS build for Tyron, fixed some stuff that came up:
* Grand Prix temp menu now won't open if there are no cups available
* No more Boss Missions entry on the menu, since that won't exist post-newmenus
2022-03-19 11:42:00 +00:00
toaster
a6f4890421 Figured out what was wrong with splatsprites by comparing their drawing functions to the current state of 2.2's codebase. 2022-03-18 21:55:31 +00:00
toaster
ef0de0dec2 Splat stretch and squash isn't on the same axis, so just... don't do it, at least for now. 2022-03-18 21:31:22 +00:00
toaster
6cbeda5ec6 Add Encore support to splats (software; GL can come later). 2022-03-18 21:20:34 +00:00
toaster
09a99fa06d * Make RunOverlays and A_OverlayThink more consistent.
* Incorporate drawangle support for both (flattened merge of STJr/SRB2!1599)
2022-03-18 20:59:18 +00:00
toaster
b270b67c1d Limit array access for placed emblems.
(Partial merge of STJr/SRB2!1757)
2022-03-18 20:52:53 +00:00
spherallic
07901a6364 oops 2022-03-18 20:50:24 +00:00
toaster
ed00874f5f wip: staterange actions
# Conflicts:
#	src/doomdef.h
2022-03-18 20:50:03 +00:00
Hannu Hanhi
09885ce34b did not mean to remove this line 2022-03-18 20:44:14 +00:00
toaster
336010e616 Fix portals
- Resetting portalcullsector fixes the major visual glitches

- Using 32 bits for nummasks and i fixes crashes when rendering lots of portals

# Conflicts:
#	src/r_main.c
2022-03-18 20:44:07 +00:00
GoldenTails
5dc9df4c6a Allow people to update their Master Server listing on command. 2022-03-18 20:41:49 +00:00
toaster
786d263019 Make dedicated servers not pop up that annoying SDL error window
So they don't mess with shell scripts that expect SRB2 to exit when it crashes (like most other programs)

# Conflicts:
#	src/sdl/i_system.c
2022-03-18 20:41:11 +00:00
Hannu Hanhi
b7c23b9187 Fix software splats breaking and crashing in skyboxes 2022-03-18 20:39:02 +00:00
Hannu Hanhi
3083d97e16 Fix software splats not being clipped by ceiling walls 2022-03-18 20:38:17 +00:00
Hannu Hanhi
115004d704 Add missing optimization to npo2 sloped floor sprites 2022-03-18 20:37:16 +00:00
LJ Sonic
4b1ba2974d Do not attempt to disconnect when a packet checksum is invalid 2022-03-18 20:35:07 +00:00
MascaraSnake
b42715a5ca Fix offset calculation for segs that represent linedef backsides 2022-03-18 20:34:29 +00:00
toaster
5783c5aace Only load map lumps that are WADs or have no extension
# Conflicts:
#	src/w_wad.c
2022-03-18 20:31:17 +00:00
Hannu Hanhi
2a92a80e7a Improve OpenGL GDI Generic error message 2022-03-18 20:24:34 +00:00
katsy
7ddaf60a54 alternate fix to #555 which doesn't crash the game 2022-03-18 20:24:06 +00:00
MascaraSnake
6cabe55d3b Speed up taglist creation 2022-03-18 20:23:31 +00:00
Vincent Robinson
1d7fa9e0f5 Make linedef 96 apply to tags from 97-99, but not to itself 2022-03-18 20:20:39 +00:00
GoldenTails
96976fdba3 You probably don't want to memorise the formula to convert arccos to arcsin so 2022-03-18 20:16:23 +00:00
MascaraSnake
a6d921e37c Fix "all players" check in T_EachTimeThinker 2022-03-18 20:15:10 +00:00
katsy
45f848c4ed null gamestate during pre-intermission to prevent unwanted interaction 2022-03-18 20:14:17 +00:00
toaster
c2f427d858 Call the Lua timestamp function getTimeMicros
# Conflicts:
#	src/lua_baselib.c
2022-03-18 20:08:45 +00:00
toaster
9577dc26b9 Timestamp function for Lua
# Conflicts:
#	src/lua_baselib.c
2022-03-18 20:07:49 +00:00
Jaime Ita Passos
d5d8124ab8 Remove misplaced line from R_DrawTiltedSplat_NPO2_8 2022-03-18 19:59:58 +00:00
toaster
78b8def506 Allow fromnetsave to be used in P_SpawnSpecialsThatRequireObjects (missed element of the level load executor fix). 2022-03-18 19:59:28 +00:00
toaster
134f3b5df5 fix water fof height calculation on slopes
# Conflicts:
#	src/p_mobj.c
2022-03-18 19:54:19 +00:00
spherallic
6cfe9ad4b3 Add toggle for linedef action 401 to not change the ceiling texture. 2022-03-18 19:45:40 +00:00
toaster
1a12b7b58e Give userdata that needed names some names.
Partial reimplementation of commit 8110473643e6b6e541a7f8e8217bed45dd64d671 due to referencing un-merged MR
2022-03-18 19:41:14 +00:00
James R
976f05a002 Remove mixed code and declarations warning 2022-03-18 19:37:59 +00:00
James R
df1c0fddcb Fix GCC 11 array-bounds warning in P_SetupStateAnimation
Removing inline here silences the warning somehow, it
could be a GCC bug?
2022-03-18 19:37:34 +00:00
Jaime Ita Passos
0a9fd2c9fa Fix #555 2022-03-18 19:33:57 +00:00
toaster
2c55477161 Revert "Make the colormap returned by v.getColormap() writable."
This reverts commit 53ec972887.
2022-03-18 18:59:25 +00:00
toaster
9c1ca3e2c0 Revert "Copy colormaps so Lua cannot modify cached colormaps! (And Z_Free them on garbage collection.)"
This reverts commit 134f94474c.
2022-03-18 18:59:10 +00:00
toaster
1a8f07d53c Add a missing scale assignment to A_Boss3ShockThink
(flattened version of SRB2 repository SMS_Alfredo:oneline/merge request 1588)
2022-03-18 18:50:31 +00:00
lachablock
d92f4d6d50 Split up x/y/z averages in A_Boss3ShockThink 2022-03-18 18:48:36 +00:00
LJ Sonic
66a08a391b Don't call map load trigger linedefs when joining or reloading gamestate 2022-03-18 18:40:27 +00:00
Shane Ellis
4ef77365a4 Add VERSIONSTRING_RC to DEVELOP builds for compiler compatibility 2022-03-18 18:37:20 +00:00
LJ Sonic
c977a7d451 Fix again 2022-03-18 18:31:46 +00:00
LJ Sonic
ef1ff6c94b Fix incorrect error message during Lua archiving 2022-03-18 18:31:38 +00:00
toaster
7f969705b4 Add flag to line slopes for copying their slopes to the other side.
# Conflicts:
#	extras/conf/SRB2Kart2.cfg
2022-03-18 18:30:40 +00:00
toaster
3794bea729 Accidentially killed P_InitSpecials whilst handling a previous commit; correct. 2022-03-18 18:18:48 +00:00
toaster
86f2a551e6 Fix floor sprite projection
# Conflicts:
#	src/r_plane.c
#	src/r_things.h
2022-03-18 18:16:31 +00:00
Nev3r
65a339ec12 Fix the equation constant fields not being filled properly. 2022-03-18 17:54:13 +00:00
Nev3r
c7b7079ec6 Let equation slopes be read from textmaps. 2022-03-18 17:54:03 +00:00
Nev3r
9992d36bf3 Add slope equation constant parsing functionality. 2022-03-18 17:53:53 +00:00
toaster
dd8acd4c61 Initialize slopes before the map loads.
# Conflicts:
#	src/p_setup.c
#	src/p_slopes.h
2022-03-18 17:53:45 +00:00
GoldenTails
134f94474c Copy colormaps so Lua cannot modify cached colormaps! (And Z_Free them on garbage collection.) 2022-03-18 17:49:46 +00:00
GoldenTails
53ec972887 Make the colormap returned by v.getColormap() writable.
I mean it was already readable anyway...
2022-03-18 17:49:37 +00:00
Jaime Ita Passos
0abc659168 Update r_opengl.c 2022-03-18 17:46:18 +00:00
Jaime Ita Passos
5539341ebc Allocate a buffer for non-RGBA to RGBA texture conversions.
UpdateTexture will I_Error (from AllocTextureBuffer) if the allocation fails.
2022-03-18 17:46:09 +00:00
James R
4c9c54e44e Revert netvars after demo finishes playback
(Demos do not call CL_Reset BTW.)
2022-03-18 17:41:14 +00:00
toaster
e07fb31f72 P_ZMovement: add a P_MobjWasRemoved check after P_CheckPosition, so we can bail out if the mobj was removed (by Lua most likely)
# Conflicts:
#	src/p_mobj.c
2022-03-18 17:35:34 +00:00
Nev3r
2e7e61f787 Remove &, since args and stringargs are arrays 2022-03-18 17:28:15 +00:00
Nev3r
de0119fd78 Forgot the stringargs. 2022-03-18 17:28:06 +00:00
Nev3r
7c8beb9229 Bugfix - Fix sporadically occurring incorrect userdata types in Lua, caused by previously loaded userdata which didn't get invalidated in previous sessions.
Invalidate userdata for line and mapthing args.
Invalidate userdata for slopes and their normal, origin and direction vectors.
2022-03-18 17:27:57 +00:00
sphere
6d58afe071 Use floating-point math for polyobject planes as well. 2022-03-18 17:25:29 +00:00
sphere
167d30efc2 Ignore a linedef tag of 0 when using linedef action 96. 2022-03-18 17:22:28 +00:00
toaster
a15a2f1ef2 Restore P_AproxDistance Lua parity
# Conflicts:
#	src/lua_baselib.c
2022-03-18 17:16:11 +00:00
SwitchKaze
18f0ece073 Fix console text bleeding edge case
A single character could prematurely read if there were enough special characters to push 'c' past 'con_width'.
2022-03-18 17:15:13 +00:00
SwitchKaze
8ef8cb5b5f Fix console text bleeding 2022-03-18 17:15:00 +00:00
toaster
fe204dbc87 Change variable from previous commit to the one used in Kart startup. 2022-03-18 17:14:25 +00:00
GoldenTails
168fc18357 Fix the console splitting up halfway through startup. 2022-03-18 17:13:05 +00:00
lachablock
c331bac825 Fix models interpolating to frame 0 from a same-sprite2 FF_SPR2ENDSTATE state 2022-03-18 17:10:32 +00:00
toaster
1289e08887 Enhance the multitagging functionality added in previous commits.
* Flattened version of commits from SRB2 repository's flarn2006:multitagging_plus/merge request 1524.
* New linedef special 96: "Apply Tag to Tagged Sectors".
* New flags for linedef specials 97-99
2022-03-18 17:06:22 +00:00
Monster Iestyn
2d50b76323 A_Custom3DRotate: don't scale hspeed and vspeed - they are angular speeds, not linear!
(I added the scaling to this action somewhere between 7-9 years ago, and somehow never knew I made this mistake until now, welp.)
2022-03-18 16:58:28 +00:00
toaster
9deeb79ac4 My mistake, P_PreTicker calls P_MapStart and P_MapEnd too, so rework my earlier fix a bit
# Conflicts:
#	src/p_setup.c
2022-03-18 16:58:00 +00:00
Monster Iestyn
e3ead54561 Fix Lua versions of P_ZMovement and its clones as well as P_MovePlayer so tmthing changes don't linger afterwards 2022-03-18 16:56:46 +00:00
toaster
5fa9ba1be0 move P_MapEnd call in P_LoadLevel further down, so that the P_MapStart/End pair also encloses cached actions and the MapLoad Lua hook
# Conflicts:
#	src/p_setup.c
2022-03-18 16:56:39 +00:00
flarn2006
b0aeb6ce03 Expose M_MapNumber to Lua 2022-03-18 16:54:48 +00:00
toaster
2cfdf80fca Remove FRACUNIT/2
# Conflicts:
#	src/r_main.c
2022-03-18 16:54:26 +00:00
toaster
1f5eb2c442 Correct non-compiling iterators that retained their initialisation from the earlier pushes. 2022-03-18 16:50:13 +00:00
namishere
230b301455 Expose P_ButteredSlope to lua 2022-03-18 16:44:41 +00:00
Nev3r
a7b128b9bc Update example comment. 2022-03-18 16:43:35 +00:00
Nev3r
368a83ccb8 Fix __LINE__ macro expansion via recursive macro expansion; C macros sure are something sometimes... 2022-03-18 16:43:11 +00:00
toaster
487103bc47 Remove TAG_ITER_DECLARECOUNTER and the level field on the iterator macros.
Declare the position counters inside the for loops instead; RIP C90.

# Conflicts:
#	src/p_mobj.c
#	src/p_spec.c
2022-03-18 16:43:03 +00:00
toaster
5ac3709d43 make a few messages more helpful
# Conflicts:
#	src/d_clisrv.c
2022-03-18 16:27:48 +00:00
toaster
b75bea40b2 Add ease Lua library
# Conflicts:
#	src/lua_mathlib.c
2022-03-18 16:25:57 +00:00
toaster
3c5e19bb06 Easing functions
# Conflicts:
#	src/CMakeLists.txt
#	src/Makefile
2022-03-18 16:23:58 +00:00
Hannu Hanhi
955bbeed42 Take slopes into account even more in FOF wall cutoff in HWR_ProcessSeg 2022-03-18 16:20:25 +00:00
Hannu Hanhi
8f22ccccdb Take slopes into account in FOF wall cutoff in HWR_ProcessSeg 2022-03-18 16:20:08 +00:00
Hannu Hanhi
6a6c8a2baf Clarify license file mention in libdivide.h 2022-03-18 16:19:01 +00:00
Hannu Hanhi
c0302174c3 Clarify licensing-related text in libdivide.h 2022-03-18 16:18:51 +00:00
toaster
0c12a389e1 NPO2 slope span optimization
# Conflicts:
#	src/CMakeLists.txt
#	src/r_draw.c
#	src/sdl/Srb2SDL-vc10.vcxproj
2022-03-18 16:18:47 +00:00
toaster
37e16db41e Fix slope plane rotation and alignment.
A flattened-commit port of the SRB2 repository's software-slope-plane-uv-fix-attempt/merge request 1464 due to the vast, vast refactorings that would intefere with brightmaps and Encore if done one commit at a time.
2022-03-18 16:10:05 +00:00
toaster
fab0897800 Check against null tmpusher source before attempting to push a thing.
# Conflicts:
#	src/p_spec.c
2022-03-18 14:08:29 +00:00
Jaime Ita Passos
4563722695 tRNS chunk fix
Fixes a faulty check not properly detecting the presence of a tRNS chunk.
2022-03-18 13:56:01 +00:00
Jaime Ita Passos
96edcff902 Optimize Picture_GetPatchPixel 2022-03-18 13:55:04 +00:00
Steel Titanium
f674737898 Add deprecation warning when using the level header parameter 2022-03-18 13:54:17 +00:00
toaster
bf6b9c6fed Remove music slot compatibility
# Conflicts:
#	src/deh_lua.c
#	src/lua_baselib.c
2022-03-18 13:54:03 +00:00
toaster
babf630587 Set the target of a spawned ghost to where it came from.
# Conflicts:
#	src/p_user.c
2022-03-18 13:42:57 +00:00
toaster
3c83508646 add sprung flag to steam
# Conflicts:
#	src/p_map.c
2022-03-18 13:39:19 +00:00
toaster
19a4ef23c2 Add more actions for slope copying & update the ZB config.
# Conflicts:
#	extras/conf/SRB2Kart2.cfg
2022-03-18 13:32:48 +00:00
toaster
857330f74f Add linedef specials for multitagging in binary maps
# Conflicts:
#	extras/conf/SRB2Kart2.cfg
2022-03-18 13:16:55 +00:00
X.organic
0b2783925f Remove some dead code from DEH_LoadDehackedFile
Also fixes a buffer overflow, but said overflow generally got caught by
the stack smashing protector. Still, it's better for SOC files not to be
able to crash the game that easily.
2022-03-18 13:14:37 +00:00
GoldenTails
0146c0a4bd name kinda sucked 2022-03-18 13:13:11 +00:00
GoldenTails
bf5ca10652 acos Lua exposure 2022-03-18 13:13:02 +00:00
Sally Coolatta
e5453f97b7 Missed a few lines in the prev commit 2022-03-18 13:12:17 +00:00
Sally Coolatta
46e31e45d9 Allow spaces in captions defined in SOC 2022-03-18 13:12:09 +00:00
toaster
c67b52f85d move the old "can't load the level" error to its proper place, added specific error messages for all the times that unarchiving Lua banks can fail
# Conflicts:
#	src/d_clisrv.c
2022-03-18 13:07:47 +00:00
Jaime Ita Passos
1219f36ca2 Fix polyobject segs messing with 3D floors they shouldn't be 2022-03-18 13:02:44 +00:00
James R
8c237ae452 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.
2022-03-18 12:54:22 +00:00
James R
b1890385f4 Revert "Merge branch 'lightmemedata' into 'next'"
This reverts commit 7ff3e7f18b, reversing
changes made to dc37cdf2a6.
2022-03-18 12:54:13 +00:00
Steel Titanium
e1e57c071b Fix MusicChange hook not returning some values correctly 2022-03-18 12:52:08 +00:00
katsy
3fb2a1fba5 adjust cooldown to 5 seconds (bandage fix for 2.2.9) 2022-03-18 12:51:39 +00:00
katsy
38dc1c55e4 attempt to resolve teleportation resync issue 2022-03-18 12:51:31 +00:00
James R
59b7a65bca It is impossible for a string to be allocated in this case 2022-03-18 12:47:21 +00:00
James R
2ba1417b9e Free zstring when switching to preset value
This is only applicable for bounded cvars (MIN, MAX),
since otherwise there's no way to allocate a zstring.
2022-03-18 12:47:13 +00:00
Monster Iestyn
eeb208312a Change numadded counter to UINT16 instead of UINT8, to allow for more sprites properly 2022-03-18 12:45:44 +00:00
Monster Iestyn
9e20d1ea31 Set "allocated" flag to off if setting a string from PossibleValue afterwards, or if not setting a new value at all. 2022-03-18 12:44:30 +00:00
toaster
2868639144 Add PF_ColorMapped
Not all surfaces have tint and fade colors. Checking for a specific surface flag, that tells the backend those colors are present, avoids uninitialized reads.

# Conflicts:
#	src/hardware/hw_main.c
2022-03-18 12:43:36 +00:00
toaster
11875b56c7 Render midtextures on two-sided lines with a z-buffer offset
This will fix z-fighting issues when they overlap with FOFs.

# Conflicts:
#	src/hardware/hw_main.c
2022-03-18 12:32:58 +00:00
Hannu Hanhi
b836d774a7 Remove bad pointer arithmetic in polygon comparators, that was causing glitches 2022-03-18 11:59:40 +00:00
Hannu Hanhi
44a8b01619 Fix incorrect values caused by outdated use of timing functions in perfstats 3 2022-03-18 11:58:29 +00:00
katsy
c1a4ff724e move HWR_GetMappedPatch earlier 2022-03-18 11:56:50 +00:00
Hannu Hanhi
dcf944be9c Fix a OpenGL backend DeleteTexture crash 2022-03-18 11:53:20 +00:00
toaster
f073218532 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart.git into boss
# Conflicts:
#	src/m_menu.c
2022-03-18 09:07:13 +00:00
James R
821fd41d70 Merge branch 'c99-pedantic' into 'master'
Switch compiler mode C90 to C99; enforce stricter standard conformance

See merge request KartKrew/Kart!554
2022-03-18 02:41:57 +00:00
James R
93bd404072 Incorporate few more instances of Z_Free NULL no-op 2022-03-17 12:17:51 -07:00
toaster
1ac2730ced Fix a signedness comparison warning in K_CheckBumpers. 2022-03-17 17:01:07 +00:00
toaster
8de92e8dca Merge branch 'master' into boss
# Conflicts:
#	src/k_bot.c
2022-03-17 16:58:42 +00:00
toaster
306d1cd3ae Merge branch 'network' into 'master'
Net work

See merge request KartKrew/Kart!557
2022-03-17 16:50:40 +00:00
toaster
f02a48d3d8 Merge branch 'fix-229' into 'master'
Fix #229

Closes #229

See merge request KartKrew/Kart!555
2022-03-17 16:35:17 +00:00
toaster
05c1d61ae1 Add pmomz and stairjank to net archive (plus re-organise slightly). 2022-03-14 20:13:32 +00:00
toaster
6e7adedaa0 Make the Kart TICQUEUE system closer to the 2.2 BACKUPTICS system.
* Rename TICQUEUE to BACKUPTICS.
* Add CLIENTBACKUPTICS to limit the time gap players can send tics in at once
    * This likely means freezes are more possible, and this variable could be raised later, but prevents some potential duplication in the extrapolerated tic.
2022-03-14 19:24:07 +00:00
toaster
c84a739039 Fix not being able to escape out of the server connection screen. 2022-03-14 16:59:18 +00:00
toaster
fcb6a4e1ab Disable the vanilla-sourced "keepbody" (rejointimeout) feature. 2022-03-14 16:33:03 +00:00
toaster
c68e0d46c0 Fixed sneaker-induced bumper theft (for those who saw my comment in MKD, turns out a simple P_PlayerInPain saves you from the multi-steal threat I considered) 2022-03-13 17:00:43 +00:00
toaster
a3eab3099e Solve the concern about potential tiregrease overwriting. Let the video resume at once 2022-03-12 23:18:55 +00:00
toaster
b9acad707e Restore the v1 record attack critera (maps available by default), whilst also now allowing for specific maps to opt out. 2022-03-12 22:31:52 +00:00
toaster
a45b163bd1 Make P_EndingMusic *also* operate on local players rather than display players. 2022-03-12 19:32:03 +00:00
toaster
31db72256d Merge branch 'master' into boss
# Conflicts:
#	src/y_inter.c
2022-03-12 19:24:23 +00:00
toaster
87fe8f2c9c Merge branch 'gamestatereloaded' into 'master'
Gamestate reloaded

See merge request KartKrew/Kart!551
2022-03-12 19:08:04 +00:00
toaster
2fdcd9bc2d Merge branch 'light-setup-frame-refactor' into 'master'
A lightweight refactor to R_SetupFrame and R_SkyboxFrame

See merge request KartKrew/Kart!532
2022-03-12 18:54:20 +00:00
toaster
b3c9b8f94e Merge branch 'votefree' into 'master'
:votefree: (resolves #217)

Closes #217

See merge request KartKrew/Kart!542
2022-03-12 18:49:45 +00:00
toaster
65feacc16c Merge branch 'musicataparty' into 'master'
Music at a party

See merge request KartKrew/Kart!543
2022-03-12 18:40:03 +00:00
toaster
f794908430 Merge branch 'followtweak' into 'master'
Follower adjustments

Closes #202

See merge request KartKrew/Kart!514
2022-03-12 18:37:15 +00:00
toaster
d7b72018ba Merge branch 'doublezap' into 'master'
Item Thunderflow

Closes #220

See merge request KartKrew/Kart!544
2022-03-12 18:32:29 +00:00
toaster
cd7e125863 Update texturecache user when reallocating
# Conflicts:
#	src/r_textures.c
2022-03-12 18:00:52 +00:00
toaster
9fe2184c08 Merge branch 'master' of https://git.do.srb2.org/KartKrew/Kart.git into fast-addfile 2022-03-12 17:39:18 +00:00
toaster
723c479388 Resolve Battle score ties caused when Luigi wins by doing nothing. 2022-03-07 14:12:58 +00:00
toaster
4839586617 Allow GTR_PAPERITEMS to function in a hypothetical GTR_CIRCUIT-based custom gametype. 2022-03-07 13:45:15 +00:00
toaster
5c77516aab Cleanup of boss info in anticipation of merger.
* Actually add descriptions for the boss-related functions into k_boss.h.
* Introduce K_ResetBossInfo, an internal-only function for handling situations where it needs to be cleared.
* Fix a bug where bossinfo wasn't reset when using the map command to go to a battle map after having been in a boss.
* Fix some bugs where you could provide magnitudes out of the desired range to K_InitBossHealthBar and K_UpdateBossHealthBar.
2022-03-07 13:08:46 +00:00
toaster
590d236b66 * Make item boxes spawn in at map start in race.
* Make them use MF_NOBLOCKMAP as well as MF_NOCLIPTHING so bots won't do weird things when Battle bots are coded way down the line.
2022-03-07 12:37:47 +00:00
toaster
3ddebabfa9 Fix a followers invalid memory crash (discovered in this branch but likely existed beforehand). 2022-03-07 01:37:58 +00:00
toaster
672bf9631d * Allow the digestion to "catch up" a bit if you suddenly get a huge burst of spheres (such as a spherebox).
* Refactor a little, since the previous code required casting and could penalise 40 spheres a bit TOO much if you would be pushed beyond it that tic.
2022-03-06 22:45:48 +00:00
toaster
5f3bf3e8a2 A first-pass attempt at the "digestion" hidden stat for Battle - pushing just in case I fall asleep before we can explore this, and/or end up busy in the next few days.
* At the start of the first bar, everyone digests spheres at 1 per second, same as before.
* This actually only starts counting down from the most recent moment your spheres becomes nonzero, which is a very, VERY tiny buff to prevent their instant depletion.
* At around 40 spheres:
    * Chao digests them at 1 sphere per *tic*. Might be slightly too punishing.
    * Mecha Sonic digests them at 1 sphere per... 33 tics, or barely faster than before. Might be slightly not punishing enough.
    * Everyone else is linearily in between.
2022-03-06 22:23:40 +00:00
toaster
f518ae5c58 * Fix some music and visual bugs with dying in Battle at the conclusion of the round.
* Fix emeralds HUD overlapping minimap in 2P splits.
2022-03-06 18:19:28 +00:00
toaster
ab132300a9 No longer autoload bosstest.pk3 2022-03-05 23:27:09 +00:00
toaster
98bf8a414d Adjust the bannerx system (used both by titlecard and boss titlecard) to actively scale with the resolution, instead of blindly drawing three times. 2022-03-05 23:26:58 +00:00
toaster
6f33cd7ce6 Fix bosses not having the correct number of bumpers set. 2022-03-05 23:25:32 +00:00
toaster
bf43784d22 This is a doozy...
HUD:
* Miniaturised Spheres and Emeralds HUD for 3P/4P.
* Repair 3P minimap.
* Move accessibility icons in 3P/4P to next to the lap/bumper sticker (currently only kickstartaccel exists)
* Change language on menu retry to be more generalised.
* Adjust HUD code structuring a bit.

MECHANICAL:
* Now correctly set number of bumpers in Break the Capsules to 1 (from 3).
* The above required reworking K_SpawnBattleCapsules into K_BattleInit, which is a good staging ground to handle more battle-specific setup in future.
* Do not spawn Emeralds or Sphereboxes in Break the Capsules.
* If everyone is WANTED... nobody is.
* Try to handle exceptions to timelimits a little more thoroughly (still not perfect).
* Disable pointlimits in bosses.
2022-03-05 22:31:43 +00:00
toaster
9ac9abbb6e * Fix the intermission scores not getting ranked in singleplayer GP.
* Make any singleplayer intermission that doesn't display cross-match rankings half as long (this is how long you see each half of an online intermission for).
2022-03-05 22:19:49 +00:00
toaster
dc2936de42 Make the map command from the title screen *actually work*, and make a best-guess attempt at determining the necessary setup to play each particular map in a Single Player context (such as grandprixinfo for TOL_RACE, a little cleanup for TOL_BATTLE, and bossinfo for TOL_BOSS).
This will be necessary when newmenus comes around and it is no longer advantageous to have a menu for testing bosses, given they won't be a headline feature in v2 or accessible via multiplayer at this time.
2022-03-05 22:17:06 +00:00
toaster
61577e5026 * Re-enable kickstartaccel in battle.
* Add a little "ding" sound and HUD dorito bounce when your kickstartaccel reaches max, so you can let go of accelerate/know when you need to tap to stop.
* Make the name on top of the boss healthbar only show up once the titlecard is over.
* Properly reset boss healthbar fill between maploads.
2022-03-01 18:18:01 +00:00
James R
54b55efcb2 Remove fixme 2022-02-28 14:12:59 -08:00
toaster
17e5f71b5d * Re-enable sphere HUD in bosses.
* Do a little more anti-overtime checking for bosses. (This *really* requires a refactor at some point, but not right now)
2022-02-27 17:48:04 +00:00
toaster
5a06239a20 Add an extra fix for the "get hit the moment you spawn an orbiting item" bug that produced tiny Orbinauts and Jawz - now it moves them out so they're not inside you when you come out of hitlag.
(Yes, sorry, no more fishsticks.)
2022-02-27 17:37:39 +00:00
toaster
329c2a60a2 Fix item boxes not spawning in Break the Capsules.
Specifically, they turn invisible on tic 0, then make a decision about whether to replace themselves with MT_PAPERITEMSPOT or simply become visible (with an explosion puff, same as how they respawn) when starttime is reached.

This delay also applies to Race, which I think is a good thing, considering Item Capsules already are not collectable during POSITION, but I can change it if others disagree.
2022-02-27 17:11:18 +00:00
toaster
4a2efd3000 Fix a few basic mistakes.
* Don't forcibly go to a race map if you're exiting a boss and would otherwise return to the title screen.
* Yes, there are four basc TOL's now, not three.
* Title card string for ZONE should be right aligned.
2022-02-27 17:07:56 +00:00
James R
c58d789a07 Always reset tiregrease 2022-02-24 22:51:01 -08:00
toaster
c1f3237157 Boss API + assorted relevant bugfixes, will go over the featureset of this branch with a fine toothed comb when it's time to write the merge request description so this is all you're getting right now 2022-02-24 21:19:03 +00:00
James R
bdbd85b2cd pedantic: fix win32 2022-02-20 04:48:30 -08:00
James R
a6ec9faf93 pedantic: fix m_menu.c 2022-02-20 03:31:25 -08:00
James R
5ba4231b9d Fix silly wrong pointer in apng.c 2022-02-20 03:29:41 -08:00
James R
82f4364eb4 pedantic: fix misc leniencies and GNU-isms 2022-02-20 03:28:22 -08:00
James R
2887385122 pedantic: ignore enums signed overflow 2022-02-20 03:25:46 -08:00
James R
366ac0b1b2 pedantic: fix paren surrounding braces 2022-02-20 03:23:45 -08:00
James R
d7087c7405 pedantic: fix address loading function pointer casts 2022-02-20 03:22:25 -08:00
James R
9722027fc1 Add macro to cast function pointer to void pointer
Does not evaluate constant expression, I don't know if
that's possible.
2022-02-20 03:18:47 -08:00
James R
bef9f502ca pedantic: cast to (void*) for printf %p 2022-02-20 03:15:51 -08:00
James R
286010c6e9 pedantic: replace GNU empty initializer extension with C99 0 initializer 2022-02-20 03:13:23 -08:00
James R
59c04ae041 pedantic: resolve flexible array member in nested struct
ISO C forbids a structure that has a flexible array member
to be a member of another structure or element of an
array.

filetx_pak and fileack_pak are two such structures. These
have been removed from doomdata_t's union.
2022-02-20 03:10:27 -08:00
James R
bea79dfa65 Replace GNU zero-length array with ISO C99 flexible array member 2022-02-20 03:10:04 -08:00
James R
cd5946be73 Enable pedantic pike-in-your-bum mode, rip and tear 2022-02-19 19:41:19 -08:00
James R
dc098c1e65 Use GNU C99 mode 2022-02-19 19:40:19 -08:00
toaster
b158bfe37e Always stop the sounds, because we're always calling Z_FreeTags and that can lead to invalid memory. (Should fix Rai's crash) 2022-02-17 22:41:34 +00:00