Commit graph

216 commits

Author SHA1 Message Date
TehRealSalt
969801ef09 SEVERELY nerf jointimeout & resynchattempts, too
All of these previous defaults are "this is an insane time to reach, by that point you might as well disconnect"
2018-11-27 11:23:28 -05:00
TehRealSalt
92d5a6b8fb Quick patch-over to dedicated server husk bug
Whenever a 16th player would join, it would wrap around and overwrite the dedicated server ghost host player. This is possibly a bug in vanilla as well, but it'd only occur at 32 players so it's no wonder no one figured that out. :V

As a quick patch, I just capped cv_maxplayers to MAXPLAYERS-1 in dedicated servers only. To fix this for real, we'd need to give dedicated servers their own player & node instead of clumping in into the start of the normal ones.
2018-11-25 07:10:45 -05:00
toaster
aa607ecf4c Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_again
# Conflicts:
#	src/d_clisrv.c
#	src/m_misc.c
2018-11-18 18:26:50 +00:00
Sryder
5a96a0d0a4 Fix potential warning from string truncation
Also the MS seems to just throw the entire char array into the website and ignore null terminators, so I'm memsetting maptitle all to 0 before we do anything with it.
2018-11-18 11:05:05 +00:00
TehRealSalt
0e3b225011 Remove duplicate/removed objects
As well as other compile errors
2018-11-18 03:43:33 -05:00
Sal
b27a44e79b Merge branch 'serverinfo_fix' into 'master'
Serverinfo Fixes

Closes #33 and #31

See merge request KartKrew/Kart!92
2018-11-17 16:54:08 -05:00
toaster
56ed67397d * Fix the in-game MS browser thinking gametypes are unknown.
* Fix the website MS browser mapname output being incomplete.
* Hide hell maps on the website MS browser mapname output.
* (unrelated) tweak Command_Showmap_f's logic for a more accurate name.
2018-11-17 15:48:10 +00:00
Sryder
5d991b6f2a Prevent more local players than the server maxplayers limit joining 2018-11-17 15:00:15 +00:00
TehRealSalt
cb8bbf8e4c Ensure MS packets are sent correctly 2018-11-16 12:01:57 -05:00
Sryder
b8477b4067 Squash various warnings
Shadowed declarations
Unsuffixed float constants
There's an unsuffixed float constant I can't fix because the define is outside of SRB2. We could have our own copy of Pi if we really wanted.
2018-11-14 21:53:57 +00:00
Alam Ed Arias
d4cb81cb28 Merge branch 'master' into next 2018-11-14 15:45:29 -05:00
Alam Ed Arias
de5b626520 Fix misleading indentation 2018-11-14 11:06:45 -05:00
Alam Ed Arias
d14f87b8c6 Cleanup whitespace 2018-11-14 10:54:33 -05:00
TehRealSalt
1e4d196e5e Merge remote-tracking branch 'srb2public/next' 2018-11-08 17:37:05 -05:00
Monster Iestyn
d8f3a20e65 Merge branch 'Playerquit_hook' into 'next'
"PlayerQuit" Lua Hook

See merge request STJr/SRB2!127
2018-11-08 15:53:35 -05:00
TehRealSalt
5c1cc6e1df Merge branch 'master' into all_hardcode 2018-11-02 01:42:34 -04:00
TehRealSalt
950bca1217 Actually lets just do this now, like how its done below 2018-11-01 21:05:52 -04:00
TehRealSalt
78299c5fee 0xFFFF to 0xFFFFFFFF
I'll implement proper bit-setting later, just gotta see if it works first
2018-11-01 20:50:19 -04:00
TehRealSalt
67dd962fb9 Change out the hex used for hnext/hprev consistancy 2018-11-01 20:46:20 -04:00
TehRealSalt
e758e0f8fd Merge branch 'master' into resync 2018-11-01 20:39:50 -04:00
TehRealSalt
69354856b7 "Joined with" kicks display in the chat instead of console 2018-10-31 02:46:16 -04:00
TehRealSalt
f1ea725319 Clean up for player->mo resyncing
Make most of the order match the struct, make sure proper type conversions are used when needed
2018-10-30 18:20:56 -04:00
TehRealSalt
f9d559b03c Fuck it, add back in the old vars
If we want a smaller resync packet, let's actually remove these FOR REAL
2018-10-30 17:03:11 -04:00
TehRealSalt
7fbfed535b Add hnext/hprev to consistancy, add marescore to resynchend 2018-10-30 16:24:27 -04:00
TehRealSalt
48a400c347 Clean up resync pak 2018-10-30 01:23:21 -04:00
LJSonik
b52158eb48
Merge branch 'master' into analog-flipcam-synch-fix 2018-10-29 19:52:08 +01:00
Louis-Antoine
3d0daf2202 Fix desynch when toggling analog mode or flipcam
Special thanks to Lat' for asking weird questions
2018-10-29 00:49:23 +01:00
TehRealSalt
b83286b532 Use k_itemtype as the additional check instead of pw_shield 2018-10-28 14:45:01 -04:00
TehRealSalt
9d6563fcf7 Fix kartspeed/kartweight writes 2018-10-28 14:43:58 -04:00
toaster
4595328e6d Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into toast_hardcode 2018-10-25 19:09:22 +01:00
toaster
791dc079ec Merge branch 'master' into 'chat-changes'
# Conflicts:
#   src/hu_stuff.c
2018-10-21 08:27:28 -04:00
TehRealSalt
553066b48b Merge branch 'master' into net-screen 2018-10-19 15:59:13 -04:00
Sal
524ab75a6a Merge branch 'remove-prints' into 'master'
Remove most gameplay prints

See merge request KartKrew/Kart!42
2018-10-19 15:49:01 -04:00
toaster
41b684e63e Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into net-screen 2018-10-16 22:13:45 +01:00
TehRealSalt
e23da397e4 Remove most gameplay prints
A couple of the extraneous ones (karma interactions, bumper stealing, lap start notifications) have been removed outright. The rest that I could think of have been changed to use CON_LogMessage, so that they still go into log.txt when rereading a fun chat session but not showing themselves in gameplay. Necessary gameplay prints, such as players being defeated or coming back in Battle, have been kept until there's a suitable replacement for them in the future.
2018-10-14 17:45:28 -04:00
toaster
a1e1aa81b5 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_plus_rain
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/g_game.c
#	src/p_floor.c
#	src/p_user.c
#	src/r_data.c
#	src/r_data.h
#	src/v_video.c
2018-10-14 21:52:05 +01:00
Monster Iestyn
fe2af34ee5 Merge branch 'master' into next 2018-10-14 20:49:35 +01:00
Latapostrophe
49f2c62b5d More stuff goes in HU_AddChatText, fixed /pm list not having the correct coords if kartspeedometer was on. 2018-10-11 21:39:19 +02:00
Monster Iestyn
9c464742b7 Remove "playerdeadview" variable; it's not been used for its stated purpose for who knows how long now
Besides rankings popping up when you die just sounds weird anyway, maybe I'm just used to SRB2 not doing it I guess
2018-10-11 20:00:45 +01:00
TehRealSalt
42766db48c Merge branch 'master' into net-screen 2018-10-07 23:26:56 -04:00
Sal
b8d86bb096 Merge branch 'thinkerclean' into 'master'
Nuke a bunch of iteration things that have no purpose in SRB2Kart.

See merge request KartKrew/Kart!25
2018-10-07 23:14:53 -04:00
TehRealSalt
cc2af8a329 Merge branch 'master' into net-screen 2018-10-05 16:13:25 -04:00
toaster
cfd2b021a4 Nuke a bunch of iteration things that have no purpose in SRB2Kart. A full explanation of my reasoning and what it affects is as follows.
p_inter.c -
	Everything to do with setting states for starposts
		In SRB2Kart, starposts are invisble. We don't need to loop through all thinkers just to set their states when there's no visible effect of the state-setting. In addition, it has no consequences for gameplay - starposts have long been silent here, and all checking is done regarding their health, not their state.
	Remove extremely low-traffic conditionals (MT_FLINGEMERALD collision height extension, for example)
		These objects serve no functional purpose during regular SRB2Kart gameplay. Why should every other object have to pay an admittedly minor performance hit just for them?
	Disable all mechanisms of damaging bosses or enemies with the player's physical contact
		With the exception of Sapphire Coast, no MF_ENEMY objects exist in the entirety of the standard roster. In addition, the conditions for damaging the enemies were impossible to achieve, because they required vanilla SRB2 mechanics such as "jumping", "spindashing", or "super". Therefore, they can be safely commented out.
	Disable NiGHTS-related material (excepting bumper, hoop, and wing-emblem objects)
		NiGHTS is fundamentally incompatible with regular kart gameplay and I believe was already broken. Therefore, any mechanism which enters, aids, or abets it can be safely disabled.
	Comment out Tag mechanisms
		Tag is the only vanilla multiplayer gametype which has sufficient gameplay depth and complexity (HEYOOOOOOOOO) to require dedicated thinking in and of itself in order to manage. This thinking is irrelevant to Kart's functioning, and can be neutered easily.
d_clisrv.c
	Comment out Tag mechanisms
		See p_inter.c
d_netcmd.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		When investigating for references to NiGHTS material, I discovered that these remained untouched. In order to present a more coherent game, I have hidden the ones that serve no purpose for us.
	Comment out Tag mechanisms
		See p_inter.c
g_game.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable some team-related material
		Teams are not present in SRB2Kart at present. Obviously we'd want to reconsider for future, but it doesn't need to be run right now.
	Everything to do with setting states for starposts
		See p_inter.c
m_cheat.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		See d_netcmd.c
p_map.c
	Remove extremely low-traffic conditionals (MT_EGGSHIELD collision, for example)
		See p_inter.c
	Disable NiGHTS-related material
		See p_inter.c
p_mobj.c
	Disable P_EmeraldManager
		Power stones, despite their relevance in vanilla Match, are not in SRB2Kart's Battle. No management of nonexistent emeralds is required.
p_setup.c
	Everything to do with setting states for starposts
		See p_inter.c
p_spec.c
	Disable NiGHTS-related material
		See p_inter.c
	Everything to do with setting states for starposts
		See p_inter.c
p_telept.c
	Everything to do with setting states for starposts
		See p_inter.c
p_tick.c
	Disable some team-related material
		See g_game.c
	Disable P_EmeraldManager
		See p_mobj.c
	Do not run shields
		Shield objects are not run under the vanilla system; the Thunder Shield is a domain-specific recreation using a standard mobjthinker.
	Do not run special stages
		SRB2Kart does not have special stages.
	Comment out Tag mechanisms
		See p_inter.c
y_inter.c
	Disable some team-related material
		See g_game.c
p_user.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable 2d movement for players
		2D mode? In a kart racer? :nick:
2018-10-03 17:04:41 +01:00
TehRealSalt
a4f3d4867d Change dummysplitplayers into splitplayers, unhide it, and set it when joining and not just hosting
Silly oversight
2018-09-30 18:07:05 -04:00
TehRealSalt
4da5c165f4 Fix all of the joining ghost issues or desyncing
The answer was so obvious! Just add a XD that just calls CL_RemovePlayer! Duh!
2018-09-30 16:20:01 -04:00
TehRealSalt
56ec3d0465 Probably should do this too... 2018-09-30 12:19:26 -04:00
TehRealSalt
7d8891f057 Instead of directly using CL_RemovePlayer, do a silly loop around
Hopefully I don't have to keep this, just have to see if it works
2018-09-30 12:12:12 -04:00
TehRealSalt
d705d2a606 Temporary testing measure
set splitscreen = 3 on host or connect
2018-09-30 11:22:56 -04:00
TehRealSalt
f858b2aa11 RIP, didn't commit this 2018-09-30 11:22:31 -04:00
TehRealSalt
847924a47a Let's try what that comment suggests. 2018-09-30 11:22:10 -04:00