Event deletion now actually deletes it from the map (so it doesn’t appear upon regenerating events) and changing event data sends it to the main script so that the map can be changed! (no way to demo it rn)
Ts is SUCH a boring series of devlogs I swear they’ll get more fun when I finish the editor 😭
Log in to leave a comment
Colour picker can now multi select for events that support it!
Basic deletion logic made. It doesn’t actually remove it from the map yet, so upon placing an event, it regenerates the deleted events 😭 Will fix that soon
Log in to leave a comment
Bug fixes!! I love fixing bugs!!
Fixed a bug breaking stacked events on events generated from file (float/int mismatch was grouping it into “4” and “4.0”)
Fixed lines not showing!
logic for new events is SO annoying istg
got a very borked system to make new events. I need to polish so much + fix an issue involving me not being able to place any event under x=1920. but hey im getting somewhere!
Log in to leave a comment
Redid the system to rely on absolute positioning instead of hboxes with spacing. The events are actually synced up now! Additionally, I added a way to change the scale of the lines (with error handling!)
Log in to leave a comment
SIIIIIXXX SEEEVEEENNN HOUUUURSSSSSSSS
Editor events are now coloured by the event’s colour, and the circle preview logic is MUCH better
Log in to leave a comment
Editor now previews laser circles and lets you modify it easier!
Log in to leave a comment
Preview when picking laser params! Next I’m gna try and add this for circles and sweeps so it can be properly visualized!
Log in to leave a comment
working on adding actual methods to enter data so that the mapper doesn’t have to manually type in everything 😭
Currently:
Log in to leave a comment
I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH I HATE GODOT UI FLAGS SO MUCH
I needed a system to handle multiple events on the same track & beat, so I decided to make it so that they collapse into one, with extra showing up upon hover. I tried SO many methods and none of it worked. NOTHING was working until I decided to try and use popup windows and it did work decently well! I’m so dead from doing this I never want to touch UI ever again.
Also made it show the song length & # of events. And made each field editable (although it doesn’t save yet)
Log in to leave a comment
I love Godot UI flags and mouse flags with the kind of sincerity usually reserved for handwritten letters and dramatic rain scenes. They don’t just work—they understand me. Every Control node feels like it’s whispering, “Don’t worry, I’ve got your layout handled,” while mouse filters gently, lovingly decide who gets the click and who must let go. Ignore, stop, pass—three tiny words that somehow prevent chaos, rage, and spontaneous UI combustion. When something finally aligns perfectly and the mouse events behave, I feel seen. I feel safe. I feel like the engine and I are holding hands, staring into the middle distance, quietly agreeing that yes—this UI is correct, and life is briefly, beautifully in order.
Editor can now take an array of events and sort them into their respective tracks with the correct spacing! Clicking on each event creates a popup window that shows all the data the event has. Nothing can be edited yet though.
ohhh boy here comes the editor 💔 I do NOT want to make ts but ig I have to
made very basic ui! tracks are auto generated from the global.events dictionary.
waowow dash go stretchy!!
Working on adding a FAT laser now!
Works great for big hits in songs (like the one in the video)
I need to fine tune the particles because they look kiiinda mid (they still look much better in game then in the compressed 2 fps obs recording)
Had a big bug where it would NOT move no matter how hard I yelled at it. The issue ended up being its absence in a dict that told the script what could be moved and what couldn’t be moved 😭
Added a REALLY cool looking glitch effect and a laser spread! There isn’t much gameplay involved with the spread but it looks super cool! Also experimented with different combinations of events to see how they’d look together!
Major Changes:
waow! chromatic aberration!
added ca as an effect. I had a big issue with the intensity not working and it maxing out at like 0.1 or smth 😭 but I realized it was bc there was a piece of code constantly trying to pull it back to zero (CHEMICAL EQUILIBRIUM REFERENCE) so I had to fix that. Also made some improvements to the colours (some were WAYY too bright) I will prolly continue fine tuning the colours as time goes on.
ugh writing lyrics is SO hard butttt it’s sorta working out!
transition between first and second section, and a rly nice lead synth for the second section. im still working out lyrics/melody for the second section so i didn’t record that yet (it sounds super bad rn) will prolly finish that next devlog!
All my time since the last devlog has been spent trying out new things, trying to write lyrics, and trying to settle on a song idea. I prolly resetted like 4 timelapses 💔
But I’m finally getting going! Using Tsurumaki Maki Lite w/ synthv and vital for all the synth stuff.
CRT effect is now customizable
Some colours/glow were fixed bc they looked weird/too bright
Cleaned up some old code!
Log in to leave a comment
Added a crt effect! (not that visible in the low quality recording but it’s very much there)
Added the ability to turn off the visualizer and make the platform go invisible!
Modified some visualizer logic.
Other small changes!
Biiiig bugs here
When using the laser circle and laser sweep presets, the beat at which the laser spawned would begin to drift very fast. This wasn’t that noticeable on very fast settings, but setting it to something like 1/2 beat would make it horribly off beat. It got to the point where it would spawn an entire BEAT after it’s expected spawn time. I started by adding an epsilon to the bpm and forcing it to be a float, and while that did help it, by no means did it fix it. It was still extremely inconsistent. I ended up rewriting the fire logic completely for the two presets so that it uses a system similar to the one found in the main event handler. It was SUCH a hassle to fix but I finally got it done! The lasers you see after the drop in the video are all part of a single circle event, it’s clear the fire beats do not drift anymore (i have print statements to prove that too!). All considered it was a nice adventure learning about precision timing systems and floating point error. Lots learned! I also added a camera pulse feature, still in the works since it looks kiiinda mid rn.
tl;dr: timing! and camera pulse!
AUDIO VISUALIZERR this took me SO long to get working. the math to make it look good and even sort of sync to the music was so annoying 😭 i revised my code like a billion times and changed a billion values BUT IT WORKEDD
fog now has a slight tint
sun isnt bright but still looks glowy, and now has a (really mid) enter/leave animation!
Currently working on adding a synthwave sun to the background! It looks fire but with some BIG issues rn.
This has turned out to be so much harder than I thought it would be. Looks mid rn but I’ll lock in!
Log in to leave a comment
Added a full system that lets the user pick from a list of colours and applies it to any event. For lasers, that’s just a single colour, but for sweeps and circles you can give it a list of colours through which it’ll alternate! You can also change the main platform’s colour, which conflicted with my logic of instantiating a scene for every event. I spent SO long trying to fix that and nesting everything within an if statement to double check if it’s actually spawnable fixed it! I also had issues with timing the events, as the prefire for the second sweep always went off too late, but the actual firing was on-time. The issue ended up being that I was sorting the events in order of fire beat, not spawn beat. So the platform colour change (prefire time of zero) spawned after the sweep (prefire time of 0.8s) even though it was on a lower beat. I updated the sort system to sort by prefire beat and that fixed it! The platform colour change gave me SO many issues.
tldr: PRETTY COLOURS!
Added a new sweep event! It’s a modifiable preset for laser movement that sweeps it across the screen. Currently, it works for vertical lasers sweeping horizontally. I’m trying to get it to work with other rotations too (vertically and diagonally) but that doesn’t work right now.
Laser Circles can now modify themselves with input from the map file!
Fog exists now, adds some nice depth and makes it feel less bland!
Log in to leave a comment
Proper triggering system that can handle multiple events!
I optimized the way it detects so it doesn’t for loop through the entire map file EVERY FRAME…
Right now it’s a 10x5 grid, but that will prolly change. Some rotations and positions don’t properly work for some reason. Like diagonals look weird no matter where they are. I’ll look into that!
Made a basic firing system for a laser event. It starts the pre-emptive warning 0.8s before the fire beat, so it stays consistent across diff BPMs. I had to fix an issue where it would be really off time and slow, but that’s all fixed now! The current system is more of a demo (very hardcoded) so I’ll prolly end up rewriting most of it, but I got the basis down!
Log in to leave a comment
Started working on the actual game! Got some good bloom/styling down, basic particles, a basic laser, and movement!
Log in to leave a comment
First devlog! Woohoo!!
In Godot:
Made the project, player scene, and basic physics.
In Garageband:
The VAST majority of the time here was spent working on the second song! I made the intro section, pre drop 1, buildup, drop, transition to pre-drop 2, and the buildup to drop 2! I kinda want to add voicelines (The Master styled) but I have no idea how I’m supposed to pull that off 😭
Enjoy ts little snippet of the song!