3D Block Dude

By: Ryan B. Badilla

For my final project for CSC471: Introduction to Computer Graphics, I decided to design a 3D version of the popular Block Dude game found in many TI Graphing Calculators.

In high school, I spent most of my time playing calculator games during my classes. Truthfully, my TI-83+ was treated more as a portable gaming device than a legitimate calculator. However, despite intensely mashing at buttons rather than paying attention to lecture, I was barely noticed by my teachers, which helped me advance my TI game collection. I had tons of games on my TI, but I probably wasted most of my high school years trying to beat Block Dude.

The original Block Dude is a simple puzzle game where the player controls a small character named "Block Dude." Each level has a set amount of blocks and the player has to pick up and move these blocks around in order to reach the exit and progress through the level.

Much like the original version, my implementation of Block Dude has a fixed camera view; however, the player can now zoom out to view the entire stage so that he/she can plan accordingly. However, in order to maintain the spirit of Block Dude, the player will be unable to control "Block Dude" when the camera is fully zoomed out so that he/she cannot abuse full view mode.

Block Dude download

Windows blockdude.zip

Linux blockdude.tar.gz

Controls:
Space Bar - pick up a crate.
Left Arrow - turn/move left.
Right Arrow - turn/move right.
Up Arrow - climb the box in front of the character.
Down Arrow - put down a picked up crate in front of the character.
'z' - zoom in/out of stage
NOTE: You will be unable to move your character when fully zoomed out.
'r' - reset the current level.
'p' - go back to stage 1.


Instructions: The goal is to help Block Dude reach the door within the level using the crates.
-Block Dude can only climb over single squared walls/crates, so the only way to climb over tall walls is to stack moveable crates to make a staircase.
-Block Dude has to be facing a crate in order for him to grab it, and when he drops a crate, it will fall directly in front of him, if possible.
-If Block Dude is facing a wall that is two or more squares high, then Block Dude will not be able to drop the crate. If Block Dude attempts to drop a crate while standing in front a single square wall/crate however, then the crate will be placed on top of it.
-Crates dropped from a height will fall the ground.
-Block Dude can pass through empty spaces that are one square high. However, if Block Dude is carrying a crate, the smallest space he'll able to go through will be two squares high.



Known Bugs and Problems
- The zoom command adjusts the camera incorrectly at times. However, it often fixes itself after a few more command calls.
- After reach certain doors, the next level does not register right away. You may need to neither wait a while or attempt to reenter the door.
Initial Plans
- Even though a fixed camera stays true to the TI Block Dude, I wanted the ability to rotate the camera around and alternate between first person and third person while still providing the fixed zoom feature. However, my initial design for camera was entirely buggy, and with small amount of time I had before the deadline, it was best for me to just forget the ideas.