Commit graph

499 commits

Author SHA1 Message Date
Latapostrophe
e7d730e3b2 prevent the use of respawn to cheese items like SPB 2019-01-20 18:51:45 +01:00
Latapostrophe
1850123f8b Prevent the use of respawn to cheese SPB and other items 2019-01-20 18:50:07 +01:00
TehRealSalt
4c8737da08 Final v1.0.2 commit (probably)
- Update chars.kart hash, AGAIN!
- Fix spectators being visible on minimap when F12ing people
- Optimize how splitscreen players are drawn on top of the minimap
- Remove duplicated cvar registrations
- Move cv_resynchattempts and cv_netticbuffer from D_ClientServerInit to D_RegisterServerCommands and D_RegisterClientCommands respectively, so they can save to config properly
- Increase "Frequent" gametype switch frequency even more
- "SRB2" version dehacked warning ignores srb2.srb
2019-01-18 04:30:38 -05:00
toaster
66273898b7 * Refactor all instances of majormods = true; to route through G_SetGameModified, and catch a few spots I missed in the process.
* Make G_SetGameModified only console-print for major mods.
* Add amnesty to "major mod" detection while loading files with custom savedatas.
* Improved the console prints for command `isgamemodified`.
2019-01-17 22:01:28 +00:00
TehRealSalt
ad7b3dece0 Bump up the frequency of voting rule changes
This is in our changelog, but I didn't actually get around to doing it. Would've been foolish to ship with that :V
2019-01-16 16:19:16 -05:00
TehRealSalt
885d2e2965 Fix XD_REMOVEPLAYER not having a proper corresponding netxcmdname
Caught while working on power levels -- turns out it wasn't a total waste of time when I should've been working on the rest of v1.0.2!
2019-01-16 16:16:11 -05:00
toaster
081872aa85 First steps at implementing a mechanism that allows you to load non-cheaty good-faith mods such as custom characters with no Lua scripting, and play record attack with them. Features a few bad hacks and a few more areas of improvement; I'll try to iron them out before they hit next or master. 2019-01-15 19:01:55 +00:00
TehRealSalt
72bc1b48f6 Merge branch 'next' into music-credits 2019-01-09 03:08:20 -05:00
Marco Z
7806c43ecf Kart Public Next merge 2019-01-08 18:43:49 -05:00
SeventhSentinel
49f2d65e95 Fix errors from merge 2019-01-06 01:00:30 -05:00
SeventhSentinel
73542c008c merge srb2 next 2019-01-05 15:59:23 -05:00
SeventhSentinel
5d51754936 In-game music credits 2019-01-04 04:44:55 -05:00
mazmazz
e7ffd86c6e Fixx GCC 4.4 array-bounds compile errors 2019-01-02 20:58:52 -05:00
Digiku
8d56c2f486 Merge branch 'addons-backport' into '2122-version'
Addons Menu backport to vanilla

See merge request STJr/SRB2!384
2018-12-23 18:08:06 -05:00
Latapostrophe
b7d7472a88 Merge branch 'next' into SRB2-CHAT 2018-12-23 22:53:24 +01:00
Latapostrophe
1b61e15b1b Merge branch 'master' into SRB2-CHAT 2018-12-23 10:26:08 +01:00
Latapostrophe
c7060aa5ad Remove mute boolean from playermsg hook, fix username stuff still being there, potential memory leaks, and added back the ip message. 2018-12-22 16:44:58 +01:00
Digiku
28c8ad3dbb Merge branch 'jump-spin-axes' into 'next'
Feature: Jump/Spin axes

See merge request STJr/SRB2!389
2018-12-20 16:57:05 -05:00
mazmazz
7f8d16d3cd Add DEVELOP build flag to version string 2018-12-20 02:27:30 -05:00
Latapostrophe
a31b85e124 Some messages relevant to discussions now go in the chat. 2018-12-19 16:44:57 +01:00
TehRealSalt
c69cfefb6d 2.2 backport of jump/spin axes
Needs the config default-changing shenanigans done still, not sure how to tackle that yet. Now the game is TOTALLY playable from a fresh install if you just plug in a controller.
2018-12-16 17:45:49 -05:00
Latapostrophe
25e6d5388c merge conflict 2018-12-16 16:48:15 +01:00
mazmazz
f0967520ed Compile fixes; enable PK3 support in addons menu
* Add missing vars highlightflags, recommendedflags, warningflags from Kart
* V_GetStringColormap() use vanilla behavior because Kart behavior glitches for us
* V_GetStringColormap() made non-static
2018-12-15 21:44:39 -05:00
mazmazz
37950341ec Merge remote-tracking branch 'public-gitlab/next' into addons-backport 2018-12-15 20:52:46 -05:00
mazmazz
b32f50648d Merge branch 'addons_menu' into 'master'
Addons menu

See merge request KartKrew/Kart!8
2018-12-15 20:46:42 -05:00
mazmazz
df89781623 Windows string adjustment 2018-12-06 15:42:58 -05:00
mazmazz
ba60989c00 Adjust version strings 2018-12-06 15:39:19 -05:00
mazmazz
f0c7848e50 Use proper DD define for use_joystick 2018-12-06 06:50:18 -05:00
mazmazz
9055c9aeab Hex instead of octal colors 2018-12-05 13:08:25 -05:00
mazmazz
c5b349ddc4 More concise bitness check 2018-12-05 13:06:56 -05:00
mazmazz
1ea2fa447a Make the ifdefs cleaner 2018-12-05 13:00:42 -05:00
mazmazz
389c2d4ea1 _WINDOWS instead of _WIN32 for DD 2018-12-05 12:55:05 -05:00
mazmazz
a6dcd5555e Add various flags to version string 2018-12-05 11:43:33 -05:00
Monster Iestyn
ae14fd2f85 Fix motd being broken for admins
It turns out the game was sending the full size of the motd buffer (254) rather than just the size of the string made, therefore sending a load of garbage and making the game apparently execute unknown or illegal net commands
2018-12-04 21:09:28 +00:00
Monster Iestyn
e353e2ef70 Merge branch 'next' into 21-version 2018-12-04 17:19:36 +00:00
Monster Iestyn
f2b0db5a1c Merge branch 'master' into next 2018-12-04 17:18:19 +00:00
mazmazz
c799584f3d Change joystick default to auto-use joystick 1 and joystick 2 if plugged in (like Kart) 2018-12-03 23:36:36 -05:00
TehRealSalt
919667ed39 Just do MapChange hook on G_InitNew
Everything that's supposed to call it also calls this...
2018-12-03 00:33:35 -05:00
TehRealSalt
aa16edec1d Merge remote-tracking branch 'srb2public/next' into merge-next 2018-12-03 00:31:23 -05:00
Monster Iestyn
33c1ac33f5 Merge branch 'next' into 21-version
# Conflicts:
#	src/d_netcmd.c
2018-12-02 15:45:07 +00:00
Jimita
6d7689c1a7
Merge branch 'next' into lua_mapchange 2018-11-30 15:10:59 -02:00
MPC
54cae84849 Change MapChange so Lua returns the map number you change 2018-11-30 14:01:40 -03:00
TehRealSalt
d3ecdeb364 Do 800 instead 2018-11-30 03:36:44 -05:00
Sal
ce14755156 Merge branch 'rename-cmds' into 'master'
Rename "giveadmin" and "removeadmin" to "promote" and "demote"

See merge request KartKrew/Kart!117
2018-11-29 11:18:57 -05:00
wolfy852
f2072b973b Rename "giveadmin" and "removeadmin" to "promote" and "demote" 2018-11-29 07:58:26 -06:00
TehRealSalt
5534017954 Merge remote-tracking branch 'srb2public/next' into merge-next 2018-11-29 08:49:50 -05:00
wolfy852
c517862f7e I must be some kind of idiot. 2018-11-29 07:34:05 -06:00
Wolfy
b59718d3ad Remove hardcoded limit on admins
# Conflicts:
#	src/d_netcmd.c
2018-11-29 07:05:49 -06:00
Wolfy
b8ce51bff2 Multiple admins
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
2018-11-29 06:46:59 -06:00
toaster
2c8855cd5f Upper-bound restrict the setting of numlaps for sectionrace levels mid-game 2018-11-28 16:45:45 +00:00
Sal
28488cc0dc Merge branch 'netcode-vars-strict' into 'master'
Make netcode var defaults stricter, add Advanced Server Options

See merge request KartKrew/Kart!110
2018-11-27 12:27:47 -05:00
Sal
cc8af2acdb Merge branch 'better-buffering' into 'master'
Better vote level buffering

See merge request KartKrew/Kart!109
2018-11-27 12:25:02 -05:00
TehRealSalt
f0b042a4b6 Advanced Server Options menu
More accessible way of modifying ping limit, timeouts, max file send, etc now that the defaults are stricter
2018-11-27 12:10:46 -05:00
Monster Iestyn
cd57be640c Merge branch '21-controls' into 'next'
Default control changes for 2.1.21

See merge request STJr/SRB2!343
2018-11-27 11:50:42 -05:00
TehRealSalt
969801ef09 SEVERELY nerf jointimeout & resynchattempts, too
All of these previous defaults are "this is an insane time to reach, by that point you might as well disconnect"
2018-11-27 11:23:28 -05:00
Alam Ed Arias
9a042cd5e2 Merge branch 'master' into next 2018-11-26 19:49:19 -05:00
MonsterIestyn
b53cd70201
Merge branch 'next' into PK3-BackportNext 2018-11-26 18:56:51 +00:00
TehRealSalt
478f895ea0 Remove previous commit's votebuffer, allow an external optional buffer to be passed into G_RandMap
I meant to fix the previous method, but I didn't even understand how it knew it was in a vote or not... so I just did it my own way :V

(Shouldn't FLUSHMAPBUFFEREARLY be on now...?)
2018-11-26 04:27:31 -05:00
mazmazz
930835f1a2 Dummy out OpenGL loading screen; fix console toggle so it doesn't actually show 2018-11-25 21:47:56 -05:00
Monster Iestyn
1b2aea81dc Merge branch 'master' into next 2018-11-25 20:39:17 +00:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
TehRealSalt
92d5a6b8fb Quick patch-over to dedicated server husk bug
Whenever a 16th player would join, it would wrap around and overwrite the dedicated server ghost host player. This is possibly a bug in vanilla as well, but it'd only occur at 32 players so it's no wonder no one figured that out. :V

As a quick patch, I just capped cv_maxplayers to MAXPLAYERS-1 in dedicated servers only. To fix this for real, we'd need to give dedicated servers their own player & node instead of clumping in into the start of the normal ones.
2018-11-25 07:10:45 -05:00
Nev3r
6f5e3d42ff Merge branch 'PK3-Backport' into 'PK3-BackportNext'
Pk3 backport

See merge request Nev3r/SRB2!1
2018-11-24 06:02:19 -05:00
Nev3r
c548aaa347 Backported PK3 support to 2.1
Hopefully I'm not missing anything.

Signed-off-by: Nev3r <apophycens@gmail.com>
2018-11-23 16:58:16 +01:00
TehRealSalt
c2c799c885 Change defaults of these
nettimeout being 10 seconds is INSANITY, and maxping of 500 is when it starts being unplayable (I could also be bargained to raise it to 750 or 1000 though). Not sure if jointimeout causes any freezing, if it does then I'd also like to lower that
2018-11-22 20:54:28 -05:00
mazmazz
17ff7e69a0 Add chasefreelook to separate third and first person mouselook 2018-11-22 17:05:24 -05:00
toaster
c6268253eb The oft-promised buffer fixes. Also, making it so the gametype switch for "Sometimes" is every 10 maps, not a full buffer round (now that it doesn't add to the buffer when you first see it).
Unfortunately, the code didn't turn out nearly as nice as I'd desired, but things don't always work out.

In addition: For some reason, I rolled Tinkerer's Arena twice within three hits of the Dice voting option, so something's wrong and this branch needs proper, rigorous investigative testing but I don't know what and I'm way too tired (both physically and metaphysically) to investigate any further.
2018-11-22 17:10:36 +00:00
TehRealSalt
5c67e22c22 Random map buffer only gets added to when
Needs another temporary buffer for the vote screen so that it doesn't roll dupes
2018-11-20 00:13:08 -05:00
toaster
aa607ecf4c Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_again
# Conflicts:
#	src/d_clisrv.c
#	src/m_misc.c
2018-11-18 18:26:50 +00:00
TehRealSalt
7b142dbad1 Updated the one important modified game print that most people see to be more descriptive
(I could've SWORN there were more...)
2018-11-18 05:48:10 -05:00
TehRealSalt
0e3b225011 Remove duplicate/removed objects
As well as other compile errors
2018-11-18 03:43:33 -05:00
TehRealSalt
bd3f398a04 Fix cvar bugs
- karteliminatelast uses CV_YesNo instead of CV_OnOff
- chatbacktint defaults to on
- soniccd defaults to off
2018-11-17 20:47:11 -05:00
toaster
56ed67397d * Fix the in-game MS browser thinking gametypes are unknown.
* Fix the website MS browser mapname output being incomplete.
* Hide hell maps on the website MS browser mapname output.
* (unrelated) tweak Command_Showmap_f's logic for a more accurate name.
2018-11-17 15:48:10 +00:00
Alam Ed Arias
d4cb81cb28 Merge branch 'master' into next 2018-11-14 15:45:29 -05:00
MonsterIestyn
772c072064
Merge branch 'master' into analog-flipcam-synch-fix 2018-11-14 19:36:39 +00:00
Sryder
799efd5b31 Merge branch 'master' of git@git.magicalgirl.moe:KartKrew/Kart.git into nextmerge 2018-11-10 22:29:37 +00:00
toaster
aece934083 Fix not found 40833 2018-11-10 22:27:04 +00:00
Sryder
6af56273bf Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into nextmerge
# Conflicts:
#	src/d_main.c
#	src/d_main.h
#	src/d_netcmd.c
#	src/doomtype.h
#	src/hardware/hw_md2.h
#	src/p_user.c
#	src/r_splats.h
#	src/s_sound.c
#	src/s_sound.h
#	src/screen.c
#	src/sdl/i_system.c
2018-11-10 21:14:53 +00:00
toaster
e1a28bbe1c Three more CV_NOSHOWHELP's I missed the first time around. (Not making another exe for this, it'll show up the next time one is made... not that important.) 2018-11-10 18:50:19 +00:00
Sryder
a0165f1ac1 Merge branch 'com_cleanup_redo' into 'master'
Improved "HELP" command

See merge request KartKrew/Kart!82
2018-11-10 12:51:51 -05:00
toaster
5b286d89a8 Hide the numlaps change message in record attack. (It plays every time you load a demo of a map with a differing quantity of laps to the default value...) 2018-11-10 12:34:04 +00:00
Monster Iestyn
17223aa520 Merge branch 'master' into next 2018-11-09 16:09:49 +00:00
TehRealSalt
68d2d00a07 Log "Speeding off to level..."
It's not disruptive, but it looks a bit goofy since the "Map is now x" print is no longer directly printed either, so it's the only thing sticking around in the console :V
2018-11-08 17:56:26 -05:00
TehRealSalt
69287984db Merge branch 'master' into staff_names 2018-11-08 14:47:38 -05:00
TehRealSalt
499faec555 Merge remote-tracking branch 'srb2public/next'
(Huge change: NO_MIDI is now a define, simply because that makes it easier for me to resolve merge conflicts if I can see the original code and the new code. Also means that people who REALLY miss MIDI can compile & fix it themselves :P)
2018-11-07 16:15:14 -05:00
toaster
cf16959ad5 Clean but quick: Rename all user-facing things that say "emblem" to say "medal" instead. Don't touch SOC, don't touch code, otherwise we'll be here all year. 2018-11-07 18:05:29 +00:00
toaster
7866e88292 No-show of debug stuff, and make karteliminatelast into a debug to justify its hiding. 2018-11-06 18:54:00 +00:00
toaster
bb251c4fbf * Re-add support for command "help" (ie, basically no help at all).
* Rename "suicide" command to "respawn" so the game doesn't tell you to kill yourself when you try to get help for it.
* Add a "manual" command to open the manual.
2018-11-05 19:02:34 +00:00
toaster
8d4ce113e4 Redo the help command stuff, this time with much less impact on other areas of the code for sanity as we approach R1. 2018-11-05 12:49:28 +00:00
TehRealSalt
ba67c7aa70 Fix for "became a spectator" text repeating 2018-11-02 14:59:26 -04:00
TehRealSalt
db731209e5 Fix ENTER GAME option not working 2018-10-31 03:06:36 -04:00
LJSonik
b52158eb48
Merge branch 'master' into analog-flipcam-synch-fix 2018-10-29 19:52:08 +01:00
Louis-Antoine
3d0daf2202 Fix desynch when toggling analog mode or flipcam
Special thanks to Lat' for asking weird questions
2018-10-29 00:49:23 +01:00
Latapostrophe
e5d4020f3e Spectate / enter game in chat + New console colours + Highlight chat scroll arrow + small cleanup for consolefill 2018-10-25 13:21:44 +02:00
Latapostrophe
26093de2e9 Merge branch 'master' into chat-changes 2018-10-25 11:14:49 +02:00
TehRealSalt
40b9644e0c Use COM_ImmedExecute("restartaudio") instead of duplicated code 2018-10-22 16:32:06 -04:00
TehRealSalt
4e549532ee Half-done Discord Rich Presence support
It's soooo close to being awesome, but so far away. Making game invitations as the host meant that it would redirect to "connect self" for other people, because we can't get the IP address from the host.

If anyone has a solution, you've got my gratitude; this was going so smoothly until it hit that brick wall.
2018-10-22 00:34:45 -04:00
toaster
791dc079ec Merge branch 'master' into 'chat-changes'
# Conflicts:
#   src/hu_stuff.c
2018-10-21 08:27:28 -04:00
Monster Iestyn
d57c54f93b Merge branch 'master' into next 2018-10-20 14:13:13 +01:00
TehRealSalt
553066b48b Merge branch 'master' into net-screen 2018-10-19 15:59:13 -04:00
Sal
adb2fad43c Merge branch 'sp_fixes' into 'master'
Singleplayer fixes (no, not record attack, the *other* one)

See merge request KartKrew/Kart!46
2018-10-19 15:50:06 -04:00
Sal
d6cf424aed Merge branch 'unlock-hard' into 'master'
Hard Mode is an unlockable

See merge request KartKrew/Kart!40
2018-10-19 15:49:32 -04:00
Sal
524ab75a6a Merge branch 'remove-prints' into 'master'
Remove most gameplay prints

See merge request KartKrew/Kart!42
2018-10-19 15:49:01 -04:00
toaster
ce443712b2 Some token efforts to make singleplayer mode (accessible only via -warp and map mapxx -force) not COMPLETELY broken.
* Fixed the conditionals for `suicide` and `retry` commands - `suicide` is now allowed in singleplayer, and `retry` no longer checks your lives (for now).
* Disable the "traditional" level reload method (which `retry` tried to use), since it was completely broken with the other changes we've made. Mapchanges only.
* Made retries cause a mapchange, per the above.
* Disable the last source of skincolor trampling in the game - loading a level while not netgame or record attacking.
2018-10-17 13:40:17 +01:00
toaster
41b684e63e Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into net-screen 2018-10-16 22:13:45 +01:00
TehRealSalt
d89fb8fcf7 remove all hit msgs & cv_hazardlog 2018-10-15 17:40:25 -04:00
TehRealSalt
e23da397e4 Remove most gameplay prints
A couple of the extraneous ones (karma interactions, bumper stealing, lap start notifications) have been removed outright. The rest that I could think of have been changed to use CON_LogMessage, so that they still go into log.txt when rereading a fun chat session but not showing themselves in gameplay. Necessary gameplay prints, such as players being defeated or coming back in Battle, have been kept until there's a suitable replacement for them in the future.
2018-10-14 17:45:28 -04:00
toaster
a1e1aa81b5 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into nextmerge_plus_rain
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/g_game.c
#	src/p_floor.c
#	src/p_user.c
#	src/r_data.c
#	src/r_data.h
#	src/v_video.c
2018-10-14 21:52:05 +01:00
TehRealSalt
001e2aa42c Hard Mode is an unlockable
Unlocks at 30 emblems, or 100 matches played
2018-10-13 17:54:53 -04:00
Steel Titanium
b3faed190b Move commands and console variable into s_sound.c 2018-10-11 16:29:43 -04:00
Latapostrophe
49f2c62b5d More stuff goes in HU_AddChatText, fixed /pm list not having the correct coords if kartspeedometer was on. 2018-10-11 21:39:19 +02:00
Latapostrophe
346c6bce96 HU_AddChatText cleanup for future use + chat mode Window (Hidden) added. 2018-10-10 21:24:55 +02:00
TehRealSalt
7900af2a0a Merge branch 'master' into net-screen 2018-10-09 15:43:38 -04:00
TehRealSalt
640e0e09c6 Merge branch 'master' into sal-cleanup 2018-10-08 00:22:44 -04:00
TehRealSalt
42766db48c Merge branch 'master' into net-screen 2018-10-07 23:26:56 -04:00
toaster
cfd2b021a4 Nuke a bunch of iteration things that have no purpose in SRB2Kart. A full explanation of my reasoning and what it affects is as follows.
p_inter.c -
	Everything to do with setting states for starposts
		In SRB2Kart, starposts are invisble. We don't need to loop through all thinkers just to set their states when there's no visible effect of the state-setting. In addition, it has no consequences for gameplay - starposts have long been silent here, and all checking is done regarding their health, not their state.
	Remove extremely low-traffic conditionals (MT_FLINGEMERALD collision height extension, for example)
		These objects serve no functional purpose during regular SRB2Kart gameplay. Why should every other object have to pay an admittedly minor performance hit just for them?
	Disable all mechanisms of damaging bosses or enemies with the player's physical contact
		With the exception of Sapphire Coast, no MF_ENEMY objects exist in the entirety of the standard roster. In addition, the conditions for damaging the enemies were impossible to achieve, because they required vanilla SRB2 mechanics such as "jumping", "spindashing", or "super". Therefore, they can be safely commented out.
	Disable NiGHTS-related material (excepting bumper, hoop, and wing-emblem objects)
		NiGHTS is fundamentally incompatible with regular kart gameplay and I believe was already broken. Therefore, any mechanism which enters, aids, or abets it can be safely disabled.
	Comment out Tag mechanisms
		Tag is the only vanilla multiplayer gametype which has sufficient gameplay depth and complexity (HEYOOOOOOOOO) to require dedicated thinking in and of itself in order to manage. This thinking is irrelevant to Kart's functioning, and can be neutered easily.
d_clisrv.c
	Comment out Tag mechanisms
		See p_inter.c
d_netcmd.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		When investigating for references to NiGHTS material, I discovered that these remained untouched. In order to present a more coherent game, I have hidden the ones that serve no purpose for us.
	Comment out Tag mechanisms
		See p_inter.c
g_game.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable some team-related material
		Teams are not present in SRB2Kart at present. Obviously we'd want to reconsider for future, but it doesn't need to be run right now.
	Everything to do with setting states for starposts
		See p_inter.c
m_cheat.c
	Disable several devmode commands which are irrelevant to SRB2Kart gameplay
		See d_netcmd.c
p_map.c
	Remove extremely low-traffic conditionals (MT_EGGSHIELD collision, for example)
		See p_inter.c
	Disable NiGHTS-related material
		See p_inter.c
p_mobj.c
	Disable P_EmeraldManager
		Power stones, despite their relevance in vanilla Match, are not in SRB2Kart's Battle. No management of nonexistent emeralds is required.
p_setup.c
	Everything to do with setting states for starposts
		See p_inter.c
p_spec.c
	Disable NiGHTS-related material
		See p_inter.c
	Everything to do with setting states for starposts
		See p_inter.c
p_telept.c
	Everything to do with setting states for starposts
		See p_inter.c
p_tick.c
	Disable some team-related material
		See g_game.c
	Disable P_EmeraldManager
		See p_mobj.c
	Do not run shields
		Shield objects are not run under the vanilla system; the Thunder Shield is a domain-specific recreation using a standard mobjthinker.
	Do not run special stages
		SRB2Kart does not have special stages.
	Comment out Tag mechanisms
		See p_inter.c
y_inter.c
	Disable some team-related material
		See g_game.c
p_user.c
	Disable NiGHTS-related material
		See p_inter.c
	Disable 2d movement for players
		2D mode? In a kart racer? :nick:
2018-10-03 17:04:41 +01:00
TehRealSalt
f5eee19d9b Online splitscreen voting
Forgot I added in that quick edit to make it not send anything in splitscreen mode, oops!
2018-10-02 01:22:45 -04:00
TehRealSalt
96506359f1 Goodbye cvar 2018-10-01 07:21:02 -04:00
TehRealSalt
a4f3d4867d Change dummysplitplayers into splitplayers, unhide it, and set it when joining and not just hosting
Silly oversight
2018-09-30 18:07:05 -04:00
TehRealSalt
9cf379f091 kartdebugnodes 2018-09-30 17:47:56 -04:00
TehRealSalt
1d6215030e Online splitscreen
It WORKS, including kicking players in splitscreen
2018-09-30 00:51:03 -04:00
Sal
9c10a85596 Merge branch 'itemdrop' into 'master'
Itemdrop

See merge request KartKrew/Kart!11
2018-09-23 17:51:28 -04:00
toaster
d7f8d4507a Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop
# Conflicts:
#	src/sounds.c
#	src/sounds.h
2018-09-22 23:11:14 +01:00
toaster
6cc7f97d8a Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into addons_menu
# Conflicts:
#	src/m_menu.c
2018-09-22 23:00:46 +01:00
toaster
80bc266f3f Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop
# Conflicts:
#	src/info.c
#	src/k_kart.c
2018-09-21 21:05:47 +01:00
toaster
084b99a5c9 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore
# Conflicts:
#	src/info.c
#	src/m_menu.c
#	src/y_inter.c
2018-09-21 20:54:38 +01:00
toaster
25ae5a5e7f Partially address Sal's review last night by switching to a more sensible default. I'm still unconvinced on the need to make encore mode a seperate knob on the grounds of overcomplexity and "you can't turn map hell off", but hopefully this'll be a shippable state we can come back to later.
Also, thank you for reminding me, Sryder - disable my very, very limited progress on encore mode in openGL so that stages aren't an unintended hodgepodge of different colourschemes for the objects versus the level environment.
2018-09-21 12:12:17 +01:00
TehRealSalt
e441b2bce4 Address review
(for anything code I did, anyway)
2018-09-20 17:11:11 -04:00
mazmazz
b330dc2394 Don't call I_StartupSound in SFX toggle
* Mixer: make I_StartupSound return early if already set up
* Restartaudio: Add StopSFX call
2018-09-14 16:39:10 -04:00
mazmazz
a7ed7b2c90 Consolidate I_SetDigMusicVolume and I_SetMIDIMusicVolume into one method
* In s_sound, they are merged to one method as well, but there are still two separate digvolume and seqvolume variables
* Simplified Dig/MidiMusicDisabled in s_sound
* Method reordering

(cherry picked from commit 701cc5a7dd1dfead87a42ec7558c9fa6a1deb193)
2018-09-14 10:23:37 -04:00
toaster
fd7bc1c1ac Do a bunch of major modifications to the voting system's rule change system!
* Add `kartvoterulechanges`, or "Voting Rule Changes" on the menu, to allow some user control over event frequency.
	* "Never" - does what it says on the tin.
	* "Sometimes" - 1/8 chance of Encore if host has unlocked it, only gametype change when buffer is full
	* "Frequent" - 1/2 chance of Encore if host has unlocked it, gametype change every 5 maps
	* "Always" - If host has unlocked Encore, alternates between Encore and Gametype. Otherwise, always a gametype change
	* There's probably room for a setting between "Sometimes" and "Frequent", but I didn't want to overload the host with options and these were the ones that made sense.
* Better handling of buffer refreshes, to prevent two of the same map appearing next to each other in the voting unless there literally aren't that many maps.
* Mostly unrelated: Minor bugfix for Y_SetupVoteFinish, preventing music changes/random sounds playing on the You Will Join Next Race screen. (Branch-appropriate, at least.)
2018-09-11 15:42:53 +01:00
toaster
1e8ae8aa0c Merge branch 'sal-misc' of https://git.magicalgirl.moe/KartKrew/Kart.git into itemdrop 2018-09-09 23:25:19 +01:00
TehRealSalt
03e1ed179e Comment ou remaining traces of cv_karthud
We've poured so much effort into our own HUD that it doesn't make much sense to have the option to replace it with another game's at this point
2018-09-09 18:10:11 -04:00
toaster
4de68f7fe2 Dropping items!
* Shield Drop...
	* Whatever you've got orbiting or trailing you, DROP THEM WHERE THEY STAND. (Except for the ghost sink. That one's OK.)
	* Pops your Thunder Shield.
	* Happens upon ANY hit, except for deathpits.
* HUD Drop...
	* Also does the above, except for the Thunder Shield thing.
	* If there's any item left in your item box, pop it out as a little hovering, rotating Minecraft item!
	* You can pick up the Minecraft item by driving over it if your item box is sufficiently empty, or the item which is contained within it is of the same type.
	* Happens upon Size Down and battle elimination.
	* Can also be forced on with `cv_kartdebughuddrop on`!
* Some other random stuff.
	* Fix a bunch of `a->scale = b`'s into `P_SetScale(a, b)` form, for maximum validity.
	* Make K_CleanHnextList and K_UpdateHnextList one function, since they only differed by one continue clause (and the type of their input parameter).
	* Allow shrunken players to pick up item boxes again.
	* Fix MF_NOCLIPTHING. (Gonna pass this fix to vanilla when I get the chance, too.)
	* Break NiGHTS a little through my machinations.
2018-09-06 22:17:29 +01:00
TehRealSalt
1548e59b2b Change a few cvar defaults 2018-09-04 21:18:20 -04:00
Monster Iestyn
38ac999d77 Merge branch 'addfile-verify-fix' into 'next'
Addfile command verify fix.

See merge request STJr/SRB2!272
2018-09-03 17:17:46 -04:00
TehRealSalt
e6303d1889 Toggles for kitchen sink, ten banana, & quad orbinaut, and a screen that they can fit on 2018-08-31 13:18:19 -04:00
Steel Titanium
0f5d685d1f Only do this if the admin player isn't the server host also. 2018-08-30 18:32:26 -04:00
TehRealSalt
d6c54b3f47 Item distribution debugger, and oversight pointed out by this
Item distribution debugger is a netvar that enables cheats, so no exploiting!
2018-08-29 14:28:28 -04:00
toaster
b6dbecd2f8 Addons menu.
Bitch.
2018-08-28 21:08:47 +01:00
Latapostrophe
8747a8529d Changed chat position,
Added chat back tint
Fixed word wrapping glitches
2018-08-19 10:58:29 +02:00
toaster
a6d1e799f9 * Encore on the voting screen! Appears randomly once unlocked in the same slot as that which sometimes represents a gametype change (odds inflated for testing purposes).
* A better representation of an Encore level, now with inverted graphics (a special remapping we can now use elsewhere whenever if we want!) and a floating Ruby!
* Decouple encore's setting from cv_kartencore on mapload. Instead, bake it into D_MapChange and related, which will only some of the time be fed by cv_kartencore's value.
* Encore mode now has a special mapheader palette setting, "encorepal", rather than using the same one as non-encore.
2018-08-11 22:23:40 +01:00
toaster
c190db903c Merge branch 'sonicitems' into encore
# Conflicts:
#	src/st_stuff.c
2018-08-10 15:35:00 +01:00
toaster
a6ca459164 Fix all actionable comments in my review of sonicitems. 2018-08-09 22:59:52 +01:00
toaster
6f2840fe19 * Make Encore Mode an unlockable, rather than freely available.
* Make unlockables have a "showing" conditionset, for when you're able to see them on the Extras screen.
* A shorter Encore ruby-pulse fade, for when encore mode is already active!
2018-08-08 20:48:29 +01:00
toaster
7577d289c3 Encore mode is shippable, if still a tad incomplete!
* Turns out the Linedef Type 606 support WAS working and I just had a bad MAP01E lump.
* Ruby fade and ambience start track.
* Fix bad phrasing.
2018-08-08 15:03:02 +01:00
toaster
6f4308905f Merge branch 'sonicitems' into encore 2018-08-08 12:04:17 +01:00
toaster
c52a4de933 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into sonicitems
# Conflicts:
#	src/f_finale.c
#	src/hardware/hw_md2.c
2018-08-07 21:20:27 +01:00
toaster
cfaaac78be Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore 2018-08-07 17:09:25 +01:00
Monster Iestyn
02d2b61866 Merge branch 'master' into next 2018-08-06 15:15:35 +01:00
Monster Iestyn
8d622ff6f8 Quick fix for LJ's password fix: don't check if password is set until we've confirmed that the receiving player is the server! 2018-08-05 20:17:30 +01:00
toaster
c1749b01b1 * Tint, not Teint.
* Update/rearrange menus a tad, to be more appealing and correct some categorisation in general.
2018-08-05 16:34:51 +01:00
Latapostrophe
ee5ebd978a Chat wordwrap fix + Minichat bg highlight 2018-08-05 13:08:27 +02:00
TehRealSalt
bf4f85fcca Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-08-04 15:48:50 -04:00
TehRealSalt
97ec385234 Thunder shield overlay 2018-08-04 15:48:31 -04:00
Latapostrophe
3af7b7bf91 merge sonicitems into chat-changes so that it's not lagging 10 years behind 2018-07-31 19:45:49 +02:00
Latapostrophe
ac7c249fd2 SRB2chat test rework 2018-07-31 11:10:02 +02:00
toaster
731b05e263 More UI crap!
* Fix minor additional error in tab rankings.
* Remove FREE PLAY from intermission drawer, per Sal's request.
* Remove "second%s" from the end of the "Start in %d"/"Vote ends in %d" string.
* Rename cv_advancemap's "Off" value to "Same", to make the behaviour clearer.
* Make the "Start in %d" string now begin with cv_advancemap's string (ie, "Vote in %d", "Same in %d", "Random in %d, Next in %d"...
2018-07-30 23:17:14 +01:00
toaster
f125573048 Some minor things to help draw sonicitems to a close.
* "kartvoices" cvar. Possible values "Never", "Tasteful" (default), and "Meme".
* Added a way to move quickly through the credits, rather than skip them entirely (hold spacebar or down arrow).
* Fix a few mistakes in M_ChangeCvar, some of which I introduced and some of which were weird in the first place.
* Tweak the offset of the arrows that let you know you can modify a cvar by pressing left or right (some via a patch.kart change, but others via tweaking the drawing location).
2018-07-29 18:35:56 +01:00
TehRealSalt
a80c6ccf39 Fix basenumlaps prints 2018-07-27 22:21:13 -04:00
TehRealSalt
7073c9ede2 Use joysticks 1-4 by default, restore KEY_BACKSPACE functionality
These are both huge boons for gamepad functionality. If we can add a way to add a menu key, then all of the controller requirements for v1 will be covered.
2018-07-27 22:16:56 -04:00
toaster
bd12658355 Added the ability to toggle the f-zero style elimination of last place specifically.
Type `karteliminatelast off` to turn it off, and `karteliminatelast on` to... you know the rest.
2018-07-25 21:33:03 +01:00
TehRealSalt
b42d083b99 Finishing touches on Ballhog
- Ballhog has explosion + sound on death
- Ballhog shrinks to nothing if it didn't hit anything
- Replaced a Mario sound on Orbinaut
- Fixed Jawz's sound effect
- Fixed Mines not being removed on death pits
2018-07-24 22:47:09 -04:00
toaster
5a9e10c663 Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into sonicitems
"It is only the *results* that remain in this world! All the *actions* you take in a world where time is erased are meaningless!" - Diavolo, Chapter 520
2018-07-24 22:13:20 +01:00
toaster
4f1ddaaa7d Fix buffer overrun and iteration clobbering in D_SetupVote by:
* Decreasing number of writes - now the unchanging gametype is only written once, and both gametypes are written as UINT8s instead of UINT16s.
* Increasing size of buffer to match new threshold.
2018-07-24 22:04:27 +01:00
wolfy852
f98bc6f851 Fix a minor conditional error in d_netcmd.c 2018-07-23 19:50:28 -05:00
toaster
4f23b84f92 ...fix it properly instead of rushing into it at 1am 2018-07-24 01:12:40 +01:00
toaster
823497ea06 Fix accidentially tripped PARANOIA error for teamchanges. 2018-07-24 01:03:59 +01:00
toaster
bd78c34b99 Encore mode - a fresh take on mirror mode!
* Palette remaps.
* Branding.

TODO:
* Doesn't work in GL. (Mostly.) I have SOME ideas on how to tackle this, but...
* Transmaps are broken in Encore for some reason.
* I tried to make in-level colormaps shimmy over, but it didn't quite work, so I commented it out and only semi-fixed it.
2018-07-23 23:50:41 +01:00
TehRealSalt
2f5baa6199 Item dist scales with low player count instead of just odds, you can change some cvars during start countdown 2018-07-22 18:15:11 -04:00
toaster
992b1dc795 MAP HELL IS REAL
* Force map hell if there are two or more non-spectators (ie, same condition as to not be in FREE PLAY) and everyone has selected the RANDOM level slot.
* Unique gasp-and-Shulk-based sounds for both forced and non-forced map hell occourances.
2018-07-22 21:02:31 +01:00
toaster
b818c8a2cf * Make cancelling a join work on the pause menu and console. (You need to write "changeteam spectator" to cancel a PF_WANTSTOJOIN.)
* Stop respawning spectators when their PF_WANTSTOJOIN request hasn't been processed yet.
* Handle PF_WANTSTOJOIN requests in GS_WAITINGPLAYERS.
* Refactor K_CheckSpectateStatus, and make it so PF_WANTSTOJOIN requests are processed if there's only one player in the server, even if they're on lap 2 or up.
* Make the player entry mechanism in P_SpawnPlayer use the PF_WANTSTOJOIN mechanism so that it can also take advantage of the level refresh mechanism with no extra code.
	* NOTE: This does a bad hack in order to not send multiple mapchanges while the joining timer is low! If you can think of a better way to do this, please let me know/commit it.
* Change the timer until you can hit ITEM again when a spectator who has to wait to join shorter.
* (controversial, but I think necessary) - flash the ITEM text when the above-mentioned timer is nonzero.
2018-07-21 16:45:08 +01:00
TehRealSalt
6eaed1ac7b Spectator overhaul
- New player flag, PF_WANTSTOJOIN, added for setting up a spectator queue. You are allowed to join as long as no one has started lap 2.
- Map resets when two people have entered the game, so matches can start naturally without the need of an admin.
2018-07-20 19:11:36 -04:00
toaster
7e0d5a479c Fix the egregrious bugs from our last testing netgame.
* Made Got_Teamchange's level-based stuff only happen in GS_LEVEL.
* If, by chance, DoTimeOver gets called on a player without an object, it won't crash either.
* Make ending music play when you get time overed.
* Make changing-to-spectators get removed from the intermission drawer.
2018-07-19 01:27:36 +01:00
toaster
2b7298e959 *A biggie: two-tier intermission screen!
* Have the entire thing slide the fuck away a short while into the intermission.
	* The tab screen is modified to work off similar behaviour and presentation.
* To go with it, a revamp of how Battle's scoring is handled.
	* It's now considered "hits", and is stored in a reuse in one of the vanilla NiGHTS variables, allowing it to use exactly the same ranking mechanisms as race.
	* No more resetting of score between battle rounds.
* Minor, unrelated general code cleanup in places.
* Disable the YEEEAH in splitscreen, otherwise you'll hear it *all the time*.
2018-07-18 20:23:46 +01:00
TehRealSalt
6574e1f0fc Shrink debug command, trailing items spawn directly on players, rainbow win 1 is more faithful, make springs more powerful for shrunk players, correct Grow/Shrink fullbright frame 2018-07-12 01:31:33 -04:00
TehRealSalt
9da279006f Merge branch 'master' into sonicitems 2018-07-10 17:02:55 -04:00
toaster
c65a2e3177 Fix unpausing when you're a waitingplayers admin. 2018-07-10 19:39:11 +01:00
TehRealSalt
ec0c358755 Merge branch 'master' into sonicitems 2018-07-08 17:51:44 -04:00
TehRealSalt
278fd87452 Fix Sryder's bool error
I don't seem to get this error for some reason, even after upgrading to w64 & GCC 7.2.0, but hopefully this fixes it
2018-07-07 17:33:26 -04:00
toaster
97348beb66 Fix all compilation errors (tested using DEBUGMODE=1 and ERRORMODE=1) that remain outstanding. Notably:
* Remove FUNCMATH from all void-returning functions, given GCC80 specifically complains about this case.
	* Extend the length of all extant buffers to the safety threshold recommended by the compiler.
	* Add void casts to WS_getaddrinfo's setting to prevent complaints about incompatible typecasts.
	* Extend the charsel, face, and superface buffer sizes and writes to include the null terminator. (I didn't really want to do this because it's not even particularily NEEDED, but there was literally zero way to get around the request that I could find with multiple online searches. I tried.)
2018-07-07 16:52:01 +01:00
Monster Iestyn
e5236c3137 Merge branch 'master' into next 2018-07-05 21:09:39 +01:00
toaster
91941830fa Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into sonicitems 2018-07-04 22:58:18 +01:00
toaster
f49b12a705 * Fix the fades mess, and have the title screen always have a smooth, non-checkered fade from blapck!
* Fix all the bugs with skin not being set properly or kept synchronised with the multiplayer setup in record attack.
* Reduce the amount of flashing on the voting screen.
2018-07-04 22:57:50 +01:00
TehRealSalt
fbcf566874 WANTED recalculates on hit, tons of spectator changes 2018-07-03 21:12:25 -04:00
SeventhSentinel
80c2b56927 Changed all instances of "balloon" to "bumper"
Also changed "It's you!" to "Select character & color..."
2018-07-03 15:14:47 -04:00
toaster
b0d9110e5f Intermissions...
* Do the gametype change stuff on the voting screen.
* Make all the picking sound and setting stuff one function, rather than in two seperate places that need to be kept identical.
* Have the timer at the bottom be the highlight colour.
* Map hell! LF2_HIDEINMENU is craftily reused...
* Less allocation and deallocation for the adjacent G_RandMaps.

Other stuff...
* Fix command_map_f not resetting players' score in battle.
* Shiny titlescreen!
* Fix a random bonus newline in one of the quit messages.
2018-07-02 23:23:04 +01:00
TehRealSalt
5c7b66cc0f WANTED 2018-07-01 04:36:09 -04:00
TehRealSalt
e4c96fcd7f Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-06-30 21:19:54 -04:00
toaster
cf6f85a72a Don't look at this commit too closely until after netgame, I want to surprise yalls!!
* Lots of menu changes!
	* Little arrows next to changeable cvars!
	* Show default value for sliders!
	* Pretty pretty pretty.
	* I don't know how to describe some of these changes.
* Effectively nuke MIDI music support!
* Skiddown at the start of a race is more interesting!
* Spinning in waterslides!
* Tiny bugfix in voting, plus a little celebration...
2018-06-30 23:18:13 +01:00
TehRealSalt
0ba127c435 Unused vars 2018-06-29 22:17:36 -04:00
toaster
9a9e1ad81e * Rework min/max cvars to allow for "named" values! They probably won't work if they're inside the range, but...
* Combine the numlaps and usemapnumlaps functionality on the menu into basenumlaps, which numlaps is set to every race start, except when it's map default value (0) in which case it loads the map's lap count.
2018-06-29 17:49:02 +01:00
toaster
d2a8414dee * Properly handle gametype changes when a different-gametype level pops up on the voting screen.
* Defer the change until you're actually modifying the map, in service of the following.
	* Reset score.
	* Call that gametype change function.
* Collary of the above: Don't reset score if you're `map mapxx`ing in the console, unless it's `force`'d.
* Fix the basic, obvious issues that'd prevent us shipping with the new level title system.
	* Correct the non-green resolution support, which was ALMOST there but which I accidentially fucked up one of the signs on.
	* Adjust the subttl position if it'd get overwritten.
	* Draw the gametype with the subttl.
* Adjust the gametype constants for easier gametype_cons_t array access.
2018-06-29 15:14:43 +01:00
toaster
dcec24605e * AN OPPORTUNITY FOR GAMETYPE CHANGES ON THE VOTE SCREEN!
* Super important to allow dedicated servers to continue forever without needing to add Terminal.
    * To facilitate understanding, add gametype dog-ears to the vote screen!
    * To do the above, add V_DrawDiag! Works in GL, too!!
* Unrelated shit!
    * Fix a buffer overrun in the randmapbuffer!
    * Disable spectating in splitscreen... Not 100% sure, but in 2p battle, if you spectate, you just lose one balloon and respawn...
    * Improve all the string drawing functions' behaviour - both with being SLIGHTLY clipped by the edge of the screen, and when confronted with drawing off the base 320*200 internal area
2018-06-28 15:47:56 +01:00
SeventhSentinel
16e1569af1 Lakitu murder & countdown improvements
(I'm not SevenethSentienel! I just don't feel like logging out!)
2018-06-24 22:15:22 -04:00
TehRealSalt
2497d9c96c Debug checkpoint, and prevent spinout/booster timers while in the air 2018-06-17 18:10:42 -04:00
wolfy852
8abeae7805 Chat Manager 2018-06-15 05:20:01 -05:00
TehRealSalt
0543d8e0fa Better menus 2018-06-14 20:18:29 -04:00
TehRealSalt
4e2b30fcae Fixes 2018-06-08 00:02:28 -04:00
TehRealSalt
889d790ea0 Disable MT_QUESTIONBOX again
I refuse to give up the name "cv_invincibility" to another vanilla cvar that we will never use seriously.
2018-06-07 19:46:48 -04:00