I think a lot of people there were interested in the idea of watching extremely intelligent AI play, similar to TAS. I'm not sure how many know what goes into that.
At any rate, I'm currently getting Dolphin so I can experiment and debug my code, since I gave my Wii to my sister. I'd love a tutorial that goes over the meanings of some things. As an example, could you explain this to me?:
How does the Routine Call table work?
For Zelda: AIPD lists !FullCharge twice, calling Unk3030 times. The first is when she is !SamePlane, the second when she is. Parameters are different though, 90, 0, 100, 30 and 80, 0, 100, 30 respectively. Zelda can't hold a charge, unless it's referring to placing Din's fire, so the code seems redundant both times, yet the parameters are different. Do you know why?
Also, the Unk3030 file. It's a pretty simple file, which is why it makes a good example of everything, I'm pretty sure it's built just to stall a frame, but I want to make sure.
It includes AIMain and has an id, that's easy to understand.
It sets unk 0x60000, do you know why that number?
It sets str "#wait_f", these feel almost like comments to me and they're never seen again in the file. Do you know what str does?
Then the code is as follows:
Code:
if !(ODistLE 23)
Finish
endif
//____________________
label
if FrameGE 0 && !(FrameGE 1)
Finish
endif
Return
To my understanding, this says: If the opponent is further than 23 units away, return. Otherwise, loop until the execution of the thread has gone further than 0 frames but not greater than 1 frame. (In other words, exactly 1 frame). Then return.
Is my understanding correct? And I don't expect you to know everything, I'm going to experiment some myself, I just want to learn what I can. Thanks for the help!