Page MenuHomeFeedback Tracker

(EXP) AnimUpdate Crash on M3 Tripod turrets
Assigned, NormalPublic

Description

Game Version number: 1.2.0.52
Modded?: (Yes/No) Yes

Issue Description:
Latest experimental update may have anim update crash on spawning occupant gunner for M3 Tripod deriatives.

Every crash ends up with popup window:

15.06 2024 11:26:01
Unhandled exception

Program: D:\Steam\steamapps\common\Arma Reforger Experimental Tools\Workbench\ArmaReforgerWorkbenchSteamDiag.exe
Reason: Access violation. Illegal read by 0x7ff79688aab0 at 0x0

[nvtt::CubeSurface::toGamma]: ??? addr:0x7ff79688aab0
[nvtt::CubeSurface::toGamma]: ??? addr:0x7ff79676e3a0
[nvtt::CubeSurface::toGamma]: ??? addr:0x7ff79660e4c3
[nvtt::CubeSurface::toGamma]: ??? addr:0x7ff79660e1f0
[nvtt::CubeSurface::toGamma]: ??? addr:0x7ff79660ad92
[nvtt::CubeSurface::toGamma]: ??? addr:0x7ff796779338
[zlibVersion]: ??? addr:0x7ff797b58200
[zlibVersion]: ??? addr:0x7ff797b58dea
[zlibVersion]: ??? addr:0x7ff797b59bcb
[zlibVersion]: ??? addr:0x7ff7978d763c
[BaseThreadInitThunk]: ??? addr:0x7fffdc2c257d
[RtlUserThreadStart]: ??? addr:0x7fffdd8eaf28
[RtlUserThreadStart]: ??? addr:0x7fffdd8eaf28
Workbench mode

and

11:26:01.122 ANIMATION    : AnimUpdate
11:26:01.122  ENGINE    (F): Crashed

OR

11:20:22.502 WORLD        : UpdateEntities
11:20:22.502  WORLD        : FixedFrame
11:20:22.502   ANIMATION    : AnimUpdate
11:20:22.502    ENGINE    (F): Crashed

Details

Severity
Crash
Resolution
Open
Reproducibility
Always
Operating System
Windows 11 x64
Category
General
Steps To Reproduce

It could be tied to spawning gunner on static M2 or just M3 tripod (since it's a Turret too):

'Turret','Assets/Weapons/Tripods/M3/Tripod_M3.xob'
{73530808E4B455BA}Prefabs/Weapons/Tripods/Tripod_M3_M2HB.et
{542201C0B4E62FEC}Prefabs/Weapons/Tripods/Tripod_M3.et

private void GetAllChildren(IEntity parent, notnull inout array<IEntity> allChildren, bool recursive = true)
{
	if (!parent)
		return;
		
	IEntity child = parent.GetChildren();
	while (child)
	{
		allChildren.Insert(child);
		if (recursive)
		{
			GetAllChildren(child, allChildren, true);
		}
		child = child.GetSibling();
	}
}

private void GetCompositionEntities(IEntity composition)
{
	array<IEntity> children = {};
	GetAllChildren(composition, children);

	foreach (IEntity entity : children)
	{
		if (!entity)
			continue;
			
		if (entity.FindComponent(TurretControllerComponent))
		{
			m_aTurrets.Insert(entity);
		}
	}	
}


private void PopulateTurrets()
{
foreach (IEntity turret : m_aTurrets)
{
	SCR_BaseCompartmentManagerComponent compartmentManager = SCR_BaseCompartmentManagerComponent.Cast(turret.FindComponent(SCR_BaseCompartmentManagerComponent));
	if (!compartmentManager)
		continue;
			
	PrintFormat("Turret: %1, prefab: %2", turret,  turret.GetPrefabData().GetPrefabName());
	compartmentManager.SpawnDefaultOccupants({ECompartmentType.TURRET});
}
}
Additional Information

Crash logs

Event Timeline

Socrates renamed this task from AnimUpdate Crash to (EXP) AnimUpdate Crash.Sat, Jun 15, 10:36 AM
Socrates updated the task description. (Show Details)
Socrates changed Severity from None to Crash.
Socrates changed Reproducibility from N/A to Random.
Socrates edited Steps To Reproduce. (Show Details)
Socrates edited Additional Information. (Show Details)
Socrates changed Operating System from Windows 10 x64 to Windows 11 x64.
Socrates edited Steps To Reproduce. (Show Details)Sat, Jun 15, 3:02 PM
Socrates changed Reproducibility from Random to Always.Sat, Jun 15, 3:17 PM
Socrates edited Steps To Reproduce. (Show Details)
Socrates edited Steps To Reproduce. (Show Details)Sat, Jun 15, 3:21 PM
Socrates edited Steps To Reproduce. (Show Details)Sat, Jun 15, 3:27 PM
Socrates renamed this task from (EXP) AnimUpdate Crash to (EXP) AnimUpdate Crash on M3 Tripod turrets.
Socrates updated the task description. (Show Details)Sat, Jun 15, 3:31 PM
Geez changed the task status from New to Assigned.Mon, Jun 17, 12:17 PM