Commit graph

1398 commits

Author SHA1 Message Date
SwitchKaze
afe56667b8 Update to 2.2.4 2020-05-22 16:47:51 -05:00
Zachary McAlpin
5470a03e11 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into gamequit-hook 2020-05-18 14:50:58 -05:00
MascaraSnake
8e6ead4a2a Merge branch 'opengl-character-select-mipmap-memory-leak-fix' into 'next'
Fix colormap mipmap memory leak on the character select in OpenGL

See merge request STJr/SRB2!943
2020-05-15 16:41:19 -04:00
MascaraSnake
28d0514588 Merge branch 'nights-character-select' into 'next'
Character select in Nights mode.

See merge request STJr/SRB2!862
2020-05-15 16:39:38 -04:00
toaster
0834bc0b30 * Swap location of Tutorial and Marathon Run, per sphere's suggestion.
* Lock Marathon Run if Record Attack isn't available, to avoid confusing new players.
2020-05-15 21:32:54 +01:00
Jaime Passos
4cc0829b90 Fix colormap mipmap memory leak on the character select in OpenGL 2020-05-15 15:58:20 -03:00
James R
d8220e6748 ok
(cherry picked from commit 0b9c20cc7086000548e02b39c1abf94ffb56feae)
2020-05-15 11:21:40 -07:00
toaster
5495ea16aa * In-game timer option! Doesn't tick in intermission or in lag, only when a frame is actually run. Realtime option remains default.
* Tweak retry behaviour to restart timer and not subtract life if you're on the first level and haven't hit a checkpoint yet.
2020-05-15 16:33:20 +01:00
toaster
285e439f1a Remove emblem hints from Marathon Run (I think Options is good just for the sake of live events, though). 2020-05-15 15:23:31 +01:00
toaster
e97c77fe71 Fix "press any other key" sending you to HOM hell. 2020-05-15 14:24:29 +01:00
toaster
7c97218284 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into marathonmode
# Conflicts:
#	src/doomdef.h
2020-05-15 13:23:37 +01:00
toaster
4c412d931a Introducing Marathon Run. (I was going to call it Marathon Mode, but NiGHTS Mode being right next to it on the menu looked terrible.)
Basically a dedicated Record Attack-like experience for speedrunning the game as a continuous chunk rather than ILs. Has several quality of life features.

Benefits include:
* An unambiguous real-time bar across the bottom of the screen, always displaying the current time, ticking up until you reach the ending.
* Disable the console (pausing is still allowed, but the timer will still increment).
* Automatically skip intermissions as if you're holding down the spin button.
* Show centiseconds on HUD automatically, like record attack.
* "Live Event Backups" - a category of run fit for major events like GDQ, where recovery from crashes or chokes makes for better entertainment. Essentially a modified SP savefile, down to using the same basic functions, but has its own filename and tweaked internal layout.
* "spmarathon_start" MainCfg block parameter and "marathonnext" mapheader parameter, allowing for a customised flow (makes this fit for purpose for an eventual SUGOI port).
* Disabling inter-level custom cutscenes by default with a menu option to toggle this (won't show up if the mod doesn't *have* any custom cutscenes), although either way ending cutscenes (vanilla or custom) remain intact since is time is called before them.
* Won't show up if you have a mod that consists of only one level (determined by spmarathon_start's nextlevel; this won't trip if you manually set its marathonnext).
* Unconditional gratitude on the evaluation screen, instead of a negging "Try again..." if you didn't get all the emeralds (which you may not have been aiming for).
* Gorgeous new menu (no new assets required, unless you wanna give it a header later).

Changes which were required for the above but affect other areas of the game include:
* "useBlackRock" MainCFG block parameter, which can be used to disable the presence of the Black Rock or Egg Rock in both the Evaluation screen and the Marathon Run menu (for total conversions with different stories).
* Disabling Continues in NiGHTS mode, to match the most common singleplayer experience post 2.2.4's release (is reverted if useContinues is set to true).
* Hiding the exitmove "powerup" outside of multiplayer. (Okay, this isn't really related, I just saw this bug in action a lot while doing test runs and got annoyed enough to fix it here.)
* The ability to use V_DrawPromptBack (in hardcode only at the moment, but) to draw in terms of pixels rather than rows of text, by providing negative instead of positive inputs).
* A refactoring of redundant game saves smattered across the ending, credits, and evaluation - in addition to saving the game slightly earlier.
* Minor m_menu.c touchups and refactorings here and there.

Built using feedback from the official server's #speedruns channel, among other places.
2020-05-14 23:10:00 +01:00
kaysrishaq
1825d3fa64 Merge branch 'next' into musicpref-var 2020-05-14 03:38:38 -04:00
James R
177134e262 ok 2020-05-13 17:52:49 -07:00
James R
1e64eae0c7 Make mod update, room list and server list multithreaded
This took fucking ages and it still fails sometimes in edge cases, but I
don't give a FUCK right now.
2020-05-13 17:24:27 -07:00
James R
8893243c78 Kill the old mserv, long live HMS! 2020-05-13 17:20:59 -07:00
kaysrishaq
f6addb956e musicpref console variable
Adds musicpref to console and sound options menu, which allows users to select whether to prioritize MIDI or Digital music.
Functions GameMIDIMusic_OnChange and GameDigiMusic_OnChange updated to not assume digital music priority, and to have more consistent behavior between the two.
Positive side effect of using P_RestoreMusic in these functions means that powerup music (speed shoes, invincibility) will restore in the correct position when reenabling the original MusicType they loaded in with.
2020-05-13 19:20:21 -04:00
Sally Coolatta
fa5fccffc5 Implement lives system
Lose a life & restart the current race if you place below the top half. Lose all of your lives, and you get kicked to the title screen.
2020-05-13 02:14:39 -04:00
Sally Coolatta
249fff87ad Merge branch 'new-cars-movie' into colorize-tweak 2020-05-12 22:46:46 -04:00
Sally Coolatta
63797b35f7 Merge branch 'pet-robo' into grand-pricks 2020-05-12 22:40:02 -04:00
James R
9056ca0525 Merge remote-tracking branch 'origin/master' into http-mserv 2020-05-12 17:50:32 -07:00
sphere
4d9d125a99 Fix some errors and add some comments. Also, actnum is not an INT32. 2020-05-12 17:20:28 +02:00
Sally Coolatta
15d18640de Merge remote-tracking branch 'public/master' into merge-12 2020-05-12 03:16:14 -04:00
toaster
67e01ad66e Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2.git into fickleheart/SRB2-menu-soc-bullshit
# Conflicts:
#	src/m_menu.c
2020-05-11 15:00:31 +01:00
Sally Coolatta
b4f5d931cc Skincolor code cleanup
Split everything off into its own file and turn SETBRIGHTNESS from a define into a function (K_ColorRelativeLuminance).
2020-05-11 02:28:25 -04:00
Sally Coolatta
4ae81ff236 Add menu for selecting cup & other options 2020-05-09 20:03:14 -04:00
Sally Coolatta
4a3262da41 Initial GP commit
Has a rudimentary option in the menu, which spawns the specific bots & spawns you on Green Hills in singleplayer.
2020-05-09 03:42:51 -04:00
Zachary McAlpin
81f651a81e Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into gamequit-hook 2020-05-09 00:05:05 -05:00
Latapostrophe
63485c3dbe Merge branch 'v2-master' into followme-internal 2020-05-03 22:37:26 +02:00
Latapostrophe
6bf117300b Add back viewpoint names & fix console inputs in replays 2020-04-30 15:50:30 +02:00
James R
2e6e13cc07 Merge remote-tracking branch 'lat/awful-mix' into awful-mix-fucked 2020-04-28 21:56:35 -07:00
James R
29bf51bc99 Make mod update, room list and server list multithreaded
This took fucking ages and it still fails sometimes in edge cases, but I
don't give a FUCK right now.
2020-04-26 19:46:35 -07:00
James R
6613b19220 Merge remote-tracking branch 'lat/remove-passwords' into awful-mix-fucked 2020-04-26 01:16:27 -07:00
Sally Cochenour
f2aa2bb541 'sal-lighting' code ports from v2 2020-04-25 20:56:50 -04:00
James R
eb0ba37dce Merge remote-tracking branch 'origin/master' into HEAD 2020-04-24 22:10:59 -07:00
Louis-Antoine
01c9281fc5 Add a menu option for the minimum join delay 2020-04-24 15:38:07 +02:00
Zachary McAlpin
d0fdb0b588 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into gamequit-hook 2020-04-23 18:39:31 -05:00
Zachary McAlpin
0de0ecb895 Execute LUAh_GameQuit earlier in M_QuitResponse
It just feels a bit funny to execute LUAh_GameQuit if you are playing a session after the quit screen appears instead of before.
2020-04-23 17:38:08 -05:00
ThatAwesomeGuy173
3e37730545 Use "addons" instead of "add-ons" for consistency 2020-04-22 01:24:59 -06:00
ThatAwesomeGuy173
4c73e651cf Capitalize "record attack" as "Record Attack" and spell "addons" as "add-ons" in the replay hut 2020-04-22 00:01:03 -06:00
James R
7e981edfcc Merge branch 'continue_tweaks' into 'next'
A tangible mechanism to disable Continues

See merge request STJr/SRB2!865
2020-04-18 20:15:04 -04:00
James R
d15024482d Kill the old mserv, long live HMS! 2020-04-13 22:23:01 -07:00
Wolfy
5e4ec61d82 Merge remote-tracking branch 'remotes/bird/isolatedbatching' into awful-mix
# Conflicts:
#	src/hardware/hw_cache.c
#	src/hardware/hw_draw.c
#	src/hardware/hw_glob.h
#	src/hardware/hw_main.c
#	src/r_bsp.h
#	src/r_data.c
2020-04-11 23:47:25 -05:00
Zachary McAlpin
b6a2c21db7 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into gamequit-hook 2020-04-09 20:12:11 -05:00
James R
81a01041e8 Merge remote-tracking branch 'origin/master' into next 2020-04-09 17:04:04 -07:00
James R
aff934a5b5 Merge branch 'hide-useless-1p-menu-options' into 'master'
Hide record & NiGHTS attack options if there are no available maps for them.

See merge request STJr/SRB2!868
2020-04-09 19:57:27 -04:00
James R
1bbb4d1f95 Merge branch 'ra-emblemhints' into 'master'
Allow emblem hints (and radar) in record attack.

See merge request STJr/SRB2!820
2020-04-09 19:56:17 -04:00
James R
0b91ef071f Merge branch 'sdlglcontext' into 'master'
Only initialise OpenGL if the user intends to load it (for real this time)

See merge request STJr/SRB2!796
2020-04-09 19:51:20 -04:00
Zachary McAlpin
8110e880a9 Execute LUAh_GameQuit in 2 additional places in m_menu.c 2020-04-03 17:44:57 -05:00
sphere
aa419915d7 Use M_GametypeHasLevels again (properly this time) to save memory. 2020-04-02 17:59:56 +02:00