Sonic and Sega Retro Message Board: Best way to scale SMS zones to MD engine? - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help
Page 1 of 1
    Locked
    Locked Forum

Best way to scale SMS zones to MD engine?

#1 User is offline Sodaholic 

Posted 17 September 2014 - 10:32 AM

  • Colony ship for sale, cheap!
  • Posts: 1004
  • Joined: 05-September 04
  • Gender:Male
  • Location:Ohio
This is something I've been thinking about as of late, and I wanted to hear your thoughts on it.

The Aspect engine allowed Sonic to run at 4 pixels per frame and jump roughly 96 pixels tall, just barely able to make it over 3 blocks high. The Ancient engine allowed Sonic to run at 3 pixels per frame and jump roughly 80 pixels tall, but was still able to make it over 3 blocks by "stepping up" by about 16. Despite these differences, it would seem that the physics could be roughly interchangeable without too much negative impact on gameplay (though Aspect's physics may allow Sonic to clear wider gaps). Sonic does accelerate far more quickly than in the MD games, however. He does accelerate at the same speed between Ancient and Aspect physics, just takes longer in the latter due to the higher max speed.

Because of this, I think it'd be best to leave the levels at 1.0x scale vertically. Horizontally, however, I'm not sure what the best solution would be. Rings are often just 16 pixels apart, which is only really seen in SCD (and only on occasion) in the 16-bit line, most of the time it's 24 pixels apart leaving an 8 pixel gap between the far edges. One could leave it horizontally 1.0x scale and allow the acceleration to remain roughly the same, but the 6 pixel max speed would allow him to clear wider gaps, finish levels quicker and as a result make the levels feel too small.

Therefore I thought that maybe 1.5x could be appropriate for maintaining the 48 pixel gap between rings and making the 4 pixel SMS max speed match up with the 6 pixel MD max speed. However, this would result in less view than the SMS games (though still more than the GG view size) and would make the proportions different than as viewed in the SMS games. Another solution could be to do a 1.33x horizontal scale so that it results in the same physical/graphical proportion as viewed in the SMS games, and make for a balance between the discrepancies in max speed vs. acceleration rate. Not sure what it would mean for ring placement, however (though it'd all need to be tweaked by hand anyway given that it's somewhat messy in placement, especially in S2 SMS).

Good approach? Or am I going about it all wrong?

#2 User is offline Hez 

Posted 17 September 2014 - 01:28 PM

  • Asshole
  • Posts: 2592
  • Joined: 11-January 03
  • Gender:Male
  • Location:Hell
  • Project:Your mother
  • Wiki edits:27
What is your main goal? MD = MegaDrive assuming.

There are more than just the above to consider when converting them.

#3 User is offline Sodaholic 

Posted 17 September 2014 - 02:54 PM

  • Colony ship for sale, cheap!
  • Posts: 1004
  • Joined: 05-September 04
  • Gender:Male
  • Location:Ohio
Yeah, MD referring to Mega Drive. I'm busy with other things and wouldn't have any time to devote to converting the SMS levels to the 16-bit style engine, but the subject of how to go about it interests me regardless. So my goal is to figure out what the ideal method would be for a starting point, and how literally one would want to translate the levels. Another large consideration would be how to do it cleanly in 128x128 chunks.

Sonic Advance appears to run at 75% scale with 96x96 chunks, Sonic going about 4 to 5 pixels (4.5 would be the right amount if directly translating MD physics) and also jumping roughly 72-80 pixels from what I can tell. It'd be relatively easy to just go "oh, well just scale the 96x96 chunks to 128x128 ones", but it isn't as clear cut for the SMS games. I suppose one could try a similar method on the SMS games and put a ramp in the sections that Sonic would need to scale a 3 block high wall.

Aside from slope physics, jumping perpendicular to the floor and not just straight up, and not automatically losing your horizontal momentum mid-air, what other important considerations need to be taken into account in your opinion?

#4 User is offline The Growler 

Posted 17 September 2014 - 04:11 PM

  • Posts: 958
  • Joined: 05-January 07
  • Gender:Male
  • Location:Sheffield, UK
Yes! I've been hoping someone would eventually convert the SMS Sonic games to the Mega Drive; I remember Sonic 1 and Sonic Chaos being my favourite games for the SMS when I was little Posted Image

Shouldn't this be in the Engineering & Reverse Engineering forum though?
This post has been edited by The Growler: 17 September 2014 - 04:11 PM

#5 User is offline Hez 

Posted 18 September 2014 - 11:39 AM

  • Asshole
  • Posts: 2592
  • Joined: 11-January 03
  • Gender:Male
  • Location:Hell
  • Project:Your mother
  • Wiki edits:27

View PostSodaholic, on 17 September 2014 - 02:54 PM, said:

Yeah, MD referring to Mega Drive. I'm busy with other things and wouldn't have any time to devote to converting the SMS levels to the 16-bit style engine, but the subject of how to go about it interests me regardless. So my goal is to figure out what the ideal method would be for a starting point, and how literally one would want to translate the levels. Another large consideration would be how to do it cleanly in 128x128 chunks.

Sonic Advance appears to run at 75% scale with 96x96 chunks, Sonic going about 4 to 5 pixels (4.5 would be the right amount if directly translating MD physics) and also jumping roughly 72-80 pixels from what I can tell. It'd be relatively easy to just go "oh, well just scale the 96x96 chunks to 128x128 ones", but it isn't as clear cut for the SMS games. I suppose one could try a similar method on the SMS games and put a ramp in the sections that Sonic would need to scale a 3 block high wall.

Aside from slope physics, jumping perpendicular to the floor and not just straight up, and not automatically losing your horizontal momentum mid-air, what other important considerations need to be taken into account in your opinion?

Well, to be honest, you're kind of trying to convert one entirely different thing into another. Basically, everything is different besides you both have a character that jumps and runs. You'd have an easier time converting Ristar levels into Sonic levels than SMS ones.

Do you just want the game to play on the MD? Do you want something like I did in Sonic Classic where I upscaled the graphics and 16-bitized em?

#6 User is offline Sodaholic 

Posted 18 September 2014 - 12:10 PM

  • Colony ship for sale, cheap!
  • Posts: 1004
  • Joined: 05-September 04
  • Gender:Male
  • Location:Ohio

View PostHez, on 18 September 2014 - 11:39 AM, said:

Well, to be honest, you're kind of trying to convert one entirely different thing into another. Basically, everything is different besides you both have a character that jumps and runs. You'd have an easier time converting Ristar levels into Sonic levels than SMS ones.
Eh, platforming is platforming. Everything would need to be hand-tweaked for sure, but I'm just looking for a good starting point/basis to generally preserve gameplay while using some kind of uniform scale.

View PostHez, on 18 September 2014 - 11:39 AM, said:

Do you just want the game to play on the MD? Do you want something like I did in Sonic Classic where I upscaled the graphics and 16-bitized em?
Sort of both, I'm trying to figure out the optimal level scale if it were to be roughly directly translated. My idea is currently as follows:

1.5x scale horizontal, 1.0x scale vertical, chop resulting area into 128x128 chunks. Use this as a reference while approximating it with real 128 chunks made from scaled (and unscaled) art.

What method did you use to attempt to preserve gameplay while scaling the levels? I think that art scaling should be considered separate from layout scaling.

#7 User is offline Qjimbo 

Posted 23 September 2014 - 02:51 PM

  • Your friendly neighbourhood lemming.
  • Posts: 4367
  • Joined: 17-February 03
  • Gender:Male
  • Location:Vancouver, BC
  • Wiki edits:69
Rika Chou's advanced edit hack does a good job of making a 16-bit version of Gigapolis Zone from Sonic Chaos - http://info.sonicret...:_Advanced_Edit . It's a pretty good example of "upscaling" an 8-bit level.
This post has been edited by Qjimbo: 23 September 2014 - 02:53 PM

#8 User is offline Hez 

Posted 23 September 2014 - 03:36 PM

  • Asshole
  • Posts: 2592
  • Joined: 11-January 03
  • Gender:Male
  • Location:Hell
  • Project:Your mother
  • Wiki edits:27
I'd personally start on graphics -- that is, unless you're keeping them the same. If that were the case, I'd then resize. Start there.

#9 User is offline KingofHarts 

Posted 23 September 2014 - 09:43 PM

  • Call me back when people stop shitting in the punch bowl...
  • Posts: 1480
  • Joined: 07-August 10
  • Gender:Male
  • Wiki edits:1
I'm working on something like this for my Sonic 1 hack... I also know of someone else doing something similar though I won't mention this person by name, they will reveal that when they are ready to... But yea... more or less it's really all about resizing, and then detailing the art to match Sonic 1, if you so choose.

For example, compare the grass in SMS GHZ and BZ... IIRC they are ALMOST identical, are they not? So wouldn't it stand to reason that a MD Bridge Zone in terms of ground terrain would be near identical to GHZ, aside from different ground patterns? (lines instead of checkers)


As for the bridges, I'd just say, use the GHZ Bridge and rotate the sprite and work from there. The GHZ rock would fit the rock in BZ, then for the see-saw, just compare the brown sphere on it to the brown sphere in the MD version's swinging bridge. Upscale the BZ object so that its sphere matches the GHZ object in size, and that should suit.

For each level, you may want slightly larger versions of the layouts to accomodate the engine you are porting to... not unlike how Adventure Generations has its levels ported to the Generations engine. If done right, it shouldn't be a straight up 1:1 scale.
This post has been edited by KingofHarts: 23 September 2014 - 09:43 PM

#10 User is offline ICEknight 

Posted 26 September 2014 - 03:36 AM

  • Posts: 9289
  • Joined: 11-January 03
  • Gender:Male
  • Location:Spain
  • Wiki edits:18

View PostHez, on 23 September 2014 - 03:36 PM, said:

I'd personally start on graphics -- that is, unless you're keeping them the same. If that were the case, I'd then resize. Start there.

I'd do the exact opposite, first start with crude blown up graphics in order to get the 128x128 chunks and the whole levels working correctly, then work on the graphics.

It would no doubt be more rewarding for the author, and I'm sure I'm not the only one who'd love to play something like this even if it doesn't look pretty, rather than just look at screen previews (as cool as they might be).


By the way, before scaling up the graphics, remember that some of them were designed to look correct with the SMS/GG aspect ratio.
This post has been edited by ICEknight: 26 September 2014 - 03:40 AM

Page 1 of 1
    Locked
    Locked Forum

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users