Jump to content
Sign in to follow this  
Von Quest

Backpacks - Parachute and Scuba Qs?

Recommended Posts

Hey guyz! ;) I have a few questions about the Backpacks and insertion.

1. Is there anyway to keep or use a standard Backpack when parachuting in? Being geared toward special ops type missions we like to HALO in but you have to use the Parachute as your Backpack. Once you're boots-on-the-ground you have very little gear to carry out your mission since you can not have a Backpack & Parachute both.

Any thoughts on this? Right now to simulate we kick out a gear-drop crate out first and then we have to go find it somewhere on the ground. It would be nice to be ready when we hit the AO rather than play 'find the crate' for 30 minutes. Makes little sense to jump in and then have little to no gear to play with with the bad dudes.

2. Scuba insertions. Continuing with this theme... Anyone know how you can carry your fatigues in your Backpack? Would be great if when you hit shore you could then change out of your scuba gear, stash it, then carry on in camouflage fatigues for the mission. Then return, gear up in the scuba equipment and slither back into the murky depths...

Wait for it... What about both!? *mind blown* :lecture:

Share this post


Link to post
Share on other sites

I can't help you, but I wish it would be possible too. Just to give a potential modder an idea on this; halo jumpers often put their gearbackpacks 'between' their lower legs while parachuting. Maybe theres somebody out there who can make such thing using scripts (attachTo?) or a whole new parachute&backpack-pack. :)

Share this post


Link to post
Share on other sites

This is what i wrote up for our public Server.

Init.sqf

if (!isDedicated) then {
waitUntil {!isNull player};
player addeventhandler ["Respawn", {
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "NSS\ParaScript\Paradrop.sqf", "", 1, false, true,"", "((vehicle player) iskindof ""Air"") && (((position player) select 2) > 20) && (player != driver (vehicle player))"];
}];
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "NSS\ParaScript\Paradrop.sqf", "", 1, false, true,"", "((vehicle player) iskindof ""Air"") && (((position player) select 2) > 20) && (player != driver (vehicle player))"];

};

Paradrop.sqf

_unit = _this select 0;

if (local _unit) then {
_veh = vehicle _unit;
_unit allowdamage false;
MoveOut _unit;
sleep 0.75;

_chute = createVehicle ["NonSteerable_Parachute_F", (getPos _unit), [], 0, "NONE"];
_chute setPos (getPos _unit);
_unit setCaptive true;
_unit moveInDriver _chute;

_unit allowDamage true;

waitUntil {((getPosATL _unit select 2) < 2)};
sleep 2;
if ((vehicle _unit) == _chute) then {
MoveOut _unit;
sleep 0.5;
deleteVehicle _chute;
};

_unit setCaptive false;


if(!isMultiplayer) then {
hint "SetCaptive off!";
};

};


You might want to comment/delete the setCaptive out there, it's just in to improve the overall experience, since public isn't that serious anyway.

Oh and maybe you'd want to change "NonSteerable_Parachute_F" to "Steerable_Parachute_F", but that's up to you.

Cheers.

  • Like 1

Share this post


Link to post
Share on other sites

Thanks mantls.

Splat! :dead: Tried and tried all night. Could not get it to work. I'm new to ArmA and scripting in general. Missing something simple? Script was working (sorta) in MP; but NOT in SP/Testing through preview. In MP would just fall with Backpack and then splat, bounce, and respawn over dead body in standard BLUFOR guy.

Looking to keep my custom guy (mod) with the Backpack filled with all the items I prefer. At this point don't really care if it steerable or not. Didn't know non-steerable was even in game. Seen some brilliant scripting in the game from you guys so far. Hope someone has the magical sqf for this.

Will play around more this weekend when I get home. Any ideas welcome!

Share this post


Link to post
Share on other sites

If you can find it, I think there's a script that might be able to generate a map icon for your crate when it hits the ground. That way you can still HALO and quickly find your crate once on the ground. I saw it in a pilot bail-out script that marked him on the map so he could be rescued. Maybe you could get that to work for your crate.

Share this post


Link to post
Share on other sites
Thanks mantls.

Splat! :dead: Tried and tried all night. Could not get it to work. I'm new to ArmA and scripting in general. Missing something simple? Script was working (sorta) in MP; but NOT in SP/Testing through preview. In MP would just fall with Backpack and then splat, bounce, and respawn over dead body in standard BLUFOR guy.

Looking to keep my custom guy (mod) with the Backpack filled with all the items I prefer. At this point don't really care if it steerable or not. Didn't know non-steerable was even in game. Seen some brilliant scripting in the game from you guys so far. Hope someone has the magical sqf for this.

Will play around more this weekend when I get home. Any ideas welcome!

Well that's strange. If you could post your complete init.sqf so that i could have a look, that'd be great.

Share this post


Link to post
Share on other sites

---------- Post added at 16:28 ---------- Previous post was at 16:26 ----------

init.sqf

//PARACHUTE: 
if (!isDedicated) then {
waitUntil {!isNull player};
player addeventhandler ["Respawn", {
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "scripts\para\Paradrop.sqf", "", 1, false, true,"", "((vehicle player) iskindof ""Air"") && (((position player) select 2) > 20) && (player != driver (vehicle player))"];
}];
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "scripts\para\Paradrop.sqf", "", 1, false, true,"", "((vehicle player) iskindof ""Air"") && (((position player) select 2) > 20) && (player != driver (vehicle player))"];

};


//SCUBA: code in player init codebox: null=[this, 25, 3000, 1.2, 0.15, 0.30, 0.55, 24] execVM "scripts\trindisplay\diverstats.sqf"
//SCUBA: format null=[this, SAC, TankSize, MaxPPO2, O2%, N2%, He%, WaterTemp*C] note: mediterranean sea range Ave 11*C-28*C Use 2000/20?
getGasTot = compile preprocessFileLineNumbers "scripts\scuba\trindisplay\functions\trin_fn_gasCalc.sqf";
getTisTot = compile preprocessFileLineNumbers "scripts\scuba\trindisplay\functions\trin_fn_initTissues.sqf";


//SNIPER:  Works great. No add to player. Adjust Force as preference Lower is MORE FORCE, default 10 then 30
if (isServer) then {execVM "scripts\sniper\BWIS\bulletWindServer.sqf";};
execVM "scripts\sniper\BWIS\bulletWindClient.sqf";


//SNIPER: Von Quest Industries Sniper Buddy v0.1b
execVM "scripts\sniper\Questrel\vqi_sniperbuddy.sqf";


//MEDIC: Revive Script
call compile preprocessFile "scripts\medic\=BTC=_revive\=BTC=_revive_init.sqf";


// Use only 1 marker per Unit for UPS.spf random patrol OR WP dismissed
"StratisAll" setMarkerAlpha 0;
"Stratis" setMarkerAlpha 0;
"Coast" setMarkerAlpha 0;
"TownP1" setMarkerAlpha 0;
"TownP2" setMarkerAlpha 0;
"AirbaseP1" setMarkerAlpha 0;
"AirbaseP2" setMarkerAlpha 0;
"StratisG1" setMarkerAlpha 0;
"StratisG2" setMarkerAlpha 0;
"StratisG3" setMarkerAlpha 0;
"StratisR1" setMarkerAlpha 0;
"StratisR2" setMarkerAlpha 0;

Share this post


Link to post
Share on other sites

looks good to me... it should work.

A bit of stupid Question but are you sure you clicked Paradrop and not Eject? :D

Share this post


Link to post
Share on other sites

Bingo. I think we got it. (can't test right now)

I'm NOT in an aircraft. We HALO in mostly at

over 36K feet (11,111m) so I just set us in the

air to start. Guessing you have to be in a

helicopter then? Which only seems to work

at lower levels...

Thanks for all your help so far. Will update

later. Know the max height for a Helicopter

by chance? What do you guys jump from?

Share this post


Link to post
Share on other sites
Bingo. I think we got it. (can't test right now)

I'm NOT in an aircraft. We HALO in mostly at

over 36K feet (11,111m) so I just set us in the

air to start. Guessing you have to be in a

helicopter then? Which only seems to work

at lower levels...

Thanks for all your help so far. Will update

later. Know the max height for a Helicopter

by chance? What do you guys jump from?

Oh, yeah. Maybe i should've told you that :'D.

You have to be in an Aircraft and you can't be the Pilot, i've marked both those coditions if you wish to change them.

It basically works like the Eject button in ArmA 2 Vanilla.


player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "scripts\para\Paradrop.sqf", "", 1, false, true,"", "[u][color="#FF0000"]((vehicle player) iskindof ""Air"")[/color] && (((position player) select 2) > 20) && [color="#FF0000"](player != driver (vehicle player))[/color][/u]"]

Share this post


Link to post
Share on other sites

How do I make an AI group led by me to exit with me and how do I make independent AI group to execute this script after helicopter reaching a waypoint and then follow waypoints on the ground? Thanks in advance.

Share this post


Link to post
Share on other sites
How do I make an AI group led by me to exit with me and how do I make independent AI group to execute this script after helicopter reaching a waypoint and then follow waypoints on the ground? Thanks in advance.

I believe you just use to order your team to exit the Heli:

[`] then [6] then [Eject]

I'm the wrong one to ask as I never use Friendly AI (plus this is wrong thread?).

Try Search, Google Search, Wiki, YouTube Search, Experiment, etc.

Good question though, I might even try using it on some AI later myself.

Another good resource is trying others missions then contact them directly

or post in their thread for that mission to see what they did.

---------- Post added at 23:56 ---------- Previous post was at 23:54 ----------

Oh, yeah. Maybe i should've told you that :'D.

You have to be in an Aircraft and you can't be the Pilot, i've marked both those coditions if you wish to change them.

It basically works like the Eject button in ArmA 2 Vanilla.


player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "scripts\para\Paradrop.sqf", "", 1, false, true,"", "[u][color="#FF0000"]((vehicle player) iskindof ""Air"")[/color] && (((position player) select 2) > 20) && [color="#FF0000"](player != driver (vehicle player))[/color][/u]"]

Not sure what I'd change it to.

Tried deleting the red text, then

I do get a 'Paradrop' option but

nothing happens. :confused:

Back to the drawing board...

Edited by Goblin

Share this post


Link to post
Share on other sites
I believe you just use to order your team to exit the Heli:

[`] then [6] then [Eject]

I'm the wrong one to ask as I never use Friendly AI (plus this is wrong thread?).

Try Search, Google Search, Wiki, YouTube Search, Experiment, etc.

Good question though, I might even try using it on some AI later myself.

Another good resource is trying others missions then contact them directly

or post in their thread for that mission to see what they did.

---------- Post added at 23:56 ---------- Previous post was at 23:54 ----------

Not sure what I'd change it to.

Tried deleting the red text, then

I do get a 'Paradrop' option but

nothing happens. :confused:

Back to the drawing board...

Because the script moves you out of your current vehicle. Like i (hopefully) said, it's meant for dropping out of an Aircraft and deploying a nonsteerable Parachute while still keeping your backpack.

Share this post


Link to post
Share on other sites

SCUBA:

OK, I think I have the SCUBA issue worked out. I was over-thinking it I guess. I just needed a bigger pack to haul the extra gear and uniform (or it was an update issue). Should be good now.

HALO / Parachuting:

I think I'm on the right track. Just need to figure out how to Spawn a Backpack (with custom loadout) as soon as you land on the ground. The game checks your Altitude then when on ground (getPos? getPosATL?) spawns the Backpack next to you on the ground you set up in SQF file (maybe?).

((vehicle player) in thisList) and ((getPos (vehicle player) select 2) < 2)

_halopack = "Backpack1" createVehicle (position player);

Call with init.sqf: null = [] execVM "halopack.sqf"

I'm just guessing here... I've been looking and experimenting for 3 days now. Not getting very far. If it matters, I technically need to Spawn more than 1 Backpack for anyone playing on my server. Each person has their own custom loadout. So I'm guessing would need some identifier per player/unit.

Example: I crash through the trees and hit the ground *thud, uff* (game checks - on ground 'yes' - run execVM "halopack.sqf" - spawns Backpack #1 at feet) Repeats for second player; but his Backpack #2 wherever he crashed down at.

From what I can find, there are spawn scripts for gear boxes and things; but since we are falling from great heights we are always in flux and need to simulate stashing the chute and gearing up in-country with as much immersion as possible right where we land. The gear box/crate option is just a bit too 'gamey'. I feel we are so close to getting this working...

[ moderators: Permission to start a new thread with more focus and better Title on this specifically? ]

Edited by Goblin

Share this post


Link to post
Share on other sites

@Goblin

If you do that (order them to eject) they do not have parachutes

Share this post


Link to post
Share on other sites

@matbkob

try --> this addBackpack "B_Parachute"; to all your units.

Was thinking you wanted a soft pile of dead guys to land on. =)

Update:

So for a work-around I'm now using a custom-loaded crate placed on Map named whatever (crate1), then using a script I can access that crate from anywhere on the Map I land. This (for now) will simulate grabbing the Backpack and all the pre-selected gear off the ground next to me as it would be in real life since you would HALO in using High-Alt gear; ie Helmet, O2 Supply, Black Thermal Coveralls, Black Facemask, etc. When I hit the ground (or ocean, lake, pond, etc) I can dump the Jump gear and gear-up as pre-planned. Works ok for now. If anyone knows a better idea, don't be shy... Chime in!

Share this post


Link to post
Share on other sites

we need something similair as the "put on back" system from ACE mod in arma 2.. would get rid of this problem completely.

Share this post


Link to post
Share on other sites

IIRC, if you use addAction on an AI, you can then use action to use that action order them via '6' to then use that action. Alternatively, you can use the same script in a trigger to get your ai teammates into a parachute.

I've edited mantls script to (hopefully) work with the second idea I mentioned. I haven't tested it myself.

init.sqf

if (!isDedicated) then {
waitUntil {!isNull player};
player addeventhandler ["Respawn", {
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "NSS\ParaScript\Paradrop.sqf", "", 1, false, true,"", "((position _target) select 2) > 20) && (_target == (vehicle _target))"];
}];
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "NSS\ParaScript\Paradrop.sqf", "", 1, false, true,"", "((position _target) select 2) > 20) && (_target == (vehicle _target))"];

};

Paradrop.sqf

_unit = _this select 0;

if (local _unit) then {
_chute = createVehicle ["NonSteerable_Parachute_F", (getPos _unit), [], 0, "NONE"];
_chute setPos (getPos _unit);
_unit moveInDriver _chute;

waitUntil {((getPosATL _unit select 2) < 2)};
sleep 2;
if ((vehicle _unit) == _chute) then {
MoveOut _unit;
sleep 0.5;
deleteVehicle _chute;
};

};

Trigger set to anybody present.

Condition:

this && ( ({getPos _x > 200} count thisList) > 1

Actvation:

{unused = [_x, _x, 0, nil] execVM "NSS\ParaScript\Paradrop.sqf"} forEach ((units (group player)) - [player])

Edited by MadocComadrin

Share this post


Link to post
Share on other sites
IIRC, if you use addAction on an AI, you can then use action to use that action order them via '6' to then use that action. Alternatively, you can use the same script in a trigger to get your ai teammates into a parachute.

I've edited mantls script to (hopefully) work with the second idea I mentioned. I haven't tested it myself.

init.sqf

if (!isDedicated) then {
waitUntil {!isNull player};
player addeventhandler ["Respawn", {
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "NSS\ParaScript\Paradrop.sqf", "", 1, false, true,"", "((position _target) select 2) > 20) && (_target == (vehicle _target))"];
}];
player addaction [("<t color=""#ED2744"">") + ("Paradrop") + "</t>", "NSS\ParaScript\Paradrop.sqf", "", 1, false, true,"", "((position _target) select 2) > 20) && (_target == (vehicle _target))"];

};

Paradrop.sqf

_unit = _this select 0;

if (local _unit) then {
_chute = createVehicle ["NonSteerable_Parachute_F", (getPos _unit), [], 0, "NONE"];
_chute setPos (getPos _unit);
_unit moveInDriver _chute;

waitUntil {((getPosATL _unit select 2) < 2)};
sleep 2;
if ((vehicle _unit) == _chute) then {
MoveOut _unit;
sleep 0.5;
deleteVehicle _chute;
};

};

Trigger set to anybody present.

Condition:

this && ( ({getPos _x > 200} count thisList) > 1

Actvation:

{unused = [_x, _x, 0, nil] execVM "NSS\ParaScript\Paradrop.sqf"} forEach ((units (group player)) - [player])

What is it you're trying to do?

Share this post


Link to post
Share on other sites
I can't help you, but I wish it would be possible too. Just to give a potential modder an idea on this; halo jumpers often put their gearbackpacks 'between' their lower legs while parachuting. Maybe theres somebody out there who can make such thing using scripts (attachTo?) or a whole new parachute&backpack-pack.

This is a great idea. How?

Will start doing some homework

and testing on this... Thanks.

Share this post


Link to post
Share on other sites
Something like this:

That's totally possible. I tried working on something like that last night but the main problem is you can easily check the type of backpack and the contents but then you have to check type of every item in the backpack before adding them back. Like IFAKs need to use addItemCargo while magazines would be addMagazine cargo and I was too lazy to write checks for all of that. :) Not a concern for default loadouts though.

Also was having trouble getting the thing to even attach to the player. Seemed stubborn.

Share this post


Link to post
Share on other sites

(note: tested only in SP so far, need input)

Equip your unit with a backpack and items, then when ready to jump execute this:

_nil = [this,""] execVM "attachbackpack.sqf";

it will transfer strap your original backpack to your stomach, and drop it when you land, no need to repack.

an issue im having is getting the backpack to lay on the ground naturally as when dropped by a player, or added empty object in editor...moving or creating vehicle doesn't allow it to lay flat on the ground, nor have the standard "take bag" actions...ideas?

my test unit's INIT (just spawned in air, not vehicle; use actions):

this addBackpack "B_AssaultPack_blk"; (unitBackpack this) additemCargo ["FirstAidKit",2];(unitBackpack this) addWeaponCargo ["arifle_MXM_F",1]; _nil = [this,""] execVM "attachbackpack.sqf";

attachbackpack.sqf:

//HALOpack
//
//example:
// _nil = [this,"parachute classname"] execVM "attachbackpack.sqf"; //parachute is optional, leave "" blank for standard steerable
//

if (isDedicated) exitWith {};
_unit = _this select 0;
_parachute = _this select 1;
_pack = unitBackpack _unit;

if(_parachute == "") then {
_unit addBackpack "B_Parachute";
} else {
_unit addBackpack format ["%1",_parachute];
};

_pack attachTo [_unit,[0,-0.13,0],"Pelvis"]; 
_pack setVectorDirAndUp [[0,0,1],[0,1,0]]; //flip pack upside down

_nil = [_unit,_pack] spawn {
_unit = _this select 0;
_pack = _this select 1;
waitUntil {isTouchingGround _unit};
detach _pack;
//these two lines are because i couldn't figure out how to have
// a backpack just lay there asif naturally dropped instead of created
// so it flips it over (from the HALO position) and buries it...
_pack setVectorDirAndUp [[0,0,-1],[0,-1,0]];
_pack setPosAtl [getposATL _pack select 0,getposATL _pack select 1,-.13];
_pack addAction ["Take Bag",{(_this select 1) action ["TakeBag",_this select 0];}];
};

edit:

Something like this? :D

halopack.jpg

Edited by dr_strangepete

Share this post


Link to post
Share on other sites

Do I smell genius? We have a WINNER!!!!!!

Thank you, thank you, thank you.

Close enough bro. Love it. :dance1:

Was using a 'crate-at-a-distance' work-around to simulate this. But this is the REAL deal here.

Tried the attachTo thing but could not strap-on after landing. Also couldn't find setVector

info in wiki. Didn't know what it was called. Checked forums then had to stay up late just to

test quick. So far it looks almost perfect. Will test more scenarios and options later...

Thanks again.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×