COMPETITION ENTRY #35: ADRIEN'S BUBBLE BURSTER
Never before in the history of the CSSCGC has the age gap between the youngest and oldest entrants been so wide. John Connolly, last year's host who sent me Genesis 1:28 earlier this year, has just completed 19 laps around the sun - and at the other end of the scale, Steve Poole, the most prolific author of Crap Games for the QL in the competition's entire history, is about to rack up 74 complete orbits. John is about the right age to be Steve's grandson...
So it should come as little surprise that Steve does have a grandson, though I think he's still in single digits - called Adrien. That's with an E, not an A, because Steve lives on the other side of the Channel and has been raising his family there since before I'd even been born; Adrien is the French-speaking progeny of that family. I'm telling you all this because this entry is the tool by which Steve is attempting to pass the torch of basic - and, also, BASIC - programming onto the generation that has never known smartphones not to exist.
There are two listings - the original Adriens_bas for the SMSQ/E systems that Steve prefers, and Adriens2_bas which has been adapted to be able to run on a black-box QL, albeit at the speed of a heavily sedated snail. If you actually want to play the game properly, fire up QPC2 and use the SMSQ/E version. The game itself is about as bare-bones as a dead goat after three minutes in a tank of piranhas. LRUN it and find out - your task is merely to move the crosshair around the red window with the arrow keys, and press SPACE to pop the bubble. You have 19 bubbles to deal with, and the green digits in the lower window show how long you took to do so; your goal is to minimise the time taken.
To stop here would be to miss the point entirely, though.
As with Steve's previous two entries, education is the goal, rather than the 90 seconds or so of entertainment it provides. The first clue that this is the case lies in the white window, which lists all the starting coordinates and radii of the bubbles; the given radius of any specific bubble will reduce to .5 as soon as it is burst, and won't disappear entirely from the game window. All this is done in the name of showing that something has happened, and making it visibly obvious to Adrien... or whoever else might be watching and learning.
LIST the program - or just look at the text file - and you'll see that as well as the procedures being given clear names in French, so that they're easier for Adrien to understand, there are a ton of named variables to illustrate the functions and commands. Hence INK 2 becomes INK rouge, and the values for the KEYROW function - the QL's equally-unobvious counterpart to the Spectrum's IN - have been defined as haut, bas, gauche, droite, and espace.
Apparently, it all worked; it was written so that Adrien would not just understand how to program a game, albeit one as stripped-back as this, but also to experiment with the commands and windows, and he had it cracked in half an hour. Legitimately, I can now say "this is so easy that a small child can do it", so what's your excuse?. That's right, I'm talking to you, the person reading this review who steadfastly refuses to move out of the Spectrum comfort zone. If you can't look through the listing of this program and conclude that, actually, QL programming isn't all that hard after all, then I wonder how you manage to wash, clothe and feed yourself and wipe your own arse. Even the change of language isn't an excuse - get a French-to-English dictionary if you really need it!
Realistically, I have to consider this a standard two-and-two, just like Invaders was - and that's only for the SMSQ/E version, which is what Steve originally submitted. The black-box version, unplayably slow as it is, would only have warranted one solitary voodoo-mask had it been the only way to play; I would say it's provided mainly for those who can't (or won't) get to grips with QPC2, or just have to have the screen in the correct aspect ratio (which SMSQ/E's S*BASIC window doesn't), but there's really no need to resort to it as I've provided extensive loading instructions for QPC2. So again, what's your excuse?
EDIT (16 August 2021): posted on the QL Forum a day after the review, here's some evidence of its educational value, in that "Tinyfpga" has used it to teach himself more about window resizing in SMSQ/E. It's a start, that's for sure!