LHD Anywhere via Function

Include an LHD anywhere, without addOns, with this simple trick!  Make sure you place the Functions Module on the map first.  Then place a Game Logic where you’d like your LHD and name it something like LHD1.  Then use this in your init.sqf:

waituntil {!isnil "bis_fnc_init"};
LHD1 call BIS_EW_fnc_createLHD;

No Comments

Mayhem and fire and smoke!

Some men just want to watch the world burn…

To make something burn via BIS_Effects_Burn we’ll need this code in our init.sqf:

BIS_Effects_Burn=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\destruction\burn.sqf";

Then to set something on fire we’ll use this command, either in a trigger or from it’s init or via a script:

[object, intensity, time, lifecheck, fade] spawn BIS_Effects_Burn;

Object: the name of the object that the fire will be attached to.
Intensity: the intensity of the fire.  Recommended to use values between 0.7 and 10, higher values may be used if desired though.
Time: the time that the fire started.  Use the global variable time.  This is used to keep effects synced for JIP players.
Lifecheck: if this is true then the unit will only burn as ling as it is dead (!alive unit).  Set to false to burn things like buildings and gamelogics.
Fade: if true then the fire will die down over time, eventually dying out.  Set to false if you want it to keep burning (affected by rain too).

If you want to kill a fire you can delete the object it is attached to.

Hint: you can attach a gamelogic to a moving object via the attachto command, and then make the gamelogic burn that way you can kill the fire without deleting the object.

Examples:
To make a gamelogic named mygamelogic burn forever with a big fire:

[mygamelogic,10,time,false,false] spawn BIS_Effects_Burn

same with medium sized fire:

[mygamelogic,5,time,false,false] spawn BIS_Effects_Burn

To make a gamelogic burn and have the fire fade over time:

[mygamelogic,10,time,false,true] spawn BIS_Effects_Burn

To make it smoke, with no visible flame you can use an intensity of 3 or lower:

[mygamelogic,3,time,false,false] spawn BIS_Effects_Burn

 

Other forms of mayhem…

Thanks for F2k Sel for the following ideas:

While on the subject of wrecks and damage, if you use the effects_burn function you can still put some damage using setdamage or the sliders to make it look damaged.

Also you can have it totally wrecked at the start of the mission but setting damage to maximum and put this in the init line of the object.

this will stop the vehicle from burrning but look wrecked

car1 enablesimulation false;

this will put a vehicle on it’s side but you may have to play with the values depending on direction

car1 setvectorup [0,0.1,0.01]

or you can do it an easier way, place a function module on the map first
place in an unit init

[car1,0, 90] call bis_fnc_setpitchbank;

That will flip a vehicle onto it’s side in any direction, a value of 180 will put it on it’s roof.

this will wreck the vehicle with no flames, the driver and gunner will be killed and keep them in the car

car1d setdamage 1;car1g setdamage 1; car1 setdamage 0.9

this would kill all units including cargo

{_x setdamage 1;}forEach units car1

This will remove a tyre from a vehicle,

car1 setHit ["wheel_1_1_steering", 1];

other wheel values are :-
wheel_1_1_steering = Left front tire
wheel_1_2_steering = Left rear tire
wheel_1_3_steering = Left middle tire (trucks)
wheel_2_1_steering = Right front tire
wheel_2_2_steering = Right rear tire
wheel_2_3_steering = Right middle tire (trucks)

or you can just break the glass

car1 setHit ["Glass1", 1];
car1 setHit ["Glass2", 1];
car1 setHit ["Glass3", 1];
car1 setHit ["Glass4", 1];
car1 setHit ["Glass5", 1];
car1 setHit ["Glass6", 1];

this will damage just the motor on a car or aircraft,gets choppers down quickly.

heli1 setHit ["motor", 1]

This will damage the tail rotor

heli setHit ["mala vrtule", 0.95]

No Comments

Eagle Wing Effects

 

yogdogz on the BIS forums extracted and posted the effects that Gaia had used in the Eagle Wing single player campaign.  It’s a very cool post apocolyptic feel with wind blowing ash and dust clouds all around you, closed in darker corners of the screen and a very desolate atmosphere.

description.ext:

#include "\ca\missions_EW\campaign\description_mission.hpp"

init.sqf:

execVM "screen.sqf";

"colorCorrections" ppEffectAdjust [2, 30, 0, [0.0, 0.0, 0.0, 0.0], [0.8*2, 0.5*2, 0.0, 0.7], [0.9, 0.9, 0.9, 0.0]];
"colorCorrections" ppEffectCommit 0;
//"colorCorrections" ppEffectAdjust [1, 1, 0, [0.0, 0.0, 0.0, 0.0], [0.8*2, 0.5*2, 0.0, 0.7], [0.9, 0.9, 0.9, 0.0]];
"colorCorrections" ppEffectAdjust [1, 0.8, -0.001, [0.0, 0.0, 0.0, 0.0], [0.8*2, 0.5*2, 0.0, 0.7], [0.9, 0.9, 0.9, 0.0]];  
"colorCorrections" ppEffectCommit 3;
"colorCorrections" ppEffectEnable true;
"filmGrain" ppEffectEnable true; 
"filmGrain" ppEffectAdjust [0.02, 1, 1, 0.1, 1, false];
"filmGrain" ppEffectCommit 5;

//--- Wind & Dust
[] spawn {
    waituntil {isplayer player};
    setwind [0.201112,0.204166,true];
    while {true} do {
        _ran = ceil random 5;
        playsound format ["wind_%1",_ran];
        _obj = vehicle player;
        _pos = position _obj;

        //--- Dust
            setwind [0.201112*2,0.204166*2,false];
        _velocity = [random 10,random 10,-1];
        _color = [1.0, 0.9, 0.8];
        _alpha = 0.02 + random 0.02;
        _ps = "#particlesource" createVehicleLocal _pos;  
        _ps setParticleParams [["\Ca\Data\ParticleEffects\Universal\universal.p3d", 16, 12, 8], "", "Billboard", 1, 3, [0, 0, -6], _velocity, 1, 1.275, 1, 0, [9], [_color + [0], _color + [_alpha], _color + [0]], [1000], 1, 0, "", "", _obj];
        _ps setParticleRandom [3, [30, 30, 0], [0, 0, 0], 1, 0, [0, 0, 0, 0.01], 0, 0];
        _ps setParticleCircle [0.1, [0, 0, 0]];
        _ps setDropInterval 0.01;

        sleep (random 1);
        deletevehicle _ps;
        _delay = 10 + random 20;
        sleep _delay;

    };
};

//--- Ash
[] spawn {
    waituntil {isplayer player};
    _pos = position player;
    _parray = [
    /* 00 */        ["\Ca\Data\ParticleEffects\Universal\Universal", 16, 12, 8, 1],//"\Ca\Data\cl_water",
    /* 01 */        "",
    /* 02 */        "Billboard",
    /* 03 */        1,
    /* 04 */        4,
    /* 05 */        [0,0,0],
    /* 06 */        [0,0,0],
    /* 07 */        1,
    /* 08 */        0.000001,
    /* 09 */        0,
    /* 10 */        1.4,
    /* 11 */        [0.05,0.05],
    /* 12 */        [[0.1,0.1,0.1,1]],
    /* 13 */        [0,1],
    /* 14 */        0.2,
    /* 15 */        1.2,
    /* 16 */        "",
    /* 17 */        "",
    /* 18 */        vehicle player
    ];
    _snow = "#particlesource" createVehicleLocal _pos;  
    _snow setParticleParams _parray;
    _snow setParticleRandom [0, [10, 10, 7], [0, 0, 0], 0, 0.01, [0, 0, 0, 0.1], 0, 0];
    _snow setParticleCircle [0.0, [0, 0, 0]];
    _snow setDropInterval 0.01;

    _oldPlayer = vehicle player;
    while {true} do {
        waituntil {vehicle player != _oldPlayer};
        _parray set [18,vehicle player];
        _snow setParticleParams _parray;
        _oldPlayer = vehicle player;
    };
};

screen.sqf:

screen = {

sqf = [true] spawn bis_ew_fnc_screen;

};


while {true} do {
    player spawn screen;
    sleep 5;
};

No Comments

On Demand Artillery Strike

This is from Riouken on the BIS forums:

The Grad is artillery you need to create a fire mission and execute it.  There is also a demo mission of this available.

// There is a arty logic ingame named arty1;
_myBattery = arty1;

// We need to make a arty fire mission template
_heTemplate = ["IMMEDIATE", "HE", 0, 15];

// We need the postion of the target Above Sea Level.
_targetPos = getPosASL target_1;

// Here we check and make sure it is range then we exicute the fire mission.
if ([_myBattery, _targetPos, _heTemplate select 1] call BIS_ARTY_F_PosInRange) then
{
     [_myBattery, _targetPos, _heTemplate] call BIS_ARTY_F_ExecuteTemplateMission;
     hint "Firing... Sit back and wait, it will take about 60-90 seconds for the rounds to impact";
} else
{
     hint "Target out of range!";
};

No Comments

Collecting Inventory Items

Here are the little evidence items that are available. All except PMC_documents are available in ArmA2 vanilla. PMC of course requires PMC.

Item name – class name

CDF dogtags – CDF_dogtags
Cobalt File – Cobalt_File
Evidence (Dog tags) – EvDogTags
Evidence (File2) – EvKobalt
Evidence (Map) – EvMap
Evidence (Money) – EvMoney
Evidence (File1) – EvMoscow
Evidence (Photos) – EvPhoto
Kostey’s map case – Kostey_map_case
Kostey’s notebook – Kostey_notebook
Kostey’s photos – Kostey_photos
Moscow Bombing File – Moscow_Bombing_File
Evidence (Map) – PMC_documents

To give a player an item:

player addWeapon "EvMoney";

To check if a player has an item:

player hasWeapon "EvMoney"

No Comments