Hels The Ronin
Premier League
- 15 November 2019
FIFA 16 is an amazing game, and I am getting AMAZING results with cl.ini modding. However, after touching a lot of things in cl.ini, I've got to a soft limit where sometimes, when there's a collision between one player of my team and another of the opposite one, without being a hard tackle, but more likely a jostle, the referee will send a red card to my player, and then the game will crash and create a crash.dmp file.
I copy here the inform of the .excr command and !analyze -v command in winDbg app, and attach my cl.ini at the end of the file.
I was interested into knowing what might be causing this crash for two reasons. The first one to solve it, but the second one, to understand why is happening, since this could get us a bit closer to find something anew in the FIFA16 internal functioning, even if sadly, at least for the moment, we can't change more due to the lack of access to the code.
So, having all this info, guys, what do you think it might be? My bets are that there's two parts of the problem. The crash is caused by something related to some animation of the players when they recieve a card, and that would be causing the crash, like it seems to evidence the line "fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4". I bet that the game is trying to access to some memory address where it is supposed to be stacked some kind of animation, but either the address is empty or somehow it doesn't have access, for some reason. Maybe the lane in cl.ini the line "FORCE_OVER_REACT_TO_CARD = 1" has something to do, and the overreaction in the cinematic doesn't play and gives an exception. Or maybe this only happens in certain targets only.
The other part of the bug has to do with fouls with minimal contact, and I guess that could be because of the lines "
AI_RANDOM_FOULTYPE=1
//AI_FORCE_FOULTYPE=2"
or even
FOUL = 0.9
RULES_FOUL = 1.0
This is only theories, though, and I'd be glad to hear the opinion of other more experts FIFA16 modders. What do you think guys that might be the reason this is happening?
cl.ini: https://mega.nz/file/OxBmCZCJ#dfbtC36u7-elrqGxn1fLClplX3hUT7mEpQig2k35qco
I copy here the inform of the .excr command and !analyze -v command in winDbg app, and attach my cl.ini at the end of the file.
.excr command results
0:000> .ecxr
rax=eabd5b73f397c171 rbx=0000000000000004 rcx=000000002c560000
rdx=000000007ff062d8 rsi=00000001434ace80 rdi=00000001434e4c08
rip=0000000143cfb844 rsp=00000000da9ee820 rbp=000000007ff062d8
r8=00000000da9ee888 r9=0000000000000000 r10=0000000000000000
r11=0000000000000246 r12=00000000006070b0 r13=0000000000000000
r14=0000000000000001 r15=00000000006092a0
iopl=0 nv up ei ng nz ac pe cy
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010293
fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4:
00000001`43cfb844 ff5040 call qword ptr [rax+40h] ds:eabd5b73`f397c1b1=????????????????
0:000> .ecxr
rax=eabd5b73f397c171 rbx=0000000000000004 rcx=000000002c560000
rdx=000000007ff062d8 rsi=00000001434ace80 rdi=00000001434e4c08
rip=0000000143cfb844 rsp=00000000da9ee820 rbp=000000007ff062d8
r8=00000000da9ee888 r9=0000000000000000 r10=0000000000000000
r11=0000000000000246 r12=00000000006070b0 r13=0000000000000000
r14=0000000000000001 r15=00000000006092a0
iopl=0 nv up ei ng nz ac pe cy
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010293
fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4:
00000001`43cfb844 ff5040 call qword ptr [rax+40h] ds:eabd5b73`f397c1b1=????????????????
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************
KEY_VALUES_STRING: 1
Key : AV.Fault
Value: Read
Key : Analysis.CPU.mSec
Value: 109
Key : Analysis.Elapsed.mSec
Value: 27887
Key : Analysis.IO.Other.Mb
Value: 6
Key : Analysis.IO.Read.Mb
Value: 0
Key : Analysis.IO.Write.Mb
Value: 43
Key : Analysis.Init.CPU.mSec
Value: 31
Key : Analysis.Init.Elapsed.mSec
Value: 85850
Key : Analysis.Memory.CommitPeak.Mb
Value: 229
Key : Analysis.Version.DbgEng
Value: 10.0.27704.1001
Key : Analysis.Version.Description
Value: 10.2408.27.01 amd64fre
Key : Analysis.Version.Ext
Value: 1.2408.27.1
Key : Failure.Bucket
Value: INVALID_POINTER_READ_c0000005_fifa16.exe!Unknown
Key : Failure.Hash
Value: {728e949c-8619-c325-60a3-a779b20cbbfb}
Key : Timeline.OS.Boot.DeltaSec
Value: 716391
Key : Timeline.Process.Start.DeltaSec
Value: 1522
Key : WER.OS.Branch
Value: ni_release
Key : WER.OS.Version
Value: 10.0.22621.1
Key : WER.Process.Version
Value: 1.0.0.0
FILE_IN_CAB: crash.dmp
CONTEXT: (.ecxr)
rax=eabd5b73f397c171 rbx=0000000000000004 rcx=000000002c560000
rdx=000000007ff062d8 rsi=00000001434ace80 rdi=00000001434e4c08
rip=0000000143cfb844 rsp=00000000da9ee820 rbp=000000007ff062d8
r8=00000000da9ee888 r9=0000000000000000 r10=0000000000000000
r11=0000000000000246 r12=00000000006070b0 r13=0000000000000000
r14=0000000000000001 r15=00000000006092a0
iopl=0 nv up ei ng nz ac pe cy
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010293
fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4:
00000001`43cfb844 ff5040 call qword ptr [rax+40h] ds:eabd5b73`f397c1b1=????????????????
Resetting default scope
EXCEPTION_RECORD: (.exr -1)
ExceptionAddress: 0000000143cfb844 (fifa16_exe!AptAnimationTarget::GetTopMostSprite+0x00000000000b58e4)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: ffffffffffffffff
Attempt to read from address ffffffffffffffff
PROCESS_NAME: fifa16.exe
READ_ADDRESS: ffffffffffffffff
ERROR_CODE: (NTSTATUS) 0xc0000005 - La instrucci n en 0x%p hace referencia a la memoria en 0x%p. La memoria no se pudo %s.
EXCEPTION_CODE_STR: c0000005
EXCEPTION_PARAMETER1: 0000000000000000
EXCEPTION_PARAMETER2: ffffffffffffffff
STACK_TEXT:
00000000`da9ee820 00000001`43d5e93c : 00000001`434ea788 00000000`7ff062d8 00000000`da9eece0 00000000`006070b0 : fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4
00000000`da9ee890 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : fifa16_exe!AptAnimationTarget::SetQueuedInputsSize+0x16d3c
STACK_COMMAND: ~0s; .ecxr ; kb
SYMBOL_NAME: fifa16_exe+b58e4
MODULE_NAME: fifa16_exe
IMAGE_NAME: fifa16.exe
FAILURE_BUCKET_ID: INVALID_POINTER_READ_c0000005_fifa16.exe!Unknown
OS_VERSION: 10.0.22621.1
BUILDLAB_STR: ni_release
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
IMAGE_VERSION: 1.0.0.0
FAILURE_ID_HASH: {728e949c-8619-c325-60a3-a779b20cbbfb}
Followup: MachineOwner
---------
* *
* Exception Analysis *
* *
*******************************************************************************
KEY_VALUES_STRING: 1
Key : AV.Fault
Value: Read
Key : Analysis.CPU.mSec
Value: 109
Key : Analysis.Elapsed.mSec
Value: 27887
Key : Analysis.IO.Other.Mb
Value: 6
Key : Analysis.IO.Read.Mb
Value: 0
Key : Analysis.IO.Write.Mb
Value: 43
Key : Analysis.Init.CPU.mSec
Value: 31
Key : Analysis.Init.Elapsed.mSec
Value: 85850
Key : Analysis.Memory.CommitPeak.Mb
Value: 229
Key : Analysis.Version.DbgEng
Value: 10.0.27704.1001
Key : Analysis.Version.Description
Value: 10.2408.27.01 amd64fre
Key : Analysis.Version.Ext
Value: 1.2408.27.1
Key : Failure.Bucket
Value: INVALID_POINTER_READ_c0000005_fifa16.exe!Unknown
Key : Failure.Hash
Value: {728e949c-8619-c325-60a3-a779b20cbbfb}
Key : Timeline.OS.Boot.DeltaSec
Value: 716391
Key : Timeline.Process.Start.DeltaSec
Value: 1522
Key : WER.OS.Branch
Value: ni_release
Key : WER.OS.Version
Value: 10.0.22621.1
Key : WER.Process.Version
Value: 1.0.0.0
FILE_IN_CAB: crash.dmp
CONTEXT: (.ecxr)
rax=eabd5b73f397c171 rbx=0000000000000004 rcx=000000002c560000
rdx=000000007ff062d8 rsi=00000001434ace80 rdi=00000001434e4c08
rip=0000000143cfb844 rsp=00000000da9ee820 rbp=000000007ff062d8
r8=00000000da9ee888 r9=0000000000000000 r10=0000000000000000
r11=0000000000000246 r12=00000000006070b0 r13=0000000000000000
r14=0000000000000001 r15=00000000006092a0
iopl=0 nv up ei ng nz ac pe cy
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010293
fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4:
00000001`43cfb844 ff5040 call qword ptr [rax+40h] ds:eabd5b73`f397c1b1=????????????????
Resetting default scope
EXCEPTION_RECORD: (.exr -1)
ExceptionAddress: 0000000143cfb844 (fifa16_exe!AptAnimationTarget::GetTopMostSprite+0x00000000000b58e4)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: ffffffffffffffff
Attempt to read from address ffffffffffffffff
PROCESS_NAME: fifa16.exe
READ_ADDRESS: ffffffffffffffff
ERROR_CODE: (NTSTATUS) 0xc0000005 - La instrucci n en 0x%p hace referencia a la memoria en 0x%p. La memoria no se pudo %s.
EXCEPTION_CODE_STR: c0000005
EXCEPTION_PARAMETER1: 0000000000000000
EXCEPTION_PARAMETER2: ffffffffffffffff
STACK_TEXT:
00000000`da9ee820 00000001`43d5e93c : 00000001`434ea788 00000000`7ff062d8 00000000`da9eece0 00000000`006070b0 : fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4
00000000`da9ee890 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : fifa16_exe!AptAnimationTarget::SetQueuedInputsSize+0x16d3c
STACK_COMMAND: ~0s; .ecxr ; kb
SYMBOL_NAME: fifa16_exe+b58e4
MODULE_NAME: fifa16_exe
IMAGE_NAME: fifa16.exe
FAILURE_BUCKET_ID: INVALID_POINTER_READ_c0000005_fifa16.exe!Unknown
OS_VERSION: 10.0.22621.1
BUILDLAB_STR: ni_release
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
IMAGE_VERSION: 1.0.0.0
FAILURE_ID_HASH: {728e949c-8619-c325-60a3-a779b20cbbfb}
Followup: MachineOwner
---------
I was interested into knowing what might be causing this crash for two reasons. The first one to solve it, but the second one, to understand why is happening, since this could get us a bit closer to find something anew in the FIFA16 internal functioning, even if sadly, at least for the moment, we can't change more due to the lack of access to the code.
So, having all this info, guys, what do you think it might be? My bets are that there's two parts of the problem. The crash is caused by something related to some animation of the players when they recieve a card, and that would be causing the crash, like it seems to evidence the line "fifa16_exe!AptAnimationTarget::GetTopMostSprite+0xb58e4". I bet that the game is trying to access to some memory address where it is supposed to be stacked some kind of animation, but either the address is empty or somehow it doesn't have access, for some reason. Maybe the lane in cl.ini the line "FORCE_OVER_REACT_TO_CARD = 1" has something to do, and the overreaction in the cinematic doesn't play and gives an exception. Or maybe this only happens in certain targets only.
The other part of the bug has to do with fouls with minimal contact, and I guess that could be because of the lines "
AI_RANDOM_FOULTYPE=1
//AI_FORCE_FOULTYPE=2"
or even
FOUL = 0.9
RULES_FOUL = 1.0
This is only theories, though, and I'd be glad to hear the opinion of other more experts FIFA16 modders. What do you think guys that might be the reason this is happening?
cl.ini: https://mega.nz/file/OxBmCZCJ#dfbtC36u7-elrqGxn1fLClplX3hUT7mEpQig2k35qco
Last edited: