Commit graph

94 commits

Author SHA1 Message Date
toaster 9686ad2d70 * 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 47419ce0df Introducing "antisplice" - a pair of small highlights on the Marathon bar that is based on the real time the executable has been open for and *isn't* restored with the Live Event Backup, making spliced runs basically intractable. 2020-05-15 15:08:45 +01:00
toaster d593e2e1bb 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
sphere 61dfee7e13 Don't show the FPS counter during startup. 2020-05-11 01:33:34 +02:00
sphere c55d6dbc9f Make showfps save to config, and add a compact option. 2020-05-08 15:40:50 +02:00
James R aca39d6210 Merge remote-tracking branch 'origin/master' into next 2020-04-09 17:04:04 -07:00
James R 2dfe276a73 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
Louis-Antoine 892a8dd6e7 Make SRB2 flat like Earth 2020-03-20 18:55:29 +01:00
SteelT 7d14796954 Merge branch 'fix-ogllib' into 'master'
Fix -OGLlib

See merge request STJr/SRB2!794
2020-03-02 15:21:50 -05:00
James R 7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Jaime Passos e53a17bb52 Rename stuff around 2020-02-17 21:11:56 -03:00
Jaime Passos cac5f9d171 add -nogl parm 2020-02-17 12:14:51 -03:00
Jaime Passos 9d9de3aff6 Only set OpenGL as the target renderer if it loaded successfully 2020-02-17 01:14:48 -03:00
Jaime Passos b6089ccdaf Fix -OGLlib 2020-02-17 01:08:15 -03:00
Jaime Passos 8f3855d09f Don't stop the automap (just restart it instead.) 2020-01-26 23:12:28 -03:00
James R 7af2533d23 Make the menu option for renderer switching transparent under NOHW 2019-12-30 21:45:19 -08:00
James R e8db39229c Don't let the user switch to OpenGL if NOHW 2019-12-30 20:29:41 -08:00
James R 569453ee93 Warn when going to OpenGL from the menu 2019-12-29 18:37:22 -08:00
Jaime Passos 5ea43aa023 Fix sprite rotation crashes. 2019-12-27 00:37:40 -03:00
James R 76a1a80d71 Save the renderer 2019-12-26 18:44:02 -08:00
James R 4959d52ae0 Make cv_renderer CV_NOLUA instead of hidden!!! 2019-12-26 18:15:52 -08:00
James R 77747c66df Fix switching to software
Would show a black screen for me on Linux. My suspsicion is that
some things are not initialized with just VID_CheckRenderer.
2019-12-19 17:13:23 -03:00
Jaime Passos e359f802fd Update comments 2019-12-17 16:14:26 -03:00
Jaime Passos cc54163210 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-17 16:12:44 -03:00
Jaime Passos 871ebef332 Merge remote-tracking branch 'origin/master' into ripple2 2019-12-14 19:36:54 -03:00
Jaime Passos a27a225a81 Remove SPANDRAWFUNC_MMX, as it's not needed anymore. 2019-12-13 19:02:36 -03:00
Jaime Passos 6720279969 Separate non-powers-of-two draw routines into its own file 2019-12-13 13:11:56 -03:00
Jaime Passos fa58c1fb26 stuff 2019-12-13 12:26:47 -03:00
Jaime Passos 9248f12d55 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-10 23:01:10 -03:00
Steel Titanium d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
Jaime Passos 2a9db29c58 fix showfps with st_translucency 2019-11-23 18:41:28 -03:00
James R 4439d29ed7 Shift showping display up a bit 2019-11-17 18:54:23 -08:00
James R 22421b1031 Snapping for showping, so it doesn't jump way up on non-green 2019-11-17 18:52:05 -08:00
Steel Titanium 2584241a44
Better ping implementation. 2019-11-17 20:22:47 -05:00
Jaime Passos 362be6f9da Make cv_renderer a hidden command
Finally! Renderer switching IS SAVED!! 🎉 🎉 🎉 🎉 🎉 🎉
2019-11-12 21:44:43 -03:00
Jaime Passos c6253bb6f9 Merge remote-tracking branch 'origin/master' into renderswitch 2019-11-12 20:25:40 -03:00
toaster 67f5b2245f Secret stuff. (I intend to keep candid discussion of this outside of any commits; you'll see me write up a comment describing what's going on here soon.) 2019-11-01 15:48:50 +00:00
James R 52c5d49215 Apply HUD translucency to ping and FPS counters 2019-10-22 21:54:09 -07:00
Jaime Passos fe60902df5 Merge remote-tracking branch 'origin/master' into renderswitch 2019-09-27 22:53:57 -03:00
Jaime Passos 8057eeaaca Merge remote-tracking branch 'jimita/renderswitch' into renderswitch 2019-09-10 18:12:01 -03:00
Jaime Passos f1cc17ea02 Enable usage of R_DrawSpan_8_MMX if drawing a flat with powers-of-two dimensions 2019-09-10 17:25:21 -03:00
Jaime Passos 1a9191dcd7 Attempt to fix warnings 2019-09-09 19:34:51 -03:00
Jaime Passos 0a973af5b8 Comments 2019-09-09 19:27:08 -03:00
Jaime Passos ebc22b9df8 yet even more cleanup here 2019-09-09 16:31:30 -03:00
Jaime Passos 725d0b4c44 still making things better 2019-09-08 21:37:24 -03:00
Jaime Passos c7e01a558e initial stuff 2019-09-08 18:44:40 -03:00
Jaime Passos 2863ede7bf initial stuff 2019-09-08 18:27:35 -03:00
Jaime Passos 0cc553be5f Merge remote-tracking branch 'jimita/flats-png' into flats-png_port 2019-09-06 19:20:45 -03:00
toaster 47554b57e4 * Made the evaluation screen even more attractive.
* Fixed an unused variable warning in lua_skinlib.c.
- fixed post-level cutscenes playing when you get game over in MP (still kinda on-topic)
Also with apologies to MI:
- golden egg statue mode for tutorial, since the grey doesn't contrast enough with the blue and lime green
- fixed closed captions for replaced player sounds being incorrect
- fixed closed captions overlapping tutorial text
2019-07-29 14:55:36 +01:00
Jaime Passos 714c997aac Support for patches and textures to be used in place of sector flats
Still a work in progress.
2019-05-21 00:28:52 -03:00