Over the last ten weeks I worked on Envahi to submit for a game coding competition on www.syntaxbomb.co.uk
Most of the guys who submitted entries made a seperate post about their games in a showroom forum so as not to clutter the voting thread. I did one too and posted the following message which I’m reposting here as there’s a huge amount of insight into what happened during and after nailing down the final bugs and releasing it. No need to repeat myself and type it all again.
Envahi is now released and available via ItchIO as my entry for competition 4.
You can download and look at it from this link: https://xerra.itch.io/envahi
Voting is in the competition thread but I’m interested in any and all feedback regarding the game. I kept a sporadic development diary of the process when I was creating Envahi at http://blog.xerra.co.uk/ for anyone who’s interested. It’s most of the topic of the last ten weeks as I shelved an almost complete remake of Boulderdash that I was developing at the time to enter the competition as I felt doing something to a deadline would give me some much needed focus. It worked very well it turns out.
I intend to talk a bit about the development process and about the game in this thread and, like the other guys who’ve entered, thought it would be best to keep that out of the actual voting or competition entry threads.
While working on Envahi I kept a reasonably accurate log of working hours in various areas which I will explore a bit later. I started working on the game on the 30th January, 2018 – which was the competition start date. I already had the idea in my head for remaking this game, but I hadn’t planned on starting it any time soon. However, because the theme of the competition was Movies/TV I decided to bring it to the front and use this as my project basing it on the theme of Airwolf and Dambusters. In retrospect they’re pretty loose links as I’ve basically just gone and made the remake I wanted to make and just made sure that I could get a decent copy of the Airwolf music in. I think I’ve paid the price for this – more on that later.
I developed the game using GameMaker Studio 2 – which I initially had concerns that judging wouldn’t be allowed for a dev system like this when other people were doing all their code in text editors. There was one objection but the rules of the competition were made clear that making a game is about making a game, not how you actually do it, and what tools you use. I dread to think how many lines of code I still had to use in Envahi as it’s difficult to track without breaking it all out of the objects system – but there is a lot. The GML language – part of GameMaker is used for most of the work regardless of it being a complete development system. The advantages are not having to do stuff like set up graphic screens and backgrounds with code a lot of the time, as you can drag and drop them into rooms. It doesn’t make it that much easier, I assure you.
I finished the game on the 8th of April, 2018 – which was 2 days before the end date of the competition. I was very chuffed that I still had a little time to spare. It wasn’t the end of the process, however, because I had to get some kind of instructions written up, get the project onto my crappy Windows laptop because I had to have a PC version or I’d lose out on the biggest user base, and do some screenshots etc. All that stuff took me most of the evening of the 9th before I finally got my game entry posted here in the competition thread.
One further point I would make clear – not for any defensive reason – is that Envahi is my first completed game using this system. I’ve written many games before using BlitzMax, Amos, Swift and all sorts of other languages since the early 80’s but it was a great learning curve for future projects from working on this. So, whatever the result of the competition, I’ve still gained a huge amount, so I’m very happy I entered. I do, however, suspect that I was wrong to choose remaking a retro game for a competition which is theme specific. In retrospect I would probably come up with something original to make and left the remakes for my own gratification to work on seperately.
This competition, while being a little short on entries, has had some very clever, original titles, so judging has been pretty tough for everyone so far. My game isn’t original or very clever at all so, while it would appeal to the guys who like having a quick blast, a lot of people are going to vote for the better, more creative games. I have learnt a lesson from this 🙂
So, as I touched upon earlier, I did keep a working hours log that I’ve put into Excel to get an idea of how many hours I put into the game. The results shocked me as I was convinced I’d been more productive. I had six categories that I labelled for working time as follows:
Code – self explanatory. This is the grunt work. All the scripting, bug testing, events set up and the core of the game.
Refactoring. This is moving code around, borrowing snippets and routines from other stuff I’d half written. I could use some code from my unfinished Boulderdash remake and from a couple of other projects I’d half started putting together.
Research. This was mostly hunting around looking for stuff. I did a lot of playing of the original game again, watched some videos to track the bits that I didn’t see because I was concentrating on the game etc. I even bought the original Vic 20 game on Ebay so I could look at the instructions inlay. I also count the time I spent investigating the use of tilemaps for the game and locating stuff like the music.
Graphics. Again, this seems obvious, but I purchased some assets for this game and even ended up employing two freelancers to work on the sprites and the big helicopter you can see with the other screeenshots. The time here is for me putting images into sprite sheets, editing photo’s to remove backdrops so they worked with the sky colours etc. I put in and ripped out a lot of images that were originally planned for the game. Longer sprite animations and originally drew my own sprites – which were terrible. Coming into this game I was very poor at working with graphics at all. I’m now a lot better at it but I still can’t draw for toffee. I would use freelancers again even if it does mean I’m out of pocket because you take a bit more pride if your graphics look ok. I’m very much in the minority it does appear on the graphics for Envahi, however. I like them but there’s quite a few voters who didn’t. I will definitely take a lot more input on this next time.
Sound. All the sound effects in the game were created by me using BFXer. I’d never used it for so many effects before but, again, it looks like I could have done better with this.
Writing. Mostly blog posts about what I’ve been doing – and pretty irregular they ended up. Not a bad thing, in some ways, as I needed to get on with the actual game but I think I could have made more time, judging by the totals below.
Code – 71.05 hours.
Refactoring – 1.5 hours.
Research – 4.75 hours.
Graphics – 16.5 hours.
Sound – 2.0 hours.
Writing 3.75 hours.
Total development time was 99.55 hours. I was absolutely convinced I’d put in a lot more than this until I did the count.
Another shocking statistic was looking at my date entries so I could work out what kind of slacking gaps I had. The first two weeks I put in hours for almost every single day. After 17th February I didn’t do any work on the game again until 3rd March – that’s around 3 weeks off. Whatever was I thinking there?
And then I had 3 days work which was 4th, 10th, 16th of March. Almost a week off between each day. I don’t even remember this but I know I was pretty accurate with the logging.
I worked on the 21st March and then didn’t come back until the 30th although, in my defence, I put in the serious slog then and was coding every day until completion on the 8th of April.
In total, despite having 10 weeks to finish the game, I could have put my head down and got it done in 5. Or, as I should really be looking at it, I could have worked steady for the entire 10 weeks on the game and made it much, much better. I’ve never tracked stuff like this when working on a game before but you can bet I certainly will be doing so from now on. Another valuable lesson learned.
About the game itself:
Envahi came out in 1983 and was written for the Vic 20 +8K expansion. It was written by a chap called Jeremy Walker and, like the Virgin games of the day used to have, had a little bio about himself in the cassette inlay. In those days authors of games were more well known than now. I don’t recall ever seeing his name on another game, however.
The game itself puts you in charge of a futuristic helicopter that is tasked with protecting a city and a dam that’s been built right next to it from an unending alien invasion.
There are Nibblers who move across the screen from right to left , trying to bite chunks out of the dam wall.
Also present is an indestructible UFO that moves Right to left and back again at the top of the screen. He’s there to launch Droppers.
These Droppers move randomly left and right while falling, and have the sole aim of reaching the city so they can “Invade” it.
The Zoomer intermittently comes into play and will “Zoom” right and left between the edge of the screen and the dam wall, dropping down a little each time. If this guy reaches the city then it’s “Invasion” yet again.
You also have clouds appear randomly that drop bursts of acid rain. These clouds can be shot if you can shoot a path through the acid.
Finally there’s the Grabber. His sole purpose is to launch down the screen and grab you so he can take you off screen. Once he does then the game goes into warp mode where you can do nothing but wait while the aliens do there thing.
If you let the Nibblers eat through the dam then you’re going to need an umbrella. Your city, however, is going to have a much worse time of it.
Players helicopter can only shoot up, and there’s no scrolling, so you’re moving around lots of shifting aliens which makes a pretty challenging game. Every minute the difficulty increases too – which probably doesn’t help.
The final thing to take note of is that both your helicopter and the city have their own shields. Too much acid rain hitting the city and it’s going to get destroyed. And the same fate befalls you if your shield depletes too. Sometimes it’s a more than viable tactic to use your helicopter to absorb large bursts of the rain to save the city, if your shield is greater. Especially if the offending cloud is behind a UFO as that enemy being indestructible will protect the cloud while it’s in range.
That’s pretty much it apart from the usual three lives are given and you get an extra every 5000 points. Harder skill levels (there are four) will give you greater points so playing suicide is much more rewarding for the high score – as long as you can hack the pace. Additionally the game will save your high score, level selection and sound settings for the next time you play.
Two more things I will talk about which I have been doing since the launch of the game. Getting visibility was pretty important to me so I’ll explain some of the things I did for that but first here’s some analytics data I’ve got about the project from ItchIO where the game is hosted. I’m sure this stuff is boring to most people so I’m just going to highlight five bits of info that I found interesting after the game has been online for four days.
Downloads 20. Most of these will be from people trying the game for the competition.
Views 100. So i’ve got a download rate of 20% from people looking at the game. Again, misleading, because a lot of people went there specifically to download the game anyway.
Impressions 517. I’m not sure what this actually relates to but it’s a high number so I like it 🙂
Ratings 2. It’s a well known fact that nobody bothers rating stuff they download much. I wouldn’t expect many people to rate the game. One of these ratings came from my friend, for example. Both ratings have been 5, though, which is nice.
Purchases 0. Not unexpected as it’s a free game. People can donate if they want to but I wouldn’t have expected that for this game.
To finish off here’s some things I did to try and get my game some visibility. I’m no marketing guy but I’ve made games before and talked to a lot of people who do it for a living, so I was curious to see how much I could do with no budget and no financial motive.
Tweeted about the game to my followers. I think i have around 100, or so. Probably most of them are women from abroad looking for potential husbands so I wouldn’t expect much joy there. I do have some game dev friends, however, but they are, totally understandably, all about pushing their own games, and I wouldn’t ask them to retweet for a free game. Retweets obviously amounted to zero.
Posted on Facebook about me finishing the game on my own status at first. I then also pushed out a post in the a dedicated page for GameMaker Studio users. That got me around 20 likes and a few comments. You can’t tell how many downloads came from Facebook but the analytics screen of ItchIO does tell you how many of your page visitors came from Facebook itself. It is currently holding around 30% of the visits so far – the most by far.
I already had a you tube video up of a gameplay from the middle of development on my own youtube channel which I posted here on Syntaxbomb in the competition discussion thread. I put a post on there to say the game is now complete. I then also searched for every video of the vic 20 original that’s up there (3 as I recall) and put in a comment to say I’d made my own remake.
After this I searched out the wiki page for game remakes and created an account so I could put my remake in. There was only one other Vic 20 game in there, Gridrunner, I think.
I sent a message to the freelancer who did my graphics and also the author of the theme music saying I had now finished my game and they can look at the result if they wished. Both did and liked it. I made it clear that I’m very happy for both of them to use the game as an advert for their work in any way they wish, should they want to. No idea if they will, and I wouldn’t push it, but it could help.
I have a blog site and my website so both sites now host the game. I ensure I link to the ItchIO download rather than host it myself because: analytics, baby.
Any relevant forum signatures now have a link to the game and I put a note in my normal email signature to state that the game is available to download too. You never know who you might email next.
I checked for a showcase forum for my development system and put Envahi up there too.
As mentioned earlier, I’m primarily a Mac user but I have a Windows laptop specifically for building games for PC because I know that there’s more PC’s than Mac’s out there and I don’t want to get no votes just because someone couldn’t play the game.
A couple of quick points about ItchIO. When you list your games up there then fill in as much info as you can. And by this I do mean get the right size images that are optional uploads so that there’s a chance your game goes into the browsing window. I found the search function on the site didn’t even find my game, only the direct link worked, until I did that part. You also have an option to use tags for your game when you submit it. Use these. I tagged mine Helicopter, Overrun, Remake, Vic 20, Retro game, Competition etc. I know i’ve had hits from those as I got a follow from someone who specifically hunts out retro games and sent me a nice tweet as well.
Hope this has given you all some insight into doing something like this. And I hope even more that the next competition will encourage even more of you to submit your own entries as well. Because , believe me, if I can make a game and do all this on the back of it, then anyone can. Good luck to all the guys who submitted entries 🙂