Commit graph

6206 commits

Author SHA1 Message Date
James R
bb97e0805e Fuck magic numbers; COM_ flags for Lua commands! 2020-11-05 20:16:26 -08:00
James R
7890c9b83a Let access spectator mobj 2020-11-05 20:05:04 -08:00
James R
9e586c348c Allow accessing a player even if there is no mobj
The worst part is you could've just saved the player userdata and accessed it
later anyway while player.mo is nil.
2020-11-05 20:04:14 -08:00
James R
29d8e44055 Always allow access to the serverplayer 2020-11-05 20:00:21 -08:00
Sally Coolatta
1d8608c00d Merge branch 'master' into next 2020-11-05 16:15:42 -05:00
Sally Coolatta
8726bb70ac Minor whitespace :p 2020-11-05 16:15:09 -05:00
Sally Coolatta
513652c9fa Actually, let's avoid a future bruh moment 2020-11-03 13:23:41 -05:00
Sally Coolatta
7333177677 Remove strike for finishing normally 2020-11-03 13:23:10 -05:00
Sal
a5ff1bd99d Merge branch 'download-wrong-checksum' into 'master'
Download files if they are found with wrong checksum

See merge request KartKrew/Kart-Public!238
2020-11-03 13:05:26 -05:00
Sal
583eede2b8 Merge branch 'mute-music' into 'master'
Mute music instead of pausing if lose focus

See merge request KartKrew/Kart-Public!235
2020-11-03 13:05:06 -05:00
Sal
a8b37c6ec3 Merge branch 'http-downloads-auth' into 'master'
Command for http downloads with basic auth

See merge request KartKrew/Kart-Public!233
2020-11-03 13:04:43 -05:00
Sal
73d582ba85 Merge branch 'instant-askjoin' into 'master'
Fix servers having a long delay before starting

See merge request KartKrew/Kart-Public!236
2020-11-03 13:04:10 -05:00
JugadorXEI
2714940be9 Polyobject and SPB 'lastlook' interaction fix 2020-11-03 16:41:00 +01:00
James R
dc86206c23 Count any files not already loaded toward filestoload? 2020-10-07 16:09:21 -07:00
James R
d96f93f8a9 Download files that were found with wrong checksum 2020-10-07 16:06:49 -07:00
James R
dc9466a7f4 Add STUN to CMakeLists.txt 2020-09-30 21:15:49 -07:00
James R
88c98970eb Reset asksent before CL_ASKJOIN
It gets pushed forward for ASKINFO.
2020-09-30 12:42:53 -07:00
James R
81a7103b73 Use rand_s for Windoze
unsigned int is always 4 bytes on windows btw, so this should align properly.
2020-09-30 12:22:09 -07:00
James R
b8bfe9b83a Use STUN instead of curl to fetch the public IP address for Discord
RFC 5389 is a standard protocol that can be used for this instead of ip4.me.

I may have gone overboard on the CSPRNG... It was fun though.
2020-09-30 03:57:50 -07:00
James R
a39762a8fd Mute music instead of pausing if lose focus 2020-09-28 11:58:24 -07:00
James R
e2749f8fdc Include d_main.h 2020-09-25 11:25:15 -07:00
James R
b70d765144 Prepend srb2home to luafiles 2020-09-24 14:43:21 -07:00
Sal
680b8e3477 Merge branch 'engine-sounds-fix' into 'master'
Fix engine sound volume

See merge request KartKrew/Kart-Public!231
2020-09-20 17:07:31 -04:00
Sally Coolatta
7b6d527bd4 Griefing timer
Spectates/kicks players who aren't making progress, does it even faster if they're going backwards.
2020-09-20 17:03:14 -04:00
Sal
1906bf3817 Merge branch 'link-with-exchndl' into 'master'
Link with exchndl, instead of dynamically loading it.

See merge request KartKrew/Kart-Public!230
2020-09-19 15:42:00 -04:00
James R
0523114f56 Kill some nonsense 2020-09-18 13:11:49 -07:00
Sally Coolatta
eb0a3c9da3 Make it a bit louder 2020-09-18 01:10:59 -04:00
Sally Coolatta
e81a5ee0ca Spectator re-entry cooldown 2020-09-18 00:58:05 -04:00
Sally Coolatta
21422703f5 Fix engine sounds' dampening to a sane value, now that the bug preventing it from working properly was fixed.
You can hear engines in 16P again, but it's not as obnoxiously loud as it was before. Additionally, I commented this function better.
2020-09-17 18:58:44 -04:00
Steel Titanium
13a34e2545 Link with exchndl, instead of dynamically loading it.
It caused problems with crash reports not being made if the current working directory gets changed. Not even recommended anymore per the drmingw readme
https://github.com/jrfonseca/drmingw#exchndl
2020-09-17 15:59:02 -04:00
James R
fbfc305e47 Disable DRPC if dedicated 2020-09-15 19:56:08 -07:00
Sal
85726d7a55 Merge branch 'advertisement-for-rpc' into 'master'
Move master server presence updates to Advertise_OnChange

See merge request KartKrew/Kart-Public!227
2020-09-15 16:22:32 -04:00
Steel Titanium
9b180acdd7 Make "divide by zero" or "modulo by zero" errors show the file and line of where it happened
Shouldn't break scripts as it stops execution as soon it happens, like it already does.
2020-09-14 23:01:47 -04:00
Sally Coolatta
5181ddd67c Move master server presence updates to Advertise_OnChange
This will probably call DRPC_UpdatePresence slightly less?
2020-09-14 16:34:17 -04:00
Sally Coolatta
e8c91b6727 Rename the "small" variable to "isSmall"
Reported by MK, apparently "small" is considered a data type for some systems. After a little bit of research, apparently it can happen when including <windows.h>... whatever, just rename the variable :p
2020-09-14 12:47:55 -04:00
James R
6f8d246db8 Merge branch 'master' into next 2020-09-13 14:39:01 -07:00
James R
5755bab29a Makefile: add WINDOWSHELL=1 for the Windows detect
(cherry picked from commit 6f51c68c7248d616ad16f66b72cfcc36b7c952f5)
2020-09-13 14:25:08 -07:00
James R
1dca1a3f47 Makefile: automatically detect system to compile for, if no system was specified
This should work for mingw and linux so far.

(cherry picked from commit f92026f98b168f4556d50d3dde403ab6bfd97ff3)
2020-09-13 14:25:08 -07:00
James R
00ff94caa2 Makefile: Make WARNINGMODE the default, optionally disable with RELAXWARNINGS
(cherry picked from commit 9495e6354fed1028c6fc502cc9d946cfdd0b7896)
2020-09-13 14:25:07 -07:00
James R
8c7f9f85fe Is it GCC is it gcc, is it????
(cherry picked from commit ef2bff6383b16385f9874e1c9c6b66c9df794f5b)
2020-09-13 14:24:49 -07:00
James R
655c694bbc Update LATEST_GCC_VERSION too
(cherry picked from commit 4059c6a654a5785199cf0d6dd998bf113b57cd0f)
2020-09-13 14:22:46 -07:00
James R
6c7f95e749 Add missing GCC version flags to the Makefile
(cherry picked from commit 00943e9e82ff46a97a2bc1e3179ce47e53345cc3)
2020-09-13 14:22:45 -07:00
James R
61f35c91a7 It's not always GCC, but it probably is gcc (I hope)
(cherry picked from commit 4e1d54c3322c17276e532ab4d9e875a8c8ebc399)
2020-09-13 14:12:36 -07:00
James R
5ec649c852 Forgot a comma
(cherry picked from commit 193c45aa2f555b56f548f70e7fa0d74a1ce4e412)
2020-09-13 14:12:36 -07:00
James R
6de79f1377 Makefile: Move the PREFIX stuff up so version detection can take advantage of
(cherry picked from commit 489bb81d0065299ffea09b20cfa06dbbedcf247a)
2020-09-13 14:12:36 -07:00
James R
deb7bf35b7 Detect the compiler version and set the correct GCC flag
If the version is not supported by the Makefile, the flag for the latest
version supported is set instead.

(cherry picked from commit bf90fbb91f28af30ff79523681e7f73e60121535)
2020-09-13 14:12:36 -07:00
James R
c93d259b77 Make cv_advertise no by default, do not save 2020-09-12 18:54:44 -07:00
James R
0cc38dcbc8 Make cv_advertise NETVAR 2020-09-12 18:36:25 -07:00
James R
0f19b1357c Merge branch 'master-server-2' into 'next'
Master Server 2

See merge request KartKrew/Kart-Public!224
2020-09-12 20:25:42 -04:00
James R
8a687941fb Fix master server token 2020-09-12 10:32:14 -07:00
James R
6609b90457 Update update alert message 2020-09-11 20:12:31 -07:00
James R
9d62bb947f Set masterserver to ms.kartkrew.org 2020-09-11 17:39:01 -07:00
James R
4e24ad125c Strip trailing slashes from masterserver address 2020-09-11 17:33:46 -07:00
Sal
b9310c0563 Merge branch 'battle-item-balance' into 'next'
Battle item balance

See merge request KartKrew/Kart-Public!222
2020-09-11 12:21:06 -04:00
Sal
b4c3cd5e1b Merge branch 'stupid-sound-volume' into 'next'
Apply volume to sounds that have an origin

See merge request KartKrew/Kart-Public!223
2020-09-11 12:17:19 -04:00
Sal
460c627274 Merge branch 'name-change-spam' into 'next'
Don't let players change their name more than five times per minute

See merge request KartKrew/Kart-Public!221
2020-09-11 12:17:00 -04:00
Sally Coolatta
9ccaaafabd 6 -> 2, void the now unused parameter 2020-09-11 12:14:08 -04:00
James R
11ddcfa9a1 int -> INT32 2020-09-11 09:00:18 -07:00
Sal
dc91934d0a Merge branch 'save-renderer' into 'next'
Save renderer to file

See merge request KartKrew/Kart-Public!220
2020-09-11 11:59:51 -04:00
James R
5077b1ffef When changing masterserver_update_rate, only update if elapsed time within the new rate 2020-09-11 06:50:31 -07:00
James R
93d3808307 Register/unregister server by changing cv_advertise 2020-09-11 06:49:41 -07:00
James R
901ea3c18b Basically, update master server code to v2
Removes rooms, replaced with cv_advertise and "Advertise" on the host menu.

According to the new API, SRB2APPLICATION is sent instead of MODID. A contact
field was added, but there is no means of accessing it or setting it.

As a slight change, the server list will be populated even on an outdated
version of the game. (The new API was designed with this in mind.) The update
alert is still presented first of course.
2020-09-11 06:11:41 -07:00
James R
22177753d2 Apply volume to sounds with origin too
Previously sounds with an origin would always start at max volume. This is
because the distance calculation adjusts the volume, and that volume needs to
be updated every tic as distance changes. Storing the original volume works.
2020-09-08 22:40:42 -07:00
Sally Coolatta
2f2e2200f4 Redo Battle item balance
- Far more inclined to give you Orbinaut, Jawz, Invincibility, and Grow. Far less inclined to give you Bananas or Sneakers.
- Item odds no longer scale with bumper count differences.
2020-09-02 02:53:06 -04:00
James R
17f75903b0 Don't let players change their name more than five times per minute 2020-08-31 20:08:22 -07:00
James R
48b018b2b4 Oops :v 2020-08-31 19:34:43 -07:00
James R
83c2a7d178 Save chosen renderer to file, use on startup if no -software or -opengl parameter 2020-08-31 19:29:09 -07:00
James R
3e6b45abe9 Just SetCurrentDirectory to the exe's folder on windoze 2020-08-31 01:23:56 -07:00
Sally Coolatta
328d6d9a36 Increase cipher length 2020-08-31 00:25:28 -04:00
Sally Coolatta
1c47841487 Remove default dirs on Windows
Cause more issues than fixes. Still around for Linux.
2020-08-31 00:06:47 -04:00
Sally Coolatta
da0d0e41df Expand IP_SIZE 2020-08-30 23:41:27 -04:00
Sally Coolatta
651d25a516 Move to D_RegisterServerCommands 2020-08-30 23:35:41 -04:00
Sally Coolatta
85884ad4e2 Bruh, lowercase 2020-08-30 23:31:54 -04:00
Sally Coolatta
6ca451da45 Wrong file 2020-08-30 23:26:00 -04:00
Sally Coolatta
7dea9d28b9 Dedicated servers can change discordinvites without needing RPC support 2020-08-30 23:20:06 -04:00
James R
6d2c7f4ae7 NO_DISCORDRPC to disable rich presence on Windows 2020-08-30 19:11:30 -07:00
James R
7ab1c4a2df Update versions to 1.3 2020-08-30 19:06:31 -07:00
James R
0371a113ef Update patch.kart asset hash 2020-08-30 19:02:31 -07:00
James R
5e9c197f8a Merge remote-tracking branch 'origin/master' into next 2020-08-30 19:01:04 -07:00
Sal
8acc2b6f3c Merge branch 'world-tour' into 'next'
Flush random map pool after all but 3 are played

See merge request KartKrew/Kart-Public!216
2020-08-30 21:49:20 -04:00
Sal
b0f89a5dba Merge branch 'easy-colors' into 'master'
Caret color codes in server name

See merge request KartKrew/Kart-Public!218
2020-08-30 21:49:03 -04:00
Sal
1aca163d12 Merge branch 'discord-rpc-support' into 'next'
Discord Rich Presence

See merge request KartKrew/Kart-Public!207
2020-08-30 21:48:44 -04:00
Sally Coolatta
29f156aac2 Use ENTER and ESC
A and B are v2 terminology
2020-08-30 21:42:04 -04:00
James R
bca656e4ac Merge branch 'master' into next 2020-08-29 18:22:19 -07:00
James R
daf6e66268 Fix stupid NONET
(cherry picked from commit 679bfa21edec6b652def93082da5586e6c755678)
2020-08-29 18:19:39 -07:00
James R
95a026c98d C90?
(cherry picked from commit 1f38db46298181d117432e12e88b326a92b4b785)
2020-08-29 18:19:15 -07:00
James R
3f842937a8 Merge remote-tracking branch 'origin/master' into next 2020-08-29 11:26:52 -07:00
Sally Coolatta
82bfdf9ccc Add join/leave notification sounds 2020-08-27 20:10:25 -04:00
Sally Coolatta
17318ceec7 This should be set for server too!! 2020-08-27 19:36:37 -04:00
Sally Coolatta
51dce9707f Attach initial join discord info to servercfg, so that we don't have a pause from needing to also send XD_DISCORD
XD_DISCORD is now reserved for when the options are changed mid-game
2020-08-27 19:14:45 -04:00
Sally Coolatta
c165b0761c Misc changes to how the program runs
- Call DRPC_Init at the end of D_SRB2Main instead of in the middle
- Call Discord_RunCallbacks in D_SRB2Loop instead of G_Ticker
- Fix errorcount nums in I_Error, an old leftover from when Discord_Shutdown was not handled by I_AddExitFunction
2020-08-27 18:50:36 -04:00
James R
54c3aed86c Convert caret color codes to SRB2 color codes 2020-08-27 15:44:06 -07:00
James R
f802e9fbcb Convert from caret colors when sending SERVERINFO 2020-08-27 15:43:20 -07:00
Steel Titanium
35122d3a22 Expose demo.playback to Lua 2020-08-27 14:58:46 -04:00
TehRealSalt
86754cf820 Flush random map pool after all but 3 are played 2020-08-27 14:32:44 -04:00
James R
4c816f4059 Say DEFAULTDIR not .srb2kart 2020-08-26 23:37:52 -07:00
James R
6e3facf8f4 Check DEFAULTDIR for srb2.srb after cwd 2020-08-26 20:20:40 -07:00
Sally Coolatta
cb5ab33a93 Merge branch 'next' into discord-rpc-support 2020-08-26 12:56:58 -04:00
Sally Coolatta
ee1ea21336 Merge branch 'master' into next 2020-08-26 12:56:38 -04:00
Sal
f87b883ba5 Merge branch 'various-compiling-fixes-2' into 'master'
Fix some compile flags

See merge request KartKrew/Kart-Public!213
2020-08-26 09:58:35 -04:00
ThatAwesomeGuy173
27b72ccbf5 Replace 'ignoring skin' debug print with a proper console warning 2020-08-25 23:13:58 -06:00
Sal
34b6998b2e Merge branch 'various-compiling-fixes' into 'next'
Various compiling fixes

See merge request KartKrew/Kart-Public!212
2020-08-25 18:36:51 -04:00
James R
04d774c765 Fix NOHW compiling 2020-08-24 18:06:00 -07:00
James R
3437b0690a Kill NOHS 2020-08-24 17:58:39 -07:00
James R
16fc87edcf Fix NOMIXER compiling 2020-08-24 17:55:42 -07:00
James R
fbde926497 Fix NOPNG compiling 2020-08-24 17:52:55 -07:00
James R
0d57ba1d02 Fix NOGME compiling 2020-08-24 17:51:01 -07:00
Sal
bea6b6a9d2 Merge branch 'fix-asktime-really' into 'next'
Avoid underflows on connection screen timer (fixes hosting servers)

See merge request KartKrew/Kart-Public!211
2020-08-24 16:09:33 -04:00
Steel Titanium
c6164a1947 Initialize this variable 2020-08-24 01:25:34 -04:00
Steel Titanium
41c742a699 Hopefully the last time... 2020-08-24 01:18:38 -04:00
Steel Titanium
87d2ad0c23 Remind me why NONET exists? 2020-08-24 01:13:59 -04:00
Steel Titanium
04b7051141 This is just stupid 2020-08-24 01:06:10 -04:00
Steel Titanium
84bab3fc9f Turns out compiling with the internal version of curl was broken on CMake the entire time 🙃 2020-08-24 01:00:28 -04:00
Steel Titanium
d4006d00c3 Screw you C90 2020-08-24 00:58:14 -04:00
Steel Titanium
509c57a8d6 Haha NONET... 2020-08-24 00:56:53 -04:00
Steel Titanium
e58c9ac410 It's discord-rpc, not libgme 2020-08-23 17:45:31 -04:00
Steel Titanium
d9cbb69327 Better CMake support
No idea if it compiles on Mac, it does on Linux though, at least for me.
2020-08-23 16:15:33 -04:00
Sally Coolatta
585cb1cfe3 Finish DEVELOP mode functionality 2020-08-23 07:15:33 -04:00
Sally Coolatta
720eced665 Attempt to improve discord-rpc checking in CMake
Haven't ever gotten CMake to compile SRB2, so I'm unable to really check if this works
2020-08-23 06:45:35 -04:00
Sally Coolatta
175fa43c90 Update win 32 bit libraries, implement win 64 bit libraries 2020-08-23 05:47:55 -04:00
Sally Coolatta
e2f3e76db8 Merge branch 'next' into discord-rpc-support 2020-08-23 05:32:32 -04:00
Sal
88e7b6198d Merge branch 'lineriding-b-gone' into 'next'
Kill offroad line riding

See merge request KartKrew/Kart-Public!199
2020-08-23 05:09:55 -04:00
Sally Coolatta
7d380c326b Merge branch 'master' into next 2020-08-23 04:44:27 -04:00
Sally Coolatta
3ce6b8a54f Fix version string 2020-08-23 04:44:05 -04:00
Sal
d0629a9c13 Merge branch 'fix-ogl-timedemo' into 'master'
Fix timedemo in OpenGL mode

See merge request KartKrew/Kart-Public!209
2020-08-23 04:38:57 -04:00
Sal
3f16ef2eaa Merge branch 'misc-optimizations' into 'master'
Remove ESLOPE POLYOBJECTS POLYOBJECTS_PLANES #ifdefs (backport srb2 2.2)

See merge request KartKrew/Kart-Public!204
2020-08-23 04:38:05 -04:00
James R
5daaef7e87 Avoid underflow hacks completely with asktime 2020-08-22 18:38:20 -07:00
James R
89ba08a376 Make join requests options on pause menu selectable even if you're already in the menu 2020-08-22 17:16:49 -07:00
James R
805fb01df9 Skip XD_DISCORD payload in non Discord builds 2020-08-22 16:26:15 -07:00
Hannu Hanhi
4210352be9 Fix timedemo in OpenGL mode 2020-08-23 00:10:50 +03:00
Hannu Hanhi
5c13727aac Fix replay recording memory leak 2020-08-22 22:04:45 +03:00
Sally Coolatta
084756ec72 Fix XOR not working 2020-08-22 09:46:25 -04:00
Sally Coolatta
5de27be169 Merge remote-tracking branch 'public/next' into discord-rpc-support 2020-08-22 07:28:21 -04:00
Sally Coolatta
e5238d095f Remove timer variable
Doesn't feel necessary to me anymore, especially with how the menu works
2020-08-22 07:25:47 -04:00
Sally Coolatta
f61e3a77bd Ask to join is a menu option, rather than trying to replace your menu temporarily. 2020-08-22 07:16:52 -04:00
lachwright
32f2ed4a53 Correct misplaced MT_ARIDTOAD listing 2020-08-22 17:35:31 +08:00
Sally Coolatta
6f9025a14d Merge branch 'discord-rpc-support' of https://git.magicalgirl.moe/KartKrew/Kart into discord-rpc-support 2020-08-22 05:03:43 -04:00
Sally Coolatta
3d5d5ad8b5 Always have XD_DISCORD defined, so that people compiling without Discord support can connect to servers that do. 2020-08-22 05:03:08 -04:00
lachwright
e01c7aef32 Compile m_menu.c without HAVE_DISCORDRPC 2020-08-22 16:58:59 +08:00
Sally Coolatta
3c128660b4 Add envelope icon, add sounds 2020-08-22 04:54:08 -04:00
Sally Coolatta
98f586a2f9 Menu is pretty now 2020-08-22 03:52:07 -04:00
Sally Coolatta
571c670670 Add some options, maxplayer/allownewplayer dont need to be netvars anymore 2020-08-22 01:53:27 -04:00
Sally Coolatta
8ff62cdc7f Base xor off of inital seed 2020-08-22 00:11:33 -04:00
Sally Coolatta
e0d0a3a74e Ignore any duplicate requests
You will still get a message for them, so if they're being annoying you will want to block them anyway, but at least it won't clog up the game.
2020-08-22 00:01:56 -04:00
Sally Coolatta
4d8c65bb73 Don't reset menu in drawing function 2020-08-21 04:17:36 -04:00
Sally Coolatta
983a978c12 Merge branch 'discord-rpc-support' of https://git.magicalgirl.moe/KartKrew/Kart into discord-rpc-support 2020-08-21 04:14:36 -04:00
Sally Coolatta
339be6f90e Invite menu started
Functions! Is not pretty yet!
2020-08-21 04:14:33 -04:00
James R
0b07d0ed6f curl_global_cleanup 2020-08-20 22:36:41 -07:00
Sally Coolatta
7b1e14d017 Don't show map image for title screen demos 2020-08-21 01:18:40 -04:00
Sally Coolatta
6a86d86828 XOR IP addresses before sending them to Discord
Not complex because we aren't sending anything that isn't easily accessible via the Master Server anyway, just means we aren't sending plain-text IPs to Discord. Might be improved by basing the XOR key on other values (base RNG, maybe version) so that it's not like *right* there
2020-08-21 01:16:11 -04:00
Sal
0ca9f8f07d Merge branch 'conenction-screen-improvements' into 'next'
Connection screen improvements

See merge request KartKrew/Kart-Public!187
2020-08-21 00:11:37 -04:00
Ashnal
9e1d7146ad Fixed retry timeout to no ttrigger when starting a local server 2020-08-20 23:38:04 -04:00
Ashnal
247239c2bc Add return false to the connect timeout 2020-08-20 23:09:12 -04:00
James R
5b0cb1afcb Merge remote-tracking branch 'origin/master' into next 2020-08-20 19:55:03 -07:00
FlykeSpice
c09cb6d762 Remove POLYOBJECTS POLYOBJECTS_PLANES #ifdefs(backport from srb2 2.2) 2020-08-20 13:02:13 -04:00
FlykeSpice
00137ef4ea Remove ESLOPE #ifdef(backport from srb2 2.2) 2020-08-20 13:02:13 -04:00
Sal
79c299bf31 Merge branch 'port-port-port' into 'master'
2.2's random client port

See merge request KartKrew/Kart-Public!201
2020-08-20 12:19:52 -04:00
Sal
67b37e54b6 Merge branch 'snapback' into 'master'
Instantaneous lookback camera (v2 backport)

See merge request KartKrew/Kart-Public!203
2020-08-20 12:19:41 -04:00
lachwright
d0d6128053 Instantaneous lookback camera (v2 backport) 2020-08-20 13:41:03 +08:00
Ashnal
aa2b25e667 Well actually, lets fix all comparisons of askset to use the same comparison
If we initialize to I_GetTime() - NEWTICRATE*3 it never underflows and everything is good
2020-08-20 00:54:18 -04:00
Steel Titanium
e3f07b33bb GME cleanup and fixes
Just some stuff backported from SRB2 2.2, well mostly

get_zlib_error function to reduce code duplication

Return false if it fails to load the VGZ lump

Reduce redundant calls to gme_set_equalizer

Fix sometimes loading a VGZ crashing the game
2020-08-19 22:39:12 -04:00
James R
94512c49e4 -clientport (it's back!) and -serverport, which is an alias to -port
If you ever need to, you can change the client port number.

(cherry picked from commit 843d9b9f0a345330d97c579e94f208eb2b65c156)
2020-08-19 18:16:54 -07:00
James R
b77541b51d Use a pointer for port_name
Using strcpy is stupid because we don't know how long the argument would be.
There's no need for a buffer anyway.

(cherry picked from commit 4e321012894b2aa87e312597f19be26b30545a8b)
2020-08-19 18:16:53 -07:00
James R
b1f5e66a23 Use a random port when connecting
(cherry picked from commit f584b61c93a97e1a9852f306acba673ced21e03a)
2020-08-19 18:16:53 -07:00
James R
65968f00d3 Fix tiny mistake with the last commit 2020-08-19 17:55:01 -07:00
James R
1cd7c3b747 Rearrange time comparsion on asksent to make it underflow friendly
This fixes '-connect'. NEWTICRATE*5 is subtracted from asksent after
CL_LOADFILES. If this happens too early, an underflow will occur.
2020-08-19 17:49:47 -07:00
Sal
a335d6b583 Merge branch 'fix-nocurl' into 'master'
Fix NOCURL compiling

See merge request KartKrew/Kart-Public!197
2020-08-19 20:36:14 -04:00
Sal
c6f85cde59 Merge branch 'httpsource-without-curl' into 'master'
Let servers send httpsource without curl

See merge request KartKrew/Kart-Public!196
2020-08-19 20:36:06 -04:00
Ashnal
cadb4719cf Added m_menu_mutex to M_Drawer in connection screen 2020-08-19 19:52:24 -04:00
Ashnal
648a950ac8 Merge remote-tracking branch 'public/next' into conenction-screen-improvements 2020-08-19 19:08:33 -04:00
Ashnal
7c5740d98f COnfirm box now respects rebindable accelerate and brake on keyboards 2020-08-19 18:01:56 -04:00
James R
1bf0794d6a Copy the saved wad directory to srb2path 2020-08-17 21:27:59 -07:00
James R
c0cac645f8 hate hate hate hate 2020-08-17 21:22:25 -07:00
Sally Coolatta
234983909a Don't show gametype when watching replays 2020-08-17 23:33:55 -04:00
James R
2a2d43a20b Save srb2path to %LOCALAPPDATA%\SRB2Kart\lastwaddir, and chdir here if srb2.srb cannot be found
Windows code goes brrr
2020-08-17 20:11:32 -07:00
Latapostrophe
392b24b769 Merge remote-tracking branch 'stjr/io' into kart-io 2020-08-17 20:22:02 +02:00
Sally Coolatta
c76c1b8420 Show game speed and encore 2020-08-17 09:08:05 -04:00
Sally Coolatta
27654ffb6a Don't allow invites if allowjoin is off 2020-08-17 06:55:43 -04:00
Sally Coolatta
d163f67700 Update presence when maxplayers is changed 2020-08-17 06:52:46 -04:00
Sally Coolatta
83192827dc Fix ZONE being all caps, standardize the function comments 2020-08-17 06:13:32 -04:00
Latapostrophe
d56fdbb933 Kill line riding for offroad 2020-08-17 12:01:16 +02:00
Sally Coolatta
da5bda72ee Add distinct images for map hell & normal custom maps 2020-08-17 04:42:22 -04:00
Sally Coolatta
a04361a151 Check supported skins by name instead of number, so we can have bonuschars images 2020-08-17 04:42:05 -04:00
Ashnal
eb81bea943 Move code down so declarations are above to appease C90 2020-08-17 04:03:02 -04:00
Ashnal
03150e5fe6 Move declaration to appease C90
also remove some extra tab characters
2020-08-17 03:56:13 -04:00
Ashnal
afc6bdbc7e Fixes for file accounting
mainwads+1 to not use the first mainwad
2020-08-17 03:51:19 -04:00
Ashnal
9a9d81bbe0 New message boxes for downloads and full server waiting
Downloads must be confirmed before proceeding
Allows downloading mods for full servers
Client will wait for a slot to open on a full server to join
This has a 5 minute timeout
2020-08-17 03:47:23 -04:00
Sally Coolatta
9f4ad1303e Put the cvar in the menu 2020-08-17 02:31:30 -04:00
Sally Coolatta
886db8cde1 Guard discord.h, add cvar to disable rich presence 2020-08-17 02:25:05 -04:00
Sally Coolatta
41a401f703 Merge branch 'master' into next 2020-08-17 02:05:31 -04:00
Sally Coolatta
8d386fba66 Display time elasped/time limit 2020-08-17 02:05:16 -04:00
James R
7a05a8acf7 Do not do master server things when NOCURL 2020-08-16 21:42:58 -07:00
Sally Coolatta
d709e9782d Use curl to retrieve your own IP address properly 2020-08-17 00:29:52 -04:00
James R
5dc3ca3934 Remove HAVE_CURL guards on sending httpsource 2020-08-16 20:39:46 -07:00
Sally Coolatta
47f95e22d5 Allow lowercase level name / zone title
Might have some other side-effects, we'll need to see
2020-08-16 22:13:21 -04:00
Sally Coolatta
f5bd9d097f Merge remote-tracking branch 'public/master' into discord-rpc-support 2020-08-16 22:12:36 -04:00
Sally Coolatta
07c916f6d2 Little fixes 2020-08-16 21:31:03 -04:00
Sally Coolatta
df0cc6a727 No previous prototype for K_DropKitchenSink 2020-08-16 21:18:33 -04:00
Sally Coolatta
c8fa1dcfb5 Merge remote-tracking branch 'public/next' into discord-rpc-support 2020-08-16 20:57:31 -04:00
Kimberly Wilber
1bfcec9242 [OSX] Fix "SIGILL: illegal instruction" on macOS Catalina
on OSX, strncpy may copy to overlapping (protected) memory. this
sometimes happens when loading WAD files.

This patch eliminates these problems for me
2020-08-15 12:16:05 -04:00
Ashnal
f800159bb8 Improve total downloads bar
Now has total file size AND number of files
2020-08-15 01:03:45 -04:00
James R
a772096757 dumbass doesn't test changes before pushing directly to next
(cherry picked from commit be14b8a564a89a5afb84ac19f1586f3db7f68367)
2020-08-14 08:27:25 -07:00
Sal
06f36224ee Merge branch 'http-mserv' into 'master'
Make the HTTP Master Server official

See merge request KartKrew/Kart-Public!193
2020-08-10 16:49:47 -04:00
James R
1a1c215a91 Add http-mserv to fuck 2020-08-09 23:32:43 -07:00
James R
9d9f8fd8a3 Bump MAXNETNODES to 127 2020-08-09 18:26:34 -07:00
Ashnal
cc78ef2c78 Now that the server doesn't erroneously send the last mainwad
As the first part of fileneeded, we must load file 0
2020-08-09 00:48:53 -04:00
Ashnal
4c5eb0d6bc Redo logic for lots of files vs not
Now new CL state for checking files so it can spread over tics
whether we ask for the extended list or not
2020-08-09 00:47:55 -04:00
Sal
97c4e7dfff Merge branch 'indirectitemcooldown' into 'next'
Fix Shrink, SPB and Hyudoro cooldowns never resetting?

See merge request KartKrew/Kart-Public!191
2020-08-06 12:19:27 -04:00
Sally Coolatta
c63022350d Merge branch 'master' into next 2020-08-06 12:15:55 -04:00
AJ Martinez
3dada09aa5 Fix Hyudoro cooldown never resetting 2020-08-06 10:51:53 -05:00
AJ Martinez
2add55eb04 Fix indirect item cooldown never resetting 2020-08-06 10:34:16 -05:00
AJ Martinez
8284caf1bc Clarify addon-related messages 2020-08-05 00:40:56 -05:00
Sal
8791fd8835 Merge branch 'mine-punt-sync-fix' into 'next'
Fix desyncs caused by K_PuntMine

See merge request KartKrew/Kart-Public!189
2020-07-25 03:55:28 -04:00
Sal
341ce8f4a3 Merge branch 'rocket-sneaker-hnext-fix' into 'next'
Rocket sneaker and sink hnext fix

See merge request KartKrew/Kart-Public!188
2020-07-25 03:55:22 -04:00
Ashnal
6d0b1e93c6 Appease C91 2020-07-23 21:05:00 -04:00
Ashnal
733aefa64a Also lets do this for kitchen sinks
They also ignored in K_DropHnextList
2020-07-23 20:12:35 -04:00
Ashnal
6562c9b755 Moved K_DropRocketSneaker call into K_StripItems
This should catch when DropHnextList misses it
Should probably fix sinks too ...
2020-07-15 09:17:35 -04:00
Ashnal
3bccf01d4f Properly handle rocket sneakers when shrinking 2020-07-14 19:50:37 -04:00
Ashnal
943a898352 Some safeguards for K_DropRocketSneaker usage 2020-07-14 19:45:15 -04:00
Ashnal
0637ed89aa Fixing RocketSneakers
New function specifically for dropping rocketsneakers K_DropRocketSneaker
Used by Eggbox touchspecial to properly dispose of shoes and clean up hnext
Now also used by the shoe thinker to drop themselves
Fixes angle of spent shoe launch
2020-07-14 18:45:45 -04:00
Ashnal
ddc0bc16ab Add clean up to K_PuntMine
This cleans up hnext when a mine shield is P_RemoveMobj'ed while being punted
Otherwise, hnext could point to a removed mobj and cause undefined behavior
This also fixes the bug where if you have multiple mines in your slot, drag one
and have it punted, all your unused mines would disappear.
This should/may fix the crashes/desyncs I've observed in gameplay when a held mine is punted.
2020-07-14 00:21:46 -04:00
Ashnal
159316b155 Remove now unused ret var 2020-07-04 22:25:02 -04:00
Ashnal
2c0671d8fd Let's just ALWAYS go into ask file list mode
Easier to maintain and understand a single code path
Rather than switching behavior based on amount of addons
2020-07-04 01:12:38 -04:00
Ashnal
7da3d70f6c Remove Checking Files spam 2020-07-02 21:48:45 -04:00
Ashnal
b8fdd6b89c Fix file number accounting
Should ensure appropriate accounting and prevent loading of
server files if it would put us over MAX_WADFILES
2020-07-02 20:57:33 -04:00
Ashnal
774b917c0e Correct total files to load off by one 2020-07-02 17:47:10 -04:00
Ashnal
6fe8a6c96a Changed "this server has a lot of addons!" to
"Checking server addon list ..." to be more informative
2020-07-01 23:52:43 -04:00
Ashnal
03d479fdb6 Connection screen no longer freezes up while
searching for addons on disk
Game will run one tic after every file status is updated
2020-07-01 23:48:14 -04:00
Ashnal
8eb9a6946f Fix X/0 files display bug for legacy downloader
Also made "Waiting to Download" consistent with other states
2020-07-01 21:40:21 -04:00
Sal
c3c466575c Merge branch 'fix-pk3-leak' into 'master'
Fix memory leak in W_ReadLumpHeaderPwad

See merge request KartKrew/Kart-Public!182
2020-07-01 18:36:48 -04:00
Sal
9f4b4d84a6 Merge branch 'http-useragent-fix' into 'master'
Fix user agent for HTTP downloads being set as SRB2Kart/v1.1.2

See merge request KartKrew/Kart-Public!185
2020-07-01 18:36:33 -04:00
Sal
d2098c23fc Merge branch 'ogl-color-fix3' into 'master'
Ogl colormap fix third attempt

See merge request KartKrew/Kart-Public!184
2020-07-01 18:36:19 -04:00
Sal
b6272fa299 Merge branch 'chatbug-fix' into 'master'
clientside ack fix

See merge request KartKrew/Kart-Public!186
2020-07-01 18:35:57 -04:00
Ashnal
ad94b29558 Experiemntal clientside ack fix
Stops the client from using reliable packets before joining a server
Clients can time out during addon loading
sending reliable packets before then can cause out of order acks
This causes joinbug, chatbug, and chatspam, as well as
general server instability due to unnecesary packetspam
2020-06-27 23:43:15 -04:00
Ashnal
f2593219a6 Adjust text position 2020-06-27 23:40:13 -04:00
Ashnal
d96c938dbf Add progress bar for file loading 2020-06-27 23:26:38 -04:00
Ashnal
9d9105929b Adjustment to new progress text 2020-06-27 21:17:21 -04:00
Ashnal
fc9f40a177 New "Overall Download Progress" bar
Shows progress of all file downloads pre-join
2020-06-27 21:17:04 -04:00
Ashnal
12d40a07cc Load one file per tic
Prevents game from locking up when loading large file lists
2020-06-27 20:58:33 -04:00
Steel Titanium
3af4aaff9c Fix user agent for HTTP downloads being set as SRB2Kart/v1.1.2 2020-06-23 18:39:02 -04:00
James R
bae37aea2c ADD to the buffer size 2020-06-14 19:13:22 -07:00
Hannu Hanhi
44159de7f3 Colormap alpha handling was still wrong, hopefully it's correct now 2020-06-14 15:03:40 +03:00
Hannu Hanhi
c382794109 Fix uninitialized alpha when reading colormaps 2020-06-13 23:34:13 +03:00
Hannu Hanhi
38c3d78d8a Cleaner version of the W_ReadLumpHeaderPwad memory leak fix 2020-06-13 21:37:33 +03:00
Hannu Hanhi
2f65955496 Add missing inflateEnd to fix memory leak in W_ReadLumpHeaderPwad 2020-06-13 17:07:05 +03:00
Sryder
b96d315f25 Merge branch 'master' of git@git.magicalgirl.moe:KartKrew/Kart-Public.git into next 2020-06-13 14:15:58 +01:00
James R
e7d949aeb2 masterserver_token is back 2020-06-12 23:47:08 -07:00
James R
9b3456a860 Merge remote-tracking branch 'origin/master' into http-mserv 2020-06-12 23:36:39 -07:00
Hannu Hanhi
d9e2336277 Guil's encore color bugfix with some additional cleanup 2020-06-01 21:14:17 +03:00
Steel Titanium
3f3cb2c976 Fix opengl crashing on startup due to lack of checks
Also fixes the log file not being written to the home directory.
2020-05-23 16:21:26 -04:00
Sryder
b03f950c5a Merge branch 'master' into next 2020-05-20 16:50:56 +01:00
Sryder
e229aabf22 Merge branch 'fix-clang-compile' into 'master'
Fix clang compiling

See merge request KartKrew/Kart-Public!176
2020-05-20 11:49:47 -04:00
Sryder
6b8ea22bdb Merge branch 'opengl-maybe-uninitialised' into 'master'
Some uninitialised variables that GCC 4.4 complains about

See merge request KartKrew/Kart-Public!177
2020-05-20 11:49:34 -04:00
Sryder
831ed3dedc Merge branch 'itemodds-fallthrough-fix' into 'next'
Mistaken fallthrough in item roulette.

See merge request KartKrew/Kart-Public!178
2020-05-20 11:49:22 -04:00
Sal
73b65b4725 Merge branch 'no-spb-forcing-in-2p' into 'next'
Don't force SPB in 1v1

See merge request KartKrew/Kart-Public!175
2020-05-20 10:11:19 -04:00
Sal
5f70d3e170 Merge branch 'visplane-fix' into 'master'
Fix visplane getting allocated twice

See merge request KartKrew/Kart-Public!172
2020-05-20 10:11:06 -04:00
Sryder
9e6980c8ae Fix a fallthrough issue that could cause thundershield to be rolled less often than intended. 2020-05-20 11:53:14 +01:00
Sryder
66930a0277 Initialise these to 0 just to stop GCC 4.4 from complaining.
This should be okay since 0 generally means "nothing" for these, and they should always be set before being used later on.
2020-05-20 11:47:22 +01:00
Sryder
290abe4fce D_ModifierKeyResponder is unused now so remove it. 2020-05-20 11:37:38 +01:00
Sally Coolatta
a7c88d40db Merge branch 'master' into next 2020-05-19 20:40:12 -04:00
TehRealSalt
21e6190932 Don't force SPB in 1v1
(cherry picked from commit 22af2040a021cff243773a0f23371f20e69dfca5)
2020-05-19 20:12:53 -04:00
Sal
e42ae1ed79 Merge branch 'freeplay-be-nice' into 'master'
Also apply HUD translucency to FREE PLAY

See merge request KartKrew/Kart-Public!161
2020-05-19 17:29:05 -04:00
Sal
1d5774fe2f Merge branch 'ghostly-luavars' into 'next'
Fix Luavars being saved into Record Attack ghosts/replays and potentially crashing

See merge request KartKrew/Kart-Public!168
2020-05-19 17:28:48 -04:00
Sal
71d2d357c1 Merge branch 'displayplayer-gonna-getcha' into 'next'
displayplayers.iterate crashes in replays, is that based?

See merge request KartKrew/Kart-Public!171
2020-05-19 17:28:14 -04:00
Sal
bb7481a13e Merge branch 'mr-ogl-boostpad-fix' into 'master'
Fix wrong orientation in some boost pads in ogl

See merge request KartKrew/Kart-Public!173
2020-05-19 17:27:24 -04:00
James R
2d4202ac09 Whoops I used the url to the file instead of the http_source 2020-05-16 21:03:37 -07:00
James R
05b65b6bc8 Merge remote-tracking branch 'origin/master' into http-downloads-auth 2020-05-16 20:48:13 -07:00
Sal
cb9e6473a0 Merge branch 'use-extern-you-idiot' into 'master'
Fix GCC 10 linking errors

See merge request KartKrew/Kart-Public!170
2020-05-16 09:01:46 -04:00
Hannu Hanhi
c3e1e1df26 Fix wrong orientation some boost pads in ogl 2020-05-16 13:47:21 +03:00
James R
64e27f3698 I forgot extern, now I am the clown 2020-05-15 19:04:03 -07:00
James R
7c072503be Some experimental commands to use auth when downloading from HTTP sources 2020-05-15 18:11:05 -07:00
filpAM
5acafa5a87 Fix visplane getting allocated twice 2020-05-16 00:20:52 +00:00
Sal
f60d05764d Merge branch 'clearbans-please' into 'master'
Write empty file on clearbans

See merge request KartKrew/Kart-Public!156
2020-05-15 19:29:11 -04:00
Sal
f0f4b7bc1e Merge branch 'nomixer-fix' into 'master'
Fix "NOMIXER" flag compiling

See merge request KartKrew/Kart-Public!159
2020-05-15 19:28:54 -04:00
Sal
43874c3a4d Merge branch 'now-we-spin-in-spinout-only' into 'master'
No more first person hyper spin

See merge request KartKrew/Kart-Public!160
2020-05-15 19:28:38 -04:00
Sal
e4766bbaf1 Merge branch 'ferror-errno-yareyare' into 'master'
Fix false file error reporting

See merge request KartKrew/Kart-Public!162
2020-05-15 19:27:08 -04:00
Sal
11331b7bc5 Merge branch 'hud-is-fucked' into 'next'
HUD inconsistency in Record Attack

See merge request KartKrew/Kart-Public!164
2020-05-15 19:26:26 -04:00
Sal
ffdb12ccb0 Merge branch 'fastline-identification' into 'next'
Add targets to MT_FASTLINEs that are spawned

See merge request KartKrew/Kart-Public!169
2020-05-15 19:24:35 -04:00
James R
7e0b605f34 Properly bound lua displayplayers and displayplayers.iterate to splitscreen
This is fixes crashes in replays because splitscreen displayplayers are
initialized to INT32_MAX there.
2020-05-15 14:21:25 -07:00
James R
fcbe4e668f Set timeout on HMS connections 2020-05-15 13:20:40 -07:00
James R
bd3ea52cba ok
(cherry picked from commit 0b9c20cc7086000548e02b39c1abf94ffb56feae)
2020-05-15 11:21:40 -07:00
James R
6bd6b3f38e Add missing extern to colortranslations 2020-05-15 10:00:05 -07:00
Monster Iestyn
697c7f859e added missing extern keyword for ms_RoomId in mserv.h (the definition is already in the .c file in this case)
(cherry picked from commit 064f4bcf349e9600552a0b99bd0fbfb3cbcf0958)
2020-05-15 09:58:49 -07:00
Monster Iestyn
f89400c728 turn all non-extern variables in s_sound.h into externs (and put their real definitions in the .c file)
(cherry picked from commit dab212dc56936dd92a935d0c81003ff1d35ee2ee)
2020-05-15 09:58:28 -07:00
Monster Iestyn
05c8865528 make savegamename in doomdef.h an extern, put the actual definition in d_main.c
(cherry picked from commit 89cd756cd83e4a03a34d1f16da18142d8167d889)
2020-05-15 09:52:16 -07:00
James R
e8a2397dea Rename hms123311.c to http-mserv.c
HMS lives on in our hearts!
2020-05-14 17:26:10 -07:00
James R
a6ce21b450 Use Unlock_state here too 2020-05-14 17:23:06 -07:00
James R
85fef2655c Resize response body buffer as needed 2020-05-14 17:19:25 -07:00
Snu
6b5eebe54a Use P_SetTarget instead of fast->target 2020-05-14 04:17:24 +01:00
Snu
3997c05988 god damnit 2020-05-14 03:23:28 +01:00
Snu
f24340f46a add targets to MT_FASTLINEs spawned to tell what they're spawned from 2020-05-14 03:13:00 +01:00
Latapostrophe
d949a47a70 Don't save Luavars in record attack, especially not for ghosts 2020-05-14 01:41:06 +02:00
James R
615823f024 player.ping for the ping in milliseconds of the player 2020-05-13 16:17:40 -07:00
Monster Iestyn
db5cb986ee Detect infinite alias self-recursion mixed with other commands, such as in the case of alias a "echo test; a"; a.
(Unfortunately, this does not work if "wait" is used instead of "echo", but oh well)

(cherry picked from commit 797ca99f42)
2020-05-13 16:03:26 -07:00
James R
430fb27ec8 Bind HMS connection with -bindaddr 2020-05-13 15:29:17 -07:00
James R
9dc72f46a2 Identify this branch with VERSIONSTRING
This is temporary.
2020-05-12 19:27:54 -07:00
James R
2f63f97692 Reset the masterserver address if the old one was set by the config 2020-05-12 19:22:30 -07:00
James R
72852ab341 Clarify where debug prints go when using masterserver_debug 2020-05-12 19:22:15 -07:00
James R
be3da445c3 Use IPv4 for master server connections
Your server's address is gathered from the request, so it needs to be IPv4!
2020-05-12 18:52:55 -07:00
James R
bdcae79cd2 Use new two digit version number for HMS 2020-05-12 17:51:27 -07:00