Empty baseclass "Tank_F" >> "Sounds" >> "Engine"
Closed, ResolvedPublic

Description

Hello CUP team, please investigate your class tank_f inheritance.

Loading CUP Vehicles and its required dependencies removes parameters from class "tank_f" >> "sounds" >> "engine". Likely some class forward-reference without proper load-order does this by accident.

The .rpt is sadly a bit unhelpful:

Updating base class Sounds->, by CUP\TrackedVehicles\CUP_TrackedVehicles_T34\config.bin/CfgVehicles/Tank_F/Sounds/ (original CUP\TrackedVehicles\CUP_TrackedVehicles_T34\config.bin)

It is not specific to the T-34. That T-34 addon simply happens to be the first in the load-order that touches on Tank_F after some other addon accidentally changed its parent. I wasn't able to locate which addon within CUP does this.

The config path "CfgVehicles" >> "Tank_F" >> "Sounds" >> "Engine" is a completely empty class when starting Arma 3 like this:

"-mod=G:\Steam\steamapps\common\Arma 3\!Workshop\@CBA_A3;G:\Steam\steamapps\common\Arma 3\!Workshop\@CUP Weapons;G:\Steam\steamapps\common\Arma 3\!Workshop\@CUP Units;G:\Steam\steamapps\common\Arma 3\!Workshop\@CUP Vehicles"

Starting without any mods keeps that class's content intact. Starting with just @CBA_A3 also keeps that class in tact.

I guess that either the load-order causes an empty class to be created instead of just being referenced, or it could even be that it was referenced incorrectly as class engine{}; instead of class engine;

Details

Commits
Restricted Diffusion Commit
Affected classnames
Tank_F
Branch
Release/Stable
Reproducable without other mods?
Yes
Mondkalb created this task.Apr 28 2019, 9:05 PM
NeoArmageddon changed the task status from Needs Review to Acknowledged.Apr 28 2019, 9:07 PM
NeoArmageddon triaged this task as High priority.
NeoArmageddon added a subscriber: NeoArmageddon.

Baseclasses should not be changed by CUP (except in rare cases of Terrains Core). Most likely some legacy bug from other project or contributions that were merged into CUP.

This affects both subclasses of class sounds:

  • Engine
  • Movement

This suggests that the problem lies with class Sounds and how it is handled, not class engine or movement specifically.

NeoArmageddon closed this task as Resolved by committing Restricted Diffusion Commit.Apr 30 2019, 9:27 AM
NeoArmageddon added a commit: Restricted Diffusion Commit.