Jump to content
Sprybug

Super Mario 2600 Entire World 1 Demo!

Recommended Posts

S*** just got real.

 

Here you are. With this you can play worlds 1-1 through 1-4 and battle Bowser Jr at the end of 1-4. If you beat him, that's the end of the demo so far. It'll just sit on the screen and you'll have to reset.

 

Controls are the same. Left/Right Moves Left and Right. Up runs and shoots fireball when firemario. Fire button jumps. You can hold down on the jump button to get an extra bounce off of the top of enemies. Power ups and coins can be found in yellow blocks while secret items can come from regular bricks at rare times when they are smashed if you are big.

 

One bug I haven't been able to figure out yet is rare when it happens. Sometimes when you run into an enemy while having the starman power, it will kill you. I don't know why yet, I've been through all the parts of the code that have to do with this and can't put my finger on it yet. But as I said it's rare when it does happen.

 

Defeat Bowser Jr. by jumping on his head 6 times. The bar on the bottom left that usually is your timer, becomes his life bar. Sounds easy? It may seem so at first, but when he starts jumping around and bouncing off the walls when he hides in his shell it becomes pretty difficult, plus he hates fireballs and will use his shell to defend himself.

 

I decided not to have the background flash while you're invincible. To me it ended up being too distracting and might have been seizure inducing for some. ;)

 

I also shifted the programming around so I know for a fact now I can get 16 levels in here, but will barely have any room left for a title screen and ending sequence once I do. Also, it looks like Bowser Jr. is going to have to be the only boss on all the boss levels. There's no more room for another.

 

So enjoy and would like to hear your feedback!

 

-Chris Spry

 

smbv06.bas.bin

  • Like 14

Share this post


Link to post
Share on other sites

Mario seems to move a lot better since the last time I tried it. Feels more like the real thing now.

Share this post


Link to post
Share on other sites

And I'll have to wait to be back at home to try it... raaaarrrgh

Share this post


Link to post
Share on other sites

What's the deal, man? I tried for half an hour trying to get to 1-4 but couldn't! I died in 1-3 too many times, I haven't even seen the ending of it yet! Anyway, I noticed a few bugs, like the shell in mid-air, and once, a Goomba was stuck in a pipe. I felt like a few times I went through an enemy without taking a hit.

post-9475-0-13917300-1346766520_thumb.png

Share this post


Link to post
Share on other sites

I felt like a few times I went through an enemy without taking a hit.

 

Same here...it seems as though the collision detection is in need of some adjustment. I am not a programer by any means, so I don't know how difficult this is to correct...it is just something I noticed and figured was worth mentioning.

 

Another thing I noticed: You can't collect coins unless you punch from directly underneath. I am not sure if this was a conscious decision or not. If so, I can understand why, as it does make the game more challenging.

 

Other than that, it seems super clean and plays very nicely! I can't wait for this one on cart!!! Awesome job! :thumbsup: :thumbsup: :thumbsup:

Share this post


Link to post
Share on other sites

What's the deal, man? I tried for half an hour trying to get to 1-4 but couldn't! I died in 1-3 too many times, I haven't even seen the ending of it yet! Anyway, I noticed a few bugs, like the shell in mid-air, and once, a Goomba was stuck in a pipe. I felt like a few times I went through an enemy without taking a hit.

I am really good at platformer games. Beat a lot of Mega Man and Super Mario games in my lifetime. It's funny you talk about dying at 1-3 as I find that to be the easiest level. Speed jumping will help on that level...a lot. Perhaps I designed it all to be a nice little challenge for me and since I've designed and played through it hundreds of times it might be a little too difficult for newcomers, but then again you don't want the game to be too easy. It would also lose some replay value if it was too easy. I know how to fix the goomba suck on a pipe syndrome. It happens when I put their spawn point too close to a playfield block, so I just need to fix the spawn point there. As for the turtle shell. Technically, it's not in mid-air. There's still one row of its sprite overtop of the platform and that's why it's hanging out there, even though it does look like it's floating. I may adjust some of the enemy sprites to "fall through" the edges of platforms to stop that from happening. As for Mario's collision detections with playfield blocks, etc, I couldn't do as much as I wanted with it because of time restraints between screen draws. I did the main meat and potatoes that are needed, but the little extras I couldn't add to make a more solid detection. However I did change up how the level data is read and scrolled on to maybe save a few cycles, so maybe I have one or two to spare to MAYBE do one more playfield detection somewhere. We'll see.

Share this post


Link to post
Share on other sites

I felt like a few times I went through an enemy without taking a hit.

 

Same here...it seems as though the collision detection is in need of some adjustment. I am not a programer by any means, so I don't know how difficult this is to correct...it is just something I noticed and figured was worth mentioning.

 

Another thing I noticed: You can't collect coins unless you punch from directly underneath. I am not sure if this was a conscious decision or not. If so, I can understand why, as it does make the game more challenging.

 

Other than that, it seems super clean and plays very nicely! I can't wait for this one on cart!!! Awesome job! :thumbsup: :thumbsup: :thumbsup:

I felt like a few times I went through an enemy without taking a hit.

 

Same here...it seems as though the collision detection is in need of some adjustment. I am not a programer by any means, so I don't know how difficult this is to correct...it is just something I noticed and figured was worth mentioning.

 

Another thing I noticed: You can't collect coins unless you punch from directly underneath. I am not sure if this was a conscious decision or not. If so, I can understand why, as it does make the game more challenging.

 

Other than that, it seems super clean and plays very nicely! I can't wait for this one on cart!!! Awesome job! :thumbsup: :thumbsup: :thumbsup:

 

The only time that you can pass through and enemy is when you're invincible in one shape or form. I've never had that happen to me when I'm "solid". When it comes to enemy/mario detections, I use the Atari's hardware which is pixel perfect. After you get hit by something and powerdown, you are invincible for a short time. If I didn't do that, you'd get hit by same enemy until you died. B'sides, that's what they do in the real game anyhow. I know the detections, mainly between playfield and sprites aren't perfect as I couldn't use the Atari's Hardware method of doing it because of scrolling and it only detects when the screen is drawn and its already too late by that point. I don't want a frame of Mario inside of a playfield block before getting pooped out of it. I had to program my own set of detections which use the PFRead command. Unfortunately it takes up quite a bit of cycle time for each read and after several of them, along with all the other code, I've almost used all the cycle time before I have to draw the screen again. There have been times where I've jumped through blocks, depending on the angle I was at. I'm going to try tweaking it before the final release, but I'm not sure how much more I can squeeze outta the puppy.

 

Thanks all for you feedback. For the most part the way things happen in the game happen for one reason or another, mainly due to limitations in one shape or another. Rather it be ROM Space, RAM Space, Cycle time between screen draws, etc. But I still like hearing your feedback.

  • Like 1

Share this post


Link to post
Share on other sites

I haven't had a chance to test your latest build but have you considered removing the Mario IP and making this its own game? With the slight changes in game mechanics I think it could stand on its own. :thumbsup:

Share this post


Link to post
Share on other sites

Mario seems to move a lot better since the last time I tried it. Feels more like the real thing now.

You're not the first one to say that since an update, but I really didn't do anything different with him. The only addition I made to his control was the ability to jump-bounce off of enemies. It's all relatively the same. It probably seems better with a more complete game at hand.

Share this post


Link to post
Share on other sites

I haven't had a chance to test your latest build but have you considered removing the Mario IP and making this its own game? With the slight changes in game mechanics I think it could stand on its own. :thumbsup:

It's something I have been considering and it'll be a decision I make after I finish all the levels and bug test the hell out of it. The main reason for it is because of copyright issues. I would love to release cartridges of this, but as far as the legal goes, I don't know if that'd be possible with the characters that are in the game as it stands right now.

Share this post


Link to post
Share on other sites

And I'll have to wait to be back at home to try it... raaaarrrgh

Say it aint so Crow! Feel free to riff on the game as you play. ;)

Share this post


Link to post
Share on other sites

Mario seems to move a lot better since the last time I tried it. Feels more like the real thing now.

You're not the first one to say that since an update, but I really didn't do anything different with him. The only addition I made to his control was the ability to jump-bounce off of enemies. It's all relatively the same. It probably seems better with a more complete game at hand.

 

Weird. I haven't tried it since the last time I posted. Seems like the time when you jump and hit the ground has become a little faster.

Share this post


Link to post
Share on other sites

Hey guys, just wanted to let you know I'll be attending the PRGE at the end of the month!

I live in Portland, so it just makes perfect sense!

Hope to see some of ya there.

Share this post


Link to post
Share on other sites

This is turning out to be a pretty fun game. You've managed to make it challenging, but not so much so that I quit out of frustration. After a bit of practice, I was able to play through and beat Bowser Jr. I hope you'll add a continue option to the finished game because I probably wouldn't be able to play all the way through 16 levels without one. :o

 

Visually, it suffers from the version of bB you're using, but you're doing great with what you have to work with. Personally, I'd go with some different colors, such as brown/orange for the ground and blocks and blues for the underground levels, but that's just my taste. I really hope that you keep an interest in this even after you finish, in case the newer bB is updated to meet your needs.

 

I thought I'd share a mockup that was done a few years ago of what SMB could look like if done in assembly language. This pic was originally posted by grafixbmp in his thread here. You may eventually be able to do something similar or even better in DPC+. Just imagine someday... the game you're putting together with updated graphics. ;)

 

post-9364-0-54732300-1346815967_thumb.png

 

P.S.

I love the enemies you've added, especially the Thwomp. You've really gone above & beyond with Bowser Jr.

Edited by KevinMos3

Share this post


Link to post
Share on other sites

This is turning out to be a pretty fun game. You've managed to make it challenging, but not so much so that I quit out of frustration. After a bit of practice, I was able to play through and beat Bowser Jr. I hope you'll add a continue option to the finished game because I probably wouldn't be able to play all the way through 16 levels without one. :o

 

Visually, it suffers from the version of bB you're using, but you're doing great with what you have to work with. Personally, I'd go with some different colors, such as brown/orange for the ground and blocks and blues for the underground levels, but that's just my taste. I really hope that you keep an interest in this even after you finish, in case the newer bB is updated to meet your needs.

 

I thought I'd share a mockup that was done a few years ago of what SMB could look like if done in assembly language. This pic was originally posted by grafixbmp in his thread here. You may eventually be able to do something similar or even better in DPC+. Just imagine someday... the game you're putting together with updated graphics. ;)

 

post-9364-0-54732300-1346815967_thumb.png

 

That is really neat. Believe me, I wish I could program in Assembly. It would allow me to get around a lot of the limitations (especially visually). I've programmed in BASIC up to C++ throughout my lifetime and assembly was one step above my technical understanding, although I do have a pretty "basic" understanding of how it works. I know if I ever did, I'd have to get an even better understanding of the technical side of the Atari, as with bankswitching techniques. I can't wait until BB gets a full release that takes advantage of the DPC+. Right now, it's not quite there yet but I hope it does soon, because I'd like to port other games to the 2600.

Share this post


Link to post
Share on other sites

I made a mock-up of a label for you, if you want.

12b1s.png

 

Also, this goes without saying, but your homebrew is pretty great.

Edited by exo
  • Like 3

Share this post


Link to post
Share on other sites

I made a mock-up of a label for you, if you want.

12b1s.png

 

Also, this goes without saying, but your homebrew is pretty great.

 

That's fantastic! Wow! Where did you find that image or did you do it yourself? That's so oldschool and fits it all pretty darn well! I was thinking of going silver or red on the label since the original came out in '85, the year right inbetween the two label styles. You read my mind. If this cartridge gets produced this would be a strong contender and I don't mind putting my real name on it.

  • Like 1

Share this post


Link to post
Share on other sites

I made a mock-up of a label for you, if you want.

12b1s.png

 

Also, this goes without saying, but your homebrew is pretty great.

 

That's fantastic! Wow! Where did you find that image or did you do it yourself? That's so oldschool and fits it all pretty darn well! I was thinking of going silver or red on the label since the original came out in '85, the year right inbetween the two label styles. You read my mind. If this cartridge gets produced this would be a strong contender and I don't mind putting my real name on it.

It's the PAL box for Super Mario Bros., and thanks! If you want to make a change or something, I can give you the .psd if you want. Once you finish the game, I'm definitely printing myself off a copy, haha. Also, did you make this entirely with bb? As an amateur bb programmer, this is some SERIOUS inspiration.

Share this post


Link to post
Share on other sites

I'm defiinitely exited about the updates to this game. I haven't had an opportunity to test it yet, as we are in the process of remodeling my house, and my Atari is packed away. As for the copyright issues, just change the name of the game, label, and manual to "Atario", but leave the graphics alone. Anything other than "save the princess" will do for a backstory. That will re-classify the game as a "Mario parody", which is protects it legally under fair use laws. I haven't had the opportunity to watch the Bowser Jr vids yet, as I'm on my 3DS. As for some people complaining that world 1 is too difficult, you need to guage the difficulty so that World 1 is easy, world 2 and 3 are medium, and save the difficult platforming tricks for world 4. In the original Mario bros, world 1 was easy, and they got progressively more difficult from there on. Someone suggested changing the brick colors on the underground levels to blue. I'm not completely sure exactly how you've got the bank-switcing laid out, but if it is solid 4kb chunks, then you likely have the entire game engine copied multiple times throughout the ROM. If you group the overworld, underworld, castle stages, etc together into separate banks, you could tweak the colors and music tracks, as well as remove the code for certain game elements that aren't needed. For example, you probably don't need thwomp code in the overworld banks, or underworld and overworld music scores programmed into the castle banks. Also, you may consider doing a midnight-blue background instead of black for the Overworld. The contrast would still be dark enough for the sprites to show up brightly, but the blue hue would really provide some differentiation from the underground/ castle areas. Just a thought. Also, I completely would understand if the task is unsurmountable, but it would be neat to provide an under-water area, maybe somewhere in world 2. The water area would probably need it's own bank with a modified game engine and inclue code for cheep-cheeps and Bloopers. If that is too much to ask, I completely understand. The fact that you fit a complete Bowser Jr fight into the game rather than just a Koopa bridge is nothing short of a miracle. And it's always three hops to defeat Bowser Jr/ Koopalings, not six. Keep the updates coming. I look forward to owning a cart of the completed game someday.

Edited by stardust4ever

Share this post


Link to post
Share on other sites

I'm defiinitely exited about the updates to this game. I haven't had an opportunity to test it yet, as we are in the process of remodeling my house, and my Atari is packed away. As for the copyright issues, just change the name of the game, label, and manual to "Atario", but leave the graphics alone. Anything other than "save the princess" will do for a backstory. That will re-classify the game as a "Mario parody", which is protects it legally under fair use laws. I haven't had the opportunity to watch the Bowser Jr vids yet, as I'm on my 3DS. As for some people complaining that world 1 is too difficult, you need to guage the difficulty so that World 1 is easy, world 2 and 3 are medium, and save the difficult platforming tricks for world 4. In the original Mario bros, world 1 was easy, and they got progressively more difficult from there on. Someone suggested changing the brick colors on the underground levels to blue. I'm not completely sure exactly how you've got the bank-switcing laid out, but if it is solid 4kb chunks, then you likely have the entire game engine copied multiple times throughout the ROM. If you group the overworld, underworld, castle stages, etc together into separate banks, you could tweak the colors and music tracks, as well as remove the code for certain game elements that aren't needed. For example, you probably don't need thwomp code in the overworld banks, or underworld and overworld music scores programmed into the castle banks. Also, you may consider doing a midnight-blue background instead of black for the Overworld. The contrast would still be dark enough for the sprites to show up brightly, but the blue hue would really provide some differentiation from the underground/ castle areas. Just a thought. Also, I completely would understand if the task is unsurmountable, but it would be neat to provide an under-water area, maybe somewhere in world 2. The water area would probably need it's own bank with a modified game engine and inclue code for cheep-cheeps and Bloopers. If that is too much to ask, I completely understand. The fact that you fit a complete Bowser Jr fight into the game rather than just a Koopa bridge is nothing short of a miracle. And it's always three hops to defeat Bowser Jr/ Koopalings, not six. Keep the updates coming. I look forward to owning a cart of the completed game someday.

 

You have some really good suggestions and ideas. I really like the Midnight Blue background idea too. If you think world 1 was kind of difficult, you should try 2-1. It's even harder. I have a trick that you must do with a koopa to get past it. The trick isn't hard to do but a must. I know about levels getting progressively harder as they go along. That's why there are few pitfalls and obstacles to get around. 2-1 is where you start finding more pitfalls, more obstacles, tricks, and things you gotta do to pass a level. The first world you can just run through if you want while only battling a few enemies. Pretty simple stuff.

As for a water world. Can't do it. Not enough ROM left to program water levels. I don't have enough ROM to make a final Bowser battle (will have to be Bowser Jr.). I'll be lucky to have enough ROM left to have an ending sequence of some sort.

I've done a lot of shuffling and right now things are this way:

Bank 1 - Mario graphic routines, level scrolling routines, Mario collision detection and handling routines, screendraw.

Bank 2 - Enemy and Object Routines, Enemy and Object sprite and color data, screendraw.

Bank 3 - Mario Controls, level routines and handling, checkpoint routines, special item routines, fanfare & completed level routines, and some more enemy routines that I couldn't fit in bank 2, plus the 3rd screendraw for one game cycle.

Bank 4 - intro screen graphics and routines,level preperations and initialization, Boss battle routines, game over screen and music.

Bank 5 - World 1 & 2 Data and read routines.

Bank 6 - World 3 & 4 Data and read routines.

Bank 7 - All Music Routines and Music Data.

Bank 8 - Where the BB engine goes and all the table data. Thwomp routine is here because I ran out of space in Bank 2. Title Screen and Ending Sequence will most likely go here as I still have about 800 bytes left to work with in this bank.

 

Bank 1-6 (once I have all the level data in it), only have anywhere from 50-200 bytes left in each.

Bank 7 still has about 500 bytes left, but I plan on using the remaining space for the end tune. This is also why Bowser Jr. doesn't have his own music and world 1-4 uses the standard underworld music.

 

And as for six jumps instead of three, three was way too easy. Bowser Jr. actions are not only dictated by a sequence, but some timing elements as well. He'll walk around until those timing elements strike and then he'll jump, do his shell thing and when the timing elements strike again he'll pop back up, stay there for a split second and do it all over again. I found that he walks around for quite a bit (unless you shoot at him for a while first) at first before he does his first jump, but when does that first jump he starts doing it more often. By the time he does that first jump you can get 3 or 4 jumps on him. So get to him early while you can because getting those final few jumps gets more difficult, like it should. An end boss that gets progressively harder as it goes along. Something you don't always get.

Share this post


Link to post
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.

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