This page is a mirror of Tepples' nesdev forum mirror (URL TBD).
Last updated on Oct-18-2019 Download

"Super Mario Bros." simultaneous two player mode p

"Super Mario Bros." simultaneous two player mode p
by on (#55331)
Would it be possible to hack the "Super Mario Bros." ROM to include a two player mode where both players play simultaneously (like in "Contra")?

by on (#55332)
In theory: maybe
In practice: no
I'm sure everyone else can give you the details ;-)

by on (#55333)
There was a topic about this a while back.

I believe that the most serious problems discussed were palette issues (the two characters use different palettes), slowdown (SMB already slows down with just one character, it would probably be much worse with two) and scrolling (what conditions would cause the camera to move or not).

by on (#55343)
In theory, with a detailed examination of the SMB disassembly, shouldn't it be possible to edit the game to do some processing outside of NMI? That should remedy the slowdown and extra calculations necessary for things like when both characters have broken bricks at the same time or are shooting their fireballs.

Additionally, I would not be bothered by palette issues. If the intent is simply to get two players moving at the same time, then let them look exactly the same, or else just use one of the other palettes with whatever colors it uses. One of them varies based on the level, the others seem pretty constant. I never thought it was that big of a problem for one player to press a direction on his controller momentarily to figure out which guy he is. The point is 2 player, not a perfect game. :)

The only issue that leaves is screen logic, which could probably be the same as in Contra.

I still highly doubt this would ever happen since it's a fairly big undertaking for something not too widely desired.

EDIT: Bah, I shouldn't have said anything, this was already discussed to death in the other thread.

by on (#55344)
The processing still has to complete within 29,000 or so cycles unless you want to slow the game down to a solid 30 FPS. That's doable; quite a few NES games don't run at the maximum frame rate (as do many Game Boy games, but for an entirely different reason). But a lot of purists on this board might sneer.

You could make Luigi an "enemy" controlled with controller 2, where the camera always follows Mario like in Sonic 2. Perhaps he'd use the green-turtle palette.

by on (#55346)
The latest game for Wii scrolls for any character; players on the other side are pushed either pushed forward, or left behind in vertical segments. This often results in either crush or falling death. But then again, on Wii, 4 people can play at once, and you usually can go backwards in a level.

by on (#56391)
Aren't these technically just the same type of limitations that would normally arise out of rom hacking?
What I mean is, if you understood 6502 enough, wouldn't it maybe be more prudent and thorough, although potentially more elaborate, to just recode the game from scratch, taking out the main scripts that you want and adding in the mappers to make for enough space to enable us to do whatever we want in these instances.
Some of these games were created by SMALL groups of people, and with the assistance we can find today, wouldn't it make more sense? It seems like it is a distant goal but really it's right under the surface of everything you are editing now anyway...

Just a thought. I hope there's reason there.
Don't give up either way, because your idea would be epically timeless upon completion any way.
Epic, and timeless.
Good luck!

by on (#56402)
fireseed wrote:
What I mean is, if you understood 6502 enough, wouldn't it maybe be more prudent and thorough, although potentially more elaborate, to just recode the game from scratch

I was planning to do exactly that with the "President" project, but on my first try, I hit the asset complexity wall. But now that Free placeholder assets are available, I plan to work on it more once I finish my current project.

Quote:
Some of these games were created by SMALL groups of people, and with the assistance we can find today, wouldn't it make more sense?

We're coders, mostly. Perhaps if there were an easier way to get artists on board...

by on (#56449)
Maybe someone could try to do a rom-hack of rescue rangers, and try to replace it with super mario bros.-like sprites? gameplay would be totally different, and mario could throw bricks, but it might be fun =D. I'm not interested in doing a rom hack myself, but it'd be amusing to see that done.

by on (#56454)
Gradualore wrote:
Maybe someone could try to do a rom-hack of rescue rangers, and try to replace it with super mario bros.-like sprites?

Say-Gah!

But seriously, a hack of Rescue Rangers for NES would be close enough to the play style in SMB2 (U) that some marks might be fooled.

by on (#57497)
Gradualore wrote:
Maybe someone could try to do a rom-hack of rescue rangers, and try to replace it with super mario bros.-like sprites? gameplay would be totally different, and mario could throw bricks, but it might be fun =D. I'm not interested in doing a rom hack myself, but it'd be amusing to see that done.


That game already exists for the Sega Mastersystem & Game Gear (as a Brazil pirate cart). It's called "Super Mario World" and uses the RR engine, and frankly, it sucks. You may as well put Mario on top of Mega Man and call it Super Mario Future.... It's not the same gameplay and thus it’s not Super Mario. Bros.

Technical difficulties aside, coding a 2-player simultaneous action SMB would be neat.

-Xious

by on (#57502)
Xious wrote:
It's not the same gameplay and thus it’s not Super Mario. Bros.

By your logic, Super Mario Bros. 2 (U) is not Super Mario Bros. It's a "pick shit up and throw it at the bad guys" game mapper-hacked from Doki Doki Panic.

by on (#57544)
tepples wrote:
Xious wrote:
It's not the same gameplay and thus it’s not Super Mario. Bros.

By your logic, Super Mario Bros. 2 (U) is not Super Mario Bros. It's a "pick shit up and throw it at the bad guys" game mapper-hacked from Doki Doki Panic.


Actually, yes. I never considered the USA SMB2 to be an actual Super Mario Bros. game. From the first moment, I fired it up, I said "what is this supposed to be?" and I picked up a Japanese copy of SMB2 to play instead, and that was twenty years ago. The USA SMB2 it's nothing more than a Japanese game about an Arabian family its sprites remapped to Mario characters in order to boost stateside and European sales.

Additionally, I was never fond if the gameplay in Yume Koujou Doki Doki Panic, although I throw it in occasionally for something different. Nintendo should never have done this, and should have released the real SMB2 in the USA as a cartridge...

(I fully understand the rationale of not releasing the FDS outside Nippon, given the abundant piracy issues they faced at the time and the hardware restrictions of the unit.)

Thus, again, you are correct, and by that rationale, any game that doesn’t follow the traditional SMB engine isn't a Mario game to me. You are of course, free to disagree, but I’m sure that you know full-well the history of SMB2 and that it wasn’t designed to be a game in the Mario series, so you can probably see my points in the matter.

-Xious

by on (#57584)
Xious wrote:
tepples wrote:
Xious wrote:
It's not the same gameplay and thus it’s not Super Mario. Bros.

By your logic, Super Mario Bros. 2 (U) is not Super Mario Bros. It's a "pick shit up and throw it at the bad guys" game mapper-hacked from Doki Doki Panic.


Actually, yes. I never considered the USA SMB2 to be an actual Super Mario Bros. game. From the first moment, I fired it up, I said "what is this supposed to be?" and I picked up a Japanese copy of SMB2 to play instead, and that was twenty years ago. The USA SMB2 it's nothing more than a Japanese game about an Arabian family its sprites remapped to Mario characters in order to boost stateside and European sales.

Additionally, I was never fond if the gameplay in Yume Koujou Doki Doki Panic, although I throw it in occasionally for something different. Nintendo should never have done this, and should have released the real SMB2 in the USA as a cartridge...

(I fully understand the rationale of not releasing the FDS outside Nippon, given the abundant piracy issues they faced at the time and the hardware restrictions of the unit.)

Thus, again, you are correct, and by that rationale, any game that doesn’t follow the traditional SMB engine isn't a Mario game to me. You are of course, free to disagree, but I’m sure that you know full-well the history of SMB2 and that it wasn’t designed to be a game in the Mario series, so you can probably see my points in the matter.

-Xious


SMB2j is such a dated looking game though. I for one am glad for SMB2us. SMB2j would have done pretty poorly in sales IMO at the time. It's not even a real sequel. It's just rearranged levels. At least with SMB2us you got really interesting level designs and newer/more advance gameplay. To me, it's closer to SMB3 than SMB2j will ever be. /rant off

by on (#57604)
tomaitheous wrote:
SMB2j is such a dated looking game though. I for one am glad for SMB2us. SMB2j would have done pretty poorly in sales IMO at the time. It's not even a real sequel. It's just rearranged levels. At least with SMB2us you got really interesting level designs and newer/more advance gameplay. To me, it's closer to SMB3 than SMB2j will ever be. /rant off


I seem to recall that they actually tweaked the physics for the jump mechanic in SMB2j. On the version released in Super Mario All Stars on the SNES, you can choose to play as Mario or Luigi, and I believe both have different speed/jump abilities. I don't know if that's the case on the NES (I have to check again).

As for making SMB1 two player, I would highly recommend getting the source code with named labels and whatnot. You really need to know how everything works in the game to know whether or not you can make it two-player like you were saying. It seems like it would be possible. The hardest part to deal with would probably be collision detection, as enemies would need to check for collision between themselves and two separate entities (Mario and Luigi) rather than just one (Mario). Oh, they also need to see if they are colliding with a fireball from either one, and from which one. You would probably need to modify the code a lot to make this work, and judging by how much they crammed into that little space, I can't promise the code will be modification-friendly. Also, you need to check out the RAM situation. Undoubtedly, you would need more RAM to accommodate both Mario and Luigi at the same time. Is there even any spare RAM? I'm sorry, I can't say for sure simply because I've never looked at a disassembly or a break-down on how the engine works.

by on (#57615)
tomaitheous wrote:

SMB2j is such a dated looking game though. I for one am glad for SMB2us. SMB2j would have done pretty poorly in sales IMO at the time. It's not even a real sequel. It's just rearranged levels. At least with SMB2us you got really interesting level designs and newer/more advance gameplay. To me, it's closer to SMB3 than SMB2j will ever be. /rant off


Does it look dated? Well, no more than The Legend of Zelda does these days, which uses the exact same graphics engine. No, I don’t think its graphics would have been the cause of lower sales, although the game's difficulty surely would have placed it in the teen market bracket. It would have looked just fine when it was a new title on a new console.

Keep in mind that in 1986, the US was just getting used to the NES and many games had inferior graphics to SMB and SMB2(J). The USA SMB2 has superior graphics because it is a newer title. There’s no reason they couldn’t have marketed them both: ‘Super Mario bros. for Super Players’ and ‘Super Mario’s Arabian Nightmare’, for example, but the US SMB2’s gameplay is nothing like SMB or SMB3.

Something to keep in mind is that SMB2 (J) was released on 3rd June 1986 (from the game's manual) and is titled "Super Mario bros 2: For Super Players". It's as much of a sequel to SMB as SMB3 is a sequel to SMB2(J)...or for that matter Rockman (Mega Man) to Rockman II (Mega Man II) and so on.

Bowser returns to re-kidnap the princess in order to take revenge and now Mario must find his way through 13 levels of enemies and mazes to save her. The same old song.

That’s what I recall anyway... If anybody wants, I will photograph the manual story pages and post them for translation.

The game also does have significant improvements as follows:

The concept of the stomp-jump first appears in this game. This is the same technique used in SMB3 to stomp an enemy I order to make an extra-high jump.

Luigi jumps higher, but skids: As this is a 1-Player only game (another reason I think that NOA passed on it), you can select to play the sturdy Mario or the high-jumping Luigi. I prefer the latter.

(For the record, the jump mechanics are different on the FDS SMB2J to the Super Famicom/SNES “Lost Levels” game.)

New enemies: There are a couple new enemies and some enemies are tougher. Flying Bloopers and Red Piranha Plants both started here and ended up in SMB3.

The Poison Mushroom: This is a power-down/trap item, which makes the game more interesting.

Improved graphics: The graphical tiles are nicer than SMB, with a pebbly ground in place of stones, smoother looking bricks, nicer mushrooms, etc.

Reverse-Warps: This game has reverse warp zone areas that serve as both traps and methods to gain extra lives.

Multiple paths: There are two endings, one for beating Levels 1-8 + A-D and another for beating Level 9. You play Level 9 by beating the game eight times.

Also, keep in mind that NOA decided to make SMB3 easier for the USA market by adding the two-stage hit system (Fiery/Leaf->Super->Small_. In Nippon, Fiery/Leaf Mario went straight to small Mario when hit merely once.

You can love the USA SMB2 to death, but it’s as much of a Mario game by inception as the USA release “Street Fighter 2010” is part of the Street Fighter game series. In Nippon, this game had an entirely different story that had nothing to do with Street Fighter.

NOA is famous for remarketing titles in order to boost sales of them, and the two main treasons that we never saw the real SMB2(J) in America are because it was deemed too difficult for younger players and because NOA didn’t want to release the FDS here.

Did I say that the USA SMB2 was junk? No. It’s a decent game with excellent playability and it sold very well. Do I see it as a true successor to SMB or a prequel to SMB3? Of course not.

I should also ask, before I rant further, if you’ve ever played the original FDS version of SMB2, and whether or not you like the game of you did. If you hated the game because of its difficulty, I can see your animosity more logically.

I think that it is a fantastic game: a worthy successor to SMB and it’s a shame that NOA skipped it in favour of rebranding a different game. Nonetheless, this is getting far off topic…

The original idea was to convert RR to a SMB title, and I still say that the previous Brazilian attempt at doing this (for the Master System/Game Gear) is all the proof you need that it’s not a very good game mechanic for a Mario title.

-Xious

by on (#57616)
Maybe off topic but I don't think the reason that NOA didn't get SMB2 to the US was because it was an FDS game since the pirate were fast to release that game renamed as "Super mario 3". I remember that pirate cart very well. When the real Mario 3 came out, the pirates called it "Super mario 4".

by on (#57618)
Quote:
You would probably need to modify the code a lot to make this work, and judging by how much they crammed into that little space, I can't promise the code will be modification-friendly.


The guy who did Brutal Mario could probably do it. The very existance of that hack blows my mind. Someone reversed engineered SMW and shoe horned his own code into the existing design. Changes include temporary weapons activated with the shoulder button, a life meter for Mario in certain boss battles, scanline irq trickery, tons of custom enemy routines and graphics from Yoshi's Island, Kirby Superstar and Seiken Densetsu 3. And since those games surely store their graphics with their own compression methods, extracting those graphics is its own beast.

by on (#58084)
adding a two player mode would be pretty difficult considering the game is written as a one player game.. when you play as luigi it just does a palette swap and swaps a few other values. stuff like player location and all that is limited to one player and i doubt there is enough free space in zero page (if any) to double the amount of zp bytes dedicated to player info

by on (#58085)
Instead of figuring out how to make a 2 player game with the current engine, I would instead create a 2 player game engine from scratch based on the original concept. It's not like the game by itself is complicated.

- The assets are there
- The music is there
- The logic is explained from the dis-assembly or can be extrapolated by looking at the game

Making a new game based on the look and feel of the first with 2 players in it would be more interesting than trying to do the impossible with an engine/rom combination that already been pushed to maybe it's limit.