Bouncy Ball version 1.0 has been released, and in time for the 2016 25th Cocofest. I was working on a timer bug, and RGB mapping, while Simon was working on the end game sequence. I owe him a case of beer for his efforts, staying up till 2am his time, on a work day! I am so looking forward to watching people play on my Coco 3.
Let’s make some noise for Bouncy Ball Beta 3! I wanted to share a video showcasing a sneak peek of the levels you will be pulling your hair out playing. That is assuming you still have any! This is the last video of Bouncy Ball before the 2016 Cocofest.
Bouncy Ball Beta 1 is here. See the downloads. This has the lightening fast rendering routine that Simon and myself optimized. Originally a 7 fps C routine to a 50 fps inline assembly routine. I am now running at the Coco’s stock speed of (just under) 1MHz instead of using the 2X speed up on the Coco 3. This also means Bouncy Ball should run on a Coco 2, but I have not tested it yet. The frame rate is buttery smooth but not vsync’ed yet. Some sounds have been added to the game, but in game ball bounce sound is not there yet. And best of all you can now use the keyboard to play!
In this article I talk about optimizing the level rendering routine for my game Bouncy Ball for the Color Computer. With the help of the mad man Simon Jonassen, I was able to take the render routine from 7 fps to 50 fps! I was quite surprised at the results. I made a video at the end of this article, and explain things in detail here. I also list a couple resources you might want to have in your back pocket.
I started working on converting my level renderer for Bouncy Ball to assembly. Check out the video below. The C is on the left, assembly on the right. The speed difference is about double the frame rate. Although, in the video I forgot that the C version is double buffering, and the assembly isn’t. Assembly also isn’t printing text. So I fixed both versions behind the scenes.
Awesome progress over this new years weekend. I started with a 4 page TODO list, and I have all but the end of game sequence done. I still have levels to build, joystick support, and then in-game sound and (maybe) music to implement. Sound will be via Simon’s irq driven routine. I even had some time to start work on Bouncy Ball’s official web page, and some package art. Now though, I think it’s time to take a short breather and maybe type in another BASIC program. I’m thinking Connect 4. I remember having that one typed in and added some Coco 3 hi-res graphics and sound to it.
You can now download a playable demo. I fixed the joystick button read routines. Use button 1 on either joystick to move forward, button 2 to move backwards. I don’t map RGB colors yet, so your colors will be different on an RGB monitor. See the README.txt in the zip file.
My second demo video of Bouncy Ball is available. Since last meeting our snowball hero, there have been a few cosmetic updates, and now has 3 levels. They play well, but not yet tuned for difficulty. The biggest change is the flashy new title page, with a few place holder items.
The levels in Bouncy Ball are not all that complicated to store in memory. But they are taking up a bit of memory, which is a bit of a concern if we don’t want to have to resort to reading the levels from disk. With some simple compression, I have been able to shrink a level from 5880 bytes to 870 bytes. That’s a 6:1 ratio, or over 6 times smaller!
Published my first demo video of Bouncy Ball just in time for Xmas. I decided to make it xmas themed after hearing about another Coco coder, John Linville made a game called Xmas Rush. It had evil snowmen that you had to save xmas trees from. That also helped me figure out what my story line would be. Since John was busy saving the trees in the forest, the evil snowmen stole everyones xmas trees from their homes, and brought them back to snowman’s land.