Jump to content

Photo

Space Rocks (2600)


617 replies to this topic

#1 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Mon Apr 30, 2012 9:19 PM

EDIT: link to Release Candidate 7 - fixed for Harmony Encore (Reply #609 on June 24, 2017)

While working on Frantic, I wondered if the sprite driver could handle even more sprites if it didn't have a playfield to update. That lead to an experiment with 50 sprites, which was successful.

50 sprite experiment (not all are visible due to flicker)
50 sprites.png

50 is a handy number for the game Asteroids. It's progression of 1 Large -> 2 Medium -> 4 Small asteroids means the I can handle the worst case arcade scenario, which is starting a level with 12 large asteroids and not shooting any small asteroids until all the large and medium asteroids have been hit. 12 large asteroids -> 48 small asteroids, thus 48 asteroids + 1 ship + 1 UFO is the most sprites needed for Asteroids.

Player and UFO shots are handled by the missiles and ball. Up to 6 can be going at once, with 4 allocated to the player.

The experiment has progressed far enough along to now be shared in the homebrew forum.

Menu Options:

  • Players (disabled): 1, 2, co-op and possibly tethered (like Space Duel)
  • Style: selects vector or solid sprite set
  • Level (disabled): kids, beginner, normal or advance
  • Down (joystick): nothing, shields, hyperspace or 180(flip)
  • Friction: yes, no (controls if ship slows to a stop by itself)
  • Bonus Life: no, 5K, 10K or 20K

spacerocks.bin_1.png

Here's a screenshot of the vector style graphics. The digit to the right is the reserve ship count.
spacerocks.bin.png

Screenshot of the solid style graphics, the saucer has just been taken out.
spacerocks.bin_2.png

Nathan Strum's signed on to do the graphics, what's in place is the (extra chunky) graphics I borrowed from Asteroids. Sound effects are mostly borrowed from Frantic, and will be revised in the coming weeks. And speaking of Frantic, yes, it's on the back burner again.

If you're playing this in Stella, be sure to turn on phosphor mode or the flicker will probably annoy you!

  • open Space Rocks with Stella
  • hit TAB for the in-game-menu
  • select Game Properties
  • Select the Display tab
  • change Use Phosphor to Yes
  • click OK
  • select Exit Menu
  • Reload the ROM (Control-R)

NOTE: this is an early version of Space Rocks. Use the link at top of this post to get to the reply with the latest version.
ROM for Harmony or Stella (version 3.5 or later)
Attached File  spacerocks20120430.bin   32KB   951 downloads


Edited by SpiceWare, Sat Jun 24, 2017 7:04 AM.


#2 accousticguitar OFFLINE  

accousticguitar

    Quadrunner

  • 6,672 posts
  • Sherlock made it to 15 before he left us.
  • Location:Idaho

Posted Tue May 1, 2012 7:37 AM

This is amazing! :-o

It would seem the kid's version progresses fairly quickly to what I would call an "adults version" (in my opinion). I would say it's about perfect for me, but for actual younger players you might want to slow it down a bit, or perhaps implement a "Teddy Bear" version which is slower than the kid's version.

#3 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,407 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Tue May 1, 2012 8:24 AM

Awesome!

I hope that you'll make a PAL60 version too (as usual).

#4 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Tue May 1, 2012 9:12 AM

Thanks!

Different level selection isn't implemented yet. It currently starts out at using the slowest speeds and progresses to the fastest as you clear each board. My routine supports the asteroids going in 16 different directions at 16 different speeds. The levels currently progress:
  • level 1 = speeds 1-4
  • level 2 = speeds 1-5
  • ...
  • level 12 = speeds 1-15
  • level 13 = speeds 1-16
  • level 14+ = speeds 1-16
For the kids level I'm thinking
  • limit speed to what's currently seen on the first 2 waves.
  • still increase asteroids up to 12
  • limit asteroid breakage (either always break into just 1 piece, or 1 Large -> 2 Medium and 1 Medium -> 1 Small)
  • unlimited shields (and no other selection for down)
For the other 3 levels I think I'll change how quickly the speed ramps up
  • beginner, increase speed every 4th board
  • normal, increase speed every other board
  • advance, increase speed every board (like now)
I've got it set up for PAL60 but didn't think to build an executable for it last night. I'll do that with the next update.

#5 edweird13 OFFLINE  

edweird13

    Stargunner

  • 1,007 posts
  • Location:SW Missouri

Posted Tue May 1, 2012 9:30 AM

I just tried this and it is fantastic. Wish the original was this good.

#6 save2600 OFFLINE  

save2600

    Quadrunner

  • 14,321 posts
  • Location:Wisconsin

Posted Tue May 1, 2012 10:12 AM

I just sold my mint Asteroids arcade machine, so am looking forward to this for play with the Starplex controller! :)

#7 trent OFFLINE  

trent

    Chopper Commander

  • 121 posts
  • Location:Boise, ID

Posted Tue May 1, 2012 11:20 AM

Excellent!

P.S. That screenshot looks like Centipede. Hint hint.

#8 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Tue May 1, 2012 12:59 PM

Centipede plays extremely well, it just doesn't look that good. Swapping out the playfield mushrooms out for sprite mushrooms to improve the looks would result in way too much flicker.

I tried a couple experiments, posted at the bottom of this blog entry, after being asked about Robotron. Both tests had worse flicker than seen in Pac-Man's ghosts.

#9 jeffgamer OFFLINE  

jeffgamer

    Chopper Commander

  • 216 posts

Posted Wed May 2, 2012 4:47 PM

Any plans to release on cart? :-)

#10 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Wed May 2, 2012 8:07 PM

when it's done, but there's no deadline for when that will be.

Edited by SpiceWare, Wed May 2, 2012 8:07 PM.


#11 TrekMD OFFLINE  

TrekMD

    River Patroller

  • 3,328 posts
  • Location:Coral Gables, FL

Posted Wed May 2, 2012 9:24 PM

That looks great! Very impressive!

#12 accousticguitar OFFLINE  

accousticguitar

    Quadrunner

  • 6,672 posts
  • Sherlock made it to 15 before he left us.
  • Location:Idaho

Posted Thu May 3, 2012 5:07 AM

Thanks!

Different level selection isn't implemented yet. It currently starts out at using the slowest speeds and progresses to the fastest as you clear each board. My routine supports the asteroids going in 16 different directions at 16 different speeds. The levels currently progress:

  • level 1 = speeds 1-4
  • level 2 = speeds 1-5
  • ...
  • level 12 = speeds 1-15
  • level 13 = speeds 1-16
  • level 14+ = speeds 1-16
For the kids level I'm thinking
  • limit speed to what's currently seen on the first 2 waves.
  • still increase asteroids up to 12
  • limit asteroid breakage (either always break into just 1 piece, or 1 Large -> 2 Medium and 1 Medium -> 1 Small)
  • unlimited shields (and no other selection for down)
For the other 3 levels I think I'll change how quickly the speed ramps up
  • beginner, increase speed every 4th board
  • normal, increase speed every other board
  • advance, increase speed every board (like now)

Sounds good to me. :thumbsup:

#13 PacManPlus OFFLINE  

PacManPlus

    River Patroller

  • 4,635 posts
  • Atari 7800 & NES Developer
  • Location:Florida

Posted Thu May 3, 2012 5:11 PM

Looking forward to this :love:

#14 littleman jack OFFLINE  

littleman jack

    Stargunner

  • 1,360 posts
  • One day I will build tube amps.
  • Location:Chattanooga, TN

Posted Thu May 3, 2012 8:51 PM

Yes. Seconded. Looking forward to this!

#15 Legend OFFLINE  

Legend

    Moonsweeper

  • 346 posts
  • Location:Antioch, CA

Posted Thu May 3, 2012 9:35 PM

still thinking of doing the asteroids/asteroids deluxe/space duel combo with this?

#16 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Fri May 4, 2012 9:22 AM

It probably won't be a true combo, just aspects of each which can be selected from the menu - such as the DOWN menu's options of Shields (asteroids) and Hyperspace(deluxe).

I think the only graphics choice will be solid or vector images. That could change, but I'm not currently planning on it as I don't think Space Duel's 3D rotating multicolor geometric shapes can be effectively done using 8 pixel monochrome sprites. While it's not in place yet, the rocks will always rotate - in asteroids they don't.

Next update will most likely be next week as I'm currently working on the sprite converter tools. I'm writing them so that they'll automatically create a "vector" image from a solid image. The normal size converter is done:
vector3.png

I hope to finish the 2X sprite converter(used for the largest rocks) in the next day or two. It's a bit more complicated because each row of the sprite can be shifted left or right to make the 2X sprites look smoother (like the dolphin and squid in Dolphin, and the dragon in Medieval Mayhem).
Posted Image

Posted Image

Without the shifting, the 2X sprites are rather chunky looking, like Donkey Kong up there by Pauline, or the gun men in Outlaw
Posted Image

Posted Image

I post the more technical stuff in my blog, so you can read up about that there if you're interested.

Edited by SpiceWare, Fri May 4, 2012 9:23 AM.


#17 Nathan Strum ONLINE  

Nathan Strum

    Quadrunner

  • 7,407 posts
  • Enjoying a sandwich
  • Location:Newhall, CA

Posted Fri May 4, 2012 8:47 PM

That could change, but I'm not currently planning on it as I don't think Space Duel's 3D rotating multicolor geometric shapes can be effectively done using 8 pixel monochrome sprites.


Hmm... sounds like a challenge. ;) (Although I agree the results would probably less-than-spectacular on the 2600.)

More of a problem might be tethering the ships in two-player mode. The 7800 version couldn't manage that one.

#18 Philsan OFFLINE  

Philsan

    River Patroller

  • 3,407 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Sat May 5, 2012 12:54 AM

I hope to finish the 2X sprite converter(used for the largest rocks) in the next day or two. It's a bit more complicated because each row of the sprite can be shifted left or right to make the 2X sprites look smoother (like the dolphin and squid in Dolphin, and the dragon in Medieval Mayhem).

I post the more technical stuff in my blog, so you can read up about that there if you're interested.

Didn't know anything about sprites row shift. Wonderful!

#19 PacManPlus OFFLINE  

PacManPlus

    River Patroller

  • 4,635 posts
  • Atari 7800 & NES Developer
  • Location:Florida

Posted Sat May 5, 2012 5:20 AM

That could change, but I'm not currently planning on it as I don't think Space Duel's 3D rotating multicolor geometric shapes can be effectively done using 8 pixel monochrome sprites.


Hmm... sounds like a challenge. ;) (Although I agree the results would probably less-than-spectacular on the 2600.)

More of a problem might be tethering the ships in two-player mode. The 7800 version couldn't manage that one.


Yeah :( - I was talking to Own Rubin at the time and he was going to try and find me the source code listing / table for the tethering. IIRC he couldn't find it.
If you are able to find a good way to do it and are willing to share, I will revisit the 7800 version at some point and try to put it in there.

Bob

#20 trent OFFLINE  

trent

    Chopper Commander

  • 121 posts
  • Location:Boise, ID

Posted Sat May 5, 2012 7:38 AM

Wouldn't Thrust have some tethering code?


#21 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Sat May 5, 2012 8:20 AM

More of a problem might be tethering the ships in two-player mode. The 7800 version couldn't manage that one.

Yeah, I don't know how that'll be done yet.

If you are able to find a good way to do it and are willing to share, I will revisit the 7800 version at some point and try to put it in there.

Always! Of course I'm using the ARM for my game logic so it might not be too helpful.

Wouldn't Thrust have some tethering code?

Yes it does. It's a little more complex in Space Duel because both ships can provide thrust, but it would probably be a good starting point.

#22 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Sat May 5, 2012 9:00 AM

Didn't know anything about sprites row shift. Wonderful!


It's a slick trick. I noticed it while playing Dolphin in the 2600 HSC. After that I tracked down Scott Stilphen's An interview with Matthew Hubbard, where he goes over it. This was around the time I started working on Medieval Mayhem and it became the basis for the dragon.

SS: How did the idea for Dolphin come about?
MH: I wanted to make a game where the main characters were a little bigger than normal on the 2600, using double-size mode and line-by-line single pixel shifting. I experimented with making a dolphin animation, and everyone who saw the early screens knew immediately that the pixels represented a dolphin, so I moved forward from there.



#23 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Sat May 5, 2012 7:12 PM

  • animation in place
  • support for multiple rock shapes for each size (testing with 2 for each)
  • UFO in place. Smaller target, shoots more frequently. The targeting AI has not yet been written, so it aims just as poorly as the saucer.
  • Fixed a bug where your ship could be invisible for 4.2 seconds after it respawns (and yes, it could still collide with things while invisible :-o )
Rocks in various states of rotation
spacerocks20120505_NTSC.bin_1.png

ROMs - Harmony or Stella1
Attached File  spacerocks20120505_NTSC.bin   32KB   456 downloads
Attached File  spacerocks20120505_PAL.bin   32KB   424 downloads

1 Requires Stella ver 3.5 or later. See first post for instructions on how to reduce flicker.

#24 accousticguitar OFFLINE  

accousticguitar

    Quadrunner

  • 6,672 posts
  • Sherlock made it to 15 before he left us.
  • Location:Idaho

Posted Sun May 6, 2012 8:50 AM

This just keeps getting better! Things get hectic after about 40,000 points. I do think some of the rocks rotate a little too fast.

#25 SpiceWare OFFLINE  

SpiceWare

    Draconian

  • Topic Starter
  • 11,582 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Sun May 6, 2012 10:18 AM

I do think some of the rocks rotate a little too fast.

That they do, and sometimes a little too slowly. But it doesn't make sense for me to fine-tune the speeds now, when there's only 2 and 4 frames of animation, as I'll have to do it again when Nathan's sends in the graphics.

Normally animation routines are set up to support a power of 2 for the frames of animation (2, 4, 8, 16, etc) as that's very quick to process and the Atari doesn't have any spare time. Since I'm running the game logic on Harmony/Melody's ARM chip, I have extra processing time and wrote these routines to support any number of frames. Currently most are power of 2 (asteroids, UFO) as it was easy for me to hack up some graphics, though the saucer has 5 frames of animation as that's what I needed for the rotation effect.




0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users