Roland Goes Rescuing
Roland Goes Rescuing is a 20-level action game written in BASIC by Zoe Robinson. The game was written in a couple of hours over the 2019 Christmas holiday, partly as a coding challenge and partly to pass some time. It uses the CPC's ability to overlay characters on top of one-another in order to emulate sprites in BASIC.
The objective of the game is to recover the Amstrad CPC 464s that have been stolen by a bunch of Goblins who were masquerading as Santa's Elves. You play as Roland and you must collect all four CPCs on each of the 20 levels, without colliding with the Goblins. If you are successful, Roland can have a rest.
The game supports joystick and keyboard controls and features redefineable keys.
The game is coded in BASIC using a simple game loop that checks for specific keypresses and executes one of a limited number of results based on the keypress detected. The most notable part of the game code is the use of strings to store the sprite data as a series of CHR$ commands. These commands are recognised by the CPC as firmware commands to change the location of the cursor, disable automatic overwriting of whatever is on the screen, change the pen colour and other useful tools. When strung together, the "special character" commands allow multicoloured symbols to be created by overlaying characters on top of one-another, which is how the game generates its sprites..