Actually, it’s a bit further on than that as the competition started on January 30th and it’s now 10th of February. So, twelve days in. Just short of two weeeks. Around a fifth of the allowed time has already passed. Am I still on track?
Firstly I’ve been busy today setting up a proper network between my two Macs so I can keep up to date copy of my source code on the Mac mini. I’m planning a trip in a couple of weeks to visit Aaron at his new house for a few days so we’re plotting some development while I’m there. If I’m into that last 10% phase by then, he’ll be able to do some testing and suggestions for Envahi too as I’ll be around halfway to deadline by then.
While doing the network, I created new builds of Boulderdash and Envahi for him to look at. Took the opportunity to fix a bug which causes Boulderdash to crash when it’s launched on a new installation due to me initialising a variable after I’ve already tried to load it in the initialisation section. Because I was writing the data within the game itself to test the code, this bug would never have shown up for me as the data already existed so it’s lucky to get spotted now before other people tried it. A game that doesn’t even run would not go down well.
Also realised that, despite my previous post, Envahi is actually the fifth full game I’ve worked on since I started with Game Maker 2. Paradroid is the joint project Aaron and I have on hold at present which is what we were working on in Unity originally. After that I did a recode of my pee-take game called Numpty that I’d originally written in Swift. I actually took another look at that a couple of weeks back and made it even better just for t hell of it because I’d learned so much from continued work on Paradroid. We are coming back to finish that btw, everyone. It went on hold while Aaron had all his move stuff going on, which is why I switched to develop Boulderdash at the time.
My third game, thinking about it, is a half-written remake of Gravity Force, which I’ve blogged about considerably, earlier in the blog. If I get the urge I will finish that just to put another completed game under my belt. It’s certainly been a lot easier to remake that using this system so it wouldn’t take more than a week or so. Maybe while the competition is in it’s two week judging period, I’ll go back to complete it as a straight conversion, so I can resist the urge to add to it.
Fourth game is obviously Boulderdash and that’s also very close to completion as long as nothing else distracts me from Envahi and completing my entry for the competition.
So what has actually been done with Envahi now?
After purchasing the assets for the players helicopter I’ve decided that the only other usable image is for the cloud so I’ve needed to look around for stuff like buildings, Dam etc. I’ve got some placeholder stuff in there from Kenny’s game assets that I licensed a few years back but it’s exactly that. I’ve also sourced some temporary buildings initially, which lasted a few days, until I decided on an alternate route and found a photo’s site where there are lots of lovely photo’s of city backdrops you’re allowed to use as you wish. I found that importing some of them as sprites, snipping out the area I want, and then resizing to fit my screen dimensions for the city actually works rather well. There’s a lot of image manipulating to do afterwards as the background to the cities, like night sky for example, needs to be edited out or made transparent. I’ve got 6 in there at present but may put in more to use randomly – or in a level structure depending on available time further in.
With the enemy sprites I’ve hacked together some temporary extremely crap ones to use for now. I’ve got an idea for modifying how a couple of them work later on so will probably need to change the image anyway, so will also do for now. My searching online for stuff that works with this game to save me using the crap I’ve done.
Speaking of enemies, I’m almost done with them at the level where they work mostly the same as the original game.
Grabbers are in and work the same way where they drop down to the y-axis of the player and then move to the right trying to grab them in a cage if they connect. Easily dodged if you see one coming and aren’t distracted by something else.
Zoomers work the same way as the original game and are moving at a rapid rate to make them harder to hit. Again they must be shot down before they get to the city or it’s invasion. At present it’s actually just game over because I have no invasion event coded into the gamestate yet.
The UFO now moves right and left across the screen randomly. On it’s right to left path it will spawn droppers under it which will slowly move down to try and invade the city. In the original game it spawned them on the left to right path but I prefer it my way.
Acid cloud’s can appear now. At the moment there’s a max of three but this will be changeable based on level, I think. Acid rain is in and working nicely. More on this later.
Just nibblers are left to go in now. I’ve knocked up an image for it and just need an animation of some kind for them dying because I need to keep the original game system where enemies stay on screen dying for a while and you can’t shoot through them. This encouraged a lot more moving around trying to find a clear firing path. Zoomers already have this but the grabber does it’s own thing where it loses its base after you shoot it and flies off the screen uselessly.
I’ve resisted playing with the front end completely since putting a basic screen in place at the beginning and testing the music. I’ve got some interesting ideas to do with this involving using the different coloured helicopters that the asset pack included but it’s a lot safer to build that stuff in after the main game is complete so I don’t run out of time trying to cram game elements in right at the end. I’d rather forego some nice title screen effect at the end than have an incomplete game at deadline day.
Pretty much decided that I will be implementing some kind of level system now and enemies have been developed to make it easy to work that in. I can use different city backdrops as mentioned earlier, or just keep that random and gradually increase the speed and frequency of enemies as the game progresses. The idea being that starting on a harder level will have this already advanced and maybe increase scoring for playing that way as a reward. Potentially even seperate high score tables if I find that’s feasible depending on how names are actually entered.
With this game I’ve been using the object system rather than all tiles which I used for Boulderdash. Collisions have turned out to be a lot easier than expected as a result, as Envahi really doesn’t need anything more than basic area checks. I can overlay background objects behind the Dam for example and then just register a hit between both objects instead of any tricky bit-masking. As that stuff works so easily the game is playable as it is now, and pretty fun, even though there’s no Dam being threatened at present, missing the point completely.
I spoke previously about using some of Boulderdash’s code that could prove useful. Mostly that doesn’t even exist now, apart from a few simple routines like the saving of data and basic starting template. One of the great things about using a new development system is you’re always learning and improving. I could make a basic framework now for future games but there’s still so many features it would need that I’ve not needed yet that it would be pointless until I’ve got a few more games under my belt.
Finally there’s another big part of the game I’ve implemented that’s not in the original, which is the player shield. I wanted this so that acid rain could be a bit more forgiving than the insta-kill of the original game. It’s worth taking a bit of damage to get rid of a pesky cloud as you can shoot through the raid to get to it, if you’re positioned correctly. It’s also good for hitting the Dam wall as, while you don’t damage it, you do lose some energy but that’s much more player friendly than just dying instantly, as you’re moving around the screen quite rapidly and impacts are very likely.
I’ve also decided to implement a shield for the city so acid rain can damage it more of a priority to take down the clouds. This will involve some hud modifications but I need to edit that to put a border around the score/lives and shields info anyway so it will look much neater.
All on track so far then. Screenshots below. Remember it’s coder art and the title sequence is a mock up so it will look much better as development goes on.