top of page
Search

Shoot the Glass

Updated: May 5, 2023

Things... I mean Shoot the Things. I just wanted a Die Hard gif in this one.



In my defence it does include shooting things.


Shoot the Things

This was the first game I made from scratch. Prior to this I'd followed tutorials and courses, and then tweaked what was there, but it always left me wanting to do more of my own thing.


pew pew

So I started with something simple, a vertical shooter. Loved these kinds of games as a kid, and most of the tutorials had been for this kind of game anyway so I felt I was going in with a good idea of what to expect... no, absolutely not.


The courses I had completed were more step by step instructions for building that one specific game, not even that specific type of game, just that one game. Always glossing over the "why" and focussing relentlessly on the "what". Fundamentals taking a back seat to essentially just making you feel clever.


I got there in the end though and had my first actual game completed... ish. I uploaded it to the Google Play store as a beta version and let some friends and family play it. They really enjoyed it, some of them still play it to this day, despite the fact that it was probably about 5 years ago when I made it.


When I went back to "finish" it I learned a painful lesson about dependencies and how much of a mess they can make of things... I'd made a game, sure, but not one that was going to be changed in any way any time soon without breaking the rest of it. I knew enough about Unity and C# to get this far, but still so much was missing: game architecture, programming patterns, delegates... probably, and I could really feel it.


And then 5 years passed.


I learned a fair amount in that time, but consistency was the problem, I'd binge learn a bunch of stuff, not use it, and then forget it. Every time I wanted to return to game development I was faced with learning what I technically alread knew all over again, and it just flat out put me off. So in terms of game development I'm not really much further forward. Well, apart from the stone cold banger that is Life's a Chore of course.


The last 5 years...

Back to the Future

But I'm here now, the 5 year faff is over and irrelevant. This is about what is left to get Shoot the Things to "finished" in my eyes. Of course, it will never be finished in my eyes, but I do have some absolute bare minimum things I want to do before I call it 1.0.


This is just between U and I

First up is the UI as it's quite a simple thing. There's nothing wrong with it from the end users point of view, but internally it's a bit of a mess. I'm using a single Canvas and Animator for all of it and if you don't know why that's a bad idea you'll just have to take my word for it. It just makes changes very hard to make. So I'm going to split it up into more manageable chunks, and switch to animating via script to simplify things. Also the progress bars could be better. You won't notice, but I'll notice.


Dying Hard

Your ship has been destroyed

Next up is difficulty. This was another big lesson I learned: get others to play your game early, and often. I based the difficulty on my own skill and experience with the game, and as I was so enamoured with the fact that I'd made something, I played it a LOT. Needless to say others find it quite difficult so I'm at the very least going to add a difficulty option, but I think given the nature of the game some dynamic difficulty scaling would be more appropriate.


Pause for effect

I want to add the option to pause.


Setting the mood

I want to add a settings screen.


Under the hood

Most of the rest of the stuff is not going to be visible to the end user, and is mostly to get the code base in a better shape so I can start adding some actual fun things to the game.

  • Use Scriptable Objects to improve management of enemies and enemy waves.

  • Use Object Pools for efficiency.

  • Use events for script communication to reduce coupling.

  • Add an audio queue for the ship computer voice lines so they don't overlap.

  • Google Play Games integration for leaderboards and saving.


This is why we can't have nice things

Once that stuff is done I want to maybe add more enemy varieties, maybe some more weapons and/or powerups, maybe even some bosses... And of course the all important JUICE.


So what are you waiting for?

Nothing really, just didn't know how else to end this post.

82 views0 comments
bottom of page