Project Bolero Devlog 17


Work Since Last Devlog

  • Hibernator:
    • A Windows user reported a no-error crash to desktop. I wasn’t able to duplicate the crash, so as a workaround, I added save/load support using the Binser serialization library. The menu font had to be squished down a bit to hold these new options (save, load, current slot). I also bumped the LÖVE Windows executable up to the 11.3 32-bit preview build.
    • Converted some static hazard actors (spikes) to map terrain. This may improve performance on slower systems.
    • Removed mud terrain / actors due to being vestigial.
    • Changed audio and music file volume levels.
    • Minor graphical adjustments.
  • Bolero 2:
    • Worked on improving the widget toolkit. It still has a long, long way to go, but it’s a bit nicer to work with now. Made a test lifebar, lives indicator, and started working on a scrolling text widget.
    • Changed rendering so that everything in a scene is drawn at 1x pixel scale to a canvas, and that canvas is then drawn to the active framebuffer. This eliminates tile edge seam issues, and things being rendered outside of the scene viewport when the window dimensions are changed.
    • Simplified actor and behavior definitions, removing some very redundant functions in the process.
    • Added some basic logging functionality. Log entries include the date and time, filename, line number, and can be sent to both print() / stdout and a log file simultaneously.


Following a recommendation, I picked up a copy of Robert Nystrom’s Game Programming Patterns. I’m finding a lot of it relevant to the issues I’m facing with respect to project organization, so it’s been well worth getting.

I binge-watched the video devlogs of J. Kyle Pittman that he recorded while developing Gunmetal Arcadia. I liked his earlier games, You Have To Win The Game and Super Win The Game, and thought Gunmetal Arcadia Zero was decent (serving as a short introduction or prequel to the main game), but I’m finding it difficult to get into Gunmetal Arcadia. Anyways, Pittman used a custom engine and map editor for these games, and getting a peek at them behind the scenes was very interesting to me. I was also surprised to learn that he wrote his own synthesizer to produce realtime NES-like music. I assumed he had just used FamiTracker and wrote out Ogg files or something. Pittman has since moved on from retro platformers, which makes these blog videos a bit melancholy to watch. I wonder what will ultimately become of my own projects, and who might be reading these posts, and if they are still on this site or only archived on the Wayback Machine.

I took a pretty big detour in May, and sunk a lot of time into trying to build a music tracker (as you can see from the post titles leading up to this post). I have an audio callback and mixing function now, but no runtime editing interface. If I kept working on it, I think I could have a nice little terminal-based game audio tool on my hands… but it’s not really a necessity, and it’s absolutely stalling this project. I’m very interested in continuing it, but this probably isn’t the best time. Maybe I could keep a hard limit on how much time I sink into it, somehow.

I made some test animations and sketched out some ideas, but have nothing concrete for Bolero 2 yet.

I received a donation on Itch for Hibernator, felt good.

Plans For Next Post

  • Bolero 2 immediately crashes with a LÖVE error screen, and I don’t quite remember what I was doing at the time. Sort that out.
  • Finish reading Game Programming Patterns
  • Complete an outline for Bolero Project #2


(e 2/June/2019: wording, removed some stuff about Gunmetal Arcadia that isn’t relevant to the paragraph)