Moon jump (basically change X,Y,Z) on Mario Strikers Charged

Started by trackme, December 31, 2010, 04:23:50 PM

Previous topic - Next topic

trackme

I'm not sure that 80356460 is a good hook address.
We need to know that one match has 10 actors (5 by team).
Actors:
Keeper, Captain and 3 members -> 5 actors. You only can control the captain and his 3 members.

I set a breakpoint execute at 80356460. At start it seems to be a good hook address but after some breakpoints I found that the only register modified is r6. It is a loop and I writed all addresses I saw on r6 register.
Actually I only saw 10 different addresses (10 actors).

But from 80356460 hook I don't have any way to know if the r6's pointer is an actor from my team, or computer team, or another actor from my team but which I don't control it.

r15 is always 0.
r14 and r16 always are the same(on this stage with this team etc.. it always changes depending which team u have, stage etc). And the pointer points to same value than r6 register.

Breakpoint execute at 80356460.
[spoiler]
CR:84202088  XER:20000000  CTR:00000000 DSIS:00000000
DAR:00000000 SRR0:80356460 SRR1:0000B032   LR:80356140
  r0:00000000   r1:806F6110   r2:806E9C40   r3:00000030
  r4:806F6624   r5:806F6350   r6:81236300   r7:00000000
  r8:806F6130   r9:00000020  r10:806F6110  r11:806F6100
r12:80357618  r13:806E1FC0  r14:806F6620  r15:00000000
r16:806F6620  r17:00000001  r18:806F61C0  r19:806F6210
r20:806F6130  r21:00000027  r22:00000004  r23:806F6180
r24:806F6350  r25:806F6390  r26:806F63D0  r27:00000001
r28:00000001  r29:806F6350  r30:806F63D4  r31:806F63B8

  f0:00000000   f1:3CA3D70A   f2:00000000   f3:00000000
  f4:00000000   f5:00000000   f6:00000000   f7:00000000
  f8:00000000   f9:3D7D8FD8  f10:00000000  f11:00000000
f12:00000000  f13:BC13399C  f14:00000000  f15:00000000
f16:00000000  f17:00000000  f18:00000000  f19:00000000
f20:BB8FC83F  f21:00000000  f22:00000000  f23:00000000
f24:00000000  f25:00000000  f26:80000000  f27:80000000
f28:00000000  f29:3B8FC83F  f30:3CA3D70A  f31:42480000
[/spoiler]

I think I'm lost

dcx2

r17 is only 1, so this doesn't look like it's looping over all the actors.

When you do 2 player, does r17 change to 2?  This loop might not process NPC.

One useful feature when collecting data on breakpoints is to use Log Steps.  A log file will be created that records every breakpoint instruction and every step instruction.  Then you can set breakpoints repeatedly and it will record everything.