Opry99er, on Thu Dec 24, 2009 11:41 PM, said:
Destroyer
Started by sometimes99er, Dec 9 2009 4:24 PM
140 replies to this topic
#51
Posted Fri Dec 25, 2009 1:57 PM
Man... This is looking awesome. I might not even enter my piece of crap XB offering now. You really do some nice stuff, man.....
#52
Posted Fri Dec 25, 2009 4:35 PM
Opry99er, on Fri Dec 25, 2009 8:38 AM, said:
One question, how did Karsten add all those videos? Is that an available feature on this forum?
#53
Posted Fri Dec 25, 2009 5:00 PM
retroclouds, on Fri Dec 25, 2009 1:55 PM, said:
Yeah, letting the ship lay low in the water would have been cool. But the game will be nice without that feature nonetheless.
Perhaps the ship could start burning when it takes too much damage or you could change the shape of the ship.
Looking forward seeing the explosions.
Hope this doesn't all sound to cruel being in the X-mas spirit and such
Perhaps the ship could start burning when it takes too much damage or you could change the shape of the ship.
Looking forward seeing the explosions.
Hope this doesn't all sound to cruel being in the X-mas spirit and such
#54
Posted Sun Dec 27, 2009 12:50 AM

Okay, it came down to these two. The latter doesn’t need sprite support, so obviously a bit easier to do (less code and less data). I think it also works fine in the corner of the eye, and with the increasing alarm you’ll know what’s happening.

Back in the eighties I did an assembler game for the TI-99/4A’s Mini Memory, a clone of Missile Command, and it had these very similar explosions (the game is lost today). I’ve doubled the number of animation frames from 8 to 16. I might execute them a bit faster. I’ve try and play around with colors, starting out with dark red, and having a somewhat psychedelic experience. I might try out all bright red through all the frames instead.
#55 ONLINE
Posted Sun Dec 27, 2009 3:23 AM
The damage indicator is nice, as are the explosions. Very cool 
Perhaps you could try to do the first frames in white and the ending ones in bright red.
Think like white flash turning red.
Perhaps you could try to do the first frames in white and the ending ones in bright red.
Think like white flash turning red.
#56
Posted Sun Dec 27, 2009 6:56 AM
retroclouds, on Sun Dec 27, 2009 3:23 AM, said:
The damage indicator is nice, as are the explosions. Very cool 
Perhaps you could try to do the first frames in white and the ending ones in bright red.
Think like white flash turning red.
Perhaps you could try to do the first frames in white and the ending ones in bright red.
Think like white flash turning red.
Well, final damage indicator will change color. First dark green, then dark yellow and finally dark red for the entire bar as it increase in width.

The explosion may appear a bit too squarish (frame 8 thru 13). Driving up the frame rate seems to help. And then this little devil takes 512 bytes for the patterns alone !
Will be looking into title screen music now.
#57
Posted Sun Dec 27, 2009 8:35 AM
Lookin great man!!!
#58
Posted Sun Dec 27, 2009 9:47 AM
I am anxiously awaiting this game. Great job so far!!!!!!!
#59
Posted Mon Dec 28, 2009 7:20 AM
Tried to do Green Day’s 21 Guns. Quickly realized it had to be more soft to resample anything. Tried and add extra rests. Then went for two simple sets of ADSR (Attack, Decay, Sustain and Release). It’s not really convincing.
Will try something completely different.
Will try something completely different.
#60
Posted Mon Dec 28, 2009 8:43 AM
I like the sounds there, my brother.
Keep us updated on your musical progress, as that is a dear subject to me. Additionally, Marc Hull has just completed his SIDBlaster99 card. All kinds of insane sh** possible with that card. You should check it out
#61
Posted Mon Dec 28, 2009 1:02 PM
Opry99er, on Mon Dec 28, 2009 8:43 AM, said:
I like the sounds there, my brother.
Keep us updated on your musical progress, as that is a dear subject to me. Additionally, Marc Hull has just completed his SIDBlaster99 card. All kinds of insane sh** possible with that card. You should check it out
- Title music
- Sonar sound
- Depth charge dropout
- Ship engines
- Ship explosion
- Damage alarm
- End of game explosion
- End of game tune
- Surface explosion
- Missile launch
- Sub explosion
#62 ONLINE
Posted Mon Dec 28, 2009 1:28 PM
sometimes99er, on Mon Dec 28, 2009 1:02 PM, said:
Opry99er, on Mon Dec 28, 2009 8:43 AM, said:
I like the sounds there, my brother.
Keep us updated on your musical progress, as that is a dear subject to me. Additionally, Marc Hull has just completed his SIDBlaster99 card. All kinds of insane sh** possible with that card. You should check it out
- Title music
- Sonar sound
- Depth charge dropout
- Ship engines
- Ship explosion
- Damage alarm
- End of game explosion
- End of game tune
- Surface explosion
- Missile launch
- Sub explosion
I wonder if any of the free samples at http://www.freesound.org would be of any use.
Somehow if I see the Destroyer, I have to think about the 80's arcade game 1942 when it plays
the military drums on title screen when inserting coin .....
[edit] Man, I searched for some matching songs, and now I have the U96 theme "Das Boot" running in my head, horror. Sorry couldn't resist
#63
Posted Tue Dec 29, 2009 3:51 AM
retroclouds, on Mon Dec 28, 2009 1:28 PM, said:
Somehow if I see the Destroyer, I have to think about the 80's arcade game 1942 when it plays
the military drums on title screen when inserting coin .....
[edit] Man, I searched for some matching songs, and now I have the U96 theme "Das Boot" running in my head, horror. Sorry couldn't resist
the military drums on title screen when inserting coin .....
[edit] Man, I searched for some matching songs, and now I have the U96 theme "Das Boot" running in my head, horror. Sorry couldn't resist
I’ll be working with snare notes with limited amount of accent. The custom player routine will then have really simple ADSR and a fixed random seed stream variation. I can then try different seeds to hopefully get something believable. If this does not turn out acceptable - considering the amount of bytes used, then I’m back with the more ordinary music. I think it’s got to be upbeat, since tones held for long quickly seem to irritate my sensitive ears.
#64
Posted Fri Jan 1, 2010 10:41 AM
In post #59 I used the media tag, and thought that it wouldn’t play unless the reader pressed the play button. I removed the mp3 from the file server, but I guess most of you will hear it anyway because of browser caching. Anyways here’s the mp3, if you want to hear it.
0033.mp3 158.98K
12 downloads
And here’s the original music.
Here’s a more clean take from the arcade 1942.
0034.mp3 177.96K
15 downloads
This is the layout of the character set. There will be different colors for title screen, main game and end of game.

The dynamic area consist of subs that move smoothly left and right and at different speeds. The last part of this area contains the clouds.
This is of course just a snapshot of VDP memory in use (ROM will look different).
0033.mp3 158.98K
12 downloadsAnd here’s the original music.
Here’s a more clean take from the arcade 1942.
0034.mp3 177.96K
15 downloadsThis is the layout of the character set. There will be different colors for title screen, main game and end of game.

The dynamic area consist of subs that move smoothly left and right and at different speeds. The last part of this area contains the clouds.
This is of course just a snapshot of VDP memory in use (ROM will look different).
#65
Posted Fri Jan 1, 2010 10:54 AM
Damn, son!! I'm impressed... How did you implement your character set?? Are there TI fonts available for DL? I posted a question in my "Honeycomb Rapture" thread about character sets/fonts... But I think maybe I wasn't clear... I would like to find a way to load a new graphic character set into low memory for XB to draw from during my game....
#66
Posted Fri Jan 1, 2010 12:18 PM
Opry99er, on Fri Jan 1, 2010 10:54 AM, said:
Damn, son!! I'm impressed... How did you implement your character set?? Are there TI fonts available for DL? I posted a question in my "Honeycomb Rapture" thread about character sets/fonts... But I think maybe I wasn't clear... I would like to find a way to load a new graphic character set into low memory for XB to draw from during my game....

I think I have about 60 fonts in a 64x256 pixel graphic layout. Each of these can then easily be put thru my Grapefruit utility (Windows) and output assembler or basic statements. The download at my site has several examples included. I’ll happily supply you with more to play around with.
Since I picked up the TI-99/4A again, I mostly use cross assemblers with binary output, so I don’t know much about object code, interaction with XB etc., but I guess there’s already TI utilities for doing what you suggest.
#67
Posted Sun Jan 3, 2010 8:07 AM
For this phase colors, graphics, layouts, overall actions and priorities are identified. The next phase is routines and tests. I’ll detour for a few sound experiments on the way. Next phase will be tying things together and tuning. Finally the last phase is mainly “out of the box”, such stuff as manual and art, and then probably a bit of fine tuning.
I don’t have access to the real hardware, so any testing and feedback will be appreciated.
Below some of the updated character and sprite designs ...
I don’t have access to the real hardware, so any testing and feedback will be appreciated.
Below some of the updated character and sprite designs ...
#68 ONLINE
Posted Sun Jan 3, 2010 9:23 AM
sometimes99er, on Sun Jan 3, 2010 8:07 AM, said:
For this phase colors, graphics, layouts, overall actions and priorities are identified. The next phase is routines and tests. I’ll detour for a few sound experiments on the way. Next phase will be tying things together and tuning. Finally the last phase is mainly “out of the box”, such stuff as manual and art, and then probably a bit of fine tuning.
I don’t have access to the real hardware, so any testing and feedback will be appreciated.
Below some of the updated character and sprite designs ...

I don’t have access to the real hardware, so any testing and feedback will be appreciated.
Below some of the updated character and sprite designs ...

Interesting stuff
Just out of curiosity. How do you test the animations and convert them to patterns ?
Have you written an own converter for that ?
#69
Posted Sun Jan 3, 2010 4:56 PM
retroclouds, on Sun Jan 3, 2010 9:23 AM, said:
Interesting stuff
Just out of curiosity. How do you test the animations and convert them to patterns ?
Have you written an own converter for that ?
Just out of curiosity. How do you test the animations and convert them to patterns ?
Have you written an own converter for that ?
The explosion itself was hand drawn on screen using mouse with a paint program (PaintShopPro6) with zoom factor at maybe 4 or 5:1. I then copied the first 16x16 pixel frame onto the same sheet, next to the last frame and adjusted the new one a bit. This is how I continued. I did not know how well it would do, until I took all 16 frames, converted to hex and wrote the 2005.03.19 Space Invaders demo. Yes, I’ve been reusing some old graphics of mine. I do intent to try and better the explosion though.
The depth charge design, spin, launch and water splash was also hand drawn using mouse, but with an animation program (AnimationShop2). I start out with a static background from the game draft. This is then duplicated for the next 100 frames. First frame nothing. Second frame, I draw the top of a barrel coming up or out of the ship. Third frame, I started drawing a barrel at its next position. I use the arrow keys to quickly go back and forth between frames. I ended up having a total of only 15 frames. I then videotaped (CamtasiaStudio5) myself tapping the arrows keys in both directions.
Lately I tried and import different TI graphic objects into Flash (Adobe) and could easily move them about etc. using the built-in ActionScript2 (syntax like JavaScript). Using layers I simply put the ship and the border on top of the clouds and then adjust the position of the clouds (wider than the screen) once in a while with something like clouds._x = clouds._x + 2.
To go from graphics to assembler data statements I use my own Grapefruit utility (available at my site).
BTW - RGPC looks a bit like CRPG ...
#70 ONLINE
Posted Mon Jan 4, 2010 8:36 AM
Thanks for the detailed description on how you proceed. That is very interesting stuff.
Oh on a sidenote, did you know a TMS9918 VDP implementation was done in javascript (using canvas for drawing).
It's part of an MSX emulator written in javascript. Check here
I have some plans for doing a utility that will be using this VDP implementation.
As far as the RGPC naming is concerned, no use in changing its name now, with only a few more weeks remaining
Quote
Lately I tried and import different TI graphic objects into Flash (Adobe) and could easily move them about etc. using the built-in ActionScript2 (syntax like Javascript). Using layers I simply put the ship and the border on top of the clouds and then adjust the position of the clouds (wider than the screen) once in a while with something like clouds._x = clouds._x + 2.
Oh on a sidenote, did you know a TMS9918 VDP implementation was done in javascript (using canvas for drawing).
It's part of an MSX emulator written in javascript. Check here
I have some plans for doing a utility that will be using this VDP implementation.
As far as the RGPC naming is concerned, no use in changing its name now, with only a few more weeks remaining
#71
Posted Mon Jan 4, 2010 1:48 PM
retroclouds, on Mon Jan 4, 2010 8:36 AM, said:
Oh on a sidenote, did you know a TMS9918 VDP implementation was done in javascript (using canvas for drawing).
It's part of an MSX emulator written in javascript. Check here
I have some plans for doing a utility that will be using this VDP implementation.
It's part of an MSX emulator written in javascript. Check here
I have some plans for doing a utility that will be using this VDP implementation.
Last year Shiru did the SN76489 (TMS9919) in ActionScript3. The source is only 229 lines. It sounds very true.
There’s also a ZX Spectrum emulated in Flash.
Bottomline. Some amazing TI related online utilities and emulation should be possible with both languages.
#72
Posted Tue Jan 5, 2010 5:00 PM
Moving along nicely. ROM consumption at 21%.
I took a look at data compression routines. Compression time is not an issue. Data will be compressed before we create the ROM. Decompression time is usually not an issue. I’m trying to steer clear of the need for 32K RAM Expansion, so I won’t actually have any “workspace”. I need to decompress nicely in a rollout manner directly to VDP. The more exotic compression techniques seem to work best with 2K chunks and up. Also a decompression routine takes space too.
ScratchPad has 32 bytes for CPU workspace and 32 bytes for stack of return addresses. So there’s 192 bytes left for controlling all the action.
Simple RLE on my main static character patterns alone reduces data size from 728 bytes to 466. This would work nicely on several other data chunks. The submarines and clouds will have to stay uncompressed in ROM as we need clean sources to do effective software scrolls (at least I think so). And remember we’re not “just” scrolling in one or another direction.
One large preliminary setup of VDP (setting several screens, color sets, sprite lists and patterns) using decompression might be an idea.
I took a look at data compression routines. Compression time is not an issue. Data will be compressed before we create the ROM. Decompression time is usually not an issue. I’m trying to steer clear of the need for 32K RAM Expansion, so I won’t actually have any “workspace”. I need to decompress nicely in a rollout manner directly to VDP. The more exotic compression techniques seem to work best with 2K chunks and up. Also a decompression routine takes space too.
ScratchPad has 32 bytes for CPU workspace and 32 bytes for stack of return addresses. So there’s 192 bytes left for controlling all the action.
Simple RLE on my main static character patterns alone reduces data size from 728 bytes to 466. This would work nicely on several other data chunks. The submarines and clouds will have to stay uncompressed in ROM as we need clean sources to do effective software scrolls (at least I think so). And remember we’re not “just” scrolling in one or another direction.
One large preliminary setup of VDP (setting several screens, color sets, sprite lists and patterns) using decompression might be an idea.
#73
Posted Wed Jan 6, 2010 2:51 AM
These are “real” clouds resized and polished a bit. I didn’t like the “one pixel” holes in the clouds.

The image size is 384x16 pixels. The TI-99/4A screen is 256 pixels wide, so the clouds shouldn’t have a too obvious wrap-around effect. Think you can do better with the graphics ? Please have a go !

The image size is 384x16 pixels. The TI-99/4A screen is 256 pixels wide, so the clouds shouldn’t have a too obvious wrap-around effect. Think you can do better with the graphics ? Please have a go !
#74 ONLINE
Posted Wed Jan 6, 2010 3:01 AM
sometimes99er, on Tue Jan 5, 2010 5:00 PM, said:
Moving along nicely. ROM consumption at 21%.
I took a look at data compression routines. Compression time is not an issue. Data will be compressed before we create the ROM. Decompression time is usually not an issue. I’m trying to steer clear of the need for 32K RAM Expansion, so I won’t actually have any “workspace”. I need to decompress nicely in a rollout manner directly to VDP. The more exotic compression techniques seem to work best with 2K chunks and up. Also a decompression routine takes space too.
ScratchPad has 32 bytes for CPU workspace and 32 bytes for stack of return addresses. So there’s 192 bytes left for controlling all the action.
Simple RLE on my main static character patterns alone reduces data size from 728 bytes to 466. This would work nicely on several other data chunks. The submarines and clouds will have to stay uncompressed in ROM as we need clean sources to do effective software scrolls (at least I think so). And remember we’re not “just” scrolling in one or another direction.
One large preliminary setup of VDP (setting several screens, color sets, sprite lists and patterns) using decompression might be an idea.

I took a look at data compression routines. Compression time is not an issue. Data will be compressed before we create the ROM. Decompression time is usually not an issue. I’m trying to steer clear of the need for 32K RAM Expansion, so I won’t actually have any “workspace”. I need to decompress nicely in a rollout manner directly to VDP. The more exotic compression techniques seem to work best with 2K chunks and up. Also a decompression routine takes space too.
ScratchPad has 32 bytes for CPU workspace and 32 bytes for stack of return addresses. So there’s 192 bytes left for controlling all the action.
Simple RLE on my main static character patterns alone reduces data size from 728 bytes to 466. This would work nicely on several other data chunks. The submarines and clouds will have to stay uncompressed in ROM as we need clean sources to do effective software scrolls (at least I think so). And remember we’re not “just” scrolling in one or another direction.
One large preliminary setup of VDP (setting several screens, color sets, sprite lists and patterns) using decompression might be an idea.
Now, that is what I call interesting stuff
As the clouds will move rather slowly would having a decompressed version in VDP
be an option ? You could work on it in "parts" divided accross multiple frames and once
complete, move it into the pattern table.
Then again, such logic would also take some code space to implement.
What I did in the cartridge version of Pitfall was to "page-out" certain parts of scratch-pad memory to the VDP,
use the new free space as work-buffer and when finished "page-in" into scratch pad again. That works pretty well.
However, I did not use any compression techniques in Pitfall! so looking forward learning on how you proceed
#75
Posted Wed Jan 6, 2010 3:57 AM
retroclouds, on Wed Jan 6, 2010 3:01 AM, said:
As the clouds will move rather slowly would having a decompressed version in VDP be an option ? You could work on it in "parts" divided accross multiple frames and once complete, move it into the pattern table.
retroclouds, on Wed Jan 6, 2010 3:01 AM, said:
What I did in the cartridge version of Pitfall was to "page-out" certain parts of scratch-pad memory to the VDP, use the new free space as work-buffer and when finished "page-in" into scratch pad again. That works pretty well.
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users














