1. Project Heartbeat
  2. News

Project Heartbeat News

Project Heartbeat Phoenix Update: Release date announcement



Mark your calendars: May 20th is the day Project Heartbeat Phoenix releases to everyone!

Project Heartbeat Phoenix is our biggest release yet, featuring a new engine, improved performance and a first of it's kind subtick system.

Love will never be the same.

News roundup #7 - The funeral and Project Heartbeat Phoenix Beta 4 now available

(Originally from the EIRTeam patreon page)

Hello friends, it's time for our monthly project heartbeat development update, I have spent this month working mostly on PH, so phoenix got many massive upgrades and is inching ever closer to being released.

I don't know why but I have spent the last few weeks working HARD on Phoenix, squashing many editor bugs and improving things here and there.

The funeral


As you may be aware, diva is all but dead, which is very sad, this has incidentally led to a massive amount of new sales for me, so it's a bittersweet moment. I hope I can carry the project diva torch as best as I can. Of course my budget will never be anywhere near diva, but PH also doesn't cost nearly as much ;)

(P.S: If you are the owner of some music-heavy IP, like a music-focused anime or similar I'm open to negotiations of making a game using the PH engine, similar to miracle girls festival. I have console and mobile versions of the engine too).

Phoenix Beta 3


I released Phoenix Beta 3 last week, I could pad this post by copying and pasting you all the changes (and there are a loooooot of them) but I think it would be better if you read it straight from the source here.

The important changes, besides the massive amounts of fixes are:

  • UI is now true 3D, saving power and looking better, plus I added a frosted glass effect to transparent elements
  • Modifiers are fixed, including hidden
  • New console -> arcade conversion modifier, experimental
  • Input map migration from old PH to Phoenix
  • Disabled dx12 support (for now)
  • Workshop now shows a gameplay type display
  • Some changes to menus, specially pregame


Phoenix Beta 4


Today I'm also releasing beta 4, well, I've been releasing it as I worked during the week, but there's yet another shit ton of changes to the game and fixes to make it work better. Not much new stuff, but as I said before, phoenix is in a bit of a feature freeze until it's all sorted out and relatively bug free.

God I fear for the day Phoenix is released and I have to write the changelog for all cumulative changes... Anyways here they are:

[h2]The controller dilemma[/h2]

I was thinking about non-standard controller support in PH, and I came to a dilemma, I am considering only officially supporting non-gamepad-style controllers (like the xbox controller) and letting people use steam input to remap it. What do you guys think? (specially considering phoenix supports steam input, unlike stable PH).

[h2]Multiplayer[/h2]

I've worked hard on some phoenix multiplayer stuff, it's almost ready, most functionality is restored but I want to give it a good do-over. Either way, it should be made available soon.

Unfortunately phoenix MP uses a different, newer, Steamworks P2P API for communication, so you won't be able to do crossplay between stable and beta.

[h2]Results screen rework[/h2]



I redesigned the result screen, thanks to input from NeoRash from the PH server, the new one looks way nicer adn shows more info!

[h2]3D UI improvements[/h2]


(It totally looks like wallhacks lol)

Good news, I've revamped how the 3D UI system introduced last update works, it's simpler and does clipping properly, yay. I also managed to do away without dynamic canvas operations, unfortunately I've also managed to break DX12 and OpenGL whoops..

I may just drop OpenGL support entirely, but i could reimplement it if needed quite simply.

[h2]DJA rework[/h2]

In another episode of EIREXE tries to fix direct joystick access, I think I've finally done it this time.

I replaced how inputs behave, with the empty slide sound playing always, even when hitting.

I also used a multi band compressor to try and make the slide empty sound less annoying, let me know what you think!

Finally, I reworked how DJA behaves in general, including some funky deadzone intersection code that should make fast flicks more consistent.

Previously, when you hit a direction and then flicked back the opposite way there was a chance your input would "skip" the deadzone and thus never re-trigger the slide/heart action, now the game checks if a line drawn from the previous joystick position to the current joystick position would intersect the deadzone, if it does and if it would end up outside the deadzone again it takes care of triggering actions and releases the way it should.

[h2]Interval tree accelerated gameplay[/h2]

After many long years of pain dealing with inconsistent note clipping I decided to go the nuclear way. The new interval tree method the game uses allows for very fast lookups of what note groups are actually visible on screen with none of the issues that plagued old PH, specially regarding custom time out values.

[h2]Other fixes/small changes[/h2]

  • Fix MM+ song loading
  • Fix sine wave gimmick effects
  • Fix editor right click lockout
  • Fix editor timeline scale being wrong in some circunstances
  • Adjust slider piece particle and note hit effect
  • Fix difficulty creation
  • Fix editor settings selector
  • Fix creating variants
  • Improve mouse trap
  • Fix potential loading screen error when downloading UI skins
  • Fix workshop media auto downloads
  • Fix editor help links
  • Fix data race in get_song_select_sprite_set
  • Fix editor help links
  • Fix some timing point deserialization (intro skip, lyrics etc)
  • Fix song metadata editor question marks
  • Fix resource pack editor open pack window, scaling and inspector.
  • Adjust main menu scaling and theming
  • Fix practice mode layout
  • Fix lyric clipping
  • Fix error loading content dirs section
  • Fix ofsetting timing points in the editor only offsetting notes even if that setting is unchecked
  • Hide tempo change dialog by default
  • Optimize editor inspector updates by deferring them whenever possible
  • Optimize copying and pasting notes
  • Fix PPD song loader not loading YT json
  • Fix PPD video selector dialog
  • Make script editor dialog a normal window instead of a Popup
  • Fix script editor behavior and syntax highlight
  • Fix editor background scaling
  • Make editor playtest UI scaling match the game's
  • Optimize results screen
  • Fix some album art scaling issues
  • Fix workshop browser pagination wraparound and backing from detail view
  • Fix start menu party hat
  • Fix editor note layer order
  • Fix playtesting charts
  • Fix editor playtest not playing video at the correct time
  • Fix multi note deletion breaking
  • Fix audio loudness for MM+ variants
  • Fix DJA heart sustain note transfers
  • Fix "the save as button doesn't seem to do anything" and "after going into the song selector in the editor and then going back to a chart you can no longer press space to play until restarting the editor"
  • Rework some pre game screen architecture
  • Fix missing async task queue thread joins
  • Optimize song list container by using visibility notification rects
  • Fix note usage deserialization and related menu elements
  • Add CSV timing dumping


Swansong




Honestly haven't worked much on swansong, but I've made an execution system and switched to ghost of tsushima style GPU blood, it's fast as fuck and I think will look better once I add more randomness.

I'll post a video of the blood in movement on Patreon right after this post goes live.

After the combat and assassination system is semi-working, I would like to go work on parkour again, I have some ideas on how I'm going to do it.

I've also been drawing some concept art, it's not good but it shows an idea i had for a hanging city inside of a rock formation (a ravine?).

I also asked Guinii to make me some concept art for the protagonist, i'll showcase it here as soon as there's something done! I think you'll love the ideas I came up with.

Future




It's all looking very good, it's all going well, suspiciously well, this means we are well on our way to exiting early access relatively soon! Target is before august.

On another personal note, my car finally passed inspection (which cost me a pretty penny) and I unfortunately had to reject a job at a company for personal reasons, but oh well, at least I will always have frieren... except someone forgot to put the base in the box for the figure, ffs.

Project Heartbeat Phoenix: Beta 3 now available

Hello, I decided to start making changelogs for the big beta updates.

In case you aren't familiar with it, Phoenix is the name given to the new version of Project Heartbeat running on Godot 4, this version has been widely revamped with many new bells and whistles, including the new subtick system. You can learn more about it here:

[previewyoutube]https://www.youtube.com/watch?v=8EgtpCrbdSg[/previewyoutube]

This update consists of 80+ changes to the game's code, mostly fixes but some minor new features.

Fixes


  • Fix workshop browser
  • Remove controller selector since it isn't required anymore
  • Remove simplified chinese translation that wasn't ready for prime-time yet.
  • Fix loading screen crashes
  • Fix some BPM changes not being applied
  • Fix an issue that would cause the game to crash when opening the editor
  • Fix notes not cleaning up properly when being deleted in the editor
  • Fix and improve behavior cursor auto-hide
  • Fix editing angles in the editor by clicking on the stage
  • Fix some editor time conversion errors
  • Fix folders
  • Fix midi, DSC and PPD importers.
  • Fix minor (inconsequential) memory leaks
  • Fix result rating styling
  • Optimize stylebox vertex count
  • Fix clipping in pregame screen.
  • Fix 3D menu scaling
  • Fix editor trying to use hidpi and failing at it strepitously
  • Fix lyrics rendering
  • Fix UI scaling changing when exiting the editor
  • Fix some popups not spawning centered
  • Fix note input lockout during fade-in
  • Fix slide chain drawers not doing the appear animation properly
  • Reduce editor font size to better match old PH
  • Fix missing editor toolbar icon and recolor waveform icon
  • Fix note movement gizmo losing tracking when moving the mouse too fast
  • Fix song variants crashing the game
  • Fix editor area select
  • Fix song list search passing keyboard input through in some circumstances
  • Fix song restart fade-in input lockout
  • Re-add yellow selection triangle to notes in the editor timeline
  • Fix arrange wheel
  • Fix pregame screen modifier buttons not being usable with a keyboard/gamepad
  • Fix pause menu stealing focus when clicking in an empty place
  • Optimize credits section
  • Fix results screen minimap
  • Fix results screen graph
  • Bring back and further optimize pause menu blur
  • Fix slide hold score not showing
  • Fix editor shortcut styling
  • Fix song metadata editor using save file dialogs instead of open file dialogs
  • Fix note appear effect animation speed
  • Add hack to reimplement old engine note high amplitude high frequency effects
  • Improve modifier localization
  • Fix modifier selector scaling
  • Fix hidden modifier


Features
  • Add note usage icons to workshop browser item thumbnail


  • Add new result screen test button to debug menu

  • The main menu is now real 3D, which should massively reduce power consumption and make most GUI elements look better.
  • Menu elements now have a 0 cost frosted glass effect behind them.



  • Pre-game screen now has a small leaderboard with information about previous plays, this will be improved upon in a future patch.
  • Temporary project heartbeat phoenix logo
  • Add migration system for old engine input maps
  • Make sustains actually usable when using the hidden modifier

Moving Beyond Frame Rate | Project Heartbeat Phoenix

[previewyoutube][/previewyoutube]

The trailer I told you guys about in the last post is finally done and released, please check it out!

Cheers.

News roundup #6 - Project Heartbeat Phoenix

(This story was originally posted to the EIRTeam Patreon here)
Hello, sorry for the delay but I've been down for most of the month due to health issues, fortunately I've still managed to continue work full steam ahead.

Unfortunately due to a badly timed company restructuring I didn't manage to get into the big studio I told you guys about last time, that was a hard blow specially because it would have been very helpful economically, oh well.

Project Heartbeat Phoenix


I've been struggling with coming up with a catchy name for the new engine update, I think I finally have one I like, Project Heartbeat Phoenix, let me know what you think about it.

[h2]Subtick promo video[/h2]



I've been thinking about making promo videos for Phoenix, this includes the new subtick system, I already have a video ready that I will have Kyuuon voice, hopefully it's well received.

[h2]Fonts[/h2]

I did some work on unifying fonts across the whole game to better support non-Latin character languages, if I did my job well every single label now supports Chinese, Japanese, Korean and Cyrillic characters (I hope).

[h2]Localization[/h2]



I did some work on improving the localization system, it's now basically ready for me to send to translation companies to translate it.
I tried to find a service where I can let people contribute localizations, but I would have to self-host and thinking about it with the cost of proper translation it would probably end up being more expensive.
I also considered AI translation but people would probably not like it and Valve may be made about it.
My current plans for localization languages in PH will be:

  • English
  • Spanish
  • Catalan
  • Japanese
  • Chinese (Simplified)
  • Chinese (Traditional)
  • Russian
  • Ukrainian


It might take a bit for me to look into paying for these translations because I have to get the car fixed, but hopefully that will be done soon.

[h2]SDL on Windows[/h2]
The game now uses SDL for handling game pads on windows just like on Linux, this is likely to increase compatibility with different controllers and I might do something fancy with the PS4/5 LEDs in the future.

[h2]Other minor fixes[/h2]

  • Fixed a long-standing where the waveform would veer off-sync depending on the amount of horizontal scroll
  • Fixed async loading data races on boot
  • Fix main menu mouse accuracy
  • Fix scrolling using the mouse in various places


Swansong




As I said last month I've started working on the combat system for Swansong, it's not ready to show yet, but I've recently added sound events to the animation system, ragdolls and I'm currently working on blood by taking inspiration from Counter-Strike 2. I might even make a video detailing how the system works.

I have also been experimenting with some euphoria-style semi-procedural ragdoll physics, I'll probably use them for death poses and maybe for some combat reactions.

Future




Honestly it's been a rough month, I almost though about cancelling Swansong but I got a burst of motivation to work on it after seeing the combat system sorta seem to work.

I also went to the doctor the other day for a follow up on my kidney stones, seems like its genetic and all I can do is drink water and pray they dissolve before getting dislodged.

See you all next month!