There’s two things I’ve recently started getting back into. The first of these is Project Euler. For those of you allergic to clicking links, Project Euler is a series of maths problems which contributors solve with programming. For example, the first question is “Add all the natural numbers below one thousand that are multiples of 3 or 5.“.
Any language or method is valid so long as you generate the correct answer (barring the method of looking up the answer elsewhere) but the focus most people take is to do it as fast as possible and in as few lines of code possible. There’s even a bunch of people solving the problems in assembly code. New mind please, mine just blew.
It’s a great test of your problem solving skills and a great way to learn new things about your chosen programming language. Do you know how to use BigIntegers or reverse a string in Java? I sure as hell didn’t, nor would I have normally looked it up. Learning!
If you’re at all interested (and not allergic to clicking links) you can find it here. It’s probably about time I showed off some source code.
A thought struck me at some point; we have 2D games and 3D games. (plus 4D games if you believe the advertising for Blinx the Time Sweeper) Is it possible to make a game in 1D? After a bit of deliberation, I narrowed a 1D game down to the following definition:
A game designed for, and whose graphics can be fully represented by, a horizontal row of coloured pixels.
Sound simple? That was kind of the point. View it as a challenge, if you will; can you design a game that simple? I’m skipping over controls a bit, but they can be as simple as you need; d-pad and two buttons anyone?
Anyway, here’s my starting effort; touch a tile to cycle it and the surrounding tiles’ colour through red, yellow and blue.
The basic goal would be to get all tiles the same colour; initially I had this at 5 tiles, but since the tile colours are purely random it could result in unwinnable game. It was simpler just to make it six tiles for the prototype, but the game feels quite easy now. If I don’t solve the ‘unwinnable scenario with 5 tiles’ problem (or even if I do) I’ve had some ideas of things to add:
All Red/Yellow/Blue: get all the tiles to a specified colour
Match the pattern: manipulate your tiles to match a pre-determined pattern
Speed mode: Get all the tiles the same colour, board resets. Repeat as many times as you can in a time limit.
Now that I have some more game modes, here’s some other ideas I’ve had to improve it:
Actual graphics – current ideas include a jewel skin and a xylophone skin (mental note: implement sound)
Option of numbering the tiles instead of having to remember what colour comes next
Any thoughts on how to improve this game, or any 1D concepts you’ve got in mind? Comment!
Soooo… a while back, I said I’d sort out the links to downloadables on the site. And now I have. To be honest, I was just about to start a new job at that point and that’s what took up the majority of my time. Nonetheless, it was time to get it fixed. So now I have.
Got some business cards made up for Game In Scotland – here’s what they look like:
If you’re looking for something like this, moo.com is where you’ll get them. You can use your own designs on both sides or have one side with formatted text. Recommend it.
I put up a new flowchart picture for the Knight’s Tour post. The new one is the correct size and actually makes sense. This is why Gordon should not try and construct flowcharts at 6am.
I’ll be heading to Game In Scotland this coming weekend, which means two things; doing work for my reel and updating my CV. I’ve had some great feedback to go on, but my work is still cut out these next few days
So I’ll see you at Fat Sam’s this weekend if you’re looking for games industry employment or enjoy hearing Brian Bagalow talk a lot.
I recently went for a job interview for a Java Programmer position. It seemed to go well and I was given a programming test to complete based around The Knight’s Tour. After the better part of a week (minus full-time work hours) this is what I came up with.