Jump to content
IGNORED

New Game: Air Hockey


8-bit_d-boy

Recommended Posts

Hey, since I've already posted asking for help with this, I thought I may as well introduce my project:

 

Air Hockey

 

Which may be usurped by RealSports Air Hockey once the Intellivision releases its contender to Air Hockey, and finally Super Air Hockey with it's at-table perspective and red label when the Atari 2600 gets re-released as the Atari Jr.

Only Kidding.

 

Move your paddles in not one--but TWO distinct directions!

Hold fire to move TWICE AS FAST!

Hit reset to reset the game when YOUR FRIEND STARTS TO BEAT YOU!

Realize it's still just a work in progress when THE PUCK STARTS TO CLIP WITH THE PADDLE!

Here's a screenshot of it so far:

airhockey.bas

 

Still a work in progress, here's the ROM so far:

airhockey.7-25-2017.bin

airhockey.7-26-2017.bin

airhockey.bas

airhockey.7-27-2017.bin

Edited by 8-bit_d-boy
  • Like 5
Link to comment
Share on other sites

What version of stella? Never mind, the PNG header says 3.7.2

 

I would humbly suggest testing it in 5.0.1 because there are significant changes between old and new Stella. Significant as in a complete remake of the TIA.

 

In fact, the game looks normal on old stella. But on new stella, the score is cut-off at the bottom. And new stella emulates the hardware better than ever.

Edited by Keatah
Link to comment
Share on other sites

:thumbsup: The ball clipping was a crazy surprise :thumbsup:

Yeah, collision is not finished yet, lol.

 

 

This is stupid amounts of fun. With a game this straightforward do you have room for some whistles and bells and other fancy bits? Pele had fireworks after all...

Thanks!

I wanted the win screen to cycle thru the luminances of the win color at 1 color per second, but it's not working for some reason, I can post the code if you're interested.

I also plan on making a more robust deflection system so the ball collides and bounces off the paddles more realistically, as if it's colliding with a circle, and not just reversing direction + paddle momentum.

In addition to that, I want to add pausing with either the BW-Color switch or game select and left-handed controls selected by the difficulty switches.

 

What version of stella? Never mind, the PNG header says 3.7.2

 

I would humbly suggest testing it in 5.0.1 because there are significant changes between old and new Stella. Significant as in a complete remake of the TIA.

 

In fact, the game looks normal on old stella. But on new stella, the score is cut-off at the bottom. And new stella emulates the hardware better than ever.

I'll have to check it out!

Checked it out, Updated accordingly.

airhockey.7-26-2017.bin

airhockey.bas

Edited by 8-bit_d-boy
  • Like 1
Link to comment
Share on other sites

Currently working on new collision and deflection system.

Anyone have pointers to not only prevent collision, but also have the ball deflect in different directions, dependent upon where the ball collides with the paddle and doing so efficiently?

Thanks in advance.

Edited by 8-bit_d-boy
Link to comment
Share on other sites

Currently working on new collision and deflection system.

 

Anyone have pointers to not only prevent collision, but also have the ball deflect in different directions, dependent upon where the ball collides with the paddle and doing so efficiently?

Thanks in advance.

 

There might be something here:

 

atariage.com/forums/topic/211497-chipoff-breakout-style-example-program/

Link to comment
Share on other sites

Yea air hockey is a great idea for the 2600. Also another hockey game in general is a great idea, maybe even for the 7800. Unfortunately I think the Atari fan/hockey fan is a small blip on the venn diagram

I think if a hockey game was to be done on the Atari, it would have to use vertical scrolling. It'd be cool to do it in a Super Football style with a sort of 3/4ths overhead perspective.

 

I've also been thinking of making a Foosball game.

  • Like 1
Link to comment
Share on other sites

So I've been refactoring the movement and collision code to better be able to do the kind of deflection I want, but I'm running into some problems with the ball sticking into the playfield/players with it. Could someone take a look at my code and help me figure out what's wrong?

airhockey.7-27-2017 (2).bin

airhockey_7-27-2017.bas

  • Like 1
Link to comment
Share on other sites

So I've been refactoring the movement and collision code to better be able to do the kind of deflection I want, but I'm running into some problems with the ball sticking into the playfield/players with it. Could someone take a look at my code and help me figure out what's wrong?

Just a quick look & thought, I may be missing something...

 

The line that reads

 

if bally > player0y || bally < player0y + 2 then goto _skip_to_p0_y_reflect

 

is this really an "or", should it be a "and"? (line 283)

Link to comment
Share on other sites

Just a quick look & thought, I may be missing something...

 

The line that reads

 

if bally > player0y || bally < player0y + 2 then goto _skip_to_p0_y_reflect

 

is this really an "or", should it be a "and"? (line 283)

That part acually gets skipped, due to the "goto _new_col" line above it.

Link to comment
Share on other sites

So I've been refactoring the movement and collision code to better be able to do the kind of deflection I want, but I'm running into some problems with the ball sticking into the playfield/players with it. Could someone take a look at my code and help me figure out what's wrong?

 

It won't compile for me. I noticed that you weren't using def correctly. Check out the note here:

 

randomterrain.com/atari-2600-memories-batari-basic-commands.html#def

 

After removing the spaces, it still won't compile, but at least I get an error message this time:


--- Unresolved Symbol List
xboolean                 0000 ????         (R )
boolean                  0000 ????         (R )


 

Link to comment
Share on other sites

 

It won't compile for me. I noticed that you weren't using def correctly. Check out the note here:

 

randomterrain.com/atari-2600-memories-batari-basic-commands.html#def

 

After removing the spaces, it still won't compile, but at least I get an error message this time:


--- Unresolved Symbol List
xboolean                 0000 ????         (R )
boolean                  0000 ????         (R )


 

Strange, it compiles for me with spaces, although I'm still using the older BB, I think. Not 100% sure.

Anyway, here's the latest source and binary:

 

EDIT:

Well I just figured out why the ball was getting stuck on the walls(I think(so far)), I just had to remove the minus signs from the lines that said:

bvx = -bvx + p1_x + p1_x
bvy = -bvy + p1_y + p1_y

Forgot about those.

 

EDIT 2:

Also just realized that the ball ricochets off of the blue paddle, but clips through red.

 

EDIT 3:

Also also just realized that the ball only ricochets off EITHER paddle on the left, but clips through on the right.

 

EDIT 4:

Got that kinda fixed, ball still clips through red paddle if blue serves it straight left and red doesn't move. STILL can't figure out why. Updated source and binary.

airhockey.bas.bin

airhockey.bas

Edited by 8-bit_d-boy
Link to comment
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...