Sunday, February 20, 2011

Android Project - Train Game Design

I've had a slight pause in my game project due to coming up against my first major design decision namely what is my game actually going to be about. 

I've ruled out porting Brick of Destiny and on closer inspection I'm not convinced either of the ideas I mentioned in my initial post are going to work out.

I still stick by my initial assessment that there is absolutely no point in rewriting a classic unless I'm convinced I can do it better than Zynga, Glu or any of the hundreds of well funded casual game devs out there.

I've played and downloaded a lot of Android games and I've come to the conclusion that I don't really like tilt controls. or on screen joysticks for controlling action games which pretty much rules our classic shmups, platformers, or racing games. 
I want something that's a natural fit for touch controls, but I still want something that has a proper game loop and gets the heart beating a bit faster.

There's an awful lot of games out there and it's easy to think that all the good games have been done. I've literally kept my self up at night trying to think of an original game idea. 
I very nearly considered a remake of a PC game I was a huge fan of called Sheep, but a quick look at the Android market showed that several people have had the same idea. 

I had my eureka moment this morning. I've always loved the scene in Wallace & Gromit where Gromit has to lay the tracks out in front of the model train. I briefly thought about making a game where you have to lay tracks in front of a train but I realised this would be nothing more than a remake of Pipe Mania and there are dozens of those out there. I also briefly considered a remake of an old Amstrad game called Locomotion which is a similar concept with a sliding block puzzle twist.

My moment of revelation was thinking about the on rails sections of Mario games where you have to ride along on a moving platform hitting switches to change course and avoid obstacles. This reminded me of the mine cart mini game in the Indiana Jones arcade game (skip to 1:30). 

I've had a bit of a rummage around on the Android store and I can't find any decent mine cart, or train based games. I also spent a bit of time searching for flash games (including a site dedicated to train based flash games!?!) and though there are a few games that have a train points mechanic they are usually focussed on managing a station rather than guiding a single train. 

So the concept I'm going for is keeping a train running on the tracks. 
The screen will contain four parallel tracks the train can be switched from one track to the next by touching junctions on the track thus avoiding various obstacles. I'm a big fan of trying to keep something in a playable build at all times (especially due to my short attention span) so I'll probably knock something out as quickly as possible using horizontally blocks and lines and then add additional game play elements one by one getting rid of them if they don't work. Ideas so far are:

  • A cutesy cartoon type look possibly with isometric pixel art (I might also try some fixed perspective 3D if I'm feeling brave) 
  • Trains containing bad guys that you have to dispatch by forcing them to run into traps 
  • Obstacles that can't be avoided but have to be fixed for the train to pass by using touch gestures.
  • Depending on how I end up doing the graphics I may try my hand at a chip tune type sound track with some 8 bit synth action
  • Rather than have instadeath and multiple lives I'm planning on having train passengers acting as lives who fall out when the train gets hit and can be picked up by driving past stations
  • It would be really fun to be able to define rules for track layouts that provide a challenge, but are guaranteed completable so I could have the levels procedurally generated rather than defining them by hand
  •  The game should progressively speed up throughout the level possibly with some power ups which allow you to speed up or slow down the train. 

I'm glad I've finally got an idea I can start implementing. The next step is throwing some code together and seeing what works. 

Saturday, February 19, 2011

Review - Blur PS3

I received Blur today from Love Film. I had high hopes, but unfortunately it was one of those games that was in the console for about half an hour before it was back in the envelope ready to be posted back.

The concept of the game can be summed up very simply, it's Burnout crossed with Mario Kart (or if you prefer Wipeout with cars). You race around stylised tracks in real cars with arcadey physics whilst picking up various power ups that fling balls of glowing energy into your opponents. The graphics and presentation are very impressive, but ultimately the game just isn't fun. 

Combining the two genres of cartoony Kart game and arcade adrenaline racer must have seemed like a winner on paper, but they are fundamentally incompatible genres. In Mario Kart the unrealistic physics of the tiny nimble cars allows you to dodge your opponents shells and makes targeting tricky, but a game like Burnout is all about the feeling of weight. A great arcade racer gives you the impression you are hauling tonnes of protesting steel teetering on the limits of traction moments from disaster. The upshot of this dysfunctional marriage of genres is that in Pure with it's large unwieldy muscle cars it is trivial to hit and virtually impossible to avoid being hit. When 20 cars are participating in a race armed with a near limitless supply of homing missiles and leader zapping lightning you might as well call it blue shell the game.

As is par for the course in such games you start at the back of the pack and have the benefit of being slightly faster than your opponents. Making your way to the front requires little more than not crashing for a couple of laps and once you are there it's simply a matter of luck if you will get zapped on the last corner and end up finishing in 10th place. It's not just that when you fail it feels like a cheap loss you also start to feel that victory is equally random and thus hollow. 

Checking Metacritic it looks like Blur got some pretty solid reviews, but I wonder how much that was a result of Activision leaning on the press as by all accounts the game tanked at retail leading to the Bizarre Creations eventual demise last month. My heart goes out to all the guys facing redundancy as you can tell a lot of love went into the making of a game which ultimately doesn't really work. Bizarre will always have a special place in my heart as quite apart from their stand out hits Project Gotham and Geometry Wars the studio's first ever game was The Killing Game Show an Amiga classic which I loved as a kid. 

I'll leave you with Bizarre's farewell video montage as a reminder of the great work they've done over the years.

Thursday, February 17, 2011

Playstation Plus - A Good Deal?

I've not been doing my usual amount of gaming recently. First I got Metroid Other M from Love Film which didn't work because apparently older Wii's stop playing double layer disks. 
Then Bioshock 2 arrived, but though I think it's a decent game it didn't really work for me so I took a trip to the Playstation store to see if there was anything worth buying. I've been wondering about the Playstation Plus service for a while, but I've been resisting. There were about half a dozen games I liked the look of and for £11.99 for a 90 day subscription it seemed like a pretty reasonable deal.

The small print is that you don't get to keep the games if you cancel the service, but then there are virtually no games that I'm still playing 90 days down the line so I'm not going to worry about it and I don't let it stop me subscribing to Spotify. I used to sign up for the view that you can resell physical products but having looked into selling my old games on Amazon, most of them seem to only be worth about £5 which isn't much return if you bought a new release for £50. 

I'm planning on making a few notes about it over the next few weeks so I can decide if it's worth it when the subscription renewal is due.

 
One of the things I was most looking forward to playing from the first batch of games was Magician Lord. When I was a kid there was nothing I coveted more than a Neo Geo with Magician Lord, but at £600 for the console and £200 a go for the games it was never going to happen. Having played it I'm glad I didn't part with my hard earned cash back in the day because it turns out it's unreasonably hard and not all that much fun. Lets hope they put King of Monsters, Bust a Move, or King of Fighters on there soon as they are the pick of SNK bunch.

Of the games I've played so far Shattered is the game that I most enjoyed. It's a superb HD remake of Breakout (you know I have a soft spot for these types of games as I wrote one ).
As well as really well balanced game play it has a great electronic soundtrack and some nifty features like the ability to move things with force waves. If you like bat and ball games you really have to play it. 

It really does validate my requirement that I try to make something with a twist for my Android project as you really can't compete with big studios if you are making a straight retro remake. 

Tuesday, February 15, 2011

Android Project - LibGDX

After a bit of research on Android frameworks I've decided to go with LibGDX. It looks like an excellent framework and has the advantage that Android is just one back end to the framework. It can also build for JOGL to produce a desktop app. As well as the obvious advantage of having two platforms for the price of one it also means you can play with the desktop version while you are tweaking gameplay without having to continually go through the rigmarole of building for the emulator. 
LibGDX is an OpenGL library and unlike some of the more beginner focussed libraries it doesn't sugar coat anything, it expects you to deal with it's eccentricities.

I noticed that many of the other Android libraries seem to be using the libraries from LibGDX so I thought I might as well go straight to the source. 

For those who are not au fait with such things OpenGL is a library that provides a standard way to talk to graphics accelerators. Before it existed people writing PC games had to write their own drivers for every single graphics card they wanted to support. OpenGL compliant hardware supports a standard set of features if you write code using an OpenGL library it will work any compliant hardware. 
You might wonder why graphics hardware is important if you have a device with a speedy processor. CPUs are what's called a Turing machine which means they can do pretty much anything you can dream of while graphics accelerators can only perform a very limited set of instructions tuned for moving shapes around, but because they are so specialised and perform actions in parallel they can increase graphics performance, by a factor of tens or hundreds.  

Previous Java games I have written have used the Java2D library which allows you to draw graphical primitives on a canvas without graphics acceleration and while this might be fine for a simple game running on a desktop PC if I have any aspiration for writing more advanced game on heavily resource constrained devices I'm going to need to learn how to use hardware accelerated graphics (That said I developed my desktop game on an 800MHz PIII and will be developing my mobile game on a 1GHz Galaxy S)

I'm definitely going to use the Box2D library in the future, but I think in order to get on with writing a game without having to spend to much time learning stuff I'll make OpenGL the new thing for my first project and introduce Box2D on the follow up. 

I've been toying with the idea of updating Brick of Destiny to use OpenGL, but having reviewed the source I used the collision detection from Java2D quite extensively and the game also has a fixed frame rate which would mean tinkering with the rendering and simulation quite a bit so much so that it wouldn't speed things up that much. Last but not least I made a few school boy errors in the code as a gaming noob and so I would either have to waste time fixing them, be forever annoyed by bad decisions.

Next time hopefully I'll write up some concrete game design for my project. 

SQL Hell

Today I needed to install MS SQL Server on a PC.
My usual experience with installing a database engine is MySQL on Ubuntu where you open a terminal and type:
"sudo apt-get install mysql-server"
That's it job done. 10 minutes later and you have a working DB on your server. If there are dependencies or things it needs to change it works it out for you and sorts it.

Here is the process for MS SQL Server 2008 on my XP PC

  • 9:20AM Decide to install MS SQL Server
  • Search google, go to the SQL Express 2008 site
  • Run somekind of Java downloader which crashes firefox
  • Installer application reuiqres a hot fix and will not run
  • Manually download and run hotfix
  • Reboots computer without asking work lost
  • Run graphical installer agree to EULA
  • Will not install because power shell is not installed (No information provided as to what this is or how to get it)
  • Back to google
  • Can't install powershell because it can't validate Windows is genuine
  • Download validator tool
  • Run tool manually copy validation code into website
  • Download and install powershell agree to EULA
  • Installer won't run because the machine has Visual studio 2008 but this is not patched to SP1
  • Visual studio will not update because I am not using Internet explorer
  • Back to google
  • Download visual studio 2008 SP1
  • Run graphical installer
  • Agree to licence terms
  • Visual studio 2008 Installer takes half an hour to run
  • Go through pages of incomprehensible set up dialogues
  • SQL Server 2008 installer takes half an hour to run
  • 12:07 Installer completed
And people say administering Linux is hard......