Commit graph

584 commits

Author SHA1 Message Date
fickleheart
d05a3a59c4 Write respawn command usage to replays 2019-01-27 19:30:20 -06:00
fickleheart
49caebd2db Fix crashing at the end of netreplays 2019-01-27 19:09:29 -06:00
fickleheart
c6248faa30 Write skin/color/name changes to replay 2019-01-27 19:07:30 -06:00
fickleheart
cf6e3a45d7 Reset oldcmd when recording netreplays 2019-01-27 17:09:25 -06:00
fickleheart
3cec3d9658 broken spectator stuff? 2019-01-27 16:23:34 -06:00
fickleheart
26770c5103 [HACK] Save correct lap count on netreplays 2019-01-27 15:45:42 -06:00
fickleheart
894db0c6fd Store cmd.latency in replays 2019-01-27 15:09:58 -06:00
fickleheart
83738a20b7 Fix players spawning in the wrong spots when watching replays 2019-01-27 14:34:22 -06:00
fickleheart
6dcc4de979 Separate oldtic for each player 2019-01-27 14:34:19 -06:00
fickleheart
712dfdc3d1 Fix compile errors 2019-01-27 14:33:57 -06:00
fickleheart
c9444116dd I don't wanna deal with ghosts right now 2019-01-27 14:33:51 -06:00
fickleheart
dee45fdf62 Store initial player data in net replay 2019-01-27 14:33:45 -06:00
fickleheart
1f72df4edb Start with some strange multiplayer replay init stuff
Mostly just disabling the parts of the replay that assume
a single player, right now.

# Conflicts:
#	src/g_game.c
2019-01-27 14:33:38 -06:00
Sal
910df92d5a Merge branch 'expose-more-lua-stuff' into 'next'
More Lua stuff + PlayerCmd hook

See merge request KartKrew/Kart-Public!28
2019-01-26 13:19:41 -05:00
toaster
1a21c5efbe Code cleanup as requested by Sal and Sryder.
* majormods and savemoddata cannot coexist as true values, so going through and making situations that involve both only reference one.
* Clean up comments in `dehacked.c`.
2019-01-26 16:58:45 +00:00
Latapostrophe
72133b7498 No more ghetto check, and some more descriptive comments on the Hook 2019-01-26 16:55:26 +01:00
toaster
d045af07b1 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart-Public.git into majormods 2019-01-21 21:56:49 +00:00
toaster
fdbf750f48 Fix incorrect condition for setting savemoddata to false. 2019-01-21 21:48:52 +00:00
toaster
f8229b9dad whoopsie doodle, forgot gh wasn't allocated until after this section 2019-01-18 14:53:43 +00:00
toaster
15aafb00a9 Turns out modifiedgame was getting set during startup because of making it use G_SetGameModified. Uh, woops? 2019-01-18 13:01:40 +00: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
toaster
a7445a7b71 Woops, didn't commit the most up-to-date g_game.c originally (old one didn't compile) 2019-01-16 15:27:23 +00:00
fickleheart
f5d491eda2 Merge remote-tracking branch 'remotes/internal/master' into movementchecks
# Conflicts:
#	src/g_game.c
#	src/p_user.c
2019-01-15 21:01:30 -06:00
fickleheart
e30222ebac Don't multiply driftturn by realtics
(I also moved multiplying angleturn to a single spot)
2019-01-15 20:19:25 -06:00
fickleheart
0121d47049 Merge remote-tracking branch 'internal/master' into new-turnhax-and-latency-stuff 2019-01-15 19:55:42 -06: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
Latapostrophe
c2aa6d4de6 Expose some more Kart functions, freeplay and rankings bumpers are now hud stuff you can toggle, + experimental playercmd hook 2019-01-13 14:40:48 +01:00
TehRealSalt
37e79ebfbd Redone credits for joiners in a less stupid way, + redone start ambience in a less stupid way 2019-01-10 01:03:53 -05:00
fickleheart
a444a214d0 Here too 2019-01-09 09:07:41 -06:00
fickleheart
d20122327f Make sure cmd.latency is always 0 in mode attack? 2019-01-09 09:05:57 -06:00
TehRealSalt
72bc1b48f6 Merge branch 'next' into music-credits 2019-01-09 03:08:20 -05:00
fickleheart
01d7dc35ff Merge remote-tracking branch 'internal/master' into new-turnhax-and-latency-stuff 2019-01-08 20:56:14 -06:00
fickleheart
cd71e94785 Remove filthy filthy cheats 2019-01-08 20:36:06 -06:00
wolfy852
ad01dcc5ac Merge remote-tracking branch 'remotes/public/next' into gamepad-tweaks
# Conflicts:
#	CMakeLists.txt
#	appveyor.yml
#	src/command.c
#	src/command.h
#	src/d_clisrv.c
#	src/d_netcmd.c
#	src/dehacked.c
#	src/doomdef.h
#	src/hu_stuff.c
#	src/m_misc.c
2019-01-08 16:32:24 -06:00
Sal
78ac038864 Merge branch 'mobjscale-global' into 'next'
Add a global for mobjscale

See merge request KartKrew/Kart-Public!10
2019-01-08 17:00:34 -05:00
SeventhSentinel
73542c008c merge srb2 next 2019-01-05 15:59:23 -05:00
fickleheart
bc429ad4f8 Determine latency with leveltime BS instead of nettics 2019-01-05 01:13:16 -06:00
fickleheart
656de08b96 test stuff 2019-01-04 23:09:29 -06:00
fickleheart
bd36a0f0a1 Don't turn players more than they're allowed to
This should account for latency properly.
2019-01-04 23:09:27 -06:00
fickleheart
12b0e7d5da Send latency in players' ticcmds 2019-01-04 23:09:26 -06:00
SeventhSentinel
5d51754936 In-game music credits 2019-01-04 04:44:55 -05:00
mazmazz
b7bb570f97 Merge remote-tracking branch 'public-gl/master' into public-musicplus-core 2019-01-01 10:41:40 -05:00
mazmazz
a626660564 Merge remote-tracking branch 'public-gl/next' into 2122-version 2018-12-25 00:19:42 -05:00
mazmazz
82a40f0dba Support Look Up/Down keys for NiGHTS movement 2018-12-24 23:48:03 -05:00
Latapostrophe
b7d7472a88 Merge branch 'next' into SRB2-CHAT 2018-12-23 22:53:24 +01:00
Latapostrophe
619dd9d08a Fixed various issues: added some free()s, lua_optboolean, other things, and also made sure chat can't send empty messages. 2018-12-22 12:34:17 +01:00
Digiku
9525de2d83 Merge branch 'camera-backport' into 'next'
Suggestion: 2.2 camera changes backport

See merge request STJr/SRB2!393
2018-12-20 16:57:23 -05:00
toaster
0aabcd2503 lj dm'd me so here's a second, more sensible crack at it 2018-12-18 19:40:38 +00:00
toaster
99e50250cf Move some sidemove/forwardmove checks to playsim code rather than have them happen in ticcmd generation.
pGetPlayerControlDirection has to die since it was the only other usage of sidemove, and wasn't even relevant anymore anyways.
2018-12-18 18:05:11 +00:00
TehRealSalt
03a4bd8f53 Revert default changes
Digiku said they'd handle the new button defaults so \m/
2018-12-18 12:55:05 -05:00
Latapostrophe
45aba493c7 2.1.21 and all of the kart additions. Woo. 2018-12-17 20:43:59 +01:00
TehRealSalt
e763eab6cd 2.2 camera changes backport
- Very slightly less claustrophobic camera defaults
- Changed camera settings are saved
- Camera distance increases relatively with splitscreen & analog mode.

These changes are kind of debatable because them not saving was an intentional decision initially, and the camera being farther out could potentially clip more geometry where it previously didn't... still, thought I'd open this for consideration
2018-12-16 18:18:59 -05: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
wolfy852
ca2475ac3e Print GameController info when detected, use proper 360 controller defaults for triggers 2018-12-14 11:50:53 -06:00
SeventhSentinel
2422501ab9 Add a mapobjectscale global
Should be no different than it was before, now it's just less tedious to type :V
2018-12-12 21:55:59 -05:00
Digiku
17e9188c89 Merge branch 'execversion' into '21-version'
Block previous versions' config defaults with EXECVERSION consvar

See merge request STJr/SRB2!371
2018-12-06 12:41:20 -05:00
mazmazz
70aa4ce18e Add alwaysfreelook2 and mousemove2 to config versioning
* Change alwaysfreelook2 to be consistent with alwaysfreelook (the only one that wasn't the same)
2018-12-06 11:59:34 -05:00
mazmazz
a802069313 Move joyaxis_fire default to right trigger 2018-12-06 05:55:56 -05:00
mazmazz
aaf5d2e1dc Change 2p controller defaults 2018-12-06 05:26:28 -05:00
TehRealSalt
c599d84d6e Actually, best of both:
Let Grow/Shrink revert itself when it changes to 0, as well as add a function for removing either. Means we don't have to modify every single > 0/< 0 check, and is overall cleaner.
2018-12-05 23:28:44 -05:00
TehRealSalt
d0180ecb15 Cut this down slightly 2018-12-05 20:54:58 -05:00
TehRealSalt
d53e4af93a Merge remote-tracking branch 'srb2public/next' into merge-next 2018-12-05 20:46:48 -05:00
Digiku
42cb597731 Merge branch 'joystick-juggling-two' into 'next'
Joystick additions for menu, axis defaults, and vertical look toggle

See merge request STJr/SRB2!359
2018-12-03 22:59:19 -05:00
mazmazz
6ca1130551 Hardcode Screenshot, GIF, and Viewpoint to their F keys 2018-12-03 13:21:16 -05:00
mazmazz
205e52f6d4 thisjoyaiming fix for chasefreelook 2018-12-03 13:13:01 -05:00
mazmazz
7e523a1e35 Reset vertical look when toggling joyaiming 2018-12-03 13:10:24 -05:00
mazmazz
59cabea8bd Add joyaiming qualifier for joystick look up/down 2018-12-03 13:10:19 -05:00
mazmazz
6dd44ca1de Change PC axis defaults to 360-friendly values 2018-12-03 13:10:15 -05:00
mazmazz
31f23fda8d Add gc_viewpoint from Kart 2018-12-03 11:50:57 -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
wolfy852
3ec0afc09d AXISBRAKE, take out GameController stuff for now 2018-12-02 19:33:09 -06:00
wolfy852
d1a0df09a5 Merge remote-tracking branch 'remotes/origin/master' into unfuck-gamepads 2018-12-02 02:01:51 -06:00
wolfy852
aba7711c39 Potentially fix spectators floating when inputting right on the analog stick. 2018-12-02 02:01:06 -06: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
5534017954 Merge remote-tracking branch 'srb2public/next' into merge-next 2018-11-29 08:49:50 -05:00
TehRealSalt
5f3abae81b Merge branch 'possibly-better-turn' 2018-11-29 07:13:24 -05:00
toaster
d8955f1f87 LF_SECTIONRACE now has a secondary function!
* Sets the player respawn coords on the finish line, so dying in the short interval between crossing an intermediate finish line and hitting a checkpoint doesn't send you all the way back to the beginning.
2018-11-28 16:33:52 +00:00
TehRealSalt
79359a3672 Multiply turn values by realtics 2018-11-28 03:10:36 -05:00
TehRealSalt
e2a9aeb34c Require 3/5ths of checkpoints instead of 1/2
This broke MKSC in a minor way if you skip a specific item set and then take the big cut... I'll let it go anyway since its an improvement everywhere else.
2018-11-27 14:28:11 -05:00
Sal
a2ab230bfa Merge branch '102-gameplay' into 'master'
v1.0.2 gameplay

See merge request KartKrew/Kart!107
2018-11-27 12:25:37 -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
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
5dbd747237 Flush map buffer early, again
Now it's directly in G_AddMapToBuffer
2018-11-26 06:09:26 -05:00
TehRealSalt
4bd6ae3f04 Calculate buffer size manually
(Yes, I checked; this always outputs "3" for its current usage.)
2018-11-26 05:09:56 -05:00
TehRealSalt
494fa55390 Accidental removal 2018-11-26 04:42:14 -05: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
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
d467399480 Keep track of the place SPB is following
This makes it so that if the SPB'd person is passed, then the person who's getting SPB'd won't get the increased item odds for the weird feedback loop.
2018-11-24 20:41:17 -05:00
TehRealSalt
3f35ffd7c6 Franticized items for 2nd place VS SPB'd 1st 2018-11-22 23:38:54 -05:00
mazmazz
17ff7e69a0 Add chasefreelook to separate third and first person mouselook 2018-11-22 17:05:24 -05:00
mazmazz
f926774ee1 Hardcode Pause/Break key and change Pause default; show prompt in menu about Pause key 2018-11-22 14:37:21 -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
8f2210fb2f Allow turning while respawning
This makes rubber-burn turning even more useless, but I don't think there's a way to fix the rubber-burn turn without breaking demo playback, so let's just do the part that is needed for now. I kinda want to redo how that mechanic works anyway.
2018-11-21 20:29:21 -05: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
TehRealSalt
9b1c2b8dc0 Make Map Hell a 1% chance 2018-11-19 23:41:15 -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
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
Sal
c419d973a3 Merge branch 'chat-changes' into 'master'
Fix capslock wonkyness

See merge request KartKrew/Kart!98
2018-11-17 16:54:56 -05:00
Latapostrophe
477400020d forgot whitespaces.... 2018-11-17 22:23:23 +01:00
toaster
4abb03a231 Two tweaks to gamedata saving:
* Save gamedata in Y_UpdateRecordReplays(), so that you never unfairly lose out on your spoils by setting modifiedgame before the game ends.
* Always save your matchesplayed/totalplaytime increase at the successful completion of a level.
2018-11-17 20:16:27 +00:00
Alam Ed Arias
d4cb81cb28 Merge branch 'master' into next 2018-11-14 15:45:29 -05:00
TehRealSalt
ba9818c8ca Skip errors for staff ghosts 2018-11-14 05:20:51 -05:00
TehRealSalt
1ab5ac58a7 Title demos don't interrupt the music 2018-11-13 21:01:59 -05:00
TehRealSalt
93ab9850a3 Clean-up of unused/removed sfx, replacement of the last remaining Mario sfx, and new sfx in some spots
- Replaced eggitem landing sfx
- Replaced banana landing sfx
- Replaced item tossing sfx
- Replaced item clashing sfx
- Added sfx for drift spark tier changing
- Added sfx for brake drifting
- Reverted Mario Mode sound replacement back to vanilla
2018-11-11 17:30:30 -05:00
TehRealSalt
69287984db Merge branch 'master' into staff_names 2018-11-08 14:47:38 -05:00
TehRealSalt
393fee317e Fix for the Y_FollowIntermission change hurting Record Attack
Should probably be ported to vanilla
2018-11-08 14:43:06 -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
935c0da7d2 Fix startbumps.
A more detailed explanation:
* P_CheckPosition is the function which determines collisions.
* In Vanilla, collisions do not happen between players unless tailspickup is off (which it basically never is).
* Even with tailspickup off, on-spawn player collisions do not affect momentum.
* However, in kart, player collisions cause the player to get bumped.
* It would succeed at the P_CheckPosition call because players aren't *solid* solid, even though they cause bumps.
* It would fail at the K_CheckPlayersRespawnColliding call, but that would be too late, *as the player already has been bumped.*
* The player would therefore be moved to a new location, but still retain bump momentum, and the bump sound would have played for both players.
* Therefore, the obvious solution is to swap P_CheckPosition and K_CheckPlayersRespawnColliding, so that it checks for players BEFORE it performs object collisions at that spot.
* The reason we didn't see this MUCH before is that it can only ever happen in the case of ties.

I could've easily done this into master, but obviously I figure yalls'd at least like to check this first.
2018-11-06 13:33:27 +00:00
toaster
75d08f2048 TITLE SCREEN DEMOS: Pick a random Staff Attack demo!!!
Also: Fix watching a demo replay of a map with a palette not resetting your palette back to normal when you go back to the menu(/titlescreen).
2018-11-05 13:45:40 +00:00
toaster
6604d0181c Staff attack ghost names on the REPLAY... menu.
Also: Remove playercolor being set to the replay's color. No need to kill your settings, seeing as it makes no tangible effect on your replay (doesn't even lose colour when you die, so I don't even know...)
2018-11-04 01:00:17 +00:00
TehRealSalt
5c1cc6e1df Merge branch 'master' into all_hardcode 2018-11-02 01:42:34 -04:00
LJSonik
b52158eb48
Merge branch 'master' into analog-flipcam-synch-fix 2018-10-29 19:52:08 +01:00
TehRealSalt
9f18164ad4 The motherload: all of my Lua is hardcoded
This took like 6 straight hours of work, never ask me for anything ever again
2018-10-29 05:00:08 -04: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
TehRealSalt
9630e01616 Camera crash fixes
UNRELATED, but they made this branch a pain in the ass to test so I needed to fix this here :V
2018-10-28 17:31:59 -04:00
Latapostrophe
26093de2e9 Merge branch 'master' into chat-changes 2018-10-25 11:14:49 +02:00
Sal
3e556cde44 Merge branch 'last-netgame-tweaks' into 'master'
Last netgame tweaks

See merge request KartKrew/Kart!57
2018-10-24 19:33:47 -04:00
TehRealSalt
a1da768a87 Keep specator join request on respawn 2018-10-22 16:26:24 -04:00
TehRealSalt
3ec228d34f No more cheesing Shrink by dying
(If that was kept, we'd see it exploited all the time on release :V)
2018-10-22 16:22:41 -04:00
TehRealSalt
9e4937d07f Don't f12 time over'd players 2018-10-22 15:06:07 -04:00
toaster
791dc079ec Merge branch 'master' into 'chat-changes'
# Conflicts:
#   src/hu_stuff.c
2018-10-21 08:27:28 -04:00
TehRealSalt
2021897972 Merge branch 'master' into new-spb 2018-10-19 17:45:06 -04:00
Monster Iestyn
29b242a5bd Merge branch 'endgame-code-refactor-backport' into 'next'
Endgame code refactor

See merge request STJr/SRB2!297
2018-10-19 17:31:19 -04:00
TehRealSalt
553066b48b Merge branch 'master' into net-screen 2018-10-19 15:59:13 -04:00
Sal
734b7008c4 Merge branch 'democam' into 'master'
If I were a bad Democam, I wouldn't be sittin' here discussin' it with ya now would I?!

See merge request KartKrew/Kart!48
2018-10-19 15:50:28 -04:00
Sal
4994e9749f Merge branch 'no-spectate-griefing' into 'master'
Prevent spectate griefing

See merge request KartKrew/Kart!43
2018-10-19 15:50:18 -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
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
TehRealSalt
8d6e203bd2 New SPB
May not make it to R1, but oh well
2018-10-18 04:43:50 -04:00
TehRealSalt
c8cd84ca34 No more vanilla democam, for real 2018-10-17 19:10:23 -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
TehRealSalt
7f4228c37b Merge branch 'master' into net-screen 2018-10-16 21:40:06 -04: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
c9b0786a3b Merge branch 'master' into fix-nextlevel 2018-10-16 17:05:47 -04:00
TehRealSalt
362cbeb6b5 Merge branch 'master' into no-spectate-griefing 2018-10-16 16:38:35 -04:00
TehRealSalt
d158b3848e Fix the earlier attempt at patching over this 2018-10-15 19:05:23 -04:00
TehRealSalt
01c48c88d0 Prevent spectate griefing
If the player count dips below what was stored on the start of the last lap, then don't do time over so that someone can't just spectate at the end of a race out of rage. Y'all are assholes :V
2018-10-15 18:41:34 -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
Monster Iestyn
feceaf6d30 Removed all code in Y_FollowIntermission that's already handled in G_AfterIntermission
Only real difference here is that CEcho messages will always be cleared when going to credits/evaluation, but that's hardly a loss tbh.
2018-10-11 21:25:15 +01:00
Monster Iestyn
2bb7df5f49 G_ExitLevel tweak: Use HU_ClearCEcho() instead of HU_DoCEcho(""), the latter causes an empty line to appear in log.txt 2018-10-11 21:25:04 +01:00
Monster Iestyn
31f3f8b8e7 Moved Y_EndGame from y_inter.c/h to g_game.c/h, renamed it to G_EndGame 2018-10-11 21:24:53 +01:00
Monster Iestyn
9c464742b7 Remove "playerdeadview" variable; it's not been used for its stated purpose for who knows how long now
Besides rankings popping up when you die just sounds weird anyway, maybe I'm just used to SRB2 not doing it I guess
2018-10-11 20:00:45 +01:00
Latapostrophe
346c6bce96 HU_AddChatText cleanup for future use + chat mode Window (Hidden) added. 2018-10-10 21:24:55 +02:00
TehRealSalt
4364caa4ea Merge branch 'master' into net-screen 2018-10-09 21:15:30 -04:00
toaster
83bfca8009 Merge branch 'master' of https://git.magicalgirl.moe/KartKrew/Kart.git into karmegg 2018-10-09 21:09:52 +01: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
2f061a531a Karma Eggman. Does what it says on the egg. Tried very hard not to merge conflict with frameperfectegg.
Also includes some adjustments to:
* Horizontal offset of Eggman countdown in splitscreen again. It's not perfectly centered either way, but on second thought I like this better.
* Sound of Lat`'s Mine/SPB explosions - now uses same sound as Karma bombing, instead of that shitty paraloop.
* Correctly wipe k_eggmanblame when it is appropriate to do so.
2018-10-07 11:40:06 +01:00
TehRealSalt
7de16e2528 Foolish 2018-10-04 20:06:55 -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
58b52adf7e Address toast review
- Re-add highlighting to the header text, and shift it back up slightly
- Move the viewpoint loop break out of a while and into the main loop
2018-10-01 19:23:38 -04:00
TehRealSalt
e6fd41339a DrawFill supports splitscreen offset flags 2018-10-01 08:41:44 -04:00
TehRealSalt
96506359f1 Goodbye cvar 2018-10-01 07:21:02 -04:00
TehRealSalt
71e40f68cd Foolish error 2018-09-30 21:47:04 -04:00
TehRealSalt
73100b22d5 Please don't punish offline practice 2018-09-30 21:46:12 -04:00
TehRealSalt
ad06b3c62f Proper G_GametypeHasSpectators for netgame splits 2018-09-30 16:35:05 -04:00
TehRealSalt
cf5c0a7a6a New bindable keys
You can now remap Change Viewpoint, Screenshot, and Toggle GIF Recording to other keys, mainly for gamepads

They also pushed me to my breaking point and I couldn't tolerate the control menu anymore, thanks to toaster for the scrolling backport
2018-09-27 16:55:21 -04:00
TehRealSalt
3d582bc98f Viewpoint key improvements
- Don't cycle through exiting players
- Don't cycle through karma players in Battle
- Disable console print on switch, it's already got a HUD element
2018-09-26 21:35:57 -04:00
TehRealSalt
487e114fee raceexittime var 2018-09-22 18:59:26 -04:00
toaster
84c2a8c28f Sign compare fix via boolean cast 2018-09-22 11:59:07 +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
mazmazz
c5ea6b5efe MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -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
TehRealSalt
ee94da90b2 Don't let players carry them between levels..........
(In return for not letting anyone experience this silly bug, I made spectators joining before the match starts in Battle spawn with bumpers)
2018-09-10 03:15:46 -04:00
TehRealSalt
6f867274ed Item stuff
- Keep items on death, as long as you haven't used them yet.
- Restart the item roulette on spawn if you die during it.
- Held items that take up your item box now flash, to be consistent with Rocket Sneaker and Grow.
2018-09-10 02:48:10 -04:00
TehRealSalt
6e328a4e73 Misc camera fixes
- Fixed remaining instances where camera position would scale with the player instead of the level; the camera should almost 100% certainly not change now when you get Grown/Shrunk
- Reset camera when switching viewpoint, to make it not look *as* weird when switching after you've finished (needs tested)
2018-09-04 16:10:59 -04:00
toaster
91eb248e46 Fix up them there ghosts!
* Stop orphaning their memory. They ARE PU_LEVEL, so they'll disappear eventually, but, like... it's not good memory management practice to just *orphan* them when you're literally never going to do anything with them ever again. Y'know?
* Make ghosts spawn properly on slopes.
2018-08-25 17:11:49 +01:00
Latapostrophe
8747a8529d Changed chat position,
Added chat back tint
Fixed word wrapping glitches
2018-08-19 10:58:29 +02:00
toaster
1d894f36c3 Correct minor issue with random map name selection. 2018-08-15 16:56:26 +01:00
toaster
485cb3f308 Added "Random" to the level selection list, for those days when you know you *want* to race but don't have any idea what to do. 2018-08-15 16:12:36 +01:00
toaster
000fbe8b52 Merge branch 'sonicitems' into encore 2018-08-11 22:52:24 +01:00
toaster
53dd391ac8 Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into sonicitems 2018-08-11 22:52:09 +01:00
toaster
6fa0605416 Merge branch 'sonicitems' into encore
# Conflicts:
#	src/d_main.c
2018-08-11 22:37:17 +01:00
toaster
35fd7e6a08 * Fix issue with palette not getting reset when heading to intermission.
* Make map hell maps MUCH less common by ignoring all but the three most recent maps in the buffer for the random option.
2018-08-11 22:36:14 +01: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
TehRealSalt
cc009aca4f Flashing tics length depends on speed stat
Change to speed-weight when the bump buff gets added
2018-08-11 00:12:41 -04: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
cfaaac78be Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart.git into encore 2018-08-07 17:09:25 +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
toaster
ad119af07b * Get chat to compile with errormode on.
* Add chat options to the HUD and Sound Option menus.
2018-08-02 23:52:07 +01: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
ad187c26f0 Repositionning chat & bugfixes 2018-07-31 15:57:19 +02:00
Latapostrophe
ac7c249fd2 SRB2chat test rework 2018-07-31 11:10:02 +02:00
TehRealSalt
25c344a6e8 A lot more safety checks on the voting screen for spectators
- A new variable, voteclient.loaded, for keeping track of whenever or not voting data has been set up or not. Gets set to true in Y_StartVote, false in Y_UnloadVoteData. This is used to prevent drawing the screen in cases where it would crash, and preventing duplicate Y_EndVote calls.
- The game checks for all spectator when transitioning to vote, to decide whenever or not it should skip it entirely or not.
- Unrelated: made the roulette cheating much more common. Hopefully it's as cheaty as Mario Party now :p
2018-07-27 21:59:00 -04: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
6ddfc904da Merge branch 'bumpstuff' into sonicitems 2018-07-22 18:19:29 -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
7564aa466e * FREE PLAY! The necessary corollary to HERE COMES A NEW CHALLENGER...
* Activates when there are less than two non-spectators in a netgame.
	* Shows flashing text at the bottom of the screen.
	* Prevents drawing several UI elements that only make sense with multiple players.
	* Prevents matchesplayed being increased.
* Improve the mapreset timer's behaviour.
	* Now you get to see the HERE COMES A NEW CHALLENGER screen as the starting frame of the relevant map transition, since it happens on mapreset being 1 rather than 0.
	* Make a bunch of normal gameplay stuff that might've activated unnecessarily during mapreset now not able to.
	* Hide some other stuff that might've been visible for no good reason.
* Improve Mirror mode.
	* First person now works with it!
	* Tweaked the minimap player heads. Although the main section of the automap is mirrored, it feels... wrong to mirror the player head? IDK, you may wish to revert this, but given that everything else is the right way around except for the level itself...* Disable the titlescreen demos, at least until we actually gear up for release and make real ones.
* Disable the titlescreen demos, at least until we actually gear up for release and make real ones.
2018-07-22 16:16:03 +01:00
TehRealSalt
cac613f3ef Merge branch 'sonicitems' into bumpstuff 2018-07-22 00:32:11 -04:00
TehRealSalt
87cc2c28ce Merge branch 'sonicitems' of https://git.magicalgirl.moe/KartKrew/Kart into sonicitems 2018-07-21 17:45:25 -04:00