Commit graph

101 commits

Author SHA1 Message Date
James R
84d9aa93c7 Merge remote-tracking branch 'origin/next' into http-mserv 2020-07-11 17:41:46 -07:00
Louis-Antoine
86022608d2 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into increase-input-buffer-more 2020-06-21 01:20:39 +02:00
LJ Sonic
3203d4a62e Merge branch 'next' into 'better-download'
# Conflicts:
#   src/d_clisrv.c
2020-06-10 07:57:49 -04:00
LJ Sonic
05e8d12427 Merge branch 'next' into 'better-download'
# Conflicts:
#   src/sdl/i_system.c
#   src/win32/win_sys.c
2020-06-01 08:16:53 -04:00
LJ Sonic
aeeb6e1b02 Merge branch 'next' into 'fix-spawn-desynch'
# Conflicts:
#   src/p_map.c
2020-06-01 08:15:02 -04:00
SteelT
2739f989dc Merge branch 'fix-input-buffer' into 'next'
Allow input buffer to hold more than 64 tics

See merge request STJr/SRB2!950
2020-05-28 11:27:39 -04:00
Louis-Antoine
d886e35576 Fix potential desynch when a player spawns 2020-05-28 11:03:35 +02:00
SwitchKaze
58cac1fd73 Make colors UINT16, increase color freeslots to 1024 2020-05-23 19:35:36 -05:00
Louis-Antoine
2ae00f1edf Wait for acks before resending file fragments 2020-05-20 16:21:18 +02:00
Louis-Antoine
3fd2bb4548 Increase the length of the player input buffer even more 2020-05-18 12:35:55 +02:00
Louis-Antoine
d6aed61ded Allow input buffer to hold more than 64 tics 2020-05-18 11:34:09 +02:00
Louis-Antoine
dc527a8afb Use per-node reference tics in ExpandTics 2020-05-17 20:23:07 +02:00
Louis-Antoine
24bd03cd22 Store starttic as a raw value in PT_SERVERTICS packets
This avoids some desynch issues and is simpler to handle.
Those packets are always big anyway, so the difference is irrelevant.
2020-05-17 20:09:11 +02:00
Louis-Antoine
c221b76716 Rewrite file transfer code
This code uses a custom packet acknowledgement system,
which is more suited for file transfer and does not suffer from
the small sender window used by the default acknowledgement system
2020-05-16 22:09:00 +02:00
James R
374fed02ad Fix switching the master server 2020-05-13 17:26:34 -07:00
James R
1e64eae0c7 Make mod update, room list and server list multithreaded
This took fucking ages and it still fails sometimes in edge cases, but I
don't give a FUCK right now.
2020-05-13 17:24:27 -07:00
Louis-Antoine
ccf4bbe194 Add a minimum delay between connections 2020-04-24 14:05:15 +02:00
James R
28b1e8de1c Merge remote-tracking branch 'origin/master' into next 2020-04-18 17:20:33 -07:00
James R
76e93476de Make the PACKETVERSION rule easier 2020-04-12 17:05:18 -07:00
Louis-Antoine
46df2b9551 Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
LJ Sonic
753cdd117f Merge branch 'increase-input-buffer' into 'next'
Increase the length of the player input buffer

See merge request STJr/SRB2!835
2020-03-18 09:49:14 -04:00
LJ Sonic
21cb05b1f7 Merge branch 'fix-playernode-crash' into 'next'
Fix buffer overrun with players with no associated node

See merge request STJr/SRB2!810
2020-03-15 15:36:45 -04:00
Louis-Antoine
ad1b4066d9 Increase the length of the player input buffer 2020-03-02 15:36:28 +01:00
LJ Sonic
e0f3a5b8f5 Merge branch 'lua-io' into 'next'
Support for Lua's I/O library

See merge request STJr/SRB2!727
2020-03-01 11:12:45 -05:00
Louis-Antoine
59a53908e5 Improve join refusal handling 2020-02-22 02:17:21 +01:00
James R
2274129f57 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Louis-Antoine
a09d46a092 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into lua-io 2020-02-19 22:40:54 +01:00
Louis-Antoine
6d42930c8e Update Lua I/O support to 2.2 2020-01-22 23:08:57 +01:00
Louis-Antoine
a997683d1c Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into keep-body
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2020-01-22 03:57:22 +01:00
Louis-Antoine
c2682ac1b6 Let clients rejoin the server without losing their status
This is accomplished by simply preserving
the player's body after disconnecting.

Bodies will despawn after the number of minutes
specified by the "rejointimeout" console variable (float).
A value of 0 disables the feature completely.

Clients rejoining are identified by their IP address,
and may rejoin even if the server is full or joins are disabled,
for as long as their body remains.

From a technical standpoint, when the user disconnects,
the player they were controlling does not leave,
the underlying player_t just keeps working normally,
except it does not receive any input anymore.
When the user reconnects, they are simply "relinked"
to their player_t.

Those "soulless" players can be identified through
their "quittime" field, which is the number of tics
elapsed since the user disconnected, or zero
if still connected. "quittime" is exposed to Lua.
2020-01-22 03:05:08 +01:00
James R
b3afa91673 Remove adminplayer from SERVERINFO (PACKETVERSION 2) 2020-01-12 20:21:35 -08:00
James R
7daf24fcb8 Merge remote-tracking branch 'origin/master' into next 2020-01-12 14:17:52 -08:00
Louis-Antoine
82876c2eff Replace all instances of XD_KICK with a SendKick function 2020-01-12 19:43:04 +01:00
Louis-Antoine
ad38ba1f39 Fix node numbers being used in place of player numbers 2020-01-12 18:34:08 +01:00
James R
6d042c4d3f Replace gametype with gametypename in SERVERINFO
PACKETVERSION 1
2019-12-30 22:18:55 -08:00
James R
14fed1f644 More fine tuned versioning
You get a PACKETVERSION, for when some packets change format.

You get SRB2APPLICATION, for when you have big fucking mod.
2019-12-25 20:52:02 -08:00
Steel Titanium
a5cdb0a4b3 Update copyright date on source files 2019-12-06 13:49:42 -05:00
MascaraSnake
269b2be9f7 Merge branch 'reset-rollangle' into 'master'
Reset rollangle

See merge request STJr/SRB2Internal!494
2019-11-18 14:11:32 -05:00
Steel Titanium
b1f39e836d Better ping implementation. 2019-11-17 20:22:47 -05:00
Jaime Passos
d0a996349b Yeah, yeah... 2019-11-14 22:14:40 -03:00
MascaraSnake
a039814673 Merge branch 'set-name-on-join' into 'master'
Set the player's name as soon as they enter the game

See merge request STJr/SRB2Internal!397
2019-10-25 15:38:21 -04:00
James R
4f5d32a73f "NEWPING" might as well be the only ping 2019-10-22 19:39:26 -07:00
Louis-Antoine
209a883821 Set the player's name as soon as they enter the game 2019-10-19 17:09:18 +02:00
Monster Iestyn
7d5ebaf892 Fix sprite-related console errors that occur in netgames whenever the game attempts to synch the player's state.
Turns out the code was using P_SetMobjStateNF to "fix" the player's state ...which got things all wrong, lol.
2019-10-17 18:22:06 +01:00
Monster Iestyn
361fbf8f6a Merge branch 'mprelated-tweaks' into 'master'
Various improvements and changes to multiplayer menu

See merge request STJr/SRB2Internal!300
2019-09-08 16:45:14 -04:00
toaster
09f7dc1350 * Store gravflip (resolves #206) and destscale in starposts. (Using the same field, taking advantage of the fact that object scale will always be positive!)
* Update the function signature of P_MixUp to accomodate both it and drawangle instead of doing it outside of the function.
* If the player is spawning from the start of the stage and it's from the ceiling, be in fall frames as requested (resolves #191).
2019-09-07 22:12:47 +01:00
Steel Titanium
2fc5ee0ec3 Move some cvars out of D_ClientServerInit and save them
Ported over from Kart
2019-08-26 20:38:32 -04:00
James R
d51b516446 Show a negative number to indicate ammo penalty 2019-08-26 16:07:17 -07:00
Monster Iestyn
0b6a463cff Merge branch 'public_next'
# Conflicts:
#	src/config.h.in
#	src/d_clisrv.c
#	src/d_netcmd.c
#	src/doomdef.h
#	src/p_map.c
#	src/p_maputl.c
#	src/sdl12/macosx/Srb2mac.xcodeproj/project.pbxproj
2019-08-20 13:54:48 +01:00
James R
f69983c010 Kart discrepancies 2019-08-17 10:33:14 -07:00