Jump to content
IGNORED

GoSub 2


atari2600land

Recommended Posts

I want to make this a 32k cart, so I'll be putting in tons of music as well as the Zyx Easter egg *and* a minigame, although I haven't decided what the minigame will be based on, as a Street Racer clone is almost impossible with the playfield changes and scrolling, it gives me a headache just thinking about it. Anyway, here's a new version, and by long song, at the end is an original composition I call "Triumph of the Sub." To get to the end "animation," use the level select code at the title screen (fire + right) until you get to 9, then press reset.

gosubtwo46.bas.bin

gosubtwo46.bas

Link to comment
Share on other sites

Today's version.

 

changes:

+ added a new maze (level 9)

+ changed in-music game to "Frere Jacques"

 

left to do in the near future:

+ add minigame

+ change title screen

+ compose/add title screen song

 

left to do (long term)

+ turn game into 32k cart

+ make 11 more mazes.

 

My plan is 20 levels, plus a mini-game something. How am I doing with the level designs? Too hard? Just right?

gosubtwo47.bas.bin

gosubtwo47.bas

Link to comment
Share on other sites

Hi Chris

Played your last version on real harware(7800).Works nice so far.The levels are not too hard.But i am still missing my fishie.How about a 2nd oponent in the game?A "Shark" would be great.And why only 20 mazes?

If you plan to raise to 32K,there should be more space for mazes????

If you want,i could make some mazes for you.

greetings Walter

Link to comment
Share on other sites

Here's a question for someone knowlegable for bB: Are playfield commands still restricted to the last bank? If not, I could have like 100 of them fill up banks 5-8. That'd be cool. Otherwise, I'd have to upgrade to 32k, using only 20k worth of it. I have 4,931 bytes left in all 4 banks, but I'm not done designing mazes for the (first?) 20 levels.

Link to comment
Share on other sites

Here's a question for someone knowlegable for bB: Are playfield commands still restricted to the last bank? If not, I could have like 100 of them fill up banks 5-8. That'd be cool. Otherwise, I'd have to upgrade to 32k, using only 20k worth of it. I have 4,931 bytes left in all 4 banks, but I'm not done designing mazes for the (first?) 20 levels.

 

IIRC, I was using bank three for Combat DX, so no.

Link to comment
Share on other sites

With banks 6, 7, & 8 to fill up, now I can have around 80 mazes instead of just 20! Now it can't possibly be too short! Bank 5 is where the Easter egg is, and banks 4, 6, 7 and 8 are where the mazes will be. Right now, though, banks 6, 7 and 8 are empty. And, if you want to design mazes for me, go right ahead. Each maze is 32 pfblocks wide and 15 pfblocks tall, and the beginning should be at the lower left-hand corner, and the exit can be anywhere on the right side. Here's the first of many 32k revisions. I added two mazes, for a total of 11 so far. Only 71 more to go!

gosubtwo48.bas.bin

gosubtwo48.bas

Link to comment
Share on other sites

With banks 6, 7, & 8 to fill up, now I can have around 80 mazes instead of just 20! Now it can't possibly be too short! Bank 5 is where the Easter egg is, and banks 4, 6, 7 and 8 are where the mazes will be. Right now, though, banks 6, 7 and 8 are empty. And, if you want to design mazes for me, go right ahead. Each maze is 32 pfblocks wide and 15 pfblocks tall, and the beginning should be at the lower left-hand corner, and the exit can be anywhere on the right side. Here's the first of many 32k revisions. I added two mazes, for a total of 11 so far. Only 71 more to go!

Hi Chris

Could you send me a playfield screen,how the mazes should look like?How many space do i need for the sub?

greetings Walter

Link to comment
Share on other sites

Here's an example of a playfield:

 

playfield:

XXXXXXXXXXXXXXXXXXXXXX....XXXXXX
X.......X.......X.X............X
X.......X.......X.X............X
X...X...X...X...XXX...XXXXXX...X
X...X...X...X...X.....X..X.....X
X...X...X...X...X.....X..X.....X
X...X.......X...X..XX....X.....X
X...X.......X...X..X.....X.....X
X...XXXXXXXXX...X...XXXXXX...XXX
X...........X...X............X.X
X...........X...X............X.X
XXXXXXXXX...X...XXXXXX....XXXX.X
X...........X.............X....X
X...........X.............X....X
X...XXXXXXXXXXXXXXXXXXXXXXXXXXXX

end

So, for the sub to travel horizontally would require two vertical spaces, and for it to travel vertically would require three horizontal spaces, (although two could be used, it is harder in the main game, so that's why I use it for the extra life option.)

 

I don't know what bankswitch method to use, as Stella handles that for me.

Edited by atari2600land
Link to comment
Share on other sites

Well, I'm up to 19 levels, the # that the original GoSub had, but with 32k, I'll be putting way more. One thing concerns me, though. Bank 4 has 1,887 bytes left even though it has 20 playfield commands in it. How is that right? And bank 8 only has 2,079 bytes left instead of 3,796. Is that due to the Superchip, or is it weird? Well, anyway, to play the mazes, use the level select code (fire + right to choose a level). Levels 16-19 are the newest ones.

gosubtwo51.bas.bin

gosubtwo51.bas

Link to comment
Share on other sites

Figured out my problem. It was a stupid typing error and not the variables' fault. Well, anyway, I got started on the mini-game. To access what I have so far, at the title screen, press the select switch until the first number is 2, then press switch reset. To start the game, player 2 presses fire. I'm having trouble with player 2's sub to avoid. As you can see, it's not resetting to the top as quickly as player1's sub to avoid is. I need some help with this.

gosubtwo55.bas.bin

gosubtwo55.bas

Link to comment
Share on other sites

New version.

What's new

+Added 4 mazes for a total of 28 so far.

+Did some more work on the minigame. I fixed my problem. To get to the minigame, at the title screen, right difficulty goes to A and then press reset. To start the minigame, players 1 and 2 press fire at the same time. To speed up a sub, press fire. Up next for the minigame: Collision detection.

gosubtwo56.bas.bin

gosubtwo56.bas

Edited by atari2600land
Link to comment
Share on other sites

I did a whole bunch of optimizing code and have changed the way GoSub 2 works. I took out the minigame (see post above for why). The only changes in the regular game is:

+ Sub is now white

+ no sfx except for crashing into walls and level clearing music.

 

I did this so the # of lines would remain at 262. It's been working so far. I am also going to not have a mini-game (but there is an Easter egg.), so the # of mazes will be somewhere around 100.

gosubtwo58.bas.bin

gosubtwo58.bas

Edited by atari2600land
Link to comment
Share on other sites

I put sfx back in (getting an extra life, shooting missile, and hitting octopus with missile), and the # of lines still stands at 262, so I don't think the screen should jump when playing on a real 2600. I'm done with the "engine", so all I have left to do is create 70 mazes. Help would be nice. The mazes are 15 pfblocks high and 32 pfblocks long.

gosubtwo60.bas.bin

gosubtwo60.bas

Link to comment
Share on other sites

I'm having a little bit of trouble keeping the # of lines below 263. It seems like when the # of lines is at 263 is after I shoot the octopus but before it goes back to octopus_intro, which is this bit of code:

missile_shoot 

 if x=0 then goto 23a bank2

 if x=1 then missile1x=missile1x-1

 if x=2 then missile1x=missile1x+1

 if x=3 then missile1y=missile1y-1

 if x=4 then missile1y=missile1y+1

 if x=5 then missile1x=missile1x-1 : missile1y=missile1y-1

 if x=6 then missile1x=missile1x-1 : missile1y=missile1y+1

 if x=7 then missile1x=missile1x+1 : missile1y=missile1y-1

 if x=8 then missile1x=missile1x+1 : missile1y=missile1y+1

 if collision(missile1,playfield) then y{0}=0

 if collision(missile1,player0) && player1x<70 then t{1}=0 : t{0}=1 : y{0}=0 : y{1}=1 

 if collision(missile1,player0) && player1x>=70 then t{1}=0 : t{0}=1 : y{0}=0 : y{2}=1

 if missile1x>145 then y{0}=0

 if missile1x<20 then y{0}=0

 if missile1y>88 then y{0}=0

 if missile1y<5 then y{0}=0

 goto 23a bank2

 bank 2

23a

 if !y{0} then x=a : missile1x=player1x+5 : missile1y=player1y-1

 ballheight=4 : CTRLPF=$11

 if y{4} then ballx=0 : bally=0

24

 if y{2} then goto octopus_intro bank1

 if y{1} then goto octopus_intro bank2

I don't know why it keeps doing this. I'd like some help with this. Please download the binary file, go into the Stella debugger and type in "breakif { _scan == #263 }" and keep shooting the octopus until it goes back into the debugger and tell me what I'm doing wrong here.

gosubtwo62.bas.bin

gosubtwo62.bas

Edited by atari2600land
Link to comment
Share on other sites

Here's a new version with a new title screen song courtesy of thegoldenband. There is still a few mystery bugs to be solved here. One is right after you shoot the octopus, and a new one I discovered is right before you get to a new level. These happen occasionally, but I'd like them to not happen at all. I have 18,427 bytes left, most of which will be used to make mazes with so I can get 100 of them in. Remember the level select code at the title screen (fire + right or fire + left, depending on which level direction you want to go.) Also, I took away the points for shooting the octopus and replaced it with a level counter in case you haven't noticed.

gosubtwo64.bas.bin

gosubtwo64.bas

Edited by atari2600land
Link to comment
Share on other sites

Here's a new version with a new title screen song courtesy of thegoldenband. There is still a few mystery bugs to be solved here. One is right after you shoot the octopus, and a new one I discovered is right before you get to a new level. These happen occasionally, but I'd like them to not happen at all. I have 18,427 bytes left, most of which will be used to make mazes with so I can get 100 of them in. Remember the level select code at the title screen (fire + right or fire + left, depending on which level direction you want to go.) Also, I took away the points for shooting the octopus and replaced it with a level counter in case you haven't noticed.

 

Fun to see my music used in a real game! Is there any chance you could make it alternate between the two versions I sent you (underwater-final and underwater-final-alt, with alt coming first)? I tried to code it myself, but couldn't quite figure out how to do it...

Link to comment
Share on other sites

Fun to see my music used in a real game! Is there any chance you could make it alternate between the two versions I sent you (underwater-final and underwater-final-alt, with alt coming first)? I tried to code it myself, but couldn't quite figure out how to do it...

 

To my astonishment, I think I've figured out how to code it:

 

underwater_finalcombinedtest3.bas

underwater_finalcombinedtest3.bas.bin

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