WIP Mod causing occasional CTD

Tech support for Battle Academy 2

Moderators: Slitherine Core, BA Moderators

Post Reply
Paul59
General - King Tiger
General - King Tiger
Posts: 3808
Joined: Tue Jul 21, 2015 11:26 pm

WIP Mod causing occasional CTD

Post by Paul59 »

I am currently working on a number of Random Skirmish Mods. They are all pretty similar in concept, but differ in details such as nations and units etc. They all run perfectly apart from one, which occasionally crashes to desktop when I hit the Create skirmish button. I would say it happens about 10% of the time. This is an example of the error log when it happens:

VER:10004
PLATFORM: WINDOWS
CPU String: AuthenticAMD
Stepping ID = 3
Model = 4
Family = 15
Extended family = 1
CLFLUSH cache line size = 64
APIC Physical ID = 1
CPU Brand String: AMD Phenom(tm) II X2 555 Processor
Cache Size = 512K
UNKNOWN TAGS IN: CONFIG/SYSTEM.TXT
Unknown Tag: MOVIEMODE
Unknown Tag: DYNAMICENV
Unknown Tag: LAYOUTKILLSENEMYX,
END: CONFIG/SYSTEM.TXT
Found DirectX Version Number: 4.09.00.0904
Creating Device.....
MonkeyInitStart
MIS: Found DD
MIS: IsHW
MIS: SetCoop
MIS: Setting Disp Mode
MIS: Done Init 3D Device
MIS: Tex Enum
MIS: SDRS
MIS: Init Decal Render
TS: Start
TS: IAPSent
TS: UILoaded
INITIAL LOAD 5140
TS: BattleObj
TS: Managers
TS: BFBB
TS: LT
TS: InitDLUI
TS: Messages
TS: Ended
WARNING: Failed to find campaign in MissionScreen: ||SKIRMISH
Playing as: 0
SIDE 0
Playing as: 0
Playing as: 0
Playing as: 0
Playing as: 0
######## EXCEPTION: 0xC0000005 at address: 0x00478819
SEARCHING: C:\Program Files (x86)\Steam\steamapps\common\Battle Academy 2;C:\Program Files (x86)\Steam\steamapps\common\Battle Academy 2;C:\Windows
C:\Program Files (x86)\Steam\steamapps\common\Battle Academy 2;C:\Program Files (x86)\Steam\steamapps\common\Battle Academy 2;C:\Windows
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
gapfnScSendMessage
GetThreadDesktop
GetClientRect
CallWindowProcA
Direct3DCreate9
gapfnScSendMessage
GetThreadDesktop
CharPrevW
DispatchMessageA
OverlayHookD3D3
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
0: SymGetSymFromAddr64(): GetLastError = 487
BaseThreadInitThunk
RtlInitializeExceptionChain
RtlInitializeExceptionChain

Any ideas what is causing this? I can send or post the mod if that helps.

cheers

Paul
Field of Glory II Scenario Designer - Age of Belisarius, Rise of Persia, Wolves at the Gate and Swifter than Eagles.

Field of Glory II Medieval Scenario Designer.

FOGII TT Mod Creator

Warhammer 40,000: Sanctus Reach Tournament Scenario Designer.
Paul59
General - King Tiger
General - King Tiger
Posts: 3808
Joined: Tue Jul 21, 2015 11:26 pm

Re: WIP Mod causing occasional CTD

Post by Paul59 »

Just to be clear, the mod with this problem is not the Enhanced Random Skirmish mod.
Field of Glory II Scenario Designer - Age of Belisarius, Rise of Persia, Wolves at the Gate and Swifter than Eagles.

Field of Glory II Medieval Scenario Designer.

FOGII TT Mod Creator

Warhammer 40,000: Sanctus Reach Tournament Scenario Designer.
pipfromslitherine
Site Admin
Site Admin
Posts: 9707
Joined: Wed Mar 23, 2005 10:35 pm

Re: WIP Mod causing occasional CTD

Post by pipfromslitherine »

If you get me the files I can try and see what is happening. Given the depth of the stack I would guess there is some recursion going on in the script perhaps?

Cheers

Pip
follow me on Twitter here
Post Reply

Return to “Tech Support”