Never commit to blogging regularly in public. It never works out.
I haven’t made a great deal of progress since my last post. This is mainly because it was a bank holiday weekend (which entails lots of gardening) but also because I f*cked up and lost half a days’ work.
I don’t want to talk about it.
Oh, okay. Fine. If you really want to know: I was setting up source control and I – due to what I like to call “The Windows Fog of Confusion(tm)” – did something really stupid with Git. Which would totally never have happened if I was using a Mac as my game dev machine.
(Which is something else that’s never going to happen – I may be an Apple fangirl, but I’m not stupid. I ain’t paying two and a half grand for a Mac Pro when I can build a decent spec PC for five hundred quid.)
I only lost a few sound effects and an exploding brick that takes out surrounding bricks, but it annoyed me enough that I didn’t want to work on it for a couple of days. Tonight it’ll be back to the grindstone.
It’s funny how I started making games with a Breakout tutorial… and here I am, four years later, following a Breakout tutorial *sigh*. The more things change, the more things stay the same
It was easier than I expected it to be tbh, but I do have a *teensy little bit* of experience with Unity already (more on that later).
(Apologies for the slight stutter in the video – my Mac is old and tired :))
I took the results of the live training tutorial, and ran with them; adding an indestructible block, a block that spawns a multiball powerup, and better (but still ropey) paddle physics. Not bad for a few hours’ work!
I think I’m going to continue building on it. A level editor will be the next order of business I expect.
I’ve only started making games relatively recently, so I can trace my progress over the course of a few blog posts.
The first game I ever made was a Breakout clone in 2011. I followed a tutorial; I was learning the (then new) HTML5 Canvas API at the time.
The first version of Breakout. It had ten levels, a laser powerup, a starfield background, and a catchy trance soundtrack.
Ever since then, whenever I set out to learn a new engine or API, I’ll use it to do one of two things: I’ll either make a match-3 game, or I’ll build a Breakout clone.
Brickout! came next, in 2012. I created it so I could learn the latest batch of HTML5 APIs – Web Audio, Touch Events, localStorage, etc. I improved upon Breakout by introducing multi-hit and indestructible bricks; five new powerups; the ‘nuke’ ability; and a global leaderboard. Amazingly, it’s still really popular!
As I’ve written and rewritten the same core mechanics numerous times, the process has become second nature. I’ve learned to leverage this knowledge to help me learn new skills quicker. When you remove design decisions from the equation, you pick up the API faster; the game ‘gets out of the way’, and you can focus your efforts on what’s important.
In 2014 I rewrote Brickout in ImpactJS; my intention was to release it as a mobile game using Ejecta. A few little niggles aside, it worked quite well. There was one major deal-breaker though: audio. Without the Web Audio API, you’re *really* limited as to what you can do, and I sure as hell wasn’t going back to using audio sprites. Project: abandoned
You can guess where this is heading :] I’m going to learn Unity by writing a Breakout clone. Guess I’d best get started!
I’ve changed my mind, as I am apt to do.
However, whilst it worked here, it didn’t do my freelance blog any favours – it ended up creating a mish-mash of front-end and game dev articles, which did it more harm than good. It *cough* diluted the value proposition *cough*, so to speak.
So I’ve shifted it all back over here again. Which isn’t the end of the world really. At least you won’t have to wonder where that Web Audio API tutorial went
A couple of weeks ago, I started a new blog with new resolve: I *will* write about game dev, and I *will* post updates frequently.
So, typically, work decides to intervene. What is it they say about “the best laid plans”?
Go back to the start and try again.
Or, where did your old blog go?
I blew away my old WordPress site a few days back, for a couple of reasons.
Firstly, blog posts and tutorials take me far too long to write, and WordPress seems to be tailored towards creating long form content. I’d post one long article every few months, and neglect to talk about anything interesting happening day-to-day.
Secondly, I already have a blog dedicated to HTML5 and web tech – I wanted a clean slate to talk about my venture into the world of Unity 3D and C#. (I won’t be mentioning the abomination that is UnityScript. Except just now. To mention that I won’t be mentioning it. Because it’s awful. Just. Awful.)
So, to answer a question that you undoubtedly didn’t ask in the first place: I’ve moved all of my articles on HTML5 games over to my freelance blog. Along with the actual games.
Hi, my name is Nicola. I’m a freelance front-end developer by day, and a game developer at night. I’ve been making HTML5 games for a few years now, and I really enjoy it – most of the time. I love web tech to bits, but there’s a constant nagging feeling that I’m using the wrong tool for the job.
So I’ve decided to learn Unity 3D.
I anticipate many #facepalms and #headdesks, which I shall be documenting here for your amusement. Wish me luck!
Just didn’t get on with it. Something about the thought of not having control over my own content. Control freak, moi?