Language…
6 users online: abhinavkrishna123, Brian94, drkrdnk, niko, RXDARK, Sweetdude - Guests: 230 - Bots: 290
Users: 64,667 (2,404 active)
Latest user: DarthHylian

2 Player Co-op - The Return

Hey.

I'm back.

LONG STORY SHORT: I'm working on this project again.

If you've never heard of it, this is literally NSMBWii style multiplayer in Super Mario World.

I was gonna record a video, but Snes9x decided to be a little shit, so no.

If you remember this project from the last time I posted it at a C3, I had changed Mario and Luigi to My Little Ponies? Yeah, I fixed that. Not only are they Mario and Luigi, you can chose to have either the SMW or SMAS graphics for Luigi.

And, of course, if you want the ponies anyway, you can re-enable them. #fim{:D}

So! Have some IPS patch downloads:

http://bin.smwcentral.net/u/4297/2_player.zip

And have the source code, on GitHub where anyone can contribute to it:

https://github.com/rhelmot/smw-coop

This is by no means complete, and there are bugs. Feel free to yell at me about them, and I will fix them! Probably. Or just do it yourself, that's what GitHub is for. :P

Since this is sort of a last minute thing, there is no video, no screenshots, but I highly recommend just grabbing a second player and playing through Super Mario World again. You might actually find it fun again. #w{=)}
Now with extra girl and extra hacker
Literally why doesn't this have any replies.

Great to see an update to this. I've always had this patch in mind when I get sudden burst of motivation to create a hack (which i lose fairly quickly so i never get to apply my ideas)

someday I'll find a way to use this

also no video this time around? ):
I downloaded the ZIP file that contained the IPS patches then tested them. I can say that I am impressed with the work you have done here. I clearly remember that this "2 Player Co-op" thing has popped up in the past which was impressive then but now I can clearly see some more useful aspects of it. I guess I discovered a new possibility (or almost as the idea isn't exactly "new" however it is unusual which is good enough) in using this.

Good work!
Wow,oh my god!
this patch is wonderful!#smw{O_O!}
You can let me use to create a 2 player hack?
I'm very impresed with this hack!
Great job!#smw{:TUP:}
Check out my profile to see a list of SMW Hacks I made and where to find the latest and best version of them.
Thanks for playing and have fun!
Clique no meu perfil para encontrar a lista de minhas hacks feitas até o momento.

Glad to see this making a comeback. Great job man
Layout by LDA during C3.


I could use this for 2 player co-op Quest #3.
My Youtube Channel. 90,000+ subscribers!

My Steam Profile



I found many bugs;

Open the SMAS version.
Give Luigi a Fire Flower.
Press X in the air while you still have the fire flower.
rip luigi - he died because of a graphic issue *sad song*

Also a placement issue;

Open any version.
Go the yellow switch palace.
Luigi will be on Mario's left, but there is a solid tile, so..
rip luigi - he died because of his starting position *sad song*

Also some kind of ASM issue:

Not sure if it happens in all versions.
Go to Yoshi's Island.
Finish the level with Luigi.
While the level is finished, Luigi still can jump. This isn't really a issue, nothing is wrong with it, but..
If Luigi jumps while he is on his victory pose..
rip luigi - he died because of a programming issue *sad song*

Status bar issue:


Oh no!
The first yoshi coin icon is flipped!
That's truly a bad thing!
rip luigi - he died because of the evil flipped coin *sad song*

Sprite interaction issue:

It was the last time we have ever seen Luigi..
He was just happily jumping from a platform to another platform..
..but however, when he tried to jump on a Brown Platform on a Chain..
..he just passed through it..
..and he fell in a hole..
rip luigi - he died because of the evil platform

Sprite interaction issue:

Haven't you ever heard of the story..
.."arm freeze" ..?
No?
Let me tell you the story of arm freeze. It was a cold day in July and in Yoshi's Island there was a man who loved to play with his arms. And the one he liked best was to act like he was carrying something. And one day when he played with his arms for the four hundred and forty fourth time, his arms froze with his fingers not able to move. Permanently. And he stayed that way for months. Until one day his arms dried out and fell off. So are you going to keep making arms?
Well, Luigi did..
..and this was the result:

rip luigi - he died because of blood loss when his arms fell off *sad song*

Sprite interaction issue:

Again, it was just another day. Luigi was just happily jumping from a platform to another platform..
..but however, when he tried to jump on a Brown Platform on a Chain..
..the platform didn't move.
..when Mario jumped on it, the platform started to move..
..Luigi started to think everything hates him. Even the platform. Everyone loves Mario, and does everything for him, but when he jumps on the platform, it did nothing..
..after a while..
rip luigi - he died because he has suicided.


Yeah, too many sprite interaction and graphical errors to make a game out of.

Sprite errors:
- falls through brown platforms
- cannot activate brown platform on chain
- cannot ride cloud
- cannot ride Yoshi
- cannot use P-balloon
- cannot carry P-switch
- cannot use spring board
- cannot use wall spring board
- cannot use purple triangles to run up walls
- cannot fly
- does not fall through hole in the ground in ghost levels
- cannot ride the skull platform on lava
- falls through grey falling platform
- falls through the steepest hills

Graphic errors (For both players):
- Shooting a fireball
- Swimming
- Flying
- Yoshi

I'm sure there's more I haven't tested yet. Been waiting a while for this to be completed, and I hope it does.
My Youtube Channel. 90,000+ subscribers!

My Steam Profile



Aw, yes, I was looking for some people to actually make a good list of the bugs. Let me address a couple of things:

- This will never work with Yoshi. There's not enough space in SP1, plus yoshi interaction would probably literally double the size of the codebase >.<
- Flying and the purple triangles will never work, just because they're impractical with two players. What happens when one player runs up and the other doesn't? Where does the camera go, and what can the other player do? :/
- The thing with falling through the brown swinging platforms has to do with the fact that the actual platform's coordinates are calculated at runtime and stored in scratch ram that just happens to be untouched between frames, so when there are multiple platforms on screen, only one has its coordinates visible. It's fixable, but I don't know how easy it'll be.
- Carrying things is super duper sketchy at the moment. What really needs to happen is that I need to add another state to $14C8,x for "Carried by P2", since at the moment it's kind of a hodgepodge of stuff trying to make sprites follow P2 around.
- I have no idea what I did that broke the player's friction with the checkerboard platforms, they were working before and I don't know what happened..!
- I literally got slopes to properly work four hours before this release, so yeah they're a little rough around the edges. xD I'm relying on some code I hacked together four years ago, so if I can actually relearn how it's supposed to work, I think I can make something less anal about positioning!

Basically everything else is really simple fixes or just oversights on my part. I'll get right on them!

..though that might take a while, since I actually have a full time job being a real computer hacker and my time is sorta limited. I do want to move this project along though, it's too cool not to!
Now with extra girl and extra hacker
So I did the brave thing and tried porting my levels and ExGFX into a clean rom with this patched. It didn't go well, I'm gonna assume that maybe the level insertion overwrote some of the essential data from the patch. Now I'm gonna try expanding the rom and making sure the level data gets inserted to an empty part of the rom.

Also, glad to see you're back.
I wonder what a HFD opcode would do in ASM...
I remember you! :D Many thanks for doing the brave thing, somebody had to~

Try applying the asm version of the patch (there's a "Download Zip" button on the bottom of the right column in the source code link in the OP) on top of a clean ROM with your levels and ExGFX installed.

That should work, but if it doesn't... well. This patch is frigging huge and hijacks half a zillion places, some of which.. might be overwritten by some of LM's more complex patches? They shouldn't, but mrrr. Send me a PM if that doesn't work.
Now with extra girl and extra hacker
Status Update, it's not the ExGFX/GFX insertion that's breaking Luigi's interaction to tiles. It's Luigi's interaction with tiles directly placed from Map16.

Edit: in more detail, Luigi's interaction with direct Map16 tiles don't follow the "acts like" setting. I'm not sure how it determines it :V
I wonder what a HFD opcode would do in ASM...
Finally open sourced! Thanks a bunch! Gonna hack a little bit with it as soon as I find some time and interest.