|
HomebrewSega Master System / Mark III / Game Gear |
Home - Forums - Games - Scans - Maps - Cheats - Credits |
Game for Master System
Version | Date | By | Download |
---|---|---|---|
1.00 | 27 Mar 2007 | Aypok, PlayGeneration | DiggerBall-SMS-1.00.zip (144KB) (includes source) |
Competition EntryThis was a competition entry in 2007 |
## ## # # # Digger Ball - (c) Aypok 2007 # ### ### ##############################################################################
There will, at some point, be a nice web-based version of this document - complete with images. It won't be up by the time of the competition, but it should exist within a week of its deadline. The online document supercedes this one.
http://www.aypok.co.uk/digger_ball/
"Digger Ball" is a game for the Sega Master System, based on the code for "Digger Chan" - a game I made for last year's coding competition. Despite this, most of the code in this game is new - most of the code remaining from "Digger Chan" is just the structure of the the game and stuff that draws the graphics. Both games are open source, so check for yourselves. :)
It is basically a "Breakout" clone - but with a "Digger Chan" theme. :)
This game was created by Aypok and PlayGeneration for "SMS Power!"'s 2007 coding competition. As well as the game binaries and this documentation, you will find the full source code and data-files for assembling this game. The code is released under the GNU/GPL v2 (see the file titled "licence.txt").
I originally started work on this year's entry last September, but didn't get much further than a basic engine. I should point out that that was a completely different game to this. :) With the deadline for the competition getting closer and closer, I decided to make an entry - but with a different game.
I had an idea for a 'mini-game' to place within "Digger Chan", between certain levels - and since it used a lot of "Digger Chan"'s code (or so I thought), it'd be nice and quick to write.
Over a few evenings I hacked together a very rough version of the game and sent a copy to PlayGeneration. It was crappy, but PlayGeneration saw promise in it and started coming up with cool ideas for the game. Over the following weeks we worked together to create what you have before you.
This game has been tested on Meka 0.72 and the latest SVN build, Osmose and real SMS consoles! It works on them all - with one exception: see 'Why two ROMs?' for details.
Enjoy - and don't forget to vote!
Aypok...
Because I suck at coding? There's a bug in the code that only appears on real hardware - emulators don't have a problem with it.
The only difference between them is that 'digger_ball.sms' has explosions when blocks get destroyed and 'digger_ball-no_explosions.sms' doesn't.
If you want to play the game on real hardware, try the 'no_explosions' version.
To be clear: 'digger_ball.sms' is the entry for the competition - the other ROM is soley for those who wish to run it on a real SMS.
Digger chan, having made it down to the milk pipes that traverse the globe, often finds caverns with loose rocks hanging from the ceiling. They are way too unsafe for "M.O.O. Milk Co."'s other pipe engineers to work in, so you have to clear them.
The only problem is that there are no ladders long enough. All you have available to remove these dangers is your trusty spade and a purpose-built rock-busting ball. Therefore, you have to destroy the precariously dangling rocks by using your spade to propel the ball into them!
Remember that the engineers are very busy people, so if you fail three time you will be fired!
The object of this game is to destroy all the coloured blocks that appear on screen by 'batting' your ball into them. It's very simple. :) Just don't let your ball it the floor!
To bat the ball with your spade, all you need to do is let the ball hit you. If you connect with the ball dead-on, the ball will be deflected - that is; it will be bounced back up, but its horizontal direction will remain unchanged. If you want the horizontal direction to be reversed, you must let the ball hit you further down. But not too far down, or you'll miss it!
There are three terrains in which you must work; Arctic, City and Desert. They each have their own distinctive colour-scheme: Arctic has lots of 'cold' colours - blues, purples, etc. The City terrain has 'bold' colours - red, blue, green and yellow. The Desert has 'hot' colours - red, orange and yellow.
Each block you destroy will give you one point. Each block of TNT you detonate will give you ten points, plus the points for all the blocks it destroys in the explosions. TNT will not detonate any surrounding TNT - there are no chain reactions.
There are twenty levels in the game.
You get an extra try for every two levels you complete.
When you press Start on the title screen, you will be given an options menu. From here, you can select the difficulty of the game - or view the credits page.
There are eight power-ups in the game:
The file called "generic_stuff.inc" is pretty much the one used in Maxim's tutorials on coding for the SMS - I have used it, with changes, in this game.
Some of the graphics, with the exception of the intro screens, the player, and the font, were written by hand - not drawn in a paint program and converted... Several of the tiles were prototyped (designed) in KolourPaint and were then converted by hand to code. The tiles/tile-map for the intro screens were created with an application I wrote and creatively dubbed "TilemapEditor". The title screen was converted using Maxim's "BMP2Tile" application, as was the player's sprite.
All the power-up images were converted from images by hand... Not fun. :)
The code is released under the GNU/GPL v2, which means you can edit, change, etc, the code for this game and redistribute it - but you MUST in turn make your code open and free for everyone to use. For more details on the GPL, please see the file "licence.txt". If you do use the code in some way, I'd love to hear about it. :)
The code is, for the most part, heavily commented - so it should be easy to follow and understand. Having said that, my coding style is sometimes viewed as "odd" - sometimes it is down-right badly done. I don't claim that this code is perfect, or even great - but it does work. Usually. :)
While there are no cheats built into this game, you can still cheat if you have something to alter the contents of RAM whilst the game is running - Meka allows you to do this. I will list a few useful RAM locations here with what they do, so you can cheat your way through the game - or just get to see it all without having to play through it. :)
A full list of RAM locations and what they do can be found at the top of the main code file.
Aypok can be contacted at aypok )AT( aypok )D0t( co }doT{ uk, via his website at http://www.aypok.co.uk/ or via IRC on the Freenode network (irc.freenode.org).