Commit graph

11072 commits

Author SHA1 Message Date
MascaraSnake
a36e9684fd Merge branch 'signspinactiontypo' into 'next'
Fix A_SignSpin not being usable in Lua or SOC due to an error

See merge request STJr/SRB2!946
2020-05-16 04:49:33 -04:00
MascaraSnake
ef85e7f99d Polyobject waypoint movement: Prevent infinite loop if all waypoints are in the same location 2020-05-16 10:24:06 +02:00
MascaraSnake
55aacf6b83 polywaypointdata_t: Turn reverse and continuous into flags 2020-05-16 09:49:30 +02:00
MascaraSnake
fe77e7506b EV_DoPolyObjWaypoint: Don't discard movement if you start at the last waypoint 2020-05-16 09:09:26 +02:00
MascaraSnake
52e05bc8d5 T_PolyObjWaypoint: We can find waypoints in constant time now, so no need to store the waypoint mobj in the thinker anymore 2020-05-16 09:03:02 +02:00
MascaraSnake
bb8ad195c4 T_PolyObjWaypoint: If the polyobject reaches its target exactly, find next waypoint in the same tic 2020-05-16 08:49:03 +02:00
MascaraSnake
f8dee9c104 Rewrite T_PolyObjWaypoint to move more smoothly 2020-05-16 08:45:06 +02:00
Steel Titanium
5853e9342d Fix A_SpinSpin not being usable in Lua or SOC due to an error 2020-05-15 23:05:29 -04: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
toaster
76da8262e6 Correctly reset map/timer for retries where the first map in Marathon Run is LF_NORELOAD (by forcing a reload when the retry option is used). 2020-05-15 21:17:57 +01:00
James R
08ea4afb64 Jart? What's that? 2020-05-15 12:57:31 -07:00
Jaime Passos
c421a12fea Fix ASTBlendPixel outputting empty pixels if the background pixel was empty, BUT if the foreground pixel had no alpha at all 2020-05-15 16:41:39 -03:00
Jaime Passos
668b9bc684 Fix missing sprite column 2020-05-15 16:17:31 -03:00
Jaime Passos
4cc0829b90 Fix colormap mipmap memory leak on the character select in OpenGL 2020-05-15 15:58:20 -03:00
Jaime Passos
1bf1da749e Fix memory leak 2020-05-15 15:45:00 -03:00
MascaraSnake
8d16937c6a T_PolyObjWaypoint: Move duplicated movement code into its own function 2020-05-15 17:35:07 +02: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
8cfe4d9cf8 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
e97c77fe71 Fix "press any other key" sending you to HOM hell. 2020-05-15 14:24:29 +01:00
toaster
af7e7bc18c Re-order Marathon bar to be drawn before FPS and captions if applicable. 2020-05-15 13:39:27 +01:00
toaster
7c12990bdf Make live event backup files savedata specific (new format: live%s.bkp, where %s is the time attack folder name/savegame name - so vanilla's is livesrb2sav.bkp). 2020-05-15 13:37:06 +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
5550de269c Make a falsy useBlackRoc prevent doing Black Rock sparkle calculations and Egg Rock pulse sounds. 2020-05-15 13:19:52 +01:00
MascaraSnake
bb03937054 Merge branch 'carry-dust-devil' into 'next'
Add carry types to Dust devils

See merge request STJr/SRB2!886
2020-05-15 02:50:29 -04:00
Jaime Passos
c69a4f9ced Merge remote-tracking branch 'origin/next' into pictureformats 2020-05-15 01:34:54 -03:00
James R
3f64836777 This is SRB2 2020-05-14 17:29:36 -07:00
James R
94e77ba652 Rename hms123311.c to http-mserv.c
HMS lives on in our hearts!

(cherry picked from commit 8a006fef18)
2020-05-14 17:28:55 -07:00
James R
bcf7bf4816 Use Unlock_state here too
(cherry picked from commit f82ff5c3e7)
2020-05-14 17:28:55 -07: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
Monster Iestyn
3c1bd4215f split significant chunks of G_CheckDemoStatus into their own smaller functions, also give writing demo checksums its own little function 2020-05-14 20:57:21 +01:00
kaysrishaq
de393b2c54 clean whitespace 2020-05-14 07:42:06 -04:00
kaysrishaq
828e85b452 Minor reorganization 2020-05-14 07:17:58 -04:00
kaysrishaq
0d9491d327 Update
Worked out some edge cases that had resulted in tracks restarting in the same format when they shouldn't - or tracks not switching to the other format when they should.

Removed stray }
2020-05-14 06:33:03 -04: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
ZipperQR
88c32f7790 no message 2020-05-14 03:35:46 +03:00
James R
5b382d6ede Revert "Use new two digit version number for HMS"
This reverts commit 0e403bf7f2.
2020-05-13 17:31:51 -07:00
James R
380793bc0a Bind HMS connection with -bindaddr 2020-05-13 17:26:53 -07:00
James R
760cf9c6ff Reset the masterserver address if the old one was set by the config 2020-05-13 17:26:34 -07:00
James R
8cb7b79edc Clarify where debug prints go when using masterserver_debug 2020-05-13 17:26:34 -07:00
James R
bae3c536f9 Use IPv4 for master server connections
Your server's address is gathered from the request, so it needs to be IPv4!
2020-05-13 17:26:34 -07:00
James R
0e403bf7f2 Use new two digit version number for HMS 2020-05-13 17:26:34 -07:00
James R
9b22950fd2 Oops a debug condition snuck in there 2020-05-13 17:26:34 -07:00
James R
374fed02ad Fix switching the master server 2020-05-13 17:26:34 -07:00
James R
77cb76a8a6 Put some mutex on CONS_Printf etc. hahaha 2020-05-13 17:26:34 -07:00
James R
635e55e993 Fucking multithreading in the server registration
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
2020-05-13 17:25:52 -07:00
James R
37fc2496de Wait for threads before SDL_Quit (lol) 2020-05-13 17:25:52 -07:00