Project Heartbeat
Steam News 27 April 20251y ago

Project Heartbeat 0.20.2: Bug fixes & big performance improvements on windows!

Another minor update, this time featuring some good changes to my life for once! BananaJuju collab I managed to land a collab with popular monkeytuber BananaJuju, she will feature in the artwork for an upcoming song. Th…

Update log

Full Project Heartbeat update

The complete published notes, normalized for clean reading and source attribution.

Extracted changes

0 fixes1 addition6 changes0 removals
  • Performance
  • Workshop
  • UI and audio
  • Gameplay
changedUpdate on my own life shenanigansThe extra money and stability is nice, it also means I can finally get medical help for my leg since the public Spanish healthcare service didn't care much about it.
changedReturn to MSVCOne of the big reasons was I/O performance, but there's also other things that broke, now that we have CI building using MSVC is a non-issue.
changedFixed crash dumpsBreakpad is a tool that has been in the game for a while, essentially it allows me to get crash dumps generated by the game and know where in the code the crash was triggered.
changedFixed crash dumpsUnfortunately breakpad on MinGW has been broken for a long time, so even though windows crash dumps were generated I had no way of decoding them, now that we are back on MSVC that's not a problem anymore.
changedImproved 3D UI clippingPreviously I went for a stencil buffer based solution for UI clipping, however I quickly realised this wasn't a very good idea, as it required many pipeline re-bindings which was slow, this has now been changed to use user-defined clipping planes which should be much faster.
addedAlternative timing modeI made an optional new timing mode that roughly matches what MM+ did, in some systems it may be smoother, however it's still a very heavy WIP, things like unpausing make it lose a bit of sync, so beware of its experimental nature!

Another minor update, this time featuring some good changes to my life for once!

BananaJuju collab

I managed to land a collab with popular monkeytuber BananaJuju, she will feature in the artwork for an upcoming song. The art was made by Mr. Seori.

Update on the two new songs

As I announced before I managed to license two big eurobeat classics, however the licensor has been ghosting me for a few months, so I have no idea what's gonna happen with that.

Update on my own life shenanigans

I recently got hired at a big game studio, so I unfortunately don't have as much time as before, but I spend all my weekends working on PH, and during the week if I have time, don't worry, I haven't forgotten about it!

The extra money and stability is nice, it also means I can finally get medical help for my leg since the public Spanish healthcare service didn't care much about it.

Engine continuous integration

I have set-up continuous integration for the engine, it's available here on the releases section.

You can get the engine and editor binaries from there, as well as the debug symbols (more on that later).

Return to MSVC

Many moons ago (around the time Phoenix was released) I decided to switch to MinGW for building the windows version of the engine, in hindsight that was a big mistake.

One of the big reasons was I/O performance, but there's also other things that broke, now that we have CI building using MSVC is a non-issue.

Fixed crash dumps

Breakpad is a tool that has been in the game for a while, essentially it allows me to get crash dumps generated by the game and know where in the code the crash was triggered.

Unfortunately breakpad on MinGW has been broken for a long time, so even though windows crash dumps were generated I had no way of decoding them, now that we are back on MSVC that's not a problem anymore.

Website rush note consistency fix

It was discovered that some charts on the website had incorrect percentage calculations applied to them due to a programming mistake related to rush notes.

Luckily Steven helped me derive the correct rush bonus and we managed to fix the issues.

Stricter anti cheat

Due to potential problems with cheating, the anti cheat system is now more strict, as always the anti cheat system is not invasive and runs entirely on the game's web backend.

Improved 3D UI clipping

Previously I went for a stencil buffer based solution for UI clipping, however I quickly realised this wasn't a very good idea, as it required many pipeline re-bindings which was slow, this has now been changed to use user-defined clipping planes which should be much faster.

Alternative timing mode

I made an optional new timing mode that roughly matches what MM+ did, in some systems it may be smoother, however it's still a very heavy WIP, things like unpausing make it lose a bit of sync, so beware of its experimental nature!

Bug fixes

  • PH-222: Fix being able to create a slide note hold by selecting a checkbox in the inspector tab.

  • PH-239: Fix various issues with downloading media from the editor, such as overlapping windows and being able to take the download prompt to the main menu.

  • PH-261: Fix workshop songs with very long titles causing the container to overflow.

  • PH-292: Fix alt+scroll

Source

Steam News / 27 April 2025

Open original