Commit Graph

432 Commits

Author SHA1 Message Date
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
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
TehRealSalt 9b3751b30c Merge branch 'master' into sonicitems 2018-06-07 19:39:45 -04:00
TehRealSalt e39de53fa2 Use strlen for all of the valid zone title/act num checks 2018-06-05 17:28:46 -04:00
TehRealSalt 0fc113e6dd actnum is now a 2 character long string
For Cloud Cradle Zone, Act K
2018-06-05 01:34:05 -04:00
Louis-Antoine c389c0b3dc xd 2018-06-04 22:30:27 +02:00
Louis-Antoine 91081a3e53 Disable admin password by default 2018-06-04 22:14:01 +02:00
TehRealSalt 518676c2a4 P, not K 2018-06-03 21:07:36 -04:00
TehRealSalt 6d57d39e12 SUPER CHARGED KARMA ITEMS
They give equal chance on a lot of good shit, instead of the normal boring pool of items, mwahaha

(also calls P_CheckRacers when someone spectates)
2018-06-03 20:58:52 -04:00
TehRealSalt 0906978a2a Remove collide debug stuff 2018-06-03 18:58:50 -04:00
TehRealSalt 4c0f64ff4f Merge branch 'master' into sonicitems 2018-05-31 19:47:50 -04:00
TehRealSalt 7d021ae1e6 Splitscreen-friendly voting screen 2018-05-31 18:49:19 -04:00
TehRealSalt eadd7381eb Changing from Relaxed Standard Turbo to the typical Easy Normal Hard
Reception to the naming convention has been either "don't care" or "too hard to remember"
2018-05-30 17:29:40 -04:00
TehRealSalt dcd8c87c6f But hey, what if I also made color & skin save to the config too!
Does this make up for it? :V
2018-05-30 16:59:53 -04:00
TehRealSalt 36b52e1c67 Merge remote-tracking branch 'refs/remotes/srb2public/next'
# Conflicts:
#	src/f_finale.c
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/m_misc.c
2018-04-07 18:43:59 -04:00
TehRealSalt e5798f7490 Rename fake item to eggman monitor 2018-03-13 21:07:08 -04:00
TehRealSalt 375f9a9291 Merge remote-tracking branch 'refs/remotes/origin/master' into sonicitems
# Conflicts:
#	src/d_netcmd.c
#	src/g_game.c
#	src/k_kart.c
#	src/p_enemy.c
#	src/p_inter.c
#	src/p_map.c
#	src/p_user.c
#	src/sounds.c
#	src/sounds.h
#	src/y_inter.c
2018-03-12 00:58:13 -04:00
TehRealSalt 517fcd4366 Better gamepad axis support 2018-03-11 18:07:28 -04:00
TehRealSalt f97ec30493 Made a lot of gametype checks use either G_RaceGametype or G_BattleGametype
Should make it a lot easier to add more gametypes later.
Also some minor fixes:
- Changed up how shell speed scales in mobjscale juuuust slightly, so
it's less messy
- Fixed CHECK showing spectators
2018-03-04 15:27:52 -05:00
TehRealSalt ce74a4c964 Attempted to fix how voting handles no votes
I don't know exactly what it did previously since I never actually
observed what happens, but now in dedicated servers it will wait for
time to run out, then if there's no votes by that time it will just go
onto nextlevel
2018-03-01 17:05:36 -05:00
Sryder 0454293bae Hopefully a few more fixes and sanity changes for map voting 2018-02-23 01:53:30 +00:00
Sryder dbc27e9c9e It's SINT8 not INT8 2018-02-23 01:04:52 +00:00
Alam Ed Arias 99552c2ba2 Merge branch 'master' into next 2018-02-14 10:29:24 -05:00
TehRealSalt 3e7fbad490 Porting over some things from sonicitems 2018-02-13 16:48:09 -05:00
TehRealSalt 00d2038d61 Merge remote-tracking branch 'refs/remotes/origin/master' into sonicitems
# Conflicts:
#	src/k_kart.c

(Also I added some extra music for voting, because I forgot I didn't
commit the merge :V)
2018-02-11 12:18:25 -05:00
TehRealSalt 2af4f0451a One last thing: don't add whatever the game rolls for the random option
Makes it even more of a wild-card option, also makes sure that you
actually *see* all of the maps before it empties
2018-02-10 16:50:44 -05:00
TehRealSalt 2889687d1d New invincibility effect, grow/shrink stuff
Whenever grow/shrink effects get made, I'll remove the Mario-style
stuttered growth and whatever else needs doing beyond that
2018-02-10 01:19:33 -05:00
TehRealSalt ec84b46bb4 P != M 2018-02-08 18:14:56 -05:00
TehRealSalt 85a81ed087 Minor adjustments in hopes that I fixed the resynch bomb on gametype switch? 2018-02-08 17:13:06 -05:00
TehRealSalt 8c2bdfd006 Belp
- Minimap heads that aren't yours are transparent
- Minimap has a visibility slider
- Bomb stuff renamed to Mine
2018-02-07 22:33:27 -05:00
TehRealSalt cbff4bbf44 So much
- Renamed fucking everything
- Threw out all of the item code because it looks at me funny
2018-02-05 18:55:52 -05:00
TehRealSalt b20e2d55eb Everything
Been a while since I synced :V
2018-02-03 23:47:47 -05:00
toasterbabe 5adfdf9516 cv_playername already has a valid default value of "Sonic". We do NOT need to expose things like this. 2018-01-30 22:48:53 +00:00
TehRealSalt 58da420e30 Setup vote is a XCMD now
But now the rest of voting can get desynced easily now... this is
increasingly getting more and more fucked.
2018-01-30 16:42:44 -05:00
TehRealSalt 202ad11b43 Merge remote-tracking branch 'refs/remotes/origin/master' into democracy 2018-01-29 19:20:23 -05:00
TehRealSalt 1e01e65a8b Fixed spectating for real, messages for changing some kart cvars, Mirror Mode disallowed in Battle 2018-01-29 19:15:25 -05:00
TehRealSalt 41f09816ce Functional, ready for netgame! 2018-01-27 23:52:01 -05:00
TehRealSalt cc0c99640f Work so far
Crashes, but baseline's there
2018-01-27 01:17:08 -05:00
TehRealSalt 403e14e971 Merge remote-tracking branch 'refs/remotes/origin/master' into menus-cvars-unlocks
# Conflicts:
#	src/g_game.c
#	src/m_cheat.c
#	src/p_user.c
2018-01-24 16:24:36 -05:00
TehRealSalt f6cfcd4f89 Restructured some ticcmd stuff, temporary keyboard defaults, commented out mouse options menu
No more weapon number buttons, button constants reordered, and BT_JUMP
renamed to BT_DRIFT, and removed a lot of commented out stuff or stuff
we didn't need. Spectator-only support for looking up/down soon.
Keyboard defaults are just what I use, plan on adjusting it further
after more feedback
2018-01-24 02:45:06 -05:00
TehRealSalt 8b88a2ebd8 Spectating is properly implemented now
- Spectate button works
- Spectating & objectplace controls are usable now
- New spectator HUD
2018-01-22 22:18:57 -05:00
TehRealSalt 672c4b5298 Record best lap time in Record Attack
- Record Attack replays now save best lap time
- Removed instances of NiGHTS Attack
- Removed a lot of unlockable that have no use in Kart (ultimate mode,
perfect bonus, score emblems, etc)
- Removed all methods of activating ultimate mode
2018-01-21 19:15:26 -05:00
TehRealSalt abfefd3d51 No more analog mode
It doesn't work well in SRB2Kart :V
Also fixed the player setup name field's _ being 8 px too far to the
right
2018-01-16 21:58:48 -05:00
TehRealSalt db09f7b3d6 Lots of changes
- Menus now have all of the Kart cvars
- Removed any cvars that aren't useful for Kart from the menu (they
still exist in the console, though)
- Removed SP and NiGHTS Mode options from the main menu
- "kartcc" is renamed "kartspeed", uses values 0-2 instead of multiples
of 50, or the terms "Relaxed", "Standard", and "Turbo"
- Many gametype options (game speed, frantic, mirror, & karma comeback)
are now changed on map load instead of instantly
- New cvar, "kartminimap", for disabling the minimap
- The maxplayers cvar now actually matches up with our 16 player limit
- Game now keeps track of matches played. Has a condition type
associated with it, as well.
- Game checks for unlocks and saves gamedata when finishing a match,
even in MP
- Removed most of the normal emblems, added a single emblem for Green
Hills. Didn't know what to do with extra emblems and such so I just left
them (FOR NOW c:<)
2018-01-15 22:31:14 -05:00
Monster Iestyn f1b8e122a2 Fix missing semicolon 2018-01-12 20:05:09 +00:00
Monster Iestyn 602701d6dd G_DoPlayDemo: prepend srb2home to the demo name (if an external file) so that demos in custom home paths can be loaded 2018-01-11 16:55:42 +00:00
TehRealSalt f2fb100515 Stupidly minor "Sonic Robo Blast 2" -> "SRB2Kart" 2018-01-02 23:15:13 -05:00
TehRealSalt 42ddd32406 Merge remote-tracking branch 'refs/remotes/srb2public/master' 2018-01-02 22:59:43 -05:00
TehRealSalt d92e2d89dd Y'know what let's just completely get rid of this prefcolor restriction
Kart doesn't really need this if we're taking the MK8 Yoshi/Shy Guy
approach to just letting you pick whatever colors. It's just plain
annoying to set your color in the menu, then go into splitscreen and see
that none of it actually carried over :V
2018-01-01 18:12:44 -05:00
Monster Iestyn afcdb5cd1e Merge branch 'restartaudio' into 'master'
Add command to restart the audio system

Closes #27

See merge request STJr/SRB2!214
2017-12-27 16:47:50 -05:00
Steel Titanium 875446295b Remove redundant !dedicated check 2017-12-27 16:36:57 -05:00
Steel Titanium 3856165623 Indentation cleanup 2017-12-27 13:18:20 -05:00
TehRealSalt 0dfd7fc41e some joystick fixes
Turns out P3/P4 controllers are broken (and still are)
2017-12-24 08:20:58 -05:00
TehRealSalt 5db276173e Merge remote-tracking branch 'origin/quads' into quads
# Conflicts:
#	src/k_kart.c
2017-12-18 21:11:59 -05:00
TehRealSalt 349b27e0de Change splitscreen into UINT8, fix HUD slightly more 2017-12-18 20:59:04 -05:00
Monster Iestyn d576453b56 Command_Addfile: add "too many files" and already-loaded checks and respective error messages
No more shall the server be kicked from their own servers for re-adding a wad by accident!
2017-12-18 21:17:37 +00:00
Wolfy ea49a4c009 Merge branch 'quads' of http://git.magicalgirl.moe/KartKrew/Kart into quads 2017-12-18 04:57:57 -06:00
Wolfy 2e26e79934 Fix 3P and 4P configuration screens
They don't crash anymore!
2017-12-18 04:56:38 -06:00
TehRealSalt 122eb82170 Merge remote-tracking branch 'refs/remotes/origin/battle' into quads
# Conflicts:
#	src/g_game.c
#	src/k_kart.c
2017-12-18 01:02:53 -05:00
Wolfy 0305af3069 Merge branch 'quads' of http://git.magicalgirl.moe/wolfs/Kart into quads
# Conflicts:
#	src/d_main.c
2017-12-17 20:30:37 -06:00
Wolfy 32b9663202 more stuff
nothing too special here
2017-12-17 20:23:11 -06:00
TehRealSalt 66a9a6bdd4 Fixed local sync fail, among a bunch of other splitscreen check fixes in other files
I don't know how many of the changes in d_clisrv were really necessary,
I was just franticly trying to figure out the source of the local sync
fail
2017-12-17 14:17:07 -05:00
TehRealSalt fc9d426660 More stuuuuff 2017-12-17 01:21:24 -05:00
TehRealSalt ffbf6e8752 Mirror Mode
- Added kartmirror cvar, flips the screen & player controls. The
post-processing effect is currently Software only; will need an OpenGL
implementation but I don't know enough to make that happen
- Moved adminplayer = -1 setting to SV_ResetServer instead of
SV_StartServer
2017-12-12 00:07:14 -05:00
Wolfy fb976ab26c more quad stuff 2017-12-11 00:12:38 -06:00
Wolfy 15751dfd47 initial quad stuff (does not work) 2017-12-08 01:30:39 -06:00
Wolfy d6af8e52c1 double oops 2017-12-08 00:59:12 -05:00
Wolfy 4714e8d179 Remove hardcoded limit on admins 2017-12-07 22:45:39 -06:00
wolfy852 37448a3e92 Merge remote-tracking branch 'remotes/origin/battle' into multi-admin 2017-11-20 21:49:42 -06:00