Jump to content
Tankbuster

Editing, Expanding and Modifying Domination

Recommended Posts

Thank you Xeno! :D

Little question: Will @Arma2NET work on a Linux server?

More, are all these features also functional on a Linux Server?

Share this post


Link to post
Share on other sites

Hi there,

I have a problem to get the shoot in base auto kick function to work. I tried with the description but no luck.

Thanks for any help

anjan

Share this post


Link to post
Share on other sites
Thank you Xeno! :D

Little question: Will @Arma2NET work on a Linux server?

More, are all these features also functional on a Linux Server?

Not natively. Maybe, if you use WINE running Mono for Windows and a Windows dedicated server (no callExtension support in Linux dedicated servers yet). I've been wanting someone to see if this works.

Share this post


Link to post
Share on other sites

Anyone know how to increase the size of the damage protection zone in the base? I want to make it cover the bonus vehicle/chopper spawns to avoid having griefers going straight for a vehicle and nuking the base.

Share this post


Link to post
Share on other sites

anyone knows if there is a readme or pdf about the server parameters in any version out there? can't really find any info about it. i.e. what is BIS effects, vec options? what is TI ... and so on.

thanks a lot!

Edited by mike187

Share this post


Link to post
Share on other sites
anyone knows if there is a readme or pdf about the server parameters in any version out there? can't really find any info about it. i.e. what is BIS effects, vec options? what is TI ... and so on.

thanks a lot!

Don't know of a guide but...

BIS effect is a bug fix for the old sky fire bug, when you'd get permanent 500 foot fires on the map. I don't think it's necessary anymore and it breaks some mods like Blastcore.

TI = Thermal Imaging and it turns off all of the thermal imaging scopes in vehicles.

What vehicle options are you talking about?

Share this post


Link to post
Share on other sites

I have recently added BAF units to the AI Hut and I would like to have the screen show what units are US and what units are BAF. Is there any way I can have that done? I have looked through all the scripts and can't seem to find what script is actually used to list the units in the AI Recruit Dialog box.

Share this post


Link to post
Share on other sites
anyone knows if there is a readme or pdf about the server parameters in any version out there? can't really find any info about it. i.e. what is BIS effects, vec options? what is TI ... and so on.

thanks a lot!

You can google it i have find something hope it helps if you want to know any one specific just ask.

http://daoarge.kellys-heroes.eu/DTG.pdf

and Warfare BE parameters

https://dev-heaven.net/projects/warfare-be/wiki/Parameters

Edited by Ivan911

Share this post


Link to post
Share on other sites

hey is there a program that can help u edit the map to put in sign's with rules and put out some transport cars etc etc insteed of using scripts ?

i cant anything about scripts ^^ hehe

a friend of mine told me move the domi map to the mission folder in arma 2 OA and go ingame and edit but i cant find the map there :S idk how to fix it :/ :(

Share this post


Link to post
Share on other sites
Guest

@TheRing

Question moved to the "editing domination thread". The Q&A section is not meant to be used for editing questions!

Share this post


Link to post
Share on other sites

Hello all,

I'm hoping someone can help me here. I've added an actionMenu item and it works, but when you respawn the menu item is no longer there. How do I make this actionMenu available again after respawn? I'm trying this in Domination A2 v2.61. Any help would be great!

Thank you,

|Hellion28|

Share this post


Link to post
Share on other sites

Look in i_client.sqf around lines512 starting at this

// add action menu entries + scripts that will be executed to specific player types

// if the first array is empty, then all players will get that action menu entry

// default, nothing in it

// you have to set fourth element allways to -1000

// example:

// GVAR(action_menus_type) = [

// [[],"Whatever2", "whateverscript2.sqf", -1000], // ALL players will get the action menu entry "Whatever2"

// [["SoldierWMiner", "SoldierWAT","OfficerW"],"Whatever1", "whateverscript1.sqf", -1000] // only players of type SoldierWMiner, SoldierWAT and OfficerW will get the action menu entry "Whatever1"

// ];

// GVAR(action_menus_type) = [];

---------- Post added at 06:12 PM ---------- Previous post was at 06:07 PM ----------

Hey Medic8402

maybe you could add separate building and name it BAF recruit

in i_client.sqf this

#endif

if (GVAR(with_ai)) then {

// additional AI recruit buildings

// these have to be placed in the editor, give them a var name in the editor

// only client handling means, no damage handling done for those buildings (contrary to the standard AI hut)

// example:

// GVAR(additional_recruit_buildings) = [my_ai_building1, my_ai_building2];

GVAR(additional_recruit_buildings) = [];

};

Share this post


Link to post
Share on other sites

@mousetrap

I'll have to try that out once I get a chance. Gonna be busy the next few days with work at Skirmish.

Share this post


Link to post
Share on other sites

ok i added 2 new vehicles over mission.sqm ( first over editor, so i get the extra lanes for addOns[]= and addOnsAuto[]= )

my 2 new vehicles are 1x su34 and 1x AV8B LGB

this is what i changed/added

mission.sqm

	class Item374
	{
		position[]={6044.3364,83.040001,11655.687};
		azimut=135;
		id=529;
		side="EMPTY";
		vehicle="AV8B";
		skill=0.60000002;
		text="ch400";
	};
	class Item375
	{
		position[]={6057.9902,83.040001,11669.809};
		azimut=135;
		id=530;
		side="EMPTY";
		vehicle="Su34";
		skill=0.60000002;
		text="ch401";
	};

d_init.sqf

		case (__OAVer): {
			[[ch1,301,true],[ch2,302,false,600],[ch3,303,false,600],[ch4,304,false,600],[ch5,305,false,600],[ch6,306,false,600],[ch7,307,false,600],
                               [ch8,308,false,600],[ch9,309,false,600],[ch10,310,false,600],[ch11,311,false,600],[ch12,312,false,600],[ch13,313,false,600],[ch14,314,false,600]],[color="#800000"][ch400,400,false,600],[ch401,401,false,600]][/color] execVM "x_server\x_helirespawn2.sqf"
		};

i_client.sqf

	 case (__ACEVer || __OAVer): {
	GVAR(choppers) = [
		["HR1",0,"chopper1",301,"n_air","ColorOrange","Lift One","Lift One"], ["HR2",2,"chopper2",302,"n_air","ColorOrange","1.UH-60",""],
		["HR3",2,"chopper3",303,"n_air","ColorOrange","2.UH-60",""], ["HR4",1,"chopper4",304,"n_air","ColorOrange","W","Wreck Lift"],
		["HR5",2,"chopper5",305,"n_air","ColorOrange","1.AH-6J",""], ["HR6",2,"chopper6",306,"n_air","ColorOrange","2.AH-6J",""], 
		["HR7",2,"chopper7",307,"n_plane","ColorOrange","A-10",""], ["HR8",2,"chopper8",308,"n_plane","ColorOrange","2.C130",""],
		["HR9",2,"chopper9",309,"n_air","ColorOrange","UH-60 Tequila",""], ["HR10",2,"chopper10",310,"n_air","ColorOrange","AH-6J Tequila",""],
		["HR11",2,"chopper11",311,"n_air","ColorOrange","HC3 Wiskey",""], ["HR12",2,"chopper12",312,"n_air","ColorOrange","AH-6J Wiskey",""],
		["HR13",2,"chopper13",313,"n_air","ColorOrange","1.KA-60 Cocktail",""], ["HR14",2,"chopper14",314,"n_air","ColorOrange","2.KA-60 Cocktail",""],
		[color="#800000"]["HR15",2,"chopper15",400,"n_plane","ColorOrange","AV8B LGB",""], ["HR16",2,"chopper16",401,"n_plane","ColorOrange","SU34",""][/color]
	];
};

and there is no spawn/respawn for this 2 airplanes, whats wrong? ( sry i'm a noob at modifying maps but a read many posts in this thread and trying it over "try & error" but now.....i dont know :(

edit:// ok i fix it now....

Edited by wrongbottle

Share this post


Link to post
Share on other sites

Thanks for the help mousetrap!

I have another question, how would I restrict these actionmenu items to two units? I've tried the following in the i_client file with no success.

GVAR(action_menus_unit) = [

[["FAC", "FAC2","FAC3"],"Call Artillery", "artillery.sqf", -1000]

];

The units FAC - FAC3 don't have an actionmenu option, what am I doing wrong? I'm assuming the FAC - FAC3 are the Names: for each unit.

Share this post


Link to post
Share on other sites

I`ve got a quick question.

I remember there was an option in one of the scripts where you could setup how many satchels you need to take down the radio (using A2 2.60 Domi). Obviously 5 satchels for a radiotower is to much.

Could anyone point out which is that script?

Thanks in advance

Pero

Share this post


Link to post
Share on other sites

In \x_server\x_f\x_serverfuncs.sqf

find this

_r = (_this select 2) / 5;

change 5 to 3 for 3 satchels

this is the section its in below

#endif

};

FUNC(CheckMTShotHD) = {

private ["_tower", "_r", "_val"];

PARAMS_1(_tower);

_r = 0;

if ((toUpper(getText(configFile >> "CfgAmmo" >> (_this select 4) >> "simulation")) in GVAR(hd_sim_types)) || ((_this select 4) == "ACE_PipebombExplosion")) then {

_r = (_this select 2) / 5;

} else {

if (GVAR(MTTowerSatchelsOnly) == 1) then {

if (getText(configFile >> "CfgAmmo" >> (_this select 4) >> "CraterEffects") == "BombCrater") then {

_r = _this select 2;

};

};

};

_val = _tower getVariable QGVAR(damt);

if (isNil "_val") then {_val = 0};

_r = _r + _val;

_tower setVariable [QGVAR(damt), _r];

_r

};

FUNC(CheckMTHardTarget) = {

---------- Post added at 12:12 PM ---------- Previous post was at 12:03 PM ----------

to Hellion38

your FAC =Foward Air Controler ?

this is in Mission.sqm and called "RESCUE" "RESCUE2"

side="WEST";

vehicle="FR_Commander";

player="PLAYER COMMANDER";

leader=1;

lock="UNLOCKED";

skill=0.60000002;

text="RESCUE";

init="this setGroupid [""Artillery 1""];";

description="First Artillery Operator and Rescue";

Look in i_client.sqf

maybe this will help

// is artillery operator

// please be aware that Dom 2 only supports two artillery operators in the non AI versions

// in the AI version everybody can call in artillery though only one arty is used

GVAR(can_use_artillery) = ["RESCUE","RESCUE2"];

Share this post


Link to post
Share on other sites
Dorph;2185204']Hello

Having some troubles lifting stuff with the liftchopper in the final 2.61ver and also in latest 2.62ver.

Seems i can only lift the 2 mhq's + the mtvr-truck. All the other trucks in base it cannot lift ammo/fuel/repair etc.

Im using the WEST OA-DLC 2.62 ver' date=' and been poking a little around in the i_client.sqf where in the "helilift1_types" array

i used to fix this.

I suppose i should do it under _own_side_west_ / case (_OAVer) but no matter what vehicles i put in, it will only lift mhq + mtvr.

Any expirience same problems ?[/quote']

Hi [HUD] Dorph, old friend,

Today I had the same problem.

Take the files x_client\"x_chop_hud.sqf" and x_client\"x_helilift.sqf" from version 2.60.

For me it has no negative consequences. I may be in the "i_client.sqf" all vehicles enter again - it works well. All vehicles can be transported with the liftchoppers.

WreckMarkers and Wreckchoppers are not affected and work well.

Greetings, Bob (GERmany)

"x_chop_hud.sqf"

// by Xeno
#define THIS_FILE "x_chop_hud.sqf"
#include "x_setup.sqf"
private ["_state", "_vec", "_hud", "_control", "_chopttype", "_hudoff", "_nobjects", "_nearest", "_dummy", "_chdispx", "_nx", "_ny", "_px", "_py", "_control2", "_angle", "_a", "_b", "_dif", "_chdispx2", "_controlxx","_distvstr"];

sleep 1.012;

_X_Chopper_Welcome = {};

disableSerialization;

if (GVAR(show_chopper_welcome)) then {
GVAR(rsc_end) = true;

GVAR(xxvllist) = [];

_X_Chopper_Welcome = {
	private ["_state", "_vec", "_welcome_str1", "_welcome_str2", "_welcome_str3", "_welcome_str4", "_end_welcome", "_hud", "_control"];
	disableSerialization;
	GVAR(rsc_end) = false;
	PARAMS_2(_state,_vec);
	_welcome_str1 = "Willkommen an Bord, " + GVAR(name_pl) + "!";

	switch (_state) do {
		case 1: {
			_welcome_str2 = "Dies ist der Wrack-Helikopter.";
			_welcome_str3 = "Er kann nur Wracks heben.";
		};
		case 0: {
			_welcome_str2 = "Dies ist ein Transport-Helikopter.";
			_welcome_str3 = "Er kann bestimmte Fahrzeuge heben, aber keine Wracks.";
		};
		default {
			_welcome_str2 = "Dies ist ein normaler Helikopter.";
			_welcome_str3 = "Er ist nicht in der Lage etwas zu heben.";
		};
	};

	_ttyp = toUpper (typeOf _vec);
	if (count GVAR(xxvllist) == 0) then {
		{GVAR(xxvllist) set [count GVAR(xxvllist), toUpper _x]} forEach GVAR(check_ammo_load_vecs);
	};
	_welcome_str4 = if (_ttyp in GVAR(xxvllist)) then {
		 "Er kann eine Waffenkiste aufladen."
	} else {
		"Er kann keine Waffenkiste aufladen."
	};

	_end_welcome = time + 14;
	67322 cutRsc ["chopper_hud", "PLAIN"];
	_hud = __uiGetVar(DCHOP_HUD);
	#define __CTRL(A) (_hud displayCtrl A)
	while {vehicle player != player && alive player && player == driver _vec} do {
		__CTRL(64438) ctrlSetText _welcome_str1;
		__CTRL(64439) ctrlSetText _welcome_str2;
		__CTRL(64440) ctrlSetText _welcome_str3;
		__CTRL(64441) ctrlSetText _welcome_str4;
		if (time >= _end_welcome) exitWith {};
		sleep 0.431;
	};
	67322 cutRsc ["Default", "PLAIN",1];
	GVAR(rsc_end) = true;
};
};

_ui_forward = "\CA\ui\data\ui_tankdir_forward_ca.paa";
_ui_back = "\CA\ui\data\ui_tankdir_back_ca.paa";
_ui_left = "\CA\ui\data\ui_tankdir_left_ca.paa";
_ui_right = "\CA\ui\data\ui_tankdir_right_ca.paa";
_ui_tohigh = "\CA\ui\data\tankdir_turret_ca.paa";
_ui_ok = "\CA\ui\data\ui_tankdir_tower_ca.paa";

_distvstr = "Dist to vec: %1";
_typestr = "Type: %1";
_liftstr = "Lifting %1";
_distgrstr = "Dist attached to ground: %1";

#define __CTRL2(B) (_chdispx displayCtrl B)
#define __CTRL3(B) (_chdispx2 displayCtrl B)

while {true} do {
waitUntil {alive player};
waitUntil {sleep random 0.3;vehicle player != player};
_vec = vehicle player;
while {vehicle player != player} do {
	if (player == driver _vec) then {
		if (_vec isKindOf "Helicopter" && !(_vec isKindOf "ParachuteBase") && !(_vec isKindOf "BIS_Steerable_Parachute")) then {
			_chopttype = GV(_vec,GVAR(choppertype));
			if (isNil "_chopttype") then {_chopttype = -1};
			if (GVAR(show_chopper_welcome)) then {
				if (_chopttype > -1) then {
					[_chopttype,_vec] spawn _X_Chopper_Welcome;
					sleep 0.321;
					waitUntil {GVAR(rsc_end)};
				};
			};
			if (_chopttype in [0,1]) then {
				if (isNil {GV(_vec,GVAR(Vehicle_Attached))}) then {_vec setVariable [QGVAR(Vehicle_Attached), false]};
				_search_height = 0;
				_lift_height = 0;
				_possible_types = GV(_vec,GVAR(lift_types));
				if (_chopttype == 1) then {
					_search_height = 70;
					_lift_height = 50;
				} else {
					_search_height = 50;
					_lift_height = 50;
				};
				_hudoff = true;
				while {vehicle player != player && alive player && player == driver _vec} do {
					if (GVAR(chophud_on)) then {
						_hudoff = false;
						_nobjects = nearestObjects [_vec, ["LandVehicle","Air"],_search_height];
						_nearest = objNull;
						if (count _nobjects > 0) then {
							_dummy = _nobjects select 0;
							if (_dummy == _vec) then {
								if (count _nobjects > 1) then {_nearest = _nobjects select 1};
							} else {
								_nearest = _dummy;
							};
							_lift_height = 11;
						};

						private "_marp";
						_marp = GV(_nearest,GVAR(WreckMaxRepair));
						if (isNil "_marp") then {_marp = GVAR(WreckMaxRepair)};
						_check_cond = if (_chopttype == 1) then {
							 (!isNull _nearest && damage _nearest >= 1 && ((typeof _nearest) in _possible_types) && _marp > 0)
						} else {
							(!isNull _nearest && ((typeof _nearest) in _possible_types) && (position _vec) select 2 > 2.5)
						};

						sleep 0.001;

						if (_check_cond) then {
							67321 cutRsc ["chopper_lift_hud", "PLAIN"];
							_chdispx = __uiGetVar(DCHOP_LIFT_HUD);
							__CTRL2(64440) ctrlSetText (if (_chopttype == 1) then {"Wreck Lift Chopper"} else {"Lift Chopper"});

							_type_name = [typeof _nearest,0] call FUNC(GetDisplayName);
							__CTRL2(64438) ctrlSetText (if !(GV(_vec,GVAR(Vehicle_Attached))) then {format [_typestr, _type_name]} else {format [_liftstr, _type_name]});
							__CTRL2(64439) ctrlSetText (if (getText (configFile >> "CfgVehicles" >> typeof _nearest >> "picture") != "picturestaticobject") then {
								 getText (configFile >> "CfgVehicles" >> typeof _nearest >> "picture")
							} else {
								""
							});

							if !(GV(_vec,GVAR(Vehicle_Attached))) then {
								__CTRL2(64441) ctrlSetText format [_distvstr, _vec distance _nearest];
								_nearest_pos = position _nearest;
								_pos_vec = position _vec;
								_nx = _nearest_pos select 0;_ny = _nearest_pos select 1;_px = _pos_vec select 0;_py = _pos_vec select 1;
								if ((_px <= _nx + 10 && _px >= _nx - 10) && (_py <= _ny + 10 && _py >= _ny - 10) && (_pos_vec select 2 < _lift_height)) then {
									__CTRL2(64448) ctrlSetText _ui_ok;
								} else {
									__CTRL2(64442) ctrlSetText (if ((position _vec) select 2 >= _lift_height) then {"Too high"} else {""});
									__CTRL2(64447) ctrlSetText _ui_tohigh;
									_angle = 0; _a = ((_nearest_pos select 0) - (_pos_vec select 0));_b = ((_nearest_pos select 1) - (_pos_vec select 1));
									if (_a != 0 || _b != 0) then {_angle = _a atan2 _b}; 

									_dif = _angle - direction _vec;
									if (_dif < 0) then {_dif = 360 + _dif};
									if (_dif > 180) then {_dif = _dif - 360};
									_angle = _dif;
									__CTRL2(64444) ctrlSetText (if (_angle >= -70 && _angle <= 70) then {_ui_forward} else {""});
									__CTRL2(64446) ctrlSetText (if (_angle >= 20 && _angle <= 160) then {_ui_right} else {""});
									__CTRL2(64443) ctrlSetText (if (_angle <= -110 || _angle >= 110) then {_ui_back} else {""});
									__CTRL2(64445) ctrlSetText (if (_angle <= -20 && _angle >= -160) then {_ui_left} else {""});
									sleep 0.001;
								};
							} else {
								__CTRL2(64441) ctrlSetText format [_distgrstr, (position _nearest) select 2];
								__CTRL2(64442) ctrlSetText "Attached";
								sleep 0.001;
							};
						} else {
							67321 cutRsc ["Default", "PLAIN"];
							67322 cutRsc ["chopper_lift_hud2", "PLAIN"];
							_chdispx2 = __uiGetVar(DCHOP_HUD2);
							__CTRL3(61422) ctrlSetText (switch (_chopttype) do {
								case 1: {"Wreck Lift Chopper"};
								case 0: {"Lift Chopper"};
							});
						};
					} else {
						if (!_hudoff) then {
							_hudoff = true;
							67321 cutRsc ["Default", "PLAIN"];
							67322 cutRsc ["Default", "PLAIN"];
						};
					};
					sleep 0.231;
				};
				67321 cutRsc ["Default", "PLAIN"];
				67322 cutRsc ["Default", "PLAIN"];
			} else {
				67322 cutRsc ["chopper_lift_hud2", "PLAIN"];
				_chdispx2 = __uiGetVar(DCHOP_HUD2);
				__CTRL3(61422) ctrlSetText "Normal Chopper";
				while {vehicle player != player && alive player && player == driver _vec} do {
					sleep 0.421;
				};
				67322 cutRsc ["Default", "PLAIN"];
			};
		};
	};
	sleep 0.432;
};
waitUntil {sleep random 0.2; vehicle player == player};	
};

"x_helilift.sqf"

// by Xeno
#define THIS_FILE "x_helilift.sqf"
#include "x_setup.sqf"
private ["_vehicle", "_nearest", "_id", "_pos", "_nobjects", "_dummy", "_depl", "_nx", "_ny", "_px", "_py", "_npos", "_fuelloss"];
if (!X_Client) exitWith {};

PARAMS_1(_vehicle);

_menu_lift_shown = false;
_nearest = objNull;
_id = -1212;
_release_id = -1212;

_vehicle setVariable [QGVAR(Vehicle_Attached), false];
_vehicle setVariable [QGVAR(Vehicle_Released), false];
_vehicle setVariable [QGVAR(Attached_Vec), objNull];

sleep 10.123;

_possible_types = GV(_vehicle,GVAR(lift_types));

while {alive _vehicle && alive player && (player in _vehicle)} do {
if ((driver _vehicle) == player) then {
	_pos = getPos _vehicle;

	if (!(GV(_vehicle,GVAR(Vehicle_Attached))) && (_pos select 2 > 2.5) && (_pos select 2 < 11)) then {
		_nearest = objNull;
		_nobjects = nearestObjects [_vehicle, ["LandVehicle","Air"],40];
		if (count _nobjects > 0) then {
			_dummy = _nobjects select 0;
			if (_dummy == _vehicle) then {
				if (count _nobjects > 1) then {_nearest = _nobjects select 1};
			} else {
				_nearest = _dummy;
			};
		};
		if (!isNull _nearest) then {
			if (_nearest isKindOf "Man") then {
				_nearest = objNull;
			} else {
				if ((speed _nearest > 10) || (position _nearest select 2 > 5) || !((typeof _nearest) in _possible_types)) then {_nearest = objNull};
			};
		};
		sleep 0.1;
		if (!isNull _nearest && _nearest != (GV(_vehicle,GVAR(Attached_Vec)))) then {
			_depl = GV(_nearest,GVAR(MHQ_Deployed));
			if (isNil "_depl") then {_depl = false};
			if (!_depl) then {
				_nearest_pos = getPos _nearest;
				_nx = _nearest_pos select 0;_ny = _nearest_pos select 1;_px = _pos select 0;_py = _pos select 1;
				if ((_px <= _nx + 10 && _px >= _nx - 10) && (_py <= _ny + 10 && _py >= _ny - 10)) then {
					if (!_menu_lift_shown) then {
						_id = _vehicle addAction ["Fahrzeug aufnehmen" call FUNC(BlueText), "x_client\x_heli_action.sqf",-1,100000];
						_menu_lift_shown = true;
					};
				} else {
					_nearest = objNull;
					if (_menu_lift_shown) then {
						_vehicle removeAction _id;
						_id = -1212;
						_menu_lift_shown = false;
					};
				};
			};
		};
	} else {
		if (_menu_lift_shown) then {
			_vehicle removeAction _id;
			_id = -1212;
			_menu_lift_shown = false;
		};

		sleep 0.1;

		if (isNull _nearest) then {
			_vehicle setVariable [QGVAR(Vehicle_Attached), false];
			_vehicle setVariable [QGVAR(Vehicle_Released), false];
		} else {
			if (GV(_vehicle,GVAR(Vehicle_Attached))) then {
				_release_id = _vehicle addAction ["Fahrzeug absetzen" call FUNC(RedText), "x_client\x_heli_release.sqf",-1,100000];
				[_vehicle, "Fahrzeug wurde aufgenommen"] call FUNC(VehicleChat);
				_vehicle setVariable [QGVAR(Attached_Vec), _nearest];

				switch (_nearest) do {
					case MRR1: {
						["mr1_in_air",true] call FUNC(NetSetJIP);
						#ifndef __TT__
						player kbTell [GVAR(kb_logic1),GVAR(kb_topic_side),"Dmr1_in_air",true];
						#else
						player kbTell [GVAR(hq_logic_en1),"HQ_W","Dmr1_in_air",true];
						#endif
						[QGVAR(mr1_l_c), _vehicle] call FUNC(NetCallEvent);
					};
					case MRR2: {
						["mr2_in_air",true] call FUNC(NetSetJIP);
						#ifndef __TT__
						player kbTell [GVAR(kb_logic1),GVAR(kb_topic_side),"Dmr2_in_air",true];
						#else
						player kbTell [GVAR(hq_logic_en1),"HQ_W","Dmr2_in_air",true];
						#endif
						[QGVAR(mr2_l_c), _vehicle] call FUNC(NetCallEvent);
					};
#ifdef __TT__
					case MRRR1: {
						["mrr1_in_air",true] call FUNC(NetSetJIP);
						player kbTell [GVAR(hq_logic_ru1),"HQ_E","Dmr1_in_air",true];
						[QGVAR(mrr1_l_c), _vehicle] call FUNC(NetCallEvent);
					};
					case MRRR2: {
						["mrr2_in_air",true] call FUNC(NetSetJIP);
						player kbTell [GVAR(hq_logic_ru1),"HQ_E","Dmr2_in_air",true];
						[QGVAR(mrr2_l_c), _vehicle] call FUNC(NetCallEvent);
					};
#endif
				};

				_fuelloss = switch (true) do {
					case (_vehicle isKindOf "Wheeled_APC"): {0.0002};
					case (_vehicle isKindOf "Car"): {0.0001};
					case (_vehicle isKindOf "Air"): {0.0003};
					case (_vehicle isKindOf "TANK"): {0.0005};
					default {0.0001};
				};

				_nearest engineOn false;
				_nearest attachTo [_vehicle, [0,0,-15]];

				while {alive _vehicle && alive _nearest && alive player && !(GV(_vehicle,GVAR(Vehicle_Released))) && (player in _vehicle)} do {
					_vehicle setFuel ((fuel _vehicle) - _fuelloss);
					sleep 0.312;
				};
				detach _nearest;					
				_nearest setVelocity [0,0,0];
				_nearest engineOn false;
				if (position _nearest select 2 > 5) then {
					_nearest spawn {
						while {position _this select 2 > 5} do {
							_this setDamage ((damage _this) + 0.01);
							sleep 0.1;
							if (!alive _this) exitWith {};
						};
					};
				};

				_vehicle setVariable [QGVAR(Vehicle_Attached), false];
				_vehicle setVariable [QGVAR(Vehicle_Released), false];

				switch (_nearest) do {
					case MRR1: {
						["mr1_in_air",false] call FUNC(NetSetJIP);
						[QGVAR(mr1_l_c), objNull] call FUNC(NetCallEvent);
						#ifndef __TT__
						player kbTell [GVAR(kb_logic1),GVAR(kb_topic_side),"Dmr1_available",true];
						#else
						player kbTell [GVAR(hq_logic_en1),"HQ_W","Dmr1_available",true];
						#endif
					};
					case MRR2: {
						["mr2_in_air",false] call FUNC(NetSetJIP);
						[QGVAR(mr2_l_c), objNull] call FUNC(NetCallEvent);
						#ifndef __TT__
						player kbTell [GVAR(kb_logic1),GVAR(kb_topic_side),"Dmr2_available",true];
						#else
						player kbTell [GVAR(hq_logic_en1),"HQ_W","Dmr2_available",true];
						#endif
					};
#ifdef __TT__
					case MRRR1: {
						["mrr1_in_air",false] call FUNC(NetSetJIP);
						[QGVAR(mrr1_l_c), objNull] call FUNC(NetCallEvent);
						player kbTell [GVAR(hq_logic_ru1),"HQ_E","Dmr1_available",true];
					};
					case MRRR2: {
						["mrr2_in_air",false] call FUNC(NetSetJIP);
						[QGVAR(mrr2_l_c), objNull] call FUNC(NetCallEvent);
						player kbTell [GVAR(hq_logic_ru1),"HQ_E","Dmr2_available",true];
					};
#endif
				};

				_vehicle setVariable [QGVAR(Attached_Vec), objNull];

				if (!alive _vehicle) then {
					_vehicle removeAction _release_id;
				} else {
					if (alive _vehicle && alive player) then {[_vehicle, "Fahrzeug wurde abgesetzt"] call FUNC(VehicleChat)};
				};

				if (!(_nearest isKindOf "StaticWeapon") && (position _nearest) select 2 < 200) then {
					waitUntil {(position _nearest) select 2 < 10};
				} else {
					_npos = position _nearest;
					_nearest setPos [_npos select 0, _npos select 1, 0];
				};
				_nearest setVelocity [0,0,0];

				sleep 1.012;
			};
		};
	};
};
sleep 0.51;
};

if (alive _vehicle) then {
if (_id != -1212) then {_vehicle removeAction _id};
if (_release_id != -1212) then {_vehicle removeAction _release_id};
};

Edited by S@ndBob

Share this post


Link to post
Share on other sites
Hi [HUD] Dorph, old friend,

Today I had the same problem.

[/code]

Thx Bob - Xeno already fixed it in latest ver :)

Another question - I used to change the welcome message when you board the liftchopper. I did that in the

"x_client\x_chop_hud.sqf" where the text was. Now the text isnt there anymore, but refers to a mission string like

_welcome_str2 = localize "STR_DOM_MISSIONSTRING_184";

Where do i change that welcome message ?

Edited by [HUD]Dorph

Share this post


Link to post
Share on other sites
Dorph;2205858']

_welcome_str2 = localize "STR_DOM_MISSIONSTRING_184";

Where do i change that welcome message ?

Open stringtable.xml in the mission root folder with a text editor (notepad++ for example) and search for STR_DOM_MISSIONSTRING_184.

There you can replace it.

Xeno

Share this post


Link to post
Share on other sites
Open stringtable.xml in the mission root folder with a text editor (notepad++ for example) and search for STR_DOM_MISSIONSTRING_184.

There you can replace it.

Xeno

Thx Xeno

Share this post


Link to post
Share on other sites

Xeno

PM sent about Dom 270 bug

(can't file report on the Domination site)

Thanks

FIXED in 271

Thanks

Edited by mousetrap
update

Share this post


Link to post
Share on other sites

Hello,

I've added a backpack heap on the ground,all is almost working except that when i choose a backpack,it doesnt take it.

It's working for one unit out of the 10 though.

I've searched on the forum but i don't find what i've done wrong.

A little help would be appreciated please.

Share this post


Link to post
Share on other sites

ehm, sorry if they are stupid questions, but I've tried to search google and this thread with no good results :

I'm using Domi 2.61 (the last one that still works for Arma 2/Arma 2 Free and have problems with

a) ammobox not showing marker and sometimes disappear

b) vehicles not being liftable (only MHQ and MTVR)

any help would be much appreciated :D

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

×