Jump to content
  • entries
    657
  • comments
    2,702
  • views
    902,498

The Story of Stay Frosty 2, Part 3


SpiceWare

2,112 views

After posting the 9/13/2010 build some ideas starting rolling in. Sadly, like this one, they didn't all make the cut:

He needs to be able to shoot his nose carrot. Like a missile.

 

cd-w suggested a way to display the lives remaining, score and level at the same time, as seen in his Pssst! Kernel. It's very slick, but would have required the use of a 3 pixel wide font and I really liked the "frosty font" that Nathan designed for the original Stay Frosty - so we ended up using an alternating score/lives-level display instead. The alternating display was done to give extra horizontal space for the platform/ice section of the screen.

 

In Stay Frosty the repositioning of the fireballs causes an HMOVE bar to show up. It's not always visible, but if you check out the snowman's hat you'll see there's a black line going thru it. For Stay Frosty 2 I wanted to eliminate the HMOVE bar, so the next thing I did was figure out how to do that.

blogentry-3056-0-13477400-1420240447_thumb.png

 

Some further discussion took place and I felt the ideas were getting to be a little overwhelming for a December 2010 release, so I laid out my goals for Stay Frosty 2:

When I play Stay Frosty I see a really cool concept that wasn't fully realized due to time constraints and lack of play testing (due in part to the number of concurrent games being developed for Stella's Stocking). Specifically a number of levels are quite boring, the difficulty doesn't ramp well and the puzzle element is lacking. The few glimpses of the puzzle element (the level where a specific fireball triggers an elevator, a level where you must be melted to get to a fireball, and another where you must immediately jump over the ice so you can use it later to rebuild yourself) just tease about what could be.

 

Besides fixing the issues I see with the initial game, I want to make the levels bigger (full screen width and up to 6 layers instead of PF1/PF2 and 5 layers) and add snowballs, stretching, additional fireball sizes and a free-roaming elevator that's not tied to a platform layer. I feel that's enough for a sequel (it's along the lines of Spryo 2 - bigger levels, new abilities), but wouldn't be against looking at more if time permits.

 

batari then put in a request, which I believe has become one of the defining features of Stay Frosty 2:

What I'd really like to see is in-game music. If you could spare 5 cycles during the kernel and don't mind placing AUDV0 writes about once per scanline outside the kernel, we could have three-voice in-game music, and that would make the game much nicer than the original while showing off Melody features. I'd produce the music scores if you'd be willing to do that. You'd still have the extra channel for in-game sounds.

 

I'd planned on using missile0 to draw the snowball, but remembered it was used to draw the snowman's melt trail in Stay Frosty. I thought the melt trail was one of the coolest details of the game, so didn't want to get rid of it. I put forth some ideas, like flickering the missile to draw both, or using the ball to draw the snowball. Both had issues though - using flicker would make it impossible to use hardware collision detection(as the fireballs also flickered), while using the ball would result in odd color changes as the snowball flew across the screen (because the ball object takes on the color of the playfield which is used to draw the ice blocks and platforms). supercat came up with the solution, use player0 to draw both the snowman and the melt trail. On the last line of the snowman, just change player0 to be a 2X sprite and shift if to the left if the snowman was moving right. It was a long time before it worked correctly - it was especially tricky to get the melt trail to move around on its own, and to not extend beyond the edge of a platform. This behavior was already established in Stay Frosty so it need to be there in the sequel.

 

At this point I started working on the new kernel. First thing done was to use DPC+ to make the platforms and ice go the full width of the screen.

blogentry-3056-0-93578100-1420241063_thumb.png

 

Compare that with Stay Frosty which, due to limited cycle time, only used PF1 and PF2 on a reflected screen. This meant you could always drop down the right or side to get to the bottom.

blogentry-3056-0-62147100-1420241053_thumb.gif

 

Then I implemented the early HMOVE routines to reposition the fireballs, and added the ability to change color and size of player1 so we could add new types of objects. While it ran on Stella, it would crash on the Harmony. supercat figured out that having an LDA #xx command immediately after a branch caused problems with DPC+'s Fast Fetch mode. Minor rearrangement of code fixed the problem, though this issue would crop up periodically during the development of Stay Frosty 2.

blogentry-3056-0-48782900-1420241068_thumb.png

 

Finally I made a build to figure out the limits for the kernel:

  • Smallest zone height = 19 (screen shot is using 19).
  • height of object in zone = zone height-6. Taller objects will be shown, but cropped.
  • height of zone = 24 will display large fireball without cropping
  • height of zone = 28 exactly fits Frosty
  • Up to 9 levels of platforms.

blogentry-3056-0-23247100-1420240455_thumb.png

sf2_20100927.bin

 

The ROM works in both Stella and Harmony. Use the left joystick to move the snowman around the screen, and the right joystick to move the fireballs left/right.

 

Note: Due to incomplete audio routines you'll hear noise on a real Atari, so you may want to turn down the volume.

 

 

Blog entry covers September 13 - 27, 2010

0 Comments


Recommended Comments

There are no comments to display.

Guest
Add a comment...

×   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...