crj wrote:Back in the day, one of my school friends discovered the hard way that the score wraps at a million...
That's easy to see just by disassembling...
I think a score of a bit more than 1M, perhaps 1.2M, is about the maximum possible. The game gets faster and faster in case of the landers and mutants which limits what you can do. It's a bit different with shoot speed and the speed of the baiters for various reasons that I could explain, but another time perhaps. The game increases the sprite update number (= updates of sprites per update of your ship) each wave, and this means the game gets really sluggish at very high waves. I applied the following patch to Planetoid's PLANET2 file:
*RENAME PLANET2 O.PLANET2
then apply the following patch, after saving it as "p04" (I omitted line numbers)
Code: Select all
REM Planetoid wave patch for testing
IF PAGE<&4000 PAGE=&4000:CHAIN"p04"
BEQ P%+9 \ lp_quit
JSR &23A6 \ next wave ?&8E times extra compared to normal. so make it 49 to start at wave 50.
LDA #&50 \ 50 lives and smart bombs, to have enough to experience for a while how fast the game is.
*SAVE PLANET2 1100+2300
I use JSR &23A6 repeatedly to make sure it would not be an issue if I overlooked anything in my analysis from 1996 (I could have updated all speed variables directly, but I wasn't sure about a few things). This means the game flickers a while at the start, while it goes through each 'next wave' routine that also updates the screen (except score), so just wait a bit and then you can play...
I put the extra value to be added to the starting wave number in ?&8E
So for example:
Then press BREAK and put a different value in ?&8E and CHAIN"PLANET" again, to experiment.
The game is really sluggish with multiple sprites alive, and landers and mutants are insanely fast. You can barely move your ship, it's so slow even at already wave 70... At waves of scores of 800k+ (say wave 45+) this is already a noticeable issue... I tried also ?&8E=140 and 170 as if those 3.2M and 2.8M high scores from Acorn user are real, then it would mean getting to wave 190 or so. Note that the game will only display and store wave numbers in 2 digits so wave 171 is shown as 71, but the sprite update number is updated per wave and is not BCD, so that can go up to 255...
At high waves (say 70 and up) you can see the ship's white colour slowly cycling between red-white when the ship is hit, from the sprite updates taking up so much CPU time.
Clearly the 2,896,500 and 3,186,450 scores as printed in Acorn user are bogus (as I wrote already many years ago, I think early 2000s, in an email to Dave M, that I found when looking for emails about the topic of high scores). My theory: Possibly the 2,896,500 score was a misprint, possibly the real score was 896,500, and AU mistakenly added the 2. Then the other guy who had scored 653k not long before that, tried it for a few months, felt that that 2.89M score was impossible and either just made up a score or possibly used the Electron version (which is quite different, I presume much slower) on an Electron (or perhaps on a BBC it would also be possible to score 3.18M using the Electron version of Planetoid) instead of, of course, the BBC version on a BBC.