Developed on: Apple II+
Developed for: Apple II+ in DOS 3.3
Language: Applesoft BASIC
Graphics: Lo-Res 40×40
This is the second game I ever wrote and is the first game that I wrote on my family’s brand new Apple II. The game died a quick death a couple days after I wrote it because it seemed like it was going to take forever to finish, thanks to my complete ignorance of 90% of the Applesoft BASIC language.
Why the title “Crazy Climber”? Because I was pretty hardcore addicted to the game of the same name in the arcade (see pics below).
How novel having two joysticks to control your little man up the side of the building, all the while the windows are closing, enemies are dropping flower pots on your head, birds dropping shit… you get the picture. This is what I set out to duplicate so I didn’t have to waste all my quarters at the arcade — I could have my favorite game right at home!
I started writing this game in low resolution graphics because it was colorful and easy to program. The first chunk of code in the game called a subroutine which drew a blue sky, green grass, a building and all the windows in black.
I couldn’t wait to make the little man move around on the screen! The next chunk of code drew the man in the bottom-right window on the screen and waited for a keypress. After the keypress, I checked which key the player typed and branched off to the appropriate routine for whichever window the man should move onto.
In whichever routine was called (based on the keypress), the “screen draw” subroutine was invoked to redraw the entire building again and then the man was drawn hardcoded onto the appropriate window. This way of programming the game was going to take forever because every window was going to need its own function that (1) drew the screen, (2) drew the man at that particular location on the building, (3) got a keypress and (4) branched to the appropriate function based on the chosen direction.
The big problem was that I didn’t know what a VARIABLE was, so I didn’t know that I could have set up “X=30 : Y=6″ and moved the man’s coordinates based on a legal move. I hardcoded every single movement into a seperate function! Um….uh…
I finally deleted the program because it seemed like it was going to take forever to do every single window for the entire game. The day after I deleted it, I found out from my friend Robert just what a variable was. Oh well, time to program my next game then!