WiiRd forum

Videos => Cheat / Hacks / Mod videos => Topic started by: biolizard89 on April 03, 2011, 03:36:43 AM

Title: Super Smash Bros. Melee with 5 Human Players on Wii
Post by: biolizard89 on April 03, 2011, 03:36:43 AM
Here's a video of Super Smash Bros. Melee with 5 human players on Wii using GeckoTunnel. Player 5 is using a USB gamepad via USB Gecko.  (Sorry about the lack of sound.)

http://www.youtube.com/watch?v=Rr6IaXgjCNc
Title: Re: Super Smash Bros. Melee with 5 Human Players on Wii
Post by: hetoan2 on April 03, 2011, 07:34:24 PM
very nice. I attempted to find out a way to upload commands (like walk forward and such) on call of duty black ops for wii and pretty much failed. :\ but in mind i planned on achieving something like this. very well done ;)

PS: i look forward to that talk on youtube ;)
Title: Re: Super Smash Bros. Melee with 5 Human Players on Wii
Post by: Bully@Wiiplaza on April 03, 2011, 07:56:49 PM
how´s that possible? :O
What about doing it on brawl aswell? Harder, Impossible? :confused:
Title: Re: Super Smash Bros. Melee with 5 Human Players on Wii
Post by: biolizard89 on April 03, 2011, 09:27:47 PM
@hetoan2: Thanks!  The talk should be on YouTube soon.

@Bully: This works because there's a debug menu in Melee which allows 6-player matches, and you can set players 5 and 6 to human.  Since there isn't a 5th or 6th controller, those players usually just sit doing nothing.  However, players 5 and 6 do still have controller data variables, there's just nothing that writes to them.  I rigged GeckoTunnel to write controller data to the player 5 variable, enabling my laptop to control player 5.  There are some glitches at the moment, due to bugs in Melee's 6-player mode (I gather that the Melee devs didn't expect someone to write to those variables).  Specifically, player 6 crashes with a bad pointer when you write to its controller data (hence why this video only has 5 players), and player 5 also has no control of the analog Y axis (it crashes similarly to player 6's data).  I'll be trying some ASM hacking to fix those crashes, but I didn't have time to do so before the conference talk, so in this video, player 5 doesn't use its Y axis.  Still a fun proof-of-concept though.

As for Brawl, if someone can provide a Gecko code which allows more than 4 players and also sets those players to human-controlled, then yes, it's probably possible to do something similar for Brawl.
Title: Re: Super Smash Bros. Melee with 5 Human Players on Wii
Post by: dcx2 on April 04, 2011, 02:29:16 PM
I'm curious, how did you find the location of the "real" pad data?

I once wanted to make a Super Mario Galaxy code that gave p1 access to all of p2's powers (mainly super jumps and freezing enemies).  I would do this by copying p1's pointer data to p2, and fooling the game into thinking that the p2 wiimote was attached.  However, I never got it to work quite right...
Title: Re: Super Smash Bros. Melee with 5 Human Players on Wii
Post by: biolizard89 on April 04, 2011, 05:53:50 PM
Quote from: dcx2 on April 04, 2011, 02:29:16 PM
I'm curious, how did you find the location of the "real" pad data?

I once wanted to make a Super Mario Galaxy code that gave p1 access to all of p2's powers (mainly super jumps and freezing enemies).  I would do this by copying p1's pointer data to p2, and fooling the game into thinking that the p2 wiimote was attached.  However, I never got it to work quite right...
First I searched for every address that contained P1's pad data.  Next I set a Read BP on each one, and noted the address where it hit.  Then I set an Execute BP on each of those addresses, and looked for a register that was cycling between 0 and 5 (there were some which only cycled between 0 and 3, which I discarded).  I then took the addresses where that instruction was reading when that register was 4 and 5.  Next I set a Write BP on each of those addresses and backtraced until I found an address for P5 and P6 which didn't get written to; those were the pad addresses for those players.  Hope I explained that okay.