Table of Contents

ArmA 1 Common Errors

ArmA 1 Forum, ArmA 1 Home, ArmA 1 Config, ArmA 1 Tools, ArmA 1 File Formats, ArmA 1 Missions, ArmA 1 3D Modeling, ArmA 1 Terrain, ArmA 1 Texturing, ArmA 1 Scripting

ArmA 1 aka Armed Assault (ArmA)

ArmA 1 common errors in configs which you should and need to avoid at all cost.

Changing The Inheritance Of Existing Classes

For example on many many addons (even in bis material) you'll see this arma.rpt error:

Updating base class ->MGunCore, by ca\weapons\config.bin/cfgWeapons/MGun/

This happens because an addon changes the inheritance of a class that has already been defined. In the example above, bis themselves does this in the Addons\weapons.pbo addon, where the basic class MGun is altered from having no parent class to having the class MGunCore as the parent.

The warning is printed like this:

Updating base class OldClassNewClass, by \path\to\the\config.bin/CfgSomeClass/Classname

This means that Classname was changed from being based on the old base class (OldClass) to the new base class (NewClass).

(In the MGun arma.rpt error example, OldClass was empty, ie MGun did not have a parent class.)

How do you avoid this warning? It's simple: don't change the inheritance of existing classes

Altering Existing Classes

Sometimes you see addons that not only alters the inheritance of existing bis classes, but then proceeds to make changes to the classes themselves. An example of this can be seen below:

Bad config:

class MGunCore;
class MGun: MGunCore
{
	displayName = "MyCoolGun";
};

That's just bad form. What you should do instead is create your own machine gun class and let it inherit from the existing bis class.

Good config:

class MGun;
class TAG_MGun: MGun
{
	displayName = "MyCoolGun";
};

Other Common Errors

Updating base class ->Default, by ca\anims\characters\config.bin/CfgMovesBasic/DefaultDie/
Updating base class ->Default, by ca\anims\characters\config.bin/CfgMovesMaleSdr/States/Crew/
Updating base class CannonCore->Default, by <addon>\config.bin/CfgWeapons/Cannon30/
Updating base class CAWorld->TAG_baseWorld, by <addon>\config.bin/CfgWorlds/Intro/
Updating base class Civilian->SoldierWB, by <addon>\config.bin/CfgVehicles/SoldierWCaptive/
Updating base class controls->, by <addon>\config.bin/RscDisplayArcadeMap/controls/
Updating base class controls->, by <addon>\config.bin/RscDisplayLoading/Variants/Loading_East1/controls/
Updating base class DefaultClutter->, by <addon>\config.bin/CfgWorlds/Intro/clutter/GrassGeneral/
Updating base class Face1->, by <addon>\config.bin/CfgFaces/Man/Face10/
Updating base class HeavyReammoBox->Land_garaz_s_tankem, by <addon>\config.bin/CfgVehicles/HeavyReammoBoxEast/

All can be avoided by not touching these base classes, just inheriting from them into your own new classes.