Commit graph

234 commits

Author SHA1 Message Date
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
Sally Coolatta
fa5fccffc5 Implement lives system
Lose a life & restart the current race if you place below the top half. Lose all of your lives, and you get kicked to the title screen.
2020-05-13 02:14:39 -04:00
Sally Coolatta
1788d29263 Merge branch 'master' into pet-robo 2020-05-12 22:38:23 -04:00
James R
9056ca0525 Merge remote-tracking branch 'origin/master' into http-mserv 2020-05-12 17:50:32 -07:00
Sally Coolatta
15d18640de Merge remote-tracking branch 'public/master' into merge-12 2020-05-12 03:16:14 -04:00
wolfs
026acc1f7f Merge branch 'large-server-list' into 'awful-mix'
Increase MAXNETNODES so the server list can be larger

See merge request SinnamonLat/Kart-Public!15
2020-05-06 02:57:28 -04:00
Sally Coolatta
2188391d42 add botvars to resynch packet 2020-05-04 20:37:52 -04:00
James R
d1fb8f42f2 Fix switching the master server 2020-04-28 14:21:57 -07:00
James R
bad06eba17 Match MAXSERVERLIST to MAXNETNODES, increase MAXNETNODES
Each server in the server list requires a node. It's also MAXNETNODES-1 because
the first node is yourself.
2020-04-26 20:46:33 -07:00
James R
29bf51bc99 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-04-26 19:46:35 -07:00
James R
6613b19220 Merge remote-tracking branch 'lat/remove-passwords' into awful-mix-fucked 2020-04-26 01:16:27 -07:00
James R
720e08c14d Revert "Reorder join process so password is authenticated before attempting to download"
This reverts commit 7176aaf36f.
2020-04-26 01:12:40 -07:00
Louis-Antoine
ccf4bbe194 Add a minimum delay between connections 2020-04-24 14:05:15 +02:00
James R
6eae2b5243 Make the PACKETVERSION rule easier
(cherry picked from commit 4214397679c70a7910c82126783b434f0d10343e)
2020-04-20 20:22:04 -07:00
James R
6fd3d2641c Remove adminplayer from SERVERINFO (PACKETVERSION 2)
(cherry picked from commit 339ceafdf03a54cb562d70079f15587acd639619)
2020-04-20 20:22:01 -07:00
James R
2111cc2be6 More fine tuned versioning
You get a PACKETVERSION, for when some packets change format.

You get SRB2APPLICATION, for when you have big fucking mod.

(cherry picked from commit 6bd383621eee92b215f86c9c4b483934d7e60daa)
2020-04-20 19:59:42 -07:00
James R
28b1e8de1c Merge remote-tracking branch 'origin/master' into next 2020-04-18 17:20:33 -07:00
James R
7176aaf36f Reorder join process so password is authenticated before attempting to download 2020-04-13 17:30:42 -07:00
wolfs
4a264ffba9 Merge branch 'http-downloads' into 'awful-mix'
Support for http downloads

See merge request SinnamonLat/Kart-Public!1
2020-04-12 21:38:33 -04:00
James R
76e93476de Make the PACKETVERSION rule easier 2020-04-12 17:05:18 -07:00
Steel Titanium
4bfb583e91 Remove some of these superfluous ifdef checks.
Allows compatibility with non-curl enabled builds.
2020-04-12 15:07:39 -04:00
Steel Titanium
5e0eca9fe9 Support for http downloads 2020-04-07 18:22:29 -04:00
James R
0ee1628b51 Send bot status in servercfg 2020-04-01 20:10:50 -07:00
James R
2491efed20 EXTERN 2020-03-22 14:39:16 -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
Latapostrophe
b7702f5ff5 Merge branch 'antifreeze' of https://gitlab.com/fickleheart/srb2kart-mods into awful-mix 2020-03-10 21:46:12 +01:00
fickleheart
cf11f1ef6e SUPER EXPERIMENTAL FREEZE-B-GONE 2020-03-05 22:19:39 -06:00
TehRealSalt
7d32f9b6c3 Replay playback changes:
- Store level state periodically
- Load the closest usable level state when done rewinding for
  quicker resumes
- Make playback menu fade out after 5 seconds of no activity
  (but not while paused)
- Remove wrapping from replay hut (original wrapping was broken
  at some point before 1.1 and it's not necessary anyway)
- Allow holding enter on frame advance for noisy slow-mo

from fickleheart
2020-03-05 21:04:56 +01: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
James R
f9b5f71171 Merge branch 'gentlemen' into parties 2020-02-23 23:22:37 -08:00
James R
46ac563eaf Implement big bad parties (splitscreen with network players)
Use the 'invite' command to invite another player to your party.

If that player accepts, via the 'acceptinvite' command, they and any
splitscreen players on their machine will be added after the players
in your party. They may also use the 'rejectinvite' command.

Use the 'leaveparty' command to leave a party. You and any splitscreen players
on your machine will be removed from the party. Players after you will be
shifted to take your place on the splitscreen.
2020-02-23 23:20:20 -08:00
James R
352d576979 Don't turn off lagless at map start; draw LAGLESS in intermission 2020-02-23 23:07:57 -08: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