Jump to content
johnnywc

Scramble - 2600

Recommended Posts

Technically you would miss that target, because the playfield scrolling is delayed by 8 (?) frames. The problem is the illusion it would hit.

I think the bomb horizontal movement need to be tied with playfield scrolling, even if it means "choppy" trajectory.

Share this post


Link to post
Share on other sites

I think the bomb horizontal movement need to be tied with playfield scrolling, even if it means "choppy" trajectory.

I think this would look very odd. And I am pretty sure the software collision detection can be tweaked to fix the problem.

Share this post


Link to post
Share on other sites

The point is you miss that shoot.

In a smooth scrolling, that bomb will miss the target anyway.

My suggestion is about better feeling on the bomb trajectory. There's others ways to reduce the oddity, if the screen scrolls every 8 frames, you don't need to move the bomb 4 pixels every 8 frames, to tie with scrolling, you can move the bomb 2 pixels every 4 frames, in a way to reduce the discrepancy of 4 pixels PF shift.

I don't know if going to work, it's just a suggestion.

Share this post


Link to post
Share on other sites

The point is you miss that shoot.

In a smooth scrolling, that bomb will miss the target anyway.

How can you be so sure about that miss? IMO it is a corner case here.

 

I checked the screenshots again. Maybe the problem results from both (ground and bomb) moving in opposite directions at the same time?

Share this post


Link to post
Share on other sites

Here is, the top is how it scrolls now, 4 pixels every 8 frames, so if the bomb is on top of target at frame 7, its scrolls 4 pixels next frame and you think you miss the target.

But at bottom you see how it would smooth scrolls (a pixel every frame). The target shift 1 pixel to left every frame and you don't have the illusion it would hit.

The problem is the illusion of 4 pixels scrolls (PF) vs 1 pixel smooth scroll (bomb) which let to mistakes. That's why I think if the bomb moves according the PF (and not the player) this would reduce this illusion.

 

This is not a really big problem BTW.

post-10940-0-27803400-1447768664_thumb.png

Share this post


Link to post
Share on other sites

I just played a few rounds in Stella. The fireball stage 3 took me out, but then again I was just using arrows + spacebar, which isn't the proper way to play Scramble!

 

And I thought I was totally impressed by 2600 Ladybug! Scramble is colorful, detailed, accurate and fun! Awesome job! JohnnyWC, there isn't a man from the oldest inspector to the youngest constable, who wouldn't like to shake you by your hand! Thanks! It just boggles my mind seeing the multicolor images all over the screen.

 

Playing on default, even though I didn't get too far, I thought it wasn't too terribly difficult. The ship has been given rapid firepower - perhaps fast than the coin-op, or am I remembering wrong? Shots and bombs just pump out of the ship , so quickly.

 

Now, on to a technical question. What exactly does the DPC+ARM give you as a developer ? It still seems very 2600-like. But what exactly does this board provide that would be impossible with a stock 2600 cart? Probably plenty of ROM. Extra RAM too, that is accessable by the 2600 ASM code? Surely it doesn't increase the number of players/missiles does it?

  • Like 1

Share this post


Link to post
Share on other sites

I haven't seen the source code here, but generally it works like an ARM with a TIA attached.

 

Which means almost all calculations are done on the ARM. Only the graphics and sound output and control input is done by the 2600. But the ARM is massively pushing the graphics and often the sound (not sure for this game here) output too.

  • Like 1

Share this post


Link to post
Share on other sites

The problem is the illusion of 4 pixels scrolls (PF) vs 1 pixel smooth scroll (bomb) which let to mistakes. That's why I think if the bomb moves according the PF (and not the player) this would reduce this illusion.

Yes, it would cure this problem. But I am pretty sure it would do more harm in general.

 

This is not a really big problem BTW.

Agreed.

Share this post


Link to post
Share on other sites

I haven't seen the source code here, but generally it works like an ARM with a TIA attached.

 

Which means almost all calculations are done on the ARM. Only the graphics and sound output and control input is done by the 2600. But the ARM is massively pushing the graphics and often the sound (not sure for this game here) output too.

 

Interesting. So the 6502 is not used? Does that mean these games don't need to be coded in 6502 ASM?

  • Like 2

Share this post


Link to post
Share on other sites

Interesting. So the 6502 is not used? Does that mean these games don't need to be coded in 6502 ASM?

You still need 6502 assembler for the kernel(s) (and some there stuff).

Share this post


Link to post
Share on other sites

 

Interesting. So the 6502 is not used? Does that mean these games don't need to be coded in 6502 ASM?

 

I've been writing a blog series on how this works. The first five parts cover setting up the C compiler in a Linux Virtual Machine. Part six is where the details you might be interested in start.

  • Like 1

Share this post


Link to post
Share on other sites

Wow. I love seeing ©2015 on 2600 screenshots. :)

 

I haven't played it yet but it looks amazing. Well done as usual.

 

I'm all over the label contest on this one. :D

  • Like 1

Share this post


Link to post
Share on other sites

With the collision detect issue I clearly recall seeing the bomb drop right through the "F" on the tank. The bomb covered it for an instant.

Share this post


Link to post
Share on other sites

To all:

Thanks so much for all the feedback! I'm glad everyone is enjoying the game. I have made a few changes and modified the first post with the latest build.

Here are a list of the changes:

- button/reset can be used to bypass AA splash screen to jump straight to the title screen
- fixed a bug where a delay/debounce was not used when changing the starting level using the PAUSE/right difficulty 'cheat' (it worked when changing the stage)
- changed skill level colors to green (novice) yellow (arcade) and red (expert).
- score color is always white; changed the progress display border color to match the skill
- implemented auto-fire (left difficulty = A). Hold down the button to auto-fire, press button for single shot.
- score table display now shows one score at a time with a slight delay
- implemented a one-second delay when starting a stage on a new game or when a life is lost, per the arcade (displays # of ships remaining during that second then decrements after 1 second).
- fireballs are a little bit higher on NOVICE and ARCADE level (it was too close to the mountain before)
- saucers are now synchronized instead of having a random startup height
- rockets launch a bit earlier
- fixed a bug where the reserve ship display was corrupted if the # of ships in reserve was >3. max reserve ships increased to 255 (was 7)
- fixed a bug where launched missiles would still travel horizontally when your ship got hit (they should travel straight up when the terrain stops scrolling)
- max ship X value is 2 pixels more to the right (per the arcade)
- increased the maximum sprites from 12 to 14 as I noticed on the busy levels (tunnel, fireball) sometimes your explosion wouldn't be displayed. I hope this doesn't cause screen rolls!
- implemented autofire for 2-button gamepads also (still use LEFT DIFF A to enable)
- launch frequency for rockets is now greater for higher skill levels
- on frames where the terrain/ground objects are scrolling (every 8th frame), I adjust the x value during collision detection for missiles/bombs. This *should* fix the issue where it appears that your bombs are missing a target.
- fixed a bug where an extra ship wasn't being awarded for 100,000 (lol guess who finally broke 100K :))
- fixed a bug in the collision detection where the 2nd object was not being detected when 2 objects were 64 pixels (2 copies wide) apart. This may explain all of that 'bullet going through my fuel chatter' :)
- tweaked the collision detection to make it more accurate.
- tightened up two areas in the maze at the end to better match the arcade.
- fixed a bug in the rocket vertical speed routine; they should move a bit faster on higher levels
- fixed a bug where if you destroyed the base and then crashed, the next level would start and after a few seconds it would display the Congrats message and skip to the *next* level. In this case, it will now forces you to destroy the base *and* successfully escape before allowing you to go to the next level.

Have fun!

John

  • Like 9

Share this post


Link to post
Share on other sites

Hi!

 

I hope a PAL60 version of this awesome game (and of Conquest of Mars too) will be released; only colors need to be changed.

 

Yes - I will implement a PAL60 version (or ask TJ to do it for me :D). J/k - but he does usually do the testing for me (thanks TJ!).

 

In fact, the only thing I really noticed was that the fireballs seem to come closer to the rocks than in the arcade, or it's harder to dodge vertically to avoid them. I found stage 3 a bit harder than I find the arcade!

 

Agreed - I was having the hardest time even getting through the fireballs on level 2. I have addressed this in the latest build and it seems to be much better now.

 

This past weekend at the Houston Arcade Expo was the first time I saw 2600 Scramble. I have to say, very well done! The game is impressive, right down to the title screen. It took me a while to figure out how you made the logo so colorful without flicker.

 

Glad you liked it! Thank Nathan for the title screen... his graphics as usual are amazing (along with Bob's sounds) - it's wonderful not having to worry about those things and focus on the gameplay instead. :) Yup - the logo is a 48-pixel sprite, multi-colored, layered with a multi-color playfield as the background. It also uses the ball to round out the edges.

  • Like 1

Share this post


Link to post
Share on other sites

Holy crap I just tried this out in Stella and it is amazing to me how this is possible on the VCS. If there's someone out there who's had thoughts about Scramble on the 2600 for the past 3 decades it's ME right here.. and I'm blown away :lol:

The thing that gets me too is it plays very close to the arcade as well (which I have to say I'm pretty decent at).. Friggin another amazing job. But as you might know I'm a long time fan of Champ games since your pc arcade ports in the mid 90's.. so I aint surprised. :)

Thanks! Lol you sound like me.. I've always dreamed about Scramble on the 2600, way back in 1981 when I was 13. I remember going to Sears just to play Scramble on the Vectrex they had set up, but I always hoped it would make it's way onto the Atari.

Share this post


Link to post
Share on other sites

I just played a few rounds in Stella. The fireball stage 3 took me out, but then again I was just using arrows + spacebar, which isn't the proper way to play Scramble!

That's for sure! You need a joystick for Scramble... the game supports 2-button gamepads but I play with the stock controller; not enough precision with the gamepad, especially during the maze level. I hope to someday hack a stock controller with a 2nd button but hardware is not my forte... :)

 

And I thought I was totally impressed by 2600 Ladybug! Scramble is colorful, detailed, accurate and fun! Awesome job! JohnnyWC, there isn't a man from the oldest inspector to the youngest constable, who wouldn't like to shake you by your hand! Thanks! It just boggles my mind seeing the multicolor images all over the screen.

Thanks! I love the color of Scramble ... Nathan did a great job with the sprites and picking out the colors, and being able to plug in Bob's sounds (and driver) right into the 2600 version was a godsend, and the sound rocks too!

 

Playing on default, even though I didn't get too far, I thought it wasn't too terribly difficult. The ship has been given rapid firepower - perhaps fast than the coin-op, or am I remembering wrong? Shots and bombs just pump out of the ship , so quickly.

Agreed... right now I'm looking for feedback on difficultly and I tend to feel like the ship fires too quickly, and it may be easier with autofire now implemented. However, I've been playing this for a month or so and just broke 100K, so perhaps faster shooting but more difficultly will be more *fun* than slower shooting and less difficultly (see Conquest of Mars as case-in-point; I made that firing almost exactly like the 800 version and the general consensus was that it was *too* slow).

 

Now, on to a technical question. What exactly does the DPC+ARM give you as a developer ? It still seems very 2600-like. But what exactly does this board provide that would be impossible with a stock 2600 cart? Probably plenty of ROM. Extra RAM too, that is accessable by the 2600 ASM code? Surely it doesn't increase the number of players/missiles does it?

Well, this is my first DPC+/ARM game, but the reason I chose to go the ARM route was to implement the scrolling (it was taking almost all of vblank in my initial proof-of-concept). After I got comfortable with the ARM and how it interacted with the 6507 code, I ended up writing all of the game logic in C using the ARM. It was very much like writing my old CHAMP games from the 90s (all written in C/assembly) so it was a welcome change. Plus the faster ARM processor means you can do more during VBLANK (and overscan).

 

The ROM is shared between the ARM code (C code) and the 6507 code. I'm actually still using the 6507 code for a lot of the display (score, progress, fuel, reserve ships are all straight 6507, no dpc), the title screens are a mix of 6507 and DPC+. The sound and sound driver are all 6507, lifted directly from Bob's 7800 Scramble (with Bob's permission, of course :)).

 

So, the ARM really helps with game logic (at least for me), and the DPC+ data buffers and 4K of RAM helps immensely with the graphics. You are still limited by the 6507 for display (2 sprites, 2 missiles, 1 ball, PF, etc) and you still only have 76 cycles per line, but what you can do in that 76 cycles and how you can easily access data is what the huge difference is.

 

If you're interested, I strongly recommend you take a look at Darrell's wonderful blog series.. it's what got me interested in the first place. For me, it's made 2600 development fun and challenging again. :)

 

John

Share this post


Link to post
Share on other sites

You know how Atari came up with the RealSports set of titles? Why not do the same thing with games of this caliber and call them Authentic Arcade series or somesuch.. There are already a few games worthy of the title.

 

But for now a sub-folder in my emulation stuff will do.

  • Like 2

Share this post


Link to post
Share on other sites

To all:

 

Thanks so much for all the feedback! I'm glad everyone is enjoying the game. I have made a few changes and modified the first post with the latest build.

 

 

The changes are brilliant, particularly the autofire and the enemy movement tweaks. Suddenly I seem less awful at Novice level. :D

  • Like 1

Share this post


Link to post
Share on other sites

Is it possible, somehow, to make the bomb drop whistling sound be heard more often like in the arcade version? Because once you get going into the game you rarely hear it.

 

Of course I understand there may be technical limitations preventing this. After all, there is a lot going on, and many sounds to mix in.

Share this post


Link to post
Share on other sites

You know how Atari came up with the RealSports set of titles? Why not do the same thing with games of this caliber and call them Authentic Arcade series or somesuch.

 

Love love this idea. Or "AtariAge Arcade"?

 

And what about standardizing the label style, maybe with the transition to the new shells? Same look across all the carts so that they *look* like a series instead of the typical motley assortment of homebrews. Wouldn't that look spectacular on the shelf, and maybe even rope some of the collectors into buying more well-made games, as folks were lamenting on that other thread? ;)

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

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