Monday, 16 September 2013

New Game: Sand Lab

Hello there, those who are interested in my game creating experiments! I have not blogged since before Easter because revision took priority and I soon forgot about Java (Antidote, top down zombie shooter no. 1) and moved onto a graphical game creation tool called GameMaker. If you're thinking about making a game but don't want (or need!) the complexities of programming, this is a good one to try. It does come with it's own programming language for doing anything you like within the game sandbox. I, for one, used the language to cast shadows on the map as you run away from body-less zombies! The result was Zombuild.

However, the game that I'm really excited about making at the moment is "Sand Lab". This game will involve a very interesting way to play with tiny particles that fall down and behave generally like sand or liquid or gas or fire or any other similar material. This has been done before, but what hasn't been done is to use one of these types of sand as a currency. The currency sand, say gold, will be a reference point and the value of any other sand type is calculated using the amount of gold currently in the bank. The bank is a bank of sand (or a sandbank if you will) that simply contains an amount for every sand type. There won't be much gold, say 1000 pixels worth, so it is very valuable when compared to sand types like water or sand, which probably make up most of the bank's contents.
Sodium reacting with hydrochloric acid to form hydrogen and salt.
Now it wouldn't be very interesting if the different types of sand just spread themselves about the lab into a pile and stayed there for all eternity. Certain sand types react with one-another. This is the key feature of my game. It enables you, the player, to react sodium with hydrochloric acid to form salt and hydrogen. You can then potentially sell the salt and the hydrogen for a higher price, giving you that all-important profit. Other reactions will yield higher profits but they may also have higher costs. Selling couldn't be easier: you simply pour the sand to be sold out the bottom of the screen and your bank balance is adjusted according to the current price of that sand.
The bunsen burner!
The objective is simple: get as much money as you can in order to buy more useful sand types such as oil and plutonium and tools that might include a heater, cooler or input types. The heater tool would simply provide lots of heat for those reactions that need it (for example hydrogen doesn't react with oxygen at room temperature.) The cooler would condense anything to a cooler state on contact. Steam would condense into water and it might even freeze. The input types are an idea at the moment just like the cooler. They would just act as a place where pixels are spawned for use in reactions.

On the left, you can see what happens when you super heat wood so that it reacts with the oxygen in the air to form carbon dioxide and smoke. Understand that not all the elements are real. Oil is not an element and neither are wood, leaves, sand and air for that matter.

At the moment, I'm trying to advance the game play from a tutorial-like form of play to the user owning several factories which can be switched to by pressing the arrow keys or something similar. In each factory, users will hope to achieve a factory set-up where inputs give the reactants, the reactants react to produce more valuable sand types and then they fall out of the bottom (or possibly float out of the top) of the window. Each factory will eventually have a indication of profit per hour or minute. When the player closes the program and plays the game later, the profit will be extrapolated over time so that they earn without having to play the game. All they have to do is to make sure they always have enough money to supply the factories.

So here it is, my next game creation adventure. I hope you enjoyed this post, be sure to check back later for more. At the moment, the game is only available for Mac OS X and can be found at my website

Thanks for reading!

No comments:

Post a Comment