I think this problem is just forgetting “add r4, #0x5A”.
SkillSystem_FE8-master\Engine Hacks\Strmag\Str Mag Split\Combat
Str or Mag Damage.asm
.thumb
.org 0x0
mov r0,#0x5A
strh r5,[r4,r0]
mov r0,#0x4C
mov r7,#0x14
ldr r0,[r4,r0]
mov r5,#0x2
tst r5,r0
beq IsStr
Magic:
mov r7,#0x3A
IsStr:
ldrb r7,[r6,r7]
mov r5,#0x5A
ldrh r0,[r4,r5] @current damage
add r0,r7
strh r0,[r4,r5]
b End
End:
add r4,#0x5A @for stone <-------!!!
bx r14
This function is inserted into 0x2AB4C of FE8U.
In vanilla, “add r4, #0x5a” is issued.
The person who wrote this code forgot to increase the r4 register.
Forgetting it has affected the latter branch.
Mistakes become noticeable when branching to stone at 0x2AB62.
0802AB4C 345A add r4, #0x5a //Fixed Skill SkillSystems 20171130(スキル拡張)@0002AB4C.bin@BIN
0802AB4E 8025 strh r5, [r4, #0x0]
0802AB50 2014 mov r0, #0x14 //ResをMagicとして利用するパッチ 20171125(Install)@@EA
0802AB52 5630 ldsb r0, [r6, r0]
0802AB54 1828 add r0 ,r5, r0
0802AB56 8020 strh r0, [r4, #0x0]
0802AB58 1C30 mov r0 ,r6
0802AB5A 3048 add r0, #0x48
0802AB5C 8800 ldrh r0, [r0, #0x0]
0802AB5E F7EC FCC5 bl 0x080174ec //GetItemIndex
0802AB62 28B5 cmp r0, #0xb5 //stone <---!!!!!!!!!!!!!!!!!!
0802AB64 D101 bne #0x802ab6a
0802AB66 2000 mov r0, #0x0
0802AB68 8020 strh r0, [r4, #0x0]
0802AB6A BC08 pop {r3}
0802AB6C 4698 mov r8, r3
0802AB6E BCF0 pop {r4,r5,r6,r7}
0802AB70 BC01 pop {r0}
0802AB72 4700 bx r0
Therefore, I think that it works by just adding “add r4, #0x5A” to the end of “Str or Mag Damage.asm”.