#arma3_scripting

1 messages ยท Page 265 of 1

little eagle
#

yeah

#

deep down

#

that is the difference

#

I also misread what Akryl wrote

#

It makes no sense to me now

halcyon crypt
#

(or up, rather ๐Ÿ˜„ )

little eagle
#

semantics

icy raft
#

Hahaha

#

It just works, and not real impact

#

'''
[] spawn {
while {true} do {
if(eventHandlerVariable) then {
[] call fancy_function;
eventHandlerVariable = false;
};
sleep 0.3;
};
};
'''

#

Shit

halcyon crypt
#

it's the key left of 1 ^^

little eagle
#

what is the point of that Akryl

#

also

#

```

icy raft
#

Oh yeap, sorry, had the danish layout

little eagle
#

but it would be much better if you don't poll "eventHandlerVariable"

#

but instead call the event handler directly in the place where you change "eventHandlerVariable"

#

also you don't make listenable events by just calling one function

#

there is no point

#

it's just a polling loop

#

exactly what should be avoided by using events

#

if you really need polling

#

for something very deep down

#

or up or whatevr

#

then you make it a listenable event

#

so many functions can be called by the one event

#

so you don't need multiple loops that check essentially the same thing

halcyon crypt
#

I think what @icy raft is aiming for is a scheduled event "system", maybe?

#

or whoever asked the initial question

little eagle
#

well if you want to run a scheduled script after an event

#

you can just use spawn

halcyon crypt
#

true

icy raft
#

I used that concept to create a few easy-to-use screen effects that get stacked, so each time for example you open a GUI, it add an "showBlur = true", each one gets stack, and when you close that GUI, the counter goes --. If counter > 0, keep blur, otherwise remove blur

little eagle
#

Akryllax

#

Are you a hacker?

#

computer engineer

#

or whatever they're called

#

?

icy raft
#

engineer in progress

little eagle
#

so actual engineer? Not with computers

icy raft
#

computer engineer

little eagle
#

ok

icy raft
#

Why's that?

little eagle
#

I was just wondering if I chose the wrong profession

icy raft
#

Why?

#

What are you doing?

little eagle
#

material science

#

so "actual engineer"

icy raft
#

I'm getting same math and physics as other engineering degrees...Typically people misunderstand...

halcyon crypt
#

I might be wrong but I feel a pissing contest coming ๐Ÿ˜ฆ

icy raft
#

Nah, it's always the same, until someone tries to go to comp. engineering and see it's not that easy hahaha

little eagle
#

It's not about easy or hard

#

Probably harder to become a comp engineer

#

But still

#

I hate you hackers

#

pfff

icy raft
#

I get to study all the engineering design process... It's a hassle, but it's necesary

#

What we did to you? We are nice people ๐Ÿ˜„

halcyon crypt
#

@little eagle define hackers ^^

icy raft
#

Yeah, also there's that

tough abyss
#

Comp-sci is easier than you think

#

Basis of all algorithms is discrete logic and some more advanced math.

halcyon crypt
#

comp-sci != comp-engi ๐Ÿ˜›

tough abyss
#

Applied Computer science or applied physics

icy raft
#

@halcyon crypt tru fakt

halcyon crypt
#

yay, I can google ๐Ÿ˜

icy raft
#

Anyway

#

Godnat ๐Ÿ˜„

tough abyss
#

Hate the random positions function

#

for "i" from 0 to 99 do {//randomly probe locations till found//};

halcyon crypt
#

BIS_fnc_findSafePos?

tough abyss
#

no it's called BIS_fnc_randomPos;

halcyon crypt
#

well, it does have to test for the filters given

tough abyss
#

Yeah bruteforcing is now I know why this code is slow

icy raft
#

Use quicksort

#

That stuff is magic

tough abyss
#

I know about Quicksort but in what context are you refering?

#

It still has to probe locations

#

till it finds a valid one.

icy raft
#

That the time to do that get reduced waaaaaay much in comparison to bruteforcing it

#

#Akryllaxout

tough abyss
#

Everytime BIS_fnc_randomPos runs

#

it has a chance of failing to return a value

#

and gives back [0,0]

#

And then your entire code just fails

#

Wow the random script doesn't even check if an area is Empty

tough abyss
#

Ha

#

Writing Queue data-structures functions was easier than I thought.

#

Now I can integrate that into my garbage collection system

rancid ruin
#

so, getPosVisual returns a position in render time scope. is it always faster to use it rather than normal getPos, regardless?

vague hull
#

doubt that

icy raft
#

@tough abyss Anything on unscheduled has a chance to fail, as each script gets only 3000 execution cycles before aborting

vague hull
#

getPos is still kinda slow

icy raft
#

But... Why would you bother?

vague hull
#

Some high end stuff

icy raft
#

Isn't noticeable at all

vague hull
#

if you need to compare two locations you dont have info of before getPosASL is much faster than getPos

#

one could say O(nยฒ) isnt noticeable until you find out that your system processes 500 elements instead of 5

meager granite
#

getPos is slower than ASL\ATL\World, yes

icy raft
#

Well... Yeah

#

That's a good point

vague hull
#

its just about that tiny bit it is faster.. it could add up to a mess

icy raft
#

Spending so much time improving that stuff... Not worth it usually

meager granite
#

getPos does some manipulations with bounding center, finds surface under it, etc. - does plenty of pretty much useless stuff.

vague hull
#

well if you know it its easy to use

icy raft
#

Well, never mind that ๐Ÿ˜„

vague hull
#

@meager granite I had that question left yesterday:
if I use modelToWorld then AGLToASL and setPosWorld +hightoffset

would that work proberly? (since World appears to be ASL to 0,0,0 of the object)

meager granite
#

modelToWorld [0,0,0] is the same thing as AGLtoASL getPosWorld, so it should work

vague hull
#

thanks alot :)

halcyon crypt
#

GeekyGuy5401: Wow the random script doesn't even check if an area is Empty
@tough abyss that's what BIS_fnc_findSafePos is for ๐Ÿ˜ƒ

vague hull
#

FindSafePos however is really slow (and tends to select the same position over and over again (if its empty))

#

its better to approach it with some maths (mapcenter +- random worldsize/2) which might need to be adjusted and then just isFlatEmpty (which takes the same params because findSafePos uses it)
and leave out the most useless stuff that findsafePos does

halcyon crypt
#

it can be slow if you have very restrictive filters and it only really matters when you use it like every frame

#

in unscheduled it's probably negligible due to it being way faster than scheduled and in scheduled it doesn't really matter

#

it's not like it's going to take 10 seconds ๐Ÿ˜›

vague hull
#

Ohh it can

#

I had it a few times due it uses static filter params, so if you mission has been online for a while and the map/are might be crowded then it will run the full 1000 attemps for even a small set of filters
then you just need to run it again and again

#

this is what makes it so expensive.. it returns the default at way too high costs

#

might be only my opinion

halcyon crypt
#

your alternative wouldn't be any faster since it still has to do the testing, in fact it's pretty much the same thing as what BIS_fnc_findSafePos does

#

except for the fact that you're doing it from the mapcenter instead of a custom position

#

I'm more than happy to change my opinion with some benchmarks though ^^

icy raft
#

Yaaay

#

I'm 1/4 done into my plugin ๐Ÿ˜„ ๐Ÿ˜„

#

I feel so happy

#

That satisfaction when your code starts to work out of nowhere and you don't have a clue why. But it's still hapiness.

vague hull
#

Coffee always tends to be a magic wand too

#

I guess I will benchmark it today just to see for myself (the idea with the mapcenter can be replaces by params)

#

for really small areas it should be the same, but as soon as we search the map (which I guess is the common use for it) we will run into trouble

carmine quail
#

hey people,
would it be possible to make a script that displays the range (in centimeters) between the weapon's muzzle and the camera view? i would need something like this for making fine adjustments in the field of sound modding

rancid ruin
#

not sure how you'd do it for the exact muzzle position but screenToWorld, eyePos, lineIntersects - those commands should help

young current
#

Could it be tied to fired eventhandler? when fired get position of the bullet and calculate distance between that point and eyepos? Although now that I think about it, the bullet does spawn into the "chamber" memorypoint soo scratch that

carmine quail
#

ofcourse... i just want to be able to measure the exact distance between the eye pos and the point where the firing sound gets created - if it spawns along with the bullet to the chamber, thats good for me

rancid ruin
#

maybe look at the BIS bullet tracing function and see how that does it

young current
#

I wonder if the gun sound actually has a point of origin like that. Have you gone through sound configs if theres anything that points to a memorypoint or selection in a model?

carmine quail
#

no, im not fond of configs ๐Ÿ˜„

#

i just experimented with triggering certain sounds only when you are firing while aiming down the sight

#

and the "curve" you set for one weapon doesnt work with another one

rotund cypress
#

Hi, is there a way to get inventory dialog positions?

#

I want to put some buttons on them and need to know where to place it in relation to the inventory menu

tough abyss
#

Hola muchachos!
I wondered if it's possible to place a speaker object and to talk through the microphone, and make the speakers output your voice so other players can hear you through the speaker.

Any ideas how to do that?

rotund cypress
#

Thanks a lot @tough abyss

#

It doesn't work. It's possible to do this in editor right? @tough abyss

#

I think i got it working

#

Ok I got it working @tough abyss

#

Is there a way I can open this up with the GUI editor? Or export it as classes?

#

thanks

#

is it x, y, w, h?

#

In that order for positions?

#

ah thanks

tough abyss
#

anyone uses TFAR in here and knows how to configure (volume & toggle speakers) a radio via script?

native hemlock
tough abyss
#

@native hemlock I found this [call TFAR_fnc_ActiveSWRadio] call TFAR_fnc_setSwSpeakers;

#

it says that the first parameter is string - radio

#

I don't know what to do with that. Or do I just put it like this in the init?

rotund cypress
#

Is there a way you can prompt a player with a dialog that says yes or no, and if you click yes the script will continue otherwise it will exitWith?

rancid ruin
#

yes

#

there is a dialog tutorial which teaches you how to do exactly that

#

1st result for "arma dialog tutorial" on google

rotund cypress
#

I know how to make dialogs lol

#

I want a dialog that say ok or close or yes or no or some shit

#

I have seen a default command before

#

I just cant find it

rancid ruin
#

just make one, you know how

rotund cypress
#

just make you? ๐Ÿ˜‰

#

found it

#

BIS_fnc_guiMessage

little eagle
#

who pinged me

#

damn discord

rancid ruin
#

who's good at maths?

#

i'm trying to tile hexagon markers. i think i need to use pythagoras to figure out the width of hexes. but i am bad at maths

little eagle
rancid ruin
#

who, me?

little eagle
#

yes

rancid ruin
#

i dunno, how?

little eagle
#

idk
player inArea "hexagon_marker"

rancid ruin
#

nah i'm trying to cover the map in tiled hexagons

#

but can't figure out how to do the x axis tiling part

little eagle
#

Regular hexagons? i.e. all sides the same length and 120ยฐ between them?

rancid ruin
#

pointy topped hexagon height is always whatever the "radius" of the map marker is, but what's the width?

little eagle
#

the same as the height if it's a regular hexagon...

#

Oh. I think I know what you mean

rancid ruin
#

yeah it's not as wide as it is high, only the points of the hex would touch the outside of a same size circle

#

i think you can do it with pythagoras' theorem but i am bad at math

little eagle
#

the edge is on the top?

rancid ruin
#

yeah

little eagle
#

height being more than width?

rancid ruin
#

yeah

little eagle
#

cos 30 = X / height

#

width = height*cos 30

#

as far as I can tell

rancid ruin
#

nice one, let me test that

little eagle
#

there are 6 triangles in a hexagon

#

the width is basically the height of one of them

#

so the height of the hexagon is the hypotenuse of that smaller triangle

#

the angle in the middle of one half of one of the triangles is 60/2

rancid ruin
#

that's beautiful, it works perfectly

#

your help is much appreciated commy

little eagle
#

now now. it was just 8th grade math

#

: P

buoyant heath
#

Eh, trig in highschool for many

rancid ruin
#

yeah well i'm shit at maths

rancid ruin
meager granite
#

I was thinking about the same thing lately with release of civ 6 lol

jade abyss
#

CTI - Extended

rancid ruin
#

do it samatra

#

my thinking is to process each terrain in to hexes, then make the mission on VR terrain and load in that data

#

it will allow everyone to get 60+ FPS in the tanoa jungles

jade abyss
#

then make the mission on VR terrain <- ?

buoyant heath
#

Minus the terrain height?

jade abyss
#

minus ground Textures

meager granite
#

I wish we had terrain modification commands from VBS

jade abyss
#

+1

rancid ruin
#

yeah process terrains in to hex tile data, create hex map on vr terrain

tough abyss
#

To calculate a hexagon

#

use polar coordinates

#

Angle + displacement

dusk sage
#

What

#

What is calculate a hexagon

tough abyss
#

Converting Cartesian coordinates to draw a hexagon on the map

#

Might be easier to make a custom GUI component

dusk sage
#

To draw a hexagon..?

tough abyss
#

yes

#

Problem with it.

dusk sage
#

I've no idea what you're getting at

tough abyss
#

It'd have to be made of compound shapes

#

see what the other guy said above

#

It's probably most efficient if you were creating a trigger on a marker.

dusk sage
#

Why would you convert to polar to deal with hexagons

tough abyss
#

To make it sqaure

#

Draw each line rotate it BoGuu

dusk sage
#

:/?

#

To make it square?

tough abyss
#

No make it hexagon

dusk sage
#

Think we're in different books

tough abyss
#

Some guy wants to do that.

dusk sage
#

And why will polar coords help

tough abyss
#

Actually

#

There is now a native polygon command

#

Interesting

dusk sage
#

Yeh, handy command

#

I've no idea how you expected to draw a hexagon in polars

little eagle
#

Polar coordinates won't help

#

someone should invent a "hexagonal coordinate system"

dusk sage
#

It exists already

#

๐Ÿ˜‰

tough abyss
#

Yes it does

#

AH heres the algorithm

#

Composed of equal lateral triangles.

dusk sage
#

Can make any coordinate system you wish

tough abyss
#

I don't see how it would improve performance though.

little eagle
#

if you're smart enough ๐Ÿ˜ฎ

tough abyss
#

As the other guy claimed.

#

Unless @rancid ruin was being sarcastic

rancid ruin
#

i already made the hexes

#

it's done

dusk sage
#

Nobody talked about performance with using a different coordinate system ๐Ÿ˜›

tough abyss
#

Why did you want to anyway @rancid ruin

#

?

little eagle
#

Civ 6

dusk sage
#

Did you read what you were saying to read? ๐Ÿ˜„

rancid ruin
#

just did it for a laugh. will probably dick about making some 2d mission

tough abyss
#

ah k.

#

On that subject

#

Anyone seen BMR insurgency before?

#

All 1200 instances of scheduled scripts?

#

on the server-side?

buoyant heath
#

yup

tough abyss
#

How does that mission you know not melt the entire server?

#

Or it does?

little eagle
#

it won't melt it, but nothing will work or take forever.

#

e.g. opening the esc menu to escape the server

tough abyss
#

Yep.

#

It used EOS a lot.

#

I've improved I&A creating my own specific Queue data-structure functions

#

Now I can manipulate the queue.

#

Translated Python Queue to SQF

noble juniper
#

can you manipulate the sceduler manualy ?

tough abyss
#

Uhhh...

#

You theoretically could

#

you've got 3ms to do it though.

noble juniper
#

yea 3ms time that he spends on each script.

dusk sage
#

What?

little eagle
#

can you manipulate the sceduler manualy ?
you can add more pseudo threads xD

tough abyss
#

^

#

Been there done that.

noble juniper
#

@little eagle "pseudoThreads " good one

tough abyss
#

Thats what they are.

little eagle
#

that is what they are though

tough abyss
#

They're very similar to Java threads

little eagle
#

all the problems of asynchronous programming

tough abyss
#

Virtual Machine managed

little eagle
#

none of the benefits

dusk sage
#

I think we all do, every time we code

tough abyss
#

It's why execVM is exactly (Execute in the virtual machine)

noble juniper
#

the missing benefits, thats whats bugging me

dusk sage
#

Unless you're commy

#

PFH ๐Ÿ˜‰

little eagle
#

I don't use PFH whenever possible either

noble juniper
#

when i think about it, BE Filters

tough abyss
#

It's a case by case thing with Scheduled vs unscheduled

#

Time critical stuff e.g ACE3 requires the unscheduled

dusk sage
#

SQF is cushy for async business

little eagle
#

I'm fine if missions use the scheduler. It's just that mods shouldn't use them

#

otherwise adding mods to a mission will change the mission behaviour

tough abyss
#

But BMR with 1200 is a bit extreme.

noble juniper
#

well fuck that word, You are right though

little eagle
#

and the mission would change the mod behaviour

#

"Why does AGM not work with mission X?"

#

I don't want to deal with that

#

anymore

jade abyss
#

Because:

tough abyss
#

Has anyone tried out the Intercept library?

jade abyss
#

Reasons.

#

Not worth it @tough abyss

little eagle
#

Because: shared scheduler space

jade abyss
#

Because: Arma.

tough abyss
#

facedesk

noble juniper
#

Everything is because of Arma arma is the new 42

jade abyss
#

regarding intercept: as far as i heard: The benefit will be screwed by extension connector (time)

tough abyss
#

One of the massive problems life-servers have when the callExtension is put under massive stress

#

is although the callExtension is unscheduled

#

and sends to a database thats multi-threaded

noble juniper
#

and blocking

tough abyss
#

It defeats the purpose when you can't parallelise the data fast enough

#

And it's blocking.

#

120 people + database

jade abyss
#

erm, ExtDB is has Workers, soo... maybe an old version that had Problems with it.

tough abyss
#

= massive load times.

jade abyss
#

Asking @tough abyss might be the better choice

noble juniper
#

thats what i wanted to say

tough abyss
#

Yeah extDB as far as I know has a data queue?

noble juniper
#

it works astonishingly well

tough abyss
#

And thats why it's called fn_asyncCall.sqf

noble juniper
#

i think so

jade abyss
#

its just the name Geeky

noble juniper
#

as far as i know, esxtDB instantly returns something

tough abyss
#

Yeah but I did for a while scripting on Life.

jade abyss
#

I once made some tests with multiple inputs to the DB, no probs with 100 Requests/s

noble juniper
#

so it breaks the block, and then you keep looping and asking back till you get the result

tough abyss
#

And found out that extDB2 supports Async and Sync calls

jade abyss
#

asyncCall is a leftover from myini or whatever it was called

#

iniDB? can't remember

noble juniper
#

i think iniDB

tough abyss
#

All commands run sync

noble juniper
#

extDB2 in general had nice features and worked well, in the later versions

dusk sage
#

fn_asyncCall.sqf means nothing

#

In reality it's just a sync call to an async extension

jade abyss
#

@noble juniper 3 was even better.

noble juniper
#

never worked with 3

dusk sage
#

One of the massive problems life-servers have when the callExtension is put under massive stress

No life server is going to be querying 100's of times per second

noble juniper
#

i got out of AL with like V2 7X

tough abyss
#

Want to bet?

#

Check out TheAsylum

dusk sage
#

Yes

jade abyss
#

@dusk sage Believe me, there are some ๐Ÿ˜„

tough abyss
#

140+ players

noble juniper
#

defently.

tough abyss
#

20FPS

#

RIP

noble juniper
#

thats life

jade abyss
#

badumm tss

dusk sage
#

100 players != one query per second per player

noble juniper
#

thats why you can say RIP

tough abyss
#

BoGuu no it's worse.

#

I also wonder what would happen

jade abyss
#

@dusk sage I've seen things, back in the days... you don't wanna see.

tough abyss
#

If everyone in 100 player server press "Sync data"

#

xD

dusk sage
#

๐Ÿ˜‰

#

Nothing would happen really

jade abyss
#

e.g. one guys asked me, why his Server was so slow... checked the code -> Updating Coords every 2s...

dusk sage
#

You seem to underestimate how fast extDB returns

noble juniper
#

@jade abyss best horor story ?

dusk sage
#

๐Ÿ˜„

jade abyss
#

+updating Money/etc every 5s

#

It was a nightmare to look at that

tough abyss
#

If I had my way

noble juniper
#

it was saving every 5 sek ?

jade abyss
#

Everything every 5s

tough abyss
#

I'd throw in the bin most of the RAW SQL

#

replace them for procedures

noble juniper
#

it was called life_fnc_queryRequest ?

jade abyss
#

No

noble juniper
#

oh jea, that was the recieving one

tough abyss
#

queryRequest was linked to the button

noble juniper
#

what was the saving one though

jade abyss
#

It was a spawned handle for each connected player with a direct CallExtenstion in it -.-

dusk sage
#

The performance boost from using predefineds in something like extDB, won't make a noticeable difference

noble juniper
#

it was the " query everything" function

tough abyss
#

...

dusk sage
#

Because extDB isn't whats blocking

tough abyss
#

Yikes

jade abyss
#

It just makes it safer @dusk sage

tough abyss
#

^

dusk sage
#

Indeed

noble juniper
#

Yes

dusk sage
#

But, regardless

tough abyss
#

Sanitize data

dusk sage
#

It's all bound, so it really doesn't matter

noble juniper
#

i heard i t was astonishingly easy to drop DBS in AL

jade abyss
#

It does

#

With RAW you can send sql commands over

noble juniper
#

i heard Ehem cant say more Ehem

jade abyss
#

anyone remember that mess with erm... call compile ?

noble juniper
#

of cause

#

ehm

#

Arma Leakl Team

#

?

jade abyss
#

No clue

noble juniper
#

Arma Leak Team *

#

lol

#

you missed something

dusk sage
#

How do you expect to run a custom query, when you can't directly call asyncCall ๐Ÿ˜‰ ?

noble juniper
#

its like 3 month ago

jade abyss
#

Too long ago, i tend to forget horribly times (life-coding-times ๐Ÿ˜„ )

#

what? That was about about 1 1/2 years ago

tough abyss
#

Thats why I went to a milsim group

#

@jade abyss

noble juniper
#

some fagot jumping servers, and using some very old sync code to get all serverside functions

tough abyss
#

Haha

#

xD

noble juniper
#

published everything on github

#

He even dumped some DBS

jade abyss
#

@tough abyss Yeah, i wen't in the background, just coding for fun... when the fun stopped -> Another project ๐Ÿ˜„

noble juniper
#

after Gihuib was taken down, he opened up his own Website

tough abyss
#

Yeah my first real project was a weather code system

dusk sage
#

You talking about Arma Leak Team?

jade abyss
#

@noble juniper And thats why you don't give the MySQL/ExtDB User full rights ๐Ÿ˜„

tough abyss
#

I lost interest in it.

noble juniper
#

@dusk sage yes

dusk sage
#

Think it was a combination of just pure exploits in the end

#

I can't remember

#

Wasn't mod specific

tough abyss
#

This is my first pet project

#

It's been through a few periodic re-writes since it was released

noble juniper
#

some admin had just a bit in his BE Logs and it was a very old map and marker based MP Exploit

dusk sage
#

yep

#

createUnit

noble juniper
#

well, how did you hear about them ? @dusk sage

tough abyss
#

The code never did what I wanted so. I abandoned it.

dusk sage
#

I know the guy behind it

#
#define CONSTANT24 24
#define STRESSRELIEF 0.000002
#define CONSTANTINVERSE -24

skipTime CONSTANT24;
sleep STRESSRELIEF;
skipTime CONSTANTINVERSE;
sleep STRESSRELIEF;
noble juniper
#

LOL

dusk sage
#

ahhhhhh

jade abyss
noble juniper
#

@dusk sage you are fucken kidding me

dusk sage
#

Looks somewhat mesmerizing on PB

#

No

#

Well, one or two of them*

tough abyss
#

As I said it went through the re-write a few times.

#

Files got re-partitioned a few times.

dusk sage
#
initialWeather = 1; 
    switch (initialWeather) do {

๐Ÿค”

noble juniper
#

xD

jade abyss
#

Makes alot of sense ๐Ÿ˜„

tough abyss
#

This was before I refactored it massively.

jade abyss
dusk sage
#

๐Ÿ˜„

tough abyss
#

Hey @dusk sage We all had to start somewhere.

#

I dropped ArmA 3 scripting for a while

dusk sage
#

For sure

tough abyss
#

Started C++ / Python

dusk sage
#

I'm just confused with the switch ๐Ÿ˜„

tough abyss
#

Learned a ton

jade abyss
#

Same Geek, we scrapped 2017, then making my first steps in UE4 atm. But.. thats offtopic.

noble juniper
#

maybe that was intendet to get changed by context change

dusk sage
#

On the topic of life and UE4

#

What happened to that asylum thing or w/e

#

Paratus

noble juniper
#

dead probably

jade abyss
#

Oh right, they wanted to make their own game, right?

noble juniper
#

yes

tough abyss
#

Ohh that InitialWeather = 1; it was a hard-coded entry.

dusk sage
#

Yeh they raised crazy money for it

noble juniper
#

more then 30K

tough abyss
#

To publish a weather value at the beginning of the map

noble juniper
#

?

dusk sage
jade abyss
rancid ruin
#

is >30k really crazy money for gamedev though

#

i think not

noble juniper
#

i just face desked when i saw 180k

tough abyss
#
HandeRemoteThread = [] spawn {[] remoteExec ["RS_fnc_WeatherUpdateSetter",2,false];};
#

...

jade abyss
#

guys, check the channel pls =}

tough abyss
#

Self ๐Ÿคฆ

little eagle
#

guys, check the channel pls =}
the channel description is invalid SQF. using == on a boolean

#

D:

tough abyss
#

Might end up re-writing this entire thing.

#

My biggest problem with the script was the cost of updating each frame every 5 minutes

#

to try to achieve smooth transistion

jade abyss
#

@little eagle oh myyyyy

little eagle
#

consider me triggered

rancid ruin
#

is that better than being while looped?

little eagle
#

๐Ÿ˜ต

tough abyss
#

@rancid ruin Debatable creating smooth change in arma 3 weather by

#

script is a pain in the ass.

little eagle
#

half of the comands to do so are broken. especially when auto weather is enabled...

tough abyss
#

I was trying to eliminate the "frame-skip" effect you see.

#

Tortesote or whatever his name is

#

Use a really funky hack

#

of taking skipTime currentTime / slices

#

and each of the slices were small enough to not notice.

dusk sage
#

Need to change it to isEqualTo, because SQF. @little eagle

little eagle
#

of course

dusk sage
#

And that is no pun either

#

IIRC, isEqualTo is โœ… for boolean comparison

little eagle
#

if (script isEqualTo true) then {

#

clearly better

dusk sage
#

It literally should work

little eagle
#

well

#

or

#

you leave it out entirely

tough abyss
dusk sage
#

No commy

#

We are doing SQF

#

We leave it, just there

#

mkay

little eagle
#

if (script) then {

dusk sage
#

โŽ

little eagle
#

that is what I'm talking about

dusk sage
#

if (script isEqualTo true) then {

#

Come on

#

Get it right!

little eagle
#

inb4 isEqualTo false is faster than !

dusk sage
#

oh my

#

time to test that

jade abyss
#

It is? oh my

dusk sage
#

Doesn't seem to be

#

Only just

#

Guess it makes sense isEqualTo works for booleans

tough abyss
#

Hey @dusk sage

#

Would it be faster to pre-compute all spawn location for vehicles / infantry

#

and then spawn them

#

or spawn them on the position after it's retrived.

#

?

jade abyss
#

MP?

dusk sage
#

I'm slightly confused and what you're getting at tbh. What do you mean by or spawn them on the position after it's retrived.?

little eagle
#

spawn them at [0,0,0] and then use setPosASL

jade abyss
#

or setPosWorld

little eagle
#

well . that is rather difficult with vehicles with unknown model center

jade abyss
#

true

little eagle
#

you don't want them to be stuck or floating

dusk sage
#

Not sure it's answering his question though

jade abyss
#

Wich Pos does modelPosition give you? asl/atl/world?

little eagle
#

I don't know either

#

AGL

jade abyss
#

too many... AXL

little eagle
#

yup

dusk sage
#

AGL yeh

little eagle
#

I always translate everything to ASL and then back to AGL if the command requires it

#

...

jade abyss
#

or he takes those MemPos, modelToWorld/WorldToModel -> setPosWorld ๐Ÿ˜„

dusk sage
#

warning.png Appears to be broken

#

love it

jade abyss
#

oO

#

Oh my

little eagle
#

modelToWorld doesn't have anything to do with set/getPosWorld!

jade abyss
#

That smiley was meant as an indicator for a "joke"

little eagle
#

ok

jade abyss
#

You see: modelToWorld / WorldToModel ๐Ÿ˜‰

little eagle
#

Yeah. the names are confusing as usual

jade abyss
#

Yep

little eagle
#

no excuses this time. the commands are new...

dusk sage
#

Wew

little eagle
#

I think the absolute worst thing about this AXL desaster is this:

dusk sage
#

Reactions disabled for normal users

jade abyss
#

good ๐Ÿ˜„

little eagle
#

getPos reports AGL, but uses the lowest pathway LOD

tough abyss
#

@dusk sage Spawn them after storing all the positions

#

for them to be spawn'd at in an array

little eagle
#

setPos ignores the lowest pathway LOD

tough abyss
#

and searching the array

dusk sage
#

Oh right

tough abyss
#

faster than? spawning them and getting pos together

dusk sage
#

position array -> spawn VS get pos -> spawn

jade abyss
#

Spawn at [0,0,0]

tough abyss
#

Exactly.

jade abyss
#

then move to Pos

tough abyss
#

SO it would scan all valid points pushback into the array

#

then run { "VehicleClass" createVehicle _x; } forEach _preDeclaredArray;

dusk sage
#

1). Will it take longer to gather positions singularly?
2). It might be slightly quicker to not chain create them

jade abyss
#

then run { "VehicleClass" createVehicle _x } forEach _preDeclaredArrray; <- wrong

tough abyss
#

Fixed.

jade abyss
#
{
_a = "VehicleClass" createVehicle [0,0,0];
_a setPosAXL _x;
} forEach _preDeclaredArrray;
#

In mp

tough abyss
#

ah k.

#

That might be why the vehicles sometimes exploded when spawnd?

jade abyss
#

Sometimes, it takes up to 3-4min. No idea how that occurs. I was sitting with Awol from Epoch for a few days, testing some stuff around cause his BuildingSystem didn't updated the stuff properly (exchanging objects/recreating). Sometimes... arma is just messy.

#

Also:
SetDir before SetPos Geek

dusk sage
#

^

jade abyss
#

or even using a setVectorUp of the defined pos

tough abyss
#

Vehicles would occasionally spawn and go kaboom

little eagle
#

setDir has global effects in A3. The setPos afterwards trick is only necessary for when using the command on remote units

tough abyss
#

Anyone know why vehicles did that?

#

Exploded after spawning

little eagle
#

explode?

#

Arma

jade abyss
#

Collision with Objects + arma

#

๐Ÿ˜„

tough abyss
#

So.

little eagle
#

"PhysX induced damage"

tough abyss
#

Spawn it then set allowDamage false

jade abyss
#

And removing it 2-3s after

tough abyss
#

then allowDamage true

#

yeah

jade abyss
#

yet another workaround

#

"YAW"

tough abyss
#

I call ArmA 3's solutions

#

Hacks because thats what they are.

#

Dirty solutions to duct tape things together

jade abyss
#

But YAH looks stupid.

#

I stick with YAW

tough abyss
#

Although true hacks

#

are "elegant"

#

Not dirty.

dusk sage
#

Reminds me of our chat about dynamic formatting @little eagle

little eagle
#

I can't recall. formatting what?

dusk sage
#

Possible to dynamically format with the most disgustingly hacky function

jade abyss
#

urgs

dusk sage
#

I've never written something so horrible in all my life

#

But I laughed my ass off

little eagle
#

those macros are just to get around the limits of using commas in macro arguments

#

they're only used internally in other macros in that file

dusk sage
#
test = {
    params[["_str","",[""]],["_args",[],[[]]]];
    if (_str isEqualTo "") exitWith {""};
    if (_args isEqualTo []) exitWith {""};
    _test = str _args; 
    _test = _test select [1,count(_test) -1];
    _test = format["format['%1',%2",_str,_test];
    _test = call compile _test;
    _test
};

_silly = ["%1 %2 %3 %4", [1,2,3,4]] call test;
hint _silly;
little eagle
#

e.g.

#
#define LOG_1(MESSAGE,ARG1) LOG(FORMAT_1(MESSAGE,ARG1))
#define LOG_2(MESSAGE,ARG1,ARG2) LOG(FORMAT_2(MESSAGE,ARG1,ARG2))
#

_X is necessary, because you can't use macros with variable argument count

#

preprocessor limitation

dusk sage
#

Ofcourse, if only

#

Variadic macros

little eagle
#

yeah. I can never remember that word

rancid ruin
#

is it possible/easy to have an alias for a function?

#

like being able to use "sel" instead of "select" or something

jade abyss
#

#define sel select <- ?

rancid ruin
#

that easy?

jade abyss
#

that easy

rancid ruin
#

wouldn't even need a mod then?

#

nice, thanks

jade abyss
#

add a "macros.h" with the shortcuts/Macros you want to the mainMissionfolder and "include macros.h" in the .sqf files you wanna use it in.

#

or:
#define sel(Num) select Num

sel(0) == select 0

rancid ruin
#

ah so i can't just stick it in init.sqf and use it anywhere after?

#

gotta include the header file in every .sqf?

jade abyss
#

For sorting: Put it in an extra file

rancid ruin
#

i found a pretty scary script command

#

getStatValue "GamePlayedDays"

dusk sage
#

Steam ๐Ÿ˜„ ?

rancid ruin
#

it's scarier when you see it in systemChat though

#

there's no command to find the highest point on a map is there?

#

or the altitude range?

willow basin
#

Ay. got 707 hours on arma 3 but never played any mission / mod ๐Ÿ˜… all time spend for scripting. A2 is even worse.

icy raft
#

I gotta 1700 hours and spent only around 200-250 actually playing

#

So, I feel you @willow basin

#

@jade abyss That is actually pretty smart. Props to you!

#

๐Ÿ‘ ๐Ÿ‘ ๐Ÿ‘ ๐Ÿ‘ ๐Ÿ‘ ๐Ÿ‘ ๐Ÿ‘
Gonna steal that if you don't mind...

cedar bay
#

Does anyone have a script that would require to enter a keypad pin in order to teleport a player to a new position on map? :/ need it urgently

indigo snow
tough abyss
#

I have tons of custom spawned buildings in my mission. If i constantly delete/spawn buildings to show only the buildings near the local player on all clients but have all custom buildings on server, there is any performance gain?

vague hull
#

if you create them locally there is a performance gain on client only since they are only on client. I could imagine some strange behaviour .. would be better to just create them as simple object and leave em there all the time

#

Not having so many would be better

tough abyss
#

Pretty sure arma still has bug(design feature) were if you createvehiclelocal vehicles/buildings etc.
On client d/c those objects get transferred to the server as a local object (doesn't happen to ai)
So i would avoid createvehiclelocal on server with high population turnover
Should be easy enough to test if someone is bothered

tough abyss
#

@tough abyss @vague hull thanks. I will try simple object creation.

meager granite
#

local objects for buildings on all clients is terrible idea

#

any destruction will be desynced

#

Unless you spawn them with glass shattered right away make rest invincible

icy raft
#

And if players hapen to be inside the buildings, physics emulation for the rest of the clients+server would go completely nuts. So that way you would just succesfuly create the first physics-driven retro-DDoS attack network for Arma 3. (as player would be technicaly floating in a network scope)

#

Please note the dramatization.

little eagle
#

createvehiclelocal works fine for CfgVehicles. It will cause missing object errors when someone enters a local only vehicle and stuff like that

#

the biggest problem is, that they will be transfered to the server when the client leaves

#

and I think they are like global objects then

#

createvehiclelocal does not work for certain simulation classes in CfgAmmo. It will create global objects then

#

but yeah, don't use it, except for stuff like particle sources, light sources

steel mantle
#

Do anyone know if its possible to do have like a clickable cockpit and a MFD with a map and you click on somewhere in the map to designate target, kinda like map click for vanilla artillery but instead of pressing M to bring up your map, you have a MFD in the cockpit and can click directly on the MFD screen. Anyone know if its possible or have played around with it? Can example render the GUI to a texture?

meager granite
#

you can render gui to texture but not map

#

map is always drawn at absolute coordinates

steel mantle
#

Okay ๐Ÿ˜ƒ well a workaround is just to enter cordinates in a textbox on the GUI?

little eagle
#

just put controls over the map

rigid plover
#

So i am placing a smoke module down, how to i change the size / speed / opacity of the smoke in the init?

little eagle
#

click the module, change the numbers

rigid plover
#

there are no numbers

#

simply an init

#

but i know there are commands to change the particle effects

#

i just don't know how to implement them

little eagle
#

they don't work with the module

rigid plover
#

I have changed the smoke module before to create a sandstorm though?

little eagle
#

they're meant for scripted particle effects

rigid plover
#

I have forgotten how

little eagle
#

The module is just a wrapper for all those SQF commands

rigid plover
#

so how to i increase the size of the effect?

little eagle
#

the module just executes a predefined script

#

Pretty sure you click the module and edit the parameters

#

just like with the fire effect module

rigid plover
#

there is nothing like that with smoke

little eagle
#

displayName = "Color";
displayName = "Permanent effect";

#

these two should exist. anything else can not be changed with the module

#

or

#

use this one:
ModuleEffectsSmoke_F

rigid plover
#

Thats what i am using

#

is there an alternative?

#

oh wow

#

i see it now

little eagle
#

why? it has a ton of parameters

rigid plover
#

blind af ๐Ÿ˜„

little eagle
#

I think you placed the smoke GRENADE one

rigid plover
#

yep

#

perhaps ๐Ÿ˜„

#

oops

#

thanks

little eagle
#

yw

meager granite
#

Can you even have controls over map?

rancid ruin
#

like buttons on a map? yes

little eagle
#

why not? what else do you think the menu to place map markers is?

jade abyss
#

Magic.

buoyant heath
#

Sounds about right

meager granite
#

Wasn't map always drawn on top of everything? Can't recall for sure but I remember there were issues with it

little eagle
#

nope

#

some added controls for more options in ACE

meager granite
#

This is separate display

little eagle
#

So what?

meager granite
#

What about map and controls in same display?

little eagle
#

I'm not sure, but this display isn't actually seperate

#

wait

#

It's a child display of the map display

meager granite
#

Yeah, I was thinking about controls in same display

little eagle
#

OK. Maybe. The solution is createDisplay then

meager granite
#

Double checked it, map will draw on top of everything else when focused

#

If you focus other controls, they draw on top of map

little eagle
#

That happens to all selectable controls

#

But maybe the map has to be one for it to be able to scroll

meager granite
#

If you disable map you can't do anything with it but it is always behind everything else

#

So if you're going to static map you might be able to have controls over it

rotund cypress
#

Why is it when I do this command ['Open', true] remoteExec ['BIS_fnc_garage'];

#

And spawning in a vehicle

#

It only shows for me and no one else

little eagle
#

what shows only for you?

rotund cypress
#

Yeah the vehicle that im spawning in

little eagle
#

Did you place it, or only use the preview?

#

meaning close the garage after it's placed

#

?

rotund cypress
#

Ill check

#

I mean

#

I could interact with it

#

And drive it

#

Yep not spawning globally

#

tried ['Open', true] remoteExec ['BIS_fnc_garage',player]; aswell

little eagle
#

I'll open the function and take a look

#

maybe it's not supposed to work in MP

rotund cypress
#

thanks mate

little eagle
#

If only these BIS functions weren't written like ass

#

...

rotund cypress
#

D:

little eagle
#

I ctrl+F'd it for createVehicle

#

which is the command to spawn a vehicle

#

_center = _class createvehiclelocal _centerPos;

rotund cypress
#

createVehicleLocal?

little eagle
#

So it does not work in MP

rotund cypress
#

Means only locally?

little eagle
#

period

#

yea

#

only copy of the vehicle on your machine

#

not synched

rotund cypress
#

Ok I see

#

could I populate a menu with forEach?

little eagle
#

?

rotund cypress
#

Make my own menu to spawn vehicles

little eagle
#

and add it to the Garage/Arsenal?

rotund cypress
#

No

#

Make my own menu

#

and populate it with all arma vehicles

#

with like forEach cfgVehicles or somethingt

little eagle
#

sure. you can do whatever you want

rotund cypress
#

Yea

#

But

little eagle
#

there are people that recreate Eden as Zeus replacement

#

literally anything you want

rotund cypress
#

So I could use forEach command right?

little eagle
#

You can use any command you want. That is just a basic control structure / loop

rotund cypress
#

What would you suggest?

little eagle
#

What do you mean?

#

You're gonna need a lot more than just one forEach-loop to make something compareable to the Virtual Garage

rotund cypress
#

Yeah I know

#

But I already have a menu but for players that I can modify

#

But is it possible to populate the menu with {} forEach cfgVehicles e.g.?

#

not cfgVehicles

#

but some where else where it getst the vehicles

little eagle
#

sure

rotund cypress
#

What would the cfgVehicles command be?

#

what would I replace that with to actually work?

little eagle
#

You want to report all vehicles that are actually placeable? Because some are just parent classes that don't work on their own

rotund cypress
#

All vehicles that are drivable and placeable yes

little eagle
#

using CBA?

rotund cypress
#

Community Base Addons?

little eagle
#

yes

rotund cypress
#

No standard arma vehicles

#

Or I dont know why I would need CBA?

little eagle
#

Would make my task here easier if I could use some functions from there

rotund cypress
#

It's supposed to go on a unmodded server

little eagle
#
#define VEHICLE_SIMULATIONS ["car", "carx", "tank", "tankx", "helicopter", "helicopterx", "helicopterrtd", "airplane", "airplanex", "ship", "shipx", "submarinex"]

private _vehicleClasses = [];

{
    {
        private _config = configFile >> "CfgVehicles" >> _x;

        if (toLower getText (_config >> "simulation") in VEHICLE_SIMULATIONS) then {
            _vehicleClasses pushBack _x;
        };
    } forEach _x;
} forEach ("true" configClasses (configFile >> "CfgPatches") apply {getArray (_x >> "units")});

_vehicleClasses
rotund cypress
#

and then I modify that to be put into a display and rsclistbox?

little eagle
#

that just reports all the placeable vehicle class names

rotund cypress
#

It returns it in an array _vehicleClasses?

little eagle
#

L24 should probably be _vehicleClasses->_x

#

L25 str(_x)->_x (it already is a string

#

it's also missing the part where the CONTROL() macro is defined

rotund cypress
little eagle
#

L24 should probably be _vehicleClasses->_x
L25 str(_x)->_x (it already is a string

#

still

#

just the lines changed

rotund cypress
#

Okey but what do you mean by >L24 should probably be _vehicleClasses->_x? @little eagle

#

You dont mean that do you ? _vehicleList lbAdd format ["%1 %2", _vehicleClasses, _x];

tough abyss
#

I have head about AI in createSimpleObject. A house created with createSimpleObject will block AI vision but the house will not have AI path (for AI inside the house??). So if a house created with createSimpleObject is in the way of a AI, he will around the house or pass into it like a ghost?

#

WIKI says "AI will go thought walls" but i believe they say that to AI inside the building.

little eagle
#

they'll probably walk through the walls regardless of whether they started outside or inside

#

In fact. AI walks through walls of regular buildings when pathfinding and that is considered a feature by BI

rotund cypress
#

@little eagle Did you see my previous question?

little eagle
#

_vehicleList lbAdd _x

#

_vehicleClasses is a huge array, you won't be able to read that and you don't want it in every line

rotund cypress
#

Yeah _x returns the forEach command?

#

so forEach allplayers

#

then _x return all players

little eagle
#

one of them

#

the loop is done for every element in the array you loop through

rotund cypress
#

But I want all vehicles to show?

#

Then it will only show one?

little eagle
#

it will add one

#

and then do the loop again

#

and again

#

each time with a different _x

rotund cypress
#

ah ok i see

little eagle
#

a different element from the array

#

a loop

rotund cypress
#

yeah so forEach is doing the looping?

little eagle
#

yes

rotund cypress
#

And then I just do a dialog which does the createVehicle on the given selected vehicle in the list?

little eagle
#

lgtm, but I have no idea what the point of format ["%1", _x]; is compared to just _x. It already is a string

rotund cypress
#

Ok so doign lbadd _x will be fine?

#

_vehicleList lbAdd _x;

jade abyss
#

@rotund cypress At least try it, before you ask if that works.

rotund cypress
#

Yeah Ill do that

royal abyss
#

lets say i play a trigger to call a sqf script is it possible to stop it after?

meager granite
royal abyss
#

in arma 3 its "exit" right?

#

alright thanks for the help @meager granite ๐Ÿ˜ƒ

#

if a trigger is set on "is present" and ill leave the area of the trigger who executed a sqf that doenst stop the script right there needs to be a check then or ?

#

or could i place trigger arround to "terminate _script;

#

"

little eagle
#

exit is a SQS command and does nothing in SQF

#

the script ends, when you leave the main scope

#

either when it reaches EOF or exitWith

#

You can terminate it at any point using:
terminate _thisScript

#

Idk if that works for triggers, but it does for spawn and execVM

#

I guess you can also use breakOut if you named the main scope using scopeName

tough abyss
#

@little eagle this happens with any building that don't have paths set? (AI walk through walls).

little eagle
#

it happens with buildings on vanilla Stratis

#

they walk through doors, sometimes walls

#

doesn't matter what you do. It's the pathfinding

tough abyss
#

Use createSimpleObject to create buildings don't make this worse?

little eagle
#

I never use that command

#

Create object with given shape defined as path to .p3d model. Supported LODs include Geometry, Fire Geometry, Roadway, View Geometry and ShadowVolume. Supported features include collision, texturing, animation, penetration, AI spotting occlusion, and surface specific sounds (like footsteps). Unsupported features include PhysX, damage, AI pathfinding (causes walking through walls), and built in lights.

tough abyss
#

@little eagle thankyou, i will do some tests and return the info here.

little eagle
#

Unsupported features include [...] AI pathfinding (causes walking through walls).

#

pretty clear the wiki

#

Good wiki entry. GJ KK

tough abyss
#

So they are stating the obvious?

little eagle
#

They're documenting expected behaviour

#

Idk if it's true or not

#

I don't see why it wouldn't

#

only one way to find out

tough abyss
#

Yes

#

I was just asking in case someone have tested that or "witnessed" AI in simple objects buildings.

frozen obsidian
#

does anyone know if it was already created or if its possible to create script which would create northern lights on sky ?

round scroll
#

is there a way to create a 'real' radio in arma3, one that can be tuned into from several places and turned off again while staying in sync all the time with the different sound subscribers?

noble juniper
#

yes

#

but it can become complicated.

#

TFAR is your best bet, with a special modifyed sound bot.

#

thx for that idea by the way

round scroll
#

hmm, so relying on an external dll for team speak to do it?

noble juniper
#

yes.

#

that is my best bet, and the way i will actually implement it later

round scroll
#

cool, good luck. Too bad if it's not possible with vanilla arma

halcyon crypt
#

is that 'real' radio as in music radio or 'real' radio as in walky talkies? ๐Ÿ˜›

noble juniper
#

there could be a way, but as far as i know, noone ever tryed it

#

i though music radio

halcyon crypt
#

muting and unmuting (if even possible) a sound source could work but then there's still the syncing issue

round scroll
#

both, one for AFVN radio station and one for walkie talkie chatter

#

I guess for a very limited range of receiver one could spawn 'radio objects' and use say3d on them in parallel and teleport them away when turned off and back when turned on, but thats an ugly hack

halcyon crypt
#

aren't most of the unintended/unsupported things people do? ๐Ÿ˜›

noble juniper
#

the normal radio for communication is actually fairly easy

#

based on the normal channels that arma has, that you can modify through sqf code.

#

And if that are too few channels or too few options with those, you can take custom radio channels

#

i forgot what the command was, but you have up to 10 custom radio channels that you can add and remove when ever you like

#

you could misuse those as 10 different frequenzys / channels.

round scroll
#

how does a player tune into those channels? Or is it via sqf only and the std channel stay working?

noble juniper
#

biggest advantage, you can add and remove then when ever you like

#

via sqf only, and the normal ones stay working.

#

Sqf only means, you can put that on some event like button press

round scroll
#

the idea would be that a player has a radio item in his items and can then tune to that radio

noble juniper
#

radioChannel (Add / Create/Remove/SetCallSign/SetLabel)

#

those 5 commands belong together

round scroll
#

hmm, so the server needs to support VoN?

noble juniper
#

and with those, you can achieve that .

#

yes

#

works over VON

#

in addition, you could disable all side and global channels, and dedicate 3 to 4 custom channels to that

#

the only downside to custom channels is that you only have 10 availaible

#

the 11th won't work

#

how you could technically implement this.

#

the other downside is, that the player needs to actualy have that channel selected.

#

through . or ,

round scroll
#

I guess one would define CfgRadio playbacks in the mod and then use directSay?

#

yes, that be awkward, hmm

#

also only the player would hear it, not anyone nearby

noble juniper
#

is it about scripted radio, like a sound file or actual player conversation ?

round scroll
#

scripted radio, a combination of sound files

noble juniper
#

then i talked shit.

#

Sorry though it was about player to player.

round scroll
#

thanks anyway, interesting ideas nevertheless

noble juniper
#

if you want other people to hear it, you have to go the rout of say3D or soundSource

#

soundsource can be turned of when ever you like, say3d plays all the way through.

round scroll
#

soundsource?

noble juniper
#

say3D is attached to the object that is playing it, soundSource is stationary.

#

i think it was soundSource

#

il look it up

#

createSoundSource

#

the command is playsound

round scroll
#

thx

noble juniper
#

i guess, your cfgRadio solution is the one that is used by bis

round scroll
#

so we're back to creating an object, using say3d on it remotely and then moving it away when the radio is turned off ๐Ÿ˜ฆ

noble juniper
#

do you desperately need the "turnoff "feature?

round scroll
#

yeah, it was a feature of the a2 radios, needs to be there

noble juniper
#

has the soundsource to move ?

#

or is it stational ?

round scroll
#

yes, it might be attached to a vehicle like a jeep or helo

#

sorry, many requirements there

noble juniper
#

no problem, a nice thing for me to get my head smoking about

#

wait

#

say3D has a bug

#

if you kill the object, it stops

#

try using something that is alive

#

so the object that you use for playing the sound, delete it, or kill it with setDamage 1;

#

@round scroll sorry, i tend to just go on in one direction, probably the wrong one..

round scroll
#

@noble juniper no worries, thanks for your ideas. I'll give the say3D a try on the weekend and will report back how far I got. If you want to experiment with it too, just send me a PM here, would be appreciated. Need to logoff now, bye

little eagle
#

say3D has a bug
if you kill the object, it stops

#

sound intentional to me

noble juniper
#

no, its actually declared as a bug. atleast, you can find it in all the bugTrackers and its i think even mentioned on the page of that command itself.

#

but its a while back, when i actually looked into that exact matter so please excuse if i forgot something

little eagle
#

I don't see any bug report there

#

The command is meant for units to speak lines

#

they even move lips

#

of course they would stop talking when getting shot and dying

noble juniper
#

you are right, looking at it, it now seems intentional.

#

the "issue" aparently arose in A2 times, atleast thats what Benargee said.

#

@little eagle thx, i learned something again.

little eagle
#

the comment section on the wiki is usually shit though

#

Icaruk This command is local.

#

It's not

#

It's global args, local effects

#

...

noble juniper
#

Ah, thats what that means ... thx again for making me look that up ๐Ÿ˜„

little eagle
#

it's pretty important, especially for what you're doing ๐Ÿ˜

noble juniper
#

i was using it, i just ignored the tag

#

but i haven't released any scripts in like a long time, so you can't check that

steel mantle
#

Do weapons like missiles or bomb have to be a proxy or can it just be a normal P3D? was thinking about doing animations on missile

little eagle
noble juniper
#

@little eagle what are you up too ?

little eagle
#

reading chats

#

replying

#

showing off my mad Arma skillz

noble juniper
#

xD

#

what skillz in particular ?

little eagle
#

Figuring out some class inheritance problems for the guy that does the new TFAR update

#

width of hexagons /shrug

noble juniper
#

cool, have fun

rancid ruin
#

you said the hexagons was easy

#

someone find him something more challenging

tough abyss
#

As I said hexagons aren't easy.