Smiler in Arrowe Land (Version 1.1)

------ -- ------ ----



By Digital Prawn (originally for CSSCGC 2010)



Platform: ZX Spectrum 48K



Instructions

------------



Use q,a,o,p keys to move Smiler around 12 levels in Arrowe Land.

The goal is to get to your green-coloured house. Red houses block your

path. You may only move onto an arrow indicated by its direction,

although you may move off them in any direction, provided you are not

otherwise obstructed.



Moving onto an arrow cause all arrows on the level to rotate clockwise

by a quarter turn.



Use the 'r' key to restart a level if stuck.



There is no time limit.



Complete all ten (now twelve) levels to win the game!



Developer notes

---------------

I wrote this title to familiarise myself with Z88DK. It's my first ever

program written using it. Keyboard response is a bit sluggish, and I've

no doubt the difficulty level of some of the screens could be tightened

up a bit more, given more time.



The game is called "Smiler in *Arrowe* Land", because Arrowe (with an 'e')

is an obscure former township near where I live, which now has a park named

after it.



Small-C source code and Makefile included. Entire game written using vi and

nedit editors under Ubuntu Linux. Compiled using the default version of

Z88DK installed with apt-get (not the very latest version). Playtested

using SPIN under Windows.



Thanks to AY Chip for releasing his source to "baron - aces high" which

motivated me to finally install Z88DK!



In my version of Z88DK, I had to use the byte sequence "3,hh,ll" not 

"3,ll,hh" (as stated in the Z88DK wiki) in order to set the UDG address.



Although version 1.0 was submitted to the CGC, this later version wasn't.



The difficulty level of this game is generally regarded as easy.



For v1.1 I allowed myself the luxury of using the Gedit text editor!



Improvements in version 1.1

---------------------------

Fixed problem with in-game sound effects turning the border white, so the game 

now has a black border as originally intended. I learnt that you just need to

update the system variable BORDCR with the (8 times the) current border colour

when using the sound routines in sound.h.



Complete re-timing of the main game loop allowing the Smiler sprite to appear

 more visible, particularly when on the upper row of the map. 



Game sped up slightly due to the fact that the perimeter houses are now only

drawn once per level rather than every iteration of the main game loop.

It could be sped up even more, but doing so makes Smiler more tricky to control,

so there's now a short delay in there to fix the speed at a reasonable level.



Levels 2,3,6 & 10 have been modified to make them (very slightly) more challenging.



Added 2 bonus levels making a total of 12.



DP - 18/02/10

