Jump to content
IGNORED

Bomber Hero (WIP)


Recommended Posts

just an idea, I think it's only drawing 1 sprite (assuming zone height is 16) 

 

On plotsprite you can tell it how many sprites to plot with the [tallheight] parameter. 

 

https://www.randomterrain.com/7800basic.html#plotsprite

 

I find you have to use the [tallheight] parameter if you are stashing sprites in the last bank for example and call them someplace else (ie incgraphic is after the plot).

 

 

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

14 hours ago, Muddyfunster said:

just an idea, I think it's only drawing 1 sprite (assuming zone height is 16) 

 

On plotsprite you can tell it how many sprites to plot with the [tallheight] parameter. 

 

https://www.randomterrain.com/7800basic.html#plotsprite

 

I find you have to use the [tallheight] parameter if you are stashing sprites in the last bank for example and call them someplace else (ie incgraphic is after the plot).

 

 

That seems to be the case, however changing the tallheight parameter has no effect unlike my other games i have used tallsprites. I have the tallsprite in the bank used and everything is basically the same. When im on my dev rig i will try plotting before restoring the screen as im having suspicion that it's something to do with how the sprite-based tiles are rendered. Having said all that it works fine with the two individual sprites other then messy pallets.

Link to comment
Share on other sites

On 1/22/2021 at 5:09 AM, TwentySixHundred said:

I see what you're saying, i will have to look into having both the player and enemy sprites using 160B. Guess it's just a matter of carefully stacking the pallets and i agree it would look really good if it can be done. The bomb pallet shouldn't be an issue if there is atleast black and white within the same pallet. Not sure about explosions because as im looking at it a free pallet from the background would be needed. Although i may not be looking at it carefully enough. Item pickups would also need to share one the other pallets.

 

When you are familiar with the palettes you will see that it is possible to obtain great versatility from the combined use of 160A + 160B. All eight palettes can be used as 160A and 160B at the same time, i.e. if you are using the four 0-3 palettes combined in 160B you can still use each of the four 0-3 palettes individually as well as 160A. So, while with 160B you can use up to 12 colors (but also 3 or four colors) without worrying about the positions of the colors in the four palettes, you will have to carefully compose those palettes that will also be used as 160A. Obviously, the same goes for palettes 4-7. Therefore, for the 3 colors of explosions and bombs, which to save resources should be background tiles in 160A, we can use palettes that we already use in the 160B set. Arkanoid is an excellent example of the combined use of the 160A and 160B palettes.

 

 

 

1660892241_160Ae160B.thumb.PNG.42751acffa2822d4dd8a12813c8400be.PNG

 

 

Edited by Defender_2600
  • Like 4
Link to comment
Share on other sites

30 minutes ago, RevEng said:

Is your png height an even multiple of the zone height? Any remainder pixels are ignored, so that they can be used for palettes, comments, etc.

 

Interesting, just like the TurboGrafx-16 version, I used sprites 12 x 24 (max) and sprite-based tiles 12 x 16. The bomb (which can be made up of 160A animated tiles) does not exceed 12 x 16, even the explosions are made up of 12 x 16 tiles.

  • Like 1
Link to comment
Share on other sites

9 hours ago, Defender_2600 said:

 

When you are familiar with the palettes you will see that it is possible to obtain great versatility from the combined use of 160A + 160B. All eight palettes can be used as 160A and 160B at the same time, i.e. if you are using the four 0-3 palettes combined in 160B you can still use each of the four 0-3 palettes individually as well as 160A. So, while with 160B you can use up to 12 colors (but also 3 or four colors) without worrying about the positions of the colors in the four palettes, you will have to carefully compose those palettes that will also be used as 160A. Obviously, the same goes for palettes 4-7. Therefore, for the 3 colors of explosions and bombs, which to save resources should be background tiles in 160A, we can use palettes that we already use in the 160B set. Arkanoid is an excellent example of the combined use of the 160A and 160B palettes.

 

 

 

1660892241_160Ae160B.thumb.PNG.42751acffa2822d4dd8a12813c8400be.PNG

 

 

Thanks Defender the example is very helpful, even though im using the first 4 pallets for the map im sure this applies for the later half. I still need to figure out how to make sure the sprite displays the correct colors from certain pallets. At the moment it seems to be choosing as it pleases no matter what incgraphic parameters i set. For some reason it's throwing a transparent "colour" in the mix when it really should be a solid.

8 hours ago, RevEng said:

Is your png height an even multiple of the zone height? Any remainder pixels are ignored, so that they can be used for palettes, comments, etc.

Thanks for chiming in Mike, yes you're correct. The sprite used is 16x24 pixels ripped from the sprite sheet, id much rather us a 12x16 but obviously it wouldn't look as great. This is interesting as i know with Captain Comic i used tallsprite @16x32 however im fairly sure the full 32 wasn't used either. I had no dramas with that although i really should double check if that was the case later tonight. ?

Edited by TwentySixHundred
  • Like 2
Link to comment
Share on other sites

5 hours ago, TwentySixHundred said:

At the moment it seems to be choosing as it pleases no matter what incgraphic parameters i set. For some reason it's throwing a transparent "colour" in the mix when it really should be a solid.

The way 160B combines palettes means not only do you get 12 colours but you get 4 lots of transparency. Anything trying to use colours at indices 0, 4, 8, and 12 will be transparent and as no graphics editor will be expecting that you'll need to use the parameters on incgraphic to adjust how things are mapped when it's imported.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

7 minutes ago, SmittyB said:

The way 160B combines palettes means not only do you get 12 colours but you get 4 lots of transparency. Anything trying to use colours at indices 0, 4, 8, and 12 will be transparent and as no graphics editor will be expecting that you'll need to use the parameters on incgraphic to adjust how things are mapped when it's imported.

Ah yes thanks @SmittyB i completely overlooked that, makes complete sense. Guess i hadn't played around with the parameters enough. To be honest i wasn't seeing many changes, although knowing my luck i probably hadn't found the culprit yet ?

Link to comment
Share on other sites

8 hours ago, RevEng said:

Is your png height an even multiple of the zone height? Any remainder pixels are ignored, so that they can be used for palettes, comments, etc.

I checked Captain Comic and i had used the full 32 pixels, yeah im thinking you have hit the nail on the head. As the sprite is 16x24 it's disregarding the zone and treating it as pallet and comments ect. So i will have to either use two sprites to make the 12x24, a 12x16 or an 32 pixel sprite which probably wont scale correctly. Could explain why i was getting transparency even after changing around incgraphic parameters. I will have another look tomorrow when i get some free time. With what SmittyB has mentioned and your explanation it's probably a combination of both ?

Link to comment
Share on other sites

You can keep the design at 16x24, and just increase the png to a height of 32 (without scaling). i.e. add transparent padding to the bottom.

 

Even if 7800basic didn't have the palette/comment feature, this is exactly what it would need to do internally, when it imported the remainder portion.

  • Like 2
Link to comment
Share on other sites

On 1/24/2021 at 1:29 AM, RevEng said:

You can keep the design at 16x24, and just increase the png to a height of 32 (without scaling). i.e. add transparent padding to the bottom.

 

Even if 7800basic didn't have the palette/comment feature, this is exactly what it would need to do internally, when it imported the remainder portion.

Thanks Mike i will look into it, im guessing the white space is what you're talking about. I will try filling with another colour and see how it goes. I have some time at the moment as im stuck trying to work out explosions with swapping tiles. So it's a good time to start experimenting with the player graphics and pallets again ?

On 1/24/2021 at 5:27 AM, RushJet1 said:

atari.bin 4 kB · 4 downloads

 

just in case you put the atariage logo in at some point haha

Thanks for all the hard work RushJet1, it sounds great for when i get to adding splash and menu screens ?

Edited by TwentySixHundred
  • Like 2
Link to comment
Share on other sites

12 minutes ago, Defender_2600 said:

Here are the first five explosions tiles. Considering the low resolution, we get a better result if we replace the white color with yellow (the lightest of the palette).

Thanks Defender and for the recommendation, i hadn't any explosion sprites yet was just using some test sprites. So this really helps and i will start importing them tonight when on my dev rig. The yellow does look really good and probably a better choice then white ?

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Looking good TSH. ;) Pretty neat this mode breakdown stuff, didn't realize there was so much graphical variance on 7800. Interesting how sprite width and aspect ratio change and how color depth can actually rise from 2bpp up to like 3bpp in some places. See the almost procedural nature of Atari hardware is till there even in the third home console.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

2 hours ago, BladeJunker said:

Looking good TSH. ;) Pretty neat this mode breakdown stuff, didn't realize there was so much graphical variance on 7800. Interesting how sprite width and aspect ratio change and how color depth can actually rise from 2bpp up to like 3bpp in some places. See the almost procedural nature of Atari hardware is till there even in the third home console.

Thanks @BladeJunker but i can't take all the credit on this one. It's definitely a community assisted project and lets just say the credits list is going to be quite long.

Link to comment
Share on other sites

Woohoo success,

 

Well turned out to be a combination of things. I needed to store the tallsprite into the last bank rather then current bank. That's new to me as the last time with Captain Comic i could only store the tallsprite in the current bank as the engine...

 

I also changed the sprite size from 12x24 to 12x32 like Mike mentioned however there wasn't a need to fill the remaining space as it rendered fine. Form there is was a matter of changing incgraphic parameters to the correct corresponding pallets.

 

Anyway atleast i know that having the tall sprite in the current bank rather then persistent bank is what was causing the issue. Just goes to show i really shouldn't have assumed because that was the case with a previous project.

 

Now it's just the painstaking process of modifying bombermans directional and animation frames, as i had to slightly modify his sprite to fit 12x32 rather then 16x32. But hey atleast that's one thing knocked off the bucket list :)

 

aaa.thumb.png.b2905832dfdc488a18dea807f6795fdc.png

  • Like 12
Link to comment
Share on other sites

13 hours ago, Defender_2600 said:

   

In truth, 160B mode is 4 bits per pixel, 12 colors + background / transparent from 2 palettes, 25 colors per zone.

Yeah probably should have said 3bpp-ish to 4bpp-ish heh. Still it looks easier to go above 2bpp than it is on NES with all the flicker that causes. Regardless it's more involved that I thought, I've mostly just stuck to 2bpp for pixel art much like my C64 tinkering.

 

Definitely think more 7800 flash carts has stimulated some homebrew growth, in particular getting down to perfected terms with the visual and audio properties of the hardware which I don't the OG developers ever got to do imo with all the market constraints bitd. Emulation is awesome but there's something to be said for running it on the console on a nice CRT. :)

  • Like 2
Link to comment
Share on other sites

3 hours ago, RushJet1 said:

bomber2.bin 4 kB · 2 downloads

 

Started on the 2nd level theme from Bomberman on Turbografx.  Just a short wip demo to see if it would work.

Sounds great like usual, you never disappoint. Can't wait to integrate these awesome tunes down the track, they will really liven up the game. Amazing how this can be produced using the TIA ?

Link to comment
Share on other sites

So i took a break from the explosion routine and set my mind to collision detection with map objects. Obviously sticky walls was an issue with my last build however they're now eliminated. I had a few ways to go about this and there is many different examples devs have made overtime. However i have gone with my own and it only uses resources that i used for collision detection itself. Very simplified code and lightweight although is effective at achieving nice smooth results.

 

So once again player movement is tied into the collision detection routine. This works well as it's easy to eliminate bugs like the ability to walk through tiles with manipulation of player inputs. Tricky to explain but very effective and why not use the resources that have already made the checks for collision?! Anyway here is a demo of me farting around the map that shows fluid movement. Now this is in place i may start importing directional sprites and animations tonight. For now the most important part is done and that's the engine code.

 

 

  • Like 5
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...