Some of us have been chasing the cause of this bug for months. Please could you share a console log?
You can find them here but make sure it’s from the time of the crash:
%AppData%\Fatshark\Darktide\console_logs
<</Video Memory Status>>
<>
CrashMonitor
navigation
cjson
rule database
wwise_plugin
<>
<>
Unloading resource package: #ID [63bb2c7a]
resource #ID [63bb2c7a7376e6d0]
type #ID [a8193123526fad64]
<</Error Context>>
<>scripts/foundation/managers/package/package_manager.lua:502: Trying to unload resource #ID[63bb2c7a7376e6d0].#ID[a8193123526fad64] that’s used elsewhere by the engine, refcount: 6<</Script Error>>
<> [1] =[C]: in function has_unloade@scripts
[2] @scripts /foundation/managers/package/package_manager.lua:502: in function updat@scripts
[3] @scripts /game_states/state_game.lua:511: in function updat@scripts
[4] @scripts /foundation/utilities/game_state_machine.lua:119: in function updat@scripts
[5] @scripts /main.lua:114: in function updat@scripts
[6] @scripts /main.lua:176:in function <scripts/main.lua:175>
<</Lua Stack>>
<> [2] self = table: 000000000020B3D8; dt = 0.014768299646675587; t = 6885.4298262142565; async_packages = table: 000000000020B4A0; async_processing_order = table: 000000000020B4E8; async_unload_packages = table: 000000000020B780; async_unload_processing_order = table: 000000000020B628; index = 31; package_name = “content/fx/particles/weapons/power_maul/power_maul_ogryn_cooldown_ready_01”; unload_info = table: 0000000016C4AF80; resource_handle = [ResourcePackage]; reference_name = “PackageSynchronizer”
[3] self = table: 00000000000E2A28; dt = 0.014768299646675587; network_is_active = true; t = 6885.4298262142565
[4] self = table: 000000000020CD48; dt = 0.014768299646675587; t = nil
[5] self = table: 0000000000090A00; dt = 0.014768299646675587
[6] dt = 0.014768299646675587
<</Lua Locals>>
<> [2] _async_processing_order = table: 000000000020B4E8; _async_packages = table: 000000000020B4A0; _packages = table: 000000000020B420; _current_time = 6885.4298262142565; _package_to_load_call_item = table: 000000000020C558; _load_call_data = table: 000000000020B670; _current_item = 398065; _shutdown_has_started = false; _async_unload_processing_order = table: 000000000020B628; _async_unload_packages = table: 000000000020B780; _unload_queue = table: 000000000020B738; _queued_unload_packages = table: 000000000020B6F0; _queued_callback_items = table: 000000000020B530; _queue_order = table: 0000000018BC8BE8; _queued_async_packages = table: 000000000020B598;
[3] _event_delegate = table: 00000000000E8C28; _approve_channel_delegate = table: 00000000000FFF90; _sm = table: 000000000026A810; _vo_sources_cache = table: 00000000001005E0;
[4] _name = “Main”; _state = table: 00000000000E2A28; _state_change_callbacks = table: 000000000020CDF8; _log_breadcrumbs = true;
[5] _sm = table: 000000000020CD48; _package_manager = table: 000000000020B3D8;
<</Lua Self>>
<> [2] temp_remove_list = table: 00000000000BE680; PackageManager = table: 00000000000BDD10; temp_callback_items = table: 00000000000BE638
[3] Promise = table: 0000000000204158; StateGameTestify = false
<</Lua Upvalues>>
[Log end]
1 Like
dopz
January 17, 2026, 6:35pm
5
Alert the presses! Tag all the Fatshark people! This is big news!
P. S. It’s the first log
@FatsharkJulia I know you’ve been asking for an unmodded log of this crash
1 Like
Observations:
Could increase the unload delay for particle dependencies from 3 secs to more or save that cleanup for mission end – would cost memory during the mission and would still asplode if dependencies were sticking.
unload_time field on packages seems to be unused?
Could refactor PackageManager.update() to not error when the package has a positive reference_count and instead check back on them later? Not sure if that would require engine-side changes.
Edit: This is also interesting, from the logs:
07:56:18.881 warning: [Lua] WARNING [ComponentSystem] [flow_call_component] call failed. unit: [Unit ‘#ID [7d26ddc85406eb84]’], guid: d7c6e0db-4e08-469d-9566-fe06861d2238, function: create_particle
2 Likes