• Tracker

    Spaces
    Browse
    Statistics
  • /
  • /Stable Feedback
  • /DZG-1228
Back
1

[DayZDiag] NULL pointer in DayZPlayerInventory: PluginInventoryDebug is never registered on the Diag server

CrashError
1

State

Confirmed internally
Issue key
DZG-1228
Access
Public
Space
DayZ
Project
Stable Feedback
Creator
kramtsov
Created
Oct 16, 2026
Views
14
Platform
PC Steam
What happened?

Since 1.29 (still present in the current build, DAYZ_1_30 define), a DayZDiag_x64 server throws a VM exception every time a player's inventory input or juncture packet is handled:

Reason: NULL pointer to instance
Class:    'DayZPlayerInventory'
Function: 'OnHandleStoredInputUserData'
scripts/4_World/Systems/Inventory/DayZPlayerInventory.c:735

Reason: NULL pointer to instance
Class:    'DayZPlayerInventory'
Function: 'OnHandleStoredJunctureData'
scripts/4_World/Systems/Inventory/DayZPlayerInventory.c:670


Each exception comes right after this message in the script log:


Module PluginInventoryDebug is not Registred in PluginManager.c!
GetPlugin() scripts/4_World/Plugins/PluginManager.c : 340
OnHandleStoredInputUserData() scripts/4_World/Systems/Inventory/DayZPlayerInventory.c : 735


Cause

  • PluginManager.Init() registers PluginInventoryDebug inside #ifdef DIAG_DEVELOPER, but through RegisterPluginDebug(). That function calls RegisterPlugin(..., reg_on_release = false).

  • With reg_on_release == false, RegisterPlugin() returns early when g_Game.IsDebug() is false. This is the case on the Diag server, so the plugin is never registered.

  • DayZPlayerInventory.OnHandleStoredJunctureData() (line 670) and OnHandleStoredInputUserData() (line 735) call, also under #ifdef DIAG_DEVELOPER:

    PluginInventoryDebug.Cast(GetPlugin(PluginInventoryDebug)).IsOldProcessInputDataEnable()
    

    with no null check, so they dereference null.

The registration condition (IsDebug()) and the usage condition (DIAG_DEVELOPER) don't match.


Environment

  • DayZDiag_x64, dedicated server, vanilla Chernarus

  • Launch params: -server -config=... -mission=... -profiles=... -port=2302 -doLogs -adminLog -netLog -filePatching -noPause -battleye=0 -newErrorsAreWarnings=1

Reproduction steps
  1. Start a DayZDiag_x64 dedicated server.

  2. Connect and move any item, for example:

    • take an item into hands;

    • move an item from the inventory to hands or to the ground;

    • pick up an item from the ground into hands or the inventory.

  3. Each move throws the exceptions above (see crash_.log / script_.log).

Exact build version (optional)
1.30
Where did it happen?
Local / Offline
Is it modded?
No
Expected result
—
Public attachments2 files · visible to everyone

script_2026_10_16_12_52_33.log

13 KB

crash_2026_10_16_12_52_33.log

5.9 KB

Reactions

Activity

    about 2 hours ago
  • kramtsov
    created issueabout 2 hours ago
  • l909
    changed state to
    ASSIGNED
    about 2 hours ago
  • l909
    changed state to
    CONFIRMED INTERNALLY
    about 1 hour ago

You are not signed in. Please sign in to see more details and to reply.

State

Confirmed internally
Issue key
DZG-1228
Access
Public
Space
DayZ
Project
Stable Feedback
Creator
kramtsov
Created
Oct 16, 2026
Views
14