Forums

Sega Master System / Mark III / Game Gear
SG-1000 / SC-3000 / SF-7000 / OMV
Home - Forums - Games - Scans - Maps - Cheats - Credits
Music - Videos - Development - Hacks - Translations - Homebrew

View topic - [WIP] Bonk's Adventure for the SMS

Reply to topic
Author Message
  • Joined: 16 Jan 2007
  • Posts: 16
  • Location: Pennsylvania, USA
Reply with quote
[WIP] Bonk's Adventure for the SMS
Post Posted: Tue Sep 19, 2023 9:44 pm
I'd like to show off my current SMS project using Z88DK, I'm trying to adapt Bonk's Adventure to the SMS using a mix of elements from the TG-16 and NES versions of the first game. Currently I have my sprite engine working more or less with some bugs and the HUD but haven't gotten far with scrolling backgrounds or collision. What's the best way to approach collision for the BG tilemap? The 1-1 BGM is based on the NES version and is a bit rough, will probably need to tweak the Noise channel.

A quick animation test, and about how far it's along.
https://youtu.be/x8A1c_dC7aI?si=qeSi1J9xbCSrCZqf
  View user's profile Send private message
  • Joined: 09 Jun 2014
  • Posts: 375
Reply with quote
Post Posted: Tue Sep 19, 2023 10:35 pm
It looks great so far!

The SMS can output 3 basic noise frequencies. You seem to be using the lowest frequency. The medium or highest noise will sound much more like the noise used in the nes version. So it should be an easy fix.

I also want to point you to this Alex Kidd mod:
https://www.smspower.org/Hacks/AlexKiddInMiracleWorld-SMS-PcKidded-Mod
Bonk is the same size as Alex Kidd, which is an obvious restriction when making an Alex Kidd mod in Kidded.
The music might be interesting.
Hopefully it will be inspiring.
  View user's profile Send private message Visit poster's website
  • Joined: 23 Jan 2010
  • Posts: 437
Reply with quote
Post Posted: Tue Sep 19, 2023 11:20 pm
EmOneGarand wrote
I'd like to show off my current SMS project using Z88DK, I'm trying to adapt Bonk's Adventure to the SMS using a mix of elements from the TG-16 and NES versions of the first game. Currently I have my sprite engine working more or less with some bugs and the HUD but haven't gotten far with scrolling backgrounds or collision. What's the best way to approach collision for the BG tilemap? The 1-1 BGM is based on the NES version and is a bit rough, will probably need to tweak the Noise channel.

A quick animation test, and about how far it's along.
https://youtu.be/x8A1c_dC7aI?si=qeSi1J9xbCSrCZqf

Very nice. Congratulations and keep goind. Im sure that members with big experience here will help you when you need.
  View user's profile Send private message
  • Site Admin
  • Joined: 19 Oct 1999
  • Posts: 14744
  • Location: London
Reply with quote
Post Posted: Wed Sep 20, 2023 6:36 am
Regarding the level layout and collisions, I guess it partly depends on the level form. Are there any solid surfaces not aligned to a 16x16 grid? Is there ever a floor over another floor? You can make simplifying assumptions sometimes. However, the most general strategy is to define the level as a matrix of block types, where each block is a multiple of the 8x8 tile size, often 16x16; then have a table that defined attributes for each block, including how it is drawn and whether it is solid or not. The main character’s movement is tested against the blocks (or “meta tiles”), with the X and Y movements restricted by blocks that are solid.

So if if after applying movement, the character’s top edge is inside a solid block, and they are moving up, they “zip” to its edge, and maybe the Y velocity is zeroed. If the player’s bottom edge is inside a solid block, and they are falling, then zip them to the top and change their state to not falling.

It’s then possible to add special behaviour to blocks and maybe even to put the block map in RAM so you can modify it at runtime, if the game needs that.
  View user's profile Send private message Visit poster's website
  • Joined: 04 Jul 2010
  • Posts: 542
  • Location: Angers, France
Reply with quote
Post Posted: Wed Sep 20, 2023 8:39 am
As maxim said,

* with a collision map
or
* using the 3 unused bits of each tilemap tile definition (bit 31,30,29)
  View user's profile Send private message
  • Joined: 30 Nov 2017
  • Posts: 74
Reply with quote
Post Posted: Wed Sep 20, 2023 12:11 pm
Wow! That looks awesome so far! Good luck with this! I hope you are able to see it through to completion!
  View user's profile Send private message
  • Joined: 19 Jan 2022
  • Posts: 8
  • Location: Chile
Reply with quote
Post Posted: Thu Sep 21, 2023 9:09 pm
It looks very striking, keep it up! although the character sizes will undoubtedly have to be reduced a little, given the enormous size of bonk.
  View user's profile Send private message
  • Joined: 16 Jan 2007
  • Posts: 16
  • Location: Pennsylvania, USA
Reply with quote
Post Posted: Thu Sep 21, 2023 11:35 pm
Nekketsu wrote
It looks very striking, keep it up! although the character sizes will undoubtedly have to be reduced a little, given the enormous size of bonk.


Bonk is 3x4 8x8 tiles which is the same as the NES sprite for Bonk, is that too many tiles for an SMS sprite? I do understand you can't have more than 8 sprites drawn per scanline at a time but he's pretty much sized appropriately for the Background graphics compared to the other versions.

  View user's profile Send private message
  • Joined: 05 Sep 2013
  • Posts: 3827
  • Location: Stockholm, Sweden
Reply with quote
Post Posted: Fri Sep 22, 2023 8:06 am
EmOneGarand wrote
Bonk is 3x4 8x8 tiles which is the same as the NES sprite for Bonk, is that too many tiles for an SMS sprite?


No, both the SMS and the NES share the same max-8-sprites-per-line limit, so don't worry :)
  View user's profile Send private message Visit poster's website
  • Joined: 04 Jul 2010
  • Posts: 542
  • Location: Angers, France
Reply with quote
Post Posted: Fri Sep 22, 2023 12:22 pm
EmOneGarand wrote
Bonk is 3x4 8x8 tiles


Maybe better to use 6 x 8x16 sprites ;)
  View user's profile Send private message
  • Joined: 16 Jan 2007
  • Posts: 16
  • Location: Pennsylvania, USA
Reply with quote
Post Posted: Tue Oct 17, 2023 11:35 pm
Update

I've implemented collision with the ground though I need to rework it a bit as its causing very noticeable slowdown but it works currently. I also got scrolling to work though I can't seem to get the column to remain in the first column thats blacked out as its drawn so you can see it pop in at the far right as the column is updated, also I need to fix a bug that makes it draw the wrong column of tiles when you walk right after walking left. Overall I think its very good progress.

  View user's profile Send private message
  • Joined: 23 Jan 2010
  • Posts: 437
Reply with quote
Post Posted: Wed Oct 18, 2023 12:24 am
Wonderful music. Close to original.
  View user's profile Send private message
  • Joined: 12 Nov 2022
  • Posts: 1
  • Location: Canada
Reply with quote
Post Posted: Wed Dec 13, 2023 8:32 pm
Very cool
  View user's profile Send private message
  • Joined: 23 Sep 2016
  • Posts: 37
  • Location: Arkansas
Reply with quote
Post Posted: Wed Jan 17, 2024 8:14 am
I loved playing Bonk's Adventure on NES so much. Seeing your SMS version, and how close it looks to the PC Engine version is incredible! Also, love the Bonk's Revenge sprites being used.

I really hope to see where this goes, and hope it's finished one day. Always made me really sad that Bonk had never graced any of the SEGA systems.
  View user's profile Send private message
  • Joined: 30 Nov 2017
  • Posts: 74
Reply with quote
Post Posted: Wed Jan 17, 2024 8:52 pm
Really looking forward to this as well. There have been some incredibly awesome ports to the SMS recently. This, Castlevania, Ninja Turtles and Mega Man 2 are greatly anticipated. Hoping they all see the light of day.
  View user's profile Send private message
Reply to topic



Back to the top of this page

Back to SMS Power!