09: Mission Export Check list - 14aag/mission_template GitHub Wiki
Checklist
We'll be going over a few things you should be doing before exporting the mission if you use any of the systems we have.
3DEN name-all-script
The following script can be executed in 3DEN via the debug console, it will name all vehicles in 3DEN. Vehicles in Arma include turrets, vehicles and crates. This is especially useful when doing anything persistence based. Warning: Do -NOT- rename any of the vehicles and crates after having run the mission once or they will lose persistence. Reference Warnings and rules in the Persistence wiki for duplication behavior.
_crates = vehicles select {
(_x isKindOf "ThingX") &&
{!(_x isKindOf "Static")} &&
{alive _x} &&
{(getNumber (configFile >> "CfgVehicles" >> typeOf _x >> "maximumLoad")) > 0}
};
_unnamedCrates = _crates select {((_x get3DENAttribute "Name") isEqualTo [""])};
_crateNumbers = _crates apply { _x get3DENAttribute "Name" select 0 } select { _x find "pcrate_" == 0 } apply { parseNumber (_x select [7]) };
_crateStart = if !(_crateNumbers isEqualTo []) then { selectMax (_crateNumbers) + 1 } else { 1 };
_vehicles = vehicles select {
(_x isKindOf "AllVehicles")
};
_unnamedVehicles = _vehicles select {((_x get3DENAttribute "Name") isEqualTo [""])};
_vehicleNumbers = _vehicles apply { _x get3DENAttribute "Name" select 0 } select { _x find "pvehicle_" == 0 } apply { parseNumber (_x select [9]) };
_vehicleStart = if !(_vehicleNumbers isEqualTo []) then { selectMax (_vehicleNumbers) + 1 } else { 1 };
collect3DENHistory {
{
private _name = format ["pcrate_%1", _forEachIndex + _crateStart];
_x set3DENAttribute ["Name", _name];
} forEach _unnamedCrates;
{
private _name = format ["pvehicle_%1", _forEachIndex + _vehicleStart];
_x set3DENAttribute ["Name", _name];
} forEach _unnamedVehicles;
};
Turn on Delete when Empty
In the past we've run into a problem where you can no longer spawn any groups in Zeus. This is caused to the server holding on to empty groups int he background. To help prevent this make sure to enable Delete when Empty
in the group INIT in 3DEN on any unit groups you may have.