Jump to content

[Release] Andre Convoy Patrol


Donnovan

Recommended Posts

See main post for the new version, developed in Arma 2, and now on Arma 3.

 

NEW ON BOMBA VERSION:
- Suicide bomber engage on player.
- You can set bomberman frequency.
- Bomberman don't detonate if near allies.
- Shot the head, arms and legs of a bomberman will not make hin explode.
- Vehicles became acessible and vulnerable when all crew die and a player enters it.
- Reduced the number of "[] spwan {}".
- Added configuration to reduce or increase loot quantity.
- You can turn on/off vehicle crew number on map icons.
- Functions created to make the main code cleaner.
- Optimization on: code consistency & performance.
- Better became better, in general. 

Link to comment
Share on other sites

Avarax,
 
Those are the convoys (you find that in andre_convoy.sqf). Change to your needs:

//Cars in each convoy (refere to donn_carsConvy)
_convoyFormation = [
	[0,5],
	[3,4],
	[1,3],
	[6],
	[1,6],
	[3,3],
	[4,5],
	[3,3]
];

Link to comment
Share on other sites

hakimos00, i will fix that.

 

You can easily fix that changing line 332 from that:

_agent = createAgent ["O_G_Soldier_exp_F",_agentPos,[],0,"NONE"];

To that:

_agent = createAgent ["I_G_Soldier_exp_F",_agentPos,[],0,"NONE"];
Link to comment
Share on other sites

 

hakimos00, i will fix that.

 

You can easily fix that changing line 332 from that:

_agent = createAgent ["O_G_Soldier_exp_F",_agentPos,[],0,"NONE"];

To that:

_agent = createAgent ["I_G_Soldier_exp_F",_agentPos,[],0,"NONE"];

Tyvm its work :)

Link to comment
Share on other sites

ADDED TO BOMBA WITH V2 VERSION:
- Fix: you don't need to kill all convoy to liberate a vehicle, you just need to kill the vehicle crew.

- Fix: Convoy units does not shot the bomberman anymore.

- Code to  embark/disembark simplified and realiable, minimum complications.

- Runner Bomber, if alive at the end of the battle, make a salute and explode if friends are not near.

Link to comment
Share on other sites

To fix bomberman spawn triggered by player consecutive disembark download BOMBA version V2a or fix your V2 version replacing those two functions:

	//Protect Vehicles from players until all crew is off
	donn_casca_getIn = {
		_motor = _this select 0;
		_unit = _this select 2;
		if (isPlayer _unit) then {
			_carGroup = _motor getVariable ["car_group",GrpNull];
			_allOff = true;
			{if (alive _x && assignedVehicle _x == _motor) then {_allOff = false;};} forEach units _carGroup;
			if (!_allOff) then {_unit action ['getOut', _motor];};
			if (_allOff) then {
				_motor removeAllEventHandlers "handleDamage";
				_motor removeAllEventHandlers "getIn";
				_motor removeAllEventHandlers "getOut";
				_motor setFuel 0.5;
			};
		};
	};

	//Make bomber man on disembark
	donn_disembarkCount = 0;
	donn_casca_getOut = {
		_unit = _this select 2;
		if (!isPlayer _unit) then {
			donn_disembarkCount = donn_disembarkCount + 1;
			if (donn_disembarkCount mod (round (1/(donn_runnerBomberManPerc max 0.001))) == 0) then {
				_agentPos = position assignedVehicle _unit;
				_agent = createAgent ["I_G_Soldier_exp_F",_agentPos,[],0,"NONE"];
				_agent removeAllEventHandlers "handleDamage";
				_agent addEventHandler ["handleDamage",{_this call donn_casca_unit_HD_bomber}];
				[objNull,_agent, group _unit] execFSM "andre_convoy_bomber.fsm";	
			};	
		};
	};
Link to comment
Share on other sites

One quick question.  I want fewer overall convoys but bigger ones.  When I go into the sqf and find:

//Cars in each convoy (refere to donn_carsConvy)
_convoyFormation = [
	[0,5],
	[3,4],
	[1,3],
	[6],
	[1,6],
	[3,3],
	[4,5],
	[3,3]
];

To delete a convoy entirely do I need to just delete the contents in the brackets so it reads [] or can I just delete the entire line?

Link to comment
Share on other sites

If you like my work, please consider a donation:

btn_donate_LG.gif $USD

btn_donate_LG.gif $EURO

ANDRE CONVOY: VERSION BOMBA V2a (28 of May of 2015)

 

INSTALLATION (BOMBA V2a):

Unzip this file in your mission folder: https://www.dropbox.com/s/xgthgs2r44utiv9/andre_convoy_bomba_arma3_epoch_v2a.7z?dl=0

Configure the map you is using in andre_convoy.sqf on line 70.

See in init(example).sqf a example on how to run the script and reproduce it in your init.sqf.

BE FILTERS:

On scripts.txt add !"execVM \"andre_convoy.sqf\"" at the end of the line that iniciate with 7 exec.

DONATION:

If the script works for you as you intended, i kindly ask for a donation. Thankyou.

NEW ON BOMBA VERSION:

- Suicide bomber engage on player.

- You can set bomberman frequency.

- Bomberman don't detonate if near allies.

- Shot the head, arms and legs of a bomberman will not make hin explode.

- Vehicles became acessible and vulnerable when all crew die and a player enters it.

- Reduced the number of "[] spwan {}".

- Added configuration to reduce or increase loot quantity.

- You can turn on/off vehicle crew number on map icons.

- Functions created to make the main code cleaner.

- Optimization on: code consistency & performance.

- Better became better, in general.

 

ADDED TO BOMBA WITH V2 VERSION:

- Fix: you don't need to kill all convoy to liberate a vehicle, you just need to kill the vehicle crew.

- Fix: Convoy units does not shot the bomberman anymore.

- Code to  embark/disembark simplified and realiable, minimum complications.

- Runner Bomber, if alive at the end of the battle, make a salute and explode if friends are not near.

 

BOMBA V2a VERSION:

- Fix: players consecutive disembark does not trigger bomberman spawn anymore.

the dropbox is broke files are not working when you download them

Link to comment
Share on other sites

Hi Donnovan,

First thank you very much for this script.

 

Second, it looks like everything is working properly in game, and this is great fun!

I am getting one error in my .rpt file.

 

 6:06:57 Error in expression < 0,_origin,[],_rad,"NONE"];
_motor call EPOCH_server_setVToken;
_motor allowDama>
 6:06:57   Error position: <EPOCH_server_setVToken;
_motor allowDama>
 6:06:57   Error Undefined variable in expression: epoch_server_setvtoken
 6:06:57 File mpmissions\__cur_mp.Chernarus\andre_convoy.sqf, line 566

 

The only thing I edited was line 70 to change map to Chernarus.

So I don't know whether this is just my server, something to be ignored, or just something that needs fixing. :)
 

Cheers!

Link to comment
Share on other sites

Cur,

 

This is why in the new epoch there is no more EPOCH_server_setVToken. So the line _motor call EPOCH_server_setVToken; gives an error.

 

This error cause no harm, but you can remove the line if you want, to keep your log clean.

 

Thankyou for the kind words!

 

Donnovan.

Link to comment
Share on other sites

Cur,

 

This is why in the new epoch there is no more EPOCH_server_setVToken. So the line _motor call EPOCH_server_setVToken; gives an error.

 

This error cause no harm, but you can remove the line if you want, to keep your log clean.

 

Thankyou for the kind words!

 

Donnovan.

 

 

 

 

Many thanks! I will ignore it. No problem!

 

One last question...

Can I turn "on" AI vehicle damage so that we can shoot out tires / damage the AI cars?

(If so, how would I do that... )

Or will that do bad things to the script and I should leave it alone?

 

Cheers!!

Link to comment
Share on other sites

Cur, i believe it will need extra code. If you do it now, if i'm correct, the bots will stay forever inside the vehicle.

 

If you want to try, change this function:

	//Vehicle Handle Damage
	donn_casca_veh_HD = {
		_motor = _this select 0;
		_dist = (_this select 3) distance _motor;
		_groupShoted = _motor getVariable ["car_group",GrpNull];
		_inWar = _groupShoted getVariable ["donn_inWar",false];
		if (!_inWar) then {
			_crew = crew _motor;
			if (count _crew > 0) then {
				_groupShoted setVariable ["donn_pshot",true,false];
				if (_dist < 120) then {_groupShoted reveal [_this select 3,4];};
			};
		};
		if (_inWar) then {_groupShoted setVariable ["donn_pshot",true,false];	if (_dist < 120) then {_groupShoted reveal [_this select 3,4];};};
	};

To that:

	//Vehicle Handle Damage
	donn_casca_veh_HD = {
		_motor = _this select 0;
		_dist = (_this select 3) distance _motor;
		_groupShoted = _motor getVariable ["car_group",GrpNull];
		_inWar = _groupShoted getVariable ["donn_inWar",false];
		if (!_inWar) then {
			_crew = crew _motor;
			if (count _crew > 0) then {
				_groupShoted setVariable ["donn_pshot",true,false];
				if (_dist < 120) then {_groupShoted reveal [_this select 3,4];};
			};
		};
		if (_inWar) then {_groupShoted setVariable ["donn_pshot",true,false];	if (_dist < 120) then {_groupShoted reveal [_this select 3,4];};};
        (_this select 2)  //NEW LINE HERE
	};
Link to comment
Share on other sites

Ok, I was looking at that function, but don't know some of the code, so I figure I would ask first :)  I'm glad I did, I will try at some point, but you would be far better than me at trying that :) :)

 

I am still a newbie at all this.

 

I will buy you a beer anyway! If you get a chance to play with it and make that work, I would love it, but if you don't, enjoy your beer on me!

 

Thanks again!

Link to comment
Share on other sites

Just to let people how to do one thing, if they wish... The script as is, puts markers on the map where the convoys can start from, I was worried people may "camp" there and try to kill them to get the loot, so I disabled the markers... here is how to do this and keep everything else working!

 

Find this block of code in andre_convoy.sqf

 

//Spawn icons on map iniciate variables
  _spawns = _this select 0;
  _donn_casca_icons = [];
{_donn_casca_icons = _donn_casca_icons + [[_x select 0,"Convoy Spawn " + str (_forEachIndex + 1)]];} forEach _spawns;

 

 

And make it look like this:

 

//Spawn icons on map iniciate variables
  _spawns = _this select 0;
  _donn_casca_icons = [];
  /*{_donn_casca_icons = _donn_casca_icons + [[_x select 0,"Convoy Spawn " + str (_forEachIndex + 1)]];} forEach _spawns;*/

 

Cheers and happy gaming!

Link to comment
Share on other sites

Hi mate, I wanted to check this out but got kicked for this:

#22 "(_this select 0) execVM "\A3\Characters_F_Bootcamp\Data\Scripts\randomize_gue1.sqf""

I fixed it but wanted to let you know that I got kicked for that. I am using Epoch 0303 with infiSTAR BE filters.

Link to comment
Share on other sites

Create an account or sign in to comment

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

Create an account

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

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×
×
  • Create New...