Blast Arena Advance is a high paced game of abstract shrapnel evasion for the Game Boy Advance.
Controlling a small white square, your objective is to collect as many jittering 'flanges' as possible
while avoiding the shrapnels.
When you get hit by a shrapnel, the game is over.
After my early DarkBASIC and BlitzBASIC projects, I felt I was ready to start learning C. Soon, I'd
gathered a healthy collection of tutorials, examples and FAQ's. I looked over and over what I had amassed
and realised that I still had absolutely
no clue what I was doing.
When I was young, there used
to be a show on t'telly known as Gamesmaster. I'm too young to honestly be able to say I was a fan of it,
or I can really remember any of it, my only part I can recall at all is a contest between two guys
simultaneously playing a weird looking game called Parappa the Rapper. I've never played Parappa since
then, although I've looked for it all over the place. Sometime in 200X when Parappa 2 came out, I rented
it from the local vid shop and was hooked. I guess I've got a knack for these sort of rhythm games...
After I'd returned Parappa 2, I looked on the internet for a shareware alternative. (Surely somebody
must've made one!)
A couple hundred Google searches later, I found no Parappa clones, unfortunately, but I did come across a
different game with a very interesting sounding description...
Tetanus on Drugs™ - Winners don't use drugs; they
just simulate them. Tetanus on Drugs simulates playing a Tetris® clone under the influence of
hallucinogenic drugs. Unlike LSD and other party drugs, TOD won't fry your brain. While you play the game,
the playfield rotates and distorts itself in time with the music.
Although TOD didn't do what I thought it would, it made me realise something: One of the things I've always
wanted to know was how the hell people program for the Game Boy Advance.
Inspired, I looked around the internet for advice. Soon, I'd found a really useful site going by the
moniker of gbadev.org. Browsing through the forum, I found the GBA
Beginners FAQ... the editor of which was none other than the TOD guy himself,
tepples. Skimming down, I found advice to beginner coders not
knowing where to begin:
'Learn the C programming language' - What? No GBA Basic? Aw, jeez!
'try MinGW' - Yay! That sounds cryptic, which means it's gotta work.
'Try making some graphical programs for the PC with the Allegro library' - What's a library when
it's at home?
'Wait a minute...' I thought 'Something called 'Allegro' lets you use graphics from C?'
And that's when it all kinda slid into place. I'd often wondered, being used to variations of BASIC, where
the graphics commands for C where. (Yeah, yeah, C vets, shut it. I didn't know jack about how C worked
back then.)
Grabbing the first IDE I could get my grabby hands on, which turned out to be the hecka-useful
Bloodshed Dev-C++ 4, I remade a whole bunch of BlitzBasic
graphical crapola. Gathering know-how and moxy, I familiarized myself with what Allegro could do, how it did
it, and what part C actually played. Eventually, I finished a couple of minor C projects, which y'all know
as Snowdon and Dr. Kain. After that, I found a method of
making something I've really been confused about: Java Applets. A few Java lessons later, I figured that
Edd's immortal Blast Arena concept would make an excellent Java applet game, so I knuckled down and created
Javarena.
After Dr. Kain, I figured I was ready for some actual GBA experience... I headed back to gbadev and tried to
make sense of all the tutorials and code fragments flying about. Nope, impossible. Trying to find common
denominators among the gbadev material is... pretty difficult. Eventually, and I don't know how I found it,
but I found a tutorial written by Cearn named
TONC. TONC is an
invaluable piece of Game Boy Advance tutorial literature which I recommend 110% to any C vet looking into
GBA software development. (It's techy, C newbies need not apply ;))
TONC is a series of in-depth articles focussing on each aspect of GBA graphical programming, each complete
with examples with source code.
Blast Arena is a relatively simple yet fun concept, so Blast Arena Advance was originally constructed as a
simple test to see if a Blast Arena engine could be created on the Game Boy Advance platform, which it
certainly could. As I learned more and more about GBA C specifics, I added more and more features.
However, I knew (and still know) jack about audio programming for the GBA, so I turned again to the
Internet to see if some kind soul has created something similar to FMOD. It was then I came across the
supremely useful
Apex Audio System for GBA by
Apex Designs, an unquestionably perfect GBA audio library. AAS
slid perfectly into place in my existing code, and I set about drawing gfx and preparing audio for an alpha
release.
Suddenly, the yearly GBAX2005 sprung up out of
nowhere. I couldn't believe my luck, I comfortably finished Blast Arena Advance in time and sent it in.
Speaking of GBAX, this is not exactly the same version with which I entered the competition: This
one fixes an annoying big with the credits screen. Your savegames are no affected in ANY way. If you wish
to reflash your cart, I suggest dumping your saves to your HD, then unflashing-flashing the cart with the
new ROM, and then uploading the new saves to the new ROM. Should work a charm. (Works with my EZF-A 256mb)
Ingame:
Use the directional pad to move the square around the arena.
Hold the A button to move faster.
Hold the B button to move slower.
Press Start to pause/unpause.
On the Name Entry screen:
A button selects stuff.
B button erases the last entered character.
Shoulder buttons change the currently selected character in the name.
Select resets the name to what it was when you entered the screen.
Start is the same as DONE: It accepts any changes and exits.
You can reset the highscore tables by typing your name in as RESET and holding L, R and tapping START.
On the Hiscore screens:
Use L and R, the directional pad or Select to change between the Best Scores and Best Times tables.
B exits.
Just turn the GBA off and on.
;)
Nope! Believe it or not, I lost to a version of Sudoku for the GamePark 32. Official comment from me:
"Darn."
Blast Arena is a beautifully simple concept, born for the GBA. Click here for a more info about
Blast Arena.
The Game Boy Advance is one sophisticated piece of kit, it has to be said. There's a whole load of good
in those little O's! o.O
It wasn't anywhere near as difficult as it should've been to make Blast Arena Advance. The fact that
any old goober can pick up a toolchain and make something of BAA's complexity
(C'mon admit it, it's not complete crap!) in their spare time is just proof of the dedication and skill of
the homebrew community, to which I owe this entire game.
I probably wont be able to resist coming back to the GBA and making another little something for it, simply
because it's cool. What I'd like though is to learn how to do the homebrew mojo thing on another console,
*looks at Dreamcast*.
Seeing that I've been writing the whole site backwards in time from this point, (Phew, I'm finally up to
'the present' in this cursèd thing!) I finally get to accurately tell you folks what I'm up to now! I've
finally gotten around to learning the evil known as OpenGL.
Will there be another Blast Arena equipped with state of the art spatial effects? I don't know.
Let's work through NeHe's OpenGL Tutorials and see what happens, eh?