Jump to content
Tankbuster

Editing, Expanding and Modifying Domination

Recommended Posts

Tankbuster, help me plz. Lets work all together and edit a duala-content only domination , with afrenians as playable units, their vehicles and planes, vs molatian army on main targets ..

Sounds like a great idea, but I'm afraid I don't have the time to take on another project. Sorry.

---------- Post added at 17:12 ---------- Previous post was at 17:10 ----------

Basically I need the satchel charge kick area to cover the whole of the base, I've had people coming on and blowing up the base and vehicles, even tho its turned on for kick. Thanks.

It works for me. Sorry that doesn't help you much. Is there anything of interest in the server RPT?

Share this post


Link to post
Share on other sites

I have been through this thread and http://forums.bistudio.com/showthread.php?t=75257&highlight=backpack&page=188 (yes all 188 pages took me sometime though).

I am still having problems with the backpacks working after I edit and PBO the Domination mission. However, I have figured out that ACE Backpack is one taking place of the script version. My squad and I don't really care for ACE's Backback setup. How do I Disable ACE's backpack and use the domination version?

Share this post


Link to post
Share on other sites
Sounds like a great idea, but I'm afraid I don't have the time to take on another project. Sorry.

---------- Post added at 17:12 ---------- Previous post was at 17:10 ----------

It works for me. Sorry that doesn't help you much. Is there anything of interest in the server RPT?

Sorry I don't quite understand what you mean.

People are doing it all the time to my server. Just annoying that its not kicking people planting around the whole base.

Share this post


Link to post
Share on other sites

@mycatsaid

Are they able to plant at your flagpole or near it as well or are they doing it at more of a distance?

Look for this in your discription.ext file:

};

class GVAR(player_kick_shootingbase) {
	title = "Kick players shooting at base:";
	values[] = {2,3,5,10,20,30,1000};
	default = 20;
	texts[] = {"2 Shots","3 Shots","5 Shots","10 Shots","20 Shots","30 Shots","No kick"};
};

class GVAR(kick_base_satchel) {
	title = "Kick for base satchel:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

Make sure kick_base_satchel default setting is at "0". If they are doing it further out I am not sure how to help you. I will test this on my server and see if I cannot be more helpfull.

-Nuke

Share this post


Link to post
Share on other sites
@mycatsaid

Are they able to plant at your flagpole or near it as well or are they doing it at more of a distance?

Look for this in your discription.ext file:

};

class GVAR(player_kick_shootingbase) {
	title = "Kick players shooting at base:";
	values[] = {2,3,5,10,20,30,1000};
	default = 20;
	texts[] = {"2 Shots","3 Shots","5 Shots","10 Shots","20 Shots","30 Shots","No kick"};
};

class GVAR(kick_base_satchel) {
	title = "Kick for base satchel:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};
};

Make sure kick_base_satchel default setting is at "0". If they are doing it further out I am not sure how to help you. I will test this on my server and see if I cannot be more helpfull.

-Nuke

Yeah that's what I've got and still they can plant outside the flag just not near that area. I might just go have a look at other maps and see if their version works, if it does it may save time to do what others have suggested and use someone elses. But it's strange that I'm using one of the updated versions from the domi site and it didn't work :S

Share this post


Link to post
Share on other sites

I'm using Takistan for this example but it's easy to modify. Assuming we're going with the one-team version here, go down for the very bottom of x_client\x_setupplayer.sqf and look for

#ifndef __TT__

d_player_base_trig = createTrigger["EmptyDetector" ,d_base_array select 0];

d_player_base_trig setTriggerArea [d_base_array select 1, d_base_array select 2, d_base_array select 3, true];

Here is what I changed it to in my test:

#ifndef __TT__

d_player_base_trig = createTrigger["EmptyDetector" ,(getmarkerpos "start")];

d_player_base_trig setTriggerArea [200, 450, 60, true];

That changes the satchel placement trigger area to be a 200x450 rectangle at a 60 degree angle centered on the yellow "Start". It covers the entire base and kicks anyone trying to place a satchel in that area.

Now for my own question. Has anyone come up with a cleanup script to occasionally get rid of all the dropped weapons on the ground? It gets out of hand at times and servers need all the help they can get with Domination.

Share this post


Link to post
Share on other sites
I'm using Takistan for this example but it's easy to modify. Assuming we're going with the one-team version here, go down for the very bottom of x_client\x_setupplayer.sqf and look for

#ifndef __TT__

d_player_base_trig = createTrigger["EmptyDetector" ,d_base_array select 0];

d_player_base_trig setTriggerArea [d_base_array select 1, d_base_array select 2, d_base_array select 3, true];

Here is what I changed it to in my test:

#ifndef __TT__

d_player_base_trig = createTrigger["EmptyDetector" ,(getmarkerpos "start")];

d_player_base_trig setTriggerArea [200, 450, 60, true];

That changes the satchel placement trigger area to be a 200x450 rectangle at a 60 degree angle centered on the yellow "Start". It covers the entire base and kicks anyone trying to place a satchel in that area.

Now for my own question. Has anyone come up with a cleanup script to occasionally get rid of all the dropped weapons on the ground? It gets out of hand at times and servers need all the help they can get with Domination.

Ah sweet, nice one man. I'll try it out. I'll report back!

Can't thank you enough. Works fine. So happy there will be no more noobs blowing the base up.

Can I just ask also, maybe a nooby question but how do you keep your server running when everyone leaves? When everyone is finnished playing on my server the map will end and it will make the server go back to "creating" again instead of just waiting were the last people left off. Thanks again!

Edited by mycatsaid

Share this post


Link to post
Share on other sites

I'm using this in x_server\x_serverOPD.sqf (onplayerdisconnect), to clean up all bags and weaponholders 5 minutes after the last man logs off:

[] spawn {
if (call XPlayersNumber == 1) then {
	diag_log "####---x_serverOPD.sqf---#### Last player left, preparing to clean up abandoned stuff after 5 minutes.";
	sleep 300;
	if (call XPlayersNumber > 1) exitWith {diag_log "####---x_serverOPD.sqf---#### Somebody joined within 5 minutes. Skipping cleanup."};
	diag_log "####---x_serverOPD.sqf---#### 5 minutes have passed. Startint to clean up.";
	_tt = time;
	_no = nearestObjects [d_island_center,["weaponholder","Bag_Base_EP1"],10000];
	for "_i" from 0 to count _no - 1 do {
		deleteVehicle (_no select _i);
		sleep 0.056;
	};
	diag_log format ["####---x_serverOPD.sqf---#### Cleanup of abandoned stuff complete in %1 seconds.",time - _tt];
} else {
	diag_log "####---x_serverOPD.sqf---#### Still players here, will do nothing";
};
};

You may want to give it also to admin, or keep a running check and clean up regularly if you like. Just be sure to inform players a minute in advance so they can prepare :) The logging is just to verify it works, provided as example only.

Share this post


Link to post
Share on other sites

Excellent, thanks. I'll give that a try.

Can I just ask also, maybe a nooby question but how do you keep your server running when everyone leaves? When everyone is finnished playing on my server the map will end and it will make the server go back to "creating" again instead of just waiting were the last people left off. Thanks again!

In your server cfg put persistent=1; in there if it is not already in there. If it's at 0, set it to 1.

Share this post


Link to post
Share on other sites
Excellent, thanks. I'll give that a try.

In your server cfg put persistent=1; in there if it is not already in there. If it's at 0, set it to 1.

Ah right! Thanks again!

Does anyone know why some names are not showing up on the map as well? When you set Show player names and stuff in status to "show names" only certain people show up. Is there a way to fix that issue?

Thanks to everyone who has helped so far!

Edited by mycatsaid

Share this post


Link to post
Share on other sites

That is a marker array not having everyone in it.

I'm guessing you added more units.

I can't remember where I found the marker array, but it is somewhere around here. Let me look.

--EDIT--

Look in i_common.sqf. It should be near the bottom in v2.29

// for markers and revive (same like NORRN_player_units)

d_player_entities = switch (true) do {

case (__ACEVer): {

["RESCUE","RESCUE2","alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","alpha_6","alpha_7","alpha_8","bravo_1","bravo_2","bravo_4","bravo_5","bravo_6","bravo_7","bravo_8","charlie_1","charlie_2","charlie_4","charlie_5","charlie_6","charlie_7","charlie_8","delta_1","delta_2","delta_3","delta_4","delta_5","echo_1","echo_2","echo_4","echo_5","echo_6","echo_7","echo_8","pilot_1","pilot_2","pilot_3","pilot_4"]

};

case (__OAVer): {

["RESCUE","RESCUE2","alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","alpha_6","alpha_7","alpha_8","bravo_1","bravo_2","bravo_3","bravo_4","bravo_5","bravo_6","bravo_7","bravo_8","charlie_1","charlie_2","charlie_3","charlie_4","charlie_5","charlie_6","charlie_7","charlie_8","delta_1","delta_2","delta_3","delta_4","echo_1","echo_2","echo_4","echo_5","echo_6","echo_7","echo_8"]

};

default {

["RESCUE","RESCUE2","alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","alpha_6","alpha_7","alpha_8","bravo_1","bravo_2","bravo_3","bravo_4","bravo_5","bravo_6","bravo_7","bravo_8","charlie_1","charlie_2","charlie_3","charlie_4","charlie_5","charlie_6","charlie_7","charlie_8","delta_1","delta_2","delta_3","delta_4","delta_5","delta_6","echo_1","echo_2","echo_3","echo_4","echo_5","echo_6","echo_7","echo_8"]

};

};

Edited by DarkGuerilla

Share this post


Link to post
Share on other sites
That is a marker array not having everyone in it.

I'm guessing you added more units.

I can't remember where I found the marker array, but it is somewhere around here. Let me look.

--EDIT--

Look in i_common.sqf. It should be near the bottom in v2.29

// for markers and revive (same like NORRN_player_units)

d_player_entities = switch (true) do {

case (__ACEVer): {

["RESCUE","RESCUE2","alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","alpha_6","alpha_7","alpha_8","bravo_1","bravo_2","bravo_4","bravo_5","bravo_6","bravo_7","bravo_8","charlie_1","charlie_2","charlie_4","charlie_5","charlie_6","charlie_7","charlie_8","delta_1","delta_2","delta_3","delta_4","delta_5","echo_1","echo_2","echo_4","echo_5","echo_6","echo_7","echo_8","pilot_1","pilot_2","pilot_3","pilot_4"]

};

case (__OAVer): {

["RESCUE","RESCUE2","alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","alpha_6","alpha_7","alpha_8","bravo_1","bravo_2","bravo_3","bravo_4","bravo_5","bravo_6","bravo_7","bravo_8","charlie_1","charlie_2","charlie_3","charlie_4","charlie_5","charlie_6","charlie_7","charlie_8","delta_1","delta_2","delta_3","delta_4","echo_1","echo_2","echo_4","echo_5","echo_6","echo_7","echo_8"]

};

default {

["RESCUE","RESCUE2","alpha_1","alpha_2","alpha_3","alpha_4","alpha_5","alpha_6","alpha_7","alpha_8","bravo_1","bravo_2","bravo_3","bravo_4","bravo_5","bravo_6","bravo_7","bravo_8","charlie_1","charlie_2","charlie_3","charlie_4","charlie_5","charlie_6","charlie_7","charlie_8","delta_1","delta_2","delta_3","delta_4","delta_5","delta_6","echo_1","echo_2","echo_3","echo_4","echo_5","echo_6","echo_7","echo_8"]

};

};

Aha, thanks again for helping me guys!

I could remember the code line but I couldn't remember what file it was in, there's so many files :S

Thanks!

Share this post


Link to post
Share on other sites

As a general rule, AI stuff is in i_server.sqf or the x_server directory. Player stuff is in i_client.sqf or x_client. i_common.sqf holds all the map and prizes stuff.

Share this post


Link to post
Share on other sites

I was wondering if anyone has made any sidemissions they would be willing to share.

I'm working on one right now but have found the hardest thing is coming up with an idea.

I have two so far that I think are worthy and I only came up one of those two. Just thought I'd throw that out there. Thanks in advance.

Share this post


Link to post
Share on other sites

For the Chernarus Rhapsody event a while back, my team made a number of nice ones.

We had an airconvoy interdict mission. Starting from either of the airfields, a transport heli, escorted by a couple of '52s and a Sukky went to one of 4 random destinations. Players had to shoot them down before they reached destination.

We also had a helicopter air pickup mission. We placed an AI friendly secret agent on a location where is was only possible to get to by air. On top of the shipping cargo cranes, on the busted castle or on the shipwreck on in the north east. The players had to hover danger close to them, a rescue op had to bail and land next to her and then command her to get in the helo.

The one that never got made was the long range sniper mission. We planned to spawn an enemy AI on one of the islands and have the players kill him. But the rules were they could only use a bullet and had to be at least 1400m away to get a completion.

Edited by Tankbuster

Share this post


Link to post
Share on other sites

The Last one is very similar to what I thought was an original idea. Sniper mission where you have to kill two insurgents simultaneously who are holding a VIP hostage. Or the VIP gets killed (Failed Mission by way of bomb the VIP id strapped to.) if their demands aren't meet. Would require stealth,teamwork and timing to complete.

Share this post


Link to post
Share on other sites

I have a bit of an issue. I am running 2.57. I have it set up to run 8 mains before completion. For some reason. After the 8th main is taken. The mission does not end. Also, I know I have recapture on and they have not been doing that as well. Could someone send me in the right direction. Is anyone else having this problem. I am going to triple check my description settings to see if maybe I missed something. I am guessing these two issues are associated with each other but I am not sure. Could the enemy be re-taking towns and it not showing on the map? Anyway, if anyone has come across this or has any idea's or direction for me to look I would really appreciate it. Thank you for your time.

-Nuke

Share this post


Link to post
Share on other sites

Yeah Nuke you might want to check your description file to see what you have your perams set at. Never had that problem. Check back and let us what's up.

---------- Post added at 04:08 PM ---------- Previous post was at 04:05 PM ----------

I have a bit of an issue. I am running 2.57. I have it set up to run 8 mains before completion. For some reason. After the 8th main is taken. The mission does not end. Also, I know I have recapture on and they have not been doing that as well. Could someone send me in the right direction. Is anyone else having this problem. I am going to triple check my description settings to see if maybe I missed something. I am guessing these two issues are associated with each other but I am not sure. Could the enemy be re-taking towns and it not showing on the map? Anyway, if anyone has come across this or has any idea's or direction for me to look I would really appreciate it. Thank you for your time.

-Nuke

Edited by xx-LSD-xx
double posting

Share this post


Link to post
Share on other sites

Thanks LSD. I have checked again. The difference I see between 2.54 and 2.57 is the "#ifdef __DOM2__" is new. Here is what I have it set too.

#ifdef __DOM2__
class GVAR(WithRecapture) {
	title = "Enemy recaptures targets:";
	values[] = {0,1};
	default = 0;
	texts[] = {"Yes","No"};

Here is my whole discripton file if interested.

//__EXEC(diag_log format ["############################# %1 #############################", missionName];);

//__EXEC(diag_log [diag_frameno, diag_ticktime, time, "Executing Dom description.ext"]);

#include "x_setup.sqf"

#include "R3F_ARTY_AND_LOG\desc_include.h"

onLoadMission=__D_VER_NAME__;

onLoadIntroTime=false;

onLoadMissionTime=false;

disabledAI=1;

respawn="BASE";

respawndelay = __D_RESPAWN_DELAY__;

debriefing=1;

showGPS=1;

loadScreen = "pics\domls.paa";

class Header {

#ifndef __TT__

gameType = COOP;

#else

gameType = Team;

#endif

minPlayers = 1;

#ifndef __TT__

maxPlayers = 30;

#else

maxPlayers = 40;

#endif

playerCountMultipleOf = 1;

};

class Params {

class GVAR(MainTargets) {

title = "Main Targets";

#ifdef __DEFAULT__

values[] = {50,60,70,90,2,4,6,8,10,12,14,16,18,21};

default = 8;

texts[] = {"West Route","North Route","East Route","Complete, ordered","Random 2","Random 4","Random 6","Random 8","Random 10","Random 12","Random 14","Random 16","Random 18","Random 21"};

#endif

#ifdef __TT__

values[] = {2,4,6,8,10,12,14,16,18,20};

default = 8;

texts[] = {"2","4","6","8","10","12","14","16","18","20"};

#endif

};

class GVAR(TimeOfDay) {

title = "Time of day:";

values[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23};

default = 5;

texts[] = {"00:00","01:00","02:00","03:00","04:00","05:00","06:00","07:00","08:00","09:00","10:00","11:00","12:00","13:00","14:00","15:00","16:00","17:00","18:00","19:00","20:00","21:00","22:00","23:00"};

};

class GVAR(RespawnTime) {

title = "Respawn time (in seconds):";

values[] = {4,10,20,30,60,120,240,300};

default = 20;

texts[] = {"4","10","20","30","60","120","240","300"};

};

class GVAR(InitialViewDistance) {

title = "Initial Viewdistance:";

values[] = {1000,1500,2000,2500,3000,3500,4000,4500,5000};

default = 1500;

texts[] = {"1000 m","1500 m","2000 m","2500 m","3000 m","3500 m","4000 m","4500 m","5000 m"};

};

class GVAR(MaxViewDistance) {

title = "Maximum Viewdistance:";

values[] = {2000,3000,4000,5000,6000,7000,8000,9000,10000};

default = 5000;

texts[] = {"2000 m","3000 m","4000 m","5000 m","6000 m","7000 m","8000 m","9000 m","10000 m"};

};

class GVAR(ViewdistanceChange) {

title = "Viewdistance changable:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(WithAcre) {

title = "With ACRE:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(AcreSignalLoss) {

title = "ACRE signal loss (in percent):";

values[] = {100,75,50,25,0};

default = 50;

texts[] = {"Normal loss (100%)","Two-thirds loss (75%)","Half loss (50%)","Quarter loss (25%)","No loss (0%)"};

};

class GVAR(AcreRadioOnBackWorks) {

title = "ACRE radio on back:";

values[] = {0,1};

default = 1;

texts[] = {"would NOT work","would work"};

};

class GVAR(MissionType) {

title = "Mission Type:";

values[] = {0,1,2};

default = 0;

texts[] = {"Default Mission Type","Main Targets Only","Side Missions Only"};

};

class GVAR(WithMHQTeleport) {

title = "Teleport or spawn at MHQ:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(WithTeleToBase) {

title = "Enable teleport to base:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(FastTime) {

title = "Fast time (1 sec ~ 1 minute):";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(HALOWaitTime) {

title = "HALO at base wait time:";

values[] = {0,300, 600, 1800,3600};

#ifndef __TT__

default = 0;

#else

default = 0;

#endif

texts[] = {"0 Minutes","5 Minutes","10 Minutes","30 Minutes","60 Minutes"};

};

class GVAR(LockArmored) {

title = "Lock armored enemy vecs:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(LockCars) {

title = "Lock enemy cars:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(LockAir) {

title = "Lock enemy air vecs:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(IllumMainTarget) {

title = "Illumination main target:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(WithRepStations) {

title = "Repair buildings can repair:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(WithJumpFlags) {

title = "No parachute jump flags:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(ParaAtBase) {

title = "Parachute from base:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(pilots_only) {

title = "Only pilots can fly:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(without_nvg) {

title = "Without NVgoggles:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(without_vec_ti) {

title = "Disable vehicle TI:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(AmmoBoxHandling) {

title = "Ammobox handling:";

values[] = {0,1};

default = 0;

texts[] = {"New","Old"};

};

class GVAR(VecCreateWaitTime) {

title = "MHQ vec creation time:";

values[] = {60,300, 600, 1800,3600};

default = 600;

texts[] = {"1 Minute","5 Minutes","10 Minutes","30 Minutes","60 Minutes"};

};

class GVAR(AutoKickTime) {

title = "Air vecs autokick time:";

values[] = {0,60, 300, 600, 1800,3600};

default = 0;

texts[] = {"0 Minutes","1 Minute","5 Minutes","10 Minutes","30 Minutes","60 Minutes"};

};

class GVAR(HALOJumpHeight) {

title = "HALO jump height:";

values[] = {500,700, 888, 1000, 2000, 5000};

default = 2000;

texts[] = {"500 m","700 m","888 m","1000 m","2000 m","5000 m"};

};

class GVAR(WithBackpack) {

title = "With backpack:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(LimitedWeapons) {

title = "Weapons limited:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(with_ranked) {

title = "Ranked:";

values[] = {0,1};

#ifndef __RANKED__

default = 1;

#else

default = 0;

#endif

texts[] = {"Yes","No"};

};

class GVAR(EnemySkill) {

title = "Skill Enemy:";

values[] = {1,2,3};

default = 2;

texts[] = {"Low","Normal","High"};

};

class GVAR(WithIsleDefense) {

title = "With isle defense:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

#ifndef __TT__

class GVAR(WithBaseAttack) {

title = "Base sabotage:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

#endif

#ifdef __DOM2__

class GVAR(WithRecapture) {

title = "Enemy recaptures targets:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

#endif

class GVAR(WithLessArmor) {

title = "Armor at main targets:";

values[] = {0,1,2};

default = 0;

texts[] = {"Normal","Less","None"};

};

class GVAR(WithEnemyArtySpotters) {

title = "Enemy arty spotters at mt:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(ArtiOperatorMaxDist) {

title = "ArtiOp. max. strike dist:";

values[] = {500,1000,2000,3000,5000,10000000};

default = 1000;

texts[] = {"500 m","1000 m","2000 m","3000 m","5000 m","Infinite"};

};

class GVAR(arti_reload_time) {

title = "Artillery reload time:";

values[] = {5,10,20,30,60};

default = 20;

texts[] = {"5 secs","10 secs","20 secs","30 secs","60 secs"};

};

class GVAR(arti_available_time) {

title = "Artillery avail. after:";

values[] = {10,30,60,120,240,300,600};

default = 240;

texts[] = {"10 secs","30 secs","60 secs","120 secs","240 secs","300 secs","600 secs"};

};

class GVAR(arti_check_for_friendlies) {

title = "Arty check friendlies:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

#ifdef __WOUNDS__

class GVAR(WoundsRevTime) {

title = "Wounds life time:";

values[] = {60,120,300,600,1200,-1};

default = 120;

texts[] = {"60 secs","120 secs","300 secs","600 secs","1200 secs","No poor mans r"};

};

#endif

class GVAR(WithChopHud) {

title = "Enable Chopper Hud:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(vechud_on) {

title = "Enable Vehicle Hud:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(show_vehicle_welcome) {

title = "Vehicle welcome msg:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(show_playernames) {

title = "Disable show player names:";

values[] = {0,1};

#ifndef __ACE__

default = 1;

#else

default = 1;

#endif

texts[] = {"Yes","No"};

};

class GVAR(weather) {

title = "Internal weather system:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(WithWinterWeather) {

title = "With winter weather:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

#ifndef __ACE__

class GVAR(OverrideBISEffects) {

title = "Override BIS Effects:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(BloodDirtScreen) {

title = "Dirt and blood effects:";

values[] = {0,1};

default = 0;

texts[] = {"On","Off"};

};

class GVAR(BlockSpacebarScanning) {

title = "Block spacebar scanning:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

#endif

class GVAR(MaxNumAmmoboxes) {

title = "Max. # ammo boxes:";

values[] = {10,20,30};

default = 10;

texts[] = {"10","20","30"};

};

class GVAR(WreckDeleteTime) {

title = "Delete wrecks after:";

values[] = {1800,3600,5400,7200,-1};

default = -1;

texts[] = {"30 minutes","60 minutes","90 minutes","120 minutes","Never"};

};

class GVAR(GrasAtStart) {

title = "Gras:";

values[] = {0,1};

#ifndef __OA__

default = 1;

#else

default = 1;

#endif

texts[] = {"Yes","No"};

};

class GVAR(Terraindetail) {

title = "Player can disable gras:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(max_ai) {

title = "Recruit AI (max.):";

values[] = {6,8,10,12,14,16};

default = 8;

texts[] = {"6","8","10","12","14","16"};

};

class GVAR(show_player_marker) {

title = "Player marker:";

values[] = {0,1,2,3,4};

#ifndef __TT__

default = 1;

#else

default = 1;

#endif

texts[] = {"Off","Name only","Marker only","Role only","Health"};

};

class GVAR(dont_show_player_markers_at_all) {

title = "Disable player markers:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(p_marker_dirs) {

title = "Player marker with dir:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(v_marker_dirs) {

title = "Vehicle marker with dir:";

values[] = {0,1};

#ifndef __TT__

default = 1;

#else

default = 0;

#endif

texts[] = {"Yes","No"};

};

class GVAR(MarkerTypeL) {

title = "Marker type:";

values[] = {0,1,2,3,4};

default = 0;

texts[] = {"mil_dot","Man","mil_circle","mil_box","mil_triangle"};

};

class GVAR(use_teamstatusdialog) {

title = "Enable TeamStatusDialog:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(drop_radius) {

title = "Air drop radius:";

values[] = {0,10,30,50,100};

default = 10;

texts[] = {"Exact position","10 m","30 m","50 m","100 m"};

};

class GVAR(drop_max_dist) {

title = "Airdrop max. dist:";

values[] = {100,500,1000,2000,3000,5000,10000000};

default = 500;

texts[] = {"100 m","500 m","1000 m","2000 m","3000 m","5000 m","Infinite"};

};

class GVAR(reload_engineoff) {

title = "Vec reload, engine off:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(reload_time_factor) {

title = "Vec reload, time factor:";

values[] = {0,1,2,3,4,5,10};

default = 4;

texts[] = {"0","1","2","3","4","5","10"};

};

class GVAR(with_mgnest) {

title = "With MG nest (machine gunners):";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(with_medtent) {

title = "With medic tent (medics):";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

class GVAR(engineerfull) {

title = "Engineer full repair (old versions):";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class xr_max_lives {

title = "Max Lives:";

values[] = {5,10,20,30,40,50,1000};

default = 1000;

texts[] = {"5","10","20","30","40","50","1000"};

};

class xr_lifetime {

title = "Live time:";

values[] = {60,120,180,240,300,600,1200};

default = 300;

texts[] = {"60 secs","120 secs","180 secs","240 secs","300 secs","600 secs","1200 secs"};

};

class xr_respawn_available_after {

title = "Respawn possible after:";

values[] = {30,60,90,120,180,240,300,600};

default = 90;

texts[] = {"30 secs","60 secs","90 secs","120 secs","180 secs","240 secs","300 secs","600 secs"};

};

#ifndef __DOM2__

class GVAR(only_medics_canrevive) {

title = "Medic only revive:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

#else

class GVAR(with_norrn_revive) {

title = "With Revive:";

values[] = {0,1};

#ifdef __REVIVE__

default = 0;

#else

default = 1;

#endif

texts[] = {"Yes","No"};

};

class GVAR(NORRN_max_respawns) {

title = "Revive max respawns:";

values[] = {5,10,20,30,40,50,1000};

default = 1000;

texts[] = {"5","10","20","30","40","50","1000"};

};

class GVAR(NORRN_respawn_button_timer) {

title = "Respawn button after:";

values[] = {30,60,90,120,180,240,300,600};

default = 90;

texts[] = {"30 secs","60 secs","90 secs","120 secs","180 secs","240 secs","300 secs","600 secs"};

};

class GVAR(NORRN_revive_time_limit) {

title = "Revive time limit:";

values[] = {60,120,180,240,300,600,1200};

default = 120;

texts[] = {"60 secs","120 secs","180 secs","240 secs","300 secs","600 secs","1200 secs"};

};

class GVAR(NORRN_no_of_heals) {

title = "Revive # of heals:";

values[] = {0,1,2,3,4,5,10};

default = 5;

texts[] = {"0","1","2","3","4","5","10"};

};

#endif

class GVAR(sub_tk_points) {

title = "Negative TK points:";

values[] = {0,1,5,10,20,30,50};

default = 10;

texts[] = {"0","1","5","10","20","30","50"};

};

class GVAR(max_truck_cargo) {

title = "Salvage cargo capacity:";

values[] = {1,3,6,9,12,16};

default = 6;

texts[] = {"1","3","6","9","12","16"};

};

class GVAR(ai_arti_available_time) {

title = "AI observers arty avail time:";

values[] = {60,120,180,240,300,600};

default = 120;

texts[] = {"60 secs","120 secs","180 secs","240 secs","300 secs","600 secs"};

};

#ifdef __WOUNDS__

class GVAR(wounds_no_ai) {

title = "ACE wounds for AI:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

#endif

class GVAR(maxnum_tks_forkick) {

title = "Max # TKs for kick:";

values[] = {1,3,5,10,20,30,40,1000000};

default = 10;

texts[] = {"1","3","5","10","20","30","40","Disable"};

};

class GVAR(player_kick_shootingbase) {

title = "Kick players shooting at base:";

values[] = {2,3,5,10,20,30,1000};

default = 20;

texts[] = {"2 Shots","3 Shots","5 Shots","10 Shots","20 Shots","30 Shots","No kick"};

};

class GVAR(kick_base_satchel) {

title = "Kick for base satchel:";

values[] = {0,1};

default = 0;

texts[] = {"Yes","No"};

};

// 3rd person still available in vehicles (when enabled in A2/OA difficulty settings)

// outside vehicles no 3rd person, means also no group view for teamleaders

class GVAR(no_3rd_person) {

title = "No 3rd person:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(with_base_camonet) {

title = "With camo nets at base:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

class GVAR(with_scalar) {

title = "With Scalar:";

values[] = {0,1};

default = 1;

texts[] = {"Yes","No"};

};

};

#include "x_dlg\define.hpp"

#include "x_dlg\menu.hpp"

#include "x_dlg\StatusDialog.hpp"

#include "x_dlg\AdminDialog.hpp"

#include "x_dlg\Artillery.hpp"

#include "x_dlg\UnloadDialog.hpp"

#include "x_dlg\Parajump.hpp"

#include "x_dlg\VecDialog.hpp"

#include "x_dlg\SettingsDialog.hpp"

#include "x_dlg\MsgDialog.hpp"

#include "x_dlg\AirDropDialog.hpp"

#include "x_dlg\Sat_Cam.hpp"

#include "x_dlg\IMenu.hpp"

#include "x_dlg\BackpackDialog.hpp"

#include "revive_sqf\dialogs\define.hpp"

#include "revive_sqf\dialogs\rev_cam_dialog.hpp"

#include "revive_sqf\dialogs\respawn_button_1.hpp"

#include "revive_sqf\dialogs\respawn_button_2.hpp"

#include "revive_sqf\dialogs\respawn_button_3.hpp"

#include "revive_sqf\dialogs\respawn_button_4.hpp"

#include "revive_sqf\dialogs\respawn_button_1b.hpp"

#include "revive_sqf\dialogs\respawn_button_1c.hpp"

#include "revive_sqf\dialogs\respawn_button_2b.hpp"

#include "revive_sqf\dialogs\respawn_button_3b.hpp"

#include "revive_sqf\dialogs\respawn_button_4b.hpp"

#include "revive_sqf\dialogs\respawn_button_1map.hpp"

#include "revive_sqf\dialogs\respawn_button_2map.hpp"

#include "revive_sqf\dialogs\respawn_button_3map.hpp"

#include "revive_sqf\dialogs\respawn_button_4map.hpp"

#include "revive_sqf\dialogs\OK_map.hpp"

#include "revive_sqf\dialogs\dead_cam_dialog.hpp"

#include "spect\spectating.hpp"

#include "scripts\TeamStatusDialog\TeamStatusDialog.hpp"

#ifdef __MANDO__

#include "mando_missiles\mando_missile.h"

#endif

/*#ifndef __DOM2__

#include "x_revive\define.hpp"

#include "x_revive\XR_UnconDlg.hpp"

#include "x_revive\XR_RespDlg.hpp"

#include "x_revive\XR_IMenu.hpp"

#include "x_revive\XR_SpectDlg.hpp"

#endif*/

class CfgSounds {

sounds[] = {Funk,Ari,scalarDown};

class Funk {name="Funk";sound[]={"\sounds\funk.ogg",db,1.0};titles[] = {};};

class Ari {name="Ari";sound[]={"\sounds\ari.ogg",db,1.0};titles[] = {};};

class scalarDown {name="scalarDown";sound[]={"\sounds\scalarDown.ogg",db,1.0};titles[] = {};};

#ifdef __DOM2__

class DBrian_Im_hit {name="Brian_Im_hit";sound[]={"\sounds\UNIV_v05.ogg",0.05,1.0};titles[]={};};

class DBrian_Im_bleeding {name="Brian_Im_bleeding";sound[]={"\sounds\UNIV_v06.ogg",0.05,1.0};titles[]={};};

class DBrian_Medic {name="Brian_Medic";sound[]={"\sounds\UNIV_v07.ogg",0.05,1.0};titles[]={};};

class DBrian_Bastards {name="Brian_Bastards";sound[]={"\sounds\UNIV_v10.ogg",0.05,1.0};titles[]={};};

class DBrian_Shit_Man_down {name="Brian_Shit_Man_down";sound[]={"\sounds\UNIV_v11.ogg",0.05,1.0};titles[]={};};

class DBrian_Oh_no {name="Brian_Oh_no";sound[]={"\sounds\UNIV_v18.ogg",0.05,1.0};titles[]={};};

class DBrian_Fuck {name="Brian_Fuck";sound[]={"\sounds\UNIV_v24.ogg",0.05,1.0};titles[]={};};

class DBrian_Fuck_it {name="Brian_Fuck_it";sound[]={"\sounds\UNIV_v25.ogg",0.05,1.0};titles[]={};};

class DBrian_Shit {name="Brian_Shit";sound[]={"\sounds\UNIV_v31.ogg",0.05,1.0};titles[]={};};

class DBrian_Need_help {name="Brian_Need_help";sound[]={"\sounds\UNIV_v50.ogg",0.05,1.0};titles[]={};};

class DBrian_A_little_help_here {name="Brian_A_little_help_here";sound[]={"\sounds\UNIV_v51.ogg",0.05,1.0};titles[]={};};

#endif

class DThunder {name="DThunder";sound[]={"\sounds\thundershort2.ogg",db-25,1.0};titles[] = {};};

#ifndef __ACE__

class DPara {name="DPara";sound[]={"\sounds\para.ogg",db-10,1.0};titles[] = {};};

#endif

#ifdef __MANDO__

#include "mando_missiles\mando_sounds.h"

#endif

};

class X_RscAnimatedLetters {

idd = -1;

movingEnable = false;

onLoad = "uiNamespace setVariable [""X_ANIM_LETTERS"", _this select 0];";

class ControlsBackground {};

class Controls {

__EXEC(idc = 5000)

class L1: X3_RscText {

idc = __EVAL(idc);

x = 0.5; y = 0.5;

h = 0.3; w = 0.1;

};

class L2: L1 {idc = __EVAL(idc + 1);};

class L3: L1 {idc = __EVAL(idc + 2);};

class L4: L1 {idc = __EVAL(idc + 3);};

class L5: L1 {idc = __EVAL(idc + 4);};

class L6: L1 {idc = __EVAL(idc + 5);};

class L7: L1 {idc = __EVAL(idc + 6);};

class L8: L1 {idc = __EVAL(idc + 7);};

class L9: L1 {idc = __EVAL(idc + 8);};

class L10: L1 {idc = __EVAL(idc + 9);};

class L11: L1 {idc = __EVAL(idc + 10);};

class L12: L1 {idc = __EVAL(idc + 11);};

class L13: L1 {idc = __EVAL(idc + 12);};

class L14: L1 {idc = __EVAL(idc + 13);};

class L15: L1 {idc = __EVAL(idc + 14);};

class L16: L1 {idc = __EVAL(idc + 15);};

class L17: L1 {idc = __EVAL(idc + 16);};

class L18: L1 {idc = __EVAL(idc + 17);};

class L19: L1 {idc = __EVAL(idc + 18);};

class L20: L1 {idc = __EVAL(idc + 19);};

class L21: L1 {idc = __EVAL(idc + 20);};

class L22: L1 {idc = __EVAL(idc + 21);};

class L23: L1 {idc = __EVAL(idc + 22);};

class L24: L1 {idc = __EVAL(idc + 23);};

class L25: L1 {idc = __EVAL(idc + 24);};

class L26: L1 {idc = __EVAL(idc + 25);};

class L27: L1 {idc = __EVAL(idc + 26);};

class L28: L1 {idc = __EVAL(idc + 27);};

class L29: L1 {idc = __EVAL(idc + 28);};

class L30: L1 {idc = __EVAL(idc + 29);};

class L31: L1 {idc = __EVAL(idc + 30);};

class L32: L1 {idc = __EVAL(idc + 31);};

class L33: L1 {idc = __EVAL(idc + 32);};

class L34: L1 {idc = __EVAL(idc + 33);};

class L35: L1 {idc = __EVAL(idc + 34);};

class L36: L1 {idc = __EVAL(idc + 35);};

class L37: L1 {idc = __EVAL(idc + 36);};

class L38: L1 {idc = __EVAL(idc + 37);};

class L39: L1 {idc = __EVAL(idc + 38);};

class L40: L1 {idc = __EVAL(idc + 39);};

class L41: L1 {idc = __EVAL(idc + 40);};

class L42: L1 {idc = __EVAL(idc + 41);};

class L43: L1 {idc = __EVAL(idc + 42);};

class L44: L1 {idc = __EVAL(idc + 43);};

class L45: L1 {idc = __EVAL(idc + 44);};

class L46: L1 {idc = __EVAL(idc + 45);};

class L47: L1 {idc = __EVAL(idc + 46);};

class L48: L1 {idc = __EVAL(idc + 47);};

class L49: L1 {idc = __EVAL(idc + 48);};

class L50: L1 {idc = __EVAL(idc + 49);};

class L51: L1 {idc = __EVAL(idc + 50);};

class L52: L1 {idc = __EVAL(idc + 51);};

class L53: L1 {idc = __EVAL(idc + 52);};

class L54: L1 {idc = __EVAL(idc + 53);};

class L55: L1 {idc = __EVAL(idc + 54);};

class L56: L1 {idc = __EVAL(idc + 55);};

class L57: L1 {idc = __EVAL(idc + 56);};

class L58: L1 {idc = __EVAL(idc + 57);};

class L59: L1 {idc = __EVAL(idc + 58);};

class L60: L1 {idc = __EVAL(idc + 59);};

class L61: L1 {idc = __EVAL(idc + 60);};

class L62: L1 {idc = __EVAL(idc + 61);};

class L63: L1 {idc = __EVAL(idc + 62);};

class L64: L1 {idc = __EVAL(idc + 63);};

class L65: L1 {idc = __EVAL(idc + 64);};

class L66: L1 {idc = __EVAL(idc + 65);};

class L67: L1 {idc = __EVAL(idc + 66);};

class L68: L1 {idc = __EVAL(idc + 67);};

class L69: L1 {idc = __EVAL(idc + 68);};

class L70: L1 {idc = __EVAL(idc + 69);};

class L71: L1 {idc = __EVAL(idc + 70);};

class L72: L1 {idc = __EVAL(idc + 71);};

class L73: L1 {idc = __EVAL(idc + 72);};

class L74: L1 {idc = __EVAL(idc + 73);};

class L75: L1 {idc = __EVAL(idc + 74);};

class L76: L1 {idc = __EVAL(idc + 75);};

class L77: L1 {idc = __EVAL(idc + 76);};

class L78: L1 {idc = __EVAL(idc + 77);};

class L79: L1 {idc = __EVAL(idc + 78);};

class L80: L1 {idc = __EVAL(idc + 79);};

class L81: L1 {idc = __EVAL(idc + 80);};

class L82: L1 {idc = __EVAL(idc + 81);};

class L83: L1 {idc = __EVAL(idc + 82);};

class L84: L1 {idc = __EVAL(idc + 83);};

class L85: L1 {idc = __EVAL(idc + 84);};

class L86: L1 {idc = __EVAL(idc + 85);};

class L87: L1 {idc = __EVAL(idc + 86);};

class L88: L1 {idc = __EVAL(idc + 87);};

class L89: L1 {idc = __EVAL(idc + 88);};

class L90: L1 {idc = __EVAL(idc + 89);};

class L91: L1 {idc = __EVAL(idc + 90);};

class L92: L1 {idc = __EVAL(idc + 91);};

class L93: L1 {idc = __EVAL(idc + 92);};

class L94: L1 {idc = __EVAL(idc + 93);};

class L95: L1 {idc = __EVAL(idc + 94);};

class L96: L1 {idc = __EVAL(idc + 95);};

class L97: L1 {idc = __EVAL(idc + 96);};

class L98: L1 {idc = __EVAL(idc + 97);};

class L99: L1 {idc = __EVAL(idc + 98);};

class L100: L1 {idc = __EVAL(idc + 99);};

class L101: L1 {idc = __EVAL(idc + 100);};

class L102: L1 {idc = __EVAL(idc + 101);};

class L103: L1 {idc = __EVAL(idc + 102);};

class L104: L1 {idc = __EVAL(idc + 103);};

class L105: L1 {idc = __EVAL(idc + 104);};

class L106: L1 {idc = __EVAL(idc + 105);};

class L107: L1 {idc = __EVAL(idc + 106);};

class L108: L1 {idc = __EVAL(idc + 107);};

class L109: L1 {idc = __EVAL(idc + 108);};

class L110: L1 {idc = __EVAL(idc + 109);};

class L111: L1 {idc = __EVAL(idc + 110);};

class L112: L1 {idc = __EVAL(idc + 111);};

class L113: L1 {idc = __EVAL(idc + 112);};

class L114: L1 {idc = __EVAL(idc + 113);};

class L115: L1 {idc = __EVAL(idc + 114);};

class L116: L1 {idc = __EVAL(idc + 115);};

class L117: L1 {idc = __EVAL(idc + 116);};

class L118: L1 {idc = __EVAL(idc + 117);};

class L119: L1 {idc = __EVAL(idc + 118);};

class L120: L1 {idc = __EVAL(idc + 119);};

class L121: L1 {idc = __EVAL(idc + 120);};

class L122: L1 {idc = __EVAL(idc + 121);};

class L123: L1 {idc = __EVAL(idc + 122);};

class L124: L1 {idc = __EVAL(idc + 123);};

class L125: L1 {idc = __EVAL(idc + 124);};

class L126: L1 {idc = __EVAL(idc + 125);};

class L127: L1 {idc = __EVAL(idc + 126);};

class L128: L1 {idc = __EVAL(idc + 127);};

class L129: L1 {idc = __EVAL(idc + 128);};

class L130: L1 {idc = __EVAL(idc + 129);};

class L131: L1 {idc = __EVAL(idc + 130);};

class L132: L1 {idc = __EVAL(idc + 131);};

class L133: L1 {idc = __EVAL(idc + 132);};

class L134: L1 {idc = __EVAL(idc + 133);};

class L135: L1 {idc = __EVAL(idc + 134);};

class L136: L1 {idc = __EVAL(idc + 135);};

class L137: L1 {idc = __EVAL(idc + 136);};

class L138: L1 {idc = __EVAL(idc + 137);};

class L139: L1 {idc = __EVAL(idc + 138);};

class L140: L1 {idc = __EVAL(idc + 139);};

class L141: L1 {idc = __EVAL(idc + 140);};

class L142: L1 {idc = __EVAL(idc + 141);};

class L143: L1 {idc = __EVAL(idc + 142);};

class L144: L1 {idc = __EVAL(idc + 143);};

class L145: L1 {idc = __EVAL(idc + 144);};

class L146: L1 {idc = __EVAL(idc + 145);};

class L147: L1 {idc = __EVAL(idc + 146);};

class L148: L1 {idc = __EVAL(idc + 147);};

class L149: L1 {idc = __EVAL(idc + 148);};

class L150: L1 {idc = __EVAL(idc + 149);};

class L151: L1 {idc = __EVAL(idc + 150);};

class L152: L1 {idc = __EVAL(idc + 151);};

class L153: L1 {idc = __EVAL(idc + 152);};

class L154: L1 {idc = __EVAL(idc + 153);};

class L155: L1 {idc = __EVAL(idc + 154);};

class L156: L1 {idc = __EVAL(idc + 155);};

class L157: L1 {idc = __EVAL(idc + 156);};

class L158: L1 {idc = __EVAL(idc + 157);};

class L159: L1 {idc = __EVAL(idc + 158);};

class L160: L1 {idc = __EVAL(idc + 159);};

class L161: L1 {idc = __EVAL(idc + 160);};

class L162: L1 {idc = __EVAL(idc + 161);};

class L163: L1 {idc = __EVAL(idc + 162);};

class L164: L1 {idc = __EVAL(idc + 163);};

class L165: L1 {idc = __EVAL(idc + 164);};

class L166: L1 {idc = __EVAL(idc + 165);};

class L167: L1 {idc = __EVAL(idc + 166);};

class L168: L1 {idc = __EVAL(idc + 167);};

class L169: L1 {idc = __EVAL(idc + 168);};

class L170: L1 {idc = __EVAL(idc + 169);};

class L171: L1 {idc = __EVAL(idc + 170);};

class L172: L1 {idc = __EVAL(idc + 171);};

class L173: L1 {idc = __EVAL(idc + 172);};

class L174: L1 {idc = __EVAL(idc + 173);};

class L175: L1 {idc = __EVAL(idc + 174);};

class L176: L1 {idc = __EVAL(idc + 175);};

class L177: L1 {idc = __EVAL(idc + 176);};

class L178: L1 {idc = __EVAL(idc + 177);};

class L179: L1 {idc = __EVAL(idc + 178);};

class L180: L1 {idc = __EVAL(idc + 179);};

class L181: L1 {idc = __EVAL(idc + 180);};

class L182: L1 {idc = __EVAL(idc + 181);};

class L183: L1 {idc = __EVAL(idc + 182);};

class L184: L1 {idc = __EVAL(idc + 183);};

class L185: L1 {idc = __EVAL(idc + 184);};

class L186: L1 {idc = __EVAL(idc + 185);};

class L187: L1 {idc = __EVAL(idc + 186);};

class L188: L1 {idc = __EVAL(idc + 187);};

class L189: L1 {idc = __EVAL(idc + 188);};

class L190: L1 {idc = __EVAL(idc + 189);};

class L191: L1 {idc = __EVAL(idc + 190);};

class L192: L1 {idc = __EVAL(idc + 191);};

class L193: L1 {idc = __EVAL(idc + 192);};

class L194: L1 {idc = __EVAL(idc + 193);};

class L195: L1 {idc = __EVAL(idc + 194);};

class L196: L1 {idc = __EVAL(idc + 195);};

class L197: L1 {idc = __EVAL(idc + 196);};

class L198: L1 {idc = __EVAL(idc + 197);};

class L199: L1 {idc = __EVAL(idc + 198);};

class L200: L1 {idc = __EVAL(idc + 199);};

class L201: L1 {idc = __EVAL(idc + 200);};

class L202: L1 {idc = __EVAL(idc + 201);};

class L203: L1 {idc = __EVAL(idc + 202);};

class L204: L1 {idc = __EVAL(idc + 203);};

class L205: L1 {idc = __EVAL(idc + 204);};

class L206: L1 {idc = __EVAL(idc + 205);};

class L207: L1 {idc = __EVAL(idc + 206);};

class L208: L1 {idc = __EVAL(idc + 207);};

class L209: L1 {idc = __EVAL(idc + 208);};

class titel1: XC_RscText {

idc=66666;

style="16+2+512";

lineSpacing=0.950000;

duration=50;

text="Made 2011 by Xeno";

x = "SafeZoneX + SafeZoneW - 0.3";

y = "SafeZoneY + SafeZoneH - 0.09";

w=0.3;

h=0.2;

colorBackground[]={0,0,0,0};

colorText[]={0.8,0.9,0.9,0};

size=0.57;

sizeEx = 0.026;

shadow = 0;

};

};

};

class RscTitles

{

#include "R3F_ARTY_AND_LOG\desc_rsct_include.h"

#include "x_dlg\IntroText.hpp"

#ifdef __MANDO__

#include "mando_missiles\mando_missiletitles.h"

#endif

//#include "x_revive\RscTitles.hpp"

};

class CfgIdentities {

class DHQ_EN1 {

name = "Winters, HQ";

face = "Default";

glasses = "None";

speaker = "Male03EN";

pitch = 1.0;

};

class DHQ_EN2: DHQ_EN1 {

name = "Meyers, HQ";

};

class DHQ_RU1: DHQ_EN1 {

name = "Rustov, HQ";

speaker = "Male03RU";

};

class DHQ_RU2: DHQ_EN1 {

name = "Krustshov, HQ";

speaker = "Male03RU";

};

};

//__EXEC(diag_log [diag_frameno, diag_ticktime, time, "Dom description.ext processed"]);

I did change the mission name a bit. Maybe that had something to do with it. I changed the pbo name as well. I am not sure if that could be the problem. Anyway. Thanks for the reply xx LSD xx. If anyone has any other clue let me know. Thank you all for your time.

-Nuke

Share this post


Link to post
Share on other sites

I found three sqfs which seem to have something to do with teleporting. However I'm not a scripter so I wouldn't know how to add other teleporting locations. Say I want to create a teleporting location at a flag named "nrepara" at <a particular grid coord>.

x_teleport.sqf

// by Xeno

#include "x_setup.sqf"

private ["_ok","_vehicle"];

if (vehicle player != player) exitWith {"Teleport not available in a vehicle !!!" call XfGlobalChat};

if (!isNull (flag player)) exitWith {"You are carrying the flag. Teleport is not possible !!!" call XfGlobalChat};

_is_swimmer = if ((animationState player) in ["aswmpercmstpsnonwnondnon","aswmpercmstpsnonwnondnon_aswmpercmrunsnonwnondf","aswmpercmrunsnonwnondf_aswmpercmstpsnonwnondnon","aswmpercmrunsnonwnondf","aswmpercmsprsnonwnondf","aswmpercmwlksnonwnondf"]) then {true} else {false};

if (_is_swimmer) exitWith {"Teleporting not possible while swimming !!!" call XfGlobalChat};

if (dialog) then {closeDialog 0};

d_beam_target = -1;

if (d_WithTeleToBase == 0) then {

tele_dialog = 2; // 0 = respawn, 1 = teleport

} else {

tele_dialog = 1;

};

if (isNil "x_teleupdate_dlg") then {__cppfln(x_teleupdate_dlg,x_client\x_update_dlg.sqf)};

disableSerialization;

_ok = createDialog "TeleportModule";

_display = __uiGetVar(X_TELE_DIALOG);

_ctrl = _display displayCtrl 100102;

_ctrl ctrlSetText "Teleport";

_ctrl = _display displayCtrl 100111;

_ctrl ctrlSetText "Select Teleport Destination";

if (d_WithTeleToBase == 1) then {

_ctrl = _display displayCtrl 100107;

_ctrl ctrlShow false;

};

_ctrl = _display displayCtrl 100112;

_ctrl ctrlShow false;

x_loop_end = false;

[d_last_telepoint] execVM "x_client\x_update_target.sqf";

[] spawn {

while {!x_loop_end && alive player && dialog} do {

if (!x_loop_end && alive player) then {[] spawn x_teleupdate_dlg};

sleep 1.012;

};

if (!alive player) then {closeDialog 0};

};

x_update_dlg.sqf

#include "x_setup.sqf"

private ["_display","_mr1text","_mr2text","_mr1_available","_mr2_available"];

if (x_loop_end) exitWith {};

disableSerialization;

_display = __uiGetVar(X_TELE_DIALOG);

_mr1text = _display displayCtrl 100105;

_mr2text = _display displayCtrl 100106;

_mr1_available = true;

_mr2_available = true;

_mr1text ctrlSetText "";

_mr2text ctrlSetText "";

#ifdef __TT__

if (playerSide == west) then {

#endif

switch (true) do {

case (__XJIPGetVar(mr1_in_air)): {

_mr1text ctrlSetText "Mobile respawn one gets transported by airlift...";

_mr1_available = false;

};

case (speed MRR1 > 4): {

_mr1text ctrlSetText "Mobile respawn one currently driving...";

_mr1_available = false;

};

case (surfaceIsWater [(position MRR1) select 0,(position MRR1) select 1]): {

_mr1text ctrlSetText "Mobile respawn one is currently in water...";

_mr1_available = false;

};

case (!(if (!isNil {MRR1 getVariable "ace_canmove"}) then {MRR1 call ace_v_alive} else {alive MRR1})): {

_mr1text ctrlSetText "Mobile respawn one destroyed...";

_mr1_available = false;

};

default {

_depl = [MRR1, "D_MHQ_Deployed", false] call XfGetVar;

if (!_depl) then {

_mr1text ctrlSetText "Mobile respawn one not deployed...";

_mr1_available = false;

};

};

};

switch (true) do {

case (__XJIPGetVar(mr2_in_air)): {

_mr2text ctrlSetText "Mobile respawn two gets transported by airlift...";

_mr2_available = false;

};

case (speed MRR2 > 4): {

_mr2text ctrlSetText "Mobile respawn two currently driving...";

_mr2_available = false;

};

case (surfaceIsWater [(position MRR2) select 0,(position MRR2) select 1]): {

_mr2text ctrlSetText "Mobile respawn two is currently in water...";

_mr2_available = false;

};

case (!(if (!isNil {MRR2 getVariable "ace_canmove"}) then {MRR2 call ace_v_alive} else {alive MRR2})): {

_mr2text ctrlSetText "Mobile respawn two destroyed...";

_mr2_available = false;

};

default {

_depl = [MRR2, "D_MHQ_Deployed", false] call XfGetVar;

if (!_depl) then {

_mr2text ctrlSetText "Mobile respawn two not deployed...";

_mr2_available = false;

};

};

};

#ifdef __TT__

} else {

switch (true) do {

case (__XJIPGetVar(mrr1_in_air)): {

_mr1text ctrlSetText "Mobile respawn one gets transported by airlift...";

_mr1_available = false;

};

case (speed MRRR1 > 4): {

_mr1text ctrlSetText "Mobile respawn one currently driving...";

_mr1_available = false;

};

case (surfaceIsWater [(position MRRR1) select 0,(position MRRR1) select 1]): {

_mr1text ctrlSetText "Mobile respawn one is currently in water...";

_mr1_available = false;

};

case (!alive MRRR1): {

_mr1text ctrlSetText "Mobile respawn one destroyed...";

_mr1_available = false;

};

default {

_depl = MRRR1 getVariable "D_MHQ_Deployed";

if (isNil "_depl") then {_depl = false};

if (!_depl) then {

_mr1text ctrlSetText "Mobile respawn one not deployed...";

_mr1_available = false;

};

};

};

switch (true) do {

case (__XJIPGetVar(mrr2_in_air)): {

_mr2text ctrlSetText "Mobile respawn two gets transported by airlift...";

_mr2_available = false;

};

case (speed MRRR2 > 4): {

_mr2text ctrlSetText "Mobile respawn two currently driving...";

_mr2_available = false;

};

case (surfaceIsWater [(position MRRR2) select 0,(position MRRR2) select 1]): {

_mr2text ctrlSetText "Mobile respawn two is currently in water...";

_mr2_available = false;

};

case (!alive MRRR2): {

_mr2text ctrlSetText "Mobile respawn two destroyed...";

_mr2_available = false;

};

default {

_depl = MRRR2 getVariable "D_MHQ_Deployed";

if (isNil "_depl") then {_depl = false};

if (!_depl) then {

_mr2text ctrlSetText "Mobile respawn two not deployed...";

_mr2_available = false;

};

};

};

};

#endif

if (x_loop_end) exitWith {};

if (!_mr1_available) then {

_button = _display displayCtrl 100108;

_button ctrlEnable false;

if (d_beam_target == 1) then {

d_beam_target = -1;

_textctrl = _display displayCtrl 100110;

_textctrl ctrlSetText "";

};

} else {

_button = _display displayCtrl 100108;

_button ctrlEnable true;

};

if (!_mr2_available) then {

_button = _display displayCtrl 100109;

_button ctrlEnable false;

if (d_beam_target == 2) then {

d_beam_target = -1;

_textctrl = _display displayCtrl 100110;

_textctrl ctrlSetText "";

};

} else {

_button = _display displayCtrl 100109;

_button ctrlEnable true;

};

and x_update_target.sqf

#include "x_setup.sqf"

private ["_target","_display","_textctrl","_text","_end_pos"];

_target = _this select 0;

disableSerialization;

_display = __uiGetVar(X_TELE_DIALOG);

_textctrl = _display displayCtrl 100110;

if (x_loop_end) exitWith {};

_text = "";

_text2 = "";

_end_pos = position player;

#ifndef __TT__

switch (_target) do {

case 0: {

switch (tele_dialog) do {

case 0: {

_text = "Respawn at Base";

d_beam_target = 0;

_end_pos = position FLAG_BASE;

};

case 1: {

_text = "Teleport to Mobile Respawn One";

d_beam_target = 1;

_end_pos = position MRR1;

};

case 2: {

_text = "Teleport to Base";

d_beam_target = 0;

_end_pos = position FLAG_BASE;

};

};

};

case 1: {

_text = switch (tele_dialog) do {

case 0: {"Respawn at Mobile Respawn One"};

case 1: {"Teleport to Mobile Respawn One"};

case 2: {"Teleport to Mobile Respawn One"};

};

d_beam_target = 1;

_end_pos = position MRR1;

};

case 2: {

_text = switch (tele_dialog) do {

case 0: {"Respawn at Mobile Respawn Two"};

case 1: {"Teleport to Mobile Respawn Two"};

case 2: {"Teleport to Mobile Respawn Two"};

};

d_beam_target = 2;

_end_pos = position MRR2;

};

};

#endif

#ifdef __TT__

switch (_target) do {

case 0: {

switch (tele_dialog) do {

case 0: {

_text = "Respawn at Base";

d_beam_target = 0;

_end_pos = if (playerSide == west) then {position WFLAG_BASE} else {position EFLAG_BASE};

};

case 1: {

_text = "Teleport to Mobile Respawn One";

d_beam_target = 1;

_end_pos = if (playerSide == west) then {position MRR1} else {position MRRR1};

};

case 2: {

_text = "Teleport to Base";

d_beam_target = 0;

_end_pos = if (playerSide == west) then {position WFLAG_BASE} else {position EFLAG_BASE};

};

};

};

case 1: {

_text = switch (tele_dialog) do {

case 0: {"Respawn at Mobile Respawn One"};

case 1: {"Teleport to Mobile Respawn One"};

case 2: {"Teleport to Mobile Respawn One"};

};

d_beam_target = 1;

_end_pos = if (playerSide == west) then {position MRR1} else {position MRRR1};

};

case 2: {

_text = switch (tele_dialog) do {

case 0: {"Respawn at Mobile Respawn Two"};

case 1: {"Teleport to Mobile Respawn Two"};

case 2: {"Teleport to Mobile Respawn Two"};

};

d_beam_target = 2;

_end_pos = if (playerSide == west) then {position MRR2} else {position MRRR2};

};

};

#endif

_textctrl ctrlSetText _text;

_ctrlmap = _display displayCtrl 100104;

ctrlMapAnimClear _ctrlmap;

_start_pos = position player;

_ctrlmap ctrlmapanimadd [0.0, 1.00, _start_pos];

_ctrlmap ctrlmapanimadd [1.2, 1.00, _end_pos];

_ctrlmap ctrlmapanimadd [0.5, 0.30, _end_pos];

ctrlmapanimcommit _ctrlmap;

Share this post


Link to post
Share on other sites

I have looked for a while but cant find anything about using the arty system in dom. I have tried loads of other scripts for artillery but they are all too complex for what i need. The one in domination is perfect but I dont know how to extract it or even if it can be used on its own... any help would be great thanks...

Share this post


Link to post
Share on other sites

I am using the R3F artillery system by madbull and I am trying to make it so certain objects cannot be moved. I can do it by putting this in the init line of the object:

this setVariable ["R3F_LOG_disabled", true];

The problem is though, I would like to put something in the init script so it would apply to all of the same object. For example. I would like all of the large H barriers to follow this rule. I tried something like this:

if (typeOf _object == "Land_HBarrier_large") then {

this setVariable ["R3F_LOG_disabled", true];

};

Without any luck. I tried using unit and building in place of object without any success. I have tried searching for the right code. I am just not any good at scripting. Could someone give me an idea of where I went wrong or just point me to a link or something concerning this issue. When I put up a bunch of stuff like wire or headgehogs I would rather not have to use the init line for this purpose. I would rather use one of the dom scripts. Thank you all for your time.

-Nuke

Share this post


Link to post
Share on other sites
I am using the R3F artillery system by madbull and I am trying to make it so certain objects cannot be moved. I can do it by putting this in the init line of the object:

The problem is though, I would like to put something in the init script so it would apply to all of the same object. For example. I would like all of the large H barriers to follow this rule. I tried something like this:

Without any luck. I tried using unit and building in place of object without any success. I have tried searching for the right code. I am just not any good at scripting. Could someone give me an idea of where I went wrong or just point me to a link or something concerning this issue. When I put up a bunch of stuff like wire or headgehogs I would rather not have to use the init line for this purpose. I would rather use one of the dom scripts. Thank you all for your time.

-Nuke

RF3_LOG\config.sqf

"Land_HBarrier1",
"Land_HBarrier3",
"Land_HBarrier5",
"Base_WarfareBBarrier5x",
[color="Red"]"Land_HBarrier_large",[/color] // Delete this line to remove the large h barrier, Its line 411.

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

×