GAME VERSION
DayZ Server 1.30.164078.38 (Windows, dedicated server). Stable update released 2026-10-15.
Worked on 1.29 with the identical mod set and identical mod files.
SUMMARY
After updating to 1.30, the "Game" script module fails to compile when a class (here ParticleList)
is extended by many 'modded class' declarations across loaded mods. The declaration that lands in
chain position #13 fails with "Circle inheritance", even though its content is a plain, valid
modded class. Moving that declaration out of the chain does not fix anything: the error simply
moves to whichever modded class becomes #13 next.
ERROR
SCRIPT (E): @"rag/rag_vehicles/rag_vehicles_scripts/3_Game/rag_vehicles/rag_derby_car/rag_derby_carexhaustsmoke.c,1": Circle inheritance in class 'ParticleList@966#13'
SCRIPT (E): Can't compile "Game" script module!
THE FAILING CODE (complete modded class; nothing unusual)
modded class ParticleList
{
static const int rag_derby_car_IDLE_EXHAUST_SMOKE = RegisterParticle( "rag/rag_vehicles/rag_derby_car/data/" , "rag_derby_caridle_exhaust");
static const int rag_derby_car_EXHAUST_SMOKE = RegisterParticle( "rag/rag_vehicles/rag_derby_car/data/" , "rag_derby_car_exhaust");
};
EVIDENCE THAT IT IS THE CHAIN POSITION, NOT THE FILE
Using -filePatching, I replaced the failing declaration with an equivalent standalone class
(no 'modded class ParticleList'). Each time, the SAME error moved to the next declaration:
Run 1: #13 = RaG_Vehicle_Pack rag_derby_car/rag_derby_carexhaustsmoke.c -> Circle inheritance #13
Run 2: #13 = RaG_Vehicle_Pack rag_baja/rag_bajaexhaustsmoke.c -> Circle inheritance #13
Run 3: #13 = CannabisPlus CannabisPlus/scripts/3_game/particlelist.c -> Circle inheritance #13
Run 4: (after removing the above three) Game module compiles.
The PBOs are intact (internal SHA1 valid; identical to the Steam Workshop copies) and unchanged
since before the update. The .ptc particle files they reference exist.
RELATED (separate 1.30 issue seen at the same time)
CfgMods script module paths written with backslashes (e.g. "bl_stove\scripts\4_World") are now
silently skipped; forward slashes work. Reportedly tracked internally as DZEXP-134.