From The Dragon Archive
Author Comments by Mark Parry
It took me two years to create, and I think I made me less than £200 in royalties.
- The reason it was "Indoor Football", pretty obvious really - I didn't want to handle corners and throw ins.
- Was (very roughly) based on International Soccer for the Commodore 64
- I had planned to put in a football manager more and/or league, but as it had already taken two years this was dropped
- From what I remember, there was about 6K free.
- The graphics for the players are modified from Fire Force. Dave Gibbons (Fire Force author) was a good friend - we went to the same school. There are only two frames of animation when the players are running up and down the pitch.
- It was developed using Flex - if you hold all the keys for "FLEX" it crashes, as it attempts to return to Flex.
- I wrote the text editor, as the one that came with Flex was very slow - it used the graphics mode, so you got more text on screen, but I did a text mode editor that matched AllDream's (with the same commands as well).
- I also wrote the graphics tool that was used to create the pitch - it had basics like drawing lines.
- The pitch was RLE (run length encoded) - so, for each column it would count the number of empty pixels, and then the number of non-empty pixels. I think there was an equivalent of a batch file to convert from the graphics file to the pitch data.
- The pitch cheering when you score was basically playing white noise (random noise) on the high speed interrupt (is that what it was called?).
- The "bounce" height has four values, generated using Dragon 32's sine function.
- The player AI, such as it was, basically tried to always move forwards in one of three directions (forward left, forward, forward right), and then at some random point it would try to kick (also for a random strength, between 1-4?)
- Playing randomly generated numbers as audio is a very good way to see if you have a good random number generator. I made loads of modifications to the routine, but you would still hear patterns / repeats (all the modifications did was tend to offset the values, instead of make them more random). In the end, I had a 256 bytes table (generated by Dragon's Basic random number generator), that had two indexes into it (the returned value would be the two values added together). I forget how the indexes were updated, but both would have changed each time a number was generated. This meant it would repeat after 64K numbers, but seemed to give pretty good results and was very fast.
- I thought at the time the crowd noise was pretty good, but when I played on an emulator it really seemed quite rubbish - I hope it was the emulator changing it, and not nostalgia clouding my memory.
- None of the Dragon's ROM routines were used, everything was done in game. The Dragon's Joystick reading routine, for example, was quite slow, so I did a quicker (but less precise) version of it. This had the advantage it would work on the CoCo. I think it detects if it is a Dragon / CoCo, and changes the way it reads the keyboard (although this was never tested by me)
- I think it was a pretty good game, but it took far too long for me to finish, and it came out far too late - as the Dragon was really dying out.