diff --git a/source/FIFA21.CETRAINER b/source/FIFA21.CETRAINER index add9b72..d1db2cb 100644 --- a/source/FIFA21.CETRAINER +++ b/source/FIFA21.CETRAINER @@ -14,7 +14,7 @@ 0 - "v21.1.1.1" + "v21.1.1.2" 804000 1 @@ -15590,6 +15590,7 @@ dealloc(newmem_alttab) 4776 "Transfer Budget" + 4 Bytes
pScriptsBase
@@ -16199,6 +16200,235 @@ dealloc(EditPlayerName_Ptr) 1 + + 4861 + "Manager Rating - 99" + + Auto Assembler Script + { +AUTHOR: Aranaktu + +GAME VERSION: Script should always work with newest version of the game which can be downloaded from Origin. + +RISK LEVEL: 1/5 (Very small chance that this script will harm your cm save.) + +DESCRIPTION: +Set manager rating on 99 + +HOW TO USE: +Just activate the script + +VIDEO TUTORIAL(S): +- NONE +} + +[ENABLE] +//code from here to '[DISABLE]' will be used to enable the cheat +{$lua} +if syntaxcheck then return end +onScriptActivate() + +INJECT_UpdateManagerRating = gCTManager.memory_manager:get_validated_address('UpdateManagerRating') +ORG_UpdateManagerRating = readBytes(INJECT_UpdateManagerRating, 12, true) + +INJECT_GetManagerRating = gCTManager.memory_manager:get_validated_address('GetManagerRating') +ORG_GetManagerRating = readBytes(INJECT_GetManagerRating, 18, true) + +{$asm} +alloc(newmem_UpdateManagerRating, $500, $INJECT_UpdateManagerRating) + +label(code_UpdateManagerRating) +label(ret_UpdateManagerRating) + +newmem_UpdateManagerRating: + mov ebx, #99 +code_UpdateManagerRating: + lea eax,[rbx+r13] + test eax,eax + jmp ret_UpdateManagerRating + +$INJECT_UpdateManagerRating: + jmp newmem_UpdateManagerRating + nop +ret_UpdateManagerRating: + +alloc(newmem_GetManagerRating, $500, $INJECT_GetManagerRating) + +label(code_GetManagerRating) +label(ret_GetManagerRating) + +newmem_GetManagerRating: +code_GetManagerRating: + mov rax,[rcx+08] + mov byte [rax+08], 63 + mov eax,[rax+08] + jmp ret_GetManagerRating + +$INJECT_GetManagerRating+06: + jmp newmem_GetManagerRating + nop + nop +ret_GetManagerRating: + +[DISABLE] +//code_UpdateManagerRating from here till the end of the code_UpdateManagerRating will be used to disable the cheat +{$lua} +writeBytes(INJECT_UpdateManagerRating, ORG_UpdateManagerRating) +writeBytes(INJECT_GetManagerRating, ORG_GetManagerRating) +{$asm} + +dealloc(newmem_UpdateManagerRating) +dealloc(newmem_GetManagerRating) + +{ +// ORIGINAL CODE - INJECTION POINT: "FIFA21.exe"+574AE9F + +"FIFA21.exe"+574AE79: 0F 5B C9 - cvtdq2ps xmm1,xmm1 +"FIFA21.exe"+574AE7C: 66 0F 6E 00 - movd xmm0,[rax] +"FIFA21.exe"+574AE80: 0F 5B C0 - cvtdq2ps xmm0,xmm0 +"FIFA21.exe"+574AE83: 0F 5B D2 - cvtdq2ps xmm2,xmm2 +"FIFA21.exe"+574AE86: F3 0F 5C C8 - subss xmm1,xmm0 +"FIFA21.exe"+574AE8A: F3 0F 5E DA - divss xmm3,xmm2 +"FIFA21.exe"+574AE8E: F3 0F 59 CB - mulss xmm1,xmm3 +"FIFA21.exe"+574AE92: F3 0F 58 C8 - addss xmm1,xmm0 +"FIFA21.exe"+574AE96: F3 0F 2C D9 - cvttss2si ebx,xmm1 +"FIFA21.exe"+574AE9A: 0F 28 7C 24 70 - movaps xmm7,[rsp+70] +// ---------- INJECTING HERE ---------- +"FIFA21.exe"+574AE9F: 42 8D 04 2B - lea eax,[rbx+r13] +"FIFA21.exe"+574AEA3: 85 C0 - test eax,eax +// ---------- DONE INJECTING ---------- +"FIFA21.exe"+574AEA5: 4C 8D 9C 24 90 00 00 00 - lea r11,[rsp+00000090] +"FIFA21.exe"+574AEAD: 49 8B 5B 40 - mov rbx,[r11+40] +"FIFA21.exe"+574AEB1: 41 0F 28 73 F0 - movaps xmm6,[r11-10] +"FIFA21.exe"+574AEB6: 41 0F 48 C7 - cmovs eax,r15d +"FIFA21.exe"+574AEBA: 45 0F 28 43 D0 - movaps xmm8,[r11-30] +"FIFA21.exe"+574AEBF: 83 F8 64 - cmp eax,64 +"FIFA21.exe"+574AEC2: 41 0F 4F C4 - cmovg eax,r12d +"FIFA21.exe"+574AEC6: 49 8B E3 - mov rsp,r11 +"FIFA21.exe"+574AEC9: 41 5F - pop r15 +"FIFA21.exe"+574AECB: 41 5E - pop r14 +} + +{ +// ORIGINAL CODE - INJECTION POINT: "FIFA21.exe"+574A960 + +"FIFA21.exe"+574A94E: CC - int 3 +"FIFA21.exe"+574A94F: CC - int 3 +"FIFA21.exe"+574A950: 48 8D 05 F9 E0 BE 01 - lea rax,[FIFA21.exe+7338A50] +"FIFA21.exe"+574A957: 48 89 01 - mov [rcx],rax +"FIFA21.exe"+574A95A: C3 - ret +"FIFA21.exe"+574A95B: CC - int 3 +"FIFA21.exe"+574A95C: CC - int 3 +"FIFA21.exe"+574A95D: CC - int 3 +"FIFA21.exe"+574A95E: CC - int 3 +"FIFA21.exe"+574A95F: CC - int 3 +// ---------- INJECTING HERE ---------- +"FIFA21.exe"+574A960: 48 8B 41 08 - mov rax,[rcx+08] +"FIFA21.exe"+574A964: 8B 40 08 - mov eax,[rax+08] +// ---------- DONE INJECTING ---------- +"FIFA21.exe"+574A967: C3 - ret +"FIFA21.exe"+574A968: CC - int 3 +"FIFA21.exe"+574A969: CC - int 3 +"FIFA21.exe"+574A96A: CC - int 3 +"FIFA21.exe"+574A96B: CC - int 3 +"FIFA21.exe"+574A96C: CC - int 3 +"FIFA21.exe"+574A96D: CC - int 3 +"FIFA21.exe"+574A96E: CC - int 3 +"FIFA21.exe"+574A96F: CC - int 3 +"FIFA21.exe"+574A970: 48 8B 41 08 - mov rax,[rcx+08] +} + + + + 4862 + "Manager Never Retire" + + Auto Assembler Script + { +AUTHOR: Aranaktu + +GAME VERSION: Script should always work with newest version of the game which can be downloaded from Origin. + +RISK LEVEL: 5/5 (Almost for sure it will break your career save) + +DESCRIPTION: +This script allows you to play a single career mode for more than 15 seasons. +Don't know how many seasons more you will be able to play. Maybe 1, maybe 5 maybe 30. +At some point your game will just start crashing and you won't be able to do much with it. + +HOW TO USE: +Activate the script before press "End Season" button + +VIDEO TUTORIAL(S): +- NONE +} + +[ENABLE] +//code from here to '[DISABLE]' will be used to enable the cheat +{$lua} +if syntaxcheck then return end +onScriptActivate() + +INJECT_ManagerNeverRetire = gCTManager.memory_manager:get_validated_address('ManagerNeverRetire') +ORG_ManagerNeverRetire = readBytes(INJECT_ManagerNeverRetire, 12, true) + +{$asm} + +alloc(newmem_ManagerNeverRetire, $500, $INJECT_ManagerNeverRetire) + +label(code_ManagerNeverRetire) +label(ret_ManagerNeverRetire) + +newmem_ManagerNeverRetire: + mov esi, [rax+000002C4] + cmp esi, F + jb code_ManagerNeverRetire + mov esi, #14 +code_ManagerNeverRetire: + jmp ret_ManagerNeverRetire + +$INJECT_ManagerNeverRetire: + jmp newmem_ManagerNeverRetire + nop +ret_ManagerNeverRetire: + +[DISABLE] +//code_ManagerNeverRetire from here till the end of the code_ManagerNeverRetire will be used to disable the cheat +{$lua} +writeBytes(INJECT_ManagerNeverRetire, ORG_ManagerNeverRetire) +{$asm} + +dealloc(newmem_ManagerNeverRetire) + +{ +// ORIGINAL CODE - INJECTION POINT: "FIFA21.exe"+55D5EF9 + +"FIFA21.exe"+55D5ED6: 49 8B 80 78 0F 00 00 - mov rax,[r8+00000F78] +"FIFA21.exe"+55D5EDD: 48 8B 10 - mov rdx,[rax] +"FIFA21.exe"+55D5EE0: 48 63 42 14 - movsxd rax,dword ptr [rdx+14] +"FIFA21.exe"+55D5EE4: 83 F8 FF - cmp eax,-01 +"FIFA21.exe"+55D5EE7: 75 04 - jne FIFA21.exe+55D5EED +"FIFA21.exe"+55D5EE9: 33 C0 - xor eax,eax +"FIFA21.exe"+55D5EEB: EB 0C - jmp FIFA21.exe+55D5EF9 +"FIFA21.exe"+55D5EED: 48 8D 04 40 - lea rax,[rax+rax*2] +"FIFA21.exe"+55D5EF1: 48 C1 E0 08 - shl rax,08 +"FIFA21.exe"+55D5EF5: 48 03 42 18 - add rax,[rdx+18] +// ---------- INJECTING HERE ---------- +"FIFA21.exe"+55D5EF9: 8B B0 C4 02 00 00 - mov esi,[rax+000002C4] +// ---------- DONE INJECTING ---------- +"FIFA21.exe"+55D5EFF: 8B 59 14 - mov ebx,[rcx+14] +"FIFA21.exe"+55D5F02: 40 38 69 19 - cmp [rcx+19],bpl +"FIFA21.exe"+55D5F06: 75 12 - jne FIFA21.exe+55D5F1A +"FIFA21.exe"+55D5F08: 32 C0 - xor al,al +"FIFA21.exe"+55D5F0A: 48 8B 5C 24 38 - mov rbx,[rsp+38] +"FIFA21.exe"+55D5F0F: 48 8B 6C 24 40 - mov rbp,[rsp+40] +"FIFA21.exe"+55D5F14: 48 83 C4 20 - add rsp,20 +"FIFA21.exe"+55D5F18: 5E - pop rsi +"FIFA21.exe"+55D5F19: C3 - ret +"FIFA21.exe"+55D5F1A: 49 8B 80 98 0E 00 00 - mov rax,[r8+00000E98] +} + + 4445 "Make ManagerID editable" @@ -22280,6 +22510,301 @@ dealloc(HalfLength)
+ + 2956 + "Time Of Day" + + + Auto Assembler Script + { +AUTHOR: +- Aranaktu + +GAME VERSION: +- Script should always work with newest version of the game which can be downloaded from Origin. + +RISK LEVEL: +- 0/5 (There is no chance that this script will harm your cm save.) + +DESCRIPTION: + Change Time of Day for next match + +HOW TO USE: + 1. Go to 'Cental' Tab in your career main menu. + 2. Active script + 3. Change 'Time Of Day'. By default it will be '2000', which is 8PM in game. + Sometimes game may add or substract from it a few hours. + So check on Match Preview screen what time exactly will be played. + If you want to play at 8PM, you have set the value at '2000' and game displays 10PM + substract 2 hours from the value in Cheat table (put '1800' in this case). + 4. Press 'Play Match' in game + +VIDEO TUTORIAL: +- NONE +} + +[ENABLE] +//code from here to '[DISABLE]' will be used to enable the cheat +{$lua} +if syntaxcheck then return end +onScriptActivate() + +INJECT_MatchTODReal = gCTManager.memory_manager:get_validated_address('MatchTODReal') +ORG_MatchTODReal = readBytes(INJECT_MatchTODReal, 12, true) +INJECT_MatchTODDisplay = gCTManager.memory_manager:get_validated_address('MatchTODDisplay') +ORG_MatchTODDisplay = readBytes(INJECT_MatchTODDisplay, 12, true) + +{$asm} + +alloc(newmem_MatchTODReal, $500, $INJECT_MatchTODReal) +alloc(intTOD, 4, $INJECT_MatchTODReal) +registersymbol(intTOD) + +// 2000 = 20:00. Game may add 2 hours? +intTOD: +dd (int)2000 + +label(code_MatchTODReal) +label(ret_MatchTODReal) + +newmem_MatchTODReal: + mov ecx, [intTOD] + mov [r13+40], ecx +code_MatchTODReal: + mov r9,r14 + mov rcx,r13 + jmp ret_MatchTODReal + +$INJECT_MatchTODReal: + jmp newmem_MatchTODReal + nop +ret_MatchTODReal: + +alloc(newmem_MatchTODDisplay, $500, $INJECT_MatchTODDisplay) + +label(code_MatchTODDisplay) +label(ret_MatchTODDisplay) + +newmem_MatchTODDisplay: + mov eax, [intTOD] + mov [rsp+58], eax +code_MatchTODDisplay: + mov rax,[rsp+40] + jmp ret_MatchTODDisplay + +$INJECT_MatchTODDisplay: + jmp newmem_MatchTODDisplay +ret_MatchTODDisplay: + +[DISABLE] +//code_MatchTODReal from here till the end of the code_MatchTODReal will be used to disable the cheat +{$lua} +writeBytes(INJECT_MatchTODReal, ORG_MatchTODReal) +writeBytes(INJECT_MatchTODDisplay, ORG_MatchTODDisplay) +{$asm} + +dealloc(newmem_MatchTODReal) +dealloc(newmem_MatchTODDisplay) +unregistersymbol(intTOD) +dealloc(intTOD) + +{ +// ORIGINAL CODE - INJECTION POINT: "FIFA21.exe"+55E8520 + +"FIFA21.exe"+55E84F1: 48 8D 15 F0 EF D0 01 - lea rdx,[FIFA21.exe+72F74E8] +"FIFA21.exe"+55E84F8: 49 8B CE - mov rcx,r14 +"FIFA21.exe"+55E84FB: FF 90 B0 00 00 00 - call qword ptr [rax+000000B0] +"FIFA21.exe"+55E8501: 48 8B 4B 38 - mov rcx,[rbx+38] +"FIFA21.exe"+55E8505: FF 15 45 14 FC 00 - call qword ptr [FIFA21.exe+65A9950] +"FIFA21.exe"+55E850B: 4D 8D 77 48 - lea r14,[r15+48] +"FIFA21.exe"+55E850F: EB 07 - jmp FIFA21.exe+55E8518 +"FIFA21.exe"+55E8511: 4D 8D B7 90 01 00 00 - lea r14,[r15+00000190] +"FIFA21.exe"+55E8518: 49 8B CE - mov rcx,r14 +"FIFA21.exe"+55E851B: E8 60 7A FC FF - call FIFA21.exe+55AFF80 +// ---------- INJECTING HERE ---------- +"FIFA21.exe"+55E8520: 4D 8B CE - mov r9,r14 +"FIFA21.exe"+55E8523: 49 8B CD - mov rcx,r13 +// ---------- DONE INJECTING ---------- +"FIFA21.exe"+55E8526: B8 02 00 00 00 - mov eax,00000002 +"FIFA21.exe"+55E852B: 0F 1F 44 00 00 - nop [rax+rax+00] +"FIFA21.exe"+55E8530: 0F 10 01 - movups xmm0,[rcx] +"FIFA21.exe"+55E8533: 41 0F 11 01 - movups [r9],xmm0 +"FIFA21.exe"+55E8537: 0F 10 49 10 - movups xmm1,[rcx+10] +"FIFA21.exe"+55E853B: 41 0F 11 49 10 - movups [r9+10],xmm1 +"FIFA21.exe"+55E8540: 0F 10 41 20 - movups xmm0,[rcx+20] +"FIFA21.exe"+55E8544: 41 0F 11 41 20 - movups [r9+20],xmm0 +"FIFA21.exe"+55E8549: 0F 10 49 30 - movups xmm1,[rcx+30] +"FIFA21.exe"+55E854D: 41 0F 11 49 30 - movups [r9+30],xmm1 +} + +{ +// ORIGINAL CODE - INJECTION POINT: "FIFA21.exe"+49445CC + +"FIFA21.exe"+4944595: 45 33 C0 - xor r8d,r8d +"FIFA21.exe"+4944598: 48 8D 94 24 D8 00 00 00 - lea rdx,[rsp+000000D8] +"FIFA21.exe"+49445A0: 48 8B 4C 24 40 - mov rcx,[rsp+40] +"FIFA21.exe"+49445A5: E8 B6 BC 4F FC - call FIFA21.exe+E40260 +"FIFA21.exe"+49445AA: 41 B9 01 00 00 00 - mov r9d,00000001 +"FIFA21.exe"+49445B0: 4C 8D 05 61 9F 49 02 - lea r8,[FIFA21.exe+6DDE518] +"FIFA21.exe"+49445B7: 48 8D 15 F2 5B 3F 02 - lea rdx,[FIFA21.exe+6D3A1B0] +"FIFA21.exe"+49445BE: 48 8D 8C 24 B0 00 00 00 - lea rcx,[rsp+000000B0] +"FIFA21.exe"+49445C6: E8 55 58 11 FC - call FIFA21.exe+A59E20 +"FIFA21.exe"+49445CB: 90 - nop +// ---------- INJECTING HERE ---------- +"FIFA21.exe"+49445CC: 48 8B 44 24 40 - mov rax,[rsp+40] +// ---------- DONE INJECTING ---------- +"FIFA21.exe"+49445D1: 48 8B 00 - mov rax,[rax] +"FIFA21.exe"+49445D4: 48 8B 80 60 01 00 00 - mov rax,[rax+00000160] +"FIFA21.exe"+49445DB: 48 89 44 24 70 - mov [rsp+70],rax +"FIFA21.exe"+49445E0: 8B 44 24 58 - mov eax,[rsp+58] +"FIFA21.exe"+49445E4: 99 - cdq +"FIFA21.exe"+49445E5: B9 64 00 00 00 - mov ecx,00000064 +"FIFA21.exe"+49445EA: F7 F9 - idiv ecx +"FIFA21.exe"+49445EC: 69 C0 10 0E 00 00 - imul eax,eax,00000E10 +"FIFA21.exe"+49445F2: 89 44 24 48 - mov [rsp+48],eax +"FIFA21.exe"+49445F6: 8B 44 24 58 - mov eax,[rsp+58] +} + + + + 2959 + "Time Of Day" + 4 Bytes +
intTOD
+
+
+
+ + 1986 + "Weather" + + + Auto Assembler Script + { +AUTHOR: +- Aranaktu + +GAME VERSION: +- Script should always work with newest version of the game which can be downloaded from Origin. + +RISK LEVEL: +- 0/5 (There is no chance that this script will harm your cm save.) + +DESCRIPTION: + Change weather for the next match. + + +HOW TO USE: + 1. Go to 'Cental' Tab in your career main menu. + 2. Active script + 3. Change 'Weather'. By default it will be 'Clear' + 4. Press 'Play Match' in game + +VIDEO TUTORIAL: +- NONE +} + +[ENABLE] +//code from here to '[DISABLE]' will be used to enable the cheat +{$lua} +if syntaxcheck then return end +onScriptActivate() + +INJECT_MatchWeather = gCTManager.memory_manager:get_validated_address('MatchWeather') +ORG_MatchWeather = readBytes(INJECT_MatchWeather, 12, true) + +{$asm} + +alloc(newmem_MatchWeather, $500, $INJECT_MatchWeather) +alloc(Weather, 4, $INJECT_MatchWeather) +registersymbol(Weather) + +// Weather IDs: +// 0 - Clear +// 1 - Hazy +// 2 - Cloudy +// 3 - Rain +// 4 - Showers +// 5 - Snow +// 6 - Flurries +// 7 - Overcast +// 8 - Foggy +// OVERRIDE/WEATHER +Weather: +dd (int)0 + +label(code_MatchWeather) +label(ret_MatchWeather) + +newmem_MatchWeather: + mov eax, [Weather] +code_MatchWeather: + //cmp eax,-01 + //cmove eax,esi + jmp ret_MatchWeather + +$INJECT_MatchWeather: + jmp newmem_MatchWeather + nop +ret_MatchWeather: + +[DISABLE] +//code_MatchWeather from here till the end of the code_MatchWeather will be used to disable the cheat +{$lua} +writeBytes(INJECT_MatchWeather, ORG_MatchWeather) +{$asm} + +dealloc(newmem_MatchWeather) +unregistersymbol(Weather) +dealloc(Weather) + +{ +// ORIGINAL CODE - INJECTION POINT: "FIFA21.exe"+55D5EF9 + +"FIFA21.exe"+55D5ED6: 49 8B 80 78 0F 00 00 - mov rax,[r8+00000F78] +"FIFA21.exe"+55D5EDD: 48 8B 10 - mov rdx,[rax] +"FIFA21.exe"+55D5EE0: 48 63 42 14 - movsxd rax,dword ptr [rdx+14] +"FIFA21.exe"+55D5EE4: 83 F8 FF - cmp eax,-01 +"FIFA21.exe"+55D5EE7: 75 04 - jne FIFA21.exe+55D5EED +"FIFA21.exe"+55D5EE9: 33 C0 - xor eax,eax +"FIFA21.exe"+55D5EEB: EB 0C - jmp FIFA21.exe+55D5EF9 +"FIFA21.exe"+55D5EED: 48 8D 04 40 - lea rax,[rax+rax*2] +"FIFA21.exe"+55D5EF1: 48 C1 E0 08 - shl rax,08 +"FIFA21.exe"+55D5EF5: 48 03 42 18 - add rax,[rdx+18] +// ---------- INJECTING HERE ---------- +"FIFA21.exe"+55D5EF9: 8B B0 C4 02 00 00 - mov esi,[rax+000002C4] +// ---------- DONE INJECTING ---------- +"FIFA21.exe"+55D5EFF: 8B 59 14 - mov ebx,[rcx+14] +"FIFA21.exe"+55D5F02: 40 38 69 19 - cmp [rcx+19],bpl +"FIFA21.exe"+55D5F06: 75 12 - jne FIFA21.exe+55D5F1A +"FIFA21.exe"+55D5F08: 32 C0 - xor al,al +"FIFA21.exe"+55D5F0A: 48 8B 5C 24 38 - mov rbx,[rsp+38] +"FIFA21.exe"+55D5F0F: 48 8B 6C 24 40 - mov rbp,[rsp+40] +"FIFA21.exe"+55D5F14: 48 83 C4 20 - add rsp,20 +"FIFA21.exe"+55D5F18: 5E - pop rsi +"FIFA21.exe"+55D5F19: C3 - ret +"FIFA21.exe"+55D5F1A: 49 8B 80 98 0E 00 00 - mov rax,[r8+00000E98] +} + + + + 1983 + "Weather" + 0: 'Clear' +1: 'Hazy' +2: 'Cloudy' +3: 'Rain' +4: 'Showers' +5: 'Snow' +6: 'Flurries' +7: 'Overcast' +8: 'Foggy' + + 4 Bytes +
Weather
+
+
+
@@ -24032,210 +24557,245 @@ bAwayTeam_Tired: 4460 "PlayerID 1" + 4 Bytes
arrNeverTiredPlayerIDs
4466 "PlayerID 2" + 4 Bytes
arrNeverTiredPlayerIDs+4
4465 "PlayerID 3" + 4 Bytes
arrNeverTiredPlayerIDs+8
4464 "PlayerID 4" + 4 Bytes
arrNeverTiredPlayerIDs+C
4463 "PlayerID 5" + 4 Bytes
arrNeverTiredPlayerIDs+10
4462 "PlayerID 6" + 4 Bytes
arrNeverTiredPlayerIDs+14
4472 "PlayerID 7" + 4 Bytes
arrNeverTiredPlayerIDs+1C
4473 "PlayerID 8" + 4 Bytes
arrNeverTiredPlayerIDs+20
4474 "PlayerID 9" + 4 Bytes
arrNeverTiredPlayerIDs+24
4475 "PlayerID 10" + 4 Bytes
arrNeverTiredPlayerIDs+28
4476 "PlayerID 11" + 4 Bytes
arrNeverTiredPlayerIDs+2C
4467 "PlayerID 12" + 4 Bytes
arrNeverTiredPlayerIDs+30
4468 "PlayerID 13" + 4 Bytes
arrNeverTiredPlayerIDs+34
4469 "PlayerID 14" + 4 Bytes
arrNeverTiredPlayerIDs+38
4470 "PlayerID 15" + 4 Bytes
arrNeverTiredPlayerIDs+3C
4471 "PlayerID 16" + 4 Bytes
arrNeverTiredPlayerIDs+40
4477 "PlayerID 17" + 4 Bytes
arrNeverTiredPlayerIDs+44
4478 "PlayerID 18" + 4 Bytes
arrNeverTiredPlayerIDs+48
4497 "PlayerID 19" + 4 Bytes
arrNeverTiredPlayerIDs+50
4498 "PlayerID 20" + 4 Bytes
arrNeverTiredPlayerIDs+54
4499 "PlayerID 21" + 4 Bytes
arrNeverTiredPlayerIDs+58
4500 "PlayerID 22" + 4 Bytes
arrNeverTiredPlayerIDs+5C
4501 "PlayerID 23" + 4 Bytes
arrNeverTiredPlayerIDs+60
4502 "PlayerID 24" + 4 Bytes
arrNeverTiredPlayerIDs+64
4503 "PlayerID 25" + 4 Bytes
arrNeverTiredPlayerIDs+6C
4504 "PlayerID 26" + 4 Bytes
arrNeverTiredPlayerIDs+70
4505 "PlayerID 27" + 4 Bytes
arrNeverTiredPlayerIDs+74
4506 "PlayerID 28" + 4 Bytes
arrNeverTiredPlayerIDs+78
4507 "PlayerID 29" + 4 Bytes
arrNeverTiredPlayerIDs+7C
4508 "PlayerID 30" + 4 Bytes
arrNeverTiredPlayerIDs+80
4509 "PlayerID 31" + 4 Bytes
arrNeverTiredPlayerIDs+84
4510 "PlayerID 32" + 4 Bytes
arrNeverTiredPlayerIDs+88
4511 "PlayerID 33" + 4 Bytes
arrNeverTiredPlayerIDs+8C
4512 "PlayerID 34" + 4 Bytes
arrNeverTiredPlayerIDs+90
4513 "PlayerID 35" + 4 Bytes
arrNeverTiredPlayerIDs+94
@@ -24681,7 +25241,7 @@ dealloc(newmem_disable_pgm) pScriptsBase -
13FFE0000
+
13FDB0000
arrNeverTiredPlayerIDs @@ -24689,7 +25249,7 @@ dealloc(newmem_disable_pgm) funcGenReport -
13FFE0030
+
13FDB0030
bNewReport @@ -24701,15 +25261,15 @@ dealloc(newmem_disable_pgm) pScoutMgr -
13FFE0020
+
13FDB0020
pCareerModeSmth -
13FFE0010
+
13FDB0010
magic_fldtype_real -
13FFE0040
+
13FDB0040
-- Hello! diff --git a/source/lua/consts.lua b/source/lua/consts.lua index e605e48..ecabe6a 100644 --- a/source/lua/consts.lua +++ b/source/lua/consts.lua @@ -38,27 +38,32 @@ CT_MEMORY_RECORDS = { AOB_PATTERNS = { pScriptsBase = '48 89 35 ?? ?? ?? ?? 48 89 3D ?? ?? ?? ?? 48 89 0D ?? ?? ?? ??', pCareerModeSmth = '48 89 35 ?? ?? ?? ?? 41 B8 01 00 00 00 48 8D 15', - - DisablePGM = "85 C0 0F 95 85 ?? ?? ?? ?? 32 DB 41 8B F6", - PGMApplyXp = "F3 0F 2C C1 48 8B 8D A0 00 00 00", + UpdateManagerRating = '42 8D 04 2B 85 C0', + GetManagerRating = 'C3 CC CC CC CC CC 48 8B 41 08 8B 40 08', + ManagerNeverRetire = '8B B0 C4 02 00 00 8B 59', + DisablePGM = '85 C0 0F 95 85 ?? ?? ?? ?? 32 DB 41 8B F6', + PGMApplyXp = 'F3 0F 2C C1 48 8B 8D A0 00 00 00', ScreenID = '48 8D 35 ?? ?? ?? ?? 48 0F 45 35 ?? ?? ?? ?? 49 8B FF', DatabaseRead = '48 ?? ?? 4C 03 46 30 E8', - DatabaseBasePtr = "4C 0F 44 35 ?? ?? ?? ?? 41 8B 4E 08", - SideManipulator = "48 8B 84 CF 20 01 00 00 83", - PAPTrainingBestGrade = "8B 93 B0 00 00 00 48 8B CD", - PAPMoreEfficientTraining = "66 0F 6E 5E 1C", - PAPUnlimitedTrainingSessions = "41 8B 5F 38 45 8B 7F 3C", - PAPTrainingEveryday = "83 6F 3C 01 ?? ?? ?? ?? ?? ?? B9 07 00 00 00 89 4F 3C", - PAPIgnoreDayWithMatch = "48 8B CE FF 50 20 85 C0 74 05 40", - PAPUnlockPlayButtons = "80 79 41 00 74 0C", - GTNRevealPlayerData = "8B 8D 9C 02 00 00 39", - OnSharpnessChange = "41 88 71 24 48 8B 5C 24 50", - OnStaminaChange1 = "0F BE C2 88 51 11", - OnStaminaChange2 = "88 43 11 0F B6 47 0D", - HireScout = "41 8B 01 89 45 38", - ChangeStadium = "45 8B AC 24 C4 18 00 00", + DatabaseBasePtr = '4C 0F 44 35 ?? ?? ?? ?? 41 8B 4E 08', + SideManipulator = '48 8B 84 CF 20 01 00 00 83', + PAPTrainingBestGrade = '8B 93 B0 00 00 00 48 8B CD', + PAPMoreEfficientTraining = '66 0F 6E 5E 1C', + PAPUnlimitedTrainingSessions = '41 8B 5F 38 45 8B 7F 3C', + PAPTrainingEveryday = '83 6F 3C 01 ?? ?? ?? ?? ?? ?? B9 07 00 00 00 89 4F 3C', + PAPIgnoreDayWithMatch = '48 8B CE FF 50 20 85 C0 74 05 40', + PAPUnlockPlayButtons = '80 79 41 00 74 0C', + GTNRevealPlayerData = '8B 8D 9C 02 00 00 39', + OnSharpnessChange = '41 88 71 24 48 8B 5C 24 50', + OnStaminaChange1 = '0F BE C2 88 51 11', + OnStaminaChange2 = '88 43 11 0F B6 47 0D', + HireScout = '41 8B 01 89 45 38', + ChangeStadium = '45 8B AC 24 C4 18 00 00', MatchHalfLength = '44 8B 83 E8 18 00 00', - UnlimitedSubstitutions = "8B 84 01 EC 9B 00 00", + MatchWeather = '83 F8 FF 0F 44 C6 EB', + MatchTODDisplay = '48 8B 44 24 40 48 8B 00 48 8B 80 60 01', + MatchTODReal = '4D 8B CE 49 8B CD B8', + UnlimitedSubstitutions = '8B 84 01 EC 9B 00 00', fnGenYAReport = '48 33 C4 48 89 45 40 48 8B F9 48 8B 01 FF', -- -0x2B GenNewYAReport = '41 8D 44 24 0E', InterceptpScoutManager = '48 8B 0C 03 48 8B 01 FF 50 20', @@ -74,12 +79,12 @@ AOB_PATTERNS = { AllowSignText = '41 FF D1 89 45 58', EditReleaseClause = '8B 48 08 83 F9 FF 74 06 89 8B', EditPlayerName = '0F 57 C0 48 C7 44 24 30 00 00 00 00 0F 11 44 24 20 C6 44 24 2F 0F 80 78 01', - CPUDontChangeLineup = "66 83 F9 01 0F 85 99 00 00 00", + CPUDontChangeLineup = '66 83 F9 01 0F 85 99 00 00 00', MatchTimer = '8B 41 50 89 47 10', MatchScore = '45 8B 90 B0 26 02 00', IngameStamina = '8B 43 68 41 89 82 28 04 00 00', DisableSubstitutions = '41 8B BC 1C FC A3 00 00 45', - AgreeTransferRequest = "44 8B E8 48 8B 89 98 01 00 00", + AgreeTransferRequest = '44 8B E8 48 8B 89 98 01 00 00', UnlimitedPlayerRelease = '39 47 54 41 0F 9C C4', ReleasePlayerMsgBox = '4C 8B E0 85 FF 0F', ReleasePlayerFee = '41 8B D7 49 8B CD 44', @@ -90,7 +95,7 @@ AOB_PATTERNS = { YASomeScoutIni = '48 8D 4C 24 20 48 83 C2 08 41', YARemoveMinAgeRequirement = '89 43 40 85 C0', CustomManagerEditable = 'C7 45 74 0F 27 00 00', - AltTab = "48 83 EC 48 48 83 3D ?? ?? ?? ?? ?? 74" + AltTab = '48 83 EC 48 48 83 3D ?? ?? ?? ?? ?? 74' -- Not used anymore -- BASE_FORM_MORALE_RLC = '48 89 35 ?? ?? ?? ?? 48 89 3D ?? ?? ?? ?? 48 89 0D ?? ?? ?? ??'