Projects, portfolio, and personal work of Joe Pelz

Amoeba Platformer

Wash your hands after use

It was near the end of my first semester at BCIT. In my Java class we had done a lot of simple console programs. Calculate the factorial. Tally a receipt. Print a string in reverse. We did a little bit of javax.swing to show how many times a button had been clicked or program a smiley face with ovals and arcs. It was pretty bland in terms of what I could show people. Then everything changed.

Our teacher showed us an example program that popped up a black window, and when he pressed one of the arrow keys, the window displayed an arrow picture pointing the direction of the key he pressed. Graphics! Interaction! Finally! I immediately made a nibbles clone.

Download the nibbles jar here.

Shortly after that I hatched the idea to make a platformer. A little something where your little character could jump around in a world that could continue to evolve as I learned more about programming. So was born my little baby amoeba.


I realize now that there are many ways it could have been done better. I didn’t understand how images were done in Java Swing, I don’t think swing was the right choice for making a real-time game engine in, and my object oriented design was way off. Everything was heavily coupled.

I was proud of it though. I had built basic jumping physics, collisions, animation, and interactive lights.

Download the jar here

Code is available on GitHub.