Sunday, 20 November 2011

Woolly Jumper 16K - Finished :)

19th-20th November 2011


19th November 2011

As predicted Woolly Jumper needed a bit of tidying up and fixing. It wasn't a major problem, but a minor issue. It was related to the front end / get ready, etc. flipping to the next screen, showed visible mess. The mess was mainly to do with sprite positions not being zeroed before all sprites were correctly positioned. So I added a routine in which cleaned this issue up (Like with Sheepoid). As soon as that was fixed, I had one more little thing to fixup, and that was just the screen flipping showing mess for less than a second before starting the game. Well, I found a perfect way to solve that problem. That was to switch off the screen, using $D011 and then allow the IRQ interrupts to switch it back on again, so that you could see no mess during the process. The good thing about it ... It worked.

20th November 2011

Last night, before I went to bed, Shaun replied back to say that my updated version of the game code worked perfectly, but there was just one more thing that he suggested that should be changed. The Vaccinator sprite didn't really suit the game, so he decided that I should replace the Vaccinator with the Cattle Prod, a sprite which he originally removed. As the Cattle Prod was originally used as a deadly object. Now the yellow Cattle prod will give the sheep better fire power (bigger bullets) and the light blue drencher will remove the power ups which the sheep has.

Finally, the 16K version of the game is finished (I hope) and if it is, then the .CRT build file is ready to be sent to HeavyStylus and I can work on enhancing the game even more for the 64K version. I came up with ideas in which is to remix the existing levels, making them slightly longer, so instead of 8 levels we have 16 levels and also extended according to the levels in the game.

There will be NO blog updates for the 64K version, as I am going to work on it as a big surprise. But there are some plans for the enhancements in the game, which are top secret. We will not tell you what they are, but one thing for certain, it will feature a neat loading picture by STE'86, which he specially drawn for the production. :)

Saturday, 19 November 2011

Those darn bugs


13th - 19th November 2011

Well, WJ didn't seem to be quite finished yet, as Shaun spotted a few bugs in the game, in which had to be resolved. After I moved the status panel at the bottom of the screen to somewhere else I ended with the player getting an extra life, instead of the level counter going up. This kept on happening during the level complete phase. So after updating this problem, another problem came, regarding the same status panel. The score didn't work properly. A simple mistake was made, and that was corrected.

The next bug was a major bug, Music. After the end of the level (The rocket) there was a droaning noise, which Shaun could hear, but I couldn't. So I found a way to resolve this problem, simply by creating a new instrument which silences the note and imported the music back into the compiled source. It worked a treat :)

The next bug was a minor one. On level 6, the sheep was walking on top of the snow on the barrel. This looked very odd indeed. I loaded up Arkitec and browsed through the utility to take a look at the value of the characters of the snow on top of the barrel. Then I removed those collision values, so

Shaun came across a major bug, in which the sheep died for no apparent reason, while it was jumping in thin air. The problem occured when the enemy sprites were all offset and still moving when not visible. So I had to program a little routine which compared to the position in which the player was. If the player's Y position was lower than the upper border, no sprite to sprite collision occurs. Otherwise, the poor sheep gets hit by the bad enemies. :)

The next issue was a graphic bug, in which level 2 kept looking quite odd. Well, the start screen. Some parts of the background was missing. Lawks. Not good :(. So I loaded up Arkitek to try and solve this silly problem, thus yesterday (Friday 18th November) I had an email back that the background still needed sorting out. So that I dealt with this small glitch today. I just hope that it is correct.

The final things were a couple of things which Shaun suggested to me to improve the game a bit. First of all, the falling power up / add. score objects could be seen leaving the screen below the status. This was originally intentional to me. Instead to make things better for the project I added a splash animation, for every time the collectable reaches the water. This makes a much better effect in the game. The other thing missing was the Game Over message, which has now been added. :)

I sent the new version on .D64 to Shaun to try out. If he's happy, then the 16KB build is finally finished :)

Monday, 14 November 2011

Could the 16K version be finished now?


14th November 2011

Well, I got up early today about 8am (As I am working an 12pm-8pm). Checked my email and found that Woolly Jumper needed a small minor fix, which was mainly to do with the rocket animation. The flames on the rocket looked pretty odd, as both used the same frame. So I called the second sprite frame table (for the flames) so that the rocket flame looks more accurate. The good thing is that it worked out quite nicely :)

I have also been told by Shaun some good pointers about the game. The shooting reminded him of playing Space Invaders. Where the game gets difficult if you miss an enemy. The falling whistle reminded him of Ghosts and Goblins, and finally level 6 looked really arctic, especially with the penguin aliens on the loose.

Hopefully now the 16K version of the game is finished, and I can then work on the 64K version (Which will be the same game, but with extra features) which I hope to release in time for Christmas 2011. To be honest I won't really take all that long to add the extra features. Probably a few days to be precise. After that's finished, I can finally take a well earned rest from this game project. :)

Sunday, 13 November 2011

Fixing phase! ARGH!


13th November 2011
Okay then, most of today I have been working on trying to get the game to be finished. First of all some adjustments needed to be made to the game code. First of all, the front end logo needed to be updated as Shaun sent a much nicer looking version of the same logo, which I originally resized. That really made a huge difference. How on earth did I forget about Shaun's logo?

Most of today was a frustrating session. I kept getting more problems (or probably causing those in the game code). I adjusted the player's shield so that the player didn't flash, when it was wearing a workers helmet. I also updated the get ready text and positions of the rocket. The end of levels 2 and 3 looked very odd. I also had to fix the start screens for levels 2, 3 and 8. After fixing those, Shaun gave me an idea where scoring points (after shooting the enemies) should be based on the size of the bullets. So I added a routine that can work out how many points the player can score according to the following:

Weak bullet = 100 points
Medium bullet = 200 points
Mega Bullet = 500 points

Shaun didn't like the idea of having the cattle prod in the game, which caused the player to lose a life, so I removed it and replaced those with the other 3 collectables that are used in the game.

To finish things off, I added a routine in which drops a whistle to the central of the end platform. After the player picks up the whistle, a rocket will appear on screen, with yellow flames and pick the player up. I also had to find a way on how to get those enemy bugs moving in a different sinus wave to the other enemies. Well, the solution was finally found. I used Elwix/Style's WixBouncer tool, in which allows you to chose the sinus mode you want. Then you manually type in the start / end and length of the sinus. I then imported the sinus data into the source code. It made the pink bugs' move quite more different and interesting. Much better now.

Hopefully now I have sent a new .D64 to Shaun, we could say that this game is finished. If it is, then all will be revealed on this blog. The game will be sent to RGCD for submitting to the 16KB cart. Then I and work on expanding this game in time for a Christmas 2011 release.

Tried it on my C64C. It works great on a real C64 with joystick in port 2 :)

Saturday, 12 November 2011

I've got the power


12th November 2011

Today's been quite a long session (Drinking lager, oops, no. Wrong!) working on finishing off Woolly Jumper, 16K version. I have been working on making some tweaks and improvements and also added some power ups to the game, which will enhance game play for the player. Especially when he collects power ups. I also added a random table so that we have different power ups appearing on screen. The powerups are as follows:

- Vaccinator (Power up fire power)
- Sheep Shearer (Award 500 points to the player)
- Drencher (Restore fire power to the weakest bullet)
- Cattle Prod (Avoid at all times, it will cost a sheep's life)

The firepower is something as follows:

- Tiny ball of fluff (Small bullet, slow)
- Medium ball of fluff (Medium bullet, moderate speed)
- Mega ball of fluff (Huge bullet, ultra fast)

I have also been working on upgrading the collision to see whether or not the player can respond to the stopping chars. Sadly this feature didn't work properly for level 8 (The great white rock) and it ended up pushing the player all over the place. This caused an unknown bug, which I don't really know what has been causing it. The level design for just the final stage needs a rethink.

Well, we are nearly there. Hopefully the game will be ready a week before the deadline.


Sunday, 6 November 2011

We are on whistle blower alert


6th November 2011

It's just a short one today, because I have been working a very early 6am-2pm shift at my local distribution centre. And right now, I feel very tired, especially after going out last night. 5 and 3 quarters hour sleep (Although there was a party next door full of youngsters partying with fireworks). Anyway here's what has happened today.

I received an email from Shaun about an object which the player can collect, so it can move on to the next stage. Brilliant, that's helped me a lot. I imported Shaun's whistle (And painted it cyan) into the game source code. Then I programmed a simple box collision, where the player picks up the whistle. If the collision occurs, the rocket will appear on screen and pick the player up.

The second and final thing I did today, due to tiredness was added a little routine, to stop the player from holding the fire button, making the player constantly shoot, also to avoid the title screen skipping sensitivity.

Well, it looks as if the game is nearly finished for the 16KB cartridge compo. I just need to tidy a few things up, which I should hopefully get round to doing this week. One of which is to create random power ups through a timer, and also fix an additional sprite/background detection in which (during parts of the game) the sheep cannot walk through the rocks of level 3 and 8. If the game turns out to be larger than 16K then I'll have to compose some music for just the 16K version of this game, using the John Player. Toodloo, until Friday!

Saturday, 5 November 2011

It's getting there ... :)


5th November 2011

Things are getting on pretty well with Woolly Jumper and I feel that I could be nearly finished with the 16KB CRT version of this fun game project. Well, estimated time for finishing the 16KB cartridge is probably between next week and 20th November 2011. I am dedicating myself to at least one hour to this project during my spare time all this week, as we are coming closer and closer to the deadline.

So then what has been happening today? Well, basically I have been concentrating on some minor bug fixing and also getting the enemies to roam across the screen with their new attack patterns. So how did I go around to working on those? It started with some experiments with sprites. Before I could build the sinus patterns, I had to work out the starting and ending position for where to put the enemy sinuses. To be able to do this, I did a little poke that would display a square sprite. Did a little maths to work out the: start and stop position of the sprite sinues for the top, middle, and bottom portions of the screen. These mainly took effect on the penguin ships, green alien saucers and chickens. The meanest enemy of them all were the pink bugs. The bugs have a different kind of behaviour compared to the three aliens (penguin, green saucer and space chickens) . The bugs shall also be appearing less frequently, compared to the other aliens.

After programming and storing the new sinus movements for each enemy, I restored the sprite/sprite collision and discovered a silly bug. For every second enemy shot, you could see an explosion appear again after the death animation had finished. That was one heck of a daft mistake I discovered today. To to fix that problem, I added a routine that switched off the enemy dead mode, so that the enemy is offset. I also made it so that the enemies don't appear on the screen, or move in a Y-axis if they are supposed to be offset - and it worked.

The last thing I did today was added a little ending to the game, for after the final level was complete. It was something too basic, but because of size restrictions, I was unable to do a very good ending - but the full game will of course have a better ending than what I did for this version.

The hobby project continues through to December after the .CRT version's finished!




Friday, 4 November 2011

Sheep enters a high risk site


4th November 2011
First of all, it was quite an embarrassing bug fixing session, due to the fact that I tried so much to try and fix a problem with the platform jumping issue, which Shaun pointed out. It turned out that I didn't need update the code by retyping the sprite/background collision detection. It turned out that I had forgotten to reset the timer which controlled the player's jump. How dumb was that huh?

Anyway, I imported the new graphics update of Shaun's into the game code. It looked much better. Shaun also did some very nice in game sprites as well. The sheep now wears a builders/warehouse high risk helmet when in Shield/Invinicibility mode, and the rocket now shows the sheep inside. Once the shield wears out, the loses helmet and is no longer invincible.

Hopefully either tomorrow or Sunday, I will concentrate on updating the enemy attack patterns, according to Shaun's diagram illustrations. Re-enable the sprite/sprite collision and then work on an ending for when the player completes the game. Just under 4 weeks until the deadline. ARGH! Hope I can make it :o(

Saturday, 29 October 2011

Get ready for take off


29th October 2011

Arrrrgh! 1 month to go. Woolly Jumper's deadline is coming near, otherwise it won't make it to the compo on time. I have to be quick, but spare time has been cut even more due to my full time job. Actually to be honest, I will not be under pressure to get this game finished, as there isn't really much to be done.

Shaun has got back to me about how the game should be improved. For a start off, he thought that it would be miles better if I removed the colour washing routine over the status bar. So the first thing done earlier on this week was to remove that score. I made it yellow, but after yesterday's email. A yellow status bar looked very odd. So I changed the status bar to white. The second niggly thing was the way the sheep was dying. The speed of the sheep bouncing off the platform falling straight into the water looked very odd. So I slowed down the speed slightly, so that it looked less daft. :)

Shaun also mentioned to me about the enemy formations. Although I worked quite hard on making a variety of enemy formations, it turns out that those formations do not suit the game at all. Therefore it would have been better if I just let the enemies fly across the screen, but I will need Shaun's help to do a quick enemy formation for each group of enemies during the game. Oh ... hang on .... I just got an email from him to illustrate how the enemies should move. I guess I didn't need to use SEUCK again then :)

While I was waiting for Shaun's reponse, I decided to work on the level complete sequence in which the player enters the rocket, and then the rocket takes off with the sheep inside. Unfortunately I found it to be impossible to have the player's face appear in the rocket, as the player sprite overlaps the rocket's sprite. However to solve this problem, I just removed the player sheep's sprite after the rocket picks the sheep up. Then the rocket takes off again. I also added the animation at the bottom of the rocket where the flames are burning from underneath the rocket. The animation was pretty smooth and looked great on the rocket. It would have been great to have the sheep peeping through the rocket window, but the only solution which I can think of to this little problem would be to have two more sprites that build the left/right part of the rocket with the sheep inside. This will be up to Shaun.

Tomorrow after my 6am-2pm shift at a Distribution Centre I might rework on the enemy movement patterns as illustrated by Shaun's rough examples. Now I think I shall have a spot of gaming :)

Sunday, 23 October 2011

Here comes the bugs!


22nd October 2011

I have been working pretty hard on improving Woolly Jumper. I captured the logo supplied by Shaun and loaded it up into Amica Paint. The logo's based on the loading picture logo by Ste'86. I then loaded up the Charwandler to convert the full sized logo which I received. BUMMER, loads of chars missing. Therefore it was impossible to have a proper logo. I did however come up with an alternative solution to the problem. I resized the logo in Amica Paint, so that it would fit all characters after conversion. Then I converted the characters with the Charwandler and succeeded with the conversion. I also imported Shaun's charset into the source as well. Looks really nice and chunky :)

The next thing I did was programmed the new front end. Looked quite nice, but it seems that the colours of the text looked a bit odd in grey (According to Shaun). Perhaps I should update this so that the colours are white. I also added a flashing "Press fire to start".

As soon as the little front end was done. I worked on building the start maps using Arkitek. I captured every single start map I created, then I used the Exomizer to compress each and every start map separately. Then I imported the source (and Exomizer decruncher) into the code. I feel that for the official release of this game, Magnus Lind deserves the credit for the Exomizer source.

The next thing I did was added some new enemies. The flying propeller bugs. They look kind of funny and suit the backwards. Then I worked on the get ready and level start phase. Now what did I do? Well, I made it so that at the end of each level, the scroll routine stops, and the player can exit the level by moving to the right of the screen. However, I still need to polish the end of each level by adding a rocket for the player to enter. Then the rocket will take off once entered. The player will then go on to the next screen. I also named the levels suggested by Shaun. Looks slightly much better, but for some reason. It's getting late now, so I shall pass another preview of this game over to Shaun and Heavy Stylus and do more on it some other time this week. Possibly Monday!.

Saturday, 8 October 2011

Lucky Seven


8th October 2011

Today I have been importing the new level data into the game. While I was playing through the game, I noticed a slight glitch in the background. The last part of the platform looked garbled up. I originally thought to myself that it must have been a corrupt file during exporting from the .D64 to the assembly source. It turned out to be the case where I actually forgotten to complete the map data table, in which uses 255 blocks. So after filling up the block data table, all turned out well.

I also set up the colour pointers for level 7 and imported Shaun's awesome new explosion sprites. Then I inserted a customizable character set which I did myself in 2009. Well, I ripped it from Bomb Chase 2009 to be honest, but that's just a temporary thing.

Finally I have been working on trying to fix an annoying enemy explosion bug. For some strange reason when the second enemy gets shot, it first explodes then it appears at the top of the screen visibly exploding until the next batch of enemies come on screen. Really annoying stuff, but I shall one day get this glitch fixed up :)

Anyway a snapshot of level 7 for you :)


Tuesday, 4 October 2011

Bah, bah, blast sheep!

1st - 2nd October 2011

It's another Sheep episode. Well, I have been doing some more programming on this game project. Shaun sent me some new sprites for this game. I check those out and I was very impressed. So I imported the sprites which he made using SEUCK into SpritePad and then saved a raw set to import into the source code. I had to alter the sprite animation tables and also the colours. I also set certain sprites for certain animations, so that the sprites will work correctly in the assembled source. If I did not change those frames according to the data tables, things would have looked very odd :)

Secondly I received some new level data which used new character sets. Yet again, I had to update the collision pointers so that it makes an impact on the player's sheep. (Collision chars). This worked quite well, but some of the collision pointers make it look odd for the player's sheep. After correcting the pointers (so that the Sheep can walk in the snow for level 6), I worked on setting up the correct colours for the new sprites. Great. Looked much better new.

Wednesday, 28 September 2011

Sheepoid gets a good whacking

28th September 2011

Man I am still recovering from a hard working day and also yesterday's pub session. Well, no pub today. Although it has been lovely and warm for it. Well, we cannot exactly go to the pub everyday can we huh?. Anyway, enough pub talk. Let's just get on with this blog shall we?

Well, I was a bit late to get back on to Woolly Jumper. This week. Although I was off from work over the weekend, I have been busy with Trojahn for the Shoot Em Up Destruction set. Only one more program to go for the SEUDS 2 compilation - Which I will be working on this coming Saturday. But that final program will be a surprise :)

Anyway, today I downloaded Shauns latest graphics update, which he drew using Arkitec. I took a look at the map and was concerned about one of the levels which was in the slaughter world. It turned out to be that one of the platforms needed to be extended a little. So I expanded the platform by 2 blocks, so that the sheep can land on the platform. Otherwise it would have been mighty impossible to land on to that particular platform without losing a life. I also noticed that Shaun added some shaded chars, which were used as pointers for the platforms. So I updated the charset by removing the stuff. I took a look at level 5's background. It's definitely much better now. The sheep should be able to jump over the girders no problem. I'm pretty much happy with this.

After being happy with the map, I saved all the data from the Arkitec and then exported the files into the source code and tested the game with it. Feels much more comfortable now. The next thing for me to deal with is the attack waves. The aliens seem to appear on the screen too frequently. So I programmed a little routine which allows them to appear on to the screen after a delay timer has been hit. I also re-enabled the collision detection. Also added scoring of 200 points per aliens hit.

The game's too hard for the player to be able to move around. Making the production still quite unplayable. Especially if after losing a life, the sheep hits a deadly background and dies straight away. Something had to be done with this problem. I came up with a big solution to this problem, which was to program a routine which checks for whether or not the player has a temporary shield enabled. If the shield is enabled, then the player will not get killed by any baddies or deadly, nor will the sheep drown when falling in the water. After the shield timer wears out. Poor the poor sheep could be in trouble if the player makes the wrong move :)

Sunday, 25 September 2011

Enter the Trojahn

17th - 25th September 2011

Well, well well. I have been busy yet again this week. Not only at work but also Woolly Jumper and the Shoot 'Em Up Destruction Set 2. This blog's mainly going to be about SEUDS 2. Well, it's game number 4, Trojahn. Alf has been updating this game a lot, and what I have seen seems to be a huge improvement compared to the old version which he wrote back in 1993. This game featured some more great tricks formed using S.E.U.C.K. Anyway, to make this a SEUDS 2 release. I decided to work on some major enhancements.

Before I actually started programming a new front end for this game production, I decided to work mainly on the in game enhancements. Simply by POKEing the SEUCK to run additional subroutines. One which will play in game music or sound effects, and one which will check for power ups, etc. Also one for the animated background as well. The power up routines only occur if the player breaks the magic urns. These power ups may vary and help enhance the player's skills. Those Urns could reward Trojahn more stamina (faster speed), faster powerful spear throwing, further distance for throwing the spears and also temporary invulnerability for 20 seconds or so. Trojahn loses all his power ups if he gets hit by an enemy of deadly obstacle.



As soon as I was (and Alf was) happy with the power ups, I kept on receiving updated versions of Alf's game. So I referred to using the latest one. I also worked on the in game, ending and title music using DMC V5.0+ and Goat Tracker. The music turned out pretty well, although I was sort of unsure about the title music. :)

Kenz sent me some 2x1 charsets in a bitmap form, but I had trouble converting the C64 bitmap picture into charset form, so I decided to try and convert Alf's original charset into a 2x1 font and then updated it to how Kenz originally drew the chars. The result turned out pretty good.

Now was the time for me to program the front end. I added some text, music, additional routines into the front end source code. I noticed a couple of flickering rasters inside each raster split, but managed to fix this without a problem. The title screen also consists of a music / sfx option, in which is activated by using left / right on the joystick. I also made it where after fire has been pressed, the get ready screen comes on, which reads: ELENA HAS BEEN CAPTURED BY THE SPARTAN KING. GO AND SEARCH FOR HER!. Then I linked the game code to this routine (after the fire button has been pressed) I also added a game over screen, which says TROJAHN'S QUEST HAS FAILED, ELINA HAS BEEN SACRIFICED TO THE MINOTAUR - GAME OVER. Both GET READY and GAME OVER screens have an eerie jingle, to fit the dark atmosphere in the game. Finally I programmed and linked the last part of the game. The ending. Tested the game, seems to be working okay, and I managed to reach the end of the game as well - in cheat mode :)




Fredrik the Ball is Back: Spider Maze 2 in progress

  11th January 2026 First of all, a belated Happy New Year to all C64 and retro kind.   At last, a new blog update and a new C64 project is ...