Photography Ideas Music Utils Games Mr. Dictionary   
 
HyperCalm Snowdon Dr. Kain Flesh Eaters of the Undead Blast Arena Series Particle Spring Experiments Hangman Deluxe Lemmings DS    
 
    
Blast Arena Advance

Blast Arena Advance Title
Blast Arena Advance Title
Blast Arena Advance Options
Blast Arena Advance Options
Blast Arena Advance Ingame
Blast Arena Advance Ingame
Blast Arena Advance Hiscores
Blast Arena Advance Hiscores
Blast Arena Advance Name Entry
Blast Arena Advance Name Entry
Blast Arena Advance Credits Game
Blast Arena Advance Credits Game
Tools:
Eden Kirin's ConTEXT using DevKitARM r11 linked against Apex Audio System.

Sfx made in Propellerhead's Reason 3, mastered and downsampled in GoldWave Inc.'s GoldWave and magicked by Conv2AAS. Special guest appearance by ModPlug Tracker for some MOD alterations.

Graphics mostly drawn and exported by Cearn's amazing Usenti, backed up by the crack team of JASC's Paint Shop Pro 4, Macromedia's Flash 5 and Adobe's Photoshop 8.

References:
Blast Arena, baby!
And all those hours spent staring at the GBA in wonder.

Insane amounts of kudos to Cearn's TONC for pretty much all I know.

Free drinks for:
Olof Gustaffson for the Ingame music, Risto Vuori for the Title music and Mark Knight for the Credits music.

Also, This is exceptionally relevant.

Blast Arena Advance
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.

Backstory
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)

File Info:
Blast Arena Advance
Download Blast Arena Advance
Download Blast Arena Advance

File size: 1,121KB
To play Blast Arena Advance, you'll need:
Visual Boy Advance, a beautifully accurate Game Boy Advance emulator.
Visual Boy Advance Homepage
How to Play
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.

How do I...
Just turn the GBA off and on. ;)

Did you win, man?
Nope! Believe it or not, I lost to a version of Sudoku for the GamePark 32. Official comment from me: "Darn."

Why Blast Arena? (Again?)
Blast Arena is a beautifully simple concept, born for the GBA. Click here for a more info about Blast Arena.

Now what? (Again!)
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?

Website Design and Content ©2002-2007 Mathew Carr