Jump to content
  • entries
    657
  • comments
    2,693
  • views
    898,824

MGC Placard


SpiceWare

524 views

Al needs a placard for the Midwest Gaming Classic. This is what I've come up with - any comments/suggestions?

 

 

Medieval Mayhem

War has broken out between the kingdoms. A well respected knight, you've been called forth to defend your King and Castle.

 

Atari Console Switches

Hit GAME SELECT at any time to return to the Main Menu.

 

Hit GAME RESET at any time to start a new game.

 

TV TYPE and DIFFICULTY switches are not used.

 

Main Menu

Use Paddle 1 to select game options from the Main Menu. When an option is selected, tap or hold the firebutton to change the values.

 

PLAYERS - select the number of human players. For 1 player games you can select which corner to defend. For Doubles player 1 controls both left shields, player 2 controls both right shields.

Note: AI player routines have not yet been written, so for the best experience find somebody to battle.

 

SPEED - sets the maximum speed, 1 through 4 with 4 being the fastest.

 

FIREBALLS - sets the maximum number of fireballs, 1 through 3.

 

CATCH - enables or disables the ability to catch a fireball.

 

START - start a new game.

 

GAME PLAY

A dragon will launch the initial fireball. Rotate your paddle to position your shield and deflect the fireball away from your castle.

 

A missed fireball will take a brick out of the castle wall. Once an opening is created, the king becomes vulnerable to attack. If the king is hit the player is eliminated from the match. The first to win 2 matches wins the game.

 

If Catch is enabled, depress the red button to capture the fireball. Position your shield, then release the red button to throw the fireball towards your enemies. The direction thrown will depend upon your shield's position.

8 Comments


Recommended Comments

Have you decided what will happen if the ball hits a player's paddle from behind?

While I don't think it's a problem, in deference to all your help I will be adding a 3rd option to Catch for no-rebounds. It won't be done in time for MGC though, which is why it's not in the placard instructions. Any idea on how to phrase it for that short options field? I don't think Catch: Yes, No or Maybe will cut it :)

 

 

Also, in case anybody missed it, I added an image to the prior blog entry with a revised shield graphic. Any comments?

Link to comment
While I don't think it's a problem, in deference to all your help I will be adding a 3rd option to Catch for no-rebounds. It won't be done in time for MGC though, which is why it's not in the placard instructions. Any idea on how to phrase it for that short options field? I don't think Catch: Yes, No or Maybe will cut it :)

 

How about "Safe?" It probably makes for a better computer player game...it's always so sad watching one of the computer players blast their own wall away and then kill themselves in Atari's Warlords. ;)

Link to comment

The Catch won't change the backward collisions, so Safe isn't quite right. I had noticed that problem with Warlords and do plan to address it when I do my AI.

 

As I lay in bed last night I thought up "Limited".

 

Hmm- is the AD quote a directed at me for having a first 2600 project that's 32K :)

Link to comment
The Catch won't change the backward collisions, so Safe isn't quite right. I had noticed that problem with Warlords and do plan to address it when I do my AI.

 

I don't see any particularly logical reason why having the ball hit the back of the shield with the button pushed should result in a safe catch, while not having the button pushed would result in it bouncing backward. It would seem that if you allow back-hand catches, the ball should go through the paddle from behind.

 

Perhaps a new option: "Backhand Safe/Bounce"

 

BTW, one complaint I have about Warlords that also applies here is that balls always bounce 180 degrees when they hit a brick. It would be much nicer if the balls behaved as in Arkanoid. If a ball straddles or crosses only a vertical edge of the brick, reflect velocity about a vertical axis. If it straddles or crosses only a horizontal edge, reflect velocity about a vertical axis.

 

Assuming X and Y coordinates are defined so that (X and 7)=0 corresponds to the left edge of the ball being aligned with the left edge of a brick, and (y and 3) corresponds to the top edge of the ball being aligned with the top edge of a brick, do something like this:

 sec
 lda ypos_l
 sbc yvel_l
 lda ypos_h
 bit yvel_h
 bpl yvel_positive
 sbc yvel_h ; Compute previous Y position
 adc #1  ; Above ADC should have cleared carry
 eor ypos_h
 and #4
 bne crossed_y
 beq no_cross_y
yvel_positive:
 sbc yvel_h ; Compute previous Y position
 inc ypos_h
 eor ypos_h
 dec ypos_h
 and #4
 bne crossed_y
 beq no_cross_y

The above code should indicate whether the ball crossed between one row of bricks and the next, or is straddling two rows of bricks. Similar code may be used for columns.

 

Making the bounces more Arkanoid-ish would make the game much more interesting. As it is, a ball that's going to hit a brick will simply return via the way it came.

Link to comment
I don't see any particularly logical reason why having the ball hit the back of the shield with the button pushed should result in a safe catch, while not having the button pushed would result in it bouncing backward. It would seem that if you allow back-hand catches, the ball should go through the paddle from behind.

Think of it this way - if somebody tosses a ball at you, you may or may not be coordinated enough to able to reach behind you and catch it, but if you don't it would bounce off your back. I'll think on it, but I doubt I'll change it.

 

BTW, one complaint I have about Warlords that also applies here is that balls always bounce 180 degrees when they hit a brick. It would be much nicer if the balls behaved as in Arkanoid. If a ball straddles or crosses only a vertical edge of the brick, reflect velocity about a vertical axis. If it straddles or crosses only a horizontal edge, reflect velocity about a vertical axis.
Most helpful! I don't like how the ball currently bounces off the bricks either, but hadn't looked into it yet.
Link to comment

Thanks again supercat! The routines worked great with some minor tweeks once I figured out that bit BALLyHigh,y was not a valid command! DASM didn't complain(or I missed the error as it scrolled by) and it took stepping thru the debugger to realize the BIT command wasn't even in the compiled program :)

Link to comment
Guest
Add a comment...

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