"save_gta_cache" .dat files crash when including MLOs data

  1. Client (production/canary) and FXServer version
  • Any (B2612) | Any
  1. What you expected to happen
  • Game should load fine
  1. What actually happens
  • Game crashes after loading .ybn cache
  1. Category of bug (eg. client, server, weapons, peds, native)
  • Client
  1. Reproducible steps, preferably with example script(s)
  • Repro steps:
    – Start the repro resource, and enter ingame.
    – Crash! yey
  • Repro resource: CacheRepro.rar (6.3 MB)
    (the repro is already including a cache .dat file and a MLO)

.dat files without MLOs don’t cause crashes!

Maybe that’s something related to newer builds? I’m using B2612.

Crash hash (B2612): salami-mockingbird-magnesium
Crash dump: CfxCrashDump_2022_10_30_21_25_15.zip (1.5 MB)
image

This does not seem to reproduce (anymore) with just the resource you uploaded on b2612/b2699 (on a clean server, with no client-side mods).

Does this require some additional content to fail? :frowning:

Strange…
I will re-test and see if something changed, or if this really requires additional content to fail.

Right, i forgot i was always spawning near the MLO. That’s why i got the crash right after loading the map.

Here’s a coord nearby the MLO included in the repro resource: -318.132 -1532.252 27.575
(You can tp even after being already ingame, the same crash reported will occur)

Right, I can indeed confirm this happens, though not on build 1604, indeed.

This makes me wonder - if a cache file is created on a lower build containing CInteriorProxy entries, it could be the case it contains an interior proxy index which possibly conflicts with a manually-set proxy index in a R* DLC in a higher build… which could have a few different approaches in fixing this. that’s not the case, interior proxies get allocated the usual way, so it’s rather the case perhaps the interior proxy fails to be created but since the mapdata file is marked as cached it’s not running the load-time creation either. Probably a plain cross-build bug, then.

Yep:

The pattern for ‘save’ and ‘load’ is the exact same for b2545+, pointing to the save function, not the load function.

Fixed in fix(streaming/five): CInteriorProxy cache pattern for b2545+ · citizenfx/[email protected] · GitHub.

1 Like

Seems like there’s more problems regarding .dat files crashes, but the repro i provided before are actually fine now.
I’m currently investigating what is going on when trying to use “save_gta_cache” .dat files in a resource which i have various MLOs inside.

After some long hours i finally could narrow down the problem into 2 specific MLOs.
Trying to reproduce the problem with only one of these MLOs don’t cause the infinite loading issue.
I don’t actually know what exacly is wrong with these two (i tried some changes, but had no luck :frowning:).
For some reason when using generated GTA cache with them, the game get stuck at infinite loading.

New repro resource (includes two MLOs and an already generated GTA cache file):
CacheRepro2.rar (24.9 MB)

Where exacly the game gets stuck (right after loading screen, before starting loading ybns & scripts):

[ 83625] [b2612_GTAProce] MainThrd/ loading CFX_PSEUDO_ENTRY RELOAD_MAP_STORE.
[ 83625] [b2612_GTAProce] MainThrd/ done loading RELOAD_MAP_STORE in data file mounter class CfxPseudoMounter.
[ 83625] [b2612_GTAProce] MainThrd/ loading CFX_PSEUDO_CACHE CacheRepro.

During some attempts, i got something quite different, but was before completing the new repro resource:

[ 72172] [b2612_GTAProce] MainThrd/ loading CFX_PSEUDO_ENTRY RELOAD_MAP_STORE.
[ 72172] [b2612_GTAProce] MainThrd/ done loading RELOAD_MAP_STORE in data file mounter class CfxPseudoMounter.
[ 72172] [b2612_GTAProce] MainThrd/ loading CFX_PSEUDO_CACHE CacheRepro.
[ 72172] [b2612_GTAProce] MainThrd/ Error: An exception occurred (c0000005 at 0x7ff7257e67d3) during loading of CacheRepro in data file mounter class CfxCacheMounter. The game will be terminated.
[ 78907] [b2612_DumpServ] 9860/ Process crash captured. Crash dialog content:
[ 78907] [b2612_DumpServ] 9860/ An exception occurred (c0000005 at 0x7ff7257e67d3) during loading of CacheRepro in data file mounter class CfxCacheMounter. The game will be terminated.
[ 78907] [b2612_DumpServ] 9860/

I’m here to confirm the CacheRepro2 is reproducing the new problem in the B1604 too. So it’s not exclusive to newer builds.

And i had to re-upload the CacheRepro2.rar file due to a typo not letting the problem reported to happen.