Commit graph

262 commits

Author SHA1 Message Date
Sryder13 03b194c7ea Stop players from being able to turn during any resynch, player join, or disconeccting/lag spikes. Stops us from endless drift turning or our turns being broken by lag.
Also disable the lagless camera of SRB2 as lag spikes make it look a bit wonky and jerky.
2018-01-19 02:47:10 +00:00
Monster Iestyn 0ef7aff5c0 Prevent SV_SpawnPlayer from being able to freeze the game if gametic is 0. Additionally add a sanity check to prevent the loop going on more than necessary anyway
This commit fixes -playdemo and -timedemo params for command line, allowing them to actually work again
2018-01-16 15:21:49 +00:00
TehRealSalt db09f7b3d6 Lots of changes
- Menus now have all of the Kart cvars
- Removed any cvars that aren't useful for Kart from the menu (they
still exist in the console, though)
- Removed SP and NiGHTS Mode options from the main menu
- "kartcc" is renamed "kartspeed", uses values 0-2 instead of multiples
of 50, or the terms "Relaxed", "Standard", and "Turbo"
- Many gametype options (game speed, frantic, mirror, & karma comeback)
are now changed on map load instead of instantly
- New cvar, "kartminimap", for disabling the minimap
- The maxplayers cvar now actually matches up with our 16 player limit
- Game now keeps track of matches played. Has a condition type
associated with it, as well.
- Game checks for unlocks and saves gamedata when finishing a match,
even in MP
- Removed most of the normal emblems, added a single emblem for Green
Hills. Didn't know what to do with extra emblems and such so I just left
them (FOR NOW c:<)
2018-01-15 22:31:14 -05:00
Monster Iestyn 6886a29e99 Merge branch 'master' into next 2017-12-24 20:06:33 +00:00
TehRealSalt d7227a3dcc Merge remote-tracking branch 'srb2public/master' into quads 2017-12-22 21:04:56 -05:00
TehRealSalt c38423eeb0 Merge remote-tracking branch 'srb2public/next' into quads
Update
2017-12-22 20:55:59 -05:00
TehRealSalt 349b27e0de Change splitscreen into UINT8, fix HUD slightly more 2017-12-18 20:59:04 -05:00
LJSonik 36ce6579b7
Merge branch 'master' into download-freeze-fix 2017-12-18 21:39:16 +01:00
Louis-Antoine 47481804da Merge branch 'download-freeze-fix' of https://github.com/LJSonik/SRB2 into download-freeze-fix 2017-12-18 21:38:10 +01:00
Louis-Antoine c8e9e779e7 Add a short comment to explain the newplayernum hack 2017-12-18 21:35:02 +01:00
Alam Ed Arias 57a7a3bed8 Merge branch 'master' into next 2017-12-17 22:22:57 -05:00
LJSonik 084a534f6a
Merge branch 'master' into download-freeze-fix 2017-12-17 22:48:13 +01:00
LJSonik 9c7ff6e0c3
Merge branch 'master' into resynch-fixes 2017-12-17 22:47:23 +01:00
TehRealSalt 66a9a6bdd4 Fixed local sync fail, among a bunch of other splitscreen check fixes in other files
I don't know how many of the changes in d_clisrv were really necessary,
I was just franticly trying to figure out the source of the local sync
fail
2017-12-17 14:17:07 -05:00
TehRealSalt b820d47b63 Heyyyy, this fixes controls not registering :D 2017-12-17 01:48:47 -05:00
TehRealSalt fc9d426660 More stuuuuff 2017-12-17 01:21:24 -05:00
TehRealSalt 0393e24fa6 A lot lol
The importants:
- Fixed compiling
- Combined G_BuildTiccmd for all players, no more need for a function
for each
- You can actually start 3p/4p mode
2017-12-16 22:32:43 -05:00
Louis-Antoine 4e89c03b0f Node and player isn't the same thing !#^&*%^:'\[[^!#^$4&@(é@*(&$*@#à$%@ 2017-12-12 23:08:18 +01:00
Louis-Antoine 16b8265c6e F stands for Fun. You want more Fun, don't you? 2017-12-12 22:48:08 +01:00
Wolfy fb976ab26c more quad stuff 2017-12-11 00:12:38 -06:00
Wolfy 4714e8d179 Remove hardcoded limit on admins 2017-12-07 22:45:39 -06:00
wolfy852 8de9c46b68 Merge branch 'multi-admin' into battle
# Conflicts:
#	src/k_kart.c
2017-12-03 16:32:44 -06:00
TehRealSalt 198685582f Previous EXE: The Better Edition
- Improve balloon-based items. Much more distinguished differences
between the different ranks
- Reverted Feather strafing. You can now just... properly move in the
air, if you're using a Feather or a Bounce Pad.
- Bounce pads are now stronger while using speed items.
- Fixed the long standing bug about offroad & ziplines working when
you're on FOFs above them. This is a tricky subject, so please report
any issues you may come across related to this.
- Shells should no longer travel to Mars, nor will they  when using
bounce pads. They should now do a gentle hop.
- :WIP: new MP Player Setup screen, now shows character stats. Will
later feature the list of characters in a row of icons, and a backported
2.2 color selector with toast's permission
- Renamed "Match" to "Battle" :p
- Yet MORE minor cases where kartspeed & kartweight were being read as
fixed_t when they're freakin' UINT8's, people!
2017-11-28 01:13:23 -05:00
wolfy852 37448a3e92 Merge remote-tracking branch 'remotes/origin/battle' into multi-admin 2017-11-20 21:49:42 -06:00
TehRealSalt 888515331f More lenient checkpoints
Doesn't really belong in this branch but shut up! I'm lazy :p
2017-11-20 02:00:19 -05:00
Wolfy 25599ff813 Multiple admins 2017-11-10 23:34:37 -06:00
Louis-Antoine 67aba2648c Fix download freezes (well, most of them) 2017-11-03 22:58:47 +01:00
TehRealSalt 2cbef008c8 Merge remote-tracking branch 'refs/remotes/origin/gameplay-tweaks' into battle
# Conflicts:
#	src/k_kart.c
2017-11-02 21:03:14 -04:00
Sryder13 e60b3e1b88 Move Player collision check into the regular collision checking 2017-11-01 18:40:32 +00:00
TehRealSalt 31a13e245c BATLLE MODE
AAAAAA
2017-10-22 03:06:35 -04:00
TehRealSalt e770f82ad7 Merge remote-tracking branch 'refs/remotes/origin/zarrotsu' into attack-is-back 2017-10-17 16:36:29 -04:00
TehRealSalt 5fe2f4928f Merge remote-tracking branch 'refs/remotes/srb2public/next' into zarrotsu
# Conflicts:
#	src/doomdef.h
#	src/sdl/i_main.c
#	src/sdl/i_video.c
#	src/y_inter.c
2017-10-17 15:53:34 -04:00
TehRealSalt cce7b4374a Merge remote-tracking branch 'refs/remotes/origin/zarrotsu' into attack-is-back 2017-10-17 00:45:30 -04:00
TehRealSalt 727d55b64e Merge remote-tracking branch 'refs/remotes/srb2public/public_flatsprite' into zarrotsu
# Conflicts:
#	src/doomdef.h
2017-10-17 00:40:38 -04:00
TehRealSalt 540bea911a First, minor steps to Record Attack support
To-Do:
- fix demo desync (desync is only super noticeable on slopes, but a
message pops up when the player starts moving regardless)
- fix ghosts not appearing
- replace that dumb level tally
- remove a bunch of things that made the assumption that race & record
attack would never mix (ex: "next map x doesn't support race mode, using
map y anyway" message)
2017-10-15 02:33:28 -04:00
Monster Iestyn ea372fae53 Merge branch 'master' into next 2017-09-29 17:15:57 +01:00
Monster Iestyn c90ddbca36 Merge branch 'makefile-ports-tweaks-cleanup-etc' into 'master'
Makefile ports tweaks cleanup etc

See merge request !211
2017-09-28 17:31:33 -04:00
Alam Ed Arias ec125628ab Merge branch 'master' into next 2017-09-28 10:16:35 -04:00
Alam Ed Arias 2ccd397d11 Build: kill GCC 7's implicit-fallthrough warning 2017-09-28 09:39:47 -04:00
Monster Iestyn 900bab9b13 Fix includes for SDL 1.2-only ports' files 2017-09-14 21:15:38 +01:00
Monster Iestyn 9c4e2eeeef Merge branch 'next' into netcode-fixes-the-sequel 2017-08-23 19:17:25 +01:00
ZTsukei a8a4f06aa3 Corrected type masking in d_clisrv.c 2017-08-10 17:37:31 -04:00
ZTsukei 80990da828 v1.3.18
-------
Fixed really poorly done netcode stuff. This should fix the kartstuff desyncing, maybe collision stuff too?
Fixed Megashroom's growth animation lasting too long.
2017-08-09 18:14:20 -04:00
Monster Iestyn f0ffd691f4 Merge branch 'master' into next 2017-07-07 22:47:34 +01:00
Monster Iestyn 4752109233 Some more tweaks of my own:
*Add CONS_Printf messages for !netgame checks
*Arg count is checked first regardless of netgame status for both kick and ban, < 2 is checked instead of == 1 just in case these weren't called from console for some stupid reason?
*Moved Command_Kick's buffer vars to within the code that actually does kicking stuff
2017-07-07 22:40:00 +01:00
toasterbabe 9a1e1180ff Also account for bans, pff. 2017-07-05 16:29:21 +01:00
toasterbabe 60e21381ab Don't kick Tails!
Also, a movement for the WRITESINT8 to prevent modification to buf if the function bails early.
2017-07-05 16:20:23 +01:00
ZTsukei 3cdcaa6f2f G_PlayerReborn desync fix, maybe? 2017-06-26 21:41:05 -04:00
Monster Iestyn 02c098574c ah, turns out the TIC n debugfile print is a remnant of when Doom Legacy printed the consistancy return value... which we'll do here now too, in that case 2017-06-10 17:09:08 +01:00
Monster Iestyn b9828f78e8 Fix stupid lack of newline with this message 2017-06-09 23:22:27 +01:00
Monster Iestyn 2e42c9621c Eck, potted another node/player confusion for clients reciving PT_PING 2017-06-01 20:46:44 +01:00
Monster Iestyn fe15305df0 Merge the two NEWPING parts of NetUpdate into one block 2017-06-01 20:43:24 +01:00
Monster Iestyn 3d86e7135d Fix confusion between nodes and players in ping updating code and PT_PING packet sending code 2017-06-01 19:01:57 +01:00
Monster Iestyn 806b101984 Merge branch 'master' into next 2017-05-27 20:10:48 +01:00
Monster Iestyn d20efa5a74 Entirely ignore PT_ASKINFOVIAMS packets, since it turns out it's not even sent by the MS anyway 2017-05-27 19:06:46 +01:00
Monster Iestyn 11d57fba1b Merge branch 'master' into next 2017-05-26 23:02:06 +01:00
Monster Iestyn ab5835cd3b Remove cruft from my initial days of fumbling with this branch
textcmd[0] for PT_NODETIMEOUT can't hold anything < 0 anyway, and you'd probably have to really try to get >= MAXNETNODES
2017-05-26 15:26:00 +01:00
Monster Iestyn aecc97ded3 PT_REQUESTFILE checking:
* if you sent it to a client rather than the server, game over, your connection is closed
* if files that don't exist or are too large are requested are listed, game over, your connection is closed (they should have been checked on YOUR side beforehand, silly)
* if the server has downloading disabled anyway, ...yeah, you get the idea

Don't worry, I made sure Got_RequestFilePak cleaned up the full file request list for the node in case of failure
2017-05-26 13:39:54 +01:00
Monster Iestyn a23e9bc32b Fix size_t printing 2017-05-25 18:10:20 +01:00
toasterbabe 47e171250f * Prevent joining a server if you have too many files loaded to add the remainder.
* Made the check in Got_RequestAddfilecmd more comprehensive, since I might as well. Just something to tweak a little later in internal.
2017-05-25 16:06:39 +01:00
Monster Iestyn c92aaa74a4 I think PT_CLIENT2MIS was meant to do this too, probably 2017-05-23 18:46:34 +01:00
Monster Iestyn 7147e0fcaf Improve previous PT_TEXTCMD/PT_TEXTCMD2 check, add another one to ignore zero size textcmds! 2017-05-23 17:35:32 +01:00
Monster Iestyn 0b0b738a6f Don't allow non-servers to receive PT_RESYNCHGET 2017-05-23 16:34:56 +01:00
Monster Iestyn ff1cc07a1d Implemented toaster's suggestion to make a macro here 2017-05-23 16:29:09 +01:00
Monster Iestyn 9e3bdc5ee2 Prevent bad PT_TEXTCMD/PT_TEXTCMD2 textcmd[0] sizes? 2017-05-23 16:13:42 +01:00
Monster Iestyn fdfd6e1c0b Whoops don't do that for PT_REQUESTFILE 2017-05-22 22:20:08 +01:00
Monster Iestyn c70839334e Added a bunch of missing checks to prevent non-server players from sending other non-server players stuff 2017-05-22 22:17:51 +01:00
Monster Iestyn 3784d765e4 Remove extra whitespace I added 2017-05-22 20:47:38 +01:00
Monster Iestyn 28444c12dd Some more things I overlooked in this fix 2017-05-22 16:54:39 +01:00
Monster Iestyn 247ed56e17 Don't allow nonsense PT_ASKINFOVIAMS packets, nor any at all if offline 2017-05-22 16:44:50 +01:00
Monster Iestyn 5a1fc6098e Attempts to prevent stupid stuff from happening 2017-05-19 11:25:28 +01:00
ZTsukei cfdb127630 v1.3.04 - The Bouncy One
--------
Hardcoded Collide.lua.
Added player boolean array "Collide", used by Collide.lua.
Walls are now bouncy by default again, like they were in 1.09.
Buffed Orange Drift sparks, the boost now lasts 60 frames up from 40.
2017-04-17 13:20:52 -04:00
Sryder 1970f4f280 kartspeed and kartweight not being set from a resynch 2017-03-06 16:05:02 +00:00
ZTsukei 5d0b9ef551 Friction updated. Added KARTSTUFF to lua. Added ->kartstuff to network syncing stuff (surprised it even worked before now???), also maybe items correctly reset at the end of level now. 2017-02-27 17:55:26 -05:00
ZTsukei f50ecc0dcd Most items work (netgame needs testing), will do fireballs later. 2017-02-26 17:38:24 -05:00
Monster Iestyn 6efb15c6e8 Fix Ban_Add usage for NONET 2017-02-20 21:36:05 +00:00
Monster Iestyn 7424df8180 Make sure I_Ban and Ban_Add are only used by the server
Also make sure the server actually uses Ban_Add if an admin banned someone
2017-02-20 19:58:29 +00:00
ZTsukei 493436dc1a Adjusted bonustime, Goldshrooms work, added intermediate boostspeed for between Megashroom size 2017-02-19 15:54:23 -05:00
Sryder 68d439a783 Merge branch 'upstream/next' into zarrotsu_vanillamerge
# Conflicts:
#	src/Makefile
#	src/doomdef.h
#	src/hardware/hw_main.c
#	src/p_mobj.c
#	src/p_user.c
#	src/r_segs.c
#	src/sdl/i_video.c
#	src/win32/win_sys.c
2017-02-17 20:14:55 +00:00
Monster Iestyn 8a421a05d9 admin bans with custom ban messages should now be recognised by the server properly 2017-02-10 20:31:58 +00:00
ZTsukei 580f909c6c Added Accelcode, start boosting, reverted drifting, etc. 2017-02-07 17:19:58 -05:00
Monster Iestyn ba3f001a09 I dun goofed, THIS is why FuriousFox disappears like that 2017-01-15 22:24:38 +00:00
Monster Iestyn 691d368434 if this is what caused resynching to randomly turn some people spectators then welp 2017-01-15 18:36:38 +00:00
Monster Iestyn c0fb3fce73 Merge branch 'master' into next 2017-01-14 19:23:31 +00:00
Louis-Antoine 8298ed3559 DEBUGMODE -> _DEBUG =) 2017-01-14 19:24:22 +01:00
Louis-Antoine e9cb6d0331 -Added a timeout for game state downloading to prevent definitive join freezes in some cases. The timeout has a minimum value of "jointimeout" and gets higher as the game state grows in size
-If the server tries to kick a joiner who is downloading the game state, they will get a timeout instead, because a regular kick would only happen once the game state has been downloaded
-Added a timeout for player ticcmd packets, again to prevent freezes to happen in some cases
-File/game state downloading is now faster, the speed is controlled by the "downloadspeed" cvar, in packets per tic
-The reason is now properly shown when the server refuses connection
-Changed the default values of "nettimeout" to 10 seconds (previously 15) and "maxsend" to 4 MB (previously 1)
-Added a "noticedownload" cvar that displays a message in the server console when someone is downloading a file
2017-01-13 20:53:52 +01:00
Monster Iestyn f2a58a74ef Stupid me 2017-01-03 22:48:06 +00:00
Monster Iestyn 4d8ca41e65 Fix player colors mysteriously turning red if a resynch occurs outside of CTF/Team Match. Not technically a $$$.sav fix, but still netplay related of course
At least, I assume this is how it's happening for some, I haven't been able to get the full info since WHERE IS EVERYBODY?
2017-01-03 22:43:46 +00:00
Louis-Antoine 04747ff79e Fixed a memory leak on client side 2017-01-02 20:02:49 +01:00
Louis-Antoine 478da43660 Cooked another cookie 2017-01-01 23:52:27 +01:00
Louis-Antoine 4373afcdb2 Cooked a cookie 2017-01-01 23:27:06 +01:00
Louis-Antoine b347b818e7 -Fixed broken net commands, thus fixing (or at least greatly improving) chat/commands/joins/leaves and possibly other annoying bugs
-Updated packet name list so the debug file no longer shows garbage packet names
-Replaced byte values with actual net command names in the debug file. Only the first net command in a packet will be shown though
-Added a MOBJCONSISTANCY define that makes the game takes all revelant mobjs to be counted in the synch seed
-Added a PACKETDROP define that adds two console commands "drop" and "droprate" to simulate bad internet by dropping packets
-Added/changed comments here in there in the netcode
-Fixed a minor error that would ignore one of the urgent ack slots
-Added a space between the map name and "zone" for the messages shown in a joiner's console
2017-01-01 23:07:34 +01:00
Louis-Antoine d4f153d3ca Random changes in the netcode lol 2016-12-31 19:26:33 +01:00
Prisima the Fox 6733152651 No more magic numbers 2016-10-21 16:16:54 -04:00
Prisima the Fox 89e8766b77 "PlayerQuit" hook 2016-10-20 22:30:11 -04:00
ZTsukei e4a970f894 Starting from scratch. SRB2 v2.1.15 2016-07-06 00:10:19 -04:00
Inuyasha f07585191b copyright dates/statements updated and such
(no actual SLOC changes)
2016-05-17 17:42:11 -07:00
Monster Iestyn be7b866e4f resynch_pak changes
* add skidtime, which we forgot before 2.1 release apparently
* change tics from INT16 to INT32
* change eflags from UINT8 to UINT16
* change actionspd/mindash/maxdash from INT32 to fixed_t
2016-04-16 18:40:14 +01:00
Inuyasha 3117a6a16e Splitscreen fixes
initialize flipcam2
player 2 gets game over music now.
restore the other player's music when the dead player is done sulking about their game over
2016-04-06 18:28:43 -07:00
ZTsukei ba18d968e5 Added vars to d_clisrv, renamed autoexec.cfg, added menu variables to d_netcmd.h, added powers to dehacked.c for LUA, and made sure things can actually compile correctly as-is (squished two errors). 2016-02-21 12:40:01 -05:00
Alam Ed Arias 73b3287b19 SRB2 2.1.14 release 2015-01-01 14:50:31 -05:00
Alam Ed Arias 404b5f666c SRB2 2.1.12 release 2014-11-11 19:55:07 -05:00
Alam Ed Arias 7cb77075d1 SRB2 2.1.11 release 2014-08-26 23:56:30 -04:00
Alam Ed Arias d6c29e19ab SRB2 2.1.10 release 2014-08-05 19:59:40 -04:00
Alam Ed Arias c028c83235 SRB2 2.1.9 release 2014-08-03 23:49:33 -04:00
Alam Ed Arias 32de698f5e SRB2 2.1.6 release 2014-03-24 22:17:59 -04:00
Alam Ed Arias 15bd266cac SRB2 2.1.5 release 2014-03-23 12:00:29 -04:00
Alam Ed Arias ed72bd8fa1 SRB2 2.1.4 release 2014-03-21 19:21:06 +00:00
Alam Ed Arias 2fed5d1270 SRB2 2.1.3 release 2014-03-18 13:56:54 -04:00
Ronald Kinard 15b177ebbb Fix state compression for 64-bit hosts 2014-03-17 13:23:16 -05:00
Alam Ed Arias a03da73115 SRB2 2.1.2 release 2014-03-17 08:13:16 -04:00
Alam Ed Arias b93cb1b65a SRB2 2.1 release 2014-03-15 13:11:35 -04:00