#arma3_scripting

1 messages · Page 596 of 1

hollow thistle
#

yes

ebon citrus
#

i see

#

thank you

hollow thistle
#

and _classname looks like generic var name

#

so there's some risk.

ebon citrus
#

yeah, i use it pretty much everywhere

#

yep, i jsut didnt know that you can unintentionally overwrite from outside the function

hollow thistle
#

it's nicely explained there thanks to recent changes by our awesome wiki contributors.

#

why you're doing that action btw, can't backpacks of the bodies be accessed already? thomp

ebon citrus
#

ummm

#

back in the day you used to have the open bag action

#

and i just like it

#

now i'll make "take bag" action

hollow thistle
#

You're remaking A2 inventory? 😄

ebon citrus
#

unfortunately, yes

#

it's a training project

#

with GUI/SCRIPT

hollow thistle
#

I see, nice.

ebon citrus
#

i'll make it into a mod and release it to the workshop as open source if anyone is interested

#

there's a lot of quirks

#

and some things which i cannot repeat in arma 3

#

for example, i'll have to reconfig all the item-weights

#

from the weight-value to the slot-value

#

well, not "all"

#

but those which need to

#

like rockets, mg mags etc

#

OpenBag is maybe better for me

#

over gear

#

yep

#

far better

flat elbow
#

on the simulation level, i still prefer A2 to A3

ebon citrus
#

physx is a bit sticky

#

but arma 3 has its advantages

#

especially in the air

flat elbow
#

i don't know why, but it makes you feel more like a real soldier, a sensation that i don't get in A3

ebon citrus
#

it's slow

#

it's gritty

flat elbow
#

in A3 it gives me the vibe of a simulation while A2 gave me the endangered sensation of a ground troop

ebon citrus
#

you can make arma 3 have the same feeling

flat elbow
#

it's hard to explain

ebon citrus
#

but as vanillöa, not really

#

i know the feeling

#

arma 3 fits better with desert-warfare

#

arma 2 fits in forests

#

it's just down to the visuals

flat elbow
#

A2 had most of the scenarios in desert

ebon citrus
#

arma 2 had no deserts

#

arma 2 OA had deserts

#

and BAF

#

but yeah

flat elbow
#

yea when i started playing it online it was A2OA

ebon citrus
#

i know what you mean

#

But it sucked

#

the deserts in arma 2 felt bleached

#

arma 3 is way better in that aspect

#

maybe because the main terrains ARE semi-arid

#

it's just down to the filters and color corrections,. though

flat elbow
#

but it contributed to the idea of a simulator more than a game maybe?

ebon citrus
#

i dont know

#

depends on your experience

flat elbow
#

i have with my group like 50 mods and it still doesn't feel "right" (?)

ebon citrus
#

less is more

#

a man can have a house built of gold, yet feel empty

exotic tinsel
#

so im trying to write and unload crate script and i could use some help. Im trying to set the pos of the crate once unloaded to always be at the back/rear of the vehicle. The script can be used on all vehicles so i dont know how to calculate where the rear of the vehicle is reliably. Can someone point me in the right direction.

gloomy aspen
#

Hallo!

Little syntax question ...

s1 say3D ["gunfire", 1000, 1];

If i wanted this to 'sleep 45;' where would I put it?

#

Cant figure the brackets for the life of me

ebon citrus
#

?

#

do you want it to wait before or after?

gloomy aspen
#

Ideally just wanna make that sound loop eternally until another trigger calls it to stop

#

The sound is 45 seconds long

ebon citrus
#

how long is the track?

#

oh

#
yourScriptHandle = s1  spawn {
  while true {
      _this say3D ["gunfire", 1000, 1];
      sleep 45;
   }
};```
#

then jsut delete yourScriptHandle to make it stop

#

wait i forgot the while loop

#

this wont stop the sound immediately

#

to stop the sound immediately, delete s1

gloomy aspen
#

Gotcha, will give it a go 🙂 Thank you!

ebon citrus
#

if someone sees obvious mistakes, let them be known

gloomy aspen
#

Would that be applicable inside a trigger?

ebon citrus
#

yep

#

as long as s1 exists

gloomy aspen
#

Awesome 🙂

ebon citrus
#

remember that say3D is local to the machine it is executed on

#

so if this is for a multiplayer-mission, you will need to execute the script on each client

#

triggers fire client-side so it should sort it out itself

#

if you place it inside a trigger

#

in the activation field

gloomy aspen
#
  while true {
      _this say3D ["gunfire", 1000, 1];
      sleep 45;
   }
};``` 

Will that go inside a trigger? There is no external script being called so missed out the 'yourscripthandle' part ... Is that right? haha, sorry im still learning
ebon citrus
#

no...

#

the script handle is the handle to the script that youre adding to the scheduler

#

it's like the address for the script

#

you need it to delete the script in a sensible way

#

terminate yourScriptHandle to terminate it

#

give it some reasonable name aswell

#

this is just an example name

gloomy aspen
#

Its telling me theres a ';' missing?

ebon citrus
#

hgold on

crude needle
ebon citrus
#
yourScriptHandle = s1 spawn {
  while {true} do {
      _this say3D ["gunfire", 1000, 1, false];
      sleep 45;
   }
};```
#

try that?

#

@gloomy aspen

#

now again

#

forgot while-loops need a code as input

gloomy aspen
#

Same error 😦

copper raven
#

missing do

ebon citrus
#

fixed

#

i dont use whiles usually 😅

#

theyre a horrid thing

gloomy aspen
#

Thanks will test now 🙂

exotic tinsel
#

@crude needle thanks mate!

slender schooner
#

is there a way to add functions that are allowed to the cfgRemoteExec on the fly as in, while the server is running?

#

in other words, adding commands to the whitelist even if only temporary

slim verge
#

probably not because cfgremoteexec is declared in the description, which is a config

slender schooner
#

i guessed so aswell, but asking never hurts

#

tbh, would make the whole config useless then

slim verge
#

you would also typically define any functions in pre init as well, so why would you need to add them on the fly ?>

slender schooner
#

well, i m working on some scripts (admintool) and its easier to declare functions and stuff in the debug console while you are on the server, then closing the server, editing a sqf file, packing the whole mission into a pbo, putting the pbo into the mpmission folder, and then starting the server and reconnect after it runs

#

guess my best practice here would be to define like 10 or so functions in the cfgRemoteExec to be whitelisted, so that i have some spare functions that are usable on the fly

slim verge
#

so dont run cfgremoteexec restrictions in the dev environment until your happy with the scripts and the best way to test is to use excvm as this can be edited while the mission is running and rerun with the new code,, using maybe an addaction test.sqf

slender schooner
#

hm

#

that ofcourse also sounds like a good idea

#

but i know my stupid a** brain, and i know for a fact that i will forget to reimpliment it later, plus, i want to see if any restrictions are in place while i code, as i dont want to have to recode everything later due to a restriction that i didnt see

#

thanks anyways

slim verge
#

so create your function, then call your function as you need to and instead of your function having the code have the code in a test.sqf, and [some params]execvm "test.sqf"; from within your function.... then when youve finished testing editing test.sqf remove the excmvm code from your function and copy in the contents of test.sqf. thats how i normally develop something like that. it allows you to set up your structure before hand

slender schooner
warm venture
#
if(!(_pdGate getVariable["locked", true]) || !(_pdGate getVariable["bis_disabled_Door_1", 1, true])) exitWith{hint localize "STR_House_Raid_DoorUnlocked";};
#

Any ideas why this wouldnt be working? linter isnt giving me any errors

#

no errors

grim coyote
#
(_pdGate getVariable["bis_disabled_Door_1", 1]) != 1```
warm venture
#

oh you can do != in sqf?

#
if(_pdGate getVariable["locked", true] != true && _pdGate getVariable["bis_disabled_Door_1", true] != 1) exitWith{hint localize "STR_House_Raid_DoorUnlocked";};
``` there
tough abyss
#

anyone know a simple delete script? cuz i sure as hell dont

warm venture
#

delete script?

tough abyss
#

just for something to be removed

warm venture
tough abyss
#

worked like a charm, thanks

grim coyote
#

@warm venture

if(!(_pdGate getVariable["locked",true]) || _pdGate getVariable["bis_disabled_Door_1", 1] != 1) exitWith{hint localize "STR_House_Raid_DoorUnlocked";};```
#
_pdGate getVariable "bis_disabled_Door_1"``` returns 1 or 0
warm venture
#

yeah

grim coyote
#

and there is no need to check for BOOL != true

warm venture
#

well, if its not locked then I dont want them to be able to interact with it

#

dont need people lockpicking already open doors

digital hollow
#

Why not? realism

exotic flax
#

Nothing that a 40mm can't open 🤣

slender schooner
#

are you sure about that

exotic flax
#

With enough 40mm everything will open, at some point in time

slender schooner
#

hmmmmmmmmmmmmmm

#

maybe

exotic flax
#

Especially doors of houses and police departmenta 😉

robust hollow
#

@warm venture

oh you can do != in sqf?
== and != dont take bool. you can compare bools with isEqualTo but it is completely pointless (in any language really) because checking if a bool var is true/false is the same as just returning the bool var. only time comparing two bools is justifiable is if they are both bool vars that need to be the same or opposite value.

warm venture
#

I got it working

#

theres gotta be a better way than copy pasting the same code over and over right??

#

could pass variables into a function but

spare mauve
#

How can I have a vehicle have the effect of being blown up with fire and all that, but not cause damage to anything around it?

warm venture
#
if(position player distance _pdGate <= 5 || position player distance _pdHolding1 <= 5 || position player distance _pdHolding2 <=5 || position player distance _backPDGate <= 5) exitWith {
``` cause I gotta do checks for all of these, get the closest one, then run code on that specific object
robust hollow
#

dont need to use position there

#

player distance _x is fine

slender schooner
#

i finally did it, a function that gets variable values from player 2 and gives them back to player 1
https://prnt.sc/t2cjeo

#

thanks guys for the awesome help

robust hollow
#

most optimized another way would be

([_pdGate,_pdHolding1,_pdHolding2,_backPDGate] findIf {player distance _x <= 5}) > -1
#

is a little less repetition

exotic flax
#

@spare mauve In 3den and Zeus there are several modules available to render smoke and fire effects which can be placed near a vehicle.
It's also possible to script that with the particle functions (don't know them out of my head, but the wiki has a lot of info about that)

warm venture
#

So how would I take the closest one out of the list and assign it to a variable?

#

so I could just replace that with ```sqf
if(([_pdGate,_pdHolding1,_pdHolding2,_backPDGate] findIf {player distance _x <= 5}) > -1) exitWith {

robust hollow
#

yea

#

for selecting the closest object something like this would probably work.

private _objects = [_pdGate,_pdHolding1,_pdHolding2,_backPDGate] apply {[player distance _x,_x]};
_objects sort true;
private _object = _objects#0#1;

though I imagine there is a better way

warm venture
#

What does the #0#1 mean

robust hollow
#

if you only want to select from objects within 5 meters

private _objects = [_pdGate,_pdHolding1,_pdHolding2,_backPDGate] select {player distance _x <= 5} apply {[player distance _x,_x]};
_objects sort true;
private _object = _objects param [0,[0,objNull]] # 1;
#

in this case # is shorthand for array select index

warm venture
#

im modifying a life script for bolt cutters, so if they're within distance of one of these gates, I want it to run this section of code, but if they arent I want it to run the normal code for houses

#

if that makes sense

robust hollow
#

mmhm. if you use that second one the if condition could simply be if (!isNull _object) exitWith {.

warm venture
#
private _gates = [_pdGate,_pdHolding1,_pdHolding2,_backPDGate] select {player distance _x <= 5} apply {[player distance _x,_x]};
_gates sort true;

_bank = missionNamespace getVariable "offices";

private _gate = _gates param[0,[0,objNull]] # 1;

if(player distance _gate <= 5) exitWith {
#

something like that

robust hollow
#

well yes, but no

#

you dont need to check the distance in the if statement because it is already checked when creating the _gates array

warm venture
#

sort the objects by distance, if they are within 5m of the cloest object, run the code on that object?

robust hollow
#

[_pdGate,_pdHolding1,_pdHolding2,_backPDGate] select {player distance _x <= 5}
returns an array of objects within 5 meters from the array of objects provided

exotic flax
#

I know that ACE bolt cutters work by having the action tied to all fence/gate objects (through configs), and only shows when someone with a boltcutter is close to them

robust hollow
#

you could remove select {player distance _x <= 5} and keep the distance check in the if statement if you like. might be faster

warm venture
#
private _gates = [_pdGate,_pdHolding1,_pdHolding2,_backPDGate] apply {[player distance _x,_x]};
_gates sort true;

private _gate = _gates param[0,[0,objNull]] # 1;

if(!objNull _gate && player distance _gate <= 5) exitWith {
#

then could run a switch on the _gate and if its 1, run some code, another run other..

robust hollow
#

(!isNull _gate && {player distance _gate <= 5})

warm venture
#

wouldnt (!(isNull _gate) && (player distance _gate <= 5)) also work

robust hollow
#

{} is for lazy eval though

#

so it wont check the second condition unless the first is true

warm venture
#

is isNull and isNil the same?

robust hollow
#

no

#

null things are still things. nil things are nothing

warm venture
#

weird..

#

different from what im used to.

#
if(!isNull _gate && {player distance _gate <= 5}) exitWith {
  if(!(_gate getVariable["locked", true]) && (_gate getVariable["bis_disabled_Door_1", true]) isEqualTo 0) exitWith{hint localize "STR_House_Raid_DoorUnlocked";};
#

Then I could just use _gate cause it gets the closest of all them

robust hollow
#

yes

warm venture
#

so if I wanted to check if _gate was _pdGate , I could just do isEqualTo?

robust hollow
#

yes

warm venture
#

sick

#

lets try this

#
18:38:24 Error in expression <= _gates param[0,[0,objNull]] # 1;

if(!isNull _gate && {player distance _gate <>
18:38:24   Error position: <isNull _gate && {player distance _gate <>
18:38:24   Error isnull: Type Array, expected Object,Group,Script,Config entry,Display (dialog),Control,Network Object,Task,Location
18:38:24 File core\items\fn_boltcutter.sqf [life_fnc_boltcutter]..., line 83
18:38:26 Unknown attribute style
18:38:27 Error in expression <= _gates param[0,[0,objNull]] # 1;
robust hollow
#

probably needed to be in (). you can just switch it back to _gates#0#1 because you removed the select from the _gates definition

warm venture
#

back to private _gate = _gates#0#1;

robust hollow
#

yes

warm venture
#

alright lets try this..

ebon citrus
#

Hold on, what is # a shorthand for?

#

Select?

queen cargo
#

Yes

#

And not a shorthand

#

But rather the same with different precedence

unique sundial
#
private _object = _objects param [0,[0,objNull]] # 1;

what exactly # selects here @robust hollow ?

robust hollow
#

i was intending for it to select from the result of _objects param [0,[0,objNull]] but i guess it selected from [0,[0,objNull]]

unique sundial
#

but result is an object

robust hollow
#

_objects param [0,[0,objNull]] would have returned an array like [0,objNull] but with proper results.

unique sundial
#

oh I see

#

select would work here

robust hollow
#

yea, i didnt think about the order of precedence.

unique sundial
#

or another param

#

param [0, [0, objNull]] param [1, objNull, [objNull]]

robust hollow
#

it was guaranteed to have two elements in the returned array so a second param wasnt really necessary. the person it was for settled on a slightly different method in the end so only # was needed 👌

slender schooner
#

is there a way to dissallow ai to engage you after a certain distance?

#

like, i want a carrier to only engage you when you are at 800m distance to it

#

and stop when you are outside of that radius

slender schooner
#

okay, i found a way that works halfways

#

by executing setViewDistance 300 on the server, i allow the missile turrets to only engage me on 300 meters

#

BUUUUT

#

the minigun turrets dont give a flip about that

winter rose
#

forgetTarget maaaybe?

slender schooner
#

i mean, i m fine with the rockets staying locked on you even if you leave the 300 meter radius

#

but i dont want the turrets to be able to see me further than 300 meters

#

so they dont start shooting me at a 5km distance

crude needle
#

@slender schooner Could use a repeatable trigger with enableAI and disableAI in the activation and deactivation fields respectively; "WEAPONAIM" works on the turrets. You'd need to disable the "WEAPONAIM" initially on the turret still (e.g. this disableAI "WEAPONAIM" inside its init field).

On Activation:
myTurret enableAI "WEAPONAIM";
On Deactivation
myTurret disableAI "WEAPONAIM";

https://community.bistudio.com/wiki/disableAI
https://community.bistudio.com/wiki/enableAI

slender schooner
#

i see, that sounds like a reasonable way of doing it

warm venture
#
15:59:28 Error in expression <& (_pdGate getVariable["locked", true]) && (_pdGate getVariable["bis_disabled_Do>
15:59:28   Error position: <&& (_pdGate getVariable["bis_disabled_Do>
15:59:28   Error &&: Type Number, expected Bool,code
15:59:28 File core\items\fn_boltcutter.sqf [life_fnc_boltcutter]..., line 85
#
  if(!(_gate isEqualTo _pdGate) && (_pdGate getVariable["locked", true]) && (_pdGate getVariable["bis_disabled_Door_1", true])) exitWith{hint format [localize "STR_ISTR_PD_Exploit"]};
  if(west countSide playableUnits < (LIFE_SETTINGS(getNumber,"minimum_cops_pd"))) exitWith{hint format [localize "STR_Civ_NotEnoughCops",(LIFE_SETTINGS(getNumber,"minimum_cops"))]};
  if(!(_gate getVariable["locked", true]) && (_gate getVariable["bis_disabled_Door_1", true]) isEqualTo 0) exitWith{hint localize "STR_House_Raid_DoorUnlocked";};
#

see anything wrong there?

still forum
#

Well

Error &&: Type Number, expected Bool,code

#

you are giving a number to &&

warm venture
#

I saw that part but i dont see where its at

#

(_gate getVariable["bis_disabled_Door_1", true]) isEqualTo 0) that should give a 0 or 1 if its locked or not

winter rose
#

Error position: <&& (_pdGate getVariable["bis_disabled_Do

#

also you have one round bracket too much, no?

#
isEqualTo 0)```
warm venture
#

i dont think so

#

if(!(_gate getVariable["locked", true]) && (_gate getVariable["bis_disabled_Door_1", true]) isEqualTo 0) exitWith{hint localize "STR_House_Raid_DoorUnlocked";};

#

thats the whole line

still forum
#

&& maybe has higher priority than isEqualTo

winter rose
#

^

still forum
#

why use a bool as default value, when you expect that variable to be a number notlikemeow

winter rose
#

^ 😄

warm venture
#

isnt that how that variable works

winter rose
#

default value should be the same type as the expected variable, don't you think?
also, indentation

warm venture
#

_building setVariable [format ["bis_disabled_door_%1", _door], 0, true]; thats what im using everywhere else

#

so instead of isEqualTo

#

just ==?

still forum
#

NO

#

(_gate getVariable["bis_disabled_Door_1", true]) isEqualTo 0
->
((_gate getVariable["bis_disabled_Door_1", 1]) isEqualTo 0)

winter rose
#
if (_gate != _pdGate && _pdGate getVariable["locked", true] && (_pdGate getVariable ["bis_disabled_Door_1", 0] == 0)) exitWith
{
    hint format [localize "STR_ISTR_PD_Exploit"];
};

if (west countSide playableUnits < (LIFE_SETTINGS(getNumber, "minimum_cops_pd"))) exitWith
{
    hint format [localize "STR_Civ_NotEnoughCops", LIFE_SETTINGS(getNumber,"minimum_cops")];
};

if (!(_gate getVariable["locked", true]) && (_gate getVariable ["BIS_disabled_Door_1", 0] == 0)) exitWith
{
    hint localize "STR_House_Raid_DoorUnlocked";
};
still forum
#

bis_disabled_Door_1 is a number

#

so no mr lou that no work

winter rose
#

shhh I missed one

warm venture
#

so disabled_door can either be 1/2 or true/false then

#

cause I have it working as true/false in other places

#

but since it was set to true on that door and i was checking if it was 1

winter rose
#

it should be only one type

warm venture
#

it wasnt working

winter rose
#

anyway, you have your error! 🥳

warm venture
#

this is so confusing

#

all the scripts im running have _building setVariable [format ["bis_disabled_Door_%1",_door],0,true]; //Unlock the door. everywhere so whats the right way??

#

at least thats what I found on the forums

winter rose
#

get the variable (without default variable), get the value type,???, profit

warm venture
#

so the default would be true/false

#

oh

#

"anything"

exotic tinsel
#

is there a way to fix it when a player is stuck making injured sounds even after being healed? I can not find anything useful doing a google search.

#

I have an action on the player called "Stuck" it fixes alot of things like missing uniform, stuck in animation, and about 12 other things. I would really like to add a fix to this Feature for the injured sound bug.

exotic flax
#

@exotic tinsel do you have any mods or scripts which modify/handle injuries/healing?

pale moth
#

Hello, is it possible to have accurate player damage?
I tried player setDamage 0.30;
but I it gives me 67HP instead of 70hp

exotic flax
#

setDamage will simply add damage to an unit, where as damage will return the current damage.
And Arma doesn't have a "Health Points" system, so I guess that's something modded/scripted

pale moth
#

Yeah life system

#

im checking player damage, and if its above 65 it will not heal

#

If its under 65 it will heal to 65

exotic flax
#

well, in vanilla this should give the correct values:

systemChat format ["Health: %1%2", (1 - damage player) * 100, "%"];  // should give 'Health: 100%'
player setDamage 0.3;
systemChat format ["Health: %1%2", (1 - damage player) * 100, "%"];  // should give 'Health: 70%'
pale moth
#

thanks

#

just the problem i have is that 0.3 is 67hp not 70, I think i figured it out not sure

exotic flax
#

perhaps you'll need ceil around the calculation to get a more stable number (instead of 79.99999999996%)

pale moth
#

So I have

#

if (damage player <= 0.32) exitWith hint "You can't apply a bandage";

#

and then when the player apply a bandage
player setDamage 0.32;

#

but then the player can still apply a bandage with 0.32 as damage

#

which the if (damage player <= 0.32) should stop the player to right

exotic flax
#

but... if you do player setDamage 0.32; you'll add more damage to the player 🤔

#

ah wait.. set, not add

#

although if player setDamage 0.32 than damage player <= 0.32 always returns true

pale moth
#

No because the player have to be under 0.32 dmg to use the item

#

What I want is that the player have to be under 0.32 dmg to be able to use the item which will do player setdamage 0.32 and then the player will not be able to use the item because he will have 0.32 dmg

exotic flax
#

so use if (damage player < 0.32)

#

< smaller than, <= smaller or equal to

pale moth
#

ill try that thanks

#

but technically

#

if the player damage is equal to 0.32 he should get the hint saying he can't

#

I just set my damage to 0.32;

#

and the if (damage player < 0.32) with the exit doesnt work

exotic flax
#

You most like want something like this:

// don't apply bandage when health is above 68%
if (damage player < 0.32) exitWith hint "You can't apply a bandage";
// apply bandage, add 10% health
player setDamage (damage player - 0.1);
#

meaning; if you would use player setDamage 0.32 you can't apply the bandage

#

everything higher and you can (till it's over 68% again)

pale moth
#

does player setDamage (damage player - 0.1);
heal the player to like 68 hp if he have 67?

exotic flax
#

it takes the current damage and removes 0.1 (which equals 10%)

#

btw... you might need to use if ((damage player) < 0.32) exitWith hint "You can't apply a bandage"; so it runs in the proper order

pale moth
#

changed it thanks, i'll try everything you sent me thank you 🙂

gloomy aspen
#

Can anybody point me to a good tutorial on how to create a function mod? I.e. adding a button through the CBA framework to introduce a button that performs an action

plucky wave
#

Do forEach loops inherit variables from control structures above it?

warm hedge
#

If you want, you can Sorry I think misread your post

#

That's a no by default, if I read your post correctly

plucky wave
#

To clear up any confusion.. e.g:

_myArray = ["xxdad", "345fdds", "dddnj3"];
_operation = "test";

switch (_operation) do {
  case "test": {
    _myVar = "hello!";
  };
};

{
 diag_log _x;
 hint _myVar;
} forEach myArray;
#

_myVar would never make it into the loop, correct?

warm hedge
#

The forEach, no, and you're correct

plucky wave
#

Ta.. next question, anyway to be able to pass _myVar to that forEach loop?

warm hedge
#

Use private

plucky wave
#

🤦🏽‍♂️ yeah.. you're right..

ornate prairie
#

{[_x, true] remoteExec ["hideObjectGlobal", 0]} forEach thisList;

Im trying to hide a lot of objects within a trigger zone, but this has no effect. any ideas?

jagged halo
#

I'm trying to test a customized ACEx fortify build list but in order to activate it i need to issue the #ace-fortify blufor myMissionObjects command in chat but i cant get it to work

robust hollow
#

@ornate prairie you dont need to remoteexec hideObjectGlobal to everyone. it has a global effect on its own, hence hideObjectGlobal. The only reason you would remoteexec it is if you were using target 2 to send the command to the server. if it is a client script that all clients run, you can just use hideObject.

ornate prairie
#

i understand that its redundant, that was just a result of plugging most commands into remote exec to make sure everything worked in multiplayer
regardless, i still need to know if its possible to hide all objects within a trigger area

robust hollow
#

yes it is

cobalt idol
#

Hi guys, is there a way i can effect the ability of a C-130 to stay airborne, like decreasing the lift it has? I have tryed the setmass command but it seems to have no effect...

robust hollow
#

@ornate prairie this is a modified version of what the hideterrainobjects module does. i havent tested but something like this is what you'd be after:

#define MAP_TYPES_BUILDING            ["BUILDING","HOUSE","CHURCH","CHAPEL","FUELSTATION","HOSPITAL","RUIN","BUNKER"]
#define MAP_TYPES_VEGETATION        ["TREE","SMALL TREE","BUSH"]
#define MAP_TYPES_WALL                ["WALL","FENCE"]
#define MAP_TYPES_MISC                ["ROCK","ROCKS","FOREST BORDER","FOREST TRIANGLE","FOREST SQUARE","CROSS","FORTRESS","FOUNTAIN","VIEW-TOWER","LIGHTHOUSE","QUAY","HIDE","BUSSTOP","ROAD","FOREST","TRANSMITTER","STACK","TOURISM","WATERTOWER","TRACK","MAIN ROAD","POWER LINES","RAILWAY","POWERSOLAR","POWERWAVE","POWERWIND","SHIPWRECK","TRAIL"]

#define CATEGORY_COMP                MAP_TYPES_BUILDING + MAP_TYPES_WALL + MAP_TYPES_VEGETATION + MAP_TYPES_MISC

params ["_trigger"];
triggerArea _trigger params ["_a","_b"];
private _radius = (_a max _b) * 1.42;

private _found = nearestTerrainObjects [_trigger,CATEGORY_COMP,_radius,false,true];
{_x hideObject true;} forEach (_found inAreaArray _trigger);
#

unless there is already a function for it, im not sure if there is.

topaz fiber
#

Hey guys. Is it possible to make an AI not an AI. I just kinda want him to be an object I can use to call Arsenal from

#

It might be worth pointing out I did ‘this disableAI move’

warm hedge
#

So, like “Mr. Arsenal” guy?

topaz fiber
#

Ha. Yeah

#

I feel like this must be a thing but my googlefu lets me down today

warm hedge
#

Depends what level you need. Easiest way is just sqf this disableAI "ALL"

topaz fiber
#

I thought that. Will try but I assume that will also disable ambient animation?

warm hedge
#

If you want animations, some kind of disabling is enough... one sec

#
{
    this disableAI _x
} forEach ["MOVE","TARGET","AUTOTARGET"];```Just an example
topaz fiber
#

Ok thanks. I think I will struggle to remove the ace interactions too. Maybe I’ll just stick to a whiteboard 🤣

warm hedge
#

I don't use and know about ACE things so ¯_(ツ)_/¯

topaz fiber
#

No problem. Thanks for your help as always. 👍

torpid quartz
#

Hey so I've got this empty truck, and I want a trigger to activate when it enters it regardless of who is driving it.
The truck has a variable name of OBJ1, what would i write in the condition of the trigger?

warm hedge
#

Fires when the truck enters to the trigger area?

#

Your sentence has a lot of its so hard to understand IMO

torpid quartz
#

yeah oops lol

#

was looking for this && OBJ1 in thisList all good just got it working. bit rusty atm

warm hedge
#

Why put this? sqf OBJ1 inArea thisTrigger This is the easiest way IMO

torpid quartz
#

that works for me haha, thanks.

exotic tinsel
#

is there a way to fix it when a player is stuck making injured sounds even after being healed? I can not find anything useful doing a google search.
I have an action on the player called "Stuck" it fixes alot of things like missing uniform, stuck in animation, and about 12 other things. I would really like to add a fix to this Feature for the injured sound bug.
Yes we have mods that effect damage and change revive.
please mention me if someone has a solution

exotic tinsel
#

ok. i said yes in the new post.

#

oooff sry

#

i see ur messages

exotic flax
#

In that case it's most likely a problem with those scripts, because I've never seen that issue in vanilla Arma

#

In ACE yes, although that was due to external scripts as well

exotic tinsel
#

yes its common. i wrote our scripts for damage so i can change them if you can point me in the direction of the potential cause.

exotic flax
#

most likely due to vanilla damage being bad while your script think the unit is healthy

exotic tinsel
#

ok... so anything i can do about that?

exotic flax
#

I don't know your scripts, so I can't judge that...

exotic tinsel
#

so, how about a way to fix it after it happens? not the scripts themselves.

exotic flax
#

that depends on how the scripts works...

exotic tinsel
#

do i need to remoteExec something on all players so the sounds stops? if so any ideas?

exotic flax
#

there is no magical fix to resolve all problems... especially when those problems are caused by unknown scripts

restive leaf
#

The correct answer is to fix the issue in whatever script causes that issue to happen which is impossible without knowing what the scripts do tbh

exotic tinsel
#

it doesn't happen all the time on our server, just every now and then. Further more, its common on many servers with custom handeldamage or revive. so having said that it feels like a propagation issue. similar to when your uniform disappears. I have a fix in the stuck action for the uniform disappear issue.
So i dont think the issue is with my script, ACE, Invade & Annex, and Life Servers. we are all doing it differently and the issue still remains. so.
Any ideas on how to come up with a bandaid fix like the uniform issues?

exotic flax
#

I also never have seen issues with uniforms (other than people not having the correct mods installed)...

#

and I always play with ACE, and have played a lot of I&A

exotic tinsel
#

ok well google it. its a thing. sometimes a player has no uniform on and its because arma didnt send it to all the clients.

exotic flax
#

again; the problem is in your scripts, and we can't help you without knowing what's in the scripts think_turtle

exotic tinsel
#

ok so when im playing with my milsim mates who are using ACE and i dont own the server, what could i do in the debug console to fix the problem?

#

on my client

exotic flax
#

eg. https://feedback.bistudio.com/T85234
All people complaining about uniforms here are using Life, Exile or other mods/scripts which affect the uniforms... And no one is able to reproduce the problem in vanilla Arma since the issue doesn't exist there.

#

and I don't know what to type in the console, because I don't know what is happening beforehand

exotic tinsel
#

ok mate.

exotic flax
#

if you have a problem with a script (which this channel is for), than post your script so we take a look at it.

#

we're not wizards who know exactly what you're doing and have a solution for all problems

exotic tinsel
#

ok the channel as is for scripting help in general. Not debugging exclusively.
Furthermore common sense is if you CAN help with something then say something, if you cant then dont.
This may be my fault, i should reframe the request for help.
I have a script called Stuck that is a client side addon for people to fix common issues across alot of other frameworks.
I would like to include in this addon the ability to fix it when a player near you is making the injured sounds even though they have full health. Do you have any ideas on how to do that?

exotic flax
#

Furthermore common sense is if you CAN help with something then say something, if you cant then dont.
I want to help you, but without any information there's nothing I (or anyone else) can do...
That's why I ask for the exact conditions (and therefor scripts, since we're in #arma3_scripting) so we CAN help you with your problem.

exotic tinsel
#

ok mate.

#

thx

still forum
#

I can help.
Not possible.
End.

#

if it is as you describe that is. aka it being caused by vanilla

tame lion
#

So I'm trying to make a simple event handler which allows a helicopter to still receive damage w/o it ever "Blowing up". Basically, I'm trying to make a survivable crash landing script. I've tried using the "HandleDamage" EH however, it still seems to allow damage to occur to destroy the helicopter even though I have it setup as follows:

_helo addEventHandler ["HandleDamage", {
params ["_unit", "_selection", "_damage", "_source", "_projectile", "_hitIndex", "_instigator", "_hitPoint"];
if (toLower _hitPoint == "hull") exitWith {0.9 min _damage};
_damage
}];```
astral dawn
#

_damage is the given amount of damage as I recall, not current amount of damage. Or maybe not? Not sure any more.

exotic flax
#

And _damage is the amount of damage given to _unit, and the return value is the modified value used by following EH's.
Besides that; _selection returns the part which for hit (for part specific damage), or is an empty string meaning overall damage. If either one is 1.0 (depending on object and part) it will be destroyed.
So you really need to handle a lot of different cases inside that EH.

light badge
#

Hi all,is there any way to place an item weapon with attachments in it?!

exotic flax
#

afaik not with scripts

#

you should be able to make a config with the weapon including attachments, and then spawn that in-game

cunning crown
#

Maybe with addWeaponWithAttachmentsCargoGlobal?

exotic flax
#

that will just put it in a container (like box or vehicle)

still forum
#

🤔

exotic flax
#

although might work with a weapon placeholder 🤔 but I have no idea how that would work

still forum
#

thats what he wants I think

cunning crown
#

Yeah, that's what I also thought

exotic flax
#

but that doesn't work with props, if that's what he wants (because I can't tell by the question)

cunning crown
#

But props are weaponHolders iirc (weapons ones atleast)

light badge
#

I used the addweaponwithattachmentscargoglobal and ias @exotic flax says, it works as a container, not visual

still forum
#

can you explain what you want to do

light badge
#

I just want to place a weapon with visible tactical attachments (sight, silencer, flashlight) for the player to pick it up.

still forum
#

well then. yes

#

weapon holder + AWWACG

exotic flax
#

so something like this should do the trick:

_weapon = createVehicle ["groundWeaponHolder", [0,0,0]]; // [0,0,0] is position
_weapon addWeaponWithAttachmentsCargoGlobal [["arifle_MX_GL_F", "muzzle_snds_H", "", "optic_aco", ["30Rnd_65x39_caseless_mag", 15], ["3Rnd_HE_Grenade_shell", 2], ""], 1];

edit: fixed 😉

still forum
#

just with AWWACG

#

and not adding stuff seperately

tough abyss
#

i need help, ive followed the TedHo instructions but i can't seen to get the capture going.

light badge
#

so something like this should do the trick:

_weapon = createVehicle ["groundWeaponHolder", [0,0,0]]; // [0,0,0] is position
_weapon addWeaponWithAttachmentsCargoGlobal [["arifle_MX_GL_F", "muzzle_snds_H", "", "optic_aco", ["30Rnd_65x39_caseless_mag", 15], ["3Rnd_HE_Grenade_shell", 2], ""], 1];

edit: fixed 😉
@exotic flax

Great, I'try it later.
Thank u so much!

digital hollow
#

The Assault Boat seems to have an animation vehicletransported_engine which lifts the outboard motor when it's a ViV cargo. I can't seem to control that animation via _target animate ["vehicletransported_engine", 1]. Anyone have success with this?

fair drum
#

how do I get these waypoints as an array rather than a string. breakpoint is at "_x setWaypoint..." saying its finding a string when it wants an array. still working on trying to become more efficient at the scripting so I don't have to apply it to every single little thing. this is what I have so far

[] spawn {

    sleep 1;

    baseGroup1 addWaypoint [[18037.8,8932.67,0],0,1,"baseGroup1_waypoint1"];
    baseGroup2 addWaypoint [[18037.8,8932.67,0],0,1,"baseGroup2_waypoint1"];

    _baseWaypoints = ["baseGroup1_waypoint1", "baseGroup2_waypoint1"];

    {
    _x setWaypointSpeed "FULL";
    _x setWaypointType "SAD";
    _x setWaypointBehaviour "AWARE";
    _x setWaypointFormation "WEDGE";
    } forEach _baseWaypoints
}
still forum
fair drum
#

so... this:

[] spawn {

    sleep 1;

    baseGroup1 addWaypoint [[18037.8,8932.67,0],0,1];
    baseGroup2 addWaypoint [[18037.8,8932.67,0],0,1];

    private _baseWaypoints = [[baseGroup1, 1], [baseGroup2, 1]];

    {
    _x setWaypointSpeed "FULL";
    _x setWaypointType "SAD";
    _x setWaypointBehaviour "AWARE";
    _x setWaypointFormation "WEDGE";
    } forEach _baseWaypoints
}
still forum
#

no

#

that will only work if the groups have no waypoints before you added yours

#

build an array, put the return value of addWaypoint into there

fair drum
#

well I'm going to be use Lambs Reset to get them out of a previous garrison so there will be no waypoints when I create them so in total, it will look like this.

[] spawn {

    //Local Variables
    private _leaderg1 = leader baseGroup1;
    private _leaderg2 = leader baseGroup2;
    private _groups = [baseGroup1, baseGroup2];

    //Reset all waypoints and creates new group to disable Lambs
    {
        _x call lambs_wp_fnc_taskReset;
    } forEach _groups;

    //Delay so Lambs Task Reset can run
    sleep 1;

    //Create Waypoints
    (group _leaderg1) addWaypoint [[18037.8,8932.67,0],0,1];
    (group _leaderg2) addWaypoint [[18037.8,8932.67,0],0,1];

    private _baseWaypoints = [[baseGroup1, 1], [baseGroup2, 1]];

    //Modify Waypoints
    {
    _x setWaypointSpeed "FULL";
    _x setWaypointType "SAD";
    _x setWaypointBehaviour "AWARE";
    _x setWaypointFormation "WEDGE";
    } forEach _baseWaypoints;
};
still forum
#

build an array, put the return value of addWaypoint into there

fair drum
#

something tells me I'm going in the wrong direction... I'm not too amazing at scripting lol

[] spawn {

    //Local Variables
    private _leaderg1 = leader baseGroup1;
    private _leaderg2 = leader baseGroup2;
    private _groups = [baseGroup1, baseGroup2];

    //Reset all waypoints and creates new group to disable Lambs
    {
        _x call lambs_wp_fnc_taskReset;
    } forEach _groups;

    //Delay so Lambs Task Reset can run
    sleep 1;

    //Get Previous Waypoints into Array 
    private _wpArray1 = waypoints (group _leaderg1);
    private _wpArray2 = waypoints (group _leaderg2);

    //Create Waypoints
    private _sdWaypoint1 = (group _leaderg1) addWaypoint [[18037.8,8932.67,0],0];
    private _sdWaypoint2 = (group _leaderg2) addWaypoint [[18037.8,8932.67,0],0];
    private _sdWaypoints = [_sdWaypoint1, _sdWaypoint2];

    //Add waypoints to Array 
    _wpArray1 pushback _sdWaypoint1;
    _wpArray2 pushback _sdWaypoint2;

    //Modify Waypoints
    {
    _x setWaypointSpeed "FULL";
    _x setWaypointType "SAD";
    _x setWaypointBehaviour "AWARE";
    _x setWaypointFormation "WEDGE";
    } forEach _sdWaypoints;
};
winter rose
#

not bad, just

private _wpArray1 = waypoints (group leaderg1);```why use `group leaderg1` (btw, missing underscore here) and not baseGroup1/baseGroup2 directly?
fair drum
#

the lambs reset causes the group to be recreated in order to disable its previous orders. So I have to grab the leader because the group variable gets deleted when the lambs reset is run

winter rose
#

OK then - you're good to go sir 👮

fair drum
#

ye heh heh heh essss. it works. finally. And yeah it first threw an error saying that _wpArray1 wasn't defined when I swore it was. Came down to that missing underscore.

still forum
#

that way your pushBacks are useless

#

you never use _wpArray

fair drum
#

so would you do a

group _leaderg1 setCurrentWaypoint _wpArray1 select ((count _wpArray1) - 1)

?

warm venture
#

How would you get a specific marker by name? missionNamespace getVariable..?

robust hollow
#

markers are referred to as their name stringed. eg "marker_0".

warm venture
#

yeah so if I wanted to get a marker from the map...

#

getVariable "marker_1"?

robust hollow
#

no

#

its not a variable

#

what are you trying to do with it?

warm venture
#

Trying to get a marker from the map and change its text.

robust hollow
#

does the script already have the marker name or does it need to find the closest marker or something?

exotic flax
gloomy aspen
#

Hey guys, can I use Say3D to make a loudspeaker play a sound when a pop-up target is hit, this would need to work on a dedicated server

Thought about using advice I had from @ebon citrus a week or so ago for 'HandleDamage' but I wouldnt have thought handledamage would work on a popup?

Searched the BIKI, no such luck 😦

warm venture
#

@robust hollow No. The script is completely independent.. I need to get the marker from the map and change the name of it with a function

#

so cops can open/close areas.

robust hollow
#

you're probably best to either use the specific marker name as a function argument for each zone, or write the names of all markers that could be modified by this function into it and select the closest (if thats how it works).

ebon citrus
#

@gloomy aspen you can

warm venture
#

the markers have variables set already

#

the markers text will sometimes be North Checkpoint - OPEN and sometimes be North Checkpoint - CLOSED

#

gotta change the color too.

ebon citrus
#

I am currently not home, but i have the exact script youre thinking of

robust hollow
#

ok... so you just use the marker name with setMarkerText and setMarkerColor

ebon citrus
#

I think i used "Hit" EH

warm venture
#

but how does it know the name of the marker to set

exotic flax
#

@gloomy aspen use

_target addEventHandler [
   "HitPart",
   {
      (_this select 0) params ["_target", "_shooter", "_projectile", "_position", "_velocity", "_selection", "_ammo", "_vector", "_radius", "_surfaceType", "_isDirect"];
      // your code
   }
];
robust hollow
#

its the name you gave it when creating the marker

warm venture
#

right but

#

the name changes

exotic flax
#

eg. I use the following script to add "red pencils" at the location where someone hitted the target:

_target addEventHandler [
    "HitPart",
    {
        _marker = createVehicle ["Land_PencilRed_F", [0,0,0], [], 0, "CAN_COLLIDE"];
        _marker setDir 180;
        _marker enableSimulation false;
        _marker setPosASL (_this select 0 select 3);
    }
];
warm venture
#

so if you try to find one and its named different.. then it will return null

gloomy aspen
#

Awesome @exotic flax thank you!

robust hollow
#

marker names dont change for as long as they exist. do you delete and create new markers for this?

ebon citrus
#

@exotic flax hitpart isnt necessary

#

For just say3d, "hit" should be enough

warm venture
#

and it goes by variable name?

exotic flax
#

true, although I foresee that it will be the next question on how to see where someone hitted the target 🤣

robust hollow
#

i have no idea what you're on about. paste ur code so i can see what you're doing.

ebon citrus
#

True

warm venture
#

I need to change the text and color of that marker

#

during the game

ebon citrus
#

The name is the variable name

robust hollow
#

"north_checkpoint" is the marker name

warm venture
#

thanks

#

thats what i was asking

ebon citrus
#

Text is just the text the control displays

gloomy aspen
#

@ebon citrus wouldnt I have issue making "Hit" work globally though? Is "HitPart" local too?

ebon citrus
#

Both are, yes

#

But on the server

#

Since the pop-target is local on the server

#

It cannot be playable by a client

#

So then just remoteExec on all clients

exotic flax
#

Hit is local, HitPart is global (arguments are, not effects)

gloomy aspen
#

Ahh, I still need to read up on locality, forgive me! Thanks guys 🙂

ebon citrus
#

Yeah, effects are local

#

But the pop-target is local on the server

#

Hitpart generates extra traffic to clients

#

So Hit is better if you dont need parts

#

Very minimal traffic, though

#

Well, depending on the code

exotic flax
#

only the event goes over network, not the code itself (that is always executed locally)

ebon citrus
#

The arguments?

#

They get sent over network, right?

#

And so does rhe code

#

Yeah idk

#

I'd say stick to Hit

exotic flax
#

While you can add "HitPart" handler to a remote unit, the respective addEventHandler command must be executed on the shooter's PC and will only fire on shooter's PC as well. The event will not fire if the shooter is not local, even if the target itself is local. Additionally, if the unit gets damaged by any means other than ammunition or explosions, such as fall damage and burning, "HitPart" will not fire. Because of this, this event handler is most suitable for when the shooter needs feedback on his shooting, such as target practicing or hitmarker creation.

ebon citrus
#

Hit can be added on server side

#

Because the target is serverside

#

hitPart is not good for this purpose

#

As it fires locally where the shooter is local

#

I dont know what the global arguments in this case mean

#

As it seems to have no effect

#

But, again. Use "Hit"

exotic flax
#

LOCAL are not broadcasted over the network and remain local to the client the command is executed on.
a local effect means that the effect will only happen on the machine where the command is executed

GLOBAL: are broadcasted over the network and happen on every computer in the network
a global effect means that all the computers will receive it

ebon citrus
#

But it onviously doesnt in this case

exotic flax
#

in short, it doesn't really matter and depends on the usecase

ebon citrus
#

You still need to add the eventhandler locally

#

Yeah

gloomy aspen
#

Hmm .. sorry guys this doesnt seem to be working, undoubetly my own error somewhere

   "HitPart",
   {
      (_this select 0) params ["_target", "_shooter", "_projectile", "_position", "_velocity", "_selection", "_ammo", "_vector", "_radius", "_surfaceType", "_isDirect"];
t1 say3D ["hostagehit", 1000, 1, false];   
   }
];```
ebon citrus
#

Some evenhandlers can be added remotely

gloomy aspen
#

ah might be that i didnt change ' _target'

ebon citrus
#

What do you mean "doesnt work"

#

Yeah, t1 to _target

warm venture
#
    {
        _x animate ["Door_1_rot", 1];
    } forEach _gates;
#

This should work right?

ebon citrus
#

Also, this audio will only play where the "_shooter" is local @gloomy aspen

#

Please, use "Hit" @gloomy aspen

#

Far less headache

warm venture
#

imma take that as a yes

ebon citrus
#

If yoy intend to use this in MP

warm venture
#

cause if it was wrong yall would be all over me like white on rice

ebon citrus
#

"Work"?

#

What is your goal?

warm venture
#

to open all gates in my array of gates

#

_gates = ["nc_out_1", "nc_out_2", "nc_out_3", "nc_out_4"];

ebon citrus
#

Maybe

#

I dont think the gates have Door_1_rot

warm venture
#

they're bar gates

ebon citrus
#

You need the specific animation name for the gates

exotic flax
#

animate expects an Object, not a string

ebon citrus
#

That aswell

warm venture
#

it should get each of those gates by their namespace variable

#

then do that action

ebon citrus
#

No quotes

warm venture
#

1s

ebon citrus
#

Remove the quotes from the array

#

"String"
Object

#

No quotes for objects unless specificly requested

warm venture
#

dont I have to do

#

missionNamespace getVariable["gate1"];

ebon citrus
#

What is yoyr goal?

#

getVariable takes a string, yes

warm venture
#
    {
        _x = missionNamespace getVariable[_x];
        _x animate ["Door_1_rot", 1];
    } forEach _gates;
#

eh..?

ebon citrus
#

Stop

warm venture
#

wot

#

pretty sure it would work

ebon citrus
#
{
        private _var = missionNamespace getVariable[_x];
        _var animate ["Door_1_rot", 1];
    } forEach _gates;```
warm venture
#

thats the same thing, just prettier lmao

exotic flax
#

it's NOT the same

ebon citrus
#

Also!

#

Why are you storing the gates in missionnamespace as variables?!

warm venture
#

uh

#

what else am i supposed to store them with?

#

chocolate bars?

ebon citrus
#

Array

exotic flax
ebon citrus
#

MyGates = [gate_1, gate_2, gate_3...]

warm venture
#

they are already existing objects in the mission

#

_gates = [nc_out_1, nc_out_2, nc_out_3, nc_out_4];

#

that

#

thats what im doing

ebon citrus
#

So now theyre NOT strings?

exotic flax
#

_gates = ["nc_out_1", "nc_out_2", "nc_out_3", "nc_out_4"];
@warm venture that is what you told us...

warm venture
#

yes

#

but I was told to change it.

#

so which one is it

ebon citrus
#
{
        _x animate ["Door_1_rot", 1];
    } forEach _gates;
#

This

#

No need to getVariable

#

Also, im still skeptical as to if "Door_1_rot" is applicable for bargates

warm venture
#

I use it on all bar gates

#

move is for side to side gates

#

rot is for swivel gates/bar gates

ebon citrus
#

Sure

#

Ok, it should work with this, then

warm venture
#

params[_openOrClose];

#

that should work for a true/false param right?

robust hollow
#

you sure you dont want params["_openOrClose"]; instead?

warm venture
#

I did have that

#

this addAction["<t color='#3FFF33'>Open North Checkpoint</t>",{remoteExec['[true] life_fnc_northCheckpoint', player]},"",0,false,false,"",'playerSide == west'];

#

And that to trigger my function.

robust hollow
#

thats not how you use remoteexec

#

[true] remoteExec ['life_fnc_northCheckpoint', player] is correct. also why are you remote executing to yourself?

warm venture
#

oof i copied it in there wrong.

#

and no idea.

#

cause I needed it somewhere else and copied it in here

#

what goes in place of player? nothing?

robust hollow
#

depends who are you wanting to remoteexec to

warm venture
#

doesnt need to be anyone specific

#

it doesnt hint/message or anything

robust hollow
#

does it need to remoteexec?

warm venture
#

Yes

robust hollow
#

to everyone?

warm venture
#

Yes

robust hollow
#

including the server?

warm venture
#

no

robust hollow
#

-2

warm venture
#

-2?

#

kewl

robust hollow
#

👌

warm venture
#

when would something need to do it on server

robust hollow
#

one example would be when executing a server only command

#

in the case of life servers you would remoteexec to the server for db queries

warm venture
#

ooh

#

you..you mean l*Fe

robust hollow
#

mmhm. i cant quite hate on it so much because its where i started 😛

warm venture
#

w0w i got help today and didnt even get told to off myself this time

#

so what do you play now

robust hollow
#

i dont play

warm venture
#

oof

#

so why hang around in here

robust hollow
#

i dev stuff

warm venture
#

for?

robust hollow
#

myself and others?

warm venture
#

oh

#

meant like

#

what modes?

robust hollow
#

oh, i have some small mods and game modes posted. dont want to advertise here, not in this channel anyway.

warm venture
#
params[_openOrClose];

_openText = "North Check>
 0:11:48   Error position: <_openOrClose];

_openText = "North Check>
 0:11:48   Error Undefined variable in expression: _openorclose
 0:11:48 File core\cop\fn_northCheckpoint.sqf [life_fnc_northCheckpoint]..., line 65
#

REEE

robust hollow
#

because its not in quotes

#

said this before

warm venture
#

i smell sarcasm

#

cause earlier you said I had to make it not in quotes

warm venture
#

yes thought that was making fun of me for doing it with "" earlier

robust hollow
#

nooo

warm venture
#

fml

#

do I need to do _openOrClose = this select 0?

robust hollow
#

just quote it and itl work

#

like how my message showed

warm venture
#

ty sir

#

just trying to figure out why running ["North Checkpoint","North Checkpoint is now open for pass-through!"] remoteExec ["UPM_fnc_showNotification", 2]; in infistar admin console as server works fine, but it doesnt do anything through the script

warm hedge
#

As long as we don't know what UPM_fnc_showNotification is, nothing we can do

warm venture
#

well was trying to figure out why it works fine running as server in game but doesnt work running as server in a script.

#

its the same thing

#

ill figure it out

warm hedge
#

why it works fine running as server in game but doesnt work running as server in a script.
I don't understand?

warm venture
#

if I run it ingame in the Admin Console (infistar) and execute it on "Server" it works. But if I remoteExec it to 2 (also server), it doesnt

warm hedge
#

2 means only in server

warm venture
#

so I need 0

warm hedge
#

Maybe -2. Don't know the function so IDK

warm venture
#

yeah tried -2 first, didnt work im gonna try 0

#

that did it

barren spire
#

Hi. Is there anything I can do about say/say2D/say3D breaking when .lip files are present or is this an engine bug? :)

warm hedge
#

Never heard of that... precisely? What's the situation?

barren spire
#

as soon as I add the .lip files the sound plays in like 1 second instead of the 20s it's supposed to.removing the .lip file makes the sound play, but then lips don't move

#

like it's super sped up

fair drum
#

does sqf work like python in that index -1 equals the last element in the array? or do I have to do

select ((count array) -1)
warm hedge
#

I don't think there's a way to do it unless you do like that. Or maybe

_array = [1,2,3,4,5];
reverse _array;
_array select 0;//5
reverse _array;```but you know, this is... pointless
fair drum
#

just have an array that I potentially have no idea how big it is or what the values are individually when working with waypoints and AI mods

#

and just want to select the last waypoint in an array of waypoint returns

warm hedge
#

Also DasCapschen, surely looks an engine-side issue/feature. Don't know say things have capable with .lip files so kinda ¯_(ツ)_/¯ for me

barren spire
#

hmm, alright. guess I'll have to upgrade to kbTell :p

warm hedge
#

Or BIS_fnc_kbTell? I'm really dumb at these commands so...

unique sundial
#

@fair drum yes, selecting count -1 is how you do it, don’t reverse array

real tartan
#

Is there a way to rotate texture? Maybe I need to post this issue in ace
https://www.youtube.com/watch?v=JxcWHGQa0RU

//initPlayerLocal.sqf
["ace_TAG_slovakia", "Slovakia", "ACE_SpraypaintBlack", ["\A3\UI_F\Data\Map\Markers\Flags\slovakia_ca.paa"], "\A3\UI_F\Data\Map\Markers\Flags\slovakia_ca.paa", [], "UserTexture1m_F"] call ace_tagging_fnc_addCustomTag;
player addBackpack "B_AssaultPack_blk";
player addItemToBackpack "ACE_SpraypaintBlack";
cosmic lichen
#

yes

#

good question

winter rose
#

@tough abyss the question should perhaps be "why would another client know about this information"?

#

set/getVariable could be faster, be sure to use the local EH then

#

What is the situation that needs this?

cosmic lichen
#

Oh, there was a script like this from bakerman I believe

#

but is that really time critical?

#

how far does the rocket move within 1 ms

winter rose
#

I suppose before the projectile hits 😄

cosmic lichen
#

good old days when I expected tanks dlcs to add active cm 😄

#

ic

winter rose
#

oh - you can get the "parent" from the projectile
you can then remoteExec?

#

(or maybe directly remoteExec from the projectile, too)

cosmic lichen
#

yes

#

object as target for remoteExec

winter rose
#

\o/
and you cannot setVariable on an ammunition (stated on its wiki page)

torpid quartz
#

Hey is there anyway to have objects move via script?
So like i could keep the players stuck in within an area until something is triggered via prop blocking or something else?

#

so like have big VR blocks around the players so they can leave, and when a trigger happens the blocks sink into the ground

young current
#

setpos and the variations of the command.

compact maple
#

Hi, can I do oop on arma3 ?

#

I can't find anything about it on the wiki

copper raven
compact maple
#

seems cool, thank you ! are you using it ?

copper raven
#

no

fluid wolf
#

When you use addaction, is there a way to use the addaction on the unit that is committing the action instead of the unit the action is on?

#

EG, I want to be able to put addaction on a box, and when used, add an item to the inventory of the person who used the action

austere granite
astral dawn
#

the code runs on the machine on which you ran addAction

fluid wolf
#

oh

#

duh

austere granite
#

_target will be the box, _caller will be the unit

fluid wolf
#

I was literally looking right at that and wondering what I could use it for

#

my bad

astral dawn
#

the code runs on the machine on which you ran addAction
I wanted to say that you can just use player 🤔

fluid wolf
#

its for multiplayer though

#

I want it to run for only the player who uses the box

winter rose
#

the code runs on the machine on which you ran addAction

#

this ^ means the bit of code will run on/from the player's machine

fluid wolf
#

Is player not always the server host?

winter rose
#

no

fluid wolf
#

oh

#

...ok

winter rose
#

player is "the unit controlled by this computer's IRL player" - can be objNull

fluid wolf
#

ah

#

ok

astral dawn
#

generally you must do it like this (inconvenient but it is what it is):
add action to object via remoteExecCall with a JIP tag so that newly joined players have the action

#

therefore the code will run on the machine of the player which activated the action, always

fluid wolf
#

Alright. That makes sense

#

whats a JIP Tag btw?

astral dawn
#

see documentation for remoteExecCall

fluid wolf
#

Got it, thank you

copper raven
#

@cunning oriole why not just have one event handler, and handle both cases with like a switch or something?

astral dawn
#

@cunning oriole these event handler must return something which might override other event handlers of same kind

#

check ctrladdEventHandler docs

copper raven
#

also compile your scripts, and call or spawn them accordingly, rather than recompiling them every call with execVM, _nul = is gibberish and not needed, you never use the handle afterwards anyway

torpid quartz
#

Thanks for the SetPos command, everything works!

still forum
#

in this case _nul= might be doing something,
because keyDown is supposed to return a bool I think?

fluid wolf
#

...am I doing this right? _rack = this; [player, _rack] remoteExec ["Gruntclothes.sqf",0,true];

still forum
#

no

#

remoteExec doesn't take a script filename

#

it takes a script function (variable name) or a command

fluid wolf
#

...ah

#

...is it possible to run an execvm through a remoteExec, or is it not possible to run files at all on a clientside level on a server

still forum
#

remoteExec ["execVM",...

fluid wolf
#

Thats what I thought, yea. I jtus wanted to make sure I wans't talking nonsense

fluid wolf
#

_rack = _this; [{_rack execvm "Gruntclothes.sqf"}] remoteExec ["call",0,true];

#

now what exactly am I doing wrong with this one

still forum
#

you are passing an array to call

#

but call takes CODE, not an array

copper raven
#

[left argument, right argument] remoteExec ["binarycommand", targets] = leftargument binarycommand rightargument, [[player, _rack], "gruntclothes.sqf"] remoteExec ["execVM", 0, true];

still forum
#

also _rack is undefined

fluid wolf
#

_rack is defiend as _this, is it not?

#

oh wait, that cant be local

still forum
#

you set _rack

#

but then you reference a different, undefined _rack variable in your code piece

fluid wolf
#

ohhhhhhhhhhhhhhhhh

#

yea i see that. Ok

#

AH! Finally! Thank you thank you thank you

copper raven
vague geode
#

I am trying to make a convoy out of a bunch of vehicles incluting Zamak Transports full of people that should remain in there unless there's a threat which is when they should disembark and defend the convoy. My problem is that the convoy's commander is ordering a bunch of people to disembark a few seconds after the mission starts (no hostiles within a 10+km radius). Is there any way a can prevent that initial disembark order from being issued so that the people stay inside as long as there no threat to encounter?

winter rose
#

they… shouldn't
must be a mod thing?

thin owl
#

Put them on Safe, and have the Formation in File/Collum

vague geode
#

@winter rose They shouldn't what? Disembark? But they do and I do not have any mods... I think the officer just doesn't like 100% full vehicles because know that I have removed some the problem is nearly gone...

#

@thin owl Guess what their settings currently are: Safe, formation: File. (PS: also tired collum)

thin owl
#

Are you running any AI mods?

vague geode
#

@thin owl

[...] and I do not have any mods... [...]

thin owl
#

Odd

#

Tried Careless?

vague geode
#

@thin owl No because then they would act like total morons. The convoy is meant to be an unexpected challenge for the players when they encounter it because it travels on a completly randomized patrol route which is randomly generated on each mission start. If I would set them to careless they wouldn't even be worth a sidenote but in their current from they pose a real threat.

sudden current
#

Which channel has the groups that are recruiting

still forum
vague geode
#

@winter rose Yeah, I guess they are just really into social distancing. Now that I removed one more (after only one guy got ordered to disembark) no-one disembarks anymore so it must be the full vehicles that caused this...

winter rose
#

dunno, I admit - very weird behaviour here ¯\_(ツ)_/¯

hallow mortar
#

can anyone explain why this would fail to unhide the relevant object on a dedicated server? Because I'm 100% stumped. Executed from the on completion of a holdaction.

[obj_setup1,false] remoteExec ["hideObjectGlobal",2,true];```
still forum
#

why jip? shouldn't be any need for jip

hallow mortar
#

just to be safe

#

I don't see why that would cause it to fail completely, in any case

#

there is something that comes after this in the script, which does obviously succeed, so I don't think there's an error in the command as such (otherwise it would stop)

winter rose
#

please, think of the network

uncut trout
#

Hey y'all, I'm trying to terminate an Ambient Animation from a script that executes when a trigger is entered. I tried using call BIS_fnc_ambientAnim__terminate but I'm receiving an undefined variable error. Using switchmove "" isn't working either. What am I doing wrong?

crude needle
#

@uncut trout Did you pass the unit animated as an argument to BIS_fnc_ambientAnim__terminate?

uncut trout
#

Yes I just left that part out of my snippet lmao

#

Aha I figured out. I was using the UI for running ambient animations (I think that's a 3den enhanced thing) instead of calling the function myself. I guess that doesn't define the terminate function for whatever reason.

tribal vault
#

Hello, anyone has time to show me how can I edit mass values for specific vehicles for a mission? I have checked out this link https://community.bistudio.com/wiki/setMass but don't understand how to execute this properly.
Thanks in advance!

hallow mortar
#

give the vehicle a variable name in the editor. Then, in...init.sqf, I guess, put

  whatever_variable_name_you_used setMass 5;``` (where `5` is whatever mass value you want to give the vehicle)
ebon citrus
#

@hallow mortar wouldn't it be enough to add this setMass 5 to the vehicle's init in the editor? No?

winter rose
#

init field is evil

ebon citrus
#

I see

surreal peak
#

Why is the init field evil? I tell people not to use it cause I heared someone say it was evil, but I never questioned why it was evil

ebon citrus
#

I've never had problems with it

#

Onoy thing i can see is init-order

#

Init-fields come before init.sqf

#

So if your init-field relies on anything done in init.sqf, things will get wild

#

But for setting a vehicle propperty, i dont see why it's bad

#

I regularly use init to set object, unit and vehicle properties if they are unique

peak bridge
#

Apparently it's because the init field is ran EVERY TIME a player joins, so you ought to be careful with what you place there

young current
#

Set mass random 500 + random 500 on init fiel will make game interesting.

winter rose
peak bridge
#

It also depends on what is happening. Say a setDamage 1, which outright kills a unit, doesn't really matter

winter rose
#

no, but a this setDamage 0.5 to start the mission injured…

exotic flax
#

no this addDamage 0.5 will kill you after the second person joining 🤣

winter rose
#

addDamage does nutt exizzz :U 🔨

#

imagine, you heal yourself, "oh btw, sorry I'm late" guy connects, bim, one FAK wasted 😁

#

(or, you're about to die and someone disconnects/reconnects)

peak bridge
winter rose
#

yes it is

surreal peak
#

I've not played oldman, is there anything major it added?

warm hedge
#

Old Man itself is

peak bridge
#

I've only watched Rimmy play it. I had some GTA vibes..?

exotic flax
#

GTA vibes? 🤔

peak bridge
#

Sort of open world with a main story and many side objectives and a "criminal" main character

#

Again, I haven't played it myself

tough abyss
#

I'm setting up a race, and was wondering how you would teleport the first player and vehicle to activate the trigger to a specific location

exotic flax
#

If it's only the first person crossing the line; simply make a trigger which only triggers once.

peak bridge
tough abyss
#

It's three separate players

#

I'm also relatively unfamiliar with scripting

exotic flax
#

With 3 players (first 3 I assume);

  • have trigger at finish line which will store the order of people crossing the line
  • when all racers have crossed the line, take the first 3 in the list and move them to the 3 positions you want
tough abyss
#

Ok

#

How would I do those?

exotic flax
#

Please note that this is not a "please write my scripts for me"-channel

#

We'll be happy to help you with problems and give suggestions, but not write out complete scripts

tough abyss
#

👍

winter rose
#

in pseudo-code, would your idea be

- create a list
- add unit entering the trigger to the list
- when the list is 3 or more, place them somewhere
```?
tough abyss
#

Yes

winter rose
tough abyss
#

Thanks

unkempt sorrel
#

heyy guys im new to this whole scripting scene, but anyways, i am trying to make a script that allows your squadmates to climb/descend ladders. Unfortunately, the main element, "LadderUp" command seems to not be working as stated on the wiki, or im doing something wrong, can someone pitch some advice?

ebon citrus
#

@winter rose thanks for the hint! I never noticed that box. Well, i never used any scripts in Init that wouldve changed anything

warm hedge
#

You want to allow or disallow mates to climb up/down ladders?

unkempt sorrel
#

Allow

warm hedge
#

Then just command your mates to climb up

unkempt sorrel
#

like through the hud on vanilla? i never knew that was an option lol

#

This is the command I'm using, basically what happens is the ai does a grabbing animation then stops and doesn't do anything after

#

soldierOne action ["ladderUp", (position soldierOne nearestObject 452221), 0, 1];

torpid quartz
#

is there an easy way to add mods to a mission? I assume not because i can't find anything doing googles but might as well ask.
I just want to stick a remove stamina mod and enhanced movement to a mission so when my friends or randoms join in online and play they don't have to download them / have them enabled.

winter rose
#

nope, mods are mods and have to be downloaded

the "remove stamina" can be scripted though

torpid quartz
#

right wasn't sure on that one, thought i'd been on some servers that had mods built into missions but was probably just scripting, thanks!

flat elbow
#

is there a way to say that if a player JIP he goes to the respawn menu, but players on the mission start do not?

flat elbow
#

i have it at -1, but it does not take care of JIP people

#

i basically have a small part that works as intro with an heli that moves people, then people move a humvee that is a mobile respawn, so when the mission start people who are inside should be able to see and do the transport part, people who join after however should just spawn on the vehicle

exotic flax
#

-1 will simply never run, set to 0 to run on respawn, not at join.

#

although it will only take care of the respawn menu (show or not), and doesn't do anything else

#

afaik you can't make a difference between "on mission start" and "during mission"

flat elbow
#

maybe i should run the respawn script and selectively choose where people respawn, ie add the respawn on the heli and after that part is done do the respawn on the humvee?

exotic flax
#

that would make the most sense

#

eg. when I make larger missions (with multiple spawn points) I always start with just one spawn point at the base, and after mission start I remove it and add a spawn point where needed (on vehicle, cleared areas, etc.)

flat elbow
#

yep that would make most sense but also break all the workarounds i have made for the flyinheigh not working as expected and the let unit fastrope bug of ACE or the AI not behaving correctly when on the USS Freedom aircraft carrier

tough abyss
#

Hello there fellow scripters!
Is there anyone that knows how to make a box (any of them) open the ace arsenal? I've been trying with ["AmmoboxInit",[this,true]] call ace_fnc_arsenal; and [this, player, true] call ace_arsenal_fnc_openBox but it doesn't seem to work

#

if there's something i'm missing out please tell me lol

flat elbow
#

so you want the player to open the ace arsenal via script? like the BIS_fnc_arsenal ?

tough abyss
#

yep

#

but only the ace arsenal

#

i don't know what to try anymore tbh

exotic flax
tough abyss
#

I'll try with these, cheers

exotic flax
#

ace_arsenal_fnc_initBox will add ACE Arsenal to an object, which can than be accessed through the interaction menu

flat elbow
#

yup i still have to figure out how to add items to the ace menu via script for a later mission

#

the interaction with points is cool so no reason to not use it (unless it's a headace to use it, that is)

exotic flax
#

the documentation of ACE features is great IMHO, so their website is all you need

flat elbow
#

in code lies the truth

peak bridge
#

Where did you place said sideChat? Trigger, init?

flat elbow
#

it was inside a trigger

#

basically it says "prepare to fastrope" when the heli with player is near the dropout zone

#

(so it's a player presence trigger)

peak bridge
#

Do you have the "Server only" ticked?

flat elbow
#

whoops i forgot to tick it, it may explain why it was flooded

peak bridge
#

If not, it might trigger for every player, and so every player will remoteExec sideChat, that's why you have the repetition

flat elbow
#

that makes sense, my bad

tough abyss
#

Still can't seem to open an ace arsenal via action with a box I'm using [_box, true] call ace_arsenal_fnc_initBox but it does nothing, i'm also trying other scripts on the ace page and they don't work as well

peak bridge
#

Why not just tick the Ace Arsenal box in the editor?

exotic flax
#

do you use Ace Interactions? Or the regular mouse wheel stuff?

tough abyss
#

regular mouse thing

exotic flax
#

use Ace Interaction on the box, and you'll get an option to open it 🤔

tough abyss
#

ace interaction is opened by holding a key right? I also did that

#

and nothing shows up

exotic flax
#

Hold CTRL and move the red circle on the white point which is at the center of the box/crate/whatever...

tough abyss
#

i only have "Interactions-Open"

exotic flax
#

do you have some weird version of ACE, or other mods/scripts which might interfere with ACE?

tough abyss
#

i have ace no medical

exotic flax
#

that shouldn't be an issue, unless it's broken...

tough abyss
#

I'll check the version

exotic flax
#

still shouldn't matter... ACE Interaction = ACE Interaction...

tough abyss
#

hmm

#

idk what else to try

exotic flax
#

I'm 100% sure the code works, and I know that it hasn't changed for years in ACE itself...

tough abyss
#

why do i always have to struggle with scripting lol

exotic flax
#

so either you're using the code wrong, or you don't know how to use ACE correctly 😉

tough abyss
#

i guess

#

it says "Please note that at least one virtual item needs to be added otherwise ACE Arsenal will not open."

#

but then again, all virtual items are set to infinite

#

nvm i got it to work, it was using [this, true] call ace_arsenal_fnc_initBox;, i changed _box to this

surreal peak
#

quick question: do you know what private variables are and how they work?

#

not saying that to be mean, but it would make your life alot easier if you do

tough abyss
#

i don't know about basic scripting, but this would help me a bit

#

thanks man

spark turret
#

does someone know an out of the box solution for having a ton more of dust spaned by vehicles, explosions etc? i always feel like desert maps dont have nearly enough dust in the air

winter rose
#

there is BIS_fnc_sandstorm for the "environmental" sandstorm, as for the rest there is no "off-the-shelf" solution except maybe someone who would have already scripted something like that

still forum
#

Maybe a snowstorm script (M13 mission on thirsk winter) can be changed to a sandy looking dust particly thing

flat elbow
#

i think i saw a function for that

unkempt sorrel
#

can't figure out a ai ladder script for the life of me... seems like LadderOnUp action is either buggy or me just filling wrong parameters

exotic flax
open hollow
#

hello, there is a way to save values in a file with a script, i mean, you cant "print" information in .rpt... but that is quite annoying to read, i just want a .txt with my position every 3 seconds in the entire mission for example

winter rose
#

no can do without extension
you can still copyToClipboard (in SP or as server in MP)

exotic flax
astral dawn
#

Also @barren magnet have same kind of extension with similar functionality, forgot the link

open hollow
#

We don’t use BE 😄 then you! I’ll try both!

still forum
#

ACE also has one

#

that is BE whitelisted

astral dawn
#

🤔 that's actually good to know. How is it called?

#

Also, as a side comment, having an extension which can dump logs into different files has become very crucial in development.
Good practice I've found is to separate log files depending on topic, and have the errors from all modules dumped into a common file with errors.

open hollow
#

If ace has one it will be awesome

hallow mortar
exotic flax
#

Unit capture doesn't store data to a custom file... Just to clipboard...

hallow mortar
#

Yes, it does indeed say that on the page I linked

#

it may still be useful in combination with an extension to save output to a file, or if "to file" isn't the most important part of the requirement

#

There are also server-side mission recording utilities such as R3 that could be useful on a larger scale, but I don't know how to use those

unkempt sorrel
#

@exotic flax Yeah I read up on that, only issue is, I don't know what a ladder number is and it doesn't really go into detail about it, im sure im doing something wrong but, can't put my finger on it.

barren magnet
astral dawn
#

Yes! Thanks!

unkempt sorrel
#

got it to work 😄 syntax error... lol

astral dawn
#

Which one of the three? nvm I thought you refered to the file extension

ebon citrus
#

What does the link contain?

still forum
#

!purgeban @tough abyss 0 posting gore

lyric schoonerBOT
#

*PewPewPew!!*
RIP @hearty scaffold

astral dawn
#

That was fast

ebon citrus
#

Welp, i got spared the trouble

still forum
#

same on dayz discord a minute ago

ebon citrus
#

Thanks Ded

tough abyss
#

Is there any way to force the AI to play a stance, let's say i want to make it to stay up all the time

#

i've tried setbehaviour but it doesn't do what i want

ebon citrus
#

playMove, playMoveNow and switchMove

tough abyss
#

this playMove "STAND"; right?

ebon citrus
#

Read the docs

#

Not to be rude. Im showering

tough abyss
#

where? 🤔

#

no problem lol

warm venture
#

how do you define a global variable...?

winter rose
#

TAG_myVar = value

hallow mortar
warm venture
#

that easy huh

ebon citrus
#

@warm venture yes

warm venture
#

isNil ncp_cooldown

ebon citrus
#

do remember; Global variable != Public variable

warm venture
#

So I can do this to check if it exists or not

ebon citrus
#

sometimes

warm venture
#

I just need people not to spam this code

#

so I need a cooldown on it

ebon citrus
#

as long as the variable has not been used before

#

ummm...

#

that's not the best way to doing it

warm venture
#

what is?

winter rose
#

isNil ncp_cooldown
wrong usage of isNil, ""

ebon citrus
#

☝️

warm venture
#

yeah but..whats the best way of doing it?

ebon citrus
#

a timer

warm venture
#

to make it not spammable

#

uh

ebon citrus
#

set a delay to make it not spammable

#

preferably server-side

#

but on client, if you really need it to be

warm venture
#

like add sleep?

ebon citrus
#

yes, sleep can be used for it

#

but probably not in the way youre thinking

warm venture
#

errr..

#

putting a sleep at the end of the code is useless isnt it?

#

cause if you execute it again, it just goes through again

ebon citrus
#

ask vague questions, get vague answers

warm venture
#

I need a 5 minute cooldown.

ebon citrus
#

first

#

how is the code activated?

warm venture
#

through a remoteExec

ebon citrus
#

how does the user activate the code?

warm venture
#

an addaction

ebon citrus
#

ok

#

2 options

#

attach a condition to the addaction, or delete and re-add it

tough abyss
#

Cheers @hallow mortar

ebon citrus
#

when you run the action, set condition to false

#

sleep 5 minutes

#

set condition to true

#

VERY SIMPLEST way of doing it

warm venture
#

condition as in a variable..?

ebon citrus
#

whatever you like

warm venture
#

just put a variable on the infostand itself

ebon citrus
#

see example 5

brave jungle
#

Anyone know what causes this error? Its during rapid spawning of units (testing performance)

21:27:26 Number of joints in scene after release: 30
21:27:26 Number of actors in scene after release: 32
21:27:26 EPE manager release (30|32|0)```
#

My guess is something to do with it getting clogged up trying to create units

warm venture
#

I need to make my server restart automatically every 4 hours..is there like an rcon command or something to restart the server?

still forum
#

What error?

#

Can't see any errors @brave jungle

warm venture
#

windows only

brave jungle
#

What does the EPE stuff mean?

warm venture
#

im on linux

brave jungle
#

then add linux to the search squallz

warm venture
#

i..have

still forum
#

EPE is physics stuff.. kinda.

warm venture
#

all the sights are just for hosts

brave jungle
#

Oh right so its just telling me about that, I#'m testing HC stuff and when it locks up, it'll tell me where it gets up then spurts this for like a hundred lines, wasn't sure if its something to worry about, cheers

warm venture
#

sites* wow

brave jungle
warm venture
#

wish there was a better explanation on how it works