Handcrafted levels


Hello again!

So May came and went, and early access seems further away now than before. As you saw in my previous post, the game went through some major changes which put me off my target quite a bit. Well, I went ahead and did it again.

I picked up Koreographer on sale and started to experiment with it. Koreographer is a pretty good tool for pre-authoring events for a rhythm games.


The red bars are so-called "One shot"-events while the grey boxes are "Span"-events (events with a duration). You can place events with different kinds of payloads, such as int/float/color/gradient/curves/etc. You can also import MIDI-files and generate events from them. So I did exactly that. I contacted the author and he was kind enough to supply me with MIDI-tracks, although they weren't immediately useful. In the end I had to carefully handplace events in order to get the desired gameplay. But I'm sure I can find a cool way to put them to good use, in scenarios that aren't necessarily gameplay-related.

Of course it wasn't just a matter of plugging in koreo and hitting play, so I had to write a lot of new code that employs Koreography-tracks instead of procedurally generated values, which again triggered the need for quite a bit of refactoring.

Then I had to actually make all the events. I might have underestimated how tedious that would be. I have koreography-tracks for blocks, obstacles, "slides" (new mechanic, check the video), colors, world bending (using vertex shader), roads, tunnels, speed, etc.. The level of control it gives me is great, but making tweaks and testing them takes a lot of time. So I finally added the possibility of seeking to any time in the song/level so I could see the results quicker.

Koreographer came a bit short with regards to certain aspects of my game, so I added a few things. I can generate onsets in the same fashion I do for procedurally generated levels (and then hand-edit them afterwards). I can generate curves from spectral magnitude for any given frequency range (which I use for roads), which again - I can edit afterwards. The generated curves have *a lot* of keyframes, so I also added a button to reduce keyframes in a curve. I also added buttons to split and combine curves in the Koreography-editor. 

Finally I made a level using this new toolset which you can see in the video. Consider it a very early draft. The groundwork has been laid, but I have yet to take advantage of all the new opportunities. The idea is that I will handcraft the levels for all the built-in songs, maybe with a progression system where you play them in a sequence, with increasing difficulty. Maybe even with boss levels in between, so I can make proper use of the weapon/shield mechanics. These levels will (hopefully) be significantly better than procedurally generated ones, but the procedural stuff will be kept in the game as "icing on the cake".

Needless to say, these ambitions will probably add a significant amount of development time to the game, but hopefully the results will be worth the extra effort. 

// Xee

Get Audio.Flow

Leave a comment

Log in with itch.io to leave a comment.