Jump to content
Lumi

Drive! (WIP) (Formerly "Jet!")

Recommended Posts

Hello!

 

Based on user input, I took my game, Jet!, and turned it into a new game: Drive! I decided to make this a new topic to avoid confusion.

 

post-44583-0-90700400-1457453462_thumb.png

 

Story:

 

In this game, you are an explorer from the year 2050. Much of the world's rainforests have been logged, leading to the discovery of a large temple constructed by ancient civilizations eons ago. You are among the first to be allowed to explore it.

 

The entrance to this temple is across a long stone bridge, which you have chosen to drive across. Inside the temple you find a golden idol on a stone pedestal. Although you are supposed to leave everything you find, your greed gets the better of you and you remove the idol from where it has sat for thousands of years.

Suddenly, the ground begins to shake. Bricks fall from the ceiling. Maybe this wasn't such a good idea! You run outside just as the entrance caves in. As you get in your car and drive away, you realize that the bridge's supports have dislodged and it's all collapsing behind you! There's no time to think - just drive!

 

This is a 4K, single player paddle game, made entirely in assembly, in which you must move your car left and right to dodge obstacles as you drive down the bridge. As you drive, you will encounter treasures (dots on the ground). When you collect a treasure, you will gain 1500 points and it will be added to your collection (the gold dots on the left side of the status bar). You can have up to five treasures in your collection at a time. You can press the paddle's trigger to "burn" a treasure, which gives you the energy to jump a short distance. Any treasures you have when your game ends will grant you an extra 1000 points. The game is won upon reaching 99999 points.

 

In addition, certain treasures will grant you extra powers:

- Red: Gives you an extra life (the pink dots on the right side of the status bar). You can have up to 4 lives at a time.

- Green: Makes you invincible for a few seconds.

- Purple: Allows you to jump as much as you want for a few seconds with no penalties.

 

Oh yeah, and if you press the paddle trigger when you have no treasures in your collection, you can honk the horn. So there's that.

 

At certain points, the game will speed up. The game will stop generating obstacles for a few seconds, and the speed-up will occur while there are no obstacles on the screen.

 

Finally, the difficulty switches toggle certain functions:

- The left difficulty switch will make obstacles farther apart (B) or closer together (A).

- The right difficulty switch turns moving platforms off (B) or on (A).

Set both to A for the ultimate experience! (Note: Stella sets both to B by default.)

 

 

I'm very interested to see what everyone thinks of the new direction this game has taken! :)

 

=== UPDATE: v1.1 ===

What's new:

- Introducing speed freak mode! Press the game select switch on the title screen to access this. This makes the game run at hyper speed, so good luck! Combine with both difficulty switches on A for a real challenge!

- Better sound and colours for both NTSC and PAL.

- Purple powerup has been changed to blue to make it more distinct.

- Each treasure in your collection now adds 1500 points instead of 1000 when your game ends.

- A few bug fixes.

 

=== UPDATE: v1.2 ===

What's new:

- Full SaveKey/AtariVox support! It will save two different high scores depending on which difficulty you have selected on the title screen. Press the game select and game reset switches together to delete your high scores.

- You can now switch difficulty modes without going back to the title screen. Simply press the game select switch at any point.

- Jerky scrolling is finally fixed.

- Treasures now have defined graphics:

post-44583-0-77147800-1457453801.png Gold coin: Takes the place of the gold treasure (no powerup other than the default).

post-44583-0-64743600-1457453810.png Necklace: Takes the place of the red treasure (adds an extra life).

post-44583-0-71696700-1457453835.png Jar: Takes the place of the green treasure (makes you invincible for a few seconds).

post-44583-0-24402500-1457453851.png Statuette: Takes the place of the purple/blue treasure (allows you to jump with no penalty for a few seconds).

- You accumulate points faster when you have below 50000 points, meaning it takes about half as long to reach full speed.

- Other graphical improvements.

 

=== UPDATE: v1.3 ===

- Fixed a few bugs.

- Now has a standard PAL version.

 

=== UPDATE: v1.4 ===

- PAL version should work perfectly.

- Updates to Speed Freak mode.

Drive! v1.4 NTSC.bin

Drive! v1.4 PAL.bin

Edited by Lumi
  • Like 1

Share this post


Link to post
Share on other sites

I like it. icon_thumbsup.gif

 

BTW: For more attention, tagging with "Assembler" or so might help.

Edited by Thomas Jentzsch

Share this post


Link to post
Share on other sites

I'm happy you both like my hard work! And thank you for the advice, Thomas :)



Also, if you find any bugs please report them. I tried hard to debug this but I wouldn't be surprised if a few slipped by.


Share this post


Link to post
Share on other sites

Very fun! I like the theme change to a car, and the main sprite looks nice. Paddle controls feel nice. I like the addition of the risk/reward "jump" mechanic. The sounds are really nice too. What else are you planning for this game, or is it mostly done?

Share this post


Link to post
Share on other sites

Very fun! I like the theme change to a car, and the main sprite looks nice. Paddle controls feel nice. I like the addition of the risk/reward "jump" mechanic. The sounds are really nice too. What else are you planning for this game, or is it mostly done?

Thank you!

 

I feel like it's mostly done at this point, unless anyone can think of anything I should add (provided it can fit in the little chunk of free space in the ROM). I may release v1.1 in a few days to improve some colours and sounds, maybe add a hidden hard mode, but other than that there's not much I can think of.

Share this post


Link to post
Share on other sites

Sorry for the double post, but v1.1 is out! See the first post for details.

 

Well, I can't really think of anything else to add. Unless anyone has ideas or bug reports, that may be the final version.

Share this post


Link to post
Share on other sites

Patience you must have, my young Padawan. icon_smile.gif

 

 

I think I am partially repeating some suggestions from Jet! here:

  1. The scrolling after 10,000 points is still jerky, after multiple 1 line scrolls follow multiple 2 lines scrolls.
  2. The difficulty increases too slow, especially in the beginning its more a game of patience than a challenge. Every 5000 points would be better.
  3. At the final death, the game ends too abrupt. Maybe show the usual death car blinking, but stop movement.
  4. It would be nice if the power ups would be recognizable.
  5. If you have ROM space (~150 bytes), you should try to support the SaveKey.
  6. You cannot change the difficulty, because the game doesn't return to the title screen.
  7. I think the shading of the car, while looking nice, reduces contrast a bit too much at the import front and back. Maybe reverse the shading, front and back bottom brighter, center darker.
Edited by Thomas Jentzsch

Share this post


Link to post
Share on other sites

Good suggestions! I should be able to do some of them easily. Just a few things...

 

The scrolling after 10,000 points is still jerky, after multiple 1 line scrolls follow multiple 2 lines scrolls.

The difficulty increases too slow, especially in the beginning its more a game of patience than a challenge. Every 5000 points would be better.

Hmm. I thought I solved the first problem but it's back for some reason... Maybe I should go back to the original way of gaining points, it would solve both of these issues at once.

 

 

It would be nice if the power ups would be recognizable.

I've struggled endlessly trying to make them more distinct from the dark background - It's hard because the Atari's bright colours are so desaturated. I thought I had struck an acceptable balance this time, but maybe I'm just used to them being a little tough to distinguish.

 

I wonder, if I flickered them between a dark and light colour, would that help make them more distinctive? I'll try it, it's the only solution I can think of.

 

 

If you have ROM space (~150 bytes), you should try to support the SaveKey.

I had a lot of trouble with this. A few months ago I spent a number of days researching how it works, but found very little of use. Apparently I have to use Richard Hutchinson's website to reserve a space in the static allocation area, but his website has been down for a while now. There also doesn't seem to be any example code showing its use in a real program. I don't like guessing how hardware is supposed to work, especially when people's save data is on the line. I'm sorry if this seems stubborn, but trying to piece together all these scraps of information is a real struggle.

 

Edit: does this car look any better? I'm trying to make it so no parts contrast with the background, but again, there's the saturation issue.

post-44583-0-57103000-1457229697_thumb.png

Edited by Lumi

Share this post


Link to post
Share on other sites

The SaveKey is a clone of the AtariVox EEPROM hardware, so usage is covered under the AtariVox docs. Check out the EEPROM/i2c communication section of the manual.

 

Al now officially manages the allocations. You can start off by using the EEPROM scratch location, and ask him for an official location when you're ready.

 

Another alternative is to use the new self-serve location, though you'll need a little bit more code to do that.

AtariVox.rtf

i2c.inc

Share this post


Link to post
Share on other sites

I've struggled endlessly trying to make them more distinct from the dark background - It's hard because the Atari's bright colours are so desaturated. I thought I had struck an acceptable balance this time, but maybe I'm just used to them being a little tough to distinguish.

Why aren't you using different sprite graphics?

 

I had a lot of trouble with this. A few months ago I spent a number of days researching how it works, but found very little of use

Did you ask around at AtariAge? That's why we are here!. icon_smile.gif

 

Anyway, I prepare a new thread SaveKey for Dummies!. I hope that answers all your and future questions.

 

The new car contrasts better, IMO.

Edited by Thomas Jentzsch

Share this post


Link to post
Share on other sites

Why aren't you using different sprite graphics?

Mostly, it's a matter of saving time in the kernel. I'll try to optimize it more, but if all else fails I might have to sacrifice some graphical detail in the car or background.

 

Anyway, I prepare a new thread SaveKey for Dummies!. I hope that answers all your and future questions.

I said it in that thread, but this amazing! Thank you for doing this! :)

Edited by Lumi

Share this post


Link to post
Share on other sites

Al, do you know in detail what the first location ("System Settings (TV mode)") is used for?

 

Some settings could be shared between carts (e.g. PAL/NTSC).

Share this post


Link to post
Share on other sites

Its described in the "Systems Settings Page" section of the AtariVox doc by Alex Herbert...

 

System Settings Page

The first EEPROM page is reserved for the System Settings which is currently just the 8 byte

ASCII signature ATARIVOX followed by the TV Mode byte.

Bit 7 of the TV Mode byte = 0 for PAL, 1 for NTSC. Bit 6 = 0 for 60Hz, 1 for 50Hz.

See syspage.inc for code to read/write the TV Mode.

At this time I believe Man Goes Down is the only game supporting this.

  • Like 1

Share this post


Link to post
Share on other sites

OK, everyone! Version 1.2 is live! See the first post for details.

 

I did have to sacrifice some features to get the treasure graphics working, but maybe you won't notice. (Unfortunately it's not totally stable, and the treasures have some issues with vertical placement, especially noticeable on the first speed. It's just a result of cramming way too much into the kernel.)

 

As a result of adding the SaveKey features I'm pretty much out of usable space, so there's not a lot more I can do with this. (Also, if someone with an actual SaveKey/AtariVox could verify that it's working on the real hardware, that would be great. I don't see why it wouldn't, I'm just scared like that.)

 

By the way, everybody, thank you for being patient and dealing with my incompetence. I have less than a year of experience with 6502 and the Atari, so this has been a real learning experience. :)

Edited by Lumi

Share this post


Link to post
Share on other sites

Looks good!

 

I suggest that you post a thread in the main Atari 2600 forum. That will give you attention and feedback from more non-developers.

Share this post


Link to post
Share on other sites

Looks good!

 

I suggest that you post a thread in the main Atari 2600 forum. That will give you attention and feedback from more non-developers.

I've done this!

 

Also, I have updated the game one more time. I also now have a speed-adjusted (except for the sound effects) PAL50 version working.

Edited by Lumi

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.
Note: Your post will require moderator approval before it will be visible.

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