Jump to content
Sign in to follow this  
alexboy

UAV Turret/weapon

Recommended Posts

I get an error saying that there is no entry in b_droid of damagehalf[] ??? but after seeing that error i put it into b_droid , but it still comes up....

That is odd, because its only defined once in the entire config under class car. I noticed you are inheriting your model.cfg from class vehicle, dunno if that might cause it?

Also I dont know if im missing anything else, because errors seem to keep coming up every-time i fix one error

I think you are trying to do too much in one go. You are certainly adding more than you need in your configs. Ideally you should try and inherit as much as possible, only adding what you need to your config. Seen as you want a UAV that is closer to the Darter than the Greyhawk, you should be inheriting that config. So the very basic config with backpacks would look like this:

#define private		0
#define protected	1
#define public		2

#define TEast		0
#define TWest		1
#define TGuerrila	2
#define TCivilian	3
#define TSideUnknown	4
#define TEnemy		5
#define TFriendly	6
#define TLogic		7

#define true		1
#define false		0

class CfgPatches
{
class droid
{
	units[]          = {"droid","B_droid","O_droid","I_droid","B_droid_backpack","B_droid_BLACK_backpack","O_droid_backpack","I_droid_backpack"};
	weapons[]        = {};
	requiredVersion  = 0.1;
	requiredAddons[] = {"A3_Air_F_Gamma_UAV_01"};
};
};

class CfgVehicles
{
//////////////////
// Base Classes //
//////////////////

class Helicopter;
class Helicopter_Base_F : Helicopter
{
	class Turrets;	
};
class UAV_01_base_F : Helicopter_Base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class B_UAV_01_F : UAV_01_base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class droid_base : B_UAV_01_F
{
	scope       = private;
	displayName = "U.S.A.V.";
	model       = "\droid\droid.p3d";
	icon        = "\droid\ucsv_top_ca.paa";
	picture     = "\droid\ucsv_side_ca.paa";
	enableSweep = false;

	class Turrets : Turrets
	{
		class MainTurret : MainTurret
		{
		};
	};
};

/////////////////
// UAV Classes //
/////////////////

class B_droid : droid_base
{
	scope                      = public;
	side                       = TWest;
	faction                    = BLU_F;
	crew                       = B_UAV_AI;
	typicalCargo[]             = {B_UAV_AI};

	hiddenSelectionsTextures[] = {"\droid\data\ucsv_blue_co.paa"};
	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"B_droid_backpack"};
	};
};
class B_droid_BLACK : B_droid 
{
	displayName                = "U.S.A.V. (BLACK)";
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_black_co.paa"};

	class assembleInfo : assembleInfo
	{
		dissasembleTo[]    = {"B_droid_BLACK_backpack"};
	};
};
class O_droid : droid_base
{
	scope                      = public;
	side                       = TEast;
	faction                    = OPF_F;
	crew                       = O_UAV_AI;
	typicalCargo[]             = {O_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"O_droid_backpack"};
	};
};
class I_droid : droid_base
{
	scope                      = public;
	side                       = TGuerrila;
	faction                    = IND_F;
	crew                       = I_UAV_AI;
	typicalCargo[]             = {I_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_indp_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"I_droid_backpack"};
	};
};

//////////////////////
// Backpack Classes //
//////////////////////

class B_UAV_01_backpack_F;
class O_UAV_01_backpack_F;
class I_UAV_01_backpack_F;

class B_droid_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_backpack";
	displayName             = "U.S.A.V Bag";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "B_droid";
		dissasembleTo[] = {};
	};

};
class B_droid_BLACK_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_BLACK_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V (BLACK)";
		assembleTo      = "B_droid_BLACK";
		dissasembleTo[] = {};
	};
};
class O_droid_backpack : O_UAV_01_backpack_F 
{
	_generalMacro          = "O_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "O_droid";
		dissasembleTo[] = {};
	};
};
class I_droid_backpack : I_UAV_01_backpack_F
{
	_generalMacro           = "I_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "I_droid";
		dissasembleTo[] = {};
	};
};
};

As for your model.cfg, I'm not really the best person in that respect. But unless you are using selection names other than the default Arma names, you may be able to get away with using:


class CfgModels 
{
class UAV_01_F;
class droid : UAV_01_F {};
};

Not sure if the above will work at all, never mind with your model, but you should get the idea?

Another error (not error but doesnt work properly) my weapon js_w_fa18_m61_y doesnt work properly... when I change my turret to this weapon and fire... the bullets just drop from the bottom on the UAV and drop to the ground... but for the first weapon js_m_fa18_m61 works perfectly ?

Once you have your UAV working in game with the default weapons, take a look at how other Helicopter weapons are configured. You should be using those as the basis of anything new you add.

Share this post


Link to post
Share on other sites

Thanks @UNN, the config worked!!!, but still the UAV turret doesnt stay aiming at the point its aiming at when the UAV moves...

I need to find what the name of

memoryPointGunnerOptics is because if i keep the mainturret blank everything works, but the camera of the turret doesnt move.. but the gun animates... but when i put my name in, same as the uav base

memoryPointGunnerOptics="commanderview"; the uav turret camera moves with the gun.... I cant seem to find out how the UAV camera is forced to stay aimed at a point..

Also for some reason... while being in the UAV turret I cannot zoom in ??

config.cpp

#define private		0
#define protected	1
#define public		2

#define TEast		0
#define TWest		1
#define TGuerrila	2
#define TCivilian	3
#define TSideUnknown	4
#define TEnemy		5
#define TFriendly	6
#define TLogic		7

#define true		1
#define false		0



enum {

DESTRUCTENGINE = 2,
DESTRUCTDEFAULT = 6,
DESTRUCTWRECK = 7,
DESTRUCTTREE = 3,
DESTRUCTTENT = 4,
STABILIZEDINAXISX = 1,
STABILIZEDINAXESXYZ = 4,
STABILIZEDINAXISY = 2,
STABILIZEDINAXESBOTH = 3,
DESTRUCTNO = 0,
STABILIZEDINAXESNONE = 0,
DESTRUCTMAN = 5,
DESTRUCTBUILDING = 1,
};


class CfgPatches
{
class droid
{
	units[]          = {"droid","B_droid","O_droid","I_droid","B_droid_backpack","B_droid_BLACK_backpack","O_droid_backpack","I_droid_backpack"};
	weapons[]        = {};
	requiredVersion  = 0.1;
	requiredAddons[] = {"A3_Air_F_Gamma_UAV_01"};
};
};




class CfgMagazines {
class VehicleMagazine;	// External class reference

class js_m_fa18_m61 : VehicleMagazine {
	scope = public;
	displayName = "20mm";
	ammo = "B_20mm";
	count = 1000;
	initSpeed = 1036;
	tracersEvery = 5;
	nameSound = "cannon";
};
};



class CfgWeapons {
class CannonCore;	// External class reference
class MissileLauncher;	// External class reference
class RocketPods;	// External class reference
class H_PilotHelmetFighter_B;	// External class reference
class U_B_PilotCoveralls;	// External class reference
class ItemInfo;	// External class reference
class UniformItem;	// External class reference



class js_w_fa18_m61 : CannonCore {
	scope = public;
	displayName = "20mm";
	displayNameMagazine = "20mm";
	shortNameMagazine = "20mm";
	nameSound = "cannon";
	cursor = "EmptyCursor";
	cursorAim = "mg";
	magazines[] = {"js_m_fa18_m50"};
	canLock = LockYes;
	ballisticsComputer = 2;
	modes[] = {"manual", "close", "short", "medium", "far"};

	class GunParticles {
		class Effect {
			effectName = "MachineGun1";
			positionName = "nosegun";
			directionName = "nosegun_dir";
		};
	};

	class manual : CannonCore {
		displayName = "M61A2 20mm";
		autoFire = true;
		sound[] = {"A3\Sounds_F\weapons\gatling\gatling1v1", db0, 1, 1000};
		weaponSoundEffect = "DefaultRifle";
		reloadTime = 0.02;
		dispersion = 0.0025;
		soundContinuous = 0;
		showToPlayer = true;
		burst = 1;
		aiRateOfFire = 0.5;	// delay between shots at given distance
		aiRateOfFireDistance = 50;
		minRange = 1;
		minRangeProbab = 0.01;
		midRange = 2;
		midRangeProbab = 0.01;
		maxRange = 3;
		maxRangeProbab = 0.01;
		textureType = "fullAuto";
	};

	class close : manual {
		showToPlayer = false;
		burst = 15;
		aiRateOfFire = 0.25;	// delay between shots at given distance
		aiRateOfFireDistance = 400;
		minRange = 0;
		minRangeProbab = 0.05;
		midRange = 200;
		midRangeProbab = 0.7;
		maxRange = 400;
		maxRangeProbab = 0.2;
	};

	class short : close {
		burst = 10;
		aiRateOfFire = 0.5;	// delay between shots at given distance
		aiRateOfFireDistance = 500;
		minRange = 300;
		minRangeProbab = 0.2;
		midRange = 400;
		midRangeProbab = 0.7;
		maxRange = 500;
		maxRangeProbab = 0.2;
	};

	class medium : close {
		burst = 7;
		aiRateOfFire = 1;	// delay between shots at given distance
		aiRateOfFireDistance = 900;
		minRange = 400;
		minRangeProbab = 0.2;
		midRange = 700;
		midRangeProbab = 0.7;
		maxRange = 900;
		maxRangeProbab = 0.2;
	};

	class far : close {
		burst = 4;
		aiRateOfFire = 1.5;	// delay between shots at given distance
		aiRateOfFireDistance = 1500;
		minRange = 800;
		minRangeProbab = 0.2;
		midRange = 1000;
		midRangeProbab = 0.4;
		maxRange = 1500;
		maxRangeProbab = 0.01;
	};
};
};









class CfgVehicles
{
//////////////////
// Base Classes //
//////////////////

class Helicopter;
class Helicopter_Base_F : Helicopter
{
	class Turrets;	
};
class UAV_01_base_F : Helicopter_Base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class B_UAV_01_F : UAV_01_base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class droid_base : B_UAV_01_F
{
	scope       = private;
	displayName = "U.S.A.V.";
	model       = "\droid\droid.p3d";
	icon        = "\droid\ucsv_top_ca.paa";
	picture     = "\droid\ucsv_side_ca.paa";
	enableSweep = false;




	class Turrets : Turrets
	{
		class MainTurret : MainTurret
		{
			minElev = -90;
			maxElev = 270;//90
			initElev = 0;//-3
			minTurn = -360;
			maxTurn = 360;
			initTurn = 0;

			memoryPointGunnerOptics="commanderview";
			stabilizedInAxes=4;

			weapons[] = {"Laserdesignator_mounted", "js_w_fa18_m61"}; 
			magazines[] = {"Laserbatteries", "js_m_fa18_m61"};

			class OpticsIn {
				class Wide {
					opticsDisplayName = "W";
					initAngleX = 0;
					minAngleX = -30;
					maxAngleX = 30;
					initAngleY = 0;
					minAngleY = -100;
					maxAngleY = 100;
					initFov = 0.5;
					minFov = 0.5;
					maxFov = 0.5;
					directionStabilized = 1;
					visionMode[] = {"Normal", NVG, "Ti"};
					thermalMode[] = {0, 1};
					gunnerOpticsModel = "A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_wide_F.p3d";
				};

				class Medium : Wide {
					opticsDisplayName = "M";
					initFov = 0.1;
					minFov = 0.1;
					maxFov = 0.1;
					gunnerOpticsModel = "A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_medium_F.p3d";
				};

				class Narrow : Wide {
					opticsDisplayName = "N";
					initFov = 0.0286;
					minFov = 0.0286;
					maxFov = 0.0286;
					gunnerOpticsModel = "A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
				};
			};

			class OpticsOut {
				class Monocular {
					initAngleX = 0;
					minAngleX = -30;
					maxAngleX = 30;
					initAngleY = 0;
					minAngleY = -100;
					maxAngleY = 100;
					initFov = 1.1;
					minFov = 0.133;
					maxFov = 1.1;
					visionMode[] = {"Normal", NVG};
					gunnerOpticsModel = "";
					gunnerOpticsEffect[] = {};
				};
			};

		};
	};
};

/////////////////
// UAV Classes //
/////////////////

class B_droid : droid_base
{
	scope                      = public;
	side                       = TWest;
	faction                    = BLU_F;
	crew                       = B_UAV_AI;
	typicalCargo[]             = {B_UAV_AI};

	hiddenSelectionsTextures[] = {"\droid\data\ucsv_blue_co.paa"};
	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"B_droid_backpack"};
	};
};
class B_droid_BLACK : B_droid 
{
	displayName                = "U.S.A.V. (BLACK)";
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_black_co.paa"};

	class assembleInfo : assembleInfo
	{
		dissasembleTo[]    = {"B_droid_BLACK_backpack"};
	};
};
class O_droid : droid_base
{
	scope                      = public;
	side                       = TEast;
	faction                    = OPF_F;
	crew                       = O_UAV_AI;
	typicalCargo[]             = {O_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"O_droid_backpack"};
	};
};
class I_droid : droid_base
{
	scope                      = public;
	side                       = TGuerrila;
	faction                    = IND_F;
	crew                       = I_UAV_AI;
	typicalCargo[]             = {I_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_indp_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"I_droid_backpack"};
	};
};

//////////////////////
// Backpack Classes //
//////////////////////

class B_UAV_01_backpack_F;
class O_UAV_01_backpack_F;
class I_UAV_01_backpack_F;

class B_droid_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_backpack";
	displayName             = "U.S.A.V Bag";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "B_droid";
		dissasembleTo[] = {};
	};

};
class B_droid_BLACK_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_BLACK_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V (BLACK)";
		assembleTo      = "B_droid_BLACK";
		dissasembleTo[] = {};
	};
};
class O_droid_backpack : O_UAV_01_backpack_F 
{
	_generalMacro          = "O_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "O_droid";
		dissasembleTo[] = {};
	};
};
class I_droid_backpack : I_UAV_01_backpack_F
{
	_generalMacro           = "I_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "I_droid";
		dissasembleTo[] = {};
	};
};
};

Edited by alexboy

Share this post


Link to post
Share on other sites

but still the UAV turret doesnt stay aiming at the point its aiming at when the UAV moves

The base class I posted locks its aiming point while moving, so its probably something you changed, sounds like your turret isn't setup like the Arma 3 turrets?

This works just like the Arma3 UAVs, turret stays fixed:

class droid_base : B_UAV_01_F
{
	scope       = private;
	displayName = "U.S.A.V.";
	model       = "\droid\Test_Tank_01.p3d";
	enableSweep = false;

	class Turrets : Turrets
	{
		class MainTurret : MainTurret
		{
			memoryPointGun="gunnerview";
			memoryPointGunnerOptics="gunnerview";
		};
	};
};

I just copied over the Test Tank p3d's including the wreck and the model.cfg. You have to change the above two properties to "gunnerview" to match the p3d's selection name. After that it works like the Darter.

but when i put my name in, same as the uav base

memoryPointGunnerOptics="commanderview";

class droid_base uses:

memoryPointGun="PIP0_dir";
memoryPointGunnerOptics="PIP0_pos";

They are defined in class UAV_01_base_F.

Edited by UNN

Share this post


Link to post
Share on other sites

@UNN I have tried that before... right now I have nothing in the turret config and the turret can move and everything.... but still wont focus on a certain point.... could you send me the memory lod of what you did ?

I dont get why it isnt working :/?

===============EDIT====================

OMG........ the only reason why it wasnt working was cause of the stupid y_axis I am using for my turret.... I just remembered in the past axis's have a way of messing with the direction the animation happens... so i flipped my axis 180 degrees on the Z-axis and guess what it works....

all frustration of some stupid axis... wow

ok New issues... (easy to fix just for some reason it wont work)

I have 2 weapons

#1 weapon(in config)

I already have it set up.. and works perfectly... except for the modes doesnt work? it wont let me change the modes...

#2 weapon (not in config)

I want a sniper round or a high powered round, that can kill people from afar with one or 2 hits like a sniper... also so that it fires 1 round at a time.

For turret I for some reason cant zoom in I have tried messing around with optics and all, but nothing seems to work.. in driver i can zoom a little... but for turret I can, but wanna be able to zoom in alot to shoot from far distance.

config:

#define private		0
#define protected	1
#define public		2

#define TEast		0
#define TWest		1
#define TGuerrila	2
#define TCivilian	3
#define TSideUnknown	4
#define TEnemy		5
#define TFriendly	6
#define TLogic		7

#define true		1
#define false		0



enum {

DESTRUCTENGINE = 2,
DESTRUCTDEFAULT = 6,
DESTRUCTWRECK = 7,
DESTRUCTTREE = 3,
DESTRUCTTENT = 4,
STABILIZEDINAXISX = 1,
STABILIZEDINAXESXYZ = 4,
STABILIZEDINAXISY = 2,
STABILIZEDINAXESBOTH = 3,
DESTRUCTNO = 0,
STABILIZEDINAXESNONE = 0,
DESTRUCTMAN = 5,
DESTRUCTBUILDING = 1,
};


class CfgPatches
{
class droid
{
	units[]          = {"droid","B_droid","O_droid","I_droid","B_droid_backpack","B_droid_BLACK_backpack","O_droid_backpack","I_droid_backpack"};
	weapons[]        = {};
	requiredVersion  = 0.1;
	requiredAddons[] = {"A3_Air_F_Gamma_UAV_01"};
};
};




class CfgMagazines {
class VehicleMagazine;	// External class reference

class js_m_fa18_m61 : VehicleMagazine {
	scope = public;
	displayName = "20mm";
	ammo = "B_20mm";
	count = 1000;
	initSpeed = 1036;
	tracersEvery = 5;
	nameSound = "cannon";
};
};



class CfgWeapons {
class CannonCore;	// External class reference
class MissileLauncher;	// External class reference
class RocketPods;	// External class reference
class H_PilotHelmetFighter_B;	// External class reference
class U_B_PilotCoveralls;	// External class reference
class ItemInfo;	// External class reference
class UniformItem;	// External class reference



class js_w_fa18_m61 : CannonCore {
	scope = public;
	displayName = "20mm";
	displayNameMagazine = "20mm";
	shortNameMagazine = "20mm";
	nameSound = "cannon";
	cursor = "EmptyCursor";
	cursorAim = "mg";
	magazines[] = {"js_m_fa18_m50"};
	canLock = LockYes;
	ballisticsComputer = 2;
	modes[] = {"manual", "close", "short", "medium", "far"};

	class GunParticles {
		class Effect {
			effectName = "MachineGun1";
			positionName = "nosegun";
			directionName = "nosegun_dir";
		};
	};


	class manual : CannonCore {
		displayName = "M61A2 20mm";
		autoFire = 1;
		sound[] = {"A3\Sounds_F\weapons\gatling\gatling1v1", db0, 1, 1000};
		weaponSoundEffect = "DefaultRifle";
		reloadTime = 0.02;
		dispersion = 0.0025;
		soundContinuous = 0;
		showToPlayer = true;
		burst = 1;
		aiRateOfFire = 0.5;	// delay between shots at given distance
		aiRateOfFireDistance = 50;
		minRange = 1;
		minRangeProbab = 0.01;
		midRange = 2;
		midRangeProbab = 0.01;
		maxRange = 3;
		maxRangeProbab = 0.01;
		textureType = "fullAuto";
	};

	class close : manual {
		showToPlayer = false;
		burst = 15;
		aiRateOfFire = 0.25;	// delay between shots at given distance
		aiRateOfFireDistance = 400;
		minRange = 0;
		minRangeProbab = 0.05;
		midRange = 200;
		midRangeProbab = 0.7;
		maxRange = 400;
		maxRangeProbab = 0.2;
	};

	class short : close {
		burst = 10;
		aiRateOfFire = 0.5;	// delay between shots at given distance
		aiRateOfFireDistance = 500;
		minRange = 300;
		minRangeProbab = 0.2;
		midRange = 400;
		midRangeProbab = 0.7;
		maxRange = 500;
		maxRangeProbab = 0.2;
	};

	class medium : close {
		burst = 7;
		aiRateOfFire = 1;	// delay between shots at given distance
		aiRateOfFireDistance = 900;
		minRange = 400;
		minRangeProbab = 0.2;
		midRange = 700;
		midRangeProbab = 0.7;
		maxRange = 900;
		maxRangeProbab = 0.2;
	};

	class far : close {
		burst = 4;
		aiRateOfFire = 1.5;	// delay between shots at given distance
		aiRateOfFireDistance = 1500;
		minRange = 800;
		minRangeProbab = 0.2;
		midRange = 1000;
		midRangeProbab = 0.4;
		maxRange = 1500;
		maxRangeProbab = 0.01;
	};
};
};









class CfgVehicles
{
//////////////////
// Base Classes //
//////////////////

class Helicopter;
class Helicopter_Base_F : Helicopter
{
	class Turrets;	
};
class UAV_01_base_F : Helicopter_Base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class B_UAV_01_F : UAV_01_base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class droid_base : B_UAV_01_F
{
	scope       = private;
	displayName = "U.S.A.V.";
	model       = "\droid\droid.p3d";
	icon        = "\droid\ucsv_top_ca.paa";
	picture     = "\droid\ucsv_side_ca.paa";
	enableSweep = false;




	class Turrets : Turrets
	{
		class MainTurret : MainTurret
		{

			memoryPointGun="gunnerview";
			memoryPointGunnerOptics="gunnerview";
			weapons[] = {"Laserdesignator_mounted", "js_w_fa18_m61"}; 
			magazines[] = {"Laserbatteries", "js_m_fa18_m61"};

		};
	};
};

/////////////////
// UAV Classes //
/////////////////

class B_droid : droid_base
{
	scope                      = public;
	side                       = TWest;
	faction                    = BLU_F;
	crew                       = B_UAV_AI;
	typicalCargo[]             = {B_UAV_AI};

	hiddenSelectionsTextures[] = {"\droid\data\ucsv_blue_co.paa"};
	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"B_droid_backpack"};
	};
};
class B_droid_BLACK : B_droid 
{
	displayName                = "U.S.A.V. (BLACK)";
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_black_co.paa"};

	class assembleInfo : assembleInfo
	{
		dissasembleTo[]    = {"B_droid_BLACK_backpack"};
	};
};
class O_droid : droid_base
{
	scope                      = public;
	side                       = TEast;
	faction                    = OPF_F;
	crew                       = O_UAV_AI;
	typicalCargo[]             = {O_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"O_droid_backpack"};
	};
};
class I_droid : droid_base
{
	scope                      = public;
	side                       = TGuerrila;
	faction                    = IND_F;
	crew                       = I_UAV_AI;
	typicalCargo[]             = {I_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_indp_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"I_droid_backpack"};
	};
};

//////////////////////
// Backpack Classes //
//////////////////////

class B_UAV_01_backpack_F;
class O_UAV_01_backpack_F;
class I_UAV_01_backpack_F;

class B_droid_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_backpack";
	displayName             = "U.S.A.V Bag";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "B_droid";
		dissasembleTo[] = {};
	};

};
class B_droid_BLACK_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_BLACK_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V (BLACK)";
		assembleTo      = "B_droid_BLACK";
		dissasembleTo[] = {};
	};
};
class O_droid_backpack : O_UAV_01_backpack_F 
{
	_generalMacro          = "O_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "O_droid";
		dissasembleTo[] = {};
	};
};
class I_droid_backpack : I_UAV_01_backpack_F
{
	_generalMacro           = "I_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "I_droid";
		dissasembleTo[] = {};
	};
};
};

Edited by alexboy

Share this post


Link to post
Share on other sites

For turret I for some reason cant zoom in I have tried messing around with optics and all, but nothing seems to work..

If you can't zoom in as the gunner with the default config I posted, then it must be something in your model because that works the same as the Darter. You could try posting the following into your class mainTurret:

class OpticsIn
{
class Wide
{
	opticsDisplayName="W";
	initAngleX=0;
	minAngleX=-30;
	maxAngleX=30;
	initAngleY=0;
	minAngleY=-100;
	maxAngleY=100;
	initFov=0.5;
	minFov=0.5;
	maxFov=0.5;
	directionStabilized=1;
	visionMode[]={"Normal","NVG","Ti"};
	thermalMode[]={0,1};
	gunnerOpticsModel="A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_wide_F.p3d";
};
class Medium : Wide
{
	opticsDisplayName="M";
	initFov=0.1;
	minFov=0.1;
	maxFov=0.1;
	gunnerOpticsModel="A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_medium_F.p3d";
};
class Narrow : Wide
{
	opticsDisplayName="N";
	initFov=0.0286;
	minFov=0.0286;
	maxFov=0.0286;
	gunnerOpticsModel="A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
};

You can then just modify initFov, minFov & maxFov.

#1 weapon(in config)

I already have it set up.. and works perfectly... except for the modes doesnt work? it wont let me change the modes...

#2 weapon (not in config)

I want a sniper round or a high powered round, that can kill people from afar with one or 2 hits like a sniper... also so that it fires 1 round at a time.

Not familiar with weapon configs, so I can't really help there.

Share this post


Link to post
Share on other sites

To get the turret a .50 cal then you should simply add the OPFOR .50 cal with magazines to the turret.

also try setting up your modes like this instead:

	modes[] = {"Single", "FullAuto", "Burst", "single_close_optics1", "single_medium_optics1", "single_far_optics1", "fullauto_medium"};

	class Single : Mode_SemiAuto {
		begin1[] = {"A3\sounds_f\weapons\rahim\rahim_shot_1", 1.12202, 1, 1200};
		begin2[] = {"A3\sounds_f\weapons\rahim\rahim_shot_2", 1.12202, 1, 1200};
		begin3[] = {"A3\sounds_f\weapons\rahim\rahim_shot_3", 1.12202, 1, 1200};
		soundBegin[] = {"begin1", 0.34, "begin2", 0.33, "begin3", 0.33};
		closure1[] = {"A3\sounds_f\weapons\closure\EBR-3", 1.12202, 1.2, 30};
		closure2[] = {"A3\sounds_f\weapons\closure\EBR-3", 1.12202, 1, 30};
		soundClosure[] = {"closure1", 0.5, "closure2", 0.5};
		weaponSoundEffect = "DefaultRifle";
		reloadTime = 0.086;
		dispersion = 0.00058;
		recoil = "recoil_single_dmr";
		recoilProne = "recoil_single_prone_dmr";
		minRange = 2;
		minRangeProbab = 0.3;
		midRange = 350;
		midRangeProbab = 0.7;
		maxRange = 500;
		maxRangeProbab = 0.05;
	};
			class Burst : Mode_Burst {
		begin1[] = {"A3\sounds_f\weapons\rahim\rahim_shot_1", 1.12202, 1, 1200};
		begin2[] = {"A3\sounds_f\weapons\rahim\rahim_shot_2", 1.12202, 1, 1200};
		begin3[] = {"A3\sounds_f\weapons\rahim\rahim_shot_3", 1.12202, 1, 1200};
		soundBegin[] = {"begin1", 0.34, "begin2", 0.33, "begin3", 0.33};
		closure1[] = {"A3\sounds_f\weapons\closure\EBR-3", 1.12202, 1.2, 30};
		closure2[] = {"A3\sounds_f\weapons\closure\EBR-3", 1.12202, 1, 30};
		soundClosure[] = {"closure1", 0.5, "closure2", 0.5};
		weaponSoundEffect = "DefaultRifle";
		reloadTime = 0.043;
		burst = 4;
		dispersion = 0.00058;
		recoil = "recoil_single_dmr";
		recoilProne = "recoil_single_prone_dmr";
		minRange = 2;
		minRangeProbab = 0.3;
		midRange = 350;
		midRangeProbab = 0.7;
		maxRange = 500;
		maxRangeProbab = 0.05;
	};

	class FullAuto : Mode_FullAuto {
		begin1[] = {"A3\sounds_f\weapons\rahim\rahim_shot_1", 1.12202, 1, 1200};
		begin2[] = {"A3\sounds_f\weapons\rahim\rahim_shot_2", 1.12202, 1, 1200};
		begin3[] = {"A3\sounds_f\weapons\rahim\rahim_shot_3", 1.12202, 1, 1200};
		soundBegin[] = {"begin1", 0.34, "begin2", 0.33, "begin3", 0.33};
		closure1[] = {"A3\sounds_f\weapons\closure\EBR-3", 1.12202, 1.2, 30};
		closure2[] = {"A3\sounds_f\weapons\closure\EBR-3", 1.12202, 1, 30};
		soundClosure[] = {"closure1", 0.5, "closure2", 0.5};
		weaponSoundEffect = "DefaultRifle";
		reloadTime = 0.086;
		dispersion = 0.00058;
		recoil = "recoil_auto_dmr";
		recoilProne = "recoil_auto_prone_dmr";
		minRange = 0;
		minRangeProbab = 0.9;
		midRange = 15;
		midRangeProbab = 0.7;
		maxRange = 30;
		maxRangeProbab = 0.05;
		aiRateOfFire = 1e-006;	// delay between shots at given distance
	};

	class single_close_optics1 : Single {
		requiredOpticType = 1;
		showToPlayer = false;
		minRange = 2;
		minRangeProbab = 0.05;
		midRange = 300;
		midRangeProbab = 0.8;
		maxRange = 500;
		maxRangeProbab = 0.01;
		aiRateOfFire = 2;	// delay between shots at given distance
		aiRateOfFireDistance = 300;
	};

	class single_medium_optics1 : single_close_optics1 {
		minRange = 300;
		minRangeProbab = 0.05;
		midRange = 500;
		midRangeProbab = 0.7;
		maxRange = 700;
		maxRangeProbab = 0.05;
		aiRateOfFire = 2;	// delay between shots at given distance
		aiRateOfFireDistance = 500;
	};

	class single_far_optics1 : single_medium_optics1 {
		requiredOpticType = 2;
		minRange = 300;
		minRangeProbab = 0.05;
		midRange = 700;
		midRangeProbab = 0.5;
		maxRange = 1000;
		maxRangeProbab = 0.05;
		aiRateOfFire = 4;	// delay between shots at given distance
		aiRateOfFireDistance = 600;
	};

	class fullauto_medium : FullAuto {
		showToPlayer = false;
		burst = 3;
		minRange = 2;
		minRangeProbab = 0.5;
		midRange = 50;
		midRangeProbab = 0.7;
		maxRange = 100;
		maxRangeProbab = 0.05;
		aiRateOfFire = 2.0;	// delay between shots at given distance
	};

You'll have to modify them so they fit.

Share this post


Link to post
Share on other sites

I have put the above code ^ into my weapon and it gives errors such as no multiplier or texturetype ? i dont understand these i am not good at weapon config

Share this post


Link to post
Share on other sites

No no no! :P that was just an example on how to set up firing modes!

this is the class for your weapon right?

class CfgWeapons {
   class CannonCore;    // External class reference
   class MissileLauncher;    // External class reference
   class RocketPods;    // External class reference
   class H_PilotHelmetFighter_B;    // External class reference
   class U_B_PilotCoveralls;    // External class reference
   class ItemInfo;    // External class reference
   class UniformItem;    // External class reference



   class js_w_fa18_m61 : CannonCore {
       scope = public;
       displayName = "20mm";
       displayNameMagazine = "20mm";
       shortNameMagazine = "20mm";
       nameSound = "cannon";
       cursor = "EmptyCursor";
       cursorAim = "mg";
       magazines[] = {"js_m_fa18_m50"};
       canLock = LockYes;
       ballisticsComputer = 2;
       modes[] = {"manual", "close", "short", "medium", "far"};

       class GunParticles {
           class Effect {
               effectName = "MachineGun1";
               positionName = "nosegun";
               directionName = "nosegun_dir";
           };
       };

       class manual : [u]CannonCore[/u] {
           displayName = "M61A2 20mm";
           autoFire = true;
           sound[] = {"A3\Sounds_F\weapons\gatling\gatling1v1", db0, 1, 1000};
           weaponSoundEffect = "DefaultRifle";
           reloadTime = 0.02;
           dispersion = 0.0025;
           soundContinuous = 0;
           showToPlayer = true;
           burst = 1;
           aiRateOfFire = 0.5;    // delay between shots at given distance
           aiRateOfFireDistance = 50;
           minRange = 1;
           minRangeProbab = 0.01;
           midRange = 2;
           midRangeProbab = 0.01;
           maxRange = 3;
           maxRangeProbab = 0.01;
           textureType = "fullAuto";
       };

       class close : manual {
           showToPlayer = false;
           burst = 15;
           aiRateOfFire = 0.25;    // delay between shots at given distance
           aiRateOfFireDistance = 400;
           minRange = 0;
           minRangeProbab = 0.05;
           midRange = 200;
           midRangeProbab = 0.7;
           maxRange = 400;
           maxRangeProbab = 0.2;
       };

       class short : close {
           burst = 10;
           aiRateOfFire = 0.5;    // delay between shots at given distance
           aiRateOfFireDistance = 500;
           minRange = 300;
           minRangeProbab = 0.2;
           midRange = 400;
           midRangeProbab = 0.7;
           maxRange = 500;
           maxRangeProbab = 0.2;
       };

       class medium : close {
           burst = 7;
           aiRateOfFire = 1;    // delay between shots at given distance
           aiRateOfFireDistance = 900;
           minRange = 400;
           minRangeProbab = 0.2;
           midRange = 700;
           midRangeProbab = 0.7;
           maxRange = 900;
           maxRangeProbab = 0.2;
       };

       class far : close {
           burst = 4;
           aiRateOfFire = 1.5;    // delay between shots at given distance
           aiRateOfFireDistance = 1500;
           minRange = 800;
           minRangeProbab = 0.2;
           midRange = 1000;
           midRangeProbab = 0.4;
           maxRange = 1500;
           maxRangeProbab = 0.01;
       };
   };

class js_w_fa18_m61_y : CannonCore {
       scope = public;
       displayName = "20mm Y Tracer";
       displayNameMagazine = "20mm Y Tracer";
       shortNameMagazine = "20mm Y Tracer";
       nameSound = "cannon";
       cursor = "EmptyCursor";
       cursorAim = "mg";
       magazines[] = {"js_m_fa18_m61_y"};
       canLock = LockYes;
       ballisticsComputer = 2;
       modes[] = {"manual", "close", "short", "medium", "far"};

       class GunParticles {
           class Effect {
               effectName = "MachineGun1";
               positionName = "nosegun";
               directionName = "nosegun_dir";
           };
       };

       class manual : [u]CannonCore[/u] {
           displayName = "M61A2 20mm";
           autoFire = true;
           sound[] = {"A3\Sounds_F\weapons\gatling\gatling1v1", db0, 1, 1000};
           weaponSoundEffect = "DefaultRifle";
           reloadTime = 0.02;
           dispersion = 0.0025;
           soundContinuous = 0;
           showToPlayer = true;
           burst = 1;
           aiRateOfFire = 0.5;    // delay between shots at given distance
           aiRateOfFireDistance = 50;
           minRange = 1;
           minRangeProbab = 0.01;
           midRange = 2;
           midRangeProbab = 0.01;
           maxRange = 3;
           maxRangeProbab = 0.01;
           textureType = "fullAuto";
       };

       class close : manual {
           showToPlayer = false;
           burst = 15;
           aiRateOfFire = 0.25;    // delay between shots at given distance
           aiRateOfFireDistance = 400;
           minRange = 0;
           minRangeProbab = 0.05;
           midRange = 200;
           midRangeProbab = 0.7;
           maxRange = 400;
           maxRangeProbab = 0.2;
       };

       class short : close {
           burst = 10;
           aiRateOfFire = 0.5;    // delay between shots at given distance
           aiRateOfFireDistance = 500;
           minRange = 300;
           minRangeProbab = 0.2;
           midRange = 400;
           midRangeProbab = 0.7;
           maxRange = 500;
           maxRangeProbab = 0.2;
       };

       class medium : close {
           burst = 7;
           aiRateOfFire = 1;    // delay between shots at given distance
           aiRateOfFireDistance = 900;
           minRange = 400;
           minRangeProbab = 0.2;
           midRange = 700;
           midRangeProbab = 0.7;
           maxRange = 900;
           maxRangeProbab = 0.2;
       };

       class far : close {
           burst = 4;
           aiRateOfFire = 1.5;    // delay between shots at given distance
           aiRateOfFireDistance = 1500;
           minRange = 800;
           minRangeProbab = 0.2;
           midRange = 1000;
           midRangeProbab = 0.4;
           maxRange = 1500;
           maxRangeProbab = 0.01;
       };
   };
};

You see that underlined line? change that to the regular 'entry' the weapons use, namely Mode_SemiAuto. and insert

class Mode_SemiAuto; //This is an external refense

above class CfgWeapons so you externaly refence it. Also i think cannoncore might be what you use when making ammo not firing modes :[)

also if you want to add other weapons to your turret I think you just do it like you've already done

		class Turrets : Turrets
	{
		class MainTurret : MainTurret
		{

			memoryPointGun="gunnerview";
			memoryPointGunnerOptics="gunnerview";
			weapons[] = {"Laserdesignator_mounted", "js_w_fa18_m61", "WEAPON_CLASS"}; <---
			magazines[] = {"Laserbatteries", "js_m_fa18_m61", "MAGAZINE_CLASS"}; <---
			                                                                                                                                 You can just expand these with more weapons
		};
	};
};

Share this post


Link to post
Share on other sites

I tried that and i took away the other weapon to first finish the first weapon to have different fire mode (single, burst, auto) and also to have the UAV turret to be able to zoom in / out when wanted, like the ah-99 gunner does.

But i dont know if i did it right, because its not working ?

config.cpp

#define private		0
#define protected	1
#define public		2

#define TEast		0
#define TWest		1
#define TGuerrila	2
#define TCivilian	3
#define TSideUnknown	4
#define TEnemy		5
#define TFriendly	6
#define TLogic		7

#define true		1
#define false		0



enum {

DESTRUCTENGINE = 2,
DESTRUCTDEFAULT = 6,
DESTRUCTWRECK = 7,
DESTRUCTTREE = 3,
DESTRUCTTENT = 4,
STABILIZEDINAXISX = 1,
STABILIZEDINAXESXYZ = 4,
STABILIZEDINAXISY = 2,
STABILIZEDINAXESBOTH = 3,
DESTRUCTNO = 0,
STABILIZEDINAXESNONE = 0,
DESTRUCTMAN = 5,
DESTRUCTBUILDING = 1,
};


class CfgPatches
{
class droid
{
	units[]          = {"droid","B_droid","O_droid","I_droid","B_droid_backpack","B_droid_BLACK_backpack","O_droid_backpack","I_droid_backpack"};
	weapons[]        = {};
	requiredVersion  = 0.1;
	requiredAddons[] = {"A3_Air_F_Gamma_UAV_01"};
};
};




class CfgMagazines {
class VehicleMagazine;	// External class reference

class js_m_fa18_m61 : VehicleMagazine {
	scope = public;
	displayName = "20mm";
	ammo = "B_20mm";
	count = 1000;
	initSpeed = 1036;
	tracersEvery = 5;
	nameSound = "cannon";
};

class sniper_30 : VehicleMagazine {
	scope = public;
	displayName = "30mm";
	ammo = "B_30mm_HE";
	count = 1000;
	initSpeed = 1036;
	tracersEvery = 5;
	nameSound = "cannon";
};
};



class CfgWeapons {
class CannonCore;	// External class reference
class MissileLauncher;	// External class reference
class RocketPods;	// External class reference
class H_PilotHelmetFighter_B;	// External class reference
class U_B_PilotCoveralls;	// External class reference
class ItemInfo;	// External class reference
class UniformItem;	// External class reference



class js_w_fa18_m61 : CannonCore {
	scope = public;
	displayName = "20mm";
	displayNameMagazine = "20mm";
	shortNameMagazine = "20mm";
	nameSound = "cannon";
	cursor = "EmptyCursor";
	cursorAim = "mg";
	magazines[] = {"js_m_fa18_m50"};
	canLock = LockYes;
	ballisticsComputer = 2;
	modes[] = {"manual", "close", "short", "medium", "far"};

	class GunParticles {
		class Effect {
			effectName = "MachineGun1";
			positionName = "nosegun";
			directionName = "nosegun_dir";
		};
	};
	class Mode_SemiAuto; //This is an external refense

	class manual : Mode_SemiAuto {
		displayName = "M61A2 20mm";
		autoFire = 1;
		sound[] = {"A3\Sounds_F\weapons\gatling\gatling1v1", db0, 1, 1000};
		weaponSoundEffect = "DefaultRifle";
		reloadTime = 0.02;
		dispersion = 0.0025;
		soundContinuous = 0;
		showToPlayer = true;
		burst = 1;
		aiRateOfFire = 0.5;	// delay between shots at given distance
		aiRateOfFireDistance = 50;
		minRange = 1;
		minRangeProbab = 0.01;
		midRange = 2;
		midRangeProbab = 0.01;
		maxRange = 3;
		maxRangeProbab = 0.01;
		textureType = "fullAuto";
	};

	class close : manual {
		//displayName = "close 20mm";
		showToPlayer = false;
		burst = 15;
		aiRateOfFire = 0.25;	// delay between shots at given distance
		aiRateOfFireDistance = 400;
		minRange = 0;
		minRangeProbab = 0.05;
		midRange = 200;
		midRangeProbab = 0.7;
		maxRange = 400;
		maxRangeProbab = 0.2;
	};

	class short : close {
		//displayName = "short 20mm";
		burst = 10;
		aiRateOfFire = 0.5;	// delay between shots at given distance
		aiRateOfFireDistance = 500;
		minRange = 300;
		minRangeProbab = 0.2;
		midRange = 400;
		midRangeProbab = 0.7;
		maxRange = 500;
		maxRangeProbab = 0.2;
	};

	class medium : close {
		//displayName = "Medium 20mm";
		burst = 7;
		aiRateOfFire = 1;	// delay between shots at given distance
		aiRateOfFireDistance = 900;
		minRange = 400;
		minRangeProbab = 0.2;
		midRange = 700;
		midRangeProbab = 0.7;
		maxRange = 900;
		maxRangeProbab = 0.2;
	};

	class far : close {
		//displayName = "Far 20mm";
		burst = 4;
		aiRateOfFire = 1.5;	// delay between shots at given distance
		aiRateOfFireDistance = 1500;
		minRange = 800;
		minRangeProbab = 0.2;
		midRange = 1000;
		midRangeProbab = 0.4;
		maxRange = 1500;
		maxRangeProbab = 0.01;
	};
};
};









class CfgVehicles
{
//////////////////
// Base Classes //
//////////////////

class Helicopter;
class Helicopter_Base_F : Helicopter
{
	class Turrets;	
};
class UAV_01_base_F : Helicopter_Base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class B_UAV_01_F : UAV_01_base_F
{
	class Turrets : Turrets
	{
		class MainTurret;
	};

};
class droid_base : B_UAV_01_F
{
	scope       = private;
	displayName = "U.S.A.V.";
	model       = "\droid\droid.p3d";
	icon        = "\droid\ucsv_top_ca.paa";
	picture     = "\droid\ucsv_side_ca.paa";
	enableSweep = false;

	armor = 80;
	dustEffect="UAVDust";
	waterEffect="UAVWater";
	washDownDiameter="10.0f";
	washDownStrength="0.25f";
	fuelCapacity = 560;
	weapons[] = {"CMFlareLauncher"};
	magazines[] = {"240Rnd_CMFlare_Chaff_Magazine"};
	LockDetectionSystem = 1 + 8 + 4;
	incomingMissileDetectionSystem = 16;
	laserscanner = true;
	camouflage = 40;	// how dificult to spot - bigger - better spotable
	accuracy = 0.6;	// accuracy needed to recognize type of this target
	// threat (VSoft, VArmor, VAir), how threatening vehicle is to unit types
	threat[] = {0.1, 0.1, 0.1};
	type = VAir;

	//wrecking
	fuelExplosionPower = 4.8;
	damageEffect = "AirDestructionEffects";



	class Turrets : Turrets
	{
		class MainTurret : MainTurret
		{

			memoryPointGun="gunnerview";
			memoryPointGunnerOptics="gunnerview";
			weapons[] = {"Laserdesignator_mounted", "js_w_fa18_m61"}; 
			magazines[] = {"Laserbatteries", "js_m_fa18_m61"};
			class OpticsIn
{
class Wide
{
	opticsDisplayName="W";
	initAngleX=0;
	minAngleX=-30;
	maxAngleX=30;
	initAngleY=0;
	minAngleY=-100;
	maxAngleY=100;
	initFov=0.5;
	minFov=0.5;
	maxFov=0.5;
opticsZoomMin = 0.0555;
	opticsZoomMax = 0.1300;
	opticsZoomInit= 0.1300;
	directionStabilized=1;
	visionMode[]={"Normal","NVG","Ti"};
	thermalMode[]={0,1};
	gunnerOpticsModel="A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_wide_F.p3d";
};
class Medium : Wide
{
	opticsDisplayName="M";
	initFov=0.1;
	minFov=0.1;
	maxFov=0.1;
	gunnerOpticsModel="A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_medium_F.p3d";
};
class Narrow : Wide
{
	opticsDisplayName="N";
	initFov=0.0286;
	minFov=0.0286;
	maxFov=0.0286;
	gunnerOpticsModel="A3\drones_f\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
};



		};
	};





class WingVortices {};

	class Damage {
		tex[] = {};
		mat[] = {"droid\data\ucsv.rvmat", "droid\data\ucsv_damage.rvmat", "droid\data\ucsv_destruct.rvmat"};
	};

	class Exhausts {
		class l_exhaust {
			position = "l_exhaust_pos";
			direction = "l_exhaust_dir";
			effect = "ExhaustEffectHeli";
		};

		class r_exhaust {
			position = "r_exhaust_pos";
			direction = "r_exhaust_dir";
			effect = "ExhaustEffectHeli";
		};
		class b_exhaust {
			position = "b_exhaust_pos";
			direction = "b_exhaust_dir";
			effect = "ExhaustEffectHeli";
		};
	};

	class DestructionEffects {
		class Fire1 {
			simulation = "particles";
			type = "ObjectDestructionFire1";
			position = "destructionEffect1";
			intensity = 0.03;
			interval = 1;
			lifeTime = 2;
		};
		class Fire2 {
			simulation = "particles";
			type = "ObjectDestructionFire2";
			position = "destructionEffect2";
			intensity = 0.03;
			interval = 1;
			lifeTime = 2;
		};
	};
};

/////////////////
// UAV Classes //
/////////////////

class B_droid : droid_base
{
	scope                      = public;
	side                       = TWest;
	faction                    = BLU_F;
	crew                       = B_UAV_AI;
	typicalCargo[]             = {B_UAV_AI};

	hiddenSelectionsTextures[] = {"\droid\data\ucsv_blue_co.paa"};
	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"B_droid_backpack"};
	};
};
class B_droid_BLACK : B_droid 
{
	displayName                = "U.S.A.V. (BLACK)";
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_black_co.paa"};

	class assembleInfo : assembleInfo
	{
		dissasembleTo[]    = {"B_droid_BLACK_backpack"};
	};
};
class O_droid : droid_base
{
	scope                      = public;
	side                       = TEast;
	faction                    = OPF_F;
	crew                       = O_UAV_AI;
	typicalCargo[]             = {O_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"O_droid_backpack"};
	};
};
class I_droid : droid_base
{
	scope                      = public;
	side                       = TGuerrila;
	faction                    = IND_F;
	crew                       = I_UAV_AI;
	typicalCargo[]             = {I_UAV_AI};
	hiddenSelectionsTextures[] = {"\droid\data\ucsv_indp_co.paa"};

	class assembleInfo
	{
		primary            = 1;
		base               = "";
		assembleTo         = "";
		displayName        = "";
		dissasembleTo[]    = {"I_droid_backpack"};
	};
};

//////////////////////
// Backpack Classes //
//////////////////////

class B_UAV_01_backpack_F;
class O_UAV_01_backpack_F;
class I_UAV_01_backpack_F;

class B_droid_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_backpack";
	displayName             = "U.S.A.V Bag";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "B_droid";
		dissasembleTo[] = {};
	};

};
class B_droid_BLACK_backpack : B_UAV_01_backpack_F
{
	_generalMacro           = "B_droid_BLACK_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V (BLACK)";
		assembleTo      = "B_droid_BLACK";
		dissasembleTo[] = {};
	};
};
class O_droid_backpack : O_UAV_01_backpack_F 
{
	_generalMacro          = "O_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "O_droid";
		dissasembleTo[] = {};
	};
};
class I_droid_backpack : I_UAV_01_backpack_F
{
	_generalMacro           = "I_droid_backpack";

	class assembleInfo
	{
		primary         = 1;
		base            = "";
		displayName     = "U.S.A.V";
		assembleTo      = "I_droid";
		dissasembleTo[] = {};
	};
};
};

Edited by alexboy

Share this post


Link to post
Share on other sites

I've noticed two things, which are the only things I can see that are possibly wrong

first of all, I don't know if it matters but put

class Mode_SemiAuto; //This is an external refense

amongst your other external references

maybe you could use an existing 20mm cannon as a parent for your cannon instead of CannonCore, hell you could use the regular MX rifle as a parent for it.

And I guess you haven't added your sniper weapon to it.

Share this post


Link to post
Share on other sites

everything works perfectly basically now.. just cant change the modes of the weapon from burst, single, auto and also

I dont know if anyone knows how... but when i look down the gunner scope and zoom in alot... my bullet sometimes hits on the spot i am at... but also the UAV laser is off by a terrible amount... I cant figure out what point on the UAV memories that the laser comes out of I have done the laserstart and laser_end and moved them to align with my gunnerview ??? but no luck...

Share this post


Link to post
Share on other sites

FINALLY.... I found out how to take screen shots inside arma

here is a picture of the issue above

118054828@N03

Edited by alexboy
Fixed image

Share this post


Link to post
Share on other sites
the UAV laser is off by a terrible amount

Yeah, I was going to report this bug when I got the chance, same applies to the in game UAV so I don't think it's anything you have done. I didn't test the Darter, but the laser designator on other vehicle classes work ok, like the mini sub.

Share this post


Link to post
Share on other sites

for some reason my Darter no longer has a turret option? is that only me, I am also in Dev build ?

I think ill just release my UAV to the community and see if anyone has input on to it... just I cant make textures... so its a really bad looking texture....

you think i should release?

Regards,

Alexboy

Share this post


Link to post
Share on other sites

Any luck on the lasers being fixed yet? because mine have gotten closer... just not on the dot... also looking for someone to texture if anyone is up for it... also the ammo will most likely be a powerful round like a 50 cal rifle single... then possibly have an auto version

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×