Jump to content
IGNORED

Something else I'm working on


Propane13

Recommended Posts

Thanks everyone!

 

Ok, one more update for the day. Then, I think I'll rest for a day.

 

New feature:

- the ball breaks through bricks

 

Known Issues:

- it only detects on the upper-left corner of the ball-- that'll be corrected later

- There is no deflection physics upon hitting a brick-- it just passes through-- again, that'll be corrected later.

- Processing is slow-- some of the code for this is unbelievably inefficient-- I plan to clean that up in a later pass. In my opinion, better to get it functional, and clean it up later. At least that way, we can get a feel for how it might look in the end.

 

So, give it a shot!

 

20091205_arkanoid_fun.bin

 

20091205_arkanoid_fun.a78

 

Screenshot:

post-151-126005148196_thumb.gif

 

Thanks!

-John

Link to comment
Share on other sites

Hey John - looks awesome! Great work!

 

 

If I may, one thing I would like to let you know about the ball angles depending on where it hits the paddle.

 

The Vaus is split into 5 locations that have different effects on the ball:

 

 (---)  (Text representation of the Vaus)

 |||||
 ABCDE

 

If the Vaus is hit at points 'A' and the ball is traveling right, the ball reverses direction at a *low* angle (more horizontal than vertical). Likewise if the Vaus is hit at point 'E' and the ball is traveling left. If the ball is traveling in the opposite direction, it moves in the same direction at a *low* angle.

 

As you may expect, if the Vaus is hit at points 'B' or 'D' in the same scenario as above, the same thing occurs except with the ball at a *high* angle (more vertical than horizontal).

 

If the ball hits the Vaus at point 'C', it just continues whatever direction and angle it's on, just reversing it's vertical path.

 

There are also five different speeds for the ball: super slow, slow, normal, fast, and very fast. Super Slow and Slow can only be achieved when the Vaus catches the 'Slow' pill. ('Super Slow' happens when the Vaus catches two 'Slow' pills before the ball has a chance to speed up).

 

Hope I didn't overstep my bounds, but I played this game non-stop in college, and I've finished it almost as many times :) Just trying to help.

 

Bob

 

EDITED for spelling

Link to comment
Share on other sites

Hey John - looks awesome! Great work!

 

 

If I may, one thing I would like to let you know about the ball angles depending on where it hits the paddle.

 

The Vaus is split into 5 locations that have different effects on the ball:

 

 (---)  (Text representation of the Vaus)

 |||||
 ABCDE

 

If the Vaus is hit at points 'A' and the ball is traveling right, the ball reverses direction at a *low* angle (more horizontal than vertical). Likewise if the Vaus is hit at point 'E' and the ball is traveling left. If the ball is traveling in the opposite direction, it moves in the same direction at a *low* angle.

 

As you may expect, if the Vaus is hit at points 'B' or 'D' in the same scenario as above, the same thing occurs except with the ball at a *high* angle (more vertical than horizontal).

 

If the ball hits the Vaus at point 'C', it just continues whatever direction and angle it's on, just reversing it's vertical path.

 

There are also five different speeds for the ball: super slow, slow, normal, fast, and very fast. Super Slow and Slow can only be achieved when the Vaus catches the 'Slow' pill. ('Super Slow' happens when the Vaus catches two 'Slow' pills before the ball has a chance to speed up).

 

Hope I didn't overstep my bounds, but I played this game non-stop in college, and I've finished it almost as many times :) Just trying to help.

 

I would be honored to have anyone contribute technical info about the game.

That'll save me tons of research time. :)

 

Ok, so boiling it down, it sounds like there are 2 main vectors I need to worry about for direction (forgetting all mirrored directions). It sounds like there's approximately a 30 and a 60 degree angle case (that's just a generalization-- we can figure out the exact angles needed). If that's the case, I need to play the Nintendo version and see how it compares to the Arcade.

 

Additionally, for the speeds, what was the criteria for speed-up? I thought that the NES version was it a gradual speed-up, but it sounds like in the arcade version, there were X amounts of speed. Was it triggered by brick/wall hits, or by time? Not sure if that's an easy one to find out, but hey, if anyone would know, it'd be the community.

 

If it ends up that there's a difference between arcade and NES gameplay, I may just have to allow the mode to be user-selectable. :)

 

-John

Link to comment
Share on other sites

Thanks, John :)

 

The ball can have other trajectories, depending on the floating enemies and how it hits the bricks. If memory serves me right, the ball can have a total of 4 different trajectories (not including mirroring).

 

Regarding the speed, most of the time it's the number of hits that speed a ball up, but I noticed that sometimes if the ball hits the top of the playfield it speeds up also, but on some boards it doesn't. I think it's an internal setting on a per-board basis.

 

I need to give it a play again.

 

I haven't played the NES version. Is it fairly arcade accurate?

 

Bob

Link to comment
Share on other sites

Another version ready.

 

Updates:

- Using PacManPlus's evaluation, there is now some smarter physics when the ball hits the vaus. The ball now supports 2 vectors (plus mirrors), and 5 "hotspots" on the Vaus. So, the user now has some control over the ball's direction.

- If you clear a board, you move on to the next board

- Hitting gold bricks in an up/down direction makes the ball change up/down direction

- Hitting other bricks in an up/down direction makes the ball change up/down direction and removes the brick.

 

Known issues:

- still running at 1/2 speed-- I will optimize later

- Ball "gets stuck" underneath Vaus if you lose (this is a temporary workaround for another bug). However, you're dead anyway, so it's not a big deal.

- Hitting bricks sideways does weird things to happen. I need to update my brick-collision routine to check for this case-- currently, it doesn't process that case. So, if you hit a brick from the side, it'll destroy the brick in most cases, and then continue moving sideways. You can see this very evidently in levels like level 7.

 

20091206_arkanoid.a78

 

20091206_arkanoid.bin

 

Enjoy!

-John

Link to comment
Share on other sites

Today's update-- about 90% of ball/brick collision physics are working properly.

They now include sideways collision support, which makes the game more accurate.

 

I do note that there are some issues with a few "edge cases".

Essentially, the remaining bug that I see involves some scenarios where a brick is next to the outside border of the level, the ball changes direction from hitting the border, and it may miss a collision. But, rounds like 4 and 7 (that have no bricks touching the border) should be pretty problem-free.

 

Additionally, I've made it so the reset button doesn't send you back to start-- it just resets the level you're on. So, if you wanted to just play a level until you beat it, you can, without hitting select a ton of times.

 

20091207_arkanoid.a78

 

20091207_arkanoid.bin

 

Enjoy!

-John

Link to comment
Share on other sites

Ok-- question for all the Arkanoid players out there.

 

In the arcade or NES version of Arkanoid-- what happens when the ball is traveling up and right, and hits the corner of a brick? Does it turn around (down and left)? Does it just change the X direction (now it goes up and left)? Or, does it change the Y direction (now it goes down and right)?

 

I've currently coded it such that it will turn around completely (X and Y), but I wanted to check if this is accurate.

 

Thanks!

-John

Link to comment
Share on other sites

Today's update-- about 90% of ball/brick collision physics are working properly.

They now include sideways collision support, which makes the game more accurate.

 

I do note that there are some issues with a few "edge cases".

Essentially, the remaining bug that I see involves some scenarios where a brick is next to the outside border of the level, the ball changes direction from hitting the border, and it may miss a collision. But, rounds like 4 and 7 (that have no bricks touching the border) should be pretty problem-free.

 

Additionally, I've made it so the reset button doesn't send you back to start-- it just resets the level you're on. So, if you wanted to just play a level until you beat it, you can, without hitting select a ton of times.

 

20091207_arkanoid.a78

 

20091207_arkanoid.bin

 

Enjoy!

-John

 

 

John,

 

I've had a smile from ear to ear playing this game your working on. Thanks so much!!

 

Shawn

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