Jump to content

Repeatable crash in Transport.dll - AI::VehicleCommunicator::setReceiveCommNetFlags


Recommended Posts

Posted

Hi folks,

 

I've got a weird crash that I can totally repeat ; unfortunately it's in a heavily scripted mission.

 

The crash

 

This is my crash log (extract) ; I attached the whole dcs.log file.

 

2020-08-07 15:03:18.150 INFO    EDCORE: # -------------- 20200807-150318 --------------
2020-08-07 15:03:18.151 INFO    EDCORE: DCS/2.5.6.52437 (x86_64; Windows NT 10.0.18363)
2020-08-07 15:03:18.152 INFO    EDCORE: C:\jeux\DCS World OpenBeta\bin\Transport.dll
2020-08-07 15:03:18.153 INFO    EDCORE: # C0000005 ACCESS_VIOLATION at D585A5BC 00:00000000
2020-08-07 15:03:18.155 INFO    EDCORE: SymInit: Symbol-SearchPath: '.;C:\jeux\DCS World OpenBeta;C:\jeux\DCS World OpenBeta\bin;C:\WINDOWS;C:\WINDOWS\system32;SRV*C:\websymbols*http://msdl.microsoft.com/download/symbols;', symOptions: 530, UserName: 'dpier'
2020-08-07 15:03:18.156 INFO    EDCORE: OS-Version: 10.0.18363 () 0x300-0x1
2020-08-07 15:03:18.528 INFO    EDCORE: 0x000000000003A5BC (Transport): AI::VehicleCommunicator::setReceiveCommNetFlags + 0x1BC
2020-08-07 15:03:18.529 INFO    EDCORE: 0x00000000001178A2 (WorldGeneral): AI::ControllerMission::start + 0x32
2020-08-07 15:03:18.531 INFO    EDCORE: 0x0000000000116849 (WorldGeneral): AI::Controller::setTask + 0xA9
2020-08-07 15:03:18.531 INFO    EDCORE: 0x0000000000028C6C (Scripting): Scripting::regLuaController + 0x40C

 

What is weird is that this crash only occurs if I use the math.random() function in the previously executed call.

If I replace the math.random() calls by some arbitrary value, there is no crash.

It's probably due to some side effect that I can't think about, although I know that math.random() actually calls code in DCS core, instead of the standard C function, so maybe there's a weird bug in here ?

 

How to reproduce the crash

 

That's a bit tricky because one needs to act in the radio menu, in order to reproduce the crash.

Simply follow this sequence of actions and your DCS will crash, guaranteed !

 

  1. start the mission
  2. take a slot (I always occupy a "Game Master" slot)
  3. wait 10 seconds after mission start, then go to the radio menu and use the "F10 - Other" option
  4. select the "F1 - VEAF" option
  5. select the "F6 - COMBAT ZONES" option
  6. select the "F3 - Hostages at ..." option
  7. select the "F2 - Activate zone" option

 

If the game does not crash, try again ; usually it crashes at first try.

You can try again by first resetting the situation :

 

  1. go to the radio menu and use the "F10 - Other" option
  2. select the "F1 - VEAF" option
  3. select the "F6 - COMBAT ZONES" option
  4. select the "F3 - Hostages at ..." option
  5. select the "F2 - Desactivate zone" option

 

The mission is attached to this post.

 

Changing the code

 

If you edit the I10n\veaf.lua file in the mission and change line #1329 with

return veaf.getRandomizableNumeric_norandom(val)

instead of

return veaf.getRandomizableNumeric_random(val)

, the game will not crash.

That's the weirdest part.

dcs.log-20200730-072010.zip

VEAF_OpenTraining_Caucasus_20200807.miz

Zip - VEAF :pilotfly:

 

If you want to learn, talk and fly with french-speaking friends, the Virtual European Air Force is here for you ! Meet us on our Discord and our forum

If you're a mission creator, you may want to check the VEAF Mission Creation Tools (and its GitHub repository) a set of open-source scripts and tools that make creating a dynamic mission a breeze !

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...