Introduction
I suppose the idea of this game started after I found/read Steve Turner's "Diary Of A Game: Deepest Blue" and remembered Andrew Braybrook's old The birth of Paradroid diary. Of course, I had to check out Andew Braybrook's new blog, as well. Not too long after, my brother and I had one of our C64 gaming nights at my place, and a few Andrew Braybrook titles was indeed played. The day after, I started thinking about Paradroid, and what an ingenious game it really was - and still is. "Wonder if I could make something like that in Construct 2", I asked myself... Now, I refuse to do a straight clone of the (or any) game(s), but the idea behind the game surely is a good one. Maybe I could do it in another setting, and maybe just loosely base my idea around Paradroid instead?Basic Game Concept
Paradroid is set on a spaceship, so that was a no go. Since I had some graphics /tile maps available from some of my other projects, I thought at least I'd set up a screen using one of them. Ended up using the cave tile map from Gooners. Really didn't take to long to get a screen, and a movable player sprite, up and running. And, thus, the idea about maybe set the game in a Gold Mine came to light. Maybe a futuristic one, with Gold collecting Droids. Your Droid needed to fight the Droid for their Gold, so you can gain strength. The stronger the Enemy Droids, the harder to kill. I plan to have probably 3 different strength Enemy Droids and 3 different sized levels. Small, Medium and Large. I've already got in place a formula to have a certain percentage of each Enemy Droid on the different levels. The bigger the level, the harder to get rid of the enemies. You're more or less forced to battle the Enemy Droids and steal their Gold Supplies to be able to kill the growing number of strong Enemy Droids. Basically, you're only as strong as the Gold you're carrying - both Player and Enemies...I also plan to have a map of the Gold Mine, where the player can use the main lift to travel up/down between the different levels. Although, once all Enemy Droids on a level is killed, the level will turn "inactive".
Enemy AI
So far, making the Enemy Droids act "sensible" has been the hardest part getting to work (properly). I did know I had to use Line of Sight and Pathfinding to be able to work out the AI of the Enemy, but how to use them was another story. So I tried reading some posts on Construct 2's Forum. Tried loads of things, but nothing really worked as planned (or at all) and it soon got way to complex.I had a day away from the project (well, drawing some sketches of a Gold Mine map, and a few levels) and got back to the AI conundrum... Can't really remember how I did it, to be honest, but I did try to make the enemy setup a bit easier; I manually added enemies to the layout screen, instead of spawning them from an invisible EnemySpawner, in-game. I realised I didn't really need to spawn them at all with my current level design. Long story short, I spent half an hour trying out some Pathfinding basics, and things started to come together. I even got the nerves to add some doors after some time, but that was another strange encounter. Things that sort of worked, stopped working when I did some changes, but never got back to working again after I removed the changed I had done? Never got to the bottom of this. Was a bit annoyed one night/morning, so I started making door animations instead - to get my mind away from opening/closing door logics :) Animations done, and just before going to bed, I just wanted to try out the animation in the game... So, deleted all references of any doors I'd already done in the project and started fresh with animations... And funnily enough, suddenly thing started to work out as planned... I had a little struggle with doors opening/closing while the player was in the door opening, but a couple checks later, that one was sorted as well... Now I actually had a pretty much playable version of the game... Did add some shooting actions earlier, so I could walk around and shoot the enemies... Any enemies inside a room (with door locked) cannot "see" the player, so they won't move, only the enemy who has Line of Sight and are on-screen will start following the player. Also made a loop that makes sure the enemy will update it's Find Path regularly, so it will follow the player wherever the player moves...
What's up next
I'm currently refining some of the Level Designs and making different tile maps for different levels. The plan is to have 4 x Small Levels, 4 x Medium Levels and 2 x Big Levels. (Playing with the possibility of adding a huge "boss" level at the very end, but this will probably not be considered unless I get some time (once everything else is done)). Probably need to look at Global Variables to control the current levels and their status.I will need a Startup Screen soon, so I can get my event to check weather or not you're playing on mobile or desktop, working.
Below a quick picture of how the game look so far...
No comments:
Post a Comment