Jump to content
IGNORED

My First Game!


TooSlowGamer

Recommended Posts

Hey guys! I'm pretty excited that I was able to finish (well, finished enough to play) my first game. It's not very good, and it still has a lot of things to improve, but it's playable! This game isn't made for any of you to play and have a good time (you may, but that wasn't the purpose), it was made just for me to understand batari Basic, so I can hopefully make a better game, and maybe, one day learn assembly and program a 2600 game the real way.

 

But anyway, the game I created is just a two player game. It really has nothing to do with Berzerk, other than the name, the sprites, and the way you shoot. Anyway, it's just a deathmatch similar to Combat, but with the controls and look of Berzerk.

 

If I'm violating any copyrights of Atari, such as the name, or possibly the shape of the sprite, I can change them if someone lets me know.

 

I know there needs to be improvements. Hopefully I will be able to add sprite animation, better sounds, and shooting diagonally in the future, but I may just move onto a completely new project.

Berzerk Blitz.bin

Edited by TooSlowGamer
  • Like 1
Link to comment
Share on other sites

Hey guys! I'm pretty excited that I was able to finish (well, finished enough to play) my first game. It's not very good, and it still has a lot of things to improve, but it's playable! This game isn't made for any of you to play and have a good time (you may, but that wasn't the purpose), it was made just for me to understand batari Basic, so I can hopefully make a better game, and maybe, one day learn assembly and program a 2600 game the real way.

 

But anyway, the game I created is just a two player game. It really has nothing to do with Berzerk, other than the name, the sprites, and the way you shoot. Anyway, it's just a deathmatch similar to Combat, but with the controls and look of Berzerk.

 

If I'm violating any copyrights of Atari, such as the name, or possibly the shape of the sprite, I can change them if someone lets me know.

 

I know there needs to be improvements. Hopefully I will be able to add sprite animation, better sounds, and shooting diagonally in the future, but I may just move onto a completely new project.

Looks like a good start. You will have to add collision detection (as you probably already know) and the other things you have said, but it definitely is a good first game. I can't remember the name of the kernel, but somewhere there is a 2 player score kernel out there that would probably work great for the score. Either that, or you could score by adding ones and thousands. Anyway, keep it up and great job!

Link to comment
Share on other sites

Hey guys! I'm pretty excited that I was able to finish (well, finished enough to play) my first game. It's not very good, and it still has a lot of things to improve, but it's playable! This game isn't made for any of you to play and have a good time (you may, but that wasn't the purpose), it was made just for me to understand batari Basic, so I can hopefully make a better game, and maybe, one day learn assembly and program a 2600 game the real way.

 

But anyway, the game I created is just a two player game. It really has nothing to do with Berzerk, other than the name, the sprites, and the way you shoot. Anyway, it's just a deathmatch similar to Combat, but with the controls and look of Berzerk.

 

If I'm violating any copyrights of Atari, such as the name, or possibly the shape of the sprite, I can change them if someone lets me know.

 

I know there needs to be improvements. Hopefully I will be able to add sprite animation, better sounds, and shooting diagonally in the future, but I may just move onto a completely new project.

Looks like a good start. You will have to add collision detection (as you probably already know) and the other things you have said, but it definitely is a good first game. I can't remember the name of the kernel, but somewhere there is a 2 player score kernel out there that would probably work great for the score. Either that, or you could score by adding ones and thousands. Anyway, keep it up and great job!

 

Collision detection? I thought that was when one character or missile runs into something. I already have that? The only problem is I need to go through the flashing sequence because when player 1 hits player 2, he goes back to where he already is like nothing happened.

Link to comment
Share on other sites

Hey guys! I'm pretty excited that I was able to finish (well, finished enough to play) my first game. It's not very good, and it still has a lot of things to improve, but it's playable! This game isn't made for any of you to play and have a good time (you may, but that wasn't the purpose), it was made just for me to understand batari Basic, so I can hopefully make a better game, and maybe, one day learn assembly and program a 2600 game the real way.

 

But anyway, the game I created is just a two player game. It really has nothing to do with Berzerk, other than the name, the sprites, and the way you shoot. Anyway, it's just a deathmatch similar to Combat, but with the controls and look of Berzerk.

 

If I'm violating any copyrights of Atari, such as the name, or possibly the shape of the sprite, I can change them if someone lets me know.

 

I know there needs to be improvements. Hopefully I will be able to add sprite animation, better sounds, and shooting diagonally in the future, but I may just move onto a completely new project.

Looks like a good start. You will have to add collision detection (as you probably already know) and the other things you have said, but it definitely is a good first game. I can't remember the name of the kernel, but somewhere there is a 2 player score kernel out there that would probably work great for the score. Either that, or you could score by adding ones and thousands. Anyway, keep it up and great job!

 

Collision detection? I thought that was when one character or missile runs into something. I already have that? The only problem is I need to go through the flashing sequence because when player 1 hits player 2, he goes back to where he already is like nothing happened.

 

When I shot player 2 with player 1, nothing seemed to happen. When I ran player 1 into the wall, he went back to the starting point. Maybe because player 2 never moved, I never saw the collision detection because he returned to the same spot. If I get some time, I will throw it onto my Harmony cart and try it on the Atari so I can move both players.

 

Cliff

Link to comment
Share on other sites

 

When I shot player 2 with player 1, nothing seemed to happen. When I ran player 1 into the wall, he went back to the starting point. Maybe because player 2 never moved, I never saw the collision detection because he returned to the same spot. If I get some time, I will throw it onto my Harmony cart and try it on the Atari so I can move both players.

 

Cliff

 

It's coded for you to go back to the start if you run into the wall or get shot. If the two players run into each other they both go back to start. In the future, I want to add the flashing electrocution animation when they get hit, so that it gives you time to think before getting back into the game (because now, if you run into the right wall, you'll go back to start and won't have time to release the right joystick, so you'll get hit multiple times).

 

Also, you can play two players in stella, you just have to map the second players keys to keys that aren't already being used for an option in stella.

 

I also just finished an update on the game. This time I added sprite animation, the ability to shoot diagonally, and the score (currently just adding 1000 and 1).

 

Sprite animation was way easier than I thought, I tried it before and just couldn't get it. I was laying in bed, and thought of a way and it was so simple I was wondering why I didn't do it, it ended up working perfectly.

 

I had shooting diagonally coded before I made the thread post, but I just couldn't get it to work. I could get shooting up right and down left to work, but I just couldn't get shooting the other diagonals to work. I just deleted the code and decided I'd work on it later. Yesterday, I decided to play the real Berzerk on Stella. I found I had the same problem, couldn't shoot up left or down right. So, I quickly rewrote the code I had before and tried it out on a different emulator, and it worked perfectly.

 

Score was easy to implement, I don't know why I didn't do it before.

 

 

Things I want to add in the future:

 

Slow down the movement of the characters to make it easier to control and more like the original.

Diagonal shooting should be more horizontal like the original.

Another playfield.

Option via difficulty switches to turn off whether you die from hitting the walls.

Flashing electrocution animation when you are hit.

Better sound.

A better scoring system for both players. Is it possible just to remove the extra 0 in the center?

Possibly health bars.

If I have room when I add everything else I want to add, maybe basic AI.

 

If I accomplish all of those goals, I think this could turn into a decent game. I really need to get a harmony cart so I can play/test this on a real 2600!

Berzerk Blitz Ver. 1.1.bin

Edited by TooSlowGamer
Link to comment
Share on other sites

The sprite animation on the new version looks nice. I see what you mean about hitting right just after being killed. Maybe you could put in some code that disqualifies that playfield area from killing your guy or scoring it. You could also do it by specifying an invincibility timer so that for the first few seconds after you spawn, you can't be killed. That would keep people from camping your spawn point too. Looks good though. Keep up the good work.

 

Cliff

Link to comment
Share on other sites

I'm going to add the flashing animation, that would interrupt all gameplay for a few seconds for both characters (like in the original). I figure, if I can slow down the speed of the characters, you won't die very often and it wouldn't be a big deal that the second player is frozen for a few seconds.

 

I'm also going to try sending BOTH players back to start when one shoots the other and see how it turns out. Again, I think that if I further develop the game, it will be harder to shoot the other player and this won't happen all that often, especially if I implement a life bar.

 

And, if I have room, I'm going to put options via the difficulty switch turning on or off whether you die from hitting the playfield or not.

Edited by TooSlowGamer
Link to comment
Share on other sites

OK, here's a new version. This will probably be my last version for a while, if not the last version ever.

 

I added a new play field. If you press select on the title screen, the press fire, you'll get it.

 

I added use of the difficulty switches. Difficulty B won't allow you to get hurt from the walls, difficulty a will.

 

Both players get sent back to start when you shoot someone.

 

The scoring system is better. 8 lives per player. When someone wins, the screen freezes and changes color. Hit reset to reboot.

 

Added more sounds. The sounds aren't the greatest, but I didn't even originally plan to put any sounds in at all.

Berzerk Blitz Ver. 2.0.bin

Link to comment
Share on other sites

OK, here's a new version. This will probably be my last version for a while, if not the last version ever.

 

I added a new play field. If you press select on the title screen, the press fire, you'll get it.

 

I added use of the difficulty switches. Difficulty B won't allow you to get hurt from the walls, difficulty a will.

 

Both players get sent back to start when you shoot someone.

 

The scoring system is better. 8 lives per player. When someone wins, the screen freezes and changes color. Hit reset to reboot.

 

Added more sounds. The sounds aren't the greatest, but I didn't even originally plan to put any sounds in at all.

 

Looking a lot better. Everything is working good. If you want to get rid of the score when the screen changes color at the end, you can use scorecolor= and just set it to the yellow value you are using for the background.

 

I hope you keep writing games. For just picking up batari Basic, you really have done a good job.

 

Cliff

Link to comment
Share on other sites

I had shooting diagonally coded before I made the thread post, but I just couldn't get it to work. I could get shooting up right and down left to work, but I just couldn't get shooting the other diagonals to work. I just deleted the code and decided I'd work on it later. Yesterday, I decided to play the real Berzerk on Stella. I found I had the same problem, couldn't shoot up left or down right. So, I quickly rewrote the code I had before and tried it out on a different emulator, and it worked perfectly.

Berzerk works fine for me with all diagonals, as does your ROM. I suspect it's because your keyboard doesn't support reading from certain sets of keys at the same time. See Keyboard are Evil for more information. I'll bet if you use a joystick, everything would work fine.

Link to comment
Share on other sites

I had shooting diagonally coded before I made the thread post, but I just couldn't get it to work. I could get shooting up right and down left to work, but I just couldn't get shooting the other diagonals to work. I just deleted the code and decided I'd work on it later. Yesterday, I decided to play the real Berzerk on Stella. I found I had the same problem, couldn't shoot up left or down right. So, I quickly rewrote the code I had before and tried it out on a different emulator, and it worked perfectly.

Berzerk works fine for me with all diagonals, as does your ROM. I suspect it's because your keyboard doesn't support reading from certain sets of keys at the same time. See Keyboard are Evil for more information. I'll bet if you use a joystick, everything would work fine.

 

Yea, that's what I found the problem to be. When I said I put it in a different emulator, what I did was put it on my flashcart and emulated it on my DS, so that explains it.

Link to comment
Share on other sites

I decided to update a few things on this game before I started another one. I have just a few bytes left, so I will have to stop this project for now. So this should be the final update.

 

In this version I added these:

 

A block to tell you if you will start on track 1 or 2. (Press select to select and fire to start)

Changed score color on gameover screen so you can no longer see it.

Put the sides in on the gameover screen.

Changed the gameover screen color slightly.

Added extremely simple AI. To start AI control of player 2, select the Black and White option. All he does is go up and down and fire. It's more like a shooting target, than a controlled player.

Added collision detection between missiles (i.e. if both missiles run into each other, they get reset).

Berzerk Blitz Ver. 2.1.bin

Link to comment
Share on other sites

Feels a lot like Showdown in 2100 AD on the Odyssey 2.

 

This game is a very good start. I might even consider getting this on cart when it's done.

 

My only suggestion would be a level editor. That's your next challenge when you get the actual game finished ;) .

Link to comment
Share on other sites

Feels a lot like Showdown in 2100 AD on the Odyssey 2.

 

This game is a very good start. I might even consider getting this on cart when it's done.

 

My only suggestion would be a level editor. That's your next challenge when you get the actual game finished ;) .

 

The problem is, this is my first time coding on the system, so it's very inefficient and very big. The last update (2.1) was like 14 bytes away from over 4k. I know I could optimize a lot, but it'd probably be easier to rewrite the whole game.

 

I think a level editor would be simple, but only if I used bank switching. I think I may though, because, as said before, this game is a practice game for me to learn the language. Bankswitching is an important thing to learn.

 

Also, if I decide to use bankswitching, it would give me quite a lot of extra room, even with the level editor. I could probably fit in more advanced AI, the shooting sprites, etc.

 

Also, if you buy a cart that uses bankswitching, it's 5 dollars more, right? Because it uses the melody board? If I use bankswitching, why would I limit myself to 8k? Are there any problems with going to 16k? I know it's not as technically impressive, but that doesn't matter to me as much, because games should just be about having fun.

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