Dev Log 2: Vertical Slice (almost)

Image from Gyazo

A long time coming.

This is the second development log on my solo project, a top-down twin-stick shooter mecha action game with linear level progression. 



Happy New Year (almost)! A bit over 6 months ago I wrote “let’s just hope I don’t forget that I started a dev log until the game’s out” and haven’t written another since. It’s definitely been busy, and I drafted up most of a post at the end of July, but since that was 5 months ago, I think I’m past due for just writing a full one. 


As a massive From Software fan, I was fully aware of the negative impact Shadow of the Erdtree releasing for Elden Ring in June would have on my creative projects, and a negative impact it did have as I spent weeks playing it, loving every second. My band separator began recording our second EP in July as well, a project which I was helming the engineering, production, mixing, and mastering of, and is what I consider to be my most polished work yet (check it out here), but also took up the majority of my free time until its release in early November. August had two destination weddings for my family, which were much needed steps away from personal projects and the day job, but resulted in August also being a bit of a write-off for work on the game. So that leaves 2 weeks in June, a handful of hours sporadically from July to the end of October, and the last two months in which I’ve progressed this project, and despite that huge gap, it’s turning out great.

UI & Visual Improvements

Some of the earliest work I did after the initial dev log was to the in-game UI, adding a cooldown bar for the boost mechanic, a red bar that shows how much health was lost on a hit, and contextual interaction buttons shortly after I published it. The previous interaction buttons were billboards in worldspace, but I quickly discovered that to not be good enough for my purposes, leading me to make them overlay UI instead. 

In addition to all of this, the main menu got a huge makeover. I had designed several of the menus already, so taking those and with a dash of inspiration from RUINER’s main menu, I added several submenus, a pause menu with various functions, and a proper level selection. I was finding it difficult and tedious to hook up each menu so that you could go between them all smoothly until a friend suggested using a stack, which made me question how I overlooked this solution. I hooked that up and after a bit of tweaking, the menus were smoother than they’d ever been. 

Kill Bill Vol. 1 (Miramax)

As Elden Ring’s DLC was downloading I knew this was my last chance to get something in before my life was absorbed for the next few weeks, so I aimed for two: silhouettes and objective waypoints. Having played Death’s Door earlier this year as well as other games that use these, I knew that there would be situations in which the player or enemies are obscured by walls or other things, so it was a fitting addition. A good amount of the want to execute this however, was driven by the thought of fighting through an area during a massive dust storm, with the player and enemies only readable by their silhouettes like that one scene in Kill Bill Vol. 1. As of now, it’s still got a bit more work needed, but it’s enough for the time being. Objective waypoints were a fun one, and they’re also still fairly bugged, but they’re customizable so that they’re toggleable per objective, point when the object is off-screen, and, most importantly, support multiple waypoints such as with multiple enemies.

Lore Lore Lore

I was in a tricky spot with regards to designing levels to test mechanics and flesh out the systems. On one hand I could absolutely get away with just throwing everything I thought of into a blender and making levels and objectives based on vagueness, but on the other I knew that I wanted the setting to be interesting, even if the actual gameplay and interactions within the setting didn’t entirely rely on it. I pulled from my lifelong passion and curiosity about space exploration and my love of world-building to expand on the premise of “mech war on Mars”, taking inspiration from Armored Core VI and Dune to establish basic ideas and the “why” of the war, settling on resources and exploitation of the workers that get the resources to be the driving factors. I decided to effectively plan out how our future reaches this point within 500 to 1,500 years, with settlements and civilizations on the Moon, Venus, the Galilean moons of Jupiter, and of course, Mars, designing a space industry on paper that would be a suitable solar system for varied and interesting missions, and more importantly, the possibility for perpetual conflict.

Level 1

With the UI and its systems working and the setting in place, I decided it was time to start blocking out levels. I sketched out plenty of ideas, made flow charts, edited the flow charts, sketched more, and eventually brought up ProBuilder and started building. This first creation is going to be a mid to late game level, and thought that it would be a good idea to do something linear with a few different objectives, a couple secrets along the way, and a boss fight at the end, requiring enough of the things I’ve added functionality for that it’ll be a good testing ground for the gameplay. Fast forward a few months and I had a fully playable level…that was regularly completed in less than 150 seconds. Part of that was absolutely down to the enemies, which were still very rudimentary and weren’t very fun or interesting, but a lot of that came down to the fact that the level was basically a straight line. This meant that eventually, it would need a heavy redesign from scratch. 

Massive Additions in early November

After releasing my band’s EP and taking part in a game jam with some friends, I got right back on the horse and pumped out a ton for the game. I created a new player model for the primary mech, slightly redesigned the level, added trees, secrets, saving and loading stats, a post-game mission complete screen, and a stats menu. This was the culmination of about a full week of work, and it did a lot for fuelling my drive to properly complete the game. Around this time, I also set up the Jira project I should have started in the first few months of development.

The Vertical Slice

Since November 13th, the amount of work done is somehow exponentially higher than the prior few months. 

Most of this month I spent modelling, from remaking the shipping containers and player weapon models, to designing nearly every enemy. The turret’s lethality was increased as I gave it four massive gatling guns, and the mortar was balanced with it, increasing its lethality as well. Needing another low-tier enemy above them, I created a set of bipedal drone enemies, with three variants, and randomly selected textures on spawn from a set of five. Sitting above them are the mid-tier enemies, which considering the main fodder of Armored Core are called “MTs”, I fittingly gave them the same abbreviation. Like the bipeds, they have five texture variants, but instead of different “heads”, I plan on creating more weapons for them to use against the player, with two variants currently implemented. Comfortably above the MTs are the Phalanx: a large and powerful enemy that has three weapons and a shield completely defending the front from damage. This enemy was designed to have three solutions: vertical missiles to shoot over its shield, destroying its shield and getting damage in before it recharges, and outmanoeuvring it to shoot its back. Sitting at the top of the food chain is the Goliath: a massive tank-like weapons platform with a ridiculous health pool, four weapons that can shred the player, and surprising speed. The Goliath came about as a result of wanting more of the Phalanx enemy throughout the level and needing a new final boss for the level. Alongside these new models, I refactored the enemy behaviour script, improving player detection, allowing for independent aiming and moving for enemies that can do it, and making several performance improvements.

With all of these new enemies, they need a place to be tested. The level finally got a full redesign, with the initial sketches done while I was at work and most of the adjustments made manually when blocking it out. Even without the enemies, the level took minutes to get through, which I was thrilled about. I added secrets, a few initial encounters, and all of the objective objects necessary for completion, and it started to truly come together.

The level has about half of its encounters now, is playable from start to finish, and January is dedicated to getting it fully dressed with environment assets, completing the vertical slice phase of the project, and offering a great, contained demo. 

Now, by this point I’ve been playing the game constantly, and the limitations of my character controller had started to reach the point of frustration, leading to a full rework of the player controller, adding inertia and dampened velocity on start up and slow down, controller right stick aiming (finally!), gravity (finally!), and input scheme switching, all of which come together to make the game feel so much better to play. Around this time I also added in-game screenshot functionality for fun, but this would ultimately be a feature that helps in the future with a pretty big thing I added this month.

Steam

I gave Valve some money and got myself a product on Steam! Absolutely surreal to do this, seeing my own work-in-progress solo project in my Steam library was an incredible feeling. I took a while to integrate stats and achievements, using Facepunch Steamworks as the wrapper, and set up most of the text on the store page. With this big addition, I’ve set the goal for myself to take part in the summer Steam Next Fest and to ultimately release it by the end of 2025.

The Past, Present, and Future

With about 50 hours left in 2024, I’m extremely proud of the work I’ve done this year, both on this project and outside of it. I started it nearly 10 months ago now, and while 4 months of that I was MIA and the initial few months weren’t super committed, I’m firmly committed now more than ever to release my own solo project by the end of next year. The first big milestone I’m aiming for is to have the level fully dressed with environment art, then moving on to sound finally, completing an admittedly large vertical slice demo and paving the way for a super smooth second level for Steam Next Fest, and after that just pumping out more and more content until I’m satisfied. With my Jira sprints being a month in length each and the milestones being roughly three months apart, I’m hopefully going to be putting out the next dev log just in time for the Steam page to go up, that is if I don’t take 6 months to do it. 

This has been a labour of love, and I’m so excited to see where I take it and where it takes me. Cheers to a productive 2025!

Next
Next

GDJam Fall2024: A Long Paddle