Wednesday 18 April 2012

Level 1

As another break from coding, I thought I'd cover another aspect of the game not yet mentioned, levels.

As stated at the start, the game is based on Alchemy, but yet some time ago, I enigmatically defined gameType as.
type GameType
   state
   level
endtype
Those familiar with Alchemy will know that it does not have levels, its just an open game. So what's the deal?

I also said somewhere down the line, that the mechanics will be based on alchemy, but the game itself will be something different.

In this game there will be levels, and each level will have a goal.

So before we do any more programming, it would be a good idea to design a typical level, this can be used to decide how the game is structured and as an indicator of if we are going in the right direction.

Level 1 - Fire.
In Alchemy, you get this at the beginning. Which kind of undermines how difficult it was to first produce.

In our history, the discovery of fire was a crucial step in our evolution, our survival even.

I thought it would be a nice idea to set this as the goal for the first level as a tribute to its importance in our development as a species.

So what do we need to make fire?

In scientific terms, fire requires three things.
  • Oxygen
  • Fuel
  • Ignition
Thanks to Joseph Priestley (1733-1804), we know that oxygen is all around us, so not much of a challenge there.

There are various type of fuel, but historically, the first would have been wood which was in plentiful supply hidden inside trees.
This gives us a starting point and introduces a new concept which will form the basis for one of our object groups - resources.
A Tree is a resource, and a very valuable one at that.  They produce Oxygen and if left alone, are pretty self sustaining.  All they need is sunlight, water and the nutrients found in the earth.
So now we have to decide how many steps it will take to get the wood and what else will be needed.

We will certainly need a tool of some kind, but we don't want to give too much away early on.  An Axe is a good start - we can make the user work a little more to get a saw.
It would be difficult to have to make the axe, since this will need wood, and we need the axe to get the wood, so we will have to give the user the axe to start with.

Now we need a spark.
The simplest is to bang two stones together, stones are in plentiful supply so are another resource we can start with.  Alternatively we can hit a stone with an axe, but this may blunt the axe.
Of course a spark hitting a log will not start a fire, so we would need kindling.
This would be obtained chopping logs with the axe.

Lighting the kindling would technically get fire, but we can introduce a middle step, the flame.
Which in turn would be combined with the logs to produce fire.
This should provide enough the give the user an introduction into the game.

The starting objects are.
  • Tree
  • Stone
  • Axe
The other objects in the process are.
  • Blunt Axe
  • Kindling
  • Spark
  • Flame
  • Fire
Now we need the recipes - the combinations and their results
  • Combining tree with axe will produce logs and axe.
  • Combining logs with axe will produce kindling and axe
  • Combining stone with stone will produce the two stones and spark
  • Combining stone with axe will produce stone and blunt axe
  • Combining spark with kindling will produce flame
  • Combining flame with logs will produce fire
So we have the basics of our level, which being the first is not meant to be that challenging.

No comments:

Post a Comment