Jump to content



1

Yars' Revenge-type game


34 replies to this topic

#1 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jan 6, 2011 7:15 AM

Hey, I'm fiddling around with an idea again, this time it's a thing like Yars' Revenge, and I was wondering what the Neutral Zone (the colorful thick line) in Yars' Revenge is made of and if I can duplicate it in bB.

#2 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jan 6, 2011 8:33 AM

The Neutral Zone is made from one of the playfield registers, being fed varying parts of the program code as data.

It's not an easy effect to replicate with the standard bB kernels. I did one version of it in this thread, but it sacrifices a player to do it.

#3 Random Terrain ONLINE  

Random Terrain

    Visual batari Basic User

  • 20,918 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Thu Jan 6, 2011 8:38 AM

Related links:

http://www.atariage....ost__p__2103953

http://www.atariage....-field-awesome/

[Oops, I see one of the links was posted already. I started replying, then had to walk away and help watch a baby for a while.]

Edited by Random Terrain, Thu Jan 6, 2011 8:40 AM.


#4 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jan 6, 2011 11:04 AM

How would I make it different colors like in the game?
EDIT : OK, figured it out.

#5 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jan 6, 2011 11:26 AM

here's v2 with per-line color, but you lose missile1 due to the multicolor player1.

It should also be noted that you can change the height of the effect with player1height, so you could create a zone that shrinks or moves around, or do something entirely different, like a transporter effect.

 rem the energy barrier has large areas of blank space because this is a short program

 set kernel_options player1colors

 dim p1clo=player1color
 dim p1chi=player1color+1

datastart
 const datastarthi=(#>.datastart)

 player1x=50
 player1y=90
 player1height=90
 player1pointerhi=datastarthi
 p1chi=datastarthi

gameloop
 player1pointerlo=rand/2
 p1clo=rand/2
 rem COLUP0=rand
 REFP1=rand
 NUSIZ1=$07
 drawscreen
 goto gameloop


#6 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jan 6, 2011 7:12 PM

I'm fiddling around with your code and I can't figure out why the qotile's missile isn't showing. (Don't be afraid, I've remarked the use of every variable.)

Attached Files



#7 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Thu Jan 6, 2011 8:35 PM

There were a few small things that were off... I commented the attached source code with my changes. The comments all start with "RevEng" to make it easier to find.

This is looking really good! :thumbsup:

Attached File  yar2.rev.bas   3.81K   39 downloads
Attached File  yar2.bas.bin   8K   69 downloads

#8 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Thu Jan 6, 2011 10:39 PM

Cool, thanks! I took your code and expanded on it even more, making this demo version (you can tell it's a demo because the colors change every 5 seconds like the early Atari 2600 games did when you first turn them on.) A surprising fact: when having player1colors on, putting "player1color=f" actually works for a one-pixel-tall sprite. I haven't checked this for sprites taller than this (which would be just about every sprite imaginable!)

Attached Files



#9 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Fri Jan 7, 2011 7:06 AM

It's impressive, especially for using the standard bB kernel!

#10 Piggles OFFLINE  

Piggles

    Star Raider

  • 67 posts

Posted Fri Jan 7, 2011 11:03 AM

View Postatari2600land, on Thu Jan 6, 2011 10:39 PM, said:

Cool, thanks! I took your code and expanded on it even more, making this demo version (you can tell it's a demo because the colors change every 5 seconds like the early Atari 2600 games did when you first turn them on.) A surprising fact: when having player1colors on, putting "player1color=f" actually works for a one-pixel-tall sprite. I haven't checked this for sprites taller than this (which would be just about every sprite imaginable!)

Well done! Go all the way good sir, and prove it can be done with bB!

#11 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Fri Jan 7, 2011 11:05 AM

There's just one problem, though: The scanline count. It wavers somewhere between 261-263. This is evident when you look at the bottom of the screen and you can see it move back and forth one pixel, and you can also see the score move. Is there any way to fix this?

#12 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Fri Jan 7, 2011 6:53 PM

I think it's a kernel bug.

If I use "const pfres=25" or "const prfres=23" (instead of the current "const pfres=24") then I get a steady 262 count.

Edited by RevEng, Fri Jan 7, 2011 7:13 PM.


#13 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Fri Jan 7, 2011 10:50 PM

Yes, but the score still wobbles. What is causing that?

#14 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Fri Jan 7, 2011 11:52 PM

View Postatari2600land, on Fri Jan 7, 2011 10:50 PM, said:

Yes, but the score still wobbles. What is causing that?
I see what you mean - I was testing on the earlier version, so I missed the wobbly score thing.

It looks like the kernel bug is still there... it appears to be triggered when you use no_blank_lines and pf_scroll.

Here's an unofficial fix. Stick the attached std_kernel in your yar build directory, remove the .txt extension, and rebuild your binary.

Attached File  std_kernel.asm.txt   12.33K   33 downloads

I can't guarantee that I haven't introduced some other bug with this, so don't replace your official kernel with it.

[edit - anyone wanting to see the change, just search for comments with "RevEng"]

Edited by RevEng, Fri Jan 7, 2011 11:55 PM.


#15 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Sat Jan 8, 2011 2:29 AM

Is there a way to get rid of the little line the same color as the playfield that shows up when the shield is at the bottom 3 positions?

#16 RevEng OFFLINE  

RevEng

    River Patroller

  • 2,010 posts
  • bit shoveler
  • Location:Canada

Posted Sat Jan 8, 2011 9:58 AM

Its the "reboot" you're doing... the register that controls VBLANK is being zeroed before the background color is zeroed.

To hide the line you can do a "COLUBK=0" right before the reboot, though it would be much cleaner to not use the reboot at all.

#17 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Sat Jan 8, 2011 2:10 PM

Here's a newer version. Next I will start working on starting the game and moving the ship.

Attached Files



#18 lucifershalo OFFLINE  

lucifershalo

    River Patroller

  • 2,366 posts
  • Location:Belgium

Posted Sat Jan 8, 2011 4:36 PM

Hurray for Yars 3
what is it going to be called?
Yar Strikes Back
Attack of The Yar
or the Phantom Yar ? :cool:

#19 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Sat Jan 8, 2011 5:49 PM

How about "Yars' Other Revenge"? Posted Image Actually, I don't know that much about the game, so I'll have to study the game some more in the near future. And "Yar 3" is just the name of the file, not the name of the game.

#20 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Mon Jan 24, 2011 11:28 AM

To start the game, press fire. To fire the missile, press fire. Shooting the qotile doesn't work yet, and also the qotile doesn't spin and come at you yet.

Attached Files



#21 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Tue Jan 25, 2011 2:16 PM

Been slaving away at this for hours now since the last version. I've included a lot of things, including sfx. One thing I am having trouble with is thinking about how to display the Zorlon cannon. If anyone has any ideas, feel free to reply.

Attached Files



#22 dbks OFFLINE  

dbks

    Combat Commando

  • 6 posts

Posted Tue Jan 25, 2011 9:57 PM

View Postatari2600land, on Tue Jan 25, 2011 2:16 PM, said:

Been slaving away at this for hours now since the last version. I've included a lot of things, including sfx. One thing I am having trouble with is thinking about how to display the Zorlon cannon. If anyone has any ideas, feel free to reply.

I looked at your code and you set kernel_options player1colors no_blank_lines so that means no missile0 && missile1 available, right? So you must use player1. I was just messing around and I came up with the following for using player1:

fire button - shoots the cannon
joystick - move yar guy
in the code set ZORLONMAXCOUNTER = 1 to draw it every frame or ZORLONMAXCOUNTER = n to draw it every n frames (this is so you can draw other things with player1 on the 'off' frames for the zorlon cannon).

Attached File  zorlonCannonPlayerSprites.bas.bin   4K   44 downloads
Attached File  zorlonCannonPlayerSprites.bas   3.12K   33 downloads

I also did version using the missiles, but I don't think it came out so good and you aren't using them any way, but here it is:

Attached File  zorlonCannonMissiles.bas.bin   4K   37 downloads
Attached File  zorlonCannonMissiles.bas   4.08K   27 downloads

My code might be messy and totally not what you're looking for, but I thought I'd show what I came up with.

#23 atari2600land ONLINE  

atari2600land

    Quadrunner

  • 6,494 posts
  • All hail the zyzzyva!
  • Location:Salem, Oregon

Posted Wed Jan 26, 2011 3:25 AM

I guess the only way to show the Zorlon cannon is to have p1 flicker twice. I really didn't want to do this, but in the end, I don't know if it looks good or if it's a total flickerfest.

Attached Files



#24 yuppicide OFFLINE  

yuppicide

    I am the Black Knight. Give me your money!

  • 6,933 posts
  • Location:New Jersey

Posted Thu Jan 27, 2011 11:21 PM

Wow! That is fantastic!!!!!

You should make Yars Revenge 2.

#25 Philsan OFFLINE  

Philsan

    River Patroller

  • 2,335 posts
  • New Orleans Saints Super Bowl XLIV Champions
  • Location:Switzerland

Posted Fri Jan 28, 2011 2:59 AM

Awesome!




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users