My Robot GBA

From GameBrew
My Robot
Myrobot02.png
General
AuthorNick Sabalausky (Nitrode/Abscissa)
TypePlatform
Version1.0
LicenseMixed
Last Updated2004/07/04
Links
Download
Website
Source

My Robot is a Game & Watch style game.

It was entered into the PDRoms Coding Competition #2.5.

User guide

Backstory

You are a little robot that lives on a space station. A few weeks ago, the space station had learned about an approaching fleet of hostile aliens, so a Super Attak Robot x3000 was ordered (It's a slightly underpowered model, but the space station couldn't afford the industry-standard Attak Robot Mania xt4070 on their tiny research grant budget).

The problem is, one of interns made a slight miscalculation on the hostile alien's arriving date. Luckily, the Attak Robot arrived just barely in the nick of time. No later than the moment you opened the shipping box, the hostile aliens arrived and began their attack!

Normally the Attak Robot has sophisticated enough AI that it can run left and right and decide when to shoot automatically. Unfortunately, there's not enough time to activate all of the systems on the Super Attak Robot x3000 (It is the budget model after all, so it takes a while to boot). You'll have to control it manually.

Along the south wall of the station is a state-of-the-art button, lever, and pulley system that controls the cargo train the Attack Robot is sitting on - moving it left and right. You also have a radio-frequency controller that sends a signal telling the Attack Robot to shoot. The batteries in the controller only last for one signal (The controller is not a budget model, it's just a REALLY strong signal). So you will have to get more batteries at the Massively-Oversized Battery Dispensing Unit (tm) in the northern corner of the station every chance you get.

Gameplay

The game screen is divided into two halves. The left half has the little robot, which you control, the battery dispenser (at the top), and the buttons that move the big robot (at the bottom). The right half of the screen has the big robot (which you can only control indirectly), and the enemy aliens.

The enemies come down from the top of the right half of the screen. If an enemy reaches the dotted line, you lose a try (you start with three tries).

The small robot can move around in a limited area. There are three rows (Upper, Middle and Bottom) that he can be in. If he is in the bottom row (with the "mover" control buttons), then he can push the buttons left and right to move the big robot left and right.

If the small robot is in either of the top two rows, he will be holding his remote control, and you can make the big robot shoot. Each time you make the big robot shoot, you use up one battery. You start with two batteries, but can gain up to 8 by pushing the button on the right side of the Upper row, and catching the batteries as they roll down. You must be in the upper row to catch a battery.

Tip: Spend as much time as you can pressing the battery release button and catching batteries, and only go down to the bottom to move the big robot when you need to. Remember, you need to catch at least one battery for every enemy that appears.

Cheats

The included "myrobot.clt" file is a cheat code file for VisualBoy Advance. It contains the following options:

  • B Gives Batteries - Press "B" to gain another battery.
  • No Batteries Needed - Make Big Robot shoot even with no batteries.
  • Shoot From Anywhere - Allows you to shoot even when in bottom row.
  • Robot Always Follows - Big Robot moves Left/Right even if you're not in the bottom row.
  • Invincible - Never lose a try even when enemies reach bottom of screen.
  • Unlimited Misses - Can lose unlimited tries without ever getting a Game Over.
  • Catch Bateries From Back - Catch falling batteries even you are not in the top row.
  • Boot Into Green Mode - Game defaults to Green-On-Black instead of Black-On-White.
  • Skip Boot Sequence - Skips the "LCD Boot Sequence"
  • No Game Music - Don't play the Game Start and Game Over jingles.
  • No Intro Music - Mutes the music in the Intro.
  • Hard Mode - Lots of enemies!
  • Easy Mode - Only a few enemies.
  • Two Batteries Per Catch - Catching a battery gives you two batteries instead of one.
  • Full Batteries - Start each try with 8 batteries instead of 2.

Note If you try to turn off a cheat that you have turned on, the cheat will not deactivate until you reset either manually or with L+R.

Controls

D-Pad - Moves the little robot on the left side of the screen.

A - Makes the big robot on the right shoot

B - Unused (except with a cheat)

Start - Pause, Unpause, Skip Intro

Select - Switch between Black-on-White and Green-on-Black color schemes.

L+R - Goes into LCD Test screen and then resets.

Screenshots

myrobot3.pngmyrobot4.png

Compatibility

This has been tested on the following systems:

VisualBoy Advance v1.7.2 - Runs Flawlessly.

GameBoy Advance Hardware - Certain color combinations in the Intro are difficult to see on the screen, and the mosaic flashes seem to lag a few milliseconds behind the music, but other than that no problem.

GameBoy Player Hardware - Same as GameBoy Advance Hardware, except that there is no problem seeing the screen during the intro, due to using the TV screen.

Mappy VM v0.9d - Major graphical glitches during both the Intro and Gameplay. No Audio. Runs too fast on my 1.2GHz PC (can't find an option to adjust speed, but maybe it's there somewhere). However, it is playable (If you can play it super fast).

Changelog

v1.0

  • Initial Release. Entry for PDRoms.de Competition 2.5. Written in 18 days.

Credits

A short portions of code are from outside sources:

  • Pseudo-Random number generator taken with minor changes from a Pern Project Header. However, The Pern author did not take credit for it.
  • Cosine lookup table taken from Pern Project with minor changes.
  • Interrupt handler skeleton file taken with minor changes from Pern Project. However, the content of the HBlank and Timer0 interrupt handlers (The only interrupts being used) are written entirely by myself.
  • Audio Note Frequency table taken from BeLogic.
  • The Music/Sound code was modeled roughly after BeLogic's code, however none of it is taken directly from BeLogic.
  • ctr0.s is by Jeff Frohwein.

The rest of the code, all the music, sound, and graphics are entirely by Nick Sabalausky.

Tools Used:

  • Microsoft Visual Studio 6.0.
  • DevKitAdvance by Jason Wilkins.
  • GBA Project Appwizard r2.6 by WhatZdat D. Pimp.
  • VCMake 1.3 by Warp/Nicolas Cannasse.
  • Windows Paint (Yes, the built-in one).
  • BeLogic's sound channel demonstrations were a big help in tweaking the sound effects.
  • Two image conversion tools written in C# with Visual Studio .NET 2002 (These two tools require the .NET Runtime).

External links

Advertising: