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.

Chat overhaul

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.

Mod tools

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

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.


Have fun!

Files

NuclearThroneTogether9940.zip 11 MB
32 days ago

Get Nuclear Throne Together

Download NowName your own price

Comments

Log in with itch.io to leave a comment.

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?

The author posted a copy in response to someone asking;

Generally you would ask on Discord

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?

Yep, sure do! IMO the best way to have the mod would be with no framerate cap, that way it's totally future proof.

Playing at 144FPS IS SO DOPE

Thanks for making the mod!