The comp.sys.sinclair Crap Games Competition 2021 - 25th edition!

 

COMPETITION ENTRY #60: AVOID TREES

Author:  Giannis "Firelord" Model:  16K Spectrum Format:    .TAP
Submission date:  17 December 2021 Documentation:  none Tested on:  Spectaculator 8.0

Download it here

"How much time we have until the competition is over?"
- Giannis, 17 December 2021, 7:47 pm
"I had some spare time and I made another sequel for the sequel of Find Santa!"
- Giannis, 17 December 2021, 8:30 pm

It wasn't supposed to end this way. There I was, thinking that Dragon Tale was going to stand as an incredible final entry for the year. But, of course, Enrique Pimpinela Santos had other ideas and decided that what we really needed was a ULAplus modification of Fishing Simulator, designed to tick a box at the very last minute. And I shouldn't complain, I've done the same thing before; how else do you explain why I'd make a game specifically for a +D disc? But I thought, why not, the competition ends by breaking a new barrier. I've spent most of today - for it is the final evening of the final day as I write this - preparing the Awards pages (there'll be more than one when they're released...), and the 59th minute of the 11th hour, I get this!

Given the name, I'd expected a lazy, lazy hack of Avoid Santa. Instead, I was given... not that. Giannis admitted it had been adapted from "Bubble Run, a BASIC listing from the WOS forums"; five minutes' ceaseless searching turned up nothing but he then showed me it was Daveysludge's attempt at a "write a game in a maximum of 140 characters" thread that's formed the actual gameplay of Avoid Trees. The only "Bubble Run" I could find, anywhere, is Harry S. Price's hack of Bubble Trouble - which, amazingly, started as a type-in in Your Sinclair. Whether this Firesludge collaboration would have been acceptable by any magazines after the first Spectrum listings were printed in 1982 is anyone's guess - but there were countless (slightly) more polished variations on the same "avoid junk in your path" theme throughout 1983, whether it's on the ski slopes or in outer space. And it's not as if we haven't had similar entries in this competition already (even if those three were for the ZX81 and not written in BASIC).

Acceptable in the pages of ZX Computing or not, here's the overview: Santa found us in Avoid Santa, because it was inevitable. Apparently, we were skiing at the time and he has decided to retaliate by throwing Christmas trees in our way, and every good skier - and especially every bad skier - knows that the worst thing that can happen, short of skiing off a cliff and being killed, is skiing headlong into one of those perfectly-formed spruce trees. Cartoons like to show the bad skier skiing right over the top of it with the resultant pain being oh so very funny.

And so we go skiing. The Christmas trees are the up-arrow characters (SYMBOL SHIFT+H) which would be a circumflex anywhere else, and the skier is made of an O and two pipe characters (EXTEND MODE, SYMBOL SHIFT+S if you don't know what a pipe is - it's used in Unix to send the output of one command into another but is only present on the Spectrum to fill up the ASCII character set). The random colours for the "trees" have been added to Daveysludge's tiny listing, as has the SCREEN$ that checks for a hit. Unfortunately, there's a bizarre problem with the code. The coordinates that SCREEN$ checks aren't wrong, but a hit is recorded if a tree passes to the immediate left of the skier (from our point of view). But B is initially defined as 0, and then PRINT AT 0,B-1 means the initial column position is -1. So the keys 1 and 0 for the controls are moving the skier through negative column numbers! Keep moving left and the skier will bounce off the wall into positive column numbers, the hit will be recorded in the right place, but the controls will be reversed. Ski too far to the right and it'll stop with B Integer off piste... I mean, B Integer out of range.

It doesn't take a genius to work out that this was flung at me with the sole purpose of getting this competition up to a nice, rounded 60 entries - again! - and for that, I suppose I should be grateful. There's no end to this game except with the error message, it's had little to no error checking, probably only one or two RUNs to make sure it doesn't keel over and die in the first two seconds, and there's no way I can legitimately score it as a two-and-two - it's too rough round the edges for that. And while I think it's just above a one-mask non-game by the barest of all margins, I can at least do something new at this absurdly late stage - introduce the two-and-one! It's been thrown together in under an hour, it works - just about - and Giannis didn't write it all himself so only one Rick is awarded for effort! I'll not include it in the Green Challenge - I was far too lenient with some of those remakes - but neither will I stab it mercilessly with a Goolu spear.

I think we're finally done.

*email alert noise*

...it can't be...

EFFORT:      ATTAINMENT:      DEMERITS:   none