Category Archives: creative

Some more thoughts on building fun and challenging arcade games

I’ve written it before that I’m not a huge fan of design documents for small projects. I’d rather be coding. So please don’t consider this as a literal document it’s more my own thoughts on some pointers for creating cool arcade games. I guess it goes hand in hand with my previous thoughts on the importance of arcade game design.

Know your character

Create your game character / spaceship / thing and set up some basic controls. Play it. Use it. Get to know it.
Is it fun to watch and control  ?
What situations would it be cool to have to deal with with your on-screen character.
Start to consider the look and style of a potential adversary for your character.
If you character can jump what kind of obstacles and challenges might he face ?

For many people just getting something on to the screen is an achievement – often the result of an initial technology test. It’s an exciting time. When you bind it to input it becomes even more thrilling.
I remember walking the Wizard in Wizard Wars around a blank screen for hours before it came to me that he should be collecting things.
Initially I had wanted to stage a battle between the Wizard and a number of mythical beasts. One in which my goal was to battle through waves of beasts using bolts of magic lightning and other such fantastical things. I guess in my mind it was Robotron with magic.
But I was controlling the little guy on a touch screen (first gen iPod Touch) and really didn’t feel comfortable with littering the screen with magic. Especially as the Wizard could move freely in 8 directions and wasn’t just restricted to his own area of the screen. It could have started to look very messy and confusing for the player.
I liked the idea of the Wizard tidying up his room. To me that was his role and formed his identity. Perhaps he was less the all battling Warlock and more the bumbling Merlin-esque Wizard who just happened to have magic.

Back to the controls.
Hurling the birds in Angry Birds is a lot of fun. It could easily be a device for another game. e.g. aim for the furthest distance.
Running the corridors in DOOM and just pulling the trigger is a lot of fun. As is flying over the planet surface in Defender just blasting lasers left and right.
There are so many games where just interacting with your character / vehicle is tremendous fun regardless of the actual goal of the game.

For me this is very much the first thing to get right in your game. If the one thing that you spend your entire game experience doing is poor or less than stimulating or heaven forbid confusing then your game will die.

My wife I’m sure despairs at the sight of me running a simple animated sprite around an empty screen whilst making all manner of noises and talking to myself. But for me it is a hugely creative experience.

Define the broad goal

Games need goals. Something for the player to aim for.

I’m a big fan of layering content in games. That is, you keep in mind the broader goal but the path to it is paved with smaller ones.

In DOOM your goal is clear. You find the exit and start over in a new level.
Same goes for Angry Birds. You wipe out the pigs and move on. The fact that death and destruction lie between you and your goal is merely an enjoyable consequence.

Your broad goal should be explained and where possible available to the player at all times as a visual reminder. I am of course thinking of PacMan. Games where everything is on the screen at once really allow you to achieve this. Multi-screen games are more of a challenge.

With hindsight I would probably have altered Wizard Wars to have the star count decrease to zero rather than simply incrementing the figure in the top corner of the screen. The reason is simple, not everyone reads the instructions. If you just drop in to the game it’s not at all obvious that you are aiming to collect 50 stars. Far better to count down since the player will quickly identify the goal as being zero.

In HyperGunner I dangled the carrot of “miles to Earth” at the end of every level.
This quickly forms the broad goal of the game and is mentioned in the pre-game screen.
Working back from there I was able to provide suitable sub-goals that moved the player through the game logically. i.e. collect stars to build up the hyperspace power bar.
Once in hyperspace the player is hurled that bit closer to Earth – the ultimate goal of the game.

Again with hindsight I would probably have staged the game a bit better. As it is the stars, diamonds and score multipliers are all generated randomly. Perhaps it would have been better to have spawned the hyperspace stars in line with an alien bomb or a saucer missile to add an extra challenge to the player.

These things invariably come to you once you’ve played your game to death.

Know your enemy

Your enemy is vital to your game. Games without challenges are dull. Games without conflict are dull. Of course you can define conflict in the true sense as being a shoot out or a physical struggle or you can express conflict as more of a struggle against time or resources. Either way the concept of conflict is key.
Your game needs to constantly throw stuff at you and you as the player must control the game such that you overcome all of it.

Your enemy should provide all of this.

Whether you define the enemy as an array of aliens, a wall of bricks or a ticking clock they should all seek to get the better of you by taking your goals and doing their utmost to prevent you from achieving them.

The better arcade games offered variety in the design of the enemy.
PacMan (again) with its varying ghost AI. Defender with its Baiters, Mutants and Saucers.

More recently DOOM with its mix of monsters and of course Angry Birds with its varying HP amongst the pigs.

Design is everything here.
If you have an enemy that hurls a visible bolt of magic at the player where is the best place to position it ?
If you have an enemy that seeks to crush the player where might you place it  for maximum effect ?
If you have a goal that is set against a ticking clock in say a driving game what kind of  enemy might you place in front of the player ?

It’s all about countering the interests of the player and his ultimate goal.

When you are designing your game on paper try to write down the role and actions of the enemy before you draw what it might look like.

The curve

In drama there is a simple rule that your protagonist must become something through his actions.
The simplest example I could find is the young farm boy Luke Skywalker in Star Wars who dreams of flying starfighters and taking on the Empire. Of course not only did he do that but he also had very close links to the Empire. Luke’s character curve (or arc) was quite pronounced and extremely satisfying for the viewer to consume.

In games we should strive to achieve the same thing. Whether we control a physical avatar or simply manipulate the contents of the screen we should ultimately feel like we have come from humble origins and through our actions – and hence increasing skill – have become something quite special such that we can take on anything that the game can hurl at us.

The game therefore, for its part, should naturally hurl everything it can at us by this stage.

A player needs to be tested at all times and then rewarded.
The “curve” that the player experiences can then be measured by their accumulation of rewards.

In modern FPS games you see this done with bigger weapons, greater ammo capacity and tougher adversaries. Well, bigger adversaries with higher HP. FPS games are frequently dull since they fail to move beyond this dynamic for progressing the protagonist through his curve.

In shoot ’em ups, another fine example of the character curve in action, you cannot get away with simply throwing bigger, faster and more deadly aliens at the player without first preparing the player with such things as shields, laser improvements and smart bombs.

More often than not your character curve is identifiable through the staging of your game’s content in the later stages. By virtue of the fact that your character is sat amongst complex enemy AI with all manner of obstacles in his path is evidence that the player has taken that journey and accumulated all the rewards en route.

So when you’re designing your game consider a snapshot of how you imagine your game or character / screen to look in the final shot (if of course your game ever ends !) and overlay that with the very first view of the game that the player saw.
If the two images look similar you may want to re-think some of the obstacles and goals.

 

Hopefully these thoughts will help you to lay the foundations of your game.
Designing games is a huge amount of fun. Coming up with the various levels, obstacles and game “personalities” is what makes it such a thrilling exercise.
Realising that your game is dull and devoid of challenges at a late stage in its development is no fun at all and extremely frustrating.

I believe that anybody can design a fun game. It’s not the preserve of large corporate entities and 5 minute wonder studios.

X Company – old game idea in new clothes

I’ve always wanted to create a game for a mobile device that effectively goes to work when you stop playing. Initially I had the idea of a sort of Tamagochi approach. Fairly predictable. But the more I played with the idea in my mind the more I came back to something a bit more adventurous.

The scenario that I often consider sees the player firing up the game to be told that his health is low and he is in desperate need of nutrition. Worse, his comrades are all ill and fading fast. But this is no RPG. This is a game of survival that probably has more in common with the Atari classic M.U.L.E.

My cast of characters, amongst them the player’s main character, are all the stranded crew of a failed mission to the far depths of space. When luck, fuel and oxygen started running out they aimed for the nearest planet. I call it planet X.
The basic premise of the game is that X Company must survive against the odds in an hostile alien environment.

Having crafted their own base, equipped with oxygen generators and water purification systems, the crew seek to systematically explore their new home in the hope that they might some day find some form of civilisation.
I always wanted it be pretty tight in the same way as Kirk and his senior crew were actually old friends.
I wanted the server to process away the player’s input and decisions (e.g. Divert 90% energy away from O2 to perimeter shields) and fire out emails periodically to reflect a) the state of the complex and b) the impact on the crew.
I’ve gradually become obsessed with the notion of playing Kirk in an hostile and mysterious distant world.

For the idea to work I need to define the character of each of the crew members. I also need to consider exactly where the fun is to be found. I have a clear vision of the presentation and gfx style but as yet have no consideration for how the code would work.

Games on mobile phones are going to be huge this next year. HTML5 games employing web sockets et al will be big business. I’m keen to develop my idea as a technology test if nothing else. If I get it right the game will be portable and flexible in terms of how it is played.

More to follow…

HyperGunner – level / wave design theory

HyperGunner is turning in to something to be proud of. I’m very excited to be developing it just now and am thoroughly enjoying assembling different game elements – scoring multipliers, power-ups, hyperspace bonus phase etc.

hypergunner title graphic

HyperGunner titlescreen graphic

What I’m most thrilled about is the pace of the action.
When I first started assembling the game code based off the previous game – Wizard Wars – I fell firmly in to the trap of thinking it should be just another formulaic shooter a la Galaxians. As much as I loved that game in my youth I knew that it needed something more.
A brief foray in to manic shooters taught me a great deal about maintaining pace in a shooter and increasing the perception of pace through some visual trickery.
I employed as much as I could in HyperGunner.

 

I guess the biggest success in terms of game design was the concept of waves within waves.

Initially I created a screen full of about 32 aliens all jiggling across the screen and essentially lining up to be shot.
It was dull. I knew I needed something more and that something was to have the aliens move much more freely. Rather than simply being cannon fodder they needed to be cannon fodder with a bit of movement.
So I stripped the alien count down to 8 and implemented movement patterns.
Depending on which stage of the wave you are in you will see the aliens move in a certain pattern.

Naturally each wave was over very quickly since with just 8 shots you could dispatch the lot !

HyperGunner in-game action

HyperGunner in-game action

So I looked in to having layered waves. That is, waves within waves.
On the first level you have 3 waves of aliens to clear before you officially complete the stage. Or level. Depending on which terminology you prefer.
On later levels you can have up to 25 waves of aliens to clear.
Each wave to be cleared is represented by a small flag icon in the lower part of the screen. This visual indication is vital to show the player what he must achieve.

 

I implemented 4 movement patterns for the aliens and it plays very well. But again it needed something more.
So I looked in to having a wave that is quite different. For this I looked at an old Atari game Threshold. This game had swooping bird-like aliens falling down the screen and I loved the way that it broke up the standard flow of the game. It was quite simple to implement even though the calculation for adjusting the x co-ordinate took some playing with. I’m still not totally happy with the movement of the swooping aliens (they tend to fall in to line too easily) but there’s enough in there for a challenge. For now.

 

HyperGunner in-game action

HyperGunner in-game action - older version

So with the core challenge figured out I set to looking at the bigger picture. After all, it’s fine blasting through countless waves of aliens but it’s important (I think) to focus on greater goals.
I was obsessed with the idea of hyperspace. So much so that I wanted to encourage the player to aim for hyperspace. I also wanted to have the visual effect of hyperspace with the stretched stars falling down the screen at high speed.

So I implemented an energy bar that is boosted with the collection of stars.
Bright gold stars fall down the screen when aliens are shot. Essentially the aliens release them. The more stars that the player collects the larger the energy bar. When the energy bar reaches right across the screen the player enters hyperdrive !

Hyperdrive is both a visual diversion and also an opportunity to score double points for each alien hit.
It currently lasts for about 10 seconds. I also went to the trouble of affording the player 5 lasers per button press as opposed to the normal in-game maximum of 3. The effect (I think) is stunning.
The rewards to the challenge of collecting so many stars without losing a life are great on both levels – visual and interaction.

By the time the hyperdrive phase is complete the player could have easily scored an additional 10,000 points.

I will discuss the game elements in detail a bit more once the game is complete. I have quite a bit more to do before I can call it complete. But for now it is, I think, a hugely thrilling game to play.

How Galaxians changed my life

Something I always wanted to write up but never really worked out the right approach for was how and why I became interested in making these simple / crude / amateurish JavaScript based games.

To get the full picture we have to go back to some time around 1980 / 81. As a young boy I used to beg, steal and borrow any coins I could get and race to the cricket club at the end of the road.
On a Saturday afternoon during the summer the club was open for business and a bunch of largely stuffy old men sat and watched the delights of leather on willow. I slipped in to the clubhouse un-noticed.
In one corner there sat a cocktail cabinet of Galaxians. (See something similar here)

If I was lucky I had 20p. Two coins. Therefore two “goes”. But generally I just had the one.

The walk to the cricket club was about 5 minutes. With every step I would be processing my previous go on the game and trying to figure out my tactics for the next one. So much so that when I sat down to play I was a combination of excited and nervous beyond belief.

I got pretty good at Galaxians but soon grew tired of the ritual of begging and walking to play the game. This was the time of the emerging home computer scene.

Zoom forward a couple of years to Christmas day and I unwrapped my new home computer – a Dragon 32.

The graphics weren’t great, the sound was pretty poor and the entire contraption felt like a big biscuit tin. But I loved it. I picked up a few books on how to program BASIC and saved up coppers to grab the occasional Dragon User magazine.
I devoured the long badly printed listings from the magazines (submitted by other amateur BASIC programmers) and frantically sought to achieve the same effects that they had produced.
I admired the professional coders but knew that I was a million miles away from them in terms of capability.
Every once in a while I would catch some machine code in Dragon User and just stare at it. How on earth could anybody understand that nonsense ?

For me it was all about the BASIC programs. It seemed so devilishly easy to accept keyboard input and produce a few audio/visual effects. Such little effort.
Before long I had some very simple games knocked up. Most were text adventures but some were little blocky Space Invaders style arcade games. (I can still remember writing code to check for collision based on pixel colour !)

A year later and I’d grown tired of the Dragon. I needed to play better games.
I was lucky. My Dad was interested in the stuff I wanted to create. I whined enough for him to cave in and get me an Atari 800XL for Christmas 1984. This time I had struck gold. Awesome graphics, awesome sound and a wealth of games, books and magazines to go at. Atari was (and is, for me at least) the definition of gaming.

I adored those days of my early teens. In the years before girls and the high jinx of college took hold I could be found beavering away in my bedroom on any number of game projects. All in Atari BASIC and all very crude. But they were mine. My ideas and my creativity at work.
I would sketch out all kinds of games in class at school. Weird detailed sketches of Manic Miner style levels and bizarre characters. (So much so that a school friend quickly nicknamed me Wilf after Wilf Lunn who at that time was well known for his mad inventions on UK television).
My friends would share their ideas. Such wild and creative ideas that were, I suppose, just rip-offs of the big home computer games of the day; Jet Set Willy, Manic Miner, Suicide Express, Ant Attack, Jet Pac (still an awesome game).

I so much wanted to create my own Galaxians. I desperately wanted to create my own Spy Hunter (my favourite arcade game of the day). What could be better than a James Bond romp through all environments in cars and boats that shot at things in their way ?

Magical times where as children we were unimpressed by fancy coding routines or other such low level excellence. It was all about what our games were going to do and of course look like. It was all about the characters, the guns, the story. Ever since those days I’ve had a love, indeed passion, for arcade games in which the sole requirement is to shoot stuff.
I think you get the gist :-)

I’ve always wanted to re-capture that passion from nearly 30 years ago. I’m not a coder. I can’t do the low level stuff. C++ or *shudder* machine code turns me to ice. I code C# in work but I’m no expert. I don’t follow technical forums. It’s generally an exercise in knocking those that don’t do it the same way that you do.

I’m a dreamer. I love nothing more than dreaming up a game scenario and putting enough code in place to go and get stuck in to crafting sprites. I love Photoshop. Just watching it load and anticipating the opening up of a new document (32 x 32) fills me with delight. I have my own palettes stored and pick one for the game based on its style. Just sitting pixelling my little characters and then dropping them in to the game to me is pure pleasure. It’s personal. In many respects I’d rather not ever show them to anyone. In many respects I also feel a bit like the Ed Wood of computer games. I have all the passion but not necessarily the technical expertise. Frankly I couldn’t care less. I’m having too much fun.

So I guess to the point of this post.
For me, even as a rapidly regressing 40 year old who should know better, it’s still all about the fun. The ideas. The “what if I make him jump and shoot as well as just jump” style ideas.
When I have to be concerned with the technicalities of making this stuff happen I get bored.

That’s why I love open web technologies. I love the fact that I can open a text editor and Photoshop and see the results with the push of a button in a web browser. I’ve waited a long time for this when I think about it.

HTML5 being adopted across the board is going to allow me to not only recapture the passion from my youth but actually push it further. A lot further. There are things that I can write now with JavaScript that I simply couldn’t do back then with BASIC. Of course there are. And that’s what is so much fun. I can create almost as quick as I can dream these ideas up. I don’t use libraries or frameworks. There’s no need. The blank canvas of a new project is too exciting. I like getting my hands dirty. (Notable exception: the SoundManager2 API)

I like to keep development times short. If a game is taking more than a month to become playable (bugs and niggles aside) then I’m getting something very wrong. I’ve most likely lost sight of the initial vision. If I can’t decide on visual styles or content then I’m definitely getting something wrong.
What excites me is when ideas just fall in to place organically.
You’d be amazed how often I create a simple sprite and just walk him around the screen with no regard for collision or other such game specific things. I walk him around, watch him move and just dream a game up around it. What would be fun ? What action would be cool to do ? – Hoth Strike was initially a helicopter game in which you fly low over a desert blasting gun turrets. The more I played with it the more I was amazed at how fast it all moved. The game needed to be a bit more frenetic.

Hopefully my point is made :-)
I love making games. I love drawing the graphics. But most of all I love dreaming up the ideas and seeing how far I can push them. You don’t have to be an expert coder to make this stuff happen. You just have to have the desire.

My organic design document

I don’t know how interesting this is for people but it struck me as interesting just how many game developers (inparticular those that make very casual games, such as myself) write design documents.

I had a quick look around the web last night for fellow casual game designers and stumbled upon some interesting discussions.

Design notes for Wizard Wars and Invaders from Mars

Apologies for the poor quality. I took it rather hastily with my BlackBerry. Not a great camera.

I guess where there’s more than one person working on a project it makes a lot of sense to have a document full of ideas. But for me there’s no real requirement. I just use one of those rather neat little Moleskine pads and scribble down my ideas on the fly :-)
It will probably bite me on the backside one day that I don’t invest time upfront planning my games but so far it’s served me well.

I just love idly scribbling down thoughts and cartoon sketches for my characters.

I’m working on a mobile version of Invaders from Mars just now hence the little sprite sketches that you see in the picture. The Wizard sketch is my sole wizard design for your little guy in Wizard Wars :-) Merlin style of course.

I hope to have something to show for Invaders pretty soon.

Dungeon Raid – Dragon 32 – nostalgic inspiration

It’s amazing what you can find on the interent.

When I first started dreaming up a game with battling wizards I had a very clear image in my mind from my childhood.
Back in 1983 I had a Dragon 32 computer. In the US it was the sister machine to the CoCo ?? (I think).

Pretty much every game worth playing on it was published by Microdeal. A small firm based in Cornwall, England.
The better games (for me) were developed by Ken Kalish. A wonderful game designer with an ear for striking sound effects.
One of his finest hours was Dungeon Raid.
I was so desperate to find the image of the wizard from the cover of the game I scoured eBay for old magazines and Dragon cassettes.

Last week I struck gold. A handful of magazines for a couple of quid and the first one I picked up at this on the back cover.

Dungeon Raid - Dragon 32

The wizard is of course blatantly robbed from Milt Kahl’s wonderful Merlin character from The Sword in the Stone.
I pinned this image up above my desk as I coded the game for inspiration.

 

new iPhone game – Wizard Wars

During the crafting of my Gauntlet-esque game I lost some motivation. The issue of rotation vs collision took its toll. I needed something to just jump in to so that I could get a game completed. It’s hugely frustrating for me not to finish something once I set my mind to it.

So I took a look at the iPhone. I’d looked at Objective-C and scratched my head enough to ask the question “Can I make games for the iPhone without Objective-C and Cocoa ?”. So much infact that I punched exactly that in to Google.
Incredibly a book available on Amazon called Building iPhone Apps with HTML, CSS, and JavaScript: Making App Store Apps Without Objective-C or Cocoa was returned. I wasted no time buying it.
When it came I devoured it. It’s not a big book but gives you every bit of markup and code that you need to present a game in an iPhone / iPod Touch.

Safari Mobile is sturdy and executes at a good pace. I tested the game using desktop Safari on a PC and my wife’s iPod Touch. Although the framerate drops on the actual device it’s certainly good enough to present a good game.

Wizard Wars game for iPhone (in development)

It’s not quite finished but you can still see it here: www.wilfscorner.co.uk/sandpit/iphone

I didn’t waste too much time on game design issues. I pretty much knew from the outset that I wanted a colourful game with a wizard battling another evil wizard in a fixed arena. I wanted the game to feel nice. When you touch the screen the character moves to that point. I also reflected the target position using a simple red blob sprite that fades over time. The effect when you drag the wizard is quite pleasing if totally accidental.

As a GameBoy artist I learnt very quickly that colour is vital. Bright, vibrant colours can make a simple game experience really enjoyable. So I set out to create bright colourful sprites.

The easiest way to achieve this was to wash out the backdrop. So I set the entire game on a patchwork stone floor that is actually quite dark. I then crafted a bunch of sprites using the opposite end of the spectrum. The effect is very nice and rather rewarding for an artist / game designer.

When I first set out to create the game I was concerned about frame rate. I needn’t have been. Safari Mobile handles things nicely. So much so that I was able to spawn my trademark spark flashes all over the place. The process of picking gems and stars up is dull if you don’t visually reward the player. The 8 way explosion of sparks is perfect feedback.
I also invested some time making this bob and bounce a little. So stars, gems and bonuses don’t just appear they drop a short height and bounce in to position. Very little code used for a thoroughly worthwhile effect.

I hope to blog a bit more about the game’s development once it’s complete. Just now I’m wrapping up the sound issues (AUDIO tag) and tightening up the code and resource files. I’m desperate to keep the whole project under 300k.

Have a look at the game. You can play it on a PC using the mouse to click the arena or the keyboard arrow keys to move the wizard.
Let me know what you think.

A rethink on the level design / goals of “Castle Adventure 2”

I took a time-out to explore some game design ideas.

To start with I needed to write down what I had come up with so far with my game. I then mapped that on top of what I originally set out to create.
The results were interesting.

So far I have created the following game mechanics:

Each level is populated with monsters to be avoided and items to be collected. Collecting certain items reveals an exit to the level entering which ends the stage and prepares a new one.
The monsters can be dispatched by magic powerballs which are collected at various points around the level. One shot to kill one monster.
The crux of each stage is avoidance and collection.

My original design idea was to have a free roaming fantasy arcade experience where the lead character was free to shoot hordes of monsters. In the style of one of my favourite games as a kid – Atari’s Gauntlet.
I wanted the action to be quite frenetic in that it was to be a case of “player is chased through the level by seemingly endless monsters” until he finds a key and escapes.

Quite what went wrong during the “build” process I don’t know but I seem to have lost focus.

With Invaders from Mars and Hoth Strike I kept my design document (a single sentence scribbled on a post-it note) in view at all times. I hadn’t done it this time.
Losing focus is a killer.

So I took the time to re-address the design and try to steer the whole thing back on to the tracks.

For the most part it’s not a huge change to have the player firing at will and dashing around avoiding monsters. I did afterall force the restriction on the number of player missiles and monsters on screen deliberately at some point to slow the action down and change the direction of the game.
So I unlocked it all and let the player run and gun as previously intended.

To counter the fact that the player could wipe out the monsters with ease I set them to respawn. Previously the monsters respawned to their original starting point in the level. I changed this to have them respawn at a Magical Swirling Energy Source. All respawning monsters come through that portal. In the level designer I can set this point.
In the game the energy source is visible as a rotating sprite.

Magic in game

Magical swirling energy source - the monster spawner !

This gave me another dynamic and a useful goal. I already had the collection of the strange brown artifacts as the key to exiting the level. So I used the collection of all gold coins as a means of destroying the energy source.
No energy source = no respawing monsters !

I kept the magic balls for the player to collect and just had them granting the player a short burst of rapid fire. It lasts around 10 seconds.

The last thing I tweaked was the ability for the monsters to literally hunt the player down. I figured that a monster that had been shot would be pretty pissed off so I gave them the ability to sniff out the player. It currently doesn’t work so well on diagonals so will need to rethink that. But when the monsters actually hone in on the player it can get pretty scary trying to outrun them. Especially as the monsters are set to have x3 speed on respawn.

The key to the monster chasing player scenario is as much about level design as it is AI.

As the fourth version of this game takes shape I hope to have many more monsters on the screen at once. I am going to try a level without so many walls and see how it fares.

Play the latest version here: www.wilfscorner.co.uk/sandpit/4/castle.php

Building a visual style

I’m very happy with the mechanics of the game just now. Although I still need to set aside some design time in terms of adding a few puzzle elements I’m happy that the game is behaving itself enough for me to go off and start drawing sprites and tiles. Art afterall is what I’m actually good at.

I have a very clear idea as to the look that I’m after. In short I want colour and contrast.
It’s important for me that the floor tiles are somewhat saturated in appearance whilst the walls stand out a bit more. The actual characters in the game will stand out quite a lot since I’ll draw them with more vibrant colours. Same goes for the effects – wizard’s magic, sparks, explosions etc.

There is a feature to my game editor that I hadn’t used thus far that I wanted to use now – the canpass flag.

Each tile has several flags that I set in the editor. One of them is the canpass flag which when set to 1 effectively renders the tile transparent in terms of collision detection. I’m using this flag to present shadow tiles.

 

Level designer
Level designer

Just now I have a limitation in the editor that prevents a sprite and a tile occupying the same space. Rather stupidly this doesn’t extend to the game where sprites can pass over tiles with ease.

So now that I have a mini objective (collect the strange brown artifacts) and a few challenges (find the key – open the door, dodge / defeat the bad guys) and a nice little twist (defeated monsters come hunting for you once they’re ressurected) I’m going to set about cementing the game’s visual style.

The latest version is available here: http://www.wilfscorner.co.uk/sandpit/3/castle.php

Something that I’m preoccupied with is the idea of creating a light mask around the glowable objects. I’d love it if the wizard could hurl a magic ball down a corridor and it glows such that it lights up the floor and walls around it. I’m sure there’s a way with canvas.

Designing a level and rethinking the challenges in Castle Adventure

Occasionally it pays to radically shake things up a bit. I’m never satisfied with my games when they’re struggling through that middle period of trying to iron out objectives vs technology vs style. So it’s during this time that I make the most drastic changes and run with them for a few days to see how I feel about them.

screenshot

Castle Adventure - rethinking the scale

I did it with Hoth Strike quite a lot when I wasn’t convinced by trying to emulate Defender’s game mechanics. The whole screen scrolling was driving me nuts since it meant I was forced to implement a scanner. But in the end that was a worthwhile exercise.

So with Castle Adventure I am now at the point where level objectives and puzzles are at the forefront of my mind. As it stands the game is played at pace with a number of missiles being hurled around by the player. The ghouls and zombies don’t fight back. Their only form of attack is to run head long in to the player and cause damage. I still rather like that since maze games for me don’t quite cut it when you’re avoiding missiles. Much better to do it PacMan style and dodge the bad guys.

So I sat scratching my head last night and thought about a game whereby you spend more time avoiding and less time hurling magic at enemies. This is precisely what the first Castle Adventure was all about and I really rather like it. I like the stealth nature of it in that you are looking further in to the level to plot your route without relying on the fire button.

To best achieve this I knew I had to alter the scale of things and present more for the player to do. So I did just that and came up with a different take on things.

You can see it here: www.wilfscorner.co.uk/sandpit/2/castle.php

Essentially the player is playing within the same game arena but on a smaller scale. He has much more room to move and a lot more (potentially) to have to solve.

I’m so taken by the challenge of avoiding monsters that I’m now also thinking about turning it on it’s head a little. One idea is to have a final locked room that requires a kind of jailer’s key. In that room is the level’s objective – perhaps some treasure. But the key is being carried by a jailer who obviously needs to drop it. To drop the key the player must stun him with magic.
There is an obvious down side here in that there is only a set amount of magic in each level. So I’m looking at respawning magic as an option.

Game design is fun when faced with such scenarios. As a rule of thumb I present a scenario for a goal and then flip it on it’s head to find the challenge. It works well most of the time. I may blog some of my game design theory for what it’s worth soon.