Th10/Binary hacks
< Th10
Jump to navigation
Jump to search
Development of this patch has moved to GitHub. Please use the Issues page there to discuss possible improvements or additions to this patch, or simply send a pull request. For now, the existing wiki pages of this patch will remain for the sake of documentation, but they are no longer functional. |
Bugs
Safe sprintf (call #1)(sprintf_call_1 ) |
||
---|---|---|
Address |
|
|
Code | 50 e8 [strings_vsprintf] 8944e4 18 push eax
call [strings_vsprintf]
mov dword ptr ss:[esp+0x18],eax
|
Safe sprintf (call #2)(sprintf_call_2 ) |
||
---|---|---|
Address |
|
|
Code | 50 e8 [strings_vsprintf] 8944e4 1c push eax
call [strings_vsprintf]
mov dword ptr ss:[esp+0x1c],eax
|
Safe sprintf (replace pointer)(sprintf_rep ) |
||
---|---|---|
Address |
|
|
Code | 8b5ce4 mov ebx, dword ptr ss:[esp+
|
Text alignment
Move enemy text to the left (line 1)(enemy_text_offset_1 ) |
||
---|---|---|
Description | From the English patch. | |
Address |
|
|
Code | 8d75 60 lea esi, [ebp+60h]
|
Move enemy text to the left (line 2)(enemy_text_offset_2 ) |
||
---|---|---|
Description | From the English patch. | |
Address |
|
|
Code | 83c0 07 add eax, 7
|
Spells
Spell card alignment(spell_align ) |
||
---|---|---|
Description | This time, it just can't be done without killing the strlen() as well. :( | |
Address |
|
|
Code | 8b8e 60030000 8bbe 94030000 d1e9 83e1 01 51 ffb4e4 a0000000 ff35 a0184900 ff74e4 1c e8 [GetTextExtentForFont] 83c0 04 50 db04e4 58 90 90 90 90 90 90 85c0 mov ecx,dword ptr ds:[esi+0x360]
mov edi,dword ptr ds:[esi+0x394]
shr ecx,1
and ecx,00000001
push ecx
push dword ptr ss:[esp+0x0a0]
push dword ptr ds:[th10.font_spell]
push dword ptr ss:[esp+0x1c]
call [GetTextExtentForFont]
add eax,4
push eax
fild dword ptr ss:[esp]
pop eax
nop (*0x6)
test eax,eax
|
Player data
Remove spell "alignment" in the result screen(result_spell_align ) |
||
---|---|---|
Address |
|
|
Code | 31c0 xor eax,eax
|