• Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

Best Brawl+ AI?

Shadic

Alakadoof?
Joined
Dec 18, 2003
Messages
5,695
Location
Olympia, WA
NNID
Shadoof
Can you explain to me why replay data is a relevant counterpoint to the fact that CPUs adapt to specific playstyles? I would think it pretty obvious that replays wouldn't contain any learning information as they should simply be replaying what is was the CPUs did before instead of playing an AI in real time.
CPU input isn't stored in replays.
 

skstylez

Smash Journeyman
Joined
Jan 3, 2009
Messages
357
Location
California
i believe cpu's do adapt, but just cuz you do something doesn't mean it will copy. I think it fights with adaptions and what it is programmed to do. and i don't think they just learn from you but adapt and learn from themselves
 

Grim Tuesday

Smash Legend
Joined
Nov 4, 2007
Messages
13,444
Location
Adelaide, South Australia, AUS
Proof of CPUs in Replays not just acting as if it was a live match:
Set up a match on FD, you as Mario vs a Bowser. Make it 3 Stock, 8 Minute Time Limit, No Items, etc...
When the match starts, don't do anything. Wait for bowser to beat you (Remember, don't press anything) and then save a replay. Now do the exact same thing, FD, Mario vs. Bowser, 3 Stock, etc... and still don't move. Save a replay of this match as well. Now tell me, are those matches exactly the same?

Also there is the fact of things like G&W's Fspecial, Peach's Dspecial, etc... that are random...

My D3 Chain grabs, you telling me that Sakurai input that into his coding?
And that theory on CPUs crouchtaunting because of a glitch is complete bull. I've never crouchtaunted, neither have my CPUs. Does this mean everyone else's CPUs glitch (Frequently) and I'm just super lucky?
 

JayFizzy

Smash Cadet
Joined
Aug 9, 2009
Messages
52
Location
St. Louis MO
I have a little habit of whenever im on the ledge i go down then jump then fair or something. My cpus KNOW that i do that and always stay a good distance from the ledge now.
 

Shadic

Alakadoof?
Joined
Dec 18, 2003
Messages
5,695
Location
Olympia, WA
NNID
Shadoof
Proof of CPUs in Replays not just acting as if it was a live match:
Set up a match on FD, you as Mario vs a Bowser. Make it 3 Stock, 8 Minute Time Limit, No Items, etc...
When the match starts, don't do anything. Wait for bowser to beat you (Remember, don't press anything) and then save a replay. Now do the exact same thing, FD, Mario vs. Bowser, 3 Stock, etc... and still don't move. Save a replay of this match as well. Now tell me, are those matches exactly the same?

Also there is the fact of things like G&W's Fspecial, Peach's Dspecial, etc... that are random...
Dantarion already addressed this point:
The game uses a random number generator for various tasks, like luigi's side B, peaches fsmash, g&w hammer, and the AI, etc. The game seeds the random number generator with a random value, and saves this value in the replay. That way, when the replay is played back, the random number generator spits out the same string of numbers, and all random events take place they way they would in an actual match.

This is also how Fire Emblem keeps you from resetting until you get a critical hit or the enemy misses, etc.
 

Alphatron

Smash Champion
Joined
Aug 5, 2008
Messages
2,269
@Shadic Geno example.
Are you sure the CPU isn't just spamming the **** out of the A button?
I see no reason to believe that the CPU actually acts according to how the moveset is set up.

As Shadic posted, the CPU will still try to use moves as they originally were.

If you remove the lazer from falcos neutral B....they still use it when far away.
I thought that may be it. But Geno Whirl gets weaker when the button is pressed too early, so...I could be extremely unlucky...I suppose.
 

Grim Tuesday

Smash Legend
Joined
Nov 4, 2007
Messages
13,444
Location
Adelaide, South Australia, AUS
Dantarion already addressed this point:
Thanks Dantarion, you proved me right. If the AI is seeded, that means it is NOT playing it out like a normal game, it is doing what it is told to do, if it is told to do Forward Special, it will do Forward Special, that is why computers learning doesn't mess up Replays. The only thing that messes up Replays is changing the character's stats, because if in the original replay he did Forward Special, then you hacked the character to have a different Forward Special, he would be inputting the same commands, but because of the altered attack, he would be in different positions.
 

CloneHat

Smash Champion
Joined
Jan 18, 2009
Messages
2,131
Location
Montreal, Quebec
If CPUs act different when placed in the exact same conditions (such as you not touching your controller the entire match), then shouldn't replays with CPUs be constantly changing?
 

Shadic

Alakadoof?
Joined
Dec 18, 2003
Messages
5,695
Location
Olympia, WA
NNID
Shadoof
Thanks Dantarion, you proved me right. If the AI is seeded, that means it is NOT playing it out like a normal game, it is doing what it is told to do, if it is told to do Forward Special, it will do Forward Special, that is why computers learning doesn't mess up Replays. The only thing that messes up Replays is changing the character's stats, because if in the original replay he did Forward Special, then you hacked the character to have a different Forward Special, he would be inputting the same commands, but because of the altered attack, he would be in different positions.
Way to be cocky and completely miss the point.

The RNG numbers are seeded, not the inputs of the CPU, at ALL.
If CPUs act different when placed in the exact same conditions (such as you not touching your controller the entire match), then shouldn't replays with CPUs be constantly changing?
Again, in replays, the RNG determining certain decisions for the AI have been saved. The AI reads off these to determine their actions in the replay.
 

PKNintendo

Smash Master
Joined
Aug 9, 2008
Messages
3,679
Luigi + is pretty good. He's like slightly worse than your typical (average) B+ player.
 

sffadsad

Smash Apprentice
Joined
Nov 6, 2007
Messages
148
Way to be cocky and completely miss the point.

The RNG numbers are seeded, not the inputs of the CPU, at ALL.

Again, in replays, the RNG determining certain decisions for the AI have been saved. The AI reads off these to determine their actions in the replay.
So wouldn't the RNG values basically be the input values for the CPUs?
 

tsunami70875

Smash Journeyman
Joined
Dec 1, 2007
Messages
348
Location
Wisconsin, USA
Requirement to be the best at Brawl+: Beat 3 level 9 Luigi+s.

Also, about, where did the idea of CPUs originally learning from replays spawn from? I remember reading many posts long ago about how CPUs could learn, although I'd have no idea where such scripts would be stored :/. Althoguh I'd swear that all my computers are learning to edgehog >.<
 

Unknownlight

Smash Journeyman
Joined
Jul 27, 2007
Messages
453
Location
Vancouver, Canada.
It could be possible that we're underestimating the developers. The developers made the game, so they probably know all the techniques. What if the CPUs have these things like crouch-taunting (it's not unreasonable, I could see the CPU developers watching Melee tournaments for ideas) programmed within them? Then every once and a while they randomly use one of their more "advanced" moves from their repertoire?

It's kinda far fetched, but we don't give the developers of this game enough credit. While the whole "learning" idea is impossible, I've witnessed enough to be almost certain that there's more than meets the eye when it comes to the CPU characters.
 

Sph34r

Smash Journeyman
Joined
Feb 15, 2009
Messages
251
Location
palo alto, middlefield road
It could be possible that we're underestimating the developers. The developers made the game, so they probably know all the techniques. What if the CPUs have these things like crouch-taunting (it's not unreasonable, I could see the CPU developers watching Melee tournaments for ideas) programmed within them? Then every once and a while they randomly use one of their more "advanced" moves from their repertoire?

It's kinda far fetched...
besides giving AI algorithms to fight you it would make sense for the developers to playtest each character a bit and inject them with specific "strings" that they randomly throw out at you.
:urg: It's not far fetched.
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
I agree that there are certain chains that CPU's do a lot.

For example, in melee, falcon will grab you, dthow, and side+b every time you hold shield, even if it means his death. Also, CPU ness on jungle japes = lol, as he always jumps, double jumps under the stage, and up+b's the platform. (AKA how to do lotsa 1 stock matches in melee fast)
 

Unknownlight

Smash Journeyman
Joined
Jul 27, 2007
Messages
453
Location
Vancouver, Canada.
Oops, I didn't see your comment there, Sph34r. Sorry.

I moreso meant that it was far fetched that specific things like crouch-taunting or short-hop lazering (?) with Falco would be programmed into the game. I didn't just mean strings of moves.
 

Sails

Smash Ace
Joined
Feb 21, 2008
Messages
561
Location
Southwick, MA
People still think that CPU's learn or their actions are recorded in replays? I'm sorry but did everyone suddenly forget the beginning of Brawl hacking where things like this were proven incorrect quite fast?
 

Grim Tuesday

Smash Legend
Joined
Nov 4, 2007
Messages
13,444
Location
Adelaide, South Australia, AUS
Way to be cocky and completely miss the point.

The RNG numbers are seeded, not the inputs of the CPU, at ALL.

Again, in replays, the RNG determining certain decisions for the AI have been saved. The AI reads off these to determine their actions in the replay.
You've backed yoursef into a corner mate:
a) If the actions of the CPUs are not seeded, and they act as if it was a real match, the actions would be different each time, as I proved.

b) If the actions of the CPUs are seeded, meaning they are always going to repeat the same actions, that means your counter-argument to CPU's learning proves false.

And the funny thing was, I wasn't missing the point.
The game uses a random number generator for various tasks, like luigi's side B, peaches fsmash, g&w hammer, and the AI, etc. The game seeds the random number generator with a random value, and saves this value in the replay. That way, when the replay is played back, the random number generator spits out the same string of numbers, and all random events take place they way they would in an actual match.
He stated that the AI is seeded, which is what I responded too.

Finally, no matter what hacking says, my D3's chaingrabbing wasn't programmed into the game.
I've saved a replay of him doing it if you don't believe me.

And the reason for the computers edge-guarding or crouch-taunting because there programming isn't telling them to something else, doesn't make sense. If you are a programmer, give me one reason why the computer would crouch-taunt against people who commonly crouch-taunt, yet on my and my friend's Wiis (who never crouch-taunt) the CPUs don't crouch-taunt.

It just doesn't add up.
 

Shadic

Alakadoof?
Joined
Dec 18, 2003
Messages
5,695
Location
Olympia, WA
NNID
Shadoof
Clearly, you are struggling to comprehend the difference between AI and RNG, or something.

And in that very quote you seem so attached to, he said the AI is partially based off of the RNG.

Now look at that statement again. Does that say the AI is seeded? No. It's not. That's fact. Open up a replay file and view it yourself. Some actions of the AI are based off the RNG. And why is that? So that they won't do the same exact thing three times in a row if you start a Mario Vs. Link match on Final Destination.

Now let me state this again:
THERE IS NO CPU CONTROL INPUT IN A REPLAY FILE. ONLY THE STRING OF RNG NUMBERS THAT IS CALLED FOR DETERMINING SPECIFIC BEHAVIORS, AND TO CONTROL RANDOM OCCURRENCES SO THAT REPLAYS ARE CONSISTENT.
 

Dantarion

Smash Champion
Joined
May 21, 2007
Messages
2,492
Location
Santa Barbara, CA
You were.

Think of it this way.

When presented with a choice, the AI uses the random number generator to choose between the choices.

Otherwise, the "Leave the controller alone" example provided earlier would end up with EXACT same movements.

When a replay is played back, the random number generator has been seeded with the same number as in the actual match. That way, all random events, like item spawns, G&W hammer, AND AI DECISIONS, are chosen exactly like they would be in a real match.

Think of it this way. The game doesn't save in a replay when an item spawns, it just happens at the same time as in the real match because the random number generator is spitting out the same numbers.

The same goes for the AI. The AI's actions ARE NOT SAVED, they just use a random number generator that is spitting out the same random numbers as in the live match.
 

Sails

Smash Ace
Joined
Feb 21, 2008
Messages
561
Location
Southwick, MA
You were.

Think of it this way.

When presented with a choice, the AI uses the random number generator to choose between the choices.

Otherwise, the "Leave the controller alone" example provided earlier would end up with EXACT same movements.

When a replay is played back, the random number generator has been seeded with the same number as in the actual match. That way, all random events, like item spawns, G&W hammer, AND AI DECISIONS, are chosen exactly like they would be in a real match.

Think of it this way. The game doesn't save in a replay when an item spawns, it just happens at the same time as in the real match because the random number generator is spitting out the same numbers.

The same goes for the AI. The AI's actions ARE NOT SAVED, they just use a random number generator that is spitting out the same random numbers as in the live match.
I'm glad that someone with higher status has finally made this clear, because despite Shadic and I having been around Brawl hacking since the beginning, our word just isn't taken as truth without the shiny red name.

CPUs don't learn. Replays don't keep AI actions beyond a little RAM remembering for consistency. This is all common sense to a (old and jaded) ROM hacker like me as the same idea is applied to emulation replays.
 

Kei_Takaro

Smash Lord
Joined
Feb 3, 2009
Messages
1,007
Location
Underneath FD
Hey guys, I got an interesting idea, since we (almost all) agree on lvl. 9 Luigi as the Godlike AI of all AI's
why don't we have a record match against him. 4 Stocks, 8 Minutes, No Items, Final Destination.

The goal is to defeat lvl 9 Luigi as fast as possible, and It's ok if you lose a stock (It's Friggin' Luigi)
Then have a Youtube link of your match.
Anyone like the idea? =D
 

MaxThunder

PM Support
Joined
May 27, 2008
Messages
1,962
Location
Norway=)...
if this cpu "learning" thing is just the random numbers for specific actions used a lot by people playing on that wii getting more likely to be picked by the random number generator? then the replays would't get killed cause of the seeded numbers... right?
 

Grim Tuesday

Smash Legend
Joined
Nov 4, 2007
Messages
13,444
Location
Adelaide, South Australia, AUS
You were.

Think of it this way.

When presented with a choice, the AI uses the random number generator to choose between the choices.

Otherwise, the "Leave the controller alone" example provided earlier would end up with EXACT same movements.

When a replay is played back, the random number generator has been seeded with the same number as in the actual match. That way, all random events, like item spawns, G&W hammer, AND AI DECISIONS, are chosen exactly like they would be in a real match.

Think of it this way. The game doesn't save in a replay when an item spawns, it just happens at the same time as in the real match because the random number generator is spitting out the same numbers.

The same goes for the AI. The AI's actions ARE NOT SAVED, they just use a random number generator that is spitting out the same random numbers as in the live match.
So, you're telling me that the computer doesn't play it like a normal match, he is programmed to make the same decisions, this means that if the CPU learned something, that would change nothing because the CPU is programmed to perfrom the same actions in a replay. That is all I wanted you to say. Thankyou.
 

Shadic

Alakadoof?
Joined
Dec 18, 2003
Messages
5,695
Location
Olympia, WA
NNID
Shadoof
So, you're telling me that the computer doesn't play it like a normal match, he is programmed to make the same decisions, this means that if the CPU learned something, that would change nothing because the CPU is programmed to perfrom the same actions in a replay. That is all I wanted you to say. Thankyou.
How are you failing to understand this? All that's stored is the RNG. RANDOM NUMBERS. Not learning information.
 

Sails

Smash Ace
Joined
Feb 21, 2008
Messages
561
Location
Southwick, MA
So, you're telling me that the computer doesn't play it like a normal match, he is programmed to make the same decisions, this means that if the CPU learned something, that would change nothing because the CPU is programmed to perfrom the same actions in a replay. That is all I wanted you to say. Thankyou.
No, he is telling you it plays it like a normal match but for consistency and syncing, it stores a very small amount of RNGs for keeping things in check. The second it desyncs all of that is useless and it plays out like a normal match. Therefore OH MY GOD WHY AM I EVEN EXPLAINING THIS

CPU'S DON'T LEARN

Crack open a USB Gecko and bring undeniable proof from RAM dumps that they use saved actions from previous experience (HINT: You won't find it).

Considering the fact that the Wii is not even EQUIPPED for something like this, it's impossible. It's the same as the crazy theorists with it on the GCN, did you honestly think they stored Melee's learned stuff in a small as hell save file which would have to EXPAND to fit further information? Holy christ. Or even in 40MBish of RAM (Divided among a few hardware pieces), it doesn't work that way, it would require a lot more than that.

Any possible "learning" that you think has happened, with say Dedede, here's a very much more realistic scenario within programming commonplace. Dedede does a Down Throw and the CPU sees that there is an open hitbox on the character during tumble and can move, so he moves and grabs. UH OH IS THIS LEARNING HOW TO CHAINGRAB? No, it's the CPU being a CPU. It's doing it's job, attacking when there is an opening. But because there is an RNG that can change the course of anything there is a small chance the CPU will or will not do the same thing/s over and over. If it happens, it's rare, the CPU didn't learn though.

So apply this to replays. The CPU still acts like it's a normal match but if the RNG ever changed the course of action it relies on that to do it. But if the match is already desynced all of that doesn't matter because he could be in the air when the RNG was supposed to go off. I don't know if this is the exact way it works because I haven't dived too deep in it, but from what Dantarion has said about the seeded RNG, it's probably true.
 

MK26

Smash Master
Joined
Jun 29, 2008
Messages
4,450
Location
http://www.mediafire.com/?zj2oddmz0yy for ZSS fix!
i was originally gonna edit my previous post, but this idea deserves one of its own

Hey guys, I got an interesting idea, since we (almost all) agree on lvl. 9 Luigi as the Godlike AI of all AI's
why don't we have a record match against him. 4 Stocks, 8 Minutes, No Items, Final Destination.

The goal is to defeat lvl 9 Luigi as fast as possible, and It's ok if you lose a stock (It's Friggin' Luigi)
Then have a Youtube link of your match.
Anyone like the idea? =D
OMG LEVEL 9 LUIGI+ COMBO VIDEO
SOMEBODY DO TAHT
 

Shadic

Alakadoof?
Joined
Dec 18, 2003
Messages
5,695
Location
Olympia, WA
NNID
Shadoof
I actually saved a video of me playing Link last week against a Luigi. He got off a pretty fancy combo on me that ended in a sweet-spotted UpB. :(
 

VitaminC

Smash Rookie
Joined
Aug 30, 2009
Messages
14
Location
Northern VA
I'm no programmer, but I know for a fact that computers cannot be 100% random. In theory, the AI might "learn" by filling in data that you create (chaingrabbing, combos, etc) as a faux-random. I'm not saying learning from replays, but more of a "monkey see, monkey do" learning style.
 

MaxThunder

PM Support
Joined
May 27, 2008
Messages
1,962
Location
Norway=)...
... i still think it sounds plausible that if a certain move or something is used a lot the RNG numbers for those moves would be more likely to be picked in certain situations... then replays wouldn't get killed cause the numbers still correspond to the same actions...
 

FireBall Stars

Smash Ace
Joined
Aug 31, 2009
Messages
714
Location
Brazil, South America
Some other day, I was playing a Sonic ditto with a cpu in Brawl+(even recorded the match).

It was doing some things as nearly the exact way I do.

Vertical spindash when the I was very near, auto-cancel Fair(but it always do it right, maybe from my old vBrawl gameplay) and other minor things.

Until a moment that it used a Sonic advanced technique called Sonic slide or Grind, that Sonic slides in the ground like when he grinds in his games. Those cpus really amuses me, I like to fight them, much better AI than on Melee.
 
Top Bottom