Jump to content

Photo

Jezzball


9 replies to this topic

#1 atari2600land OFFLINE  

atari2600land

    The excitement of a game

  • 11,724 posts
  • The mind of a computer.
  • Location:Salem, Oregon

Posted Wed Mar 11, 2009 11:22 AM

I'm working on a version of Jezzball. To make a line vertically, press fire. To make a line horizontally, press fire+left or fire+right and then fire. The cursor will change to indicate whether you'll make a line horizontally or vertically. If you're in the middle of making a line vertically and the ball hits it, the game will reset (normally, you'd lose a life.) I can't get it to do the same thing horizontally. Maybe someone can help me with this.

Attached Files



#2 BigO OFFLINE  

BigO

    River Patroller

  • 4,437 posts
  • Location:Phoenix, AZ

Posted Wed Mar 11, 2009 11:42 AM

Cool.
Good luck with it.

#3 Kurt_Woloch OFFLINE  

Kurt_Woloch

    Stargunner

  • 1,571 posts

Posted Wed Mar 11, 2009 12:33 PM

OK... I've looked at the code, and I'd say the bug lies in the setting of the variable o, which gets set to the current pfpixel column / row of the ball in order to check for a collision with the wall being drawn.
The problem is here that you're basically checking the coordinate under the ball. At the moment the ball hits the playfield, it's basically still not on the pfpixel of the wall, but on the adjacent one to it. So the calculations you're doing:

if !c{1} then o=(missile0x-17)/4 else o=(missile0y-1)/4

are flawed. To be correct, you should subtract another 8 pixels from missile0x before doing the calculation if the ball is flying left, but add them to missile0x if the ball is flying right. Likewise, 2 pixels should be subtracted / added to/from the missile0y variable depending on if the ball is flying left or right.
By the way, I would only calculate this if the collision has occured, not every frame like you are doing it now.
So I would replace the line above by roughly the following:

if c{1} then goto check_collision_1

if n{0} !! n{1} then o = (missile0x-9)/4 else o = (missile0x-25) / 4

goto check_collision_2

check_collision_1

if n{0} !! n{3} then o = (missile0y+1)/4 else o = (missile0y-3) / 4

check_collision_2

Note: I haven't tested this, but I think it would work this way.

Oh, and here's another version of your original source code... I added some comments to it. Actually, I would find it helpful if you would comment your code like that if you want other people to help you so they can see better what different parts of the code are supposed to do.
Attached File  jezzball.bas   5.82KB   95 downloads

Edited by Kurt_Woloch, Wed Mar 11, 2009 12:34 PM.


#4 atari2600land OFFLINE  

atari2600land

    The excitement of a game

  • Topic Starter
  • 11,724 posts
  • The mind of a computer.
  • Location:Salem, Oregon

Posted Wed Mar 11, 2009 1:16 PM

I've been working on this since before Kurt added remarks, so I copied some remarks in.
bB doesn't seem to like the double exclamation points. I've also added some better cursor movement. You can now go anywhere because in the future, there will be a maximum of 4 balls (missile0, player1, missile1, and ball). I know there's more than that in the Microsoft version, but the 2600 does have limitations.

Attached Files



#5 atari2600land OFFLINE  

atari2600land

    The excitement of a game

  • Topic Starter
  • 11,724 posts
  • The mind of a computer.
  • Location:Salem, Oregon

Posted Fri Mar 15, 2019 2:00 PM

Thought I'd get this out there. Last night and today I have been working on a version of JezzBall. It can't be exactly like JezzBall, so in order to avoid copyright infringement AND due to the 2600's capabilities, it won't be EXACTLY like it, though it is similar.

This test screen has a non-moving ball, and the object is to close as much space as possible Qix-like without the line you create hitting the ball.

The lines you create are either horizontal or vertical, as indicated by the cursor.

I'll add some stuff to make it differ from JezzBall, since I can only have one ball bouncing around.

 

The 6 digit number is the score, and the 2 digit number is the %age of space you've cleared.

Attached Files



#6 Random Terrain OFFLINE  

Random Terrain

    Visual batari Basic User

  • 28,982 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Fri Mar 15, 2019 4:50 PM

To avoid getting sued, you could rename it to Jizzball.



#7 atari2600land OFFLINE  

atari2600land

    The excitement of a game

  • Topic Starter
  • 11,724 posts
  • The mind of a computer.
  • Location:Salem, Oregon

Posted Sat Mar 16, 2019 2:43 PM

The ball now bounces around the screen and gives bonus points if you clear more than 75% of the screen. Still no way to "die" yet.

EDIT: here's a link to the original game idea, Jezzball.

Attached Files


Edited by atari2600land, Sat Mar 16, 2019 2:50 PM.


#8 atari2600land OFFLINE  

atari2600land

    The excitement of a game

  • Topic Starter
  • 11,724 posts
  • The mind of a computer.
  • Location:Salem, Oregon

Posted Sat Mar 16, 2019 5:59 PM

+ Fixed a bug where starting a line at the beginning glitches lines up (u variable was set to 0 instead of 1!)

+ Ball now keeps bouncing around when lines are being made and space is filling up (you sure can fit a lot of stuff in vblank!)

+ Increased level % clearing to 85.

 

You can play Jezzball online at www.jezzball.net

My highest score was 100,000 or so at level 11 or so.

Attached Files



#9 atari2600land OFFLINE  

atari2600land

    The excitement of a game

  • Topic Starter
  • 11,724 posts
  • The mind of a computer.
  • Location:Salem, Oregon

Posted Sun Mar 17, 2019 2:16 PM

Introducing Bob the Block. Make sure Bob doesn't touch the line that's being drawn. Otherwise, you'll lose a life. Well, in the final version anyway. If you complete a level or die, it goes back to the title screen in this version. I've decided to name the game "Billy the Ball". The ball is red, like most playground balls are. So I changed the border to green. I think the introduction to Bob the Block makes the game harder. Bob can go anywhere in the screen, so it's tough to judge where he'll go next since it's random.

Attached Files



#10 ZeroPage Homebrew OFFLINE  

ZeroPage Homebrew

    Dragonstomper

  • 609 posts
  • Location:Vancouver Canada

Posted Tue Apr 9, 2019 9:13 PM

We'll be featuring Billy the Ball on tomorrow's (Wednesday) ZeroPage Homebrew stream on Twitch at 11AM PT | 2PM ET | 7PM GMT! Hope everyone can watch!

Twitch Stream: http://twitch.tv/zeropagehomebrew/

Games:

- Billy the Ball (2019 WIP) by Chris Read aka atari2600land
- White Water Madness (2019 WIP Update) by Chris Read aka atari2600land
- KTron (2019 WIP) by Adriano Sabo aka acsabo
- Climber 5 (2003) by Dennis Debro aka DEBRO

 

EDIT: Updated with YouTube Archive of Stream

 


Edited by ZeroPage Homebrew, Thu Apr 11, 2019 7:46 PM.





0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users