The Road Thus Far


I have been developing Ultra Cosmo Invaders alongside my game engine, CoffeeMaker for over the past 3 months leveraging MVP (Minimum Viable Product), and I could not be happier with the results so far. During this quarter, I have engineered a functioning game engine and 2D arcade game from 0 lines of code to a little over 8,500 lines of code in just 3 months. I'm only just imagining what 3 months from now looks like. Come March of 2022, I'd expect that this game would be well into Beta release and on its way to Gold very shortly thereafter.   

 With my latest v0.0.21-alpha release (to be released Tuesday Dec 14, 2021), I'm super proud to say that there isn't much else to do on the engine side of things. Controller support, and User Configuration comes to mind as the top priority items, but outside of that...the engine has become quite mature enough that in its current state I should be able to just focus on game specific logic. It's sort of a mental high coming this far, and finally have a code base that is mature enough and with systems in place to safeguard its integrity. I feel like I am no longer leaning on air. 

There is actually a platform for me now, and it feels really sturdy! 

 Just last week, I attended a feedback group that commented on the development of Ultra Cosmo Invaders thus far. It was to be expected that a better UI was going to be the top item, and sure enough it was. More diverse enemies, B-Spline movements were a request, and lastly were power ups. The first and foremost detail I knew I needed the day after the feedback session was fullscreen support. I spent 2 days working out the kinks on making that happen. The next thing was a bit of future proofing for a better UI/UX experience, and that was 9-slice scaling images. So now I finally have sprites that can scale to any arbitrary height and width for my UI. Both of these features are the primary focus of v0.0.21-alpha. I will admit that despite putting off fullscreen support for so long it does give the project a more polished feel, and I do have a small regret not launching alpha with it.



For better context, you can see the original 100x100 pixel image (curtesy of Kenny's UI pack: Space extension) used to create the background panel in the HUD right here...

The gif comes from a playthrough on 1280x720 window, and of course 16:9 aspect ratio yields a ton of extra real estate that needs to be filled with more things for the player to focus on. The scrolling starfield could use some variation, I knew this back when the release build was just 800x600 resolution but with the much larger window it has become more obvious that more needs to be done with the background, but that I could speak more about in a future dev blog! 

Lastly, and perhaps the best feature of the engine so far is my B-Spline level editor. Making space ships rocket around the screen is no easy task when you are just guessing and checking the flight path every time. So I took the better part of 2 weeks to really do a deep dive into B-Spline creations. Here is the result of my efforts.


This relative slim scene is actually baked into the engine itself, and is accessible only through command line arguments running development builds of CoffeeMaker. So do not go trying to unlock this scene from Itch.io, it simply is not going to be there.

Through command line arguments I can access this scene to create new B-Splines and modify exiting ones that I load in from my own "proprietary" .spline file format.

The scene is built entirely with just raw SDL features. I reworked how my buttons work, created all new draggable components, and integrated tinyspline to handle the mathematics of it all. I'm quite pleased with the result. I have a working editor that does very little, is not intuitive for a 3rd party to pick up, but it is enough to get exactly what I need accomplished. Again, it is that MVP design I'm sticking with.

As I release the latest Alpha build today, I cannot help but wonder where this path leads next week, or the week after! Until next time.

- ObscurelyMe

Get Ultra Cosmo Invaders

Leave a comment

Log in with itch.io to leave a comment.