Commit graph

6021 commits

Author SHA1 Message Date
Sally Coolatta
ffec5f632b Merge branch 'master' into next 2021-02-27 00:38:43 -05:00
Sally Coolatta
3f150fbe05 If the join secret isn't ready right away, wait for the next update instead of trying to loop for it again immediately
I believe this may be the cause of the invite crash some people have noticed in master, but I'm not sure, needs tested.
2021-02-27 00:37:15 -05:00
himie
1f5e9fd802 Add large address aware flag
This allows the final exe to use more than 2gb of RAM in a 64-bit system
which should get rid of most out of memory errors on 32-bit builds
2021-01-25 17:00:09 -06:00
James R
1a3e883b4e Lua: "defrosting" global to tell how many tics are processing in the preticker 2020-11-24 19:32:01 -08:00
James R
6533a728db Always unmute music on refocus
If the game is paused, music will be resumed when unpause anyway.
2020-11-13 17:30:23 -08:00
Sal
5ec44ba3fa Merge branch 'consoleplayer-dedicated' into 'next'
Fix not being able to access consoleplayer as a dedicated server + other more consistent checks

See merge request KartKrew/Kart-Public!240
2020-11-10 14:50:22 -05:00
Sal
4c5d69b714 Merge branch 'no-aprox-dist' into 'next'
Use R_PointToDist2 over FixedHypot, and FixedHypot over P_AproxDistance

See merge request KartKrew/Kart-Public!243
2020-11-10 14:50:08 -05:00
Sally Coolatta
c23364db12 Actually, lets just fix FixedHypot instead.
Now FixedHypot uses the code from R_PointToDist2, and R_PointToDist2 just calls FixedHypot.

Ultimately, this branch was intended to get rid of a redundant way to retrieve distance and replace it with the one that was actually good at its job. So consolidating FixedHypot and R_PointToDist2 together is just an extension of that.
2020-11-08 00:45:16 -05:00
Sally Coolatta
104208fc84 Use R_PointToDist2 instead
Apparently overflows less often
2020-11-07 23:56:46 -05:00
Sally Coolatta
3ad5c0af48 Merge branch 'master' into next 2020-11-07 22:21:53 -05:00
Sally Coolatta
d6c497065e Use FixedHypot over P_AproxDistance
Not convinced that the small speed benefit from P_AproxDistance is worth the "aproximate"[sic] results it gives. Let's instead try a define to replace it with FixedHypot. In Lua, the function gives a deprecated warning.

Inspired by the hyperwall fix for vanilla, except for everything. From little testing, actively improves waypoint checks, bumping, speed checks, wall collisions, Jawz targetting, Lightning Shield attacks, so on.

The only way I see this as a potential downgrade is A_Look (and related functions) getting slower, which are barely used in Kart.
2020-11-07 19:47:50 -05:00
Hannu Hanhi
8ee560f216 R_FindPlane optimization from SRB2 2020-11-07 20:32:44 +02:00
James R
130a1ccc98 :V 2020-11-05 22:18:41 -08:00
Zachary McAlpin
a9e851bcf5 Execute LUAh_PlayerThink(player) at the end if the player has a valid mobj_t object 2020-11-05 21:26:24 -08:00
Zachary McAlpin
5921d17cc0 Added PlayerThink hook 2020-11-05 21:23:22 -08:00
James R
a5db4ca572 PreThinkFrame and PostThinkFrame hooks
Changes from 58dd578b094639405d452593562e0f8cb2b482ce,
a36920808b74e068d582dda5a3b75bdf64246463,
41c902b819ac8fdef173c4ba76a8c50ad8107190,
60928db0e0b08fee7ceddd5515adf2246bb655c3.
2020-11-05 21:04:25 -08:00
James R
3e31bc9e45 Add CV_Set, CV_SetValue, CV_StealthSet, CV_StealthSetValue and CV_AddValue to Lua
CV_SetValue merged with CV_Set (same with CV_StealthSetValue and CV_StealthSet).
2020-11-05 20:23:43 -08:00
Louis-Antoine
ab7ccbc5d5 Expose "server" and "dedicated" to Lua scripts
Careful! Both are local variables and are always false for clients,
and therefore should obviously not be used in anything gamelogic-related.
2020-11-05 20:19:58 -08:00
James R
9f54ad4ea3 Improve COM_AddCommand boolean deprecated warning 2020-11-05 20:16:28 -08:00
James R
933ee4e961 COM_LOCAL makes your commands NetXCmd free, FUCK NetXCmd 2020-11-05 20:16:28 -08:00
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
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
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
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