Saturday, 8 October 2016

Let The Invasion Commence [Part 10]

1st October - 8th October

The week was really quiet on the Let's Invade, project. Apart from the weekend, where a lot of activity has been made in this game. I was pondering for some handy information on generating random bullet firing for the aliens. Well, it turned out very bad last week, where I really got stuck. This week however was a completely different kettle of fish ... for better it was too :)

I was thinking in my head that the way I did the alien bullet random position subroutine shouldn't be based on wrapping in memory the low and hi-bytes of the alien colour, position, and sprite X position. Instead, it would have been better to generate a 256 byte table of values ranging from 1 to 25. So I generated a simple BASIC listing, to place a series of random tables in memory $1000-$1100. Then saved the table and then I extracted the random generated table file to the KickAssembler project folder. Next I created a command to open C64 the file (RandTable.PRG) for assembling.

The file imported into the source okay, however I needed to generate some more code, to set a looping value of 1 to 25. So a couple of subroutines were called in. One for moving to the NEXT value read from the random pointers (RandTable.PRG). Then store to the value of the actual pointer. Then a subroutine that calls the fetch table and check for which alien the bullet should be placed on. I also created a check in which commands an alien to not drop a bullet, if it is dead. I had a better result, but for some strange reason, the bullets appeared from the upper border. I played around with the subroutine, to work out what was causing this problem. Then set up a boundary for the bullet. Basically if the bullet tries to leave the top border and enter the screen, zero position the X + Y value of it. That helped me solve the problem.

Another small bug occurred in the game. After finishing playing the first game. I tested the pause/quit function to ensure the game works as it should. Unfortunately the game didn't quit, but made a CPU JAM in vice (A crash). So I did a little bug fix to sort out the problem. The game then seems to have been working okay. It looks as if now, the game could be finished. But I'll see what the testers find, that will cause problems to the game.

While I'm was waiting for a result. I have been composing some loading music for the game's tape loader system (Thunderload). Since the theme of the game is a 'Trance' based theme. The loading music ended up with pumping speed. The drums however didn't use the filtered kick and snare. Instead I set a different waveform to use a filter. The result turned out quite nicely. I have been working on making a tape master for the game. I am hoping that the result will turn out pretty good at the end. There was a slight error with the tape mastering, where I placed the loading text in the wrong place, but everything else worked quite nicely. That bug can easily be fixed no problem. :)

I'm not ready to release the game just yet. Hopefully SOON!

No comments:

Post a Comment