• 0
stefan.kueneth

Crafting not working (campfire etc) since cdah mod

Question

Hello everybody,

server crafting f.e. campfire works well if I comment out everything cdah related (config.cpp). If cdah is active I can´t craft nothing. Campfire etc... nothing.

I checked to config serval times and I compared with some files I found on github, everything correct. Its a Linux Server. CDAH_Crafting folder is on the right place in mission file.

Anybody andy idea ?

Thx Steven

 

config.cpp

Spoiler

/**
 * config
 * normal
 * Exile Mod
 * exile.majormittens.co.uk
 * © 2015 Exile Mod Team
 *
 * This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
 * To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
 */
 
//CDAH RearmStuff
#include "CDAH_crafting\logic\CDAH_CfgExileDelayedActions.hpp"


class CfgClans
{
    /*
        Defines the amount of pop tabs needed to register a new clan

        Default: 20,000
    */
    registrationFee = 20000;

    /*
        A list of all characters allowed in a clan *name*

        NOTE:
    */
    clanNameAlphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ._-!:\\/";

    /*

        Maximum markers per clan

    */
    maximumIcons = 20;

    /*
        Maximum number of characters on a Marker in a presistent system

        Note: MAX 255!
        
    */
    maximumIconText = 50;

    /*

        Maximum poly markers per clan

    */
    maximumPolys = 10;


    /*

        Maximum points in poly
    */
    maximumPolyNode = 10;
};
class Exile_AbstractCraftingRecipe
{
    name = "";
    pictureItem = "";
    returnedItems[] = {};
    components[] = {}; // Required components
    tools[] = {}; // Required tools (matches, gas cooker etc.)
    requiredInteractionModelGroup = ""; // See CfgInteractionModels
    requiresOcean = 0; // isSurfaceWater test
    requiresFire = 0; // inflamed object nearby
    requiresConcreteMixer = 0; // Check if concrete mixer is nearby
};

// CDAH CRAFTING Vehicle
#include "CDAH_crafting\vehicleRecipes\CDAH_Vehicle_recipies_config.hpp"


class CfgCraftingRecipes
{

#include "EBM\recipes.hpp"


// CDAH CRAFTING Device
#include "CDAH_crafting\deviceRecipes\CDAH_Device_recipies.hpp"


//CDAH CRAFTING Expandedcrafting
#include "CDAH_crafting\expandedCraftingRecipes\CDAH_ExpandedCrafting_config.hpp"


// Extended Items Exile
#include "CfgExtended_Items_Exile.h"


//class BreachingChargeBigMomma: Exile_AbstractCraftingRecipe
//{
//    name = "Breaching Charge (Big Momma)";
//    pictureItem = "Exile_Item_BreachingCharge_BigMomma";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_BreachingCharge_BigMomma"}
//    };
//    tools[] =
//    {
//        "Exile_Item_Foolbox"
//    };
//    components[] =
//    {
//        {3, "Exile_Item_BreachingCharge_Metal"},
//        {1, "Exile_Item_MobilePhone"},
//        {1, "Exile_Item_DuctTape"},
//        {1, "Exile_Item_ZipTie"}
//    };
//};

// SK Exile ORG wegen Extended Items
//class BreachingChargeMetal: Exile_AbstractCraftingRecipe
//{
//    name = "Breaching Charge (Metal)";
//    pictureItem = "Exile_Item_BreachingCharge_Metal";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_BreachingCharge_Metal"}
//    };
//    tools[] =
//    {
//        "Exile_Item_Foolbox"
//    };
//    components[] =
//    {
//        {1, "Exile_Item_DuctTape"},
//        {1, "SatchelCharge_Remote_Mag"}
//    };
//};

// SK Exile ORG wegen Extended Items
//class BreachingChargeWood: Exile_AbstractCraftingRecipe
//{
//    name = "Breaching Charge (Wood)";
//    pictureItem = "Exile_Item_BreachingCharge_Wood";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_BreachingCharge_Wood"}
//    };
//    tools[] =
//    {
//        "Exile_Item_Foolbox"
//    };
//    components[] =
//    {
//        {1, "Exile_Item_DuctTape"},
//        {1, "DemoCharge_Remote_Mag"}
//    };
//};

class CookBBQSandwich: Exile_AbstractCraftingRecipe
{
    name = "Cook BBQ Sandwich";
    pictureItem = "Exile_Item_BBQSandwich_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_BBQSandwich_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_BBQSandwich"}
    };
};

class CookCatFood: Exile_AbstractCraftingRecipe
{
    name = "Cook Cat Food";
    pictureItem = "Exile_Item_CatFood_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_CatFood_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_CatFood"}
    };
};

class CookChristmasTinner: Exile_AbstractCraftingRecipe
{
    name = "Cook Christmas Tinner";
    pictureItem = "Exile_Item_ChristmasTinner_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_ChristmasTinner_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_ChristmasTinner"}
    };
};
class CookCoffee: Exile_AbstractCraftingRecipe
{
    name = "Brew Coffee";
    pictureItem = "Exile_Item_PlasticBottleCoffee";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleCoffee"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleFreshWater"},
        {1, "Exile_Item_InstantCoffee"}
    };
};
class CookDogFood: Exile_AbstractCraftingRecipe
{
    name = "Cook Dog Food";
    pictureItem = "Exile_Item_DogFood_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_DogFood_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_DogFood"}
    };
};

class CookGloriousKnakworst: Exile_AbstractCraftingRecipe
{
    name = "Cook Glorious Knakworst";
    pictureItem = "Exile_Item_GloriousKnakworst_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_GloriousKnakworst_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_GloriousKnakworst"}
    };
};

class CookMacasCheese: Exile_AbstractCraftingRecipe
{
    name = "Cook Macas Cheese";
    pictureItem = "Exile_Item_MacasCheese_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_MacasCheese_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_MacasCheese"}
    };
};

class CookPlasticBottleDirtyWater: Exile_AbstractCraftingRecipe
{
    name = "Cook Dirty Water";
    pictureItem = "Exile_Item_PlasticBottleFreshWater";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleFreshWater"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleDirtyWater"}
    };
};
class CookPlasticBottleSaltWater: Exile_AbstractCraftingRecipe
{
    name = "Cook Salt Water";
    pictureItem = "Exile_Item_PlasticBottleFreshWater";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleFreshWater"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleSaltWater"}
    };
};

class CookSausageGravy: Exile_AbstractCraftingRecipe
{
    name = "Cook Sausage Gravy";
    pictureItem = "Exile_Item_SausageGravy_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_SausageGravy_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_SausageGravy"}
    };
};

class CookSurstromming: Exile_AbstractCraftingRecipe
{
    name = "Cook Surströmming";
    pictureItem = "Exile_Item_Surstromming_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_Surstromming_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_Surstromming"}
    };
};

class CraftBandage: Exile_AbstractCraftingRecipe
{
    name = "Craft Bandage";
    pictureItem = "Exile_Item_Bandage";
    returnedItems[] =
    {
        {1, "Exile_Item_Bandage"}
    };
    components[] =
    {
        {4, "Exile_Item_ToiletPaper"}
    };
};

class CraftConcreteDoorway: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Doorway";
    pictureItem = "Exile_Item_ConcreteDoorwayKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteDoorwayKit"},
        {3, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {3, "Exile_Item_Cement"},
        {3, "Exile_Item_Sand"},
        {3, "Exile_Item_MetalPole"},
        {3, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteDrawbridge: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Drawbridge";
    pictureItem = "Exile_Item_ConcreteDrawBridgeKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteDrawBridgeKit"},
        {4, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {4, "Exile_Item_Cement"},
        {4, "Exile_Item_Sand"},
        {4, "Exile_Item_MetalPole"},
        {3, "Exile_Item_JunkMetal"},
        {4, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteFloor: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Floor";
    pictureItem = "Exile_Item_ConcreteFloorKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteFloorKit"},
        {2, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {2, "Exile_Item_Cement"},
        {2, "Exile_Item_Sand"},
        {2, "Exile_Item_MetalPole"},
        {2, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteFloorPort: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Floor Port";
    pictureItem = "Exile_Item_ConcreteFloorPortKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteFloorPortKit"},
        {3, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {3, "Exile_Item_Cement"},
        {3, "Exile_Item_Sand"},
        {3, "Exile_Item_MetalPole"},
        {3, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteFloorPortSmall: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Floor Port (Small)";
    pictureItem = "Exile_Item_ConcreteFloorPortSmallKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteFloorPortSmallKit"},
        {3, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {3, "Exile_Item_Cement"},
        {2, "Exile_Item_Sand"},
        {2, "Exile_Item_MetalPole"},
        {3, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteGate: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Gate";
    pictureItem = "Exile_Item_ConcreteGateKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteGateKit"},
        {4, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {4, "Exile_Item_Cement"},
        {4, "Exile_Item_Sand"},
        {4, "Exile_Item_MetalPole"},
        {4, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteLadderHatch: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Ladder Hatch";
    pictureItem = "Exile_Item_ConcreteLadderHatchKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteLadderHatchKit"},
        {3, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {3, "Exile_Item_Cement"},
        {2, "Exile_Item_Sand"},
        {2, "Exile_Item_MetalPole"},
        {3, "Exile_Item_JunkMetal"},
        {3, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcretStairs: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Stairs";
    pictureItem = "Exile_Item_ConcreteStairsKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteStairsKit"},
        {1, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {1, "Exile_Item_Cement"},
        {1, "Exile_Item_Sand"},
        {1, "Exile_Item_MetalPole"},
        {1, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcretSupport: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Support";
    pictureItem = "Exile_Item_ConcreteSupportKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteSupportKit"},
        {1, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {1, "Exile_Item_Cement"},
        {1, "Exile_Item_Sand"},
        {1, "Exile_Item_MetalPole"},
        {1, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftConcreteWall: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Wall";
    pictureItem = "Exile_Item_ConcreteWallKit";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteWallKit"},
        {2, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {2, "Exile_Item_Cement"},
        {2, "Exile_Item_Sand"},
        {2, "Exile_Item_MetalPole"},
        {2, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class CraftFirePlace: Exile_AbstractCraftingRecipe
{
    name = "Craft Fire Place";
    pictureItem = "Exile_Item_CampFireKit";
    returnedItems[] =
    {
        {1, "Exile_Item_CampFireKit"}
    };
    components[] =
    {
        {2, "Exile_Item_WoodLog"}
    };
};

//class CraftFloodLight: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Flood Light";
//    pictureItem = "Exile_Item_FloodLightKit";
//    requiresFire = 1;
//    returnedItems[] =
//    {
//        {1, "Exile_Item_FloodLightKit"}
//    };
//    components[] =
//    {
//        {1, "Exile_Item_MetalPole"},
//        {1, "Exile_Item_LightBulb"},
//        {1, "Exile_Item_ExtensionCord"}
//    };
//};

//class CraftFortificationUpgrade: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Fortification Upgrade";
//    pictureItem = "Exile_Item_MetalBoard"; //<< CHANGE IT
//    requiresFire = 1;
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_FortificationUpgrade"}
//    };
//    components[] =
//    {
//        {2, "Exile_Item_MetalPole"},
//        {4, "Exile_Item_MetalBoard"}
//    };
//    tools[] = {"Exile_Item_Grinder"};
//};

class CraftHBarrier5Kit: Exile_AbstractCraftingRecipe
{
    name = "Craft H-barrier (5 Blocks)";
    pictureItem = "Exile_Item_HBarrier5Kit";
    requiredInteractionModelGroup = "WorkBench";
    tools[] =
    {
        "Exile_Item_Pliers"
    };
    returnedItems[] =
    {
        {1, "Exile_Item_HBarrier5Kit"}
    };
    components[] =
    {
        {3, "Exile_Item_SandBagsKit_Long"},
        {2, "Exile_Item_MetalWire"}
    };
};

//class CraftMetalBoard: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Metal Board";
//    pictureItem = "Exile_Item_MetalBoard";
//    requiresFire = 1;
//    returnedItems[] =
//    {
//        {1, "Exile_Item_MetalBoard"}
//    };
//    components[] =
//    {
//        {2, "Exile_Item_JunkMetal"}
//    };
//    tools[] = {"Exile_Item_Grinder"};
//};

//class CraftMetalHedgehog: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Metal Hedgehog";
//    pictureItem = "Exile_Item_MetalHedgehogKit";
//    requiresFire = 1;
//    returnedItems[] =
//    {
//        {1, "Exile_Item_MetalHedgehogKit"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_MetalPole"}
//    };
//    tools[] = {"Exile_Item_Grinder"};
//};

class CraftMetalLadder: Exile_AbstractCraftingRecipe
{
    name = "Craft Metal Ladder";
    pictureItem = "Exile_Item_MetalLadderKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_MetalLadderKit"}
    };
    components[] =
    {
        {6, "Exile_Item_JunkMetal"}
    };
};
class CraftMetalLadderDouble: Exile_AbstractCraftingRecipe
{
    name = "Craft Metal Ladder (Double Tall)";
    pictureItem = "Exile_Item_MetalLadderDoubleKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_MetalLadderDoubleKit"}
    };
    components[] =
    {
        {2, "Exile_Item_MetalLadderKit"}
    };
};

//class CraftMetalPole: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Metal Pole";
//    pictureItem = "Exile_Item_MetalPole";
//    requiresFire = 1;
//    returnedItems[] =
//    {
//        {1, "Exile_Item_MetalPole"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_JunkMetal"}
//    };
//    tools[] = {"Exile_Item_Grinder"};
//};

class CraftOldChest: Exile_AbstractCraftingRecipe
{
    name = "Craft Old Chest";
    pictureItem = "Exile_Item_OldChestKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_OldChestKit"}
    };
    components[] =
    {
        {3, "Exile_Item_WoodPlank"},
        {3, "Exile_Item_JunkMetal"}
    };
};

//class CraftPortableGenerator: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Portable Generator";
//    pictureItem = "Exile_Item_PortableGeneratorKit";
//    requiresFire = 1;
//    returnedItems[] =
//    {
//        {1, "Exile_Item_PortableGeneratorKit"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_MetalBoard"},
//        {1, "Exile_Item_FuelCanisterFull"},
//        {1, "Exile_Item_ExtensionCord"}
//    };
//};

/*class CraftRazorWireKit: Exile_AbstractCraftingRecipe
{
    name = "Craft Razor Wire Kit Kit";
    pictureItem = "Exile_Item_RazorWireKit_Long";
    requiredInteractionModelGroup = "WorkBench";
    tools[] =
    {
        "Exile_Item_Grinder",
        "Exile_Item_Pliers",
        "Exile_Item_Screwdriver"
    };
    returnedItems[] =
    {
        {1, "Exile_Item_RazorWireKit_Long"}
    };
    components[] =
    {
        {2, "Exile_Item_MetalPole"},
        {4, "Exile_Item_MetalWire"},
        {1, "Exile_Item_MetalScrews"}
    };
};*/
class CraftRepairKitConcrete: Exile_AbstractCraftingRecipe
{
    name = "Craft Concrete Repair Kit";
    pictureItem = "Exile_Item_Cement";
    requiresConcreteMixer = true;
    returnedItems[] =
    {
        {1, "Exile_Item_RepairKitConcrete"},
        {1, "Exile_Item_WaterCanisterEmpty"},
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {4, "Exile_Item_Cement"},
        {2, "Exile_Item_Sand"},
        {1, "Exile_Item_WaterCanisterDirtyWater"},
        {1, "Exile_Item_FuelCanisterFull"}
    };
};

 


//class CraftRepairKitMetal: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Metal Repair Kit";
//    pictureItem = "Exile_Item_RepairKitMetal";
//    requiresFire = 0;
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_RepairKitMetal"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_MetalBoard"}
//    };
//    tools[] =
//    {
//        "Exile_Item_Foolbox",
//        "Exile_Item_Grinder"
//    };
//};


//class CraftRepairKitWood: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Repair Kit";
//    pictureItem = "Exile_Item_RepairKitWood";
//    requiresFire = 0;
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_RepairKitWood"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_WoodPlank"}
//    };
//    tools[] =
//    {
//        "Exile_Item_Foolbox"
//    };
//};


class CraftSandBagsKitCorner: Exile_AbstractCraftingRecipe
{
    name = "Craft Sandbags Kit (Corner)";
    pictureItem = "Exile_Item_SandBagsKit_Corner";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_SandBagsKit_Corner"}
    };
    components[] =
    {
        {3, "Exile_Item_Sand"}
    };
};
class CraftSandBagsKitLong: Exile_AbstractCraftingRecipe
{
    name = "Craft Sand Bags Kit (Long)";
    pictureItem = "Exile_Item_SandBagsKit_Long";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_SandBagsKit_Long"}
    };
    components[] =
    {
        {6, "Exile_Item_Sand"}
    };
};

//class CraftStorageCrate: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Storage Crate";
//    pictureItem = "Exile_Item_StorageCrateKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_StorageCrateKit"}
//    };
//    components[] =
//    {
//        {5, "Exile_Item_WoodPlank"}
//    };
//};

class CraftWaterBarrel: Exile_AbstractCraftingRecipe
{
    name = "Craft Water Barrel";
    pictureItem = "Exile_Item_WaterBarrelKit";
    requiredInteractionModelGroup = "WorkBench";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_WaterBarrelKit"}
    };
    components[] =
    {
        {20, "Exile_Item_PlasticBottleEmpty"}
    };
};
class CraftWireFenceKit: Exile_AbstractCraftingRecipe
{
    name = "Craft Wire Fence Kit";
    pictureItem = "Exile_Item_WireFenceKit";
    requiredInteractionModelGroup = "WorkBench";
    tools[] =
    {
        "Exile_Item_Grinder",
        "Exile_Item_Pliers",
        "Exile_Item_Screwdriver"
    };
    returnedItems[] =
    {
        {1, "Exile_Item_WireFenceKit"}
    };
    components[] =
    {
        {4, "Exile_Item_MetalPole"},
        {6, "Exile_Item_MetalWire"},
        {1, "Exile_Item_MetalScrews"}
    };
};

//class CraftWoodDoorWay: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Doorway";
//    pictureItem = "Exile_Item_WoodDoorwayKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodDoorwayKit"}
//    };
//    components[] =
//    {
//        {6, "Exile_Item_WoodPlank"}
//    };
//};

class CraftWoodDrawBridge: Exile_AbstractCraftingRecipe
{
    name = "Craft Wood Draw Bridge";
    pictureItem = "Exile_Item_WoodDrawBridgeKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_WoodDrawBridgeKit"}
    };
    components[] =
    {
        {8, "Exile_Item_WoodPlank"},
        {2, "Exile_Item_JunkMetal"},
        {2, "Exile_Item_MetalScrews"}
    };
};

//class CraftWoodFloor: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Floor";
//    pictureItem = "Exile_Item_WoodFloorKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodFloorKit"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_WoodPlank"}
//    };
//};

//class CraftWoodFloorPort: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Floor Port";
//    pictureItem = "Exile_Item_WoodFloorPortKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodFloorPortKit"}
//    };
//    components[] =
//    {
//        {6, "Exile_Item_WoodPlank"}
//    };
//};

class CraftWoodFloorPortSmall: Exile_AbstractCraftingRecipe
{
    name = "Craft Wood Floor Port (Small)";
    pictureItem = "Exile_Item_WoodFloorPortSmallKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_WoodFloorPortSmallKit"}
    };
    components[] =
    {
        {6, "Exile_Item_WoodPlank"},
        {2, "Exile_Item_JunkMetal"},
        {2, "Exile_Item_MetalScrews"}
    };
};

//class CraftWoodGate: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Gate";
//    pictureItem = "Exile_Item_WoodGateKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodGateKit"}
//    };
//    components[] =
//    {
//        {8, "Exile_Item_WoodPlank"}
//    };
//};

class CraftWoodLadder: Exile_AbstractCraftingRecipe
{
    name = "Craft Wood Ladder";
    pictureItem = "Exile_Item_WoodLadderKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_WoodLadderKit"}
    };
    components[] =
    {
        {6, "Exile_Item_WoodPlank"},
        {2, "Exile_Item_MetalScrews"}
    };
};
class CraftWoodLadderHatch: Exile_AbstractCraftingRecipe
{
    name = "Craft Wood Ladder Hatch";
    pictureItem = "Exile_Item_WoodLadderHatchKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_WoodLadderHatchKit"}
    };
    components[] =
    {
        {6, "Exile_Item_WoodPlank"},
        {3, "Exile_Item_JunkMetal"}
    };
};

class CraftWoodPlank: Exile_AbstractCraftingRecipe
{
    name = "Craft Wood Plank";
    pictureItem = "Exile_Item_WoodPlank";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_WoodPlank"}
    };
    components[] =
    {
        {2, "Exile_Item_WoodLog"}
    };
    tools[] = {"Exile_Item_Handsaw"};
};

//class CraftWoodStairs: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Stairs";
//    pictureItem = "Exile_Item_WoodStairsKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodStairsKit"}
//    };
//    components[] =
//    {
//        {6, "Exile_Item_WoodPlank"}
//    };
//};
//class CraftWoodSupport: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Support";
//    pictureItem = "Exile_Item_WoodSupportKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodSupportKit"}
//    };
//    components[] =
//    {
//        {6, "Exile_Item_WoodPlank"}
//    };
//};
//class CraftWoodWall: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Wall";
//    pictureItem = "Exile_Item_WoodWallKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodWallKit"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_WoodPlank"}
//    };
//};
//class CraftWoodWallHalf: Exile_AbstractCraftingRecipe
//{
//    name = "Craft 1/2 Wood Wall";
//    pictureItem = "Exile_Item_WoodWallHalfKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodWallHalfKit"}
//    };
//    components[] =
//    {
//        {2, "Exile_Item_WoodPlank"}
//    };
//};
//class CraftWoodWindow: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Wood Window";
//    pictureItem = "Exile_Item_WoodWindowKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodWindowKit"}
//    };
//    components[] =
//    {
//        {6, "Exile_Item_WoodPlank"}
//    };
//};

//class CraftWorkBench: Exile_AbstractCraftingRecipe
//{
//    name = "Craft Work Bench";
//    pictureItem = "Exile_Item_WorkBenchKit";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WorkBenchKit"}
//    };
//    components[] =
//    {
//        {4, "Exile_Item_WoodLog"}
//    };
//};

class CookAlsatianSteak: Exile_AbstractCraftingRecipe
{
    name = "Cook Alsatian Steak";
    pictureItem = "Exile_Item_AlsatianSteak_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_AlsatianSteak_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_AlsatianSteak_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookCatSharkFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Cat Shark Filet";
    pictureItem = "Exile_Item_CatSharkFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_CatSharkFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_CatSharkFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookChickenFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Chicken Filet";
    pictureItem = "Exile_Item_ChickenFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_ChickenFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_ChickenFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookFinSteak: Exile_AbstractCraftingRecipe
{
    name = "Cook Fin Steak";
    pictureItem = "Exile_Item_FinSteak_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_FinSteak_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_FinSteak_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookGoatSteak: Exile_AbstractCraftingRecipe
{
    name = "Cook Goat Steak";
    pictureItem = "Exile_Item_GoatSteak_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_GoatSteak_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_GoatSteak_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookMackerelFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Mackerel Filet";
    pictureItem = "Exile_Item_MackerelFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_MackerelFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_MackerelFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookMulletFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Mullet Filet";
    pictureItem = "Exile_Item_MulletFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_MulletFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_MulletFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookOrnateFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Ornate Filet";
    pictureItem = "Exile_Item_OrnateFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_OrnateFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_OrnateFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookRabbitSteak: Exile_AbstractCraftingRecipe
{
    name = "Cook Rabbit Steak";
    pictureItem = "Exile_Item_RabbitSteak_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_RabbitSteak_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_RabbitSteak_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookRoosterFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Rooster Filet";
    pictureItem = "Exile_Item_RoosterFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_RoosterFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_RoosterFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookSalemaFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Salema Filet";
    pictureItem = "Exile_Item_SalemaFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_SalemaFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_SalemaFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookSheepSteak: Exile_AbstractCraftingRecipe
{
    name = "Cook Sheep Steak";
    pictureItem = "Exile_Item_SheepSteak_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_SheepSteak_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_SheepSteak_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookSnakeFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Snake Filet";
    pictureItem = "Exile_Item_SnakeFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_SnakeFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_SnakeFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookTunaFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Tuna Filet";
    pictureItem = "Exile_Item_TunaFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_TunaFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_TunaFilet_Raw"}
    };
};

///////////////////////////////////////////////////////////////////////////////

class CookTurtleFilet: Exile_AbstractCraftingRecipe
{
    name = "Cook Turtle Filet";
    pictureItem = "Exile_Item_TurtleFilet_Cooked";
    requiresFire = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_TurtleFilet_Cooked"}
    };
    tools[] =
    {
        "Exile_Item_CookingPot"
    };
    components[] =
    {
        {1, "Exile_Item_TurtleFilet_Raw"}
    };
};


class EmptyFuelCanister: Exile_AbstractCraftingRecipe
{
    name = "Empty Fuel Canister";
    pictureItem = "Exile_Item_FuelCanisterEmpty";
    returnedItems[] =
    {
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
    components[] =
    {
        {1, "Exile_Item_FuelCanisterFull"}
    };
};
class EmptyPlasticBottleDirtyWater: Exile_AbstractCraftingRecipe
{
    name = "Empty Dirty Water";
    pictureItem = "Exile_Item_PlasticBottleEmpty";
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleEmpty"}
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleDirtyWater"}
    };
};
class EmptyPlasticBottleSaltWater: Exile_AbstractCraftingRecipe
{
    name = "Empty Salt Water";
    pictureItem = "Exile_Item_PlasticBottleEmpty";
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleEmpty"}
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleSaltWater"}
    };
};
class FillEmptyPlasticBottleWithDirtyWater: Exile_AbstractCraftingRecipe
{
    name = "Fill Dirty Water";
    pictureItem = "Exile_Item_PlasticBottleDirtyWater";
    requiredInteractionModelGroup = "WaterSource";
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleDirtyWater"}
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleEmpty"}
    };
};
class FillEmptyPlasticBottleWithFreshWater: Exile_AbstractCraftingRecipe
{
    name = "Fill Fresh Water";
    pictureItem = "Exile_Item_PlasticBottleFreshWater";
    requiredInteractionModelGroup = "CleanWaterSource";
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleFreshWater"}
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleEmpty"}
    };
};
class FillEmptyPlasticBottleWithSaltWater: Exile_AbstractCraftingRecipe
{
    name = "Fill Salt Water";
    pictureItem = "Exile_Item_PlasticBottleSaltWater";
    requiresOcean = 1;
    returnedItems[] =
    {
        {1, "Exile_Item_PlasticBottleSaltWater"}
    };
    components[] =
    {
        {1, "Exile_Item_PlasticBottleEmpty"}
    };
};
class FillEmptyWaterCanisterWithDirtyWater: Exile_AbstractCraftingRecipe
{
    name = "Fill Dirty Water";
    pictureItem = "Exile_Item_WaterCanisterDirtyWater";
    requiredInteractionModelGroup = "WaterSource";
    returnedItems[] =
    {
        {1, "Exile_Item_WaterCanisterDirtyWater"}
    };
    components[] =
    {
        {1, "Exile_Item_WaterCanisterEmpty"}
    };
};
class FillFuelCanister: Exile_AbstractCraftingRecipe
{
    name = "Fill Fuel Canister";
    pictureItem = "Exile_Item_FuelCanisterFull";
    requiredInteractionModelGroup = "FuelSource";
    returnedItems[] =
    {
        {1, "Exile_Item_FuelCanisterFull"}
    };
    components[] =
    {
        {1, "Exile_Item_FuelCanisterEmpty"}
    };
};
class UpgradeToConcreteDoor: Exile_AbstractCraftingRecipe
{
    name = "Upgrade to Concrete Door";
    pictureItem = "Exile_Item_ConcreteDoorKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteDoorKit"}
    };
    components[] =
    {
        {1, "Exile_Item_ConcreteDoorwayKit"},
        {2, "Exile_Item_MetalPole"},
        {4, "Exile_Item_MetalBoard"}
    };
};
class UpgradeToConcreteFloorPort: Exile_AbstractCraftingRecipe
{
    name = "Upgrade to Concrete Floor Port";
    pictureItem = "Exile_Item_ConcreteFloorPortKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteFloorPortKit"}
    };
    components[] =
    {
        {1, "Exile_Item_ConcreteFloorKit"},
        {2, "Exile_Item_MetalPole"},
        {4, "Exile_Item_MetalBoard"}
    };
};

//class UpgradeToConcreteGate: Exile_AbstractCraftingRecipe
//{
//    name = "Upgrade to Concrete Gate";
//    pictureItem = "Exile_Item_ConcreteGateKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_ConcreteGateKit"}
//    };
//    components[] =
//    {
//        {1, "Exile_Item_ConcreteWallKit"},
//        {2, "Exile_Item_MetalPole"},
//        {4, "Exile_Item_MetalBoard"}
//    };
//};

class UpgradeToConcreteWindow: Exile_AbstractCraftingRecipe
{
    name = "Upgrade to Concrete Window";
    pictureItem = "Exile_Item_ConcreteWindowKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_ConcreteWindowKit"}
    };
    components[] =
    {
        {1, "Exile_Item_ConcreteWallKit"},
        {2, "Exile_Item_MetalPole"},
        {4, "Exile_Item_MetalBoard"}
    };
};

//class UpgradeToWoodDoor: Exile_AbstractCraftingRecipe
//{
//    name = "Upgrade to Wood Door";
//    pictureItem = "Exile_Item_WoodDoorKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodDoorKit"}
//    };
//    components[] =
//    {
//        {1, "Exile_Item_WoodDoorwayKit"},
//        {2, "Exile_Item_WoodPlank"}
//    };
//};

class UpgradeToWoodDrawBridge: Exile_AbstractCraftingRecipe
{
    name = "Upgrade to Wood Draw Bridge";
    pictureItem = "Exile_Item_WoodDrawBridgeKit";
    requiredInteractionModelGroup = "WorkBench";
    returnedItems[] =
    {
        {1, "Exile_Item_WoodDrawBridgeKit"}
    };
    components[] =
    {
        {1, "Exile_Item_WoodGateKit"},
        {2, "Exile_Item_WoodPlank"},
        {2, "Exile_Item_JunkMetal"},
        {2, "Exile_Item_MetalScrews"}
    };
};

//class UpgradeToWoodFloorPort: Exile_AbstractCraftingRecipe
//{
//    name = "Upgrade to Wood Floor Port";
//    pictureItem = "Exile_Item_WoodFloorPortKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodFloorPortKit"}
//    };
//    components[] =
//    {
//        {1, "Exile_Item_WoodFloorKit"},
//        {2, "Exile_Item_WoodPlank"}
//    };
//};
//class UpgradeToWoodGate: Exile_AbstractCraftingRecipe
//{
//    name = "Upgrade to Wood Gate";
//    pictureItem = "Exile_Item_WoodGateKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodGateKit"}
//    };
//    components[] =
//    {
//        {1, "Exile_Item_WoodWallKit"},
//        {4, "Exile_Item_WoodPlank"}
//    };
//};
//class UpgradeToWoodWall: Exile_AbstractCraftingRecipe
//{
//    name = "Upgrade to Wood Wall";
//    pictureItem = "Exile_Item_WoodWallHalfKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodWallKit"}
//    };
//    components[] =
//    {
//        {2, "Exile_Item_WoodWallHalfKit"}
//    };
//};
//class UpgradeToWoodWindow: Exile_AbstractCraftingRecipe
//{
//    name = "Upgrade to Wood Window";
//    pictureItem = "Exile_Item_WoodWindowKit";
//    requiredInteractionModelGroup = "WorkBench";
//    returnedItems[] =
//    {
//        {1, "Exile_Item_WoodWindowKit"}
//    };
//    components[] =
//    {
//        {1, "Exile_Item_WoodWallKit"},
//        {2, "Exile_Item_WoodPlank"}
//    };
//};

 

};

 

class CfgExileAnimals
{
    /**
     * Should animals spawn on your server? Y/N?
     */
    // SK
    enabled = 1;

    /**
     * Should vanilla Arma animals (fish, rabbits, bees, etc.) be disabled?
     * We think it should, since it might confuse players if they cant eat them. *munches on bees*
     */
    // SK
    disableVanillaAnimals = 0;

    /**
     * Which animals to spawn.
     * Exile automatically spawns a color variation of that animal, if variations exist.
     * Each player (client) has a maximum of one animal at a time.
     * Exile checks which animal type can spawn in front of the player and then
     * picks a random one.
     *
     * For now it is like this:
     *
     * - Goats spawn on hill tops, but not in forests
     * - Sheep spawn on meadows, but not next to forests and not on hill tops
     * - Hens and roosters spawn next to buildings only
     *
     * => More animal types will follow in upcoming Exile versions, hopefully.
     */
    animalTypes[] =
    {
        "Exile_Animal_Rooster_Abstract",
        "Exile_Animal_Hen_Abstract",
        "Exile_Animal_Goat_Abstract",
        "Exile_Animal_Sheep_Abstract"
    };

    /**
     * Animals are always spawned in front of the player, but
     * at least a certain distance away. The radius is applied on top.
     *
     * Example:
     * Distance = 150
     * Radius = 50
     *
     * => Minimum Distance from Player = 150
     * => Maximum Distance from Player = 150 + 50 * 2
     */
    spawnDistance = 150;
    spawnRadius = 50;

    /**
     * Specifies the minimum time in seconds between spawning animals.
     * When the animal diededed, this time has to pass before it spawns
     * a new one.
     *
     * It is a min/max setting, so the intervals will be uneven and a bit random.
     * By default it will take 5 to 10 minutes to respawn a new animal.
     */
    minimumSpawnDelay = 5 * 60;
    maximumSpawnDelay = 10 * 60;

    /**
     * Clients will despawn animals if no player is in this radius around the animal
     * This check is ran every 1 minute, so it is pretty unprecise, but performance-friendly.
     */
    keepAliveRadius = 500;

    /**
     * Defines the minimum lifetime of an animal in seconds. During this time, right after spawning,
     * it will not despawn. (+-0..1 minute delay)
     */
    minimumLifetime = 5 * 60;
};

class CfgExileArsenal
{

#include "EBM\prices.hpp"
#include "CfgTrader_Prices.h"
};


class CfgExileCustomCode
{

// CDAH CRAFTING Overwrite
ExileClient_object_item_craft = "CDAH_crafting\logic\CDAH_ExileClient_object_item_craft.sqf";
ExileClient_gui_crafting_show = "CDAH_crafting\logic\CDAH_ExileClient_gui_crafting_show.sqf";
ExileServer_object_vehicle_carefulCreateVehicle = "CDAH_crafting\logic\CDAH_ExileServer_object_vehicle_carefulCreateVehicle.sqf";

            
// CDAH Rearm Vehicles (for Vehicle rearming)
ExileClient_action_execute = "CDAH_crafting\logic\CDAH_ExileClient_action_execute.sqf";


    /*
        You can overwrite every single file of our code without touching it.
        To do that, add the function name you want to overwrite plus the
        path to your custom file here. If you wonder how this works, have a
        look at our bootstrap/fn_preInit.sqf function.

        Simply add the following scheme here:

        <Function Name of Exile> = "<New File Name>";

        Example:

        ExileClient_util_fusRoDah = "myaddon\myfunction.sqf";
    */

 

};


class CfgExileEnvironment
{


#include "CfgEnviroment.h"
};

class CfgExileHUD
{
    class ShortItemNames
    {
        SmokeShell[]                         = {"WHITE",     "SMOKE"};
        1Rnd_Smoke_Grenade_shell[]             = {"WHITE",     "SMOKE"};
        3Rnd_Smoke_Grenade_shell[]             = {"WHITE",     "SMOKE"};

        SmokeShellBlue[]                     = {"BLUE",         "SMOKE"};
        1Rnd_SmokeBlue_Grenade_shell[]         = {"BLUE",         "SMOKE"};
        3Rnd_SmokeBlue_Grenade_shell[]         = {"BLUE",         "SMOKE"};

        SmokeShellGreen[]                     = {"GREEN",     "SMOKE"};
        1Rnd_SmokeGreen_Grenade_shell[]     = {"GREEN",     "SMOKE"};
        3Rnd_SmokeGreen_Grenade_shell[]     = {"GREEN",     "SMOKE"};

        SmokeShellOrange[]                     = {"ORANGE",     "SMOKE"};
        1Rnd_SmokeOrange_Grenade_shell[]    = {"ORANGE",     "SMOKE"};
        3Rnd_SmokeOrange_Grenade_shell[]     = {"ORANGE",     "SMOKE"};

        SmokeShellPurple[]                     = {"PURPLE",     "SMOKE"};
        1Rnd_SmokePurple_Grenade_shell[]     = {"PURPLE",     "SMOKE"};
        3Rnd_SmokePurple_Grenade_shell[]     = {"PURPLE",     "SMOKE"};

        SmokeShellRed[]                     = {"RED",         "SMOKE"};
        1Rnd_SmokeRed_Grenade_shell[]         = {"RED",         "SMOKE"};
        3Rnd_SmokeRed_Grenade_shell[]         = {"RED",         "SMOKE"};
                
        SmokeShellYellow[]                     = {"YELLOW",     "SMOKE"};
        1Rnd_SmokeYellow_Grenade_shell[]     = {"YELLOW",     "SMOKE"};
        3Rnd_SmokeYellow_Grenade_shell[]     = {"YELLOW",     "SMOKE"};
                
        UGL_FlareCIR_F[]                     = {"IR",         "FLARE"};
        3Rnd_UGL_FlareCIR_F[]                 = {"IR",         "FLARE"};

        UGL_FlareGreen_F[]                     = {"GREEN",     "FLARE"};
        3Rnd_UGL_FlareGreen_F[]             = {"GREEN",     "FLARE"};

        UGL_FlareRed_F[]                     = {"RED",         "FLARE"};
        3Rnd_UGL_FlareRed_F[]                 = {"RED",         "FLARE"};

        UGL_FlareWhite_F[]                     = {"WHITE",     "FLARE"};
        3Rnd_UGL_FlareWhite_F[]             = {"WHITE",     "FLARE"};

        UGL_FlareYellow_F[]                 = {"YELLOW",     "FLARE"};
        3Rnd_UGL_FlareYellow_F[]             = {"YELLOW",     "FLARE"};

        Chemlight_blue[]                     = {"BLUE",         "LIGHT"};
        Chemlight_green[]                     = {"GREEN",     "LIGHT"};
        Chemlight_red[]                     = {"RED",         "LIGHT"};
        Chemlight_yellow[]                     = {"YELLOW",     "LIGHT"};

        1Rnd_HE_Grenade_shell[]             = {"40MM"};
        3Rnd_HE_Grenade_shell[]             = {"40MM"};

        O_IR_Grenade[]                         = {"IR"};
        I_IR_Grenade[]                         = {"IR"};
        B_IR_Grenade[]                         = {"IR"};

        HandGrenade[]                         = {"RGO"};
        MiniGrenade[]                         = {"RGN"};

        Exile_Item_ZipTie[]                    = {"ZIP", "TIE"};
    };
};
class CfgExileLootSettings
{

#include "CfgLoot_Settings.h"
};
class CfgExileMobileXM8
{
    // SK
    /**
     * Add the 4 digit permission code here, so players can authorize
     * your server to send them messages to their Mobile XM8 app.
     */
    code = "XBRQ";
};
class CfgExileMusic
{
    Ambient[] = {"ExileTrack03","ExileTrack04"};
    Combat[] = {"ExileTrack06","ExileTrack07"};
    Intro[] = {"ExileTrack02","ExileTrack03"};
};
class CfgExileParty
{
    showESP = 1;
    allow3DMarkers = 1;
};
class CfgExileRussianRoulette
{
    /*
        Minimum amount to join a session of
        russian roulette
    */
    buyInAmount = 100;
};
class CfgFlags
{
    class USA
    {
        name = "USA";
        texture = "\A3\Data_F\Flags\flag_us_co.paa";
        uids[] = {};
    };
};


class CfgGrinding
{
    // Enables code lock grinding on the server
    enableGrinding = 1;
    
    // Time it takes to grind a fresh lock in minutes
    grindDuration = 25;
    
    // Percentage chance the grinding will fail
    failChance = 25;
    
    // Percentage chance that failing will break your grinder (otherwise it will just remove a battery)
    breakChance = 20;
    
    // Notify the entire server if someone is hacking. 1 == notify, 0 == don't notify
    notifyServer = 1;
    
    // The cooldown time, in minutes, before another server side notification is sent out from a territory. This is on a per territory basis.
    notificationCooldown = 30;
};

class CfgHacking
{
    // Enables safe hacking on the server
    enableHacking = 1;
    
    // Time it takes to hack in minutes
    hackDuration = 20;
    
    // Percentage chance the hacking will fail
    failChance = 50;
    
    // Percentage chance the laptop will be removed on fail
    removeChance = 5;
    
    // Max attepts to hack a safe during one restart
    maxHackAttempts = 3;
    
    // Notify the entire server if someone is hacking. 1 == notify, 0 == don't notify
    notifyServer = 1;
    
    // The cooldown time, in minutes, before another server side notification is sent out from a territory. This is on a per territory basis.
    notificationCooldown = 30;
    
    // The minimal amount of players on the server required in order to hack a safe (set to 0 to disable)
    minPlayers = 1;
    
    // How many safe hacks are allowed to be going at one time
    maxHacks = 5;
    
    // Show a map icon where the hacking is taking place
    showMapIcon = 1;
};

 

class ExileAbstractAction
{
    title = "";
    condition = "true";
    action = "";
    priority = 1.5;
    showWindow = false;
};

/**
 * Sort this by probability of occurence to speed things up a bit
 */
class CfgInteractionMenus
{

#include "EBM\menus.hpp"


// CDAH CRAFTING InteractionMenus
#include "CDAH_crafting\logic\CDAH_Class_tank.hpp"

class ATM
    {
        targetType = 2;
        target = "Land_Atm_01_F";
        class Actions
        {
            class Locker: ExileAbstractAction
            {
                title = "ATM";
                condition = "true";
                action = "_this call ExileClient_gui_lockerDialog_show";
            };
        };
    };

    class Drawbridge
    {
        targetType = 2;
        target = "Exile_Construction_Abstract_DrawBridge";

        class Actions
        {
            class Lower: ExileAbstractAction
            {
                title = "Lower";
                condition = "ExileClientInteractionObject call ExileClient_object_construction_openBridgeShow";
                action = "ExileClientInteractionObject animateSource ['DrawBridge_Source', 0];";
            };
            
            class Raise: ExileAbstractAction
            {
                title = "Raise";
                condition = "((ExileClientInteractionObject animationSourcePhase 'DrawBridge_Source') < 0.5)";
                action = "ExileClientInteractionObject animateSource ['DrawBridge_Source', 2]";
            };
        };
    };

    class Animal
    {
        targetType = 2;
        target = "Exile_Animal_Abstract";

        class Actions
        {            
            class Gut: ExileAbstractAction
            {
                title = "Gut Animal";
                condition = "!(alive ExileClientInteractionObject) && (ExileClientInteractionObject getVariable ['CanBeGutted', false])";
                action = "['GutAnimal', ExileClientInteractionObject] call ExileClient_action_execute";
            };
        };
    };

    class Car
    {
        targetType = 2;
        target = "Car";

        class Actions
        {
            class ScanLock: ExileAbstractAction
            {
                title = "Scan Lock";
                condition = "('Exile_Item_ThermalScannerPro' in (magazines player)) && !ExilePlayerInSafezone && ((locked ExileClientInteractionObject) != 1)";
                action = "_this call ExileClient_object_lock_scan";
            };

            // Locks a vehicle
            class Lock: ExileAbstractAction
            {
                title = "Lock";
                condition = "((locked ExileClientInteractionObject) isEqualTo 0) && ((locked ExileClientInteractionObject) != 1)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            // Unlocks a vehicle
            class Unlock: ExileAbstractAction
            {
                title = "Unlock";
                condition = "((locked ExileClientInteractionObject) isEqualTo 2) && ((locked ExileClientInteractionObject) != 1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            // Repairs a vehicle to 100%. Requires Duckttape
            class Repair: ExileAbstractAction
            {
                title = "Repair";
                condition = "true";
                action = "['RepairVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Hot-wires a vehicle
            class Hotwire: ExileAbstractAction
            {
                title = "Hotwire";
                condition = "((locked ExileClientInteractionObject) isEqualTo 2) && ((locked ExileClientInteractionObject) != 1)";
                action = "['HotwireVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Flips a vehicle so the player doesnt have to call an admin
            // Check if vector up is fucked
            class Flip: ExileAbstractAction
            {
                title = "Flip";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_flip";
            };

            // Fills fuel from a can into a car
            class Refuel: ExileAbstractAction
            {
                title = "Refuel";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_refuel";
            };

            // Drains fuel from a car into an empty jerry can
            class DrainFuel: ExileAbstractAction
            {
                title = "Drain Fuel";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_drain";
            };
        };
    };


    class Air
    {
        target = "Air";
        targetType = 2;

        class Actions
        {
            class ScanLock: ExileAbstractAction
            {
            // SK
                title = "Scan Lock";
                condition = "('Exile_Item_ThermalScannerPro' in (magazines player)) && ((locked ExileClientInteractionObject) != 1) && !ExilePlayerInSafezone";
                action = "_this call ExileClient_object_lock_scan";
            };

            // SK
            //CDAH Rearm
            class Rearm: ExileAbstractAction
            {
                title = "Rearm";
                condition = "!(magazinesAllTurrets _this isEqualto [])"; //condition = "!(_this magazinesAllTurrets isEqualto [])";
                action = "['RearmVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Locks a vehicle
            class Lock: ExileAbstractAction
            {
                title = "Lock";
                condition = "((locked ExileClientInteractionObject) isEqualTo 0) && ((locked ExileClientInteractionObject) != 1)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            // Unlocks a vehicle
            class Unlock: ExileAbstractAction
            {
                title = "Unlock";
                condition = "((locked ExileClientInteractionObject) isEqualTo 2) && ((locked ExileClientInteractionObject) != 1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            // Hot-wires a vehicle
            class Hotwire: ExileAbstractAction
            {
                title = "Hotwire";
                condition = "((locked ExileClientInteractionObject) isEqualTo 2) && ((locked ExileClientInteractionObject) != 1)";
                action = "['HotwireVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Repairs a vehicle to 100%. Requires Duckttape
            class Repair: ExileAbstractAction
            {
                title = "Repair";
                condition = "true";
                action = "['RepairVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Flips a vehicle so the player doesnt have to call an admin
            // Check if vector up is fucked
            class Flip: ExileAbstractAction
            {
                title = "Flip";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_flip";
            };

            // Fills fuel from a can into a car
            class Refuel: ExileAbstractAction
            {
                title = "Refuel";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_refuel";
            };

            // Drains fuel from a car into an empty jerry can
            class DrainFuel: ExileAbstractAction
            {
                title = "Drain Fuel";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_drain";
            };

            class RotateLeft: ExileAbstractAction
            {
                title = "Rotate Left";    
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "[ExileClientInteractionObject,-15] call ExileClient_object_vehicle_rotate";
            };

            class RotateRight: ExileAbstractAction
            {
                title = "Rotate Right";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "[ExileClientInteractionObject,15] call ExileClient_object_vehicle_rotate";
            };
        };
    };

    class Safe
    {
        targetType = 2;
        target = "Exile_Container_Abstract_Safe";

        class Actions
        {
            class ScanLock: ExileAbstractAction
            {
                title = "Scan Lock";
                condition = "('Exile_Item_ThermalScannerPro' in (magazines player)) && !((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 1) && !ExilePlayerInSafezone";
                action = "_this call ExileClient_object_lock_scan";
            };

            // Locks a vehicle
            class Lock : ExileAbstractAction
            {
                title = "Lock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            class Unlock : ExileAbstractAction
            {
                title = "Unlock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            class Pack : ExileAbstractAction
            {
                title = "Pack";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_container_pack";
            };

            class SetPinCode : ExileAbstractAction
            {
                title = "Set PIN";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_lock_setPin";
            };
            
            class HackLock: ExileAbstractAction
            {
                title = "Hack Lock";
                condition = "(getNumber(missionConfigFile >> 'CfgHacking' >> 'enableHacking') isEqualTo 1) && ('Exile_Item_Laptop' in (magazines player)) && ((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1) && !ExilePlayerInSafezone";
                action = "['HackLock', _this select 0] call ExileClient_action_execute";
            };
        };
    };

    class Laptop
    {
        targetType = 2;
        target = "Exile_Construction_Laptop_Static";

        class Actions
        {
            class CameraSystem: ExileAbstractAction
            {
                title = "CCTV Access";
                condition = "((ExileClientInteractionObject animationPhase 'LaptopLidRotation') >= 0.5)";
                action = "_this call ExileClient_gui_baseCamera_show";
            };
        };
    };

    class SupplyBox
    {
        targetType = 2;
        target = "Exile_Container_SupplyBox";

        class Actions
        {
            class Mount: ExileAbstractAction
            {
                title = "Mount";
                condition = "(isNull (attachedTo ExileClientInteractionObject)) && ((ExileClientInteractionObject getvariable ['ExileOwnerUID',1]) isEqualTo 1)";
                action = "_this call ExileClient_object_supplyBox_mount";
            };

            class Install: ExileAbstractAction
            {
                title = "Install";
                condition = "isNull (attachedTo ExileClientInteractionObject) && ((ExileClientInteractionObject getvariable ['ExileOwnerUID',1]) isEqualTo 1)";
                action = "_this call ExileClient_object_supplyBox_install";
            };

            class Unmount: ExileAbstractAction
            {
                title = "Unmount";
                condition = "!(isNull (attachedTo ExileClientInteractionObject)) && ((ExileClientInteractionObject getvariable ['ExileOwnerUID',1]) isEqualTo 1)";
                action = "_this call ExileClient_object_supplyBox_unmount";
            };
        };
    };

    class Construction
    {
        targetType = 2;
        target = "Exile_Construction_Abstract_Static";

        class Actions
        {
            class ScanLock: ExileAbstractAction
            {
                // SK
                title = "Scan Lock";
                condition = "('Exile_Item_ThermalScannerPro' in (magazines player)) && !((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 1)";
                action = "_this call ExileClient_object_lock_scan";
            };

            class Unlock : ExileAbstractAction
            {
                title = "Unlock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            class Lock : ExileAbstractAction
            {
                title = "Lock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            // Picks up the construction so you can move it
            class Move: ExileAbstractAction
            {
                title = "Move";
                condition = "call ExileClient_util_world_isInOwnTerritory";
                action = "_this spawn ExileClient_object_construction_move";
            };

            // Removes the construction.
            class Deconstruct: ExileAbstractAction
            {
                title = "Remove";
                condition = "call ExileClient_util_world_isInOwnTerritory";
                action = "_this spawn ExileClient_object_construction_deconstruct";
            };

            class AddALock : ExileAbstractAction
            {
                title = "Add a Lock";
                condition = "call ExileClient_object_construction_lockAddShow";
                action = "_this spawn ExileClient_object_construction_lockAdd";
            };

            class Upgrade : ExileAbstractAction
            {
                title = "Upgrade";
                condition = "call ExileClient_object_construction_upgradeShow";
                action = "_this call ExileClient_object_construction_upgrade";
            };

            class MakeBoom : ExileAbstractAction
            {
                title = "Plant charge";
                condition = "call ExileClient_system_breaching_condition";
                action = "_this call ExileClient_system_breaching_action";
            };

            class Repair : ExileAbstractAction
            {
                title = "Repair";
                condition = "(!((ExileClientInteractionObject getVariable ['ExileConstructionDamage',0]) isEqualTo 0)) && (call ExileClient_util_world_isInOwnTerritory)";
                action = "_this call ExileClient_object_construction_repair";
            };
            
            class GrindLock : ExileAbstractAction
            {
                title = "Grind Lock";
                condition = "(getNumber(missionConfigFile >> 'CfgGrinding' >> 'enableGrinding') isEqualTo 1) && ('Exile_Item_Grinder' in (magazines player)) && ('Exile_Magazine_Battery' in (magazines player)) && ((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1) && ((ExileClientInteractionObject animationPhase 'DoorRotation') < 0.5)";
                action = "['GrindLock', _this select 0] call ExileClient_action_execute";
            };
        };
    };


    /*
        Tent, Storage crate etc.
    */
    class Container
    {
        targetType = 2;
        target = "Exile_Container_Abstract";

        class Actions
        {
            class Pack
            {
                title = "Pack";
                condition = "!((typeOf ExileClientInteractionObject) isEqualTo 'Exile_Container_SupplyBox')";
                action = "_this spawn ExileClient_object_container_pack";
            };
            // Picks up the container so you can move it
            class Move: ExileAbstractAction
            {
                title = "Move";
                condition = "(getNumber(configFile >> 'CfgVehicles' >> typeOf ExileClientInteractionObject >> 'exileIsLockable') isEqualTo 0) || ((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_construction_move";
            };
        };
    };

    class Flag
    {
        targetType = 2;
        target = "Exile_Construction_Flag_Static";

        class Actions
        {
            /*
            class Manage : ExileAbstractAction
            {
                title = "Manage";
                condition = "true";
                action = "_this call ExileClient_gui_baseManagement_event_show";
            };
            */
            class StealFlag: ExileAbstractAction            
            {
                title = "Steal Flag";
                condition = "((ExileClientInteractionObject getvariable ['ExileFlagStolen',1]) isEqualTo 0)";
                action = "['StealFlag', _this select 0] call ExileClient_action_execute";
            };
            
            class RestoreFlag: ExileAbstractAction
            {
                title = "Restore Flag";
                condition = "((ExileClientInteractionObject getvariable ['ExileFlagStolen',0]) isEqualTo 1)";
                action = "['restoreFlagRequest', [netID ExileClientInteractionObject]] call ExileClient_system_network_send";
            };
        };
    };


    class Boat
    {
        targetType = 2;
        target = "Ship";

        class Actions
        {
            // Locks a vehicle
            class Lock: ExileAbstractAction
            {
                title = "Lock";
                condition = "((locked ExileClientInteractionObject) isEqualTo 0) && ((locked ExileClientInteractionObject) != 1)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            // Unlocks a vehicle
            class Unlock: ExileAbstractAction
            {
                title = "Unlock";
                condition = "((locked ExileClientInteractionObject) isEqualTo 2) && ((locked ExileClientInteractionObject) != 1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            // Hot-wires a vehicle
            class Hotwire: ExileAbstractAction
            {
                title = "Hotwire";
                condition = "((locked ExileClientInteractionObject) isEqualTo 2) && ((locked ExileClientInteractionObject) != 1)";
                action = "['HotwireVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Repairs a vehicle to 100%. Requires Duckttape
            class Repair: ExileAbstractAction
            {
                title = "Repair";
                condition = "true";
                action = "['RepairVehicle', _this select 0] call ExileClient_action_execute";
            };

            // Fills fuel from a can into a car
            class Refuel: ExileAbstractAction
            {
                title = "Refuel";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_refuel";
            };

            // Drains fuel from a car into an empty jerry can
            class DrainFuel: ExileAbstractAction
            {
                title = "Drain Fuel";
                condition = "call ExileClient_object_vehicle_interaction_show";
                action = "_this call ExileClient_object_vehicle_drain";
            };

            // Pushes a boat into look direction to move into water
            class Push: ExileAbstractAction
            {
                title = "Fus Ro Dah!";
                condition = "((crew ExileClientInteractionObject) isEqualTo [])";
                action = "_this call ExileClient_object_vehicle_push";
            };
        };
    };

    class Bikes
    {
        targetType = 2;
        target = "Bicycle";

        class Actions
        {
            class Flip: ExileAbstractAction
            {
                title = "Flip";
                condition = "true";
                action = "_this call ExileClient_object_vehicle_flip";
            };
        };
    };

    class Player
    {
        targetType = 2;
        target = "Exile_Unit_Player";

        class Actions
        {
        /*
            class Free: ExileAbstractAction
            {
                title = "Free";
                condition = "(alive ExileClientInteractionObject) && (ExileClientInteractionObject getVariable ['ExileIsHandcuffed', false]) && !ExileClientIsHandcuffed";
                action = "_this call ExileClient_object_handcuffs_free";
            };
            
            class Search: ExileAbstractAction
            {
                title = "Search Gear";
                condition = "(alive ExileClientInteractionObject) && (ExileClientInteractionObject getVariable ['ExileIsHandcuffed', false]) && !ExileClientIsHandcuffed";
                action = "_this call ExileClient_object_handcuffs_searchGear";
            };
        */
            class Identify: ExileAbstractAction
            {
                title = "Identify Body";
                condition = "!(alive ExileClientInteractionObject)";
                action = "_this call ExileClient_object_player_identifyBody";
            };
        /*
            class HideCorpse: ExileAbstractAction
            {
                title = "Hide Body";
                condition = "!(alive ExileClientInteractionObject) && ('Exile_Melee_Shovel' isEqualTo (currentWeapon player))";
                action = "['HideBody', (_this select 0)] call ExileClient_action_execute";
            };
        */
            
        };
    };
};


/**
 * Classname is used for reference
 * name is displayed in crafting requirements
 * models is used for crafting and interaction menus
 */


class CfgInteractionModels
{


// CDAH CRAFTING InteractionModles
#include "CDAH_crafting\logic\CDAH_interactionModels.hpp"

    class WaterSource
    {
        name = "Water tanks, barrels, coolers or pumps";
        models[] =     
        {
            "barrelwater_f",
            "barrelwater_grey_f",
            "waterbarrel_f",
            "watertank_f",
            "stallwater_f",
            "waterpump_01_f",
            "water_source_f",

            // Namalsk
            "wellpump",
            "Land_jhad_stand_water",
            "Land_Jbad_Misc_Well_L",
            "Land_jbad_Fridge",
            "Land_jbad_reservoir",
            "Land_jbad_teapot",
            "Land_KBud",
            
            //Tanoa
            "watertank_01_f",
            "watertank_02_f",
            "watertank_03_f",
            "watertank_04_f"
        };
    };

    // SK fuer Extended Items Exile
    class CleanWaterSource
    {
        name = "Water cooler";
        models[] =     
        {
            "Exitem_watercatchment",
            "watercooler"
        };
    };

    class WorkBench
    {
        name = "Work Bench";
        models[] =
        {
            "workstand_f.p3d"
        };
    };

    // SK Extended Items Exile    
    class AdvancedWorkbench
    {
        name = "Advanced Workbench";
        models[] =
        {
            "workbench_01_f.p3d"
        };
    };

 

    class ShippingContainerSource
    {
        name = "Shipping Containers";
        models[] =
        {
            // Arma 3
            "CargoBox_V1_F",
            "Cargo20_blue_F",
            "Cargo20_brick_red_F",
            "Cargo20_cyan_F",
            "Cargo20_grey_F",
            "Cargo20_light_blue_F",
            "Cargo20_light_green_F",
            "Cargo20_military_green_F",
            "Cargo20_military_ruins_F",
            "Cargo20_orange_F",
            "Cargo20_red_F",
            "Cargo20_sand_F",
            "Cargo20_white_F",
            "Cargo20_yellow_F",
            "Cargo40_blue_F",
            "Cargo40_brick_red_F",
            "Cargo40_cyan_F",
            "Cargo40_grey_F",
            "Cargo40_light_blue_F",
            "Cargo40_light_green_F",
            "Cargo40_military_green_F",
            "Cargo40_orange_F",
            "Cargo40_red_F",
            "Cargo40_sand_F",
            "Cargo40_white_F",
            "Cargo40_yellow_F",

            // Namalsk
            "nam_container.p3d",
            "misc_cargo1d.p3d",
            "misc_cargo1b.p3d",
            "misc_cargo1bo.p3d",
            "misc_cargo2c.p3d",
            "misc_cargo1ao.p3d",
            
            //Tanoa
            "Land_ContainerLine_01_F",
            "Land_ContainerLine_02_F",
            "Land_ContainerLine_03_F",

            // Also allow wrecks
            "wreck_"
/*            
            "wreck_bmp2_f.p3d",
            "wreck_brdm2_f.p3d",
            "wreck_car2_f.p3d",
            "wreck_car3_f.p3d",
            "wreck_car_f.p3d",
            "wreck_cardismantled_f.p3d",
            "wreck_hmmwv_f.p3d",
            "wreck_hunter_f.p3d",
            "wreck_offroad2_f.p3d",
            "wreck_offroad_f.p3d",
            "wreck_skodovka_f.p3d",
            "wreck_slammer_f.p3d",
            "wreck_slammer_hull_f.p3d",
            "wreck_slammer_turret_f.p3d",
            "wreck_t72_hull_f.p3d",
            "wreck_t72_turret_f.p3d",
            "wreck_truck_dropside_f.p3d",
            "wreck_truck_f.p3d",
            "wreck_uaz_f.p3d",
            "wreck_ural_f.p3d"
            "wreck_van_f.p3d",
            */


            // TODO: Ask community for CUP/AiA model names    
        };
    };

    class WoodSource
    {
        name = "Trees";
        models[] =
        {
            " t_",
            " bo_t_",

            // A2 trees
            " str_",
            " Smrk_",
            " les_",
            " brg_"            
        };
    };

    // TODO: Add https://community.bistudio.com/wikidata/images/thumb/6/60/Arma3_CfgVehicles_Land_Tank_rust_F.jpg/150px-Arma3_CfgVehicles_Land_Tank_rust_F.jpg
    class FuelSource
    {
        name = "Fuel pumps, stations or barrels";
        models[] =
        {
            "fuelstation_feed_f.p3d",
            "metalbarrel_f.p3d",
            "flexibletank_01_f.p3d",
            "fs_feed_f.p3d",
            //Tanoa
            "fuelstation_01_pump_f.p3d",
            "fuelstation_02_pump_f.p3d"
        };    
    };
};


class CfgLocker
{
    numbersOnly = "0123456789";
// ORG: 10000    
    maxDeposit = 100000;
};

class CfgPlayer
{
    // In minutes ammount of time it takes to go from 100 - 0 if stationary
    hungerDecay = 90;
    thirstDecay = 60;

    // Damage taken from 0 (health||thirst)/sec
    healthDecay = 5.0;

    // Health regen if over BOTH
    thirstRegen = 90;
    hungerRegen = 90;

    // IF above meet recover HP%/MIN
    recoveryPerMinute = 2;

    // Set custom aim precision coefficient for weapon sway
    // https://community.bistudio.com/wiki/Arma_3_Stamina
    // Set to -1 if you want to use Arma 3 default value
    // setCustomAimCoef
    customAimCoefficient = 0.5;

    // 0 or 1
    enableFatigue = 0;
    enableStamina = 0;

    disableMapDrawing = 1;
    
    // Use the current gradient to affect the players movement when autorunning.
    // 0 == default exile auto run
    useGradientAffectedAutoRun = 0;
};
/*
    This config will allow you to override the default poptab storage for vehicles and containers.
    The current system takes the maxLoad of a vehicle * 10, and that gives you the max poptabs that can be stored.
    This will allow you to override that max with your own value.
    
    To override, just add the vehicle/containers classname to this class, and define its max. Look at Exile_Container_Safe_Small as an example.
*/


class CfgPoptabStorage
{
    class Exile_Container_Safe_Small { max = 25000; };    
};
class CfgSimulation
{
    /*
        Use Arma built in Dynamic Simulation.
        If you have any issues with players unable to get into cars, control vehicles, fly planes, etc. try turning this off
        Options:
            0: Use Exile's built in simulation system (Same system in 1.0.3 and below)
            1: Use Dynamic Simulation
    */
    enableDynamicSimulation = 1;
    
    /*
        Simulation distance settings
        For more information:
           https://community.bistudio.com/wiki/setDynamicSimulationDistance
           https://community.bistudio.com/wiki/setDynamicSimulationDistanceCoef
    */
    
    // The distance, in meters, will infantry units be simulated. Default: 500m
    groupSimulationDistance = 500;
    
    // The distance, in meters, will vehicles with crew be simulated. Default: 350m
    vehicleSimulationDistance = 250;
    
    // The distance, in meters, will all vehicles without crew be simulated. Default: 250m
    emptyVehicleSimulationDistance = 250;
    
    // The distance, in meters, will static objects be simulated. This includes anything from a small tin can to a building. Default: 50m
    propSimulationDistance = 50;
    
    // Multiplies the entity activation distance by set value if the entity is moving. Default: 2
    isMovingSimulationCoef = 2;
};


class CfgSlothMachine
{
    spinCost = 100;
    Jackpot = 10100;
    
    chances[] =
    {
        {85, ""},                     // 85% = Nothing
        {95, "Level1"},             // 10% = 1pt
        {96, "Level2"},             // 1% = 10pt
        {97, "Level3"},             // 1% = 25pt
        {98, "Level4"},             // 1% = 50pt
        {99, "Level5"},                // 1% = 100pt
        {100, "Jackpot"}             // 1% = Jackpot
    };

    class Prizes
    {
        class Level1
        {
            symbol = "\exile_assets\texture\item\Exile_Item_ToiletPaper.paa";
            prize = 101;
        };

        class Level2
        {
            symbol = "\exile_assets\texture\item\Exile_Item_CockONut.paa";
            prize = 110;
        };

        class Level3
        {
            symbol = "\exile_assets\texture\item\Exile_Item_Beer.paa";
            prize = 125;
        };

        class Level4
        {
            symbol = "\exile_assets\texture\item\Exile_Item_Knife.paa";
            prize = 150;
        };

        class Level5
        {
            symbol = "\exile_assets\texture\item\Exile_Item_Safe.paa";
            prize = 200;
        };
        
        class Jackpot
        {
            symbol = "\exile_assets\texture\item\Exile_Item_XmasPresent.paa";
        };
    };
};


class CfgTerritories
{
#include "CfgTerritories.h"
};

class CfgTraderCategories
{
#include "EBM\traders.hpp"

    class Community
    {
        name = "Community Items";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community2
    {
        name = "Community Items 2";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community3
    {
        name = "Community Items 3";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community4
    {
        name = "Community Items 4";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community5
    {
        name = "Community Items 5";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community6
    {
        name = "Community Items 6";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community7
    {
        name = "Community Items 7";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community8
    {
        name = "Community Items 8";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community9
    {
        name = "Community Items 9";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };

    class Community10
    {
        name = "Community Items 10";
        icon = "a3\ui_f\data\gui\Rsc\RscDisplayArsenal\uniform_ca.paa";
        items[] =
        {
            // Add your items here <3
        };
    };


#include "CfgTrader_Categories.h"


};

 


class CfgTraders
{
#include "CfgTrader_Menu.h"

    /**
     * Sells Community Items
     */
    class Exile_Trader_CommunityCustoms
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community"
        };
    };

    class Exile_Trader_CommunityCustoms2
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community2"
        };
    };

    class Exile_Trader_CommunityCustoms3
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community3"
        };
    };

    class Exile_Trader_CommunityCustoms4
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community4"
        };
    };

    class Exile_Trader_CommunityCustoms5
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community5"
        };
    };

    class Exile_Trader_CommunityCustoms6
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community6"
        };
    };

    class Exile_Trader_CommunityCustoms7
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community7"
        };
    };

    class Exile_Trader_CommunityCustoms8
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community8"
        };
    };

    class Exile_Trader_CommunityCustoms9
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community9"
        };
    };

    class Exile_Trader_CommunityCustoms10
    {
        name = "COMMUNITY";
        showWeaponFilter = 0;
        categories[] =
        {
            "Community10"
        };
    };
};

class CfgTrading
{

#include "CfgTrading.h"
};

class CfgVehicleCustoms
{
    ///////////////////////////////////////////////////////////////////////////////
    // QUAD BIKES
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Bike_QuadBike_Abstract
    {
        skins[] =
        {

            {"Exile_Bike_QuadBike_Blue",        100, "Blue",        {"\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_CIV_BLUE_CO.paa","\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_wheel_CIVBLUE_CO.paa"}},
            {"Exile_Bike_QuadBike_Red",            100, "Red",            {"\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_CIV_RED_CO.paa","\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_wheel_CIVRED_CO.paa"}},
            {"Exile_Bike_QuadBike_White",        100, "White",        {"\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_CIV_WHITE_CO.paa","\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_wheel_CIVWHITE_CO.paa"}},
            {"Exile_Bike_QuadBike_Nato",        150, "NATO",        {"\A3\Soft_F\Quadbike_01\Data\Quadbike_01_co.paa","\A3\Soft_F\Quadbike_01\Data\Quadbike_01_wheel_co.paa"}},
            {"Exile_Bike_QuadBike_Csat",        150, "CSAT",        {"\A3\Soft_F\Quadbike_01\Data\Quadbike_01_OPFOR_CO.paa","\A3\Soft_F\Quadbike_01\Data\Quadbike_01_wheel_OPFOR_CO.paa"}},
            {"Exile_Bike_QuadBike_Fia",            150, "FIA",            {"\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_INDP_CO.paa","\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_wheel_INDP_CO.paa"}},
            {"Exile_Bike_QuadBike_Guerilla01",    150, "Guerilla 01",    {"\A3\Soft_F_Bootcamp\Quadbike_01\Data\Quadbike_01_IG_CO.paa","\A3\soft_f_gamma\Quadbike_01\Data\Quadbike_01_wheel_IG_CO.paa"}},
            {"Exile_Bike_QuadBike_Guerilla02",    150, "Guerilla 02",    {"\A3\Soft_F_Bootcamp\Quadbike_01\Data\Quadbike_01_INDP_Hunter_CO.paa","\A3\soft_f_gamma\Quadbike_01\Data\Quadbike_01_wheel_INDP_Hunter_CO.paa"}},
            {"Exile_Bike_QuadBike_Black",        100, "Black",        {"\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_CIV_BLACK_CO.paa","\A3\Soft_F_Beta\Quadbike_01\Data\Quadbike_01_wheel_CIVBLACK_CO.paa"}},
            {"Exile_Bike_QuadBike_Black",        100, "Hex",        {"\A3\Soft_f_Exp\Quadbike_01\data\Quadbike_01_ghex_CO.paa","\A3\Soft_f_Exp\Quadbike_01\data\Quadbike_01_wheel_ghex_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // MOTOR BOATS
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Boat_MotorBoat_Abstract
    {
        skins[] =
        {
            {"Exile_Boat_MotorBoat_Police",        350, "Police", {"\a3\boat_f_gamma\Boat_Civil_01\data\Boat_Civil_01_ext_police_co.paa","\a3\boat_f_gamma\Boat_Civil_01\data\Boat_Civil_01_int_police_co.paa"}},
            {"Exile_Boat_MotorBoat_Orange",        300, "Orange", {"\a3\boat_f_gamma\Boat_Civil_01\data\Boat_Civil_01_ext_rescue_co.paa","\a3\boat_f_gamma\Boat_Civil_01\data\Boat_Civil_01_int_rescue_co.paa"}},
            {"Exile_Boat_MotorBoat_White",        300, "White",  {"\a3\boat_f_gamma\Boat_Civil_01\data\Boat_Civil_01_ext_co.paa","\a3\boat_f_gamma\Boat_Civil_01\data\Boat_Civil_01_int_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // RUBBER DUCKS
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Boat_RubberDuck_Abstract
    {
        skins[] =
        {
            {"Exile_Boat_RubberDuck_CSAT",        200, "CSAT", {"\A3\boat_F\Boat_Transport_01\data\Boat_Transport_01_OPFOR_CO.paa"}},
            {"Exile_Boat_RubberDuck_Digital",    200, "Digital",{"\A3\boat_F\Boat_Transport_01\data\Boat_Transport_01_INDP_CO.paa"}},
            {"Exile_Boat_RubberDuck_Orange",    150, "Orange", {"\A3\boat_F\Boat_Transport_01\data\Boat_Transport_01_rescue_CO.paa"}},
            {"Exile_Boat_RubberDuck_Blue",        150, "Blue", {"\A3\boat_F\Boat_Transport_01\data\Boat_Transport_01_civilian_CO.paa"}},
            {"Exile_Boat_RubberDuck_Black",        150, "Black", {"\A3\boat_F\Boat_Transport_01\data\boat_transport_01_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // SDV
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Boat_SDV_Abstract
    {
        skins[] =
        {
            {"Exile_Boat_SDV_CSAT",        200, "CSAT", {"\A3\boat_f_beta\SDV_01\data\SDV_ext_opfor_CO.paa"}},
            {"Exile_Boat_SDV_Digital",    200, "Digital", {"\A3\boat_f_beta\SDV_01\data\SDV_ext_INDP_CO.paa"}},
            {"Exile_Boat_SDV_Grey",        100, "Grey", {"\A3\boat_f_beta\SDV_01\data\SDV_ext_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Hellcat
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Hellcat_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Hellcat_Green", 350, "Green",     {"\A3\Air_F_EPB\Heli_Light_03\data\Heli_Light_03_base_CO.paa"}},
            {"Exile_Chopper_Hellcat_FIA",     500, "FIA",     {"\A3\Air_F_EPB\Heli_Light_03\data\heli_light_03_base_indp_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Karts
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Kart_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Kart_BluKing",                 100, "Bluking",     {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_blu_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_blu_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_RedStone",             100, "RedStone",     {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_black_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_black_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_Vrana",                 100, "Vrana",         {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_vrana_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_vrana_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_Green",                 100, "Green",         {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_base_green_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_blu_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_Blue",                 100, "Blue",         {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_base_blue_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_blu_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_Orange",                 100, "Orange",        {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_base_orange_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_blu_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_White",                 100, "White",         {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_base_white_CO.paa","","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_Yellow",                 100, "Yellow",         {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_base_yellow_CO.paa","","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}},
            {"Exile_Car_Kart_Black",                 100, "Black",         {"\a3\Soft_F_Kart\Kart_01\Data\Kart_01_base_black_CO.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_01_logos_black_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_1_CA.paa","\a3\Soft_F_Kart\Kart_01\Data\Kart_num_3_CA.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Hummingbird (Civillian)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Hummingbird_Civillian_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Hummingbird_Civillian_Blue",         350, "Blue",         {"\a3\air_f\Heli_Light_01\Data\heli_light_01_ext_blue_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Red",         350, "Red",         {"\a3\air_f\Heli_Light_01\Data\heli_light_01_ext_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_ION",         350, "ION",         {"\a3\air_f\Heli_Light_01\Data\heli_light_01_ext_ion_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_BlueLine",     350, "BlueLine",     {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_blueLine_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Digital",     350, "Digital",     {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_digital_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Elliptical",     350, "Elliptical",     {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_elliptical_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Furious",     350, "Furious",     {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_furious_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_GrayWatcher", 350, "GrayWatcher",    {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_graywatcher_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Jeans",         350, "Jeans",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_jeans_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Light",         350, "Light",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_light_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Shadow",         350, "Shadow",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_shadow_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Sheriff",     350, "Sheriff",     {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_sheriff_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Speedy",         350, "Speedy",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_speedy_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Sunset",         350, "Sunset",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_sunset_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Vrana",         350, "Vrana",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_vrana_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Wasp",         350, "Wasp",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_wasp_co.paa"}},
            {"Exile_Chopper_Hummingbird_Civillian_Wave",         350, "Wave",         {"\a3\air_f\Heli_Light_01\Data\Skins\heli_light_01_ext_wave_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Huron
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Huron_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Huron_Black",     450, "Black", {"\A3\Air_F_Heli\Heli_Transport_03\Data\Heli_Transport_03_ext01_black_CO.paa","\a3\air_f_heli\heli_transport_03\data\heli_transport_03_ext02_black_co.paa"}},
            {"Exile_Chopper_Huron_Green",     450, "Green", {"\a3\air_f_heli\heli_transport_03\data\heli_transport_03_ext01_co.paa","\a3\air_f_heli\heli_transport_03\data\heli_transport_03_ext02_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Orca
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Orca_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Orca_CSAT",         350, "CSAT",             {"\A3\Air_F\Heli_Light_02\Data\Heli_Light_02_ext_OPFOR_CO.paa"}},
            {"Exile_Chopper_Orca_Black",         350, "Black",             {"\A3\Air_F\Heli_Light_02\Data\Heli_Light_02_ext_CO.paa"}},
            {"Exile_Chopper_Orca_BlackCustom",     350, "Black Custom",     {"\A3\Air_F_Heli\Heli_Light_02\Data\Heli_Light_02_ext_OPFOR_V2_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Taru
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Taru_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Taru_CSAT",        500, "CSAT",     {"A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_01_co.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_02_co.paa"}},
            {"Exile_Chopper_Taru_Black",    500, "BLACK",     {"A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_01_black_CO.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_02_black_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Taru (Transport)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Taru_Transport_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Taru_Transport_CSAT",    500, "CSAT",     {"A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_01_co.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_02_co.paa"}},
            {"Exile_Chopper_Taru_Transport_Black",    500, "Black",     {"A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_01_black_CO.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_02_black_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Taru (Covered)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Taru_Covered_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Taru_Covered_CSAT",        500, "CSAT",    {"A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_01_CO.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_base_02_CO.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_Pod_Ext01_CO.paa","A3\Air_F_Heli\Heli_Transport_04\Data\Heli_Transport_04_Pod_Ext02_CO.paa"}},
            {"Exile_Chopper_Taru_Covered_Black",    500, "Black",    {"A3\Air_F_Heli\Heli_Transport_04\Data\heli_transport_04_base_01_black_co.paa","A3\Air_F_Heli\Heli_Transport_04\Data\heli_transport_04_base_02_black_co.paa","A3\Air_F_Heli\Heli_Transport_04\Data\heli_transport_04_pod_ext01_black_co.paa","A3\Air_F_Heli\Heli_Transport_04\Data\heli_transport_04_pod_ext02_black_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Hatchback
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Hatchback_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Hatchback_Rusty1",             50, "Rusty White",        {"\exile_assets\model\RTV\Exile_Car_Hatchback_01_co.paa"}},
            {"Exile_Car_Hatchback_Rusty2",             50, "Rusty Red",        {"\exile_assets\model\RTV\Exile_Car_Hatchback_02_co.paa"}},
            {"Exile_Car_Hatchback_Rusty3",             50, "Rusty Yellow",        {"\exile_assets\model\RTV\Exile_Car_Hatchback_03_co.paa"}},
            {"Exile_Car_Hatchback_Beige",             100, "Beige",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE01_CO.paa"}},
            {"Exile_Car_Hatchback_Green",             100, "Green",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE02_CO.paa"}},
            {"Exile_Car_Hatchback_Blue",             100, "Blue",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE03_CO.paa"}},
            {"Exile_Car_Hatchback_BlueCustom",         100, "Blue Custom",        {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE04_CO.paa"}},
            {"Exile_Car_Hatchback_BeigeCustom",     100, "Beige Custom",    {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE05_CO.paa"}},
            {"Exile_Car_Hatchback_Yellow",             100, "Yellow",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE06_CO.paa"}},
            {"Exile_Car_Hatchback_Grey",             100, "Grey",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE07_CO.paa"}},
            {"Exile_Car_Hatchback_Black",             100, "Black",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE08_CO.paa"}},
            {"Exile_Car_Hatchback_Dark",             100, "Dark",            {"\A3\Soft_F_Gamma\Hatchback_01\data\Hatchback_01_ext_BASE09_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Hatchback (Sport)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Hatchback_Sport_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Hatchback_Sport_Red",         100, "Red",        {"\A3\soft_f_gamma\Hatchback_01\data\Hatchback_01_ext_SPORT01_CO.paa"}},
            {"Exile_Car_Hatchback_Sport_Blue",         100, "Blue",    {"\A3\soft_f_gamma\Hatchback_01\data\Hatchback_01_ext_SPORT02_CO.paa"}},
            {"Exile_Car_Hatchback_Sport_Orange",     100, "Orange",    {"\A3\soft_f_gamma\Hatchback_01\data\Hatchback_01_ext_SPORT03_CO.paa"}},
            {"Exile_Car_Hatchback_Sport_White",     100, "White",    {"\A3\soft_f_gamma\Hatchback_01\data\Hatchback_01_ext_SPORT04_CO.paa"}},
            {"Exile_Car_Hatchback_Sport_Beige",     100, "Beige",    {"\A3\soft_f_gamma\Hatchback_01\data\Hatchback_01_ext_SPORT05_CO.paa"}},
            {"Exile_Car_Hatchback_Sport_Green",     100, "Green",    {"\A3\soft_f_gamma\Hatchback_01\data\Hatchback_01_ext_SPORT06_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Offroad
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Offroad_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Offroad_Rusty1",         50, "Rusty White",    {"\exile_assets\model\RTV\Exile_offroad_03_co.paa","\exile_assets\model\RTV\Exile_offroad_03_co.paa"}},
            {"Exile_Car_Offroad_Rusty2",         50, "Rusty Red",    {"\exile_assets\model\RTV\Exile_offroad_01_co.paa","\exile_assets\model\RTV\Exile_offroad_01_co.paa"}},
            {"Exile_Car_Offroad_Rusty3",         50, "Rusty Blue",    {"\exile_assets\model\RTV\Exile_offroad_02_co.paa","\exile_assets\model\RTV\Exile_offroad_02_co.paa"}},
            {"Exile_Car_Offroad_Red",             500, "Red",            {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_CO.paa"}},
            {"Exile_Car_Offroad_Beige",         500, "Beige",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE01_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE01_CO.paa"}},
            {"Exile_Car_Offroad_White",         500, "White",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE02_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE02_CO.paa"}},
            {"Exile_Car_Offroad_Blue",             500, "Blue",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE03_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE03_CO.paa"}},
            {"Exile_Car_Offroad_DarkRed",         500, "Dark Red",    {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE04_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE04_CO.paa"}},
            {"Exile_Car_Offroad_BlueCustom",     500, "Blue Custom",    {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE05_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE05_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla01",     700, "Guerilla 01",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_01_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_01_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla02",     700, "Guerilla 02",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_02_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_02_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla03",     700, "Guerilla 03",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_03_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_03_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla04",     700, "Guerilla 04",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_04_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_04_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla05",     700, "Guerilla 05",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_05_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_05_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla06",     700, "Guerilla 06",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_06_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_06_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla07",     700, "Guerilla 07",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_07_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_07_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla08",     700, "Guerilla 08",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_08_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_08_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla09",     700, "Guerilla 09",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_09_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_09_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla10",     700, "Guerilla 10",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_10_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_10_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla11",     700, "Guerilla 11",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_11_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_11_CO.paa"}},
            {"Exile_Car_Offroad_Guerilla12",     700, "Guerilla 12",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_12_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_12_CO.paa"}},
            {"Exile_Car_Offroad_DarkRed",        700, "Exile Black", {"exile_assets\texture\vehicle\Exile_Offroad_Black_co.paa"}},
            {"Exile_Car_Offroad_DarkRed",        700, "Exile Light Blue", {"exile_assets\texture\vehicle\Exile_Offroad_LightBlue_co.paa"}},
            {"Exile_Car_Offroad_DarkRed",        700, "Exile Orange",{"exile_assets\texture\vehicle\Exile_Offroad_Orange_co.paa"}},
            {"Exile_Car_Offroad_DarkRed",        700, "Exile Pink",    {"exile_assets\texture\vehicle\Exile_Offroad_Pink_co.paa"}},
            {"Exile_Car_Offroad_DarkRed",        700, "Exile White",    {"exile_assets\texture\vehicle\Exile_Offroad_White_co.paa"}},
            {"Exile_Car_Offroad_DarkRed",        700, "Exile Yellow",{"exile_assets\texture\vehicle\Exile_Offroad_Yellow_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Land Rover
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_LandRover_Abstract
    {
        skins[] =
        {
            {"Exile_Car_LandRover_Red", 250, "Red", {"Exile_psycho_LRC\data\r_lr_base_co.paa","Exile_psycho_LRC\data\r_lr_special_co.paa"}},
            {"Exile_Car_LandRover_Urban", 250, "Urban", {"Exile_psycho_LRC\data\textures\lr_base_urbancamo_co.paa","Exile_psycho_LRC\data\textures\lr_special_urbancamo_co.paa"}},
            {"Exile_Car_LandRover_Green", 250, "Green", {"Exile_psycho_LRC\data\lr_acr_base_co.paa","Exile_psycho_LRC\data\lr_acr_spec_co.paa"}},
            {"Exile_Car_LandRover_Sand", 250, "Sand", {"Exile_psycho_LRC\data\lr_acr_sand_base_co.paa","Exile_psycho_LRC\data\lr_special_acr_co.paa"}},
            {"Exile_Car_LandRover_Desert", 250, "Desert", {"Exile_psycho_LRC\data\lr_acrs_base_co.paa","Exile_psycho_LRC\data\lr_special_acr_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Land Rover (Ambulance)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_LandRover_Ambulance_Abstract
    {
        skins[] =
        {
            {"Exile_Car_LandRover_Ambulance_Green", 250, "Green", {"Exile_psycho_LRC\data\lr_acr_base_co.paa","Exile_psycho_LRC\data\lr_amb_ext_co.paa","Exile_psycho_LRC\data\lr_acr_spec_co.paa"}},
            {"Exile_Car_LandRover_Ambulance_Desert", 250, "Desert", {"Exile_psycho_LRC\data\lr_acrs_base_co.paa","Exile_psycho_LRC\data\lr_amb_ext_co.paa","Exile_psycho_LRC\data\lr_special_acr_co.paa"}},
            {"Exile_Car_LandRover_Ambulance_Sand", 250, "Sand", {"Exile_psycho_LRC\data\lr_acr_sand_base_co.paa","Exile_psycho_LRC\data\lr_amb_ext_co.paa","Exile_psycho_LRC\data\lr_special_acr_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Octavius
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Octavius_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Octavius_White", 250, "White", {"exile_psycho_Octavia\Data\car_body_co.paa"}},
            {"Exile_Car_Octavius_Black", 250, "Black", {"exile_psycho_Octavia\Data\car_body_bl_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // UH-1H Huey
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Huey_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Huey_Green", 700, "Green", {"Exile_psycho_UH1H\data\uh1h_co.paa","Exile_psycho_UH1H\data\uh1h_in_co.paa","Exile_psycho_UH1H\data\default_co.paa","Exile_psycho_UH1H\data\alpha_ca.paa"}},
            {"Exile_Chopper_Huey_Desert", 700, "Desert", {"Exile_psycho_UH1H\data\uh1d_tka_co.paa","Exile_psycho_UH1H\data\uh1d_in_tka_co.paa","Exile_psycho_UH1H\data\default_co.paa","Exile_psycho_UH1H\data\alpha_ca.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // UH-1H Huey (Armed)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Chopper_Huey_Armed_Abstract
    {
        skins[] =
        {
            {"Exile_Chopper_Huey_Armed_Green", 700, "Green", {"Exile_psycho_UH1H\data\uh1h_co.paa","Exile_psycho_UH1H\data\uh1h_in_co.paa","Exile_psycho_UH1H\data\default_co.paa","Exile_psycho_UH1H\data\alpha_ca.paa"}},
            {"Exile_Chopper_Huey_Armed_Desert", 700, "Desert", {"Exile_psycho_UH1H\data\uh1d_tka_co.paa","Exile_psycho_UH1H\data\uh1d_in_tka_co.paa","Exile_psycho_UH1H\data\default_co.paa","Exile_psycho_UH1H\data\alpha_ca.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Offroad (Armed)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Offroad_Armed_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Offroad_Armed_Guerilla01",    250, "Guerilla 01", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_01_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_01_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla02",    250, "Guerilla 02", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_02_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_02_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla03",    250, "Guerilla 03", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_03_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_03_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla04",    250, "Guerilla 04", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_04_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_04_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla05",    250, "Guerilla 05", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_05_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_05_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla06",    250, "Guerilla 06", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_06_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_06_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla07",    250, "Guerilla 07", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_07_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_07_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla08",    250, "Guerilla 08", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_08_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_08_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla09",    250, "Guerilla 09", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_09_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_09_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla10",    250, "Guerilla 10", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_10_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_10_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla11",    250, "Guerilla 11", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_11_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_11_CO.paa"}},
            {"Exile_Car_Offroad_Armed_Guerilla12",    250, "Guerilla 12", {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_12_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_12_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Offroad (Repair)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Offroad_Repair_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Offroad_Repair_Civillian",        150, "Civillian",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\Offroad_01_ext_repair_CIV_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\Offroad_01_ext_repair_CIV_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Red",            150, "Red",            {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Beige",            150, "Beige",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE01_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE01_CO.paa"}},
            {"Exile_Car_Offroad_Repair_White",            150, "White",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE02_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE02_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Blue",            150, "Blue",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE03_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE03_CO.paa"}},
            {"Exile_Car_Offroad_Repair_DarkRed",        150, "DarkRed",        {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE04_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE04_CO.paa"}},
            {"Exile_Car_Offroad_Repair_BlueCustom",        150, "BlueCustom",    {"\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE05_CO.paa","\a3\Soft_F\Offroad_01\data\Offroad_01_ext_BASE05_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla01",        250, "Guerilla 01",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_01_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_01_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla02",        250, "Guerilla 02",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_02_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_02_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla03",        250, "Guerilla 03",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_03_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_03_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla04",        250, "Guerilla 04",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_04_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_04_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla05",        250, "Guerilla 05",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_05_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_05_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla06",        250, "Guerilla 06",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_06_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_06_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla07",        250, "Guerilla 07",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_07_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_07_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla08",        250, "Guerilla 08",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_08_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_08_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla09",        250, "Guerilla 09",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_09_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_09_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla10",        250, "Guerilla 10",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_10_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_10_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla11",        250, "Guerilla 11",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_11_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_11_CO.paa"}},
            {"Exile_Car_Offroad_Repair_Guerilla12",        250, "Guerilla 12",    {"\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_12_CO.paa","\A3\Soft_F_Bootcamp\Offroad_01\Data\offroad_01_ext_IG_12_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // SUV
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_SUV_Abstract
    {
        skins[] =
        {
            {"Exile_Car_SUV_Red",         100, "Red",                    {"\A3\Soft_F_Gamma\SUV_01\Data\SUV_01_ext_CO.paa"}},
            {"Exile_Car_SUV_Black",     150, "Black",                {"\A3\Soft_F_Gamma\SUV_01\Data\SUV_01_ext_02_CO.paa"}},
            {"Exile_Car_SUV_Grey",         100, "Grey",                {"\A3\Soft_F_Gamma\SUV_01\Data\SUV_01_ext_03_CO.paa"}},
            {"Exile_Car_SUV_Orange",     100, "Orange",                {"\A3\Soft_F_Gamma\SUV_01\Data\SUV_01_ext_04_CO.paa"}},
            {"Exile_Car_SUV_Black",     150, "Snow Camo",            {"exile_assets\texture\vehicle\Exile_SUV_Snow_co.paa"}},
            {"Exile_Car_SUV_Black",     150, "Leaf Camo",            {"exile_assets\texture\vehicle\Exile_SUV_Leaf_Light_co.paa"}},
            {"Exile_Car_SUV_Black",     150, "Leaf Camo (Dark)",    {"exile_assets\texture\vehicle\Exile_SUV_Leaf_Dark_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // SUV XL
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_SUVXL_Abstract
    {
        skins[] =
        {
            {"Exile_Car_SUVXL_Black", 100, "Black", {"\Exile_psycho_SUV_a3\Data\suv_body_co.paa"}},
            {"Exile_Car_SUVXL_Black", 150, "Blue White", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_bluewhite.paa"}},
            {"Exile_Car_SUVXL_Black", 150, "Charcoal", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_charcoal_co.paa"}},
            {"Exile_Car_SUVXL_Black", 150, "Orange", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_orange_co.paa"}},
            {"Exile_Car_SUVXL_Black", 200, "Hello Kitty", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_Pink_hello_co.paa"}},
            {"Exile_Car_SUVXL_Black", 150, "Red", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_red_co.paa"}},
            {"Exile_Car_SUVXL_Black", 150, "Silver", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_silver_co.paa"}},
            {"Exile_Car_SUVXL_Black", 100, "White", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_white_co.paa"}},
            {"Exile_Car_SUVXL_Black", 150, "Yellow", {"\Exile_psycho_SUV_a3\Data\textures\suv_body_yellow_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Van
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Van_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Van_Black",            100, "Black",        {"\A3\soft_f_gamma\van_01\Data\Van_01_ext_black_CO.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa"}},
            {"Exile_Car_Van_White",            100, "White",        {"\A3\soft_f_gamma\van_01\Data\van_01_ext_CO.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa"}},
            {"Exile_Car_Van_Red",            100, "Red",            {"\A3\soft_f_gamma\van_01\Data\Van_01_ext_red_CO.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa"}},
            {"Exile_Car_Van_Guerilla01",    150, "Guerilla 01",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_01_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_01_CO.paa"}},
            {"Exile_Car_Van_Guerilla02",    150, "Guerilla 02",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_02_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_02_CO.paa"}},
            {"Exile_Car_Van_Guerilla03",    150, "Guerilla 03",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_03_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_03_CO.paa"}},
            {"Exile_Car_Van_Guerilla04",    150, "Guerilla 04",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_04_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_04_CO.paa"}},
            {"Exile_Car_Van_Guerilla05",    150, "Guerilla 05",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_05_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_05_CO.paa"}},
            {"Exile_Car_Van_Guerilla06",    150, "Guerilla 06",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_06_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_06_CO.paa"}},
            {"Exile_Car_Van_Guerilla07",    150, "Guerilla 07",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_07_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_07_CO.paa"}},
            {"Exile_Car_Van_Guerilla08",    150, "Guerilla 08",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_08_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_08_CO.paa"}},
            {"Exile_Car_Van_Black",    150, "Brown",    {"\A3\Soft_F_Exp\Van_01\Data\Van_01_ext_brn_co.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa","\A3\Soft_F_Exp\Van_01\Data\Van_01_int_base_2_CO.paa"}},
            {"Exile_Car_Van_Black",    150, "Olive",    {"\A3\Soft_F_Exp\Van_01\Data\Van_01_ext_oli_co.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa","\A3\Soft_F_Exp\Van_01\Data\Van_01_int_base_3_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Van (Box)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Van_Box_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Van_Box_Black",                100, "Black",        {"\A3\soft_f_gamma\van_01\Data\Van_01_ext_black_CO.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa"}},
            {"Exile_Car_Van_Box_White",                100, "White",        {"\A3\soft_f_gamma\van_01\Data\van_01_ext_CO.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa"}},
            {"Exile_Car_Van_Box_Red",                100, "Red",            {"\A3\soft_f_gamma\van_01\Data\Van_01_ext_red_CO.paa","\A3\soft_f_gamma\van_01\Data\van_01_adds_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla01",        150, "Guerilla 01",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_01_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_01_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla02",        150, "Guerilla 02",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_02_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_02_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla03",        150, "Guerilla 03",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_03_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_03_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla04",        150, "Guerilla 04",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_04_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_04_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla05",        150, "Guerilla 05",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_05_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_05_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla06",        150, "Guerilla 06",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_06_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_06_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla07",        150, "Guerilla 07",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_07_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_07_CO.paa"}},
            {"Exile_Car_Van_Box_Guerilla08",        150, "Guerilla 08",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_08_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_adds_IG_08_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Van (Fuel)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Van_Fuel_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Van_Fuel_Black",            100, "Black",        {"\A3\soft_f_gamma\van_01\Data\Van_01_ext_black_CO.paa","\A3\soft_f_gamma\Van_01\Data\Van_01_tank_CO.paa"}},
            {"Exile_Car_Van_Fuel_White",            100, "White",        {"\A3\soft_f_gamma\van_01\Data\van_01_ext_CO.paa","\A3\soft_f_gamma\Van_01\Data\Van_01_tank_CO.paa"}},
            {"Exile_Car_Van_Fuel_Red",                100, "Red",            {"\A3\soft_f_gamma\van_01\Data\Van_01_ext_red_CO.paa","\A3\soft_f_gamma\Van_01\Data\Van_01_tank_CO.paa"}},
            {"Exile_Car_Van_Fuel_Guerilla01",        150, "Guerilla 01",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_01_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_tank_IG_01_CO.paa"}},
            {"Exile_Car_Van_Fuel_Guerilla02",        150, "Guerilla 02",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_02_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_tank_IG_02_CO.paa"}},
            {"Exile_Car_Van_Fuel_Guerilla03",        150, "Guerilla 03",    {"\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_ext_IG_03_CO.paa","\A3\Soft_F_Bootcamp\Van_01\Data\Van_01_tank_IG_03_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Tempest
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Tempest_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Tempest",         200, "Green Hex",    {"\A3\Soft_F_Exp\Truck_03\Data\Truck_03_ext01_ghex_CO.paa","\A3\Soft_F_Exp\Truck_03\Data\Truck_03_ext02_ghex_CO.paa","\A3\Soft_F_Exp\Truck_03\Data\Truck_03_cargo_ghex_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Ikarus
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Ikarus_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Ikarus_Blue",         200, "Blue",    {"Exile_psycho_Ikarus\Data\bus_exterior_co.paa"}},
            {"Exile_Car_Ikarus_Red",         200, "Red",        {"Exile_psycho_Ikarus\Data\bus_exterior_eciv_co.paa"}},
            {"Exile_Car_Ikarus_Party",         500, "Party",    {"Exile_psycho_Ikarus\Data\bus_exterior_eciv_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Ural (Open)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Ural_Open_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Ural_Open_Blue",            300, "Blue",        {"Exile_psycho_Ural\data\Ural_kabina_civil_co.paa","Exile_psycho_Ural\data\ural_plachta_civil_co.paa"}},
            {"Exile_Car_Ural_Open_Yellow",            300, "Yellow",        {"Exile_psycho_Ural\data\ural_kabina_civ1_co.paa","Exile_psycho_Ural\data\ural_plachta_civ1_co.paa"}},
            {"Exile_Car_Ural_Open_Worker",            300, "Worker",        {"Exile_psycho_Ural\data\ural_kabina_civ2_co.paa","Exile_psycho_Ural\data\Ural_plachta_civil_co.paa"}},
            {"Exile_Car_Ural_Open_Military",        300, "Military",    {"Exile_psycho_Ural\data\ural_kabina_khk_co.paa","Exile_psycho_Ural\data\ural_plachta_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Ural (Covered)
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Ural_Covered_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Ural_Covered_Blue",            300, "Blue",        {"Exile_psycho_Ural\data\ural_kabina_civil_co.paa","Exile_psycho_Ural\data\ural_plachta_civil_co.paa"}},
            {"Exile_Car_Ural_Covered_Yellow",        300, "Yellow",        {"Exile_psycho_Ural\data\ural_kabina_civ1_co.paa","Exile_psycho_Ural\data\ural_plachta_civ1_co.paa"}},
            {"Exile_Car_Ural_Covered_Worker",        300, "Worker",        {"Exile_psycho_Ural\data\ural_kabina_civ2_co.paa","Exile_psycho_Ural\data\Ural_plachta_civil_co.paa"}},
            {"Exile_Car_Ural_Covered_Military",        300, "Military",    {"Exile_psycho_Ural\data\ural_kabina_khk_co.paa","Exile_psycho_Ural\data\ural_plachta_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Lada
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Lada_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Lada_Green",         100, "Green",    {"exile_psycho_lada\data\lada_eciv1_co.paa","exile_psycho_lada\data\Lada_glass_ECIV1_CA.paa"}},
            {"Exile_Car_Lada_Taxi",         100, "Taxi",    {"exile_psycho_lada\data\Lada_red_CO.paa"}},
            {"Exile_Car_Lada_Red",             100, "Red",        {"exile_psycho_lada\data\Lada_red_CO.paa"}},
            {"Exile_Car_Lada_Hipster",         100, "Hipster",    {"exile_psycho_lada\data\lada_eciv2_co.paa","exile_psycho_lada\data\Lada_glass_ECIV2_CA.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Volha
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Volha_Abstract
    {
        skins[] =
        {
            {"Exile_Car_Volha_Blue",         100, "Blue",    {"Exile_psycho_Gaz_volha\data\Volha_ECIV_CO.paa"}},
            {"Exile_Car_Volha_White",         100, "White",    {"Exile_psycho_Gaz_volha\data\Volha_Gray_ECIV_CO.paa"}},
            {"Exile_Car_Volha_Black",        100, "Black",    {"Exile_psycho_Gaz_volha\data\Volha_Black_ECIV_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // HUNTER
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Hunter_Abstract
    {
        skins[] =
        {

            {"Exile_Car_Hunter",        1000, "Exile White Edition",    {"exile_assets\texture\vehicle\Exile_Hunter_Snow_co.paa","exile_assets\texture\vehicle\Exile_Hunter_Snow_Back_co.paa"}},
            {"Exile_Car_Hunter",        1000, "Exile Hex",                {"exile_assets\texture\vehicle\Exile_Hunter_Hex_co.paa","exile_assets\texture\vehicle\Exile_Hunter_Black_Back_co.paa"}},
            {"Exile_Car_Hunter",        1000, "Exile Black",            {"exile_assets\texture\vehicle\Exile_Hunter_Black_co.paa","exile_assets\texture\vehicle\Exile_Hunter_Black_Back_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // IFRIT
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Ifrit_Abstract
    {
        skins[] =
        {

            {"Exile_Car_Ifrit",        1000, "Green Hex",    {"\A3\Soft_F_Exp\MRAP_02\data\MRAP_02_ext_01_ghex_CO.paa","\A3\Soft_F_Exp\MRAP_02\data\MRAP_02_ext_02_ghex_CO.paa","\A3\Data_F_Exp\Vehicles\Turret_ghex_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // HMMWV
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_HMMWV_M2_Abstract
    {
        skins[] =
        {

            {"Exile_Car_HMMWV_M2_Green",        1000, "Green",    {"Exile_psycho_hmmw\data\hmmwv_body_co.paa"}},
            {"Exile_Car_HMMWV_M2_Desert",        1000, "Desert",    {"Exile_psycho_hmmw\data\des\hmmwv_body_co.paa"}}
        };
    };

    class Exile_Car_HMMWV_M134_Abstract
    {
        skins[] =
        {

            {"Exile_Car_HMMWV_M134_Green",        1000, "Green",    {"Exile_psycho_hmmw\data\hmmwv_body_co.paa"}},
            {"Exile_Car_HMMWV_M134_Desert",        1000, "Desert",    {"Exile_psycho_hmmw\data\des\hmmwv_body_co.paa"}}
        };
    };

    class Exile_Car_HMMWV_MEV_Abstract
    {
        skins[] =
        {

            {"Exile_Car_HMMWV_MEV_Green",        1000, "Green",    {"Exile_psycho_hmmw\data\hmmwv_body_cm.paa"}},
            {"Exile_Car_HMMWV_MEV_Desert",        1000, "Desert",    {"Exile_psycho_hmmw\data\des\hmmwv_body_cm.paa"}}
        };
    };

    class Exile_Car_HMMWV_UNA_Abstract
    {
        skins[] =
        {

            {"Exile_Car_HMMWV_UNA_Green",        1000, "Green",    {"Exile_psycho_hmmw\data\hmmwv_body_co.paa"}},
            {"Exile_Car_HMMWV_UNA_Desert",        1000, "Desert",    {"Exile_psycho_hmmw\data\des\hmmwv_body_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // BTR40
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_BTR40_MG_Abstract
    {
        skins[] =
        {

            {"Exile_Car_BTR40_MG_Green",        1000, "Green",    {"exile_psycho_btr40\data\btr40ext_co.paa"}},
            {"Exile_Car_BTR40_MG_Camo",            1000, "Camo",    {"exile_psycho_btr40\data\btr40extcamo_co.paa"}}
        };
    };

    class Exile_Car_BTR40_Abstract
    {
        skins[] =
        {

            {"Exile_Car_BTR40_Green",            1000, "Green",    {"exile_psycho_btr40\data\btr40ext_co.paa"}},
            {"Exile_Car_BTR40_Camo",            1000, "Camo",    {"exile_psycho_btr40\data\btr40extcamo_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Golf
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Car_Golf_Abstract
    {
        skins[] =
        {

            {"Exile_Car_Golf_Red",                1000, "Red",    {"exile_psycho_VWGolf\data\vwgolf_body_co.paa"}},
            {"Exile_Car_Golf_Black",            1000, "Black",    {"exile_psycho_VWGolf\data\texture\black_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // AN-2
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Plane_AN2_Abstract
    {
        skins[] =
        {
            {"Exile_Plane_AN2_Green", 700, "Green", {"Exile_psycho_An2\data\an2_1_co.paa","Exile_psycho_An2\data\an2_2_co.paa","Exile_psycho_An2\data\an2_wings_co.paa"}},
            {"Exile_Plane_AN2_White", 700, "Red, White & Blue", {"Exile_psycho_An2\data\an2_1_a_co.paa",
        "Exile_psycho_An2\data\an2_2_a_co.paa","Exile_psycho_An2\data\an2_wings_a_co.paa"}},
            {"Exile_Plane_AN2_Stripe", 700, "Green Stripe", {"Exile_psycho_An2\data\an2_1_b_co.paa","Exile_psycho_An2\data\an2_2_b_co.paa","Exile_psycho_An2\data\an2_wings_b_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // RHIB
    ///////////////////////////////////////////////////////////////////////////////
    class B_G_Boat_Transport_02_F
    {
        skins[] =
        {
            {"Exile_Boat_RHIB",        150, "Blue", {"\A3\Boat_F_Exp\Boat_Transport_02\Data\Boat_Transport_02_exterior_civilian_CO.paa","\A3\Boat_F_Exp\Boat_Transport_02\Data\Boat_Transport_02_interior_2_civilian_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Water Scooter
    ///////////////////////////////////////////////////////////////////////////////
    class Exile_Boat_WaterScooter_Abstract
    {
        skins[] =
        {
            {"Exile_Boat_WaterScooter",        150, "Blue", {"\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_Blue_co.paa","\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_VP_Blue_co.paa"}},
            {"Exile_Boat_WaterScooter",        150, "Grey", {"\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_Grey_co.paa","\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_VP_Grey_co.paa"}},
            {"Exile_Boat_WaterScooter",        150, "Lime", {"\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_Lime_co.paa","\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_VP_Lime_co.paa"}},
            {"Exile_Boat_WaterScooter",        150, "Red", {"\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_Red_CO.paa","\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_VP_CO.paa"}},
            {"Exile_Boat_WaterScooter",        150, "White", {"\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_CO.paa","\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_VP_CO.paa"}},
            {"Exile_Boat_WaterScooter",        150, "Yellow", {"\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_Yellow_CO.paa","\A3\Boat_F_Exp\Scooter_Transport_01\Data\Scooter_Transport_01_VP_Yellow_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Ceasar BTT
    ///////////////////////////////////////////////////////////////////////////////
    class C_Plane_Civil_01_F
    {
        skins[] =
        {
            {"Exile_Plane_Ceasar",        150, "Racing (Tan Interior)", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_Racer_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_Racer_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_tan_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_tan_co.paa"}},
            {"Exile_Plane_Ceasar",        150, "Racing", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_Racer_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_Racer_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_co.paa"}},
            {"Exile_Plane_Ceasar",        150, "Red Line (Tan Interior)", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_RedLine_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_RedLine_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_tan_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_tan_co.paa"}},
            {"Exile_Plane_Ceasar",        150, "Tribal (Tan Interior)", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_Tribal_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_Tribal_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_tan_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_tan_co.paa"}},
            {"Exile_Plane_Ceasar",        150, "Tribal", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_Tribal_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_Tribal_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_co.paa"}},
            {"Exile_Plane_Ceasar",        150, "Blue Wave (Tan Interior)", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_Wave_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_Wave_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_tan_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_tan_co.paa"}},
            {"Exile_Plane_Ceasar",        150, "Blue Wave", {"A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_01_Wave_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_ext_02_Wave_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_01_co.paa","A3\Air_F_Exp\Plane_Civil_01\Data\btt_int_02_co.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // V-44 X Blackfish (Infantry Transport)
    ///////////////////////////////////////////////////////////////////////////////
    class B_T_VTOL_01_infantry_F
    {
        skins[] =
        {
            {"Exile_Plane_BlackfishInfantry",        150, "Blue", {"\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT01_blue_CO.paa","\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT02_blue_CO.paa","\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT03_blue_CO.paa","\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT04_blue_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // V-44 X Blackfish (Vehicle Transport)
    ///////////////////////////////////////////////////////////////////////////////
    class B_T_VTOL_01_vehicle_F
    {
        skins[] =
        {
            {"Exile_Plane_BlackfishVehicle",        150, "Blue", {"\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT01_blue_CO.paa","\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT02_blue_CO.paa","\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT03_blue_CO.paa","\A3\Air_F_Exp\VTOL_01\Data\VTOL_01_EXT04_blue_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Prowler (Light)
    ///////////////////////////////////////////////////////////////////////////////
    class B_CTRG_LSV_01_light_F
    {
        skins[] =
        {
            {"Exile_Car_ProwlerLight",        150, "Black", {"\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_01_black_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_02_black_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_03_black_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_Adds_black_CO.paa"}},
            {"Exile_Car_ProwlerLight",        150, "Dazzle", {"\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_01_dazzle_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_02_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_03_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_Adds_olive_CO.paa"}},
            {"Exile_Car_ProwlerLight",        150, "Sand", {"\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_01_sand_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_02_sand_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_03_sand_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_Adds_sand_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Prowler (Unarmed)
    ///////////////////////////////////////////////////////////////////////////////
    class B_T_LSV_01_unarmed_black_F
    {
        skins[] =
        {
            {"Exile_Car_ProwlerUnarmed",        150, "Olive", {"\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_01_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_02_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_03_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_Adds_olive_CO.paa"}},
            {"Exile_Car_ProwlerUnarmed",        150, "Dazzle", {"\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_01_dazzle_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_02_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_03_olive_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_Adds_olive_CO.paa"}},
            {"Exile_Car_ProwlerUnarmed",        150, "Sand", {"\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_01_sand_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_02_sand_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_03_sand_CO.paa","\A3\Soft_F_Exp\LSV_01\Data\NATO_LSV_Adds_sand_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // Qilin (Unarmed)
    ///////////////////////////////////////////////////////////////////////////////
    class O_T_LSV_02_unarmed_black_F
    {
        skins[] =
        {
            {"Exile_Car_QilinUnarmed",        150, "Arid", {"\A3\Soft_F_Exp\LSV_02\Data\CSAT_LSV_01_arid_CO.paa","\A3\Soft_F_Exp\LSV_02\Data\CSAT_LSV_02_arid_CO.paa","\A3\Soft_F_Exp\LSV_02\Data\CSAT_LSV_03_arid_CO.paa"}},
            {"Exile_Car_QilinUnarmed",        150, "Green Hex", {"\A3\Soft_F_Exp\LSV_02\Data\CSAT_LSV_01_ghex_CO.paa","\A3\Soft_F_Exp\LSV_02\Data\CSAT_LSV_02_ghex_CO.paa","\A3\Soft_F_Exp\LSV_02\Data\CSAT_LSV_03_ghex_CO.paa"}}
        };
    };

    ///////////////////////////////////////////////////////////////////////////////
    // MB 4WD
    ///////////////////////////////////////////////////////////////////////////////
    class C_Offroad_02_unarmed_orange_F
    {
        skins[] =
        {
            {"Exile_Car_MB4WD",        150, "Black", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_black_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_black_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_black_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_black_co.paa"}},
            {"Exile_Car_MB4WD",        150, "Blue", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_blue_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_blue_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_blue_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_blue_co.paa"}},
            {"Exile_Car_MB4WD",        150, "Brown", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_brown_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_brown_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_brown_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_brown_co.paa"}},
            {"Exile_Car_MB4WD",        150, "Green", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_green_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_green_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_green_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_green_co.paa"}},
            {"Exile_Car_MB4WD",        150, "Olive", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_olive_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_olive_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_olive_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_olive_co.paa"}},
            {"Exile_Car_MB4WD",        150, "Red", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_red_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_red_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_red_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_red_co.paa"}},
            {"Exile_Car_MB4WD",        150, "White", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_white_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_white_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_white_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_white_co.paa"}}
        };
    };


     ///////////////////////////////////////////////////////////////////////////////
     // ARMA STRIDER HMG
     ///////////////////////////////////////////////////////////////////////////////

    // SK
     class MRAP_03_hmg_base_F
     {
         skins[] =
         {
             
             {"I_MRAP_03_hmg_F",        1000, "NATO",    {"\A3\soft_f_beta\mrap_03\data\mrap_03_ext_co.paa","\A3\data_f\vehicles\turret_co.paa"}},
             {"I_MRAP_03_hmg_F",        1000, "HEX",    {"A3\soft_f_beta\mrap_03\data\mrap_03_ext_indp_co.paa", "A3\data_f\vehicles\turret_indp_co.paa"}}
         };
     };

 

    class I_C_Offroad_02_unarmed_F
    {
        skins[] =
        {
            {"Exile_Car_MB4WDOpen",        150, "Black", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_black_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_black_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_black_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_black_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "Blue", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_blue_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_blue_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_blue_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_blue_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "Brown", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_brown_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_brown_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_brown_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_brown_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "Green", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_green_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_green_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_green_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_green_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "Orange", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_orange_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_orange_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_orange_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_orange_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "Red", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_red_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_red_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_red_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_red_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "White", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_white_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_white_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_white_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_white_co.paa"}},
            {"Exile_Car_MB4WDOpen",        150, "Olive", {"\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_olive_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_ext_olive_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_olive_co.paa","\A3\Soft_F_Exp\Offroad_02\Data\offroad_02_int_olive_co.paa"}}
        };
    };
};

class CfgVehicleTransport
{
    class Exile_Container_SupplyBox
    {
        vehicles[] = {"Exile_Car_Van_Abstract", "Exile_Car_Offroad_Abstract", "Exile_Car_Zamak_Abstract", "Exile_Car_HEMMT_Abstract", "Exile_Car_Tempest_Abstract"};

        class Exile_Car_Van_Abstract
        {
            attachPosition[] = {0, -1.1, 0.2};
            cargoIndizes[] = {2, 3, 4, 5, 6, 7};
            detachPosition[] = {0, -4.4};
        };

        class Exile_Car_Offroad_Abstract
        {
            attachPosition[] = {0, -1.6, 0.4};
            cargoIndizes[] = {1, 2, 3, 4};
            detachPosition[] = {0, -4};
        };

        class Exile_Car_Zamak_Abstract
        {
            attachPosition[] = {0.03, 0.3, 0};
            cargoIndizes[] = {2, 3, 4, 5, 6, 7};
            detachPosition[] = {0.03, -4.8};
        };

        class Exile_Car_HEMMT_Abstract
        {
            attachPosition[] = {0.05, -0.1, 0.3};
            cargoIndizes[] = {1, 2, 8, 9};
            detachPosition[] = {0.05, -6.1};
        };

        class Exile_Car_Tempest_Abstract
        {
            attachPosition[] = {0.08, -0.85, 0.4};
            cargoIndizes[] = {1, 6, 7, 9};
            detachPosition[] = {0.08, -6};
        };
    };
};

class CfgVirtualGarage
{
    /*
        Enable or disable virtual garage on the server
        Options:
            0: Disable virtual garage
            1: Enable virtual garage
    */
    enableVirtualGarage = 1;    
    
    /*
        Enables or disables the ability to access virtual garage while in combat
        Options:
            0: Players cannot access virtual garage while they are in combat
            1: Players can access virtual garage when they are in combat
    */
    canAccessGarageInCombat = 0;
    
    /*
        When enabled, this will dump any items and money from the vehicle onto the ground where the car was.
        Options:
            0: Do not clear inventory and money
            1: Clear inventory and money
    */
    clearInventoryOnStore = 1;
    
    /*
        The maximum number of vehicles that can be stored in the VG for that territory.
        Use -1 to disable the ability to store vehicles at that level.
        Make sure to have the same number of levels here as you do in CfgTerritories!
    */
    numberOfVehicles[] =
    {
        -1,            // Level 1
        5,             // Level 2
        8,             // Level 3
        11,         // Level 4
        13,         // Level 5
        15,         // Level 6
        18,         // Level 7
        21,         // Level 8
        25,         // Level 9
        28             // Level 10
    };
    
    /*
        The allowed types of vehicles that can be stored in the garage    
        Available Types: "Car", "Tank", "Plane", "Air", "Ship", "Submarine"
    */
    allowedVehicleTypes[] = {"Car","Tank","Plane","Air","Ship","Submarine"};
};


class CfgXM8
{
    class settings
    {
        controlID = 4070;
        appID = "App01";
        title = "Settings";
    };
    
    class healthScanner
    {
        controlID = 4120;
        appID = "App02";
        title = "Health Scanner";
    };
    
    class slothMachine
    {
        controlID = 4140;
        appID = "App03";
        title = "Sloth Machine";
    };
};
/*
    XM8 Extra apps, the Exile way of doing it
    
    Here is an example app layout:
    class XM8_App01_Button: RscExileXM8AppButton1x1
    {
        textureNoShortcut = "";      // Path to picture. This can be via mission file or client side PBO
        text = "";                    // The name of the app to be display on the button
        onButtonClick = "";            // The code to fire when the app is clicked
        resource = "";                // The name of the resource to load for the app, leave as an empty string if you just want to run code without a GUI, like BOOM or spawning a bike
    };
*/

class XM8_App01_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "\exile_assets\texture\ui\xm8_app_settings_ca.paa";
    text = "Settings";
    onButtonClick = "['settings', 0] call ExileClient_gui_xm8_slide";
    resource = "XM8SlideSettings";
};

class XM8_App02_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "\exile_assets\texture\ui\xm8_app_health_scanner_ca.paa";
    text = "Health Scanner";
    onButtonClick = "['healthScanner', 0] call ExileClient_gui_xm8_slide";
    resource = "XM8SlideHealthScanner";
};

class XM8_App03_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "\exile_assets\texture\ui\xm8_app_slothMachine_ca.paa";
    text = "Sloth Machine";
    onButtonClick = "['slothMachine', 0] call ExileClient_gui_xm8_slide";
    resource = "XM8SlideSlothMachine";
};

class XM8_App04_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "\exile_assets\texture\ui\xm8_app_boom_ca.paa";
    text = "BOOM!";
    onButtonClick = "call ExileClient_system_breaching_detonate";
    resource = "";
};

class XM8_App05_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App06_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App07_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App08_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App09_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App10_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App11_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App12_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App13_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

class XM8_App14_Button: RscExileXM8AppButton1x1
{
    textureNoShortcut = "";
    text = "";
    onButtonClick = "";
    resource = "";
};

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//                                               BELOW IS WHERE ALL THE XM8 APP RESOURCES CAN GO
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
class XM8SlideSettings: RscExileXM8Slide
{
    idc = 4070;
    class Controls
    {
        class GoBackButton: RscExileXM8ButtonMenu
        {
            idc = 4071;
            text = "GO BACK";
            x = (30 - 3) * (0.025);
            y = (19 - 2) * (0.04);
            w = 6 * (0.025);
            h = 1 * (0.04);
            onButtonClick = "['extraApps', 1] call ExileClient_gui_xm8_slide";
        };

        class 8GDropDown: RscExileXM8Combo
        {
            idc = 4072;
            x = (5 - 3) * (0.025);
            y = (5 - 2) * (0.04);
            w = 7 * (0.025);
            h = 1 * (0.04);
            onLBSelChanged = "_this call ExileClient_gui_xm8_slide_settings_event_on8GSelectionChanged";
        };

        class 8GLabel: RscExileXM8Text
        {
            idc = -1;
            text = "Show my device in global 8G network.";
            x = (13 - 3) * (0.025);
            y = (5 - 2) * (0.04);
            w = 22 * (0.025);
            h = 1 * (0.04);
            shadow = 0;
        };

        class SoundDropDown: RscExileXM8Combo
        {
            idc = 4075;
            x = (5 - 3) * (0.025);
            y = (7 - 2) * (0.04);
            w = 7 * (0.025);
            h = 1 * (0.04);
            onLBSelChanged = "_this call ExileClient_gui_xm8_slide_settings_event_onSoundSelectionChanged";
        };

        class SoundLabel: RscExileXM8Text
        {
            idc = -1;
            text = "Play a beep sound on notifications.";
            x = (13 - 3) * (0.025);
            y = (7 - 2) * (0.04);
            w = 22 * (0.025);
            h = 1 * (0.04);
            shadow = 0;
        };

        class PartyEspDropDown: RscExileXM8Combo
        {
            idc = 4076;
            x = (5 - 3) * (0.025);
            y = (9 - 2) * (0.04);
            w = 7 * (0.025);
            h = 1 * (0.04);
            onLBSelChanged = "_this call ExileClient_gui_xm8_slide_settings_event_onPartyEspSelectionChanged";
        };

        class PartyEspLabel: RscExileXM8Text
        {
            idc = -1;
            text = "Color of 3D party icons and name tags.";
            x = (13 - 3) * (0.025);
            y = (9 - 2) * (0.04);
            w = 22 * (0.025);
            h = 1 * (0.04);
            shadow = 0;
        };

        class PartyEspSlider: RscExileXM8XSliderH
        {
            idc = 4078;
            x = (5 - 3) * (0.025);
            y = (11 - 2) * (0.04);
            w = 7 * (0.025);
            h = 1 * (0.04);
            onSliderPosChanged = "_this call ExileClient_gui_xm8_slide_settings_event_onPartyEspSliderChanged";
        };

        class PartyEspSliderLabel: RscExileXM8Text
        {
            idc = -1;
            text = "Opacity of 3D party icons and name tags.";
            x = (13 - 3) * (0.025);
            y = (11 - 2) * (0.04);
            w = 22 * (0.025);
            h = 1 * (0.04);
            shadow = 0;
        };

        class PartyMarkerSlider: RscExileXM8XSliderH
        {
            idc = 4079;
            x = (5 - 3) * (0.025);
            y = (13 - 2) * (0.04);
            w = 7 * (0.025);
            h = 1 * (0.04);
            onSliderPosChanged = "_this call ExileClient_gui_xm8_slide_settings_event_onPartyMarkerSliderChanged";
        };

        class PartyMarkerSliderLabel: RscExileXM8Text
        {
            idc = -1;
            text = "Opacity of 3D party markers.";
            x = (13 - 3) * (0.025);
            y = (13 - 2) * (0.04);
            w = 22 * (0.025);
            h = 1 * (0.04);
            shadow = 0;
        };

        class StreamModeDropDown: RscExileXM8Combo
        {
            idc = 4077;
            x = (5 - 3) * (0.025);
            y = (15 - 2) * (0.04);
            w = 7 * (0.025);
            h = 1 * (0.04);
            onLBSelChanged = "_this call ExileClient_gui_xm8_slide_settings_event_onStreamModeSelectionChanged";
        };

        class StreamModeLabel: RscExileXM8Text
        {
            idc = -1;
            text = "Masquerade PIN codes. Perfect for streamers.";
            x = (13 - 3) * (0.025);
            y = (15 - 2) * (0.04);
            w = 22 * (0.025);
            h = 1 * (0.04);
            shadow = 0;
        };
    };
};

class XM8SlideHealthScanner: RscExileXM8Slide
{
    idc = 4120;
    class Controls
    {
        class GoBackButton: RscExileXM8ButtonMenu
        {
            idc = 4122;
            text = "GO BACK";
            x = (30 - 3) * (0.025);
            y = (19 - 2) * (0.04);
            w = 6 * (0.025);
            h = 1 * (0.04);
            onButtonClick = "['extraApps', 1] call ExileClient_gui_xm8_slide";
        };

        class HealthInfoControlGroup: RscExileXM8ControlsGroupNoHScrollbars
        {
            idc = -1;
            x = (5 - 3) * (0.025);
            y = (5 - 2) * (0.04);
            w = 30 * (0.025);
            h = 15 * (0.04);
            colorBackground[] = {0,0,0,0.25};

            class controls
            {
                class HealthInfo: RscExileXM8StructuredText
                {
                    idc = 4121;
                    x = 0;
                    y = 0;
                    w = 29 * (0.025); // minus 1!
                    h = 15 * (0.04);
                };
            };
        };
    };
};

class XM8SlideSlothMachine: RscExileXM8Slide
{
    idc = 4140;
    class Controls
    {
        class Background: RscExileXM8PictureKeepAspect
        {
            idc = -1;
            text = "\exile_assets\texture\ui\slothMachine\xm8_slothMachineBackground.paa";
            x = -3.1 * (0.025) + (0);
            y = -6 * (0.04) + (0);
            w = 40 * (0.025);
            h = 33 * (0.04);
        };
        
        class XM8SlothMachineSpinButton: RscExileXM8PictureButton
        {
            idc = 4141;
            style = 0x30;
            x = 14.3 * (0.025) + (0);
            y = 15.9 * (0.04) + (0);
            w = 5.7 * (0.025);
            h = 2 * (0.04);
            text = "\exile_assets\texture\ui\slothMachine\button_off_ca.paa";
            action = "[] call ExileClient_gui_xm8_slide_slothMachine_event_onSpinButtonClick;";
        };
        
        class GoBackButton: RscExileXM8ButtonMenu
        {
            idc = 4148;
            text = "GO BACK";
            x = (30 - 3) * (0.025);
            y = (19 - 2) * (0.04);
            w = 6 * (0.025);
            h = 1 * (0.04);
            sizeEx = .9 * (0.04);
            onButtonClick = "['extraApps', 1] call ExileClient_gui_xm8_slide";
        };
        
        class PopTabsLabel: RscExileXM8StructuredText
        {
            idc = 4142;
            text = "<t align='center'><t color='#e14141'><img image='\exile_assets\texture\ui\poptab_inline_ca.paa' size='1' shadow='true' /></t>";
            x = 6.5 * (0.025) + (0);
            y = 13 * (0.04) + (0);
            w = 6 * (0.025);
            h = 2 * (0.04);
        };
        
        class JackpotLabel: RscExileXM8StructuredText
        {
            idc = 4143;
            text = "<t align='center'><t color='#e14141'></t>";
            x = 14 * (0.025) + (0);
            y = 13 * (0.04) + (0);
            w = 6 * (0.025);
            h = 2 * (0.04);
        };
        
        class WinningsLabel: RscExileXM8StructuredText
        {
            idc = 4144;
            text = "<t align='center'><t color='#e14141'>0</t>";
            x = 21.5 * (0.025) + (0);
            y = 13 * (0.04) + (0);
            w = 6 * (0.025);
            h = 2 * (0.04);
        };
        
        class Symbol01: RscExileXM8PictureKeepAspect
        {
            idc = 4145;
            text = "";
            x = 6.55 * (0.025) + (0);
            y = 4 * (0.04) + (0);
            w = 5.83 * (0.025);
            h = 5 * (0.04);
        };
        
        class Symbol02: RscExileXM8PictureKeepAspect
        {
            idc = 4146;
            text = "";
            x = 14.1 * (0.025) + (0);
            y = 4 * (0.04) + (0);
            w = 5.83 * (0.025);
            h = 5 * (0.04);
        };
        
        class Symbol03: RscExileXM8PictureKeepAspect
        {
            idc = 4147;
            text = "";
            x = 21.6 * (0.025) + (0);
            y = 4 * (0.04) + (0);
            w = 5.83 * (0.025);
            h = 5 * (0.04);
        };
    };
};

description.ext:

Spoiler

#define true 1
#define false 0

// Required for the XM8, do not remove!
#include "RscDefines.hpp"

///////////////////////////////////////////////////////////////////////////////
// Server Settings - Modify at will
///////////////////////////////////////////////////////////////////////////////
author = "Exile Mod Team";
onLoadName = "Exile Mod";
onLoadMission= "exile.majormittens.co.uk";
loadScreen = "exile_assets\texture\mod\logo.paa";
disableChannels[] = {0, 2};
OnLoadIntro = "";
OnLoadIntroTime = false;
OnLoadMissionTime = false;

class Header
{
    gameType = Survive; // Do NOT change this
    minPlayers = 1;
    maxPlayers = 100;
};

///////////////////////////////////////////////////////////////////////////////
// Exile Settings - Do not change these!
///////////////////////////////////////////////////////////////////////////////
forceRotorLibSimulation = 2;
skipLobby = 1;
joinUnassigned = 1;
respawn = "BASE";
respawnDelay = 120;
respawnDialog = 0;
respawnOnStart = 0;
respawnButton = 1;
respawnTemplates[] = {"Exile"};
corpseManagerMode = 0;
corpseLimit = 20;
corpseRemovalMinTime = 1800;
corpseRemovalMaxTime = 3600;
wreckManagerMode = 0;
wreckLimit = 2;
wreckRemovalMinTime = 60;
wreckRemovalMaxTime = 360;
scriptedPlayer = 1;
disabledAI = 1;
enableItemsDropping = 0;
briefing = 0;
debriefing = 0;
allowFunctionsLog = 1;
enableDebugConsole = 0;
allowFunctionsRecompile = 0;
showSquadRadar = 0;
showUAVFeed = 0;
reviveDelay = 6;
reviveForceRespawnDelay = 3;
reviveBleedOutDelay = 120;

showHUD[] =
{
    true,   // Scripted HUD (same as showHUD command)
    true,   // Vehicle + soldier info
    true,   // Vehicle radar
    true,   // Vehicle compass
    true,   // Tank direction indicator
    false,  // Commanding menu
    false,  // Group Bar
    true,   // HUD Weapon Cursors
    true   // Vehicle Panel (Required for GPS)
};

#include "config.cpp"


class RscTitles
{
    #include "addons\statusBar\statusBar.hpp"
};

 

class CfgRemoteExec
{
    class Functions
    {
    mode = 1;
       jip = 0;

    class fnc_AdminReq { allowedTargets=2; };
       class ExileServer_system_network_dispatchIncomingMessage { allowedTargets=2; };
        
    //CDAH CODE
    class CDAH_fnc_CDAH_Workshop_Gui {allowedTargets=0;};
    class ExileClient_system_network_dispatchIncomingMessage { allowedTargets=1; };

        };

    class Commands
    {
    mode = 0;
    jip = 0;
    };
};

 

 

Thx again

 

Share this post


Link to post
Share on other sites

2 answers to this question

  • 0

You can't craft how?
Is the recipes missing from the game? Is the craft option greyed out? Nothing happens when pressing craft?

If nothing is happening, did you check the .rpt?

Share this post


Link to post
Share on other sites
  • 0

Hi, nothing is missing I think. If I comment everything CDAH related out, crafting works. If enabled, the crafting seems to work, everything is black. You can click to "craft", but nothing is happening. CDAH seems to block 

Share this post


Link to post
Share on other sites
Advertisement

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.