Thank you so much for the update! Love it, and the jump to 60fps is beautiful. I couldn't find the raycast mod you mentioned, is it something that's available?
v9940 - 60fps, chat revamp, mod stuff
Been a while huh? While I'm pretty sure that more or less everyone had already tried one or other beta from Discord, I think it's important to formally promote a version to take the role of the new stable release.
So, let's begin
60fps (or any FPS, really)*
* so long as
supplies last your CPU can hold up
As it was recited a few times, implementing 60fps on the Nuclear Throne's original source code would not have been viable - the game contained thousands of velocity, timing, and other constants that would all have to be manually readjusted (sometimes just multiplying or dividing by two, sometimes more complex formulas - and you might have thought that your high school physics course was useless).
However, I didn't write a GM-specific code editor with advanced find-replace functionality (pattern matching, custom logic) for nothing, you know, so I thought - maybe this would be more viable to do this way? Fast-forward some 30 hours of work, and the game now spots a current_time_scale variable, which controls how fast everything happens.
So, to run the game at 60fps, you would open chat (T) and paste (Ctrl+V) the following:
/gml q=60 room_speed=q current_time_scale=30/q
For 144fps, you would change 60 to 144.
While this isn't perfect (differences in how projectiles bounce are the most apparent), it's still a very good option if you were irked by 30fps lock in past.
Combine with display scaling, and the game looks smoother than ever.
For a long time, chat in NTT was pretty basic - you could enter text and erase entered text.
This changes now - the chat now has cursor, selection, and even auto-completion!
Mods can make use of new chat features as well, so this is an all-around good thing.
If you are making or playing NTT mods, there are a couple new toys now.
There are now shaders, which can be used for visual effects, or wilder things - such as the raycast mod by Golden Epsilon:
There are now also 3d functions, which can be used for, well, that
And mouselock functions for specific purpose of first-person mods and anything akin.
And you can now make built-in mutations more or less powerful via skill_set(mut_scarier_face, factor)
And about 30 other things
The future is bright.
It would appear like the day had come when Nuclear Throne imports and functions correctly in GameMaker Studio 2, therefore it might finally be time to move to GMS2.
This will allow to make use of various performance improvements that happened in past year and so, will allow to finally have proper post-loop performance in coop (eliminating the need for offline mode), and open the road for some of the wilder improvements (for mods in particular).
For the base game, it'll hopefully mean a less broken Linux and Mac builds, as both runtimes had seen substantial improvements recently.
However, that means that this is potentially the last release that runs on DX9 (and, consequently, Windows XP) - while u99r2 will likely still get a separate XP-compatible version for those few that use it (which, essentially, would be the current state of bugfixes + whatever newer ones manually ported back to GMS1), NTT tends to change far more game code at once, therefore maintaining two independent versions would be impractical.
Get Nuclear Throne Together
Log in with itch.io to leave a comment.
Awesome update, thanks a million. Only one problem: There seems to be a hard cap at 144fps. I can't get the game to run any higher than that and I'm positive it's not a hardware limitation.
Well, I originally had it cap at 60, then someone said that they have a 144hz monitor so I bumped the cap to 144 and never thought of it again I take it that you have a 240hz monitor?
Playing at 144FPS IS SO DOPE
Thanks for making the mod!