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 - Sunny the Mermaid - development thread

Reply to topic Goto page Previous  1, 2
Author Message
  • Joined: 17 Jan 2020
  • Posts: 118
  • Location: Brisbane, AU
Reply with quote
Post Posted: Tue Apr 26, 2022 11:17 pm
sverx wrote
it mostly depends if you're developing for NTSC (60 fps) or PAL (50 fps) as the vblank duration is much different.
worst case scenario, NTSC, you have 15820 cycles max in vblank, and you probably need to update SAT too, and to copy 1 byte from ROM to VRAM it's going to cost you at least 16 cycles, not counting the overhead...
you likely can go up to 20 tiles per frame, I'd say.


@sverx Is this in the development documentation somewhere? I was interested in this value because I wanted to speed up my decompression routines but I wasn't able to find any information on the vblank cycles count.
  View user's profile Send private message Visit poster's website
  • Joined: 04 Jul 2010
  • Posts: 539
  • Location: Angers, France
Reply with quote
Post Posted: Wed Apr 27, 2022 5:07 am
Its somewhere on the forum but you can easily (re)calculate it.

Ntsc 60hz:
262 scanlines (total), 192 (active part), so 70 (vblank) * 228 cycles/scanlines = 15960 cycles (in vblank)

Pal 50hz: 313 scanlines (total), 192 (active part), so 121 (vblank) * 228 cycles/scanlines = 27588 cycles (in vblank)

PS. For "basic" pal video mode not extended.
  View user's profile Send private message
  • Joined: 15 Aug 2019
  • Posts: 258
  • Location: Lancashire UK
Reply with quote
Post Posted: Thu Apr 28, 2022 12:24 pm
Really looking forward to this one Kagesan!! So far it looks great from what I've seen mate.
  View user's profile Send private message Visit poster's website
  • Joined: 17 Sep 2013
  • Posts: 128
  • Location: Gravataí, RS, Brazil
Reply with quote
Post Posted: Tue May 03, 2022 1:02 am
ichigobankai wrote
Its somewhere on the forum but you can easily (re)calculate it.

Ntsc 60hz:
262 scanlines (total), 192 (active part), so 70 (vblank) * 228 cycles/scanlines = 15960 cycles (in vblank)

Pal 50hz: 313 scanlines (total), 192 (active part), so 121 (vblank) * 228 cycles/scanlines = 27588 cycles (in vblank)

PS. For "basic" pal video mode not extended.


Plus, if one really needs extra vblank time, can aways disable the screen prior to the end of the 192 lines. Or at least, put the VDP into Text Mode.
  View user's profile Send private message
  • Joined: 01 Feb 2014
  • Posts: 844
Reply with quote
Post Posted: Sat Jan 21, 2023 11:40 am
I'm happy to report that the project is not dead yet. 2022 was a crazy year at works, which left me with very little time to spend on my hobbies, and development of my game all but grinded to a halt. Now it seems that things are looking a bit better, and I'm going back to the project with renewed enthusiasm.

Picking up from my last progress update almost a year ago, I have finally managed to implement player/background collision in a way that feels satisfactory. Due to the expressive movement anmation I eventually settled on a kind of elongated octagon shape to check for background collisions. This was already much better than a simple square, but it still felt like you could be blocked by a solid background block even though you weren't actually touching it.

When I'm designing a game, my philosophy is to have it always act in the player's favor, because ultimately, a game's purpose is that the player has a good time. So I decided to help the player along a little. If you hit a solid block only just, with just a couple of pixels on the edge of the sprite, the player sprite will be moved in the right direction slightly to overcome the obstacle semi-automatically. Finally, the handling feels as smooth as it should. And I can still keep my expressive swimming animation. Phew!

While I was at it, I also implemented harmful background blocks. If the player touches one of them, the player is pushed back a little and takes damage. Normally, I'm not a huge fan of pushback actions like that (for example I hate them in the later Turrican games), but in this game they are a necessity, as they transport the player out of harm's way quickly in order to avoid chain-hits.

Next up will be the implementation of player death and game over sequences both for running out of health and for running out of time.

On the side, I'm working on some sound effects, which always is a huge amount of fun. Making FM sound effects for the Mark III for the first time is an interesting experience, but so far they seem to work quite well.
ouch.gif (101.21 KB)
background collision demo
ouch.gif

  View user's profile Send private message
  • Joined: 04 Jul 2010
  • Posts: 539
  • Location: Angers, France
Reply with quote
Post Posted: Sat Jan 21, 2023 1:36 pm
Love the hurt frame ^^
  View user's profile Send private message
  • Joined: 04 Nov 2004
  • Posts: 273
Reply with quote
Post Posted: Sat Jan 21, 2023 3:30 pm
Quote
While I was at it, I also implemented harmful background blocks. If the player touches one of them, the player is pushed back a little and takes damage. Normally, I'm not a huge fan of pushback actions like that (for example I hate them in the later Turrican games), but in this game they are a necessity, as they transport the player out of harm's way quickly in order to avoid chain-hits.


Wow, that sounds harsh :) Especially considering these games probably wouldn't exist without that change (and others). In T1/T2 you can lose a life much too quickly if you are not careful. So if N/S ordered you to change that, how would you do it?
  View user's profile Send private message Visit poster's website
  • Joined: 01 Feb 2014
  • Posts: 844
Reply with quote
Post Posted: Sat Jan 21, 2023 4:03 pm
Martin wrote
In T1/T2 you can lose a life much too quickly if you are not careful. So if N/S ordered you to change that, how would you do it?

I guess it depends on what you’re used to. I always found damage handling in T1/T2 perfectly fine, as the games are built around it, and going into Super, Mega or T3 with that expectation made them feel all wrong to me. Of course the different handling there works fine too once you adapt to it, as, naturally, those games are built around that instead.

To be precise, it’s not the fixed amount of damage done by touching an enemy that I dislike, it’s the actual knockback. In the Turricans it’s mostly okay, as there aren’t a whole lot of bottomless pits you can be knocked into, but in some Castlevania games for example it can get really annoying.

I think you could get around it by being generous with i-frames, so the player can remove himself from danger, but you’d have to take it into consideration when designing your levels.

But hey, now that I’m using knockback too, maybe I have to reconsider my stance on its implementation in some games where I used to dislike it. ;)
  View user's profile Send private message
  • Joined: 28 Jan 2017
  • Posts: 540
  • Location: Málaga, Spain
Reply with quote
Post Posted: Sat Jan 21, 2023 5:38 pm
Lol... very nice the sprite of sunny, Kagesan.

Why the info columns at right??? are you planning scrolling on the game???

Also, i agree with the importance of keep the things easy and playable.

Only a suggestion... maybe sunny has eaten too much in christmas?? I found the sprite maybe a bit "wide"... maybe she could collaborate (doing sport or a diet) with the playability of the game.

Regards.
  View user's profile Send private message
  • Joined: 01 Feb 2014
  • Posts: 844
Reply with quote
Post Posted: Sat Jan 21, 2023 6:02 pm
eruiz00 wrote
Why the info columns at right??? are you planning scrolling on the game???

The info columns show three things: The current health, the time left for completing the game, and the item currently in use. The plan is to keep the info columns and switch between game screen and map/inventory screen by moving them from the right edge to the left and back. Similar to how Link's Awakening does it, but horizontally instead of vertically.

There will not be any scrolling in the playing area this time, the game is a classic flip-screen action adventure.

eruiz00 wrote
Only a suggestion... maybe sunny has eaten too much in christmas?? I found the sprite maybe a bit "wide"... maybe she could collaborate (doing sport or a diet) with the playability of the game.

Oh no, she’s supposed to be a little chubby. I always like my game characters to veer off the beaten track and there are already slim mermaids in pop culture aplenty. The chubby ones need love too.
  View user's profile Send private message
  • Joined: 16 Oct 2022
  • Posts: 41
Reply with quote
Post Posted: Sat Jan 21, 2023 6:46 pm
It looks really charming, great stuff. I love the reaction to the collision, it really sells it.

On Sunny's dimensions, I actually think she could stand to be even more portly, myself!! :D
  View user's profile Send private message
  • Joined: 23 Mar 2013
  • Posts: 611
  • Location: Copenhagen, Denmark
Reply with quote
Post Posted: Sat Jan 21, 2023 10:12 pm
Thanks for the update! And nice progress w. hurt animation and background collision. It is impressive that you manage to keep working on this same game as time goes by - very inspiring!
  View user's profile Send private message Visit poster's website
  • Joined: 16 May 2002
  • Posts: 1355
  • Location: italy
Reply with quote
Post Posted: Sat Jan 21, 2023 10:25 pm
I don't usually comment about these things, but you shouldn't change any pixel of that sprite, in my opinion, she is gorgeous. We already have enough wrong models who encourage anorexia.

Also, bonus points for choosing not to merely flip the sprite art. Your attention to details is always top notch.
  View user's profile Send private message Visit poster's website
  • Joined: 01 Feb 2014
  • Posts: 844
Reply with quote
Post Posted: Sun Jan 22, 2023 9:41 am
Thank you all for the nice feedback and the encouragement, much appreciated. It means a lot to me.
  View user's profile Send private message
  • Joined: 01 Feb 2014
  • Posts: 844
Reply with quote
Post Posted: Mon Sep 18, 2023 12:11 pm
Progress is still going on at a pace that can only be described as glacial, but I wanted to show you this guy really quick. In the game he will function as some kind of minor boss character, so I thought I could afford a few frames of animation more than I would grant any of the regular enemies.

He turned out slightly more cartoon-ey than I thought, but my sprite palette is a little short on blu-ish hues.
stm_shark.gif (11.6 KB)
sharky
stm_shark.gif

  View user's profile Send private message
  • Joined: 04 Jul 2010
  • Posts: 539
  • Location: Angers, France
Reply with quote
Post Posted: Mon Sep 18, 2023 1:24 pm
I always found the sharks in Alex Kidd in Shinobi World malicious ^^

  View user's profile Send private message
Reply to topic Goto page Previous  1, 2



Back to the top of this page

Back to SMS Power!