Accurate CPU Finish Times [CLF78]
#1
Makes the CPU's finish times more realistic. This change also affects players not reaching the finish in online races.

NTSC-U
C252F844 00000005
C003000C E061A03F
106318D4 EC630028
3C603E00 90610044
C0810044 EC03013A
60000000 00000000

PAL
C253438C 00000005
C003000C E061A03F
106318D4 EC630028
3C603E00 90610044
C0810044 EC03013A
60000000 00000000

NTSC-J
C2533D0C 00000005
C003000C E061A03F
106318D4 EC630028
3C603E00 90610044
C0810044 EC03013A
60000000 00000000

NTSC-K
C25223E4 00000005
C003000C E061A03F
106318D4 EC630028
3C603E00 90610044
C0810044 EC03013A
60000000 00000000

Source:
Code:
# Original instruction
lfs f0, 0xC(r3)

# Load lap count and convert it using GQR2 (u8)
psq_l f3, 0x3F(r1), 1, 2

# Add 1 to it
ps_sum0 f3, f3, f3, f3

# Subtract raceCompletion from it
fsubs f3, f3, f0

# Load multiplier
lis r3, 0x3E00
stw r3, 0x44(r1)
lfs f4, 0x44(r1)

# Multiply and add raceCompletion back
fmadds f0, f3, f4, f0

Code created by: CLF78
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)