#arma3_feedback_tracker

1 messages ยท Page 14 of 1

gaunt depot
#

Where is this init? CfgVehicles?

#

I'm pretty sure Init is global in CfgVehicles too.

brazen girder
# gaunt depot Where is this init? CfgVehicles?

At first i thought of putting it there, but someone told me thats only run for who the vehicle is local to, so not fitting for this.
Now i want to place it somewhere else, and try to find a working variant of the script.

brazen girder
gaunt depot
brazen girder
gaunt depot
#

add some logging to test yourself

#

Something like diag_log [_this select 0, local(_this select 0)];

brazen girder
#

Im gonna figure out that part later.
I could also just do it per EH, when someone gets in, or changes seats.

The problem is, i think the code itself doesnt really work.

if (isServer) then
{
  _this select 0 spawn {while {true} do
  {
    waitUntil {sleep 1; owner gunner _this != owner driver _this;};
    (group (driver _this)) setGroupOwner (owner (gunner _this));
    _this setOwner (owner (gunner _this)); sleep 1;
   };
  };
};
gaunt depot
#

Add logging to see where it gets what what states of conditions are

brazen girder
gaunt depot
brazen girder
gaunt depot
#

No, vehicle config

#

actually vehicle init in 3den should also work

brazen girder
gaunt depot
#

no idea about zeus, I don't use it much

#

Except for 3den init you'll need to change _this select 0 to this

#

no underscore

brazen girder
gaunt depot
#

diag_log []; everything and check RPT

brazen girder
young oasis
#

init event is raised on all machines where the object exists

#

Whoever said it's raised only where the object is local will have fun times when someone runs their code on mutiplayer

brazen girder
uncut briar
#

yes

solid marten
solid marten
#

I dont know who that is

brazen girder
#

From server arma 3 scripts and goodies.

solid marten
#

still no idea

outer frigate
brazen girder
# solid marten still no idea

Do you know any working approaches to this locality/group issue?
In MP, even vanilla stomper doesnt react to player driving inputs from gunner if they didnt spawn it themself as zeus.
Im gonna spend the next few days testing how to achive it.

Any pointers would be very helpfull and shorten that time. ๐Ÿ˜Š

brazen girder
solid marten
brazen girder
# solid marten not sure what issues you are having

How to recreate:

  1. Join MP server with another person.
  2. Spawn UGV Stomper as Zeus.
  3. Other player connects to gunner, tries to drive.

= doesnt drive

While it works for who placed it.

Bypass:
4. The other player connects to driver.
5. Presses WASD until it reacts.
6. Connects to gunner.

= now drives for him

Problem is, im working on assets that dont have the driver available, or are semi unmanned, where this bypass only works for effectivecommander, aka who was first in the vehicle, which can be quickly messed up in the heat of action

Im banging my head against this since days or weeks. ๐Ÿ˜”

Sa-Matra suggests it has something to do with "owner" of the vehicle and "groupowner" of the ugv AI.
I think "effectivecommander" plays an additional role.

devout wave
#

I'm not certain this is Zeus-specific. I've occasionally encountered this behaviour - temporarily non-responsive drivers when controlling a UGV gunner on DS - with Editor-placed UGVs too.

solid marten
#

which branch?

devout wave
#

For me, stable, but occasionally. Sounds like the other guy has it more often.

solid marten
#

there were changes so curious what is it like on dev/prof

regal nimbus
#

uh, remoteControl switched from LA to GA in 2.14...

regal nimbus
#

This feels like a bug given the command description.

brazen girder
unborn acorn
solid marten
#

which inits are "script init"s?

unborn acorn
# solid marten which inits are "script init"s?
class CfgVehicles
{
  class Land_Laptop_unfolded_F 
  {
    class EventHandlers
    {
      init="_this call compile preprocessFileLineNumbers 'path\my_script.sqf'";
    };
  };
};

my_script.sqf not work if Zeus spawn this laptop, but works if placed in Eden

brazen girder
#

On the topic of cfgvehicles EH init:

He wrote this:

ehs run on the vehicle where it is local..  if they are baked into a mod.   loops with server checks when a ugv is spawned with zeus, and is possibly controlled by another person , prob not best approach  as the locality is going to change.

Did i misinterpret, or is this false information?

#

He said i misinterpreted him, which is possible.
So i removed his name. He is a very helpfull person, and i dont want anyone thinking too bad about him.

Im wondering how would you interpret it?

solid marten
#

if true, and I need to test this, this would mean zeus placed assets would not init properly on other clients and JIP. This is pretty major, unless intended, which I am trying to find out as well

solid marten
paper lava
#

To be clarify UD1E not the one who is "someone", just statement here for not blaming my friend

solid marten
#

I don't see any reference here to init running only locally

brazen girder
brazen girder
# solid marten I don't see any reference here to init running only locally

Could you elaborate, im not a native english speaker, and want to prevent further misinterpretations. meowsweats

Do you mean with here:
A) Data about how the game works/ is supposed to work.

B) Leons screenshot.
(The context of the conv was me wanting to use cfgvehicles EH init.)

C) Or the copied quote earlier, which i might unfortunately have misinterpreted?
(The context of the conv was me wanting to use cfgvehicles EH init.)

gaunt depot
#

Started using custom channels on live server, getting

2024/03/18, 22:15:04 Unexpected IsPlayerOnChannel 6
2024/03/18, 22:15:04 Unexpected IsPlayerOnChannel 9
2024/03/18, 22:15:04 Unexpected IsPlayerOnChannel 7
2024/03/18, 22:15:04 Unexpected IsPlayerOnChannel 9
```RPT spam regularly
gaunt depot
# solid marten what game version?
Original output filename: Arma3Retail_Server_x64
Exe timestamp: 2023/09/29 15:32:52
Current time:  2024/03/18 04:22:16

Type: Public
Build: Stable
Version: 2.14.151058
solid marten
#

so this is before I did tweaks

undone vale
brazen girder
solid marten
brazen girder
# solid marten I was referring to the screenshot. A few pointers. If you want to know something...

Ok, i only refered to the copied quote i mentioned 22:53 CET.
Not at all to the screenshot.

ehs run on the vehicle where it is local..  if they are baked into a mod.   loops with server checks when a ugv is spawned with zeus, and is possibly controlled by another person , prob not best approach  as the locality is going to change.

As the whole topic of my conversation with them was using cfgvehicles EH init i likely misunderstood them refering that in this quote,
no drama was intended, just finding out how cfg vehicles EH init actually works, as i thought i got conflicting informations.

For that we ofc should have changed earlier to the scripting channel, as finding a workaround to the initial ugv bug is seperate from reporting it.

When i find a solution to the UGV bug, i will ofc share it. ๐Ÿ˜Š๐Ÿ‘

solid marten
#

Really juicy bug actually

#

there have to be tickets it is so obvious

gaunt depot
solid marten
#

basically custom channel markers were not sent to JIP

gaunt depot
#

oh, alright

#

How does it even work? You can't add JIP into radio channel until they join

#

No markers on custom channels for JIP ever?

solid marten
#

not to first time joined not to lobby drop ones

gaunt depot
#

Also been using custom channels for few days now, practice shows that even if I do radioChannelAdd only on server, players randomly get kicked off custom channels. Happens once every few hours, couldn't catch it myself yet but seen videos of it happening randomly.

solid marten
#

now you can if you named unit and have ai controlling it when you are not home

gaunt depot
#

Not mass kick apparently, happens mid player's life

solid marten
gaunt depot
#

Just had a thought, maybe perf joining stable messed it up?

solid marten
#

no they won't be it is networking changes need all clients and server the same

solid marten
#

you have option to enable disable ai in role selection right?

gaunt depot
#

My mission setup is following: Everyone joins as civilian Logic unit, then createGroup createUnit their own unit after they pick side in-mission, then you ask server to put your unit into custom channels.

solid marten
#

if unit doesn't exist you obviously cannot add it to channel no?

gaunt depot
#

Only if they join AI slot then?

solid marten
#

i don't get it

#

they are created on client if client player is on the list

gaunt depot
#

Ooh, maybe I don't understand how it works. JIP get ALL markers in game and only show ones that are in their current channels?

solid marten
#

no jip gets markers created that match condition

#

player being on the list is condition for custom markers

#

player being the leader is for command chat

#

etc etc

gaunt depot
#

But being a leader and in custom channel is something that changes mid game, how does it work then?

solid marten
#

that is how JIP works

gaunt depot
#

Anyway I haven't tested JIP markers on custom channels yet, maybe it all just works and I have no idea how JIP functions in regards to markers

solid marten
#

mod game != jip so there are other mechanisms

solid marten
gaunt depot
solid marten
#

hence error message spam

#

yes please

gaunt depot
#

I still haven't made a ticket about my local custom channel idea, I wanted to ask you if its technically feasible at all.

#

If I understand it right, clients list on custom channels is basically a list of recipients of your chat and voice messages?

solid marten
#

not now please I have a lot of things to finish

gaunt depot
#

Alright

gaunt depot
robust quiver
unborn acorn
gray wharf
#

purged, thanks

alpine tulip
#

But why they don't promote Pattaya

alpine tulip
#

I kinda thinking about control (GUI elements) filters

  • colorizeR, G, B
  • hue switch
  • saturation
  • brightness/darken
  • blur
  • mirror V/H
    And blend mode
  • Normal
  • Addition
  • Substract
  • Multiply
  • Overlay
    or something, maybe transfer Alpha/transparency from other source is cool to have.
    I know, I know. Say is easy, do is not. a Japanese proverb told me enough, just my wish
gaunt depot
#

At least extracting alpha from a picture

#

This way you could create custom shadows through ui2texture to fix poor visibility for many in-game icons

alpine tulip
#

Darken texture and blur it, call it a dropshadow

brazen girder
robust quiver
solid marten
gaunt depot
#

Here is a video of it happening. "Side chat" here is actually a custom channel, default side chat (channel=1) is disabled.

#
  1. Player was hearing people speak in custom channel
  2. Voices stopped randomly, it auto switched to global channel
  3. Cycles through all channels, custom channel (side channel) is not there
  4. Goes to settings which lets you join/leave russian side channel, flips there switch which asks the server to radioChannelAdd them back into custom channel and it works, they're in custom channel again
#

Info so far:

  1. Happens randomly, not on death or respawn
  2. Channel auto deselects
  3. Apparently only some players get removed from the channel, not everyone at once
#

All this happens in a setup where only server ever executes radioChannelAdd and radioChannelRemove, clients never do

solid marten
solid marten
gaunt depot
solid marten
#

but the client was still able to overwrite

#

in new version client sends request to the server and server add to the list then sends new list to everyone including itself

gaunt depot
#

The one match for radioChannelAdd and radioChannelRemove, done on server side

#

Seems like there is some other bug that throws players out even if clients list is handled only by server ๐Ÿค”

solid marten
#

but you can still execute on client if you have access

gaunt depot
#

Sure, but I don't think there is anything in the game that uses custom channels

#

Unless you mean there is a cheater randomly kicking players out, I don't see how this could ever happen by itself

#

What's interesting is that this playing was living (and in channel) for quite a while before they got kicked off, they had to buy the tank and drive to action, they definitely shouldn't be first or last entry in that list

#

Something related to groups breaking maybe?

#

When server adds new client to the list, maybe it validates existing ones?

solid marten
#

in order to get added removed there has to be a message I will have a look at simulation in case it has some sort of cleaning that could cause it, but really this should be tested on the new build

gaunt depot
#

This is the only place where client even asks server to add or remove itself from custom channels

#

You always only ask to add yourself into _side_channel, never ask to get removed from it.

#

Yet player got randomly kicked from it mid gameplay somehow ๐Ÿค”

#

Option one: You get added to custom channel 1 and 2
Option two: You get added to custom channel 1 and removed from 2
Gameplay: You get randomly kicked from channel 1

#

Feels like some deeper MP bug somewhere ๐Ÿค”

dusky wigeon
#

Are these things happening without mods?

solid marten
#

phew Finally made it sync JIP custom radio markers properly with joining player

#

so if you have AI enabled and added AI unit which is placeholder for player to the channel, players joining into that slot will see markers on this channel

sleek scaffold
#

Is it a known and accepted thing that:

  • If a player unit has a custom texture set by the mission maker for example:
#
this spawn {sleep 2; _this setObjectTexture [0, "g_orange_kakhi.paa"];};```
#

And the player uses the Arsenal UI with for example:

#
["Open", true] spawn BIS_fnc_arsenal
#

It resets the player's uniform textures to the vanilla textures of the uniform?

gaunt depot
#

Its arsenal re-adding the uniform

sinful kettle
#

does he just open the arsenal or also selects a new uniform?

sleek scaffold
sleek scaffold
# gaunt depot Its arsenal re-adding the uniform

Maybe Arsenal shouldn't re-add the uniform on load automatically unless the player clicks on another uniform? And do a getObjectTexture on load and try to re apply the custom texture if the uniform did not change when closed from what it was when the UI was opened?

sleek scaffold
sleek scaffold
solid marten
gaunt depot
solid marten
#

yeah so what won't work?

gaunt depot
#

If I understood you right

solid marten
#

if you give me rough repro I can test and make sure it works

solid marten
#

is that a yes?

gaunt depot
outer frigate
#

is there any reason preproc support cannot be added for rvmats? you can do it through cmd with cfgconvert so wondering if theres a technical reason or just nobody's bothered yet

alpine tulip
#

They should do. What's your usage?

outer frigate
#

speeding up importing things by bulk

#

wait i may be thinking of relative classes that dont work in rvmats

stone tree
desert trench
#

Fault address: 2E5CD3E4 01:0009C3E4ll C:\Windows\SYSTEM32\ntdll.dll
Prev. code bytes: 20 00 00 00 F6 04 25 08 03 FE 7F 01 75 03 0F 05
Fault code bytes: C3 CD 2E C3 0F 1F 84 00 00 00 00 00 4C 8B D1 B8

#

worth to drop frozen.mdmp on FT with this?

#

could be related to our EMM extension fetching servers given the rpt context

gray wharf
alpine tulip
#

Do you mean, uh, re-introduce aerodynamic things?

gray wharf
#

rough landing, wind effects, auto-trim, stress damage yeah ๐Ÿ™‚

ember flint
#

can we bring back Super AI as well?

ember flint
desert trench
exotic pelican
#

Bug in Arma 3 editor?

  • Go into 2D view (by pressing m)
  • Move camera by clicking the middle mouse button (dragging the camera icon doesn't cause the issue in question)
  • Try rotating the camera with shift click
  • Camera moves back to where it originally was before you middle-click teleported it
  • Going back into 3D view and then back into 2D view fixes this though for each time you need to do it
azure crane
#

Who rotates camera with shift click?

near cedar
#

ahh on the 2D map view

#

damn i didn't know that was possible ๐Ÿ™€

west onyx
gaunt depot
#

Can't test your fix as its not deployed yet

#

In repro you start as civilian, then selectPlayer createUnit a BLUFOR unit and then join a custom channel

solid marten
#

Yeah doesnt sync markers

gaunt depot
#

So they can be script-synced when needed

gaunt depot
#

@solid marten

cc = radioChannelCreate [[0.96, 0.34, 0.13, 1], "Custom channel", "%UNIT_GRP_NAME (%UNIT_NAME)", [], false];
cc radioChannelAdd [player];
diag_log(radioChannelInfo cc select 3);
deleteVehicle player;
diag_log(radioChannelInfo cc select 3);

=>

21:47:53 [B Alpha 1-2:1 (Sa-Matra)]
21:47:53 []
#

So deleteVehicle player actually deletes something, fucks up something over network so that custom channel no longer sees the player?

#

Wonder what other bugs this causes if it does

gaunt depot
#

Doing deleteVehicle on remote player also removes that player from radio channel

#

It re-adds back properly though

gaunt depot
solid marten
#

ah yeh this is probably the cause of strange removal

#

it should remove units that are on the channel and deleted it has been fixed as well

#

but yeah looks like the cause of that bug

#

i will make it proper sync markers on add remove from channel just need to find where is the best place to put

gaunt depot
#

How does deleteVehicle does anything if it can't delete active player unit though?

#

Is there a specific action to remove unit from radio channel within command?

solid marten
#

it was removing real player from channel and then aborting because of bug

#

look we need to sync the testing as well, because there were fixes

gaunt depot
#

Thought maybe deleteVehicle player messed something up over the network, causing unit to be deleted from radio channel

solid marten
#

no i just told you it removed player unit from the channel then aborted because you can't delete player

#

now it aborts straight away

gaunt depot
#

But yeah, I guess something somewhere tries to delete player and thats how they get removed from radio channel, mystery solved

unborn acorn
gaunt depot
#

I guess there needs to be a way to swap markers when your side changes, probably through script of mission config setting, for backwards compatibility

solid marten
#

you mean when you select player into blufor they still see civilian markers?

#

for backwards compatibility
you are not supposed to have access to markers you shouldnt have access to, there is no backward incompatibility, it is a bug

gaunt depot
#

basically it uses lobby slot side for everything, regardless of your actual side

solid marten
#

it is not, it just doesnt delete markers you have on your client when you change side and doesnt create markers that are on your new side

#

the marker control is done via create delete this is why you have local version of marker commands and thats why global marker command sync everything

gaunt depot
#

Player 1: Two markers placed, one as civ, another as BLUFOR.
Player 2: Sees only one marker. Joining BLUFOR keeps civ marker, no BLUFOR marker

#

Player 2: Rejoins, sees both markers, one placed as Civ by Player 1, another as BLUFOR as Player 1

#

Looks like it broadcasts marker as BLUFOR (actual side) but saves it for JIP as Civilian (lobby side)?

solid marten
#

its jip sync it works but was broken for custom. JIP is fine it is dynamic syncing that is...absent

#

broken for custom ...well technically it didnt exist either

gaunt depot
#

Not sure what's the best way to solve it, have client request all markers each time they change side, or all custom channel markers each time they join/leave custom channel?

solid marten
#

both

gaunt depot
#

Considering the fact that you get removed from custom channel each time you die, won't it be too excessive to have server send you ton of markers each respawn?

solid marten
#

tonnes? how many?

gaunt depot
#

Yeah I'm exaggerating I guess, doubt it will be more than 100 markers or something

#

Unless somebody does a polyline painting somewhere off map

#

still not that much data

solid marten
#

nothing

alpine tulip
#

Sometimes I wonder, why/what is the condition to detect a synchronized object in-game (not in-Eden)? Even if in Eden it can successfully connect an object to an object, synchronizedObjects does not return anything if the object is e.g. a prop?

#

I know Eden connection is somewhat different with regular and old synchronization way, it actually confuses me why it doesn't work or why it is designed like this

gray wharf
alpine tulip
#

But it still is very confusing because you can sync in Eden but not in game

#

Very unreasonable IMO

gray wharf
#

removed spam, thanks

alpine tulip
unborn acorn
desert trench
#

group eventhandlers dont fire when the player order 'combat' 'safe' 'stealth' etc
is this considered a bug/worth to make a ticket for?

limpid rune
#

only seems to trigger from auto combat

#

and waypoints I believe, but command menu doesnt

regal nimbus
#

Command menu only sets unit behaviour, not group behaviour IIRC.

gray wharf
#

new record! praise_the_sun don't think I'll ever beat that one

strong salmon
gray wharf
#

created โ†’ banned

strong salmon
#

That's short indeed
Very short

valid ice
#

Some vanilla factions wipe out parent inheritances (MAN, CAMANBASE) for stuff like EventHandlers (Looters - Contact, Syndikat - APEX, FIA - Vanilla) down the line.

Is this documented somewhere?

Was testing yesterday but seems to only happen with Greenfor units, not sure about other sides/factions, as Vanilla Blue and Red units were not affected.
I can see why CBA has its own function for that after all.

uncut briar
#

Is this documented somewhere?
not really, it's just bad code on BI side. Some story units have broken inheritance too.

tight wren
#

So, I just discovered an issue within the vehicle respawn module, that any vehicle of any type which has been synced to the module, is teleported to debug corner upon destruction.

How to reproduce:
Be on the latest arma 3 version 2.16

  1. go to eden and place down a helicopter, tank, wheeled, car or boat.
  2. place the module: Vehicle Respawn (ModuleRespawnVehicle_F) in the mission.
  3. Sync the vehicle to the module
  4. set the following parameters (I haven't tried if other parameters change the behavior other than the wreck parameter)
  • delay is empty
  • Deserted Distance is set to 1500
  • Tickets is left empty
  • Expression is left empty
  • Position: starting position
  • Position selection: Oldest
  • Wreck: Can be both preserve or Delete or Delete with an explosion effect.
  • Notification: Enabled
  • Forced Respawn: Disabled
  • Respawn when disabled: Disabled.
  1. Place a player slot in the mission.

  2. set up a way to destroy the vehicle either from a trigger on radio command. Or just spawn an A.I. from zeus with a rocket launcher.

  3. Set the player slot up in such a way that it also has zeus access through a game master module.

  4. Start playing the mission.

  5. Destroy the vehicle and watch how its teleported instantly to the debug corner.

  6. bonus: if lucky, the helicopter now gets stuck in a perpetual loop of spawn, take damage, be destroyed, respawn within 10 seconds. and it begins from the start.

I attached an rpt file in a zip file.
I have no crash dump.
Link to a video about the bug on my yt. it can be found through the following url:
https://youtu.be/4-DA_1urPAA

Another issue? I am not sure if this is part of the same issue or if this is something entirely different. Though the reproduction method is the same.
https://youtu.be/TTSfsQQMNds
During the testing of this, I had no mods loaded.

This is recorded on version 2.16 of Arma 3, on 27-03-2024 at 09:40am local time (Amsterdam). This video is an explanation of how I set up the mission file with the Vehicle Respawn Module and it's behavior. After the video was taken, I also tried with a Marshall APC, A HEMTT car, The NATO Tank (Slammer), a Wipeout and the Scorcher Self propelled ...

โ–ถ Play video

This is recorded on version 2.16 of Arma 3, on 27-03-2024 at 09:55am local time (Amsterdam). This is mere minutes after the previous video I took to report an issue with the Vehicle Respawn module. And I started noticing behavior of the Ghost Hawk getting stuck in a perpetual destruction loop. After it being destroyed once by me, upon respawn it...

โ–ถ Play video
limpid rune
valid ice
azure crane
#

does this mean a thing is fixed?

regal nimbus
#

In theory :P

fading tulip
#

when inside of a building submerged in water during rain, the rain sound shader will take priority over the house interior filter. Water inside of a structure makes the sound of the outside rain sound as if it was ignoring the structure altogether and going through it landing on the water inside, e.g. same as if standing outside. When distancing from water, the interior filter starts to apply. The rain also sounds louder when inside the structure in this case too.

near cedar
#

So in BIS_fnc_fireSupportVirtual, there is a call to say3D with default parameters. The trouble is, that the sound played has a radius of 100m. The shells by default are created at 250m and have a speed of 150m/s. As a result, you can hardly hear the sound play properly. The sound is 3s long, the shell flight time is 1.6s.

#

This leads to a suboptimal effect when using the function with default parameters, or while using Zeus fire support which i think also uses the function (because the sound cuts of there too)

#

I had good results with making the shell spawn at 75m with a speed of 25m/s, but might be good to change the defaults?

unborn acorn
near cedar
#

Well I don't change the say3D in the function, just the shell spawn height and speed, and the sound plays correctly. So in this case i don't think it's the say3D itself is a problem, just how it interacts with the shell's timing. The mortar sounds used by default are 3s long, so the shell needs to be falling for that long, and players should be close enough to hear it

devout wave
#

The radius is also the problem, because the sound is played from the shell itself as soon as it spawns (250 metres in the air). With the radius being 100m, for the first 150m of the shell's descent, it's too far away for the sound to be heard.

near cedar
#

well yeah true that way it is also a problem. I worked around it by spawning the shell at 75m, since BIS_fnc_fireSupportVirtual doesn't expose the audibility radius, just the sound files/class names themselves. Maybe it should expose the var, along with setting the radius of the say3D call in the function to 250m and reducing the fall speed to 83.3m/s.

(But either way you want the sound heard for 3s, which can be achieved with or without modifying the sound radius)

gaunt depot
#

Fall damage on units gets attributed to lastEntityCausingDamage by the engine thonk

#

Is this a recent change or it was always like this?

gaunt depot
#

Collision from objects too

#

So basically if unit was shot by another unit and that unit then falls or gets hit by a car or some physics object, all damage will be attributed to shot instigator for some time, including subsequent death from that collision

#

But not to context>2 (fake) event handlers

#

I feel like 80% of me developing is building crutches around undocumented and unasked for engine bullshit

gaunt depot
#

Fire (particle) damage doesn't

rare zephyr
#

I encountered a bug last night where players got desynced in player-hosted Multiplayer. After leaving a vehicle, the player leaving it would seemingly stay inside the vehicle on the other players screens. If the player got into another vehicle and left it, another body of that player would stay in that vehicle on the other players screens.
I haven't looked further into it yet, is that a known thing that can happen or should i try to reproduce it?

#

It happened in 2 separate sessions with different hosts btw

solid marten
solid marten
paper lava
#

Is that bug in this file? functions_f\modules\fn_moduleinit.sqf for line 29 that having extra backslash at the end

_isPersistent = getnumber (configfile >> "cfgvehicles" >> _logicType >> "isPersistent") > 0 || getnumber (configfile >> "cfgvehicles" >> _logicType >> "isGlobal") > 1;\
_is3DEN = getnumber (configfile >> "cfgvehicles" >> _logicType >> "is3DEN") > 0;
paper lava
daring wagon
#

Looks like a leftover.

near cedar
gleaming dawn
# rare zephyr Stable 2.16

Running also into the same issue today on a dedicated server of mine - latest Perf. version (2.16.151648)

Can't test it on dev sadly right now

solid marten
#

Yeah this is fine preprocessor removes it

solid marten
outer frigate
#

bumping dis because i just remembered about it would be veri nice

unborn acorn
paper lava
# paper lava Is that bug in this file? `functions_f\modules\fn_moduleinit.sqf` for line 29 t...

Bug #1 functions_f\modules\fn_moduleinit.sqf

_isPersistent = getnumber (configfile >> "cfgvehicles" >> _logicType >> "isPersistent") > 0 || getnumber (configfile >> "cfgvehicles" >> _logicType >> "isGlobal") > 1;\

Bug #2 functions_f\systems\fn_supplydrop.sqf

case 0: {_paraName = format["Parachute%1",_side],;}; //ParachuteMediumEast or ParachuteMediumWest not "FLY" (that spawns 150 m above ground) }; 

Bug #3 functions_f\variables\fn_variablespaceadd.sqf

if (isnull _object) exitwith {debuglog "Log: [variableSpaceAdd] ERROR: Null object! %1", [_variablename, _element, _global, _check]};

Bug #4 functions_f_contact\drone\fn_returnmattermodule.sqf

private
daring wagon
#

The first one is irrelevant, but I guess you want it fixed for some sqf parser or so?

paper lava
solid marten
desert trench
tight wren
#

Affirm!

desert trench
desert trench
#

imho BI should just put all configs and scripts on github and let ppl submit patches (plus hire someone to review the submissions and merge - so Dedmen/KK/reyhard can focus on engine/more complex work)

#

to account for unit state changes not handled by the group EHs (plus such EH would have a lot of additional utility)

valid ice
alpine tulip
#

So... I recalled that AI weapon/turret sway is a thing for EVERY situations, even if it is meant to be an unmanned/computer-driven turret, like CIWS or such. Can we have a favor to... like, at least setSkill way to stop sway?

strong salmon
#

For players I know there is a mod that does it (remove sway) but individually or depending specific situation idk

alpine tulip
#

Yeah removing from player is very possible and easy

#

But nobody wants to see a CIWS that is handled by a human operator who has trepidation

daring wagon
alpine tulip
#

Yeah

daring wagon
#

Happens for tanks as well..very annoying

#

Would be neat to actually aim any turret via scripting.

alpine tulip
#

Actually, just realized Scorcher (NATO SPG) main turret has no such issue

#

...As far as I can tell

daring wagon
#

Maybe because it's artillery. No clue.

alpine tulip
#

But Mk45 Hammer does have, which is also an arty

daring wagon
#

Hmm ok

alpine tulip
#

maxHorizontalRotSpeed maxVerticalRotSpeed could be the issue actually. As far as I can tell turrets with < 1 has no such overshoot

devout wave
#

I think the AI handles turret traverse a bit more like an actual turret rather than like mouse aim, and they hold it at full traverse speed until it's on target, rather than slowing down as they approach the target. So it's not sway/accuracy error but rather a flaw in how the AI aims.
Would be nice to fix but maybe a big change to how it works.

alpine tulip
#

Yup seems like socpp class CfgVehicles { class Tank; class Tank_F: Tank { class Turrets; }; class MBT_01_base_F: Tank_F { class Turrets: Turrets { class MainTurret; }; }; class MBT_01_arty_base_F: MBT_01_base_F { class Turrets: Turrets { class MainTurret: MainTurret { maxHorizontalRotSpeed = 0.1; maxVerticalRotSpeed = 0.1; }; }; }; }; This won't repro the issue, make maxHorizontalRotSpeed and other bigger, it does the overshoot

#

It actually look like a PID overshoot issue

#

https://youtube.com/watch?v=HbhOUUAPvM4
I just want this smooth'n'fast turret ๐Ÿ˜ฉ

United States Armed Forces. Counter rocket, artillery, and mortar, abbreviated C-RAM or counter-RAM, is a set of systems used to detect and/or destroy incoming rockets, artillery, and mortar rounds in the air.

00:00 C-Ram live-fire
00:57 C-Ram live-fire
01:45 C-Ram in Afghanistan

Become a channel sponsor and you will get access to exclusive bo...

โ–ถ Play video
gusty prairie
#

Seems like something has changed in 2.16, because we have faced some new issues with Battle Eye now ๐Ÿ˜ฆ

gusty prairie
solid marten
#

Interesting, dont think we had BE changes in between

gusty prairie
daring wagon
#

With tanks it's even worse. Ai shoots before actually pointing at the target. And with like 20 seconds reload time that's pretty bad. Make commanding a tank a pain.

outer frigate
#

i just want setProxyModel so i can do modular vest ๐Ÿ˜ฆ

alpine tulip
#

I thought proxy in proxy is actually not possible except in a very few special cases?

outer frigate
#

you can proxy onto vests so shrimply change model of proxy to Things on it

outer frigate
#

in attributes for waypoints in init, Identified looks like it should be Identifier?

alpine tulip
#

What's more important is, Identified doesn't even work

gaunt depot
#

Is there an approximate ETA for 2.18?

azure crane
near cedar
gaunt depot
#

Is it worth it asking to remove that built-in shadow from Arma 2 item icons? Its really ugly when used alongside non-shadowed A3 icons. I can do the removal myself too. Pictured: huge shadow on grenade icon.

gaunt depot
rugged nova
#

Pretty sure everyone besides a few mods has a shadow on icons/items. That would also change the look and feel for Vanilla Arma 3 so I don't think it will get done.

gaunt depot
#

A3 gun, A3 sight, A2 grenade icon

rugged nova
#

I see.

fresh hawk
fresh hawk
#

I should have specified: I'm using the latest profiling branch

solid marten
#

it was added back with 2.14 so doesn't really matter, hasnt been touched since

sacred river
#

Is it possible to create a server.cfg entry for BattlEye Query Timeout? Currently it seems to be hardcoded to around 2 minutes. And for reasons, weaker computers take some more time to connect to Servers and with heavy modset they are getting Query Timeouts more often.

gaunt depot
#
f = {diag_log text (diag_frameno toFixed 0)};
call f;
0 remoteExecCall ["f", 2];
```=>

12:56:44 361233
12:56:44 361236

#

I'm trying to track engine events through RE and because of this delay RE arrives frame later than engine event actually happens.

gaunt depot
#

(Trying to make sense of EPE damage, sadly remote crew engine collision damage arrives 2 frames earlier than my RE notification)

#

If only RE wasn't skipping frames I'd have it working correctly

solid marten
#

What is your value of 'disconnectTimeout' in server config?

#

Anyway I suggest to log the disconnects with available server tools first and see why this is happening

Arma 3 logo black.png
1.56
maxdesync = 150;    unknown    Max desync value until server kick the user    
Arma 3 logo black.png
1.56
maxping= 200;    unknown    Max ping value until server kick the user    
Arma 3 logo black.png
1.56
maxpacketloss= 50;    unknown    Max packetloss value until server kick the user    
Arma 3 logo black.png
1.56
kickClientsOnSlowNetwork[] = { 0, 0, 0, 0 };    unknown    Defines if {<MaxPing>, <MaxPacketLoss>, <MaxDesync>, <DisconnectTimeout>} will be logged (0) or kicked (1)    
Arma 3 logo black.png
1.56```
https://community.bistudio.com/wiki/Arma_3:_Server_Config_File
desert trench
#

arent these unrelated to BE timeout?

solid marten
#

Why are we talking about BE?

#

Ah wait re-read the post, well BE is BE

desert trench
#

Dwarden might know more. may not be possible to have BE read from (arma game) files

solid marten
#

Yeah, if this is handled by BE we have very limited say in it

desert trench
#

there might be an existing interface, but would at least also have BE adjust their API and allow adjustment of the timeout

solid marten
#

Dwarden would know more about it

regal nimbus
#

Couldn't you adjust Arma to not have so much network-silent time?

#

Although I guess battleye has its own keepalive in another thread? Not sure why it'd go missing for two minutes.

azure crane
#

is there a reason why Huron can't slingload any HEMTT other than the transport ones? I remember that back in the day it was capable of transporting even tanks so it's carryweight should be around 70t(?) but somehow I cannot slingload a flatbed truck or even the one with no trailer

sacred river
# solid marten to increase?

Yes to increase the value. At least if its possible. From your answers it seems to be either yes or no. Hope Dwarden knows more.

solid marten
#

draging manually from and to inventory correctly triggers everything for me and so is using linkItem/unlinkItem command. I can confirm that setunitloadout might not work as expected with this EH, is this correct?

gusty prairie
#

hello guys! regarding our task https://feedback.bistudio.com/T180288
we have attached wrong report, but since the error is not leading to crash (and we're not able to create a following report) here's steppes we've done:

We're starting the server without mods. Mission on the Virtual Reality map without scripts and objects, signature checking disabled, battleye is enabled.
Then we launch ARMA v2.16 with CBA mod enabled (battleye enabled)
Then joining the server and kicking player with server-side command []spawn{uisleep 2; "pswrd" serverCommand "#kick 4"}

We go to the main menu and try to enter the editor.
If you select a VR map, ARMA freezes immediately. When selecting other maps, a loading screen appears, the slider reaches the end and also freezes

Thank you in advance

PS. When we do the same on 2.14 - it's all ok.
PPS. If we turn off BattleEye (on 2.16) - everything works fine

sacred river
gusty prairie
sacred river
fresh hawk
# solid marten draging manually from and to inventory correctly triggers everything for me and ...

Pretty much.
If the order of linking and unlinking corresponds to what actually happens in game, I donโ€˜t really care if itโ€˜s earlier or later than CBAโ€˜s stuff.
Iโ€˜m not sure how well backpacks are handled in general, as it detected the removal but not the addition of a backpack when using the Vanilla arsenal. I didnโ€˜t change the backpack though, so I assume itโ€˜s the arsenal script that sets the loadout when leaving the arsenal.
Thanks for looking into it!

solid marten
regal nimbus
#

Shutting down the server rather than kicking the clients works.

gaunt depot
#

I'd love to also have custom icons for vehicles. I'm turning Gorgon into unarmed APC by hiding its turret (why its not a separate vehicle in vanilla config already?), would love to be able to set it a custom icon along with custom name.

#

Doing that through scripts where possible but having it also work on in game UI would be great

near cedar
#

Having turretless versions in vanilla would be nice yeah

gaunt depot
#

Yeah, all 3 vanilla APCs support it too

#

no model changes needed, only config

#

new icons perhaps, but that's easy too

#

One issue though, Marshall has flag on its turret which also gets hidden

#

Easy new content

#

Speaking of flag, I wish there was standalone flag object that you can forceFlagTexture

#

Also isn't flag is still hardcoded to wave at like 30 FPS? I wonder how easy it would be to increase it on higher LOD

gaunt depot
solid marten
#

its a standalone object

gaunt depot
#

I was talking about invisible object that you can make display a flag

#

no pole or anything, just a proxy for engine-driven flag

#

So you can position it/attach to other objects to have the flag exactly where you need it

gray wharf
#

can you setObjectTexture the flagpole for it to be transparent ๐Ÿ˜„

gaunt depot
#

Would still retain its geometry though

gray wharf
#

and shadow iirc

gaunt depot
#

Yeah

#

Sadly forceFlagTexture doesn't work with simple objects so I can't make such flag-only object myself

devout wave
# gaunt depot Easy new content

It would be very useful to have these as true variants, but I wouldn't be surprised if it doesn't happen given how reluctant BI is to make the hidden variants of stuff available. Rotators made their own unarmed Marid for WS, maybe they'll do the others in a WS or RF update.

gaunt depot
stone tree
gray wharf
#

nuked

solid marten
gaunt depot
gray wharf
#

Steam guy laughing seeing a refund request land after 10k+ hours gametime

gaunt depot
gray wharf
#

it's barely fifteen thousand times too much but hey, worth a try

gaunt depot
#

I'll say it didn't work past the title screen

gray wharf
#

"it's launcher time, I didn't play!!"

solid marten
#

crashed continuously for 48 months

strong salmon
#

gotta respect that kind of dedication tho ๐Ÿ˜‚

#

for 4 years straight : IT. WILL. WORK.

gaunt depot
#

Titan AA and AT icons have slight non-transparent backgrounds under them

#

Not a thing with other vanilla weapons

limpid rune
#

death by firing squad for those responsible

gaunt depot
#

Wondering if this is worth reporting. I can fix the icons myself, but will it get updated in the game?

gaunt depot
#

Speaking of icons, I really wish they would be all re-rendered, they're so dark

gaunt depot
# gaunt depot ```sqf f = {diag_log text (diag_frameno toFixed 0)}; call f; 0 remoteExecCall ["...

What I was trying to do: When a vehicle crashes into something and fires EPEContactStart, I notify all remote crew units that their vehicle crashed so I can associate their crash damage to crash event. Sadly actual engine damage arrives 2 frames earlier than scripted RE sent right from EPEContactStart event handler. Here is that 2 frames wasted distance seen by remote crew.

Frame 56517: Killed Both: B_Soldier_F
["B Alpha 1-3:1 (Sa-Matra (2)) (B_Soldier_F)","<NULL-object> ()","<NULL-object> ()",true]

Frame 56519: remoteExec EPE-EVENT: B_Soldier_F!
createHashMapFromArray [
     ["collider", 21c6ed66b00# 1669742: u_addon_02_v1_f.p3d (Land_u_Addon_02_V1_F)]
    ,["until", 410.234]
    ,["vehicle", B Alpha 1-2:1 (Sa-Matra) REMOTE (C_Hatchback_01_sport_F)]
    ,["hash_array", [
         "#epe-crash"
        ,B Alpha 1-2:1 (Sa-Matra) REMOTE (C_Hatchback_01_sport_F)
        ,B Alpha 1-2:1 (Sa-Matra) REMOTE (B_Soldier_F)
    ]]
]
```Looks like engine damage travels instantly while remoteExec wastes 2 frames somewhere.
#

(Killed Both is Killed EH that unit died from a crash, unattributed to anything)

#

Not sure if this is fixable, but if it is, I'd be useful to me

solid marten
#

what about mp event handlers do you use those?

gaunt depot
#

Still its remoteExec that is the issue, it has delay of several frames

gaunt depot
#

From what I gathered it is:

Frame 1: MPKilled
Frame 1: EntityKilled (Server)
Frame 2: Killed (Owner)
Frame 4: RemoteExec sent at the same time as death happened
#

Honestly a proper solution would be an event handler for collision damage or finally an attribution of collision damage properly instead of to null entities

solid marten
#

is this on dev?

outer frigate
#

how much would i have to beg to get an option to disable modelsides stuff

regal nimbus
#

You mean the thing that blocks picking up enemy uniforms?

outer frigate
#

yes

regal nimbus
#

Might be a good thing for setMissionOptions but I don't know if there are ideological objections.

solid marten
# fresh hawk Pretty much. If the order of linking and unlinking corresponds to what actually ...
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemCompass",609,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemWatch",610,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemRadio",611,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemGPS",612,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"NVGoggles",616,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"G_Spectacles",603,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"H_HelmetB_grass",605,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"Rangefinder",617,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"U_B_CombatUniform_mcam",801,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"V_PlateCarrier1_rgr",701,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"B_AssaultPack_mcamo_Ammo",901,false]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemMap",608,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemCompass",609,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemWatch",610,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemRadio",611,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"ItemGPS",612,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"NVGoggles",616,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"G_Spectacles",603,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"H_HelmetB_grass",605,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"U_B_CombatUniform_mcam",801,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"V_PlateCarrier1_rgr",701,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"B_AssaultPack_mcamo_Ammo",901,true]
21:18:11 [B Alpha 1-1:1 (KK_DEV),"Rangefinder",617,true]```
#

will try to get it into prof as well

gaunt depot
solid marten
#

what I meant was did you test it on dev?

gaunt depot
#

What do you think can be different there? remoteExec behaviour changed?

solid marten
#

dev has changes which may or may not be related but I guess the only way to find out is to wait for the next stable

alpine tulip
#

I know you have no responsibility anymore but gotta report this anyways: @sinful kettlesqf a switchmove "HubStanding_idle1" and call something like sqf a switchMove ["AmovPercMstpSrasWrflDnon",0,0,false]makes the unit animation dead-end, it stuck at AmovPercMstpSrasWrflDnon and without any script input it stays as is, regardless of anything. Regular (older) syntax or ["",0,1,false] won't repro this
["Arma 3","Arma3",217,151641,"Diag",true,"Windows","x64"]

#

I was nearly sure there was no such issue when was introduced... but hey, the issue is there

#

Sidenote, there was no script involved other than those lines. No disableAI either

sleek scaffold
#

he's no longer an A3 dev? ๐Ÿ˜ญ

alpine tulip
#

No

sleek scaffold
# alpine tulip No

๐Ÿ’”, and my whole week goes to ruin. Not only he was going to fix the animation transitions which are broken for holstering with a pistol but he also had many amazing things in the oven... and I guess no only will continue those ๐Ÿ˜ข

#

But he is still at BI right? Moved to Reforger/A4... BI can't be losing talent right now

alpine tulip
#

No

#

It's been weeks or months since he left his very short intern

ember flint
#

Iirc he was just on a contract but that's just what I heard

uncut briar
#

Also leo was never mainly working on A3 iirc. His A3 stuff was just a bonus work AFAIK.

sinful kettle
#

the problem is the interpolation time

#

I'm gonna guess because the move is static think_turtle

sinful kettle
sinful kettle
solid marten
sleek scaffold
# solid marten dedmen fired him

I trust Leopard's wisdom. If he left then it was the best for him and that is all I need to know, I am still sad thou but I will get over it eventually, or if he left to do his own CDLC then it is all forgiven ๐Ÿ˜…

solid marten
sleek scaffold
devout wave
#

Huh. I assumed it was because of the laws about keeping exotic animals

solid marten
#

in the cup

sleek scaffold
#

I hope you guys are not doing a late Aprils fools on me... ๐Ÿ˜’

sleek scaffold
outer frigate
outer frigate
#

Looter clothes in contact DLC doesn't have the shemagh assigned as selection in the viewpilot lod, is it possible to get it fixed or is no model stuff happening any more?

daring wagon
#

["IsSpectator", [player]] call BIS_fnc_EGSpectator
Seems to be broken.

#

params [["_object", objNull, [objNull]]];
should be

_params params [["_object", objNull, [objNull]]];

Otherwise it accesses the mode which is "isSpectator"

#

If worth a ticket, let me know.

solid marten
alpine tulip
solid marten
#

@gaunt depot Revision: 151686 should sync custom radio markers with units on the channel

#

i.e. when unit is added the markers are created, when unit is removed, markers are deleted

unborn acorn
gaunt depot
#

Looks okay-ish on a bright sky

#

Good luck seeing anything during the night

#

Or if it was on black background UI

#

Really could use a procedural texture or something to only use texture alpha with rest of components being full so its white

#

Thought about adding a white rectange under the icons, looks horrible

#

#(rgb,128,64,3)alpha('\A3\weapons_F\Rifles\MX\data\UI\gear_mx_rifle_X_CA.paa') Something like this?

#

=>

#

With this you could make a procedural texture that would place white versions into 8 directions around full color one to build custom white outline! (shadow=2 doesn't support colors, shadow=1 can't be colored white if icon is dark)

#

Thanks For Coming To My TED Talk

#

Sorry for wall of text

sacred river
alpine tulip
gaunt depot
#

ST_PICTURE*

alpine tulip
#

At least Picture, but it also seems to be a very nice thing to overlay anything, even a BG

gaunt depot
#

Or a texture?

#

Though on the other hand, what if you want to modify a procedural texture. You can't have procedural texture inside a procedural texture in single definition

alpine tulip
#

๐Ÿค” maybe

#

Speaking of actually, like, serious question since A2,

Can we get a italic or bold filter for Structured text, even if it only twists the text picture to the right slightly or doubles the text to make it bolder?

gaunt depot
#

I guess it was intended that you switch fonts with <t font=''> to bold or italic versions

alpine tulip
#

Also I found it that configSourceAddonList ModList doesn't detect addon/Mod if the argument is a config parameter not class. Could be handy to have... pwease

alpine tulip
#

I mean, having one font family is understandable. My intention after italic bold is more of comprehensive way to put something within a text, like a quote

#

CJK font issue is very stupid anyways. Why it can't be done?!

vapid cradle
#

Guys you gonna laugh at me but how do i post a new subject on the feedback tracker ? I can't find the button to create a new post

gaunt depot
#

top right star

vapid cradle
#

Thenk you guys ๐Ÿ™‚

gaunt depot
#

Even with a background to reduce contrast a little bit, unless you make it bright it looks terrible

gray wharf
#

I think you made your point :p

gaunt depot
#

Just trying to make it look decent with current tools, I see no way ๐Ÿ˜ฆ

gray wharf
#

make it a (0.5, 0.5, 0.5) rectangle background and call it a day :D

gaunt depot
#

Yeah, white-ish background looks ugly and out of place during the night

#

Actually you know what, [0.5,0.5,0.5,0.5] makes it look the best out of everything I tried so far

unborn acorn
#

The position of the scroll bar layered the mute buttons in the Role Assignment window in MP; it is impossible to scroll to the end of the list due centered on my nickname
https://feedback.bistudio.com/T180434

gaunt depot
gaunt depot
#

Same issue also happens with map players list iirc

#

but that's script fixable

unborn acorn
sleek scaffold
#

PS: Your name is blue again! hmmyes (ohhh, that is Veterans, you used to be green right?) ๐Ÿ˜„

sleek scaffold
gaunt depot
#

all that I needed

unborn acorn
gaunt depot
#

Considering that RscPicture is CT_STATIC, why can't it support colorBackground? ๐Ÿค”

alpine tulip
#

What do you expext if you set BG color?

gaunt depot
#

Having a background under the image

#

But the size of the control

gaunt depot
gray wharf
#

w00t w00t salute

gaunt depot
#

Anybody would find ARRAY = arrayIntersect ARRAY unary version useful, to only select unique values?

#

I use it all the time but it being binary command requires extra variable and most often I'd use it in a single statement.

#

Or maybe have a proper separate command ARRAY = uniqueValues ARRAY/HASHMAP?

#

Or arrayUnique

sinful kettle
#

Use a macro?

gaunt depot
#

inside a macro

#

actually not sure how it could work with a macro ๐Ÿค”

#

only if its not inside a bigger statement perhaps

sinful kettle
regal nimbus
gaunt depot
#

Is it faster?

regal nimbus
#

for large arrays, sure

#

Slower for small ones.

#

Similarly I want a hashmap batch delete command :P

#

because _arr1 - _arr2 also blows up for large arrays.

sacred river
gaunt depot
#

Can this PLEASE be fixed for 2.18?

#

Its a data change, pretty simple one

#

It is most definitely a bug that appeared after lighting rework, NOT a feature

heady thunder
gray wharf
#

what spam?

#

but it's here, and thanks ๐Ÿ˜‰ nuked ofc

daring wagon
#

I have got a question regarding setMarkerDrawPriority

#

It seems that this command triggers allMapMarkers being sorted by the priority set for each marker.

However, adding new markers without setting their priority creates them with priority 0 at the end of allMapMarkers and thus these markers get drawn on top of markers with a higher priority.

#

Is this intended?

gaunt depot
#

I guess new markers ignore priority?

daring wagon
#

For me it seems like engine doesn't care what the priority value is but only looks at the order of allMapMarkers

gaunt depot
#

Yeah, that's what I meant, new markers simply get put into the end of the list without taking priority into account

#

Guess sorting by priority before drawing is too costly

daring wagon
#

I guess this was done for performance reasons? Ideally, creating a marker would trigger sorting of the markers array

gaunt depot
#

Yeah, looks like it doesn't and simply gets put in the end

daring wagon
#

I guess I can just use an event handler

#

However, would be nice to get this behaviour confirmed by KK so we can document it on biki.

#

Hmm, okay, that's weird. I created a new marker without setting priority but now the array is sorted again.

unborn acorn
gaunt depot
#

I don't think clouds were touched since alpha, could be FUBAR

gray wharf
#

just don't bank

daring wagon
#

setOvercast 0...fixed

unborn acorn
#

How long has ambient been missing from the Virtual Reality map? It was since Bootcamp and now missing
Means CfgWorlds โ†’ VR โ†’ EnvSounds โ†’ Default

sinful kettle
#

same goes for get3denParent

near cedar
#

Land_SM_01_shelter_wide_F and Land_SM_01_shelter_narrow_F seem to be (semi?) impervious to 80mm rocket strikes. The structure is not destroyed. The ground below gets the decals for rocket hits but vehicles don't seem to take damage from direct hits, just splash damage for stuff that lands nearby (and not on the shed directly)

sinful kettle
#

Does it have a FireGeometry?

near cedar
#

i have no clue, will that info appear in the config viewer?

sinful kettle
#

No. If you have diag exe you can use diag_drawMode "FireGeometry"

near cedar
#

(also note this applies to both narrow and wide variants)

#

ah. uh can check

sinful kettle
#

Or I guess you could also shoot it with a rifle and see if the bullet hits it ๐Ÿ˜…

near cedar
#

too late, already switched to profiling ๐Ÿ˜›

#

Wait is diag exe different from profiling?

sinful kettle
#

It's in dev branch meowsweats

near cedar
#

ahhhh lol i don't have that

#

okay i'll just shoot it ๐Ÿคฃ

#

well bullets seem to go through (tried with a helicopter minigun from the top)

#

shooting from inside towards the roof seems to show me bullet hit effects (but no decals) on the roof

sinful kettle
#

So it doesn't have a Fire geom, which is why you can't hit it directly

#

Weird

near cedar
#

smaller one does have hit effects and decals

#

smoke grenade bounces off

#

going to try the rocket stuff again

#

okay for the small one, on the altis variant there are decals, for the tanoa variant there aren't

#

YES the rockets pass right through ๐Ÿ˜„

#

i have it on camera too lol

#

but then they explode right after passing though blobdoggoshruggoogly

#

Rocket passes through, but the explosion is created on the exterior of the shed. Shed is able to withstand 4 80mm rockets. Trucks below still take damage though. And only when the trucks blow up do the sheds get destroyed.

#

The decals from the explosions are created on the ground beneath

#

apparently the fuel trucks can take more than one rocket to the face even without the shed ๐Ÿ˜„

#

...or sometimes they can't

#

it's so weird

near cedar
#

Okay, more testing -- the big shed dies from 7 rocket hits (in my case, 5 direct and 2 indirect/near misses)

#

But the damage that goes through it is inconsistent

#

for example

#

However a third round that hit above the truck directly did 0.01 damage to the truck, but that did enough hit point damage to blow it up after a short delay

hollow vapor
#

If possible for A4 can we have an official tool for converting WRP files please? I dont like the idea of paying 35 euros every year to a third party dev thats not really participating in the community spirit to convert a file thats advertised as open to the community to dev ourselves.(South Asia .WRP)

toxic sphinx
#

If I use BIS_fnc_addRespawnPosition is it possible to set a per player timeout for each individual one created?

alpine tulip
solid marten
azure crane
#

footsteps were different too unless that's the ambient we're talking about

#

now they are just the "normal" flat-sounding ones, however if you change your stance you can still hear the echoing footsteps

unborn acorn
#

seems forgotten create a config of Sound Sets for them

#

gonna create FT ticket for footsteps too

solid marten
unborn acorn
#

I also assumed the sound could be playing on the map on some 'grid', so I changed the audibility radius to 10 million km, even so there was no sound blobdoggoshruggoogly

unborn acorn
unborn acorn
sinful kettle
solid marten
#

good question

dreamy bane
alpine tulip
#
21:47:15   Error position: <setParticleFire []>
21:47:15   Error 0 elements provided, 19 expected```What we know is `setParticleFire` does only have three params within the array... what does it mean 19?!
heady thunder
gray wharf
#

antispam, boom

solid marten
daring wagon
#
23:37:30 Error in expression <Max == _fMin}) exitwith {
_fMin = _fMin / (1000^_logMin);
_fMin = _fMin tofixed >
23:37:30   Error position: </ (1000^_logMin);
_fMin = _fMin tofixed >
23:37:30   Error #: Zero divisor
23:37:30 File a3\Functions_F_Enoch\EM_Core\fn_frequencyToString.sqf..., line 50
23:37:30 Error in expression <Max == _fMin}) exitwith {
_fMin = _fMin / (1000^_logMin);
_fMin = _fMin tofixed >
23:37:30   Error position: </ (1000^_logMin);
_fMin = _fMin tofixed >
23:37:30   Error #: Zero divisor
23:37:30 File a3\Functions_F_Enoch\EM_Core\fn_frequencyToString.sqf..., line 50

Switching to the Spectrum Device instantly triggers that script error. Vanilla Game + Contact only. v217,151686)

solid marten
#

2.17 cannot be a vanilla game

#

oh you mean no mods?

#

@untold sky another compiler issue?

solid marten
daring wagon
#

If I have time this week I'll try to play the contact campaign. As it uses some heavy math at places there might be more of these script errors.

alpine tulip
#

Okay, I know, this is a very nitpick. And it is very stupid one. But, listen to me, Showcase Cultural Property is in June 24th, not canon cease fire date, August 10th

gaunt depot
#

Have an important fix there, want to know if I should make a crutch now or wait for the fix

solid marten
#

Is it not merged in prof?

gaunt depot
solid marten
#

Looks safe to merge to prof

gaunt depot
#

Still, any estimates? Month, two, late summer?

gray wharf
#

between 1 and 3650 days

daring wagon
#

Soon

paper lava
#

Not sure if this was actual error or just fine, when getting in vehicle for Black Wasp Plane B_Plane_Fighter_01_Stealth_F, the Pose command will return "ERROR", btw the name of playing animation call pilot_plane_fighter_01_getin

outer frigate
#

which branch is this on

paper lava
#

main one, 2.16

daring wagon
#

Out of curiosity. Is there a reason we cannot set marker colour in RGB format? The markers themselves seem to support any colour ,just that we are limited to what's defined in config.

untold sky
untold sky
untold sky
untold sky
untold sky
untold sky
sacred river
untold sky
gaunt depot
untold sky
gaunt depot
#

Speaking of new objects, having UserTexture that is a ground decal will be very useful too

#

Probably can also be hidden and/or use same texts as normal UserTexture1m_F?

#

Having scripted footsteps that follow terrain. Normal user texture won't bend at terrain cell edges

untold sky
alpine tulip
#

Hmm, I could imagine why

azure crane
# untold sky yes

what message were you replying to? Discord is doing a fucky wucky, reload doesn't help.

gaunt depot
untold sky
# regal nimbus for large arrays, sure

All same keys 5k elements
arrayIntersect: 0.115857 ms
hashmap: 0.252246 ms

All different keys 5k elements
arrayIntersect: 209.955 ms
hashmap: 2.71939 ms

Huh. Didn't expect that. I'd expect creating a hashmap to be more expensive

untold sky
untold sky
daring wagon
gaunt depot
#

It feels like they couldn't fix the flares not being bright anymore and instead of investigating why turned them into signal flares or something, lol

untold sky
# daring wagon I guess this was done for performance reasons? Ideally, creating a marker would ...

Performance I'd rather not.
But what we probably could do is, on insert skip all markers with higher priority and insert into the middle of the array.
Because the high prio ones are at the start, that should be somewhat simple.

I think that would be easy to do.

Actually new markers get added to the end of the array. Not the front?
And I assume markers are rendered from front to back? Or are they rendered in reverse?
Finding insertion point from end like I described would also work though

gray wharf
#

this clouds library always felt to me like "nice for screenshots" but glitchy when moving, not "half-assed" but almost - like unfinished

alpine tulip
#

I think I've ever seen a cloud that looked like Monster Energy (I mean having very same pattern three times) and uh, how long it was? That was actually strange looked

daring wagon
untold sky
untold sky
gray wharf
gaunt depot
gray wharf
#

nor hide during dogfights

unborn acorn
#

just let's do same solution as for particles
extreme = ultra โ†’ no bug derpWolf

gaunt depot
#

I did some tests with the clouds and they can be synced in MP, but get desyncronized after a while

#

Plus weather is fucked in general and you never get same overcast values over the network reliably

#

And these clouds are very dependent on overcast value

gray wharf
#

unlike in Reforger where it is synchronised and clouds cast shadows

untold sky
# solid marten well, relatively large negative power produces 0, not sure how to handle this in...

(reply to #arma3_feedback_tracker message)
The fix for first compiler issue wasn't released at that point.
I cannot reproduce on latest internal. Though I am just equipping spectrum device in VR

"relatively large negative power produces 0" that should not be possible here, there is no large negative power.

#define UNITS ["Hz","kHz","MHz","GHz","THz","PHz","EHz"]
_fMin = _fMin / (1000^_logMin);
UNITS # _logMin

The highest possible here is 1000^6 that is 1e+18, that is still well within limits. (max value is 1e+38)
_logMin must be between 0 and 6.
And even with its highest value at 6, we don't get a div by zero here.

I cannot reproduce the problem in debug console with the possible values.
1/ (1000^6) is 1e-18
There is no div by zero

Maybe our max/min are broken with extreme values

-1e39 max 0 is 0, all fine. (negative infinity)
1e39 min 6 is 6, all fine. (positive infinity)

_fMin = -1e39;
_offset = -1e39;

(floor ((log _fMin + _offset) / 3)) max 0 min 6;

There is the bug!
-nan(ind)
log of negative infinity, results in nan indeterminate. Which then propagates through.
I'd say we can make min/max handle nan.

-nan max 0 should be 0 (The bigger of the two)
nan max 0 should be nan (The bigger of the two)

untold sky
untold sky
untold sky
gaunt depot
untold sky
untold sky
#

Discord cannot even show the messages that I replied to, to myself

sinful kettle
untold sky
untold sky
daring wagon
sinful kettle
untold sky
#

Setting priority goes through ALL markers to resort them though. Not quite nice. And its an easy fix for us to do

untold sky
untold sky
untold sky
#

The ingame info for create3DENEntity/get3DENEntity/... also says it returns any, technically not correct but ugh

untold sky
#

That nan handling fact is not documented on wiki.

#

Documentation for the instruction also specifically says that should happen.
https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html#text=minss&ig_expand=4523
https://www.felixcloutier.com/x86/minss
Doc specifically says

dst does not follow the IEEE Standard for Floating-Point Arithmetic (IEEE 754) minimum value when inputs are NaN or signed-zero values.

If only one value is a NaN (SNaN or QNaN) for this instruction, the second source operand, either a NaN or a valid floating-point value, is written to the result.

But our compiler is so smart, and flips the left and right values.
instead if
a min b
it does
b min a

_nan min 0
is -nan
0 min _nan
is 0

darn you Microsoft :U

sinful kettle
#

Write it in assembly hmmyes

untold sky
#

I hope GCC on linux isn't making that same mistake, can't test that rn.

log (-1e39) min 0 should return 0
0 min log (-1e39) should return -nan

Maybe someone has time to check linux on prof or dev?

#

I already made a ticket about incorrect float optimization, guess I'll make another.

( a<b ? a : b) should definitely not be optimized into b minss a ๐Ÿ™„

sinful kettle
untold sky
#

typing as you type

untold sky
#

It again only messes it up in /fp:fast ๐Ÿ˜„
Yeah its a MS bug. even with fastmath, it shouldn't just swap the order

untold sky
#

Well microsoft gives themselves the opt-out in their docs
Special values (NaN, +infinity, -infinity, -0.0) may not be propagated or behave strictly according to the IEEE-754 standard.

That results the code

Print (a < b);
Print (a < b ? a : b);

to print out

false
a

Sure.
if false then a else b.
Is a!

#

Microsoft is also absolutely all over the place

Expected result: 0;0 | 0;0
VS2013 Release: 0;-1.#IND | 0;-1.#IND
VS2013 Debug: 1;-1.#IND | 1;-1.#IND
VS2017 Release: 0;0 | 0;-nan(ind)
VS2017 Debug: 1;-nan(ind) | 1;-nan(ind)
VS2022 Release: 0;-nan(ind) | 0;-nan(ind)
VS2022 Debug: 1;-nan(ind) | 1;-nan(ind)
GCC13.2 O2: 0;0 | 0;0
GCC13.2 O0: 0;0 | 0;0
GCC8.5 O2: 0;0 | 0;0
GCC8.5 O0: 0;0 | 0;0

#

That GCC there is with the -ffast-math flag too.
GCC gets it right with fast math, MSVC doesn't

sinful kettle
#

Use GCC on Windows too hmmyes

unborn acorn
daring wagon
solid marten
untold sky
#

It handles Object, Group, Array, String, Scalar.
And it accepts Object, Group, Array, String, Scalar.

solid marten
#

pretty sure this wasnt touched in 2.16

#

@gray wharf ^^^ dont think the create marker was automatically sorting markers ever, setmarkerpriority was doing that me thinks

gray wharf
#

what I think I understood at least ๐Ÿ˜„

solid marten
#

but this is why you have separate command to set priority

#

create marker , set priority

#

if you needed it

gray wharf
#

yes, hence the note
although, it may not be seen as a "problem", IDK

solid marten
#

i did not want markers get sorted for no reason every time marker is added or removed

daring wagon
#

dedmen said he might have a fast way of doing it. As I stated earlier it's not a problem really, just needs to be documented. However, if createMarker would handle that and it can be fast, why not.

regal nimbus
outer frigate
#

now im meant to beg for setproxymodel too arent i

untold sky
untold sky
regal nimbus
#

I never ask for difficult things, aside from AI fixes :P

untold sky
#

Ah frick

#

no can't do same thing because deleteAt [array] might be a key = [array]
not an array of multiple keys

#

would need separate command. deleteRange would work but I don't like that :U

#

deleteRange makes the most sense though, so probably gonna be alt syntax for that, even though I don't like

#

but wonder if its even worth it.
Not much performance impact (number of hashmap lookups doesn't change).

With a simpleVM loop its probably not much difference

regal nimbus
#

I was wondering. What's the method to test simpleVM these days?

untold sky
#

diag_testScriptSimpleVM {code} on dev or profiling. To check if its applicable

regal nimbus
#

k

#

perf though?

untold sky
#

{_hm deleteAt _x;} forEach _toDelete is probably good enough.
vs _hm deleteRange _toDelete

there is no way to turn SimpleVM off, without switching to non-profiling branch exe

#

so not without game restart

regal nimbus
#

Profile/perf uses SimpleVM automatically and stable doesn't use it at all?

untold sky
#

yes

regal nimbus
#

ok, can work with that.

untold sky
#

It's only enabled on 2.14+ perf and 2.17+ stable
so not on 2.16 stable

regal nimbus
#

Right, SimpleVM is good enough for this. Hashmap creation cost is most of the expense for 300 elements minus 299 elements now.

devout wave
outer frigate
#

i can literally write the config for them

devout wave
# untold sky legacy

Could the #legacy be worked around by letting CfgMarkerColors work in mission config?

untold sky
#

Don't know when they are loaded. That might work

daring wagon
#

Yeah, that would be splendid. Would reduce alot of limitations

solid marten
untold sky
#

They will be

#

If anything with priority is sorted to the end.
And anything without priority is inserted before the priority ones. It'll always be sorted

solid marten
#

we just have to make all markers priority 0 by default

untold sky
#

I thought they already are

#

Though I don't know what happens with the priority property when a network marker update comes in, could it reset the priority to zero? Such a thing probably wouldn't resort it correctly. But as the command has local effect only, I wouldn't expect a remote update to reset it

solid marten
#

priority is part of network sync if I remember correctly

#

however here is a small problem. Say we have 20 markers with priority 0. they are drawn in order of creation. How do you create another marker that is on top of 10th but below 11th?

untold sky
untold sky
solid marten
#

local markers are not synced so no problem there

untold sky
solid marten
#

yeah 10 times sorting

untold sky
#

If you want 10 markers with priority, that already is resorting for each right now. Wouldn't change.

#

We could optimize it though, we don't need to resort the whole markers array when we change priority of one. We just need to move that one around

solid marten
#

we can ++ priority with each marker creation

untold sky
#

๐Ÿ˜• I don't get it

solid marten
#

whn you create next marker you create it with higher priority then if you want to insert marker in between then you can. priority is float you +1 it for each next marker. sort of like priority sorting in action menu

untold sky
#

I don't think we have a usecase for inserting marker specifically inbetween two others, atleast so far we didn't

solid marten
#

maybe because it is a pain in the rear to do it now

#

since you will have to kinda set priority on bunch of markers to make space

#

creating markers with increasing priority shouldnt break anything

untold sky
#

except existing scripts that expect their 1 priority to be ontop of all other normal markers. But thats only since 2.14

solid marten
#

good point

#

create marker optional priority param?

untold sky
#

If a mod required that all markers are ordered, they could use markerCreated EH and handle incrementing ID by themselves

solid marten
#

bool true ++ priority false or 0 set to 0, a number - specific priority?

#

GameBoolOrScalar

untold sky
#

I don't see the need for us to solve that.
So far noone seemed to have that use case, and if they want it its already solved with this

GMarkerCounter = 0;
addMissionEventHandler ["MarkerCreated", {
    params ["_marker"];
    _marker setMarkerDrawPriority GMarkerCounter;
    GMarkerCounter = GMarkerCounter + 1;
}];
solid marten
#

In this case I am not sure why are we even discussing it, don't get @daring wagon point, everything is doable with current tools

untold sky
#

The bug is that the sorting doesn't stay

#

marker with priority 0 will draw over top of marker with priority 500

solid marten
#

gotcha

#

but this is why you have setpriority command

untold sky
#

I'll just turn the append into a insert_sorted and thats solved

solid marten
#

yeah do that

gray wharf
daring wagon
#

I just asked for an explanation so I can document the behaviour on the wiki.๐Ÿ™„

solid marten
#

too late, now you did it

fresh hawk
#

Any chance to get HandleHeal to be fixed in regards to the return value being ignored?

gaunt depot
#

Might need HandleHealEnd or something, as it healing might not end in success (unit ran off and such)

#

Its all script fixable but a huge mess and a crutch right now

fresh hawk
#

I only want it for this (option to override engine healing), meaning the fix EH should (in theory) be much smaller than adding an extra EH

regal nimbus
#

Can we just have a general system for disabling vanilla actions :/

#

I'm still scarred by that ACE engineer flip.

gaunt depot
#

Had some write up about it year ago, can't remember if its in any ticket

daring wagon
#

https://feedback.bistudio.com/T180633 Script error in Eden editor caused by a missing define in vanilla function. Perhaps that could get fixed as I get reports quite often because ppl think its my mod. Steps to reproduce are added as well.

gaunt depot
#

Clients not knowing owner ids of remote entities is the weirdest design decision ever

solid marten
#

only server knows

#

and client himself

#

nothing weird about it

outer frigate
#

Would it be possible for an alt syntax/change to setAperture for a coefficient of the current auto setting? Negative numbers maybe but could have bwc problems

sinful kettle
#

bwc?

alpine tulip
#

Backward compatibility I think

gray wharf
#

Dedmen said bcomp, KJW said bwc, I believe we should agree on one explicit term please ๐Ÿ˜„

#

e.g 'โ†cp' ๐Ÿคฃ

alpine tulip
#

But Why I Care

restive bone
uncut briar
#

bwcp

#

Backwards Compatibility Promise

outer frigate
#

i think we could just call it backy wacky

#

๐Ÿฅบ emojis optional

gaunt depot
#

Armad compatibility

restive bone
untold sky
#

The marker insertion sorting issue is fixed next dev

_createMarker = {
params ["_name", "_offset", "_color", "_priority"];

_marker = createMarker [_name, getPos player vectorAdd [_offset, _offset]];
_marker setMarkerType "hd_dot";
_marker setMarkerShape "RECTANGLE";
_marker setMarkerBrush "SolidFull";
_marker setMarkerColor _color;
_marker setMarkerSize [100, 200];
if (_priority != 0) then { _marker setMarkerDrawPriority _priority; }
};

["A", 0, "ColorBlack", 0] call _createMarker;
["B", 10, "ColorGreen", 1] call _createMarker;
["C", 20, "ColorRed", 0] call _createMarker;

Could improve performance of setMarkerDrawPriority, but removing from list and reinserting at correct position is more than the 5 minutes I'm giving this fix

gaunt depot
#

I HATE that Respawn copies events and variables from the corpse. There is a solution to clean them up on Killed, but this won't work if you want to keep EHs and variables on the corpse

#

Can we have some kind of flag to stop that?

#

And another issue is that EntityCreated and EntityRespawned on server order is not even guaranteed

#
14:12:08 1573420 :: EntityRespawned :: ["B Alpha 1-3:1 (Sa-Matra (2)) REMOTE (B_Soldier_F) LOCAL=false","1b972acf700# 1780782: c_nikos.p3d REMOTE (B_Soldier_F) LOCAL=false"]
14:12:08 1573420 :: EntityCreated :: B_Soldier_F sim=soldier (B Alpha 1-3:1 (Sa-Matra (2)) REMOTE) local=false
...
14:14:56 1597262 :: EntityCreated :: B_Soldier_F sim=soldier (B Alpha 1-3:1 (Sa-Matra (2)) REMOTE) local=false
14:14:56 1597263 :: EntityRespawned :: ["B Alpha 1-3:1 (Sa-Matra (2)) REMOTE (B_Soldier_F) LOCAL=false","1b8095be800# 1780880: c_nikos.p3d REMOTE (B_Soldier_F) LOCAL=false"]
#

So much headaches because of this behaviour

#

ENTITY setNoEventsAndVarsReplication BOOL or something like that

#

So if you think you can setup new variables in EntityCreated you end up with them being replaced by respawn behaviour

#

I'd suggest having respawn logic check if variables weren't already set, but this could break backwards stuff

gaunt depot
#

setNoEventsAndVarsReplication could break mods/addons that rely on this behaviour though

#

I guess there is no solution

#

Only suffering

#

ENTITY deleteVariable STRING maybe

regal nimbus
regal nimbus
#

Which is oddly flipped from the connection process, where the unit is created on the server and then moved to the client.

#

Although maybe with a respawn the new unit still gets created on the server. Not sure I checked.

gaunt depot
regal nimbus
#

I'm not following what this is for.

#

_object setVariable ["string", nil] already deletes?

gaunt depot
#

I guess key still remains or something?

regal nimbus
#

ah wait, misremembered.

#

Yeah, setVariable is apparently permanent.

gaunt depot
#
--- EntityCreated ---
21:49:21 ["5678563","koth_ehs_hitparts_history",<null>]
--- New var set ---
21:49:21 ["5678563","koth_ehs_hitparts_history",[]]
21:49:21 ["5678564","koth_ehs_hitparts_history",[]]
21:49:21 ["5678565","koth_ehs_hitparts_history",any]
21:49:21 ["5678566","koth_ehs_hitparts_history",any]
21:49:21 ["5678567","koth_ehs_hitparts_history",any]
21:49:21 ["5678568","koth_ehs_hitparts_history",any]
...
#

My setVariable lives for two frames and then respawn logic replaced it with nil I attempted to set on unit's death to stop this

regal nimbus
#

To remove a variable, set it to nil

#

Lies.

gaunt depot
#

Yep

regal nimbus
#

ah, it has addendum there for objects.

gaunt depot
#

Maybe respawn variable replication logic can stop copying variables that are nil?

#

Has a slight potential to break something somewhere

#

Being able to delete variables for good could be a better solution

#

HandleRespawnVariables, HandleRespawnEvents

#

ENTITY setNotRespawnableVariables ARRAY ex:["var1", "var2"]
ENTITY setNotRespawnableEvents ARRAY ex:[["Respawn", 1], ["Killed", 2], "HandleDamage"]

#

Or better add/remove so its mod-compatible

#

So solutions so far:

  1. Stop respawn logic from re-adding nil variables (only true nil returned by the command so other nils are still there?)
  2. ENTITY/ETC deleteAt STRING to delete variables from variable namespaces
  3. Add/Remove variables and events that shouldn't be replicated on respawn (most complex one)
regal nimbus
#

What about a global setting to disable var/EH transfer on respawn?

gaunt depot
regal nimbus
#

ah I see, can't make it mission-specific.

gaunt depot
#

(4. Make an ugly crutch that adds variables again on respawn too which I'm going to do for now)

#

Deleting variables for good instead of setting nil sounds like the best solution to me

#

Doesn't solve the issue for case where you want to keep events and variables on the corpse though

gaunt depot
#

If there is a chance for this to get looked at, I'll make a ticket

solid marten
solid marten
near cedar
#

Problem: I want to get the target position selected by the player in the artillery computer

Current solution appears to be loops and an EH trying to interpret stuff from the UI (apparently MapSingleClick EH doesn't work with artillery computer?)
https://forums.bohemia.net/forums/topic/191406-get-artillery-firing-position-in-computer/?tab=comments#comment-3259454 (from 2017)

Request: Let getArtilleryComputerSettings return the target position, or allow MapSingleClick work with artillery computer, or new EH for artillery computer that returns fire position and settings either when the map is clicked or the artillery is fired (or two separate EHs that do the respective tasks)

paper lava
devout wave
#

It would definitely be useful to be able to get an artillery vehicle's current target position without going through the UI, so it can work with AI artillery and not just players

gaunt depot
daring wagon
#

Speaking of artillery UI. It would be nice if it had an IDD so we can actually identify it without looping though all displays and controls to find it.

gaunt depot
solid marten
solid marten
gaunt depot
gaunt depot
#

So that warning Script command setOwner cannot be used for object 'B_UAV_AI'. Use setGroupOwner instead. is indeed very much true, if you don't follow it, shit breaks

near cedar
#

There might be technical inaccuracies but i hope it's clear from the ticket what the desired end goal is!

gaunt depot
#

It will differ a bit from wanted fired position though

solid marten
near cedar
#

Well at least in my case I would like the intended position -- not opposed to extra stuff of course!

#

there are some cases in which the rounds fall far away from the desired position (poor accuracy but otherwise normal precision/dispersion), wanted to try diagnosing/repro-ing that

#

(seems to happen at particular azimuth and range with respect to the unit -- i observed it with one of the GM MLRS, but want to make a repro)

devout wave
#

I can't post on FT right now but my general feeling for this would be unit EH for artillery firing that gives info about the target (possibly could skipped as can be replicated with Fired EH + following items), a command to get what an artillery unit is currently aiming at, and a command to get the AI's current fire mission

gaunt depot
#

Finally went to check this, you did change roadkill damage source.

Dev/Perf:

18:18:33 ["B Alpha 1-2:1 (B_Soldier_F)","",2.5833,"B Alpha 1-4:1 (Sa-Matra) REMOTE (C_Hatchback_01_F)","",-1,"B Alpha 1-4:1 (Sa-Matra) REMOTE (B_Soldier_F)","",false,0]

Stable:

18:30:19 ["B Alpha 1-2:2 (B_Soldier_F)","",3.06911,"B Alpha 1-2:1 (Sa-Matra) (B_Soldier_F)","",-1,"<NULL-object> ()","",false]
#

I do like this change because it makes more sense BUT it could be a huge backwards compatibility mess if somebody expects roadkill damage to be setup exactly like it was for 11 years.

#

In summary, roadkill damage is attributed:

  • Dev/Perf: source=vehicle, instigator=driver
  • Stable: source=driver, instigator=null
solid marten
#

Would you check first for instigator anyway?

#

Define โ€œhugeโ€ because I donโ€™t see it

gaunt depot
#

Well, maybe I exaggerated it a bit but it broke my scripts, I always assumed that roadkill damage is:
ammo == "" + source == unit + instigator == null + !isNull objectParent _source

#

Who knows who else does it like this

#

Maybe others can chip in and see if they assume roadkill damage to be setup exactly like this

#

Wish you could also change ammo to something like #roadkill or something

#

but this is even more backwards compatibility mess as there is no such CfgAmmo entry

#

11 years too late for such things

solid marten
#

So what happened to your script you got error?

solid marten
#

Can add fake ammo to cfgammo

gaunt depot
solid marten
#

Hardly game breaking

gaunt depot
#

Who knows, maybe it will break for somebody else who messes with HandleDamage

solid marten
#

Considering how unreliable it was before hmmm

gaunt depot
desert trench
#

roadkill meaning run over by vehicle right?

gaunt depot
#

Back in OA there was no damage source, in A3 it started to be driver (currentPilot), now it got changed to be vehicle and driver as instigator

solid marten
desert trench
#

We just have this


        _isMainSelection = _selection isEqualTo "";

        _return = if ((_projectile isEqualTo "") and {not (_unit isEqualTo _source) and {(isNull _source) or {((side _source) getFriend (side _unit) >= 0.6)}}}) then
        {
            //reapply previous damage state
            if (_isMainSelection) then
            {
                (damage _unit)
            }
            else
            {
                (_unit getHit _selection)
            };
        }
        else
        {
            if ((_isMainSelection) and {(_damage >= 1)}) then//auto-removal if unit is dead
            {
                if (!(alive _unit)) then
                {
                    _unit removeEventHandler ["HandleDamage",_thisEventHandler];
                };
            };

            _damage
        };```
gaunt depot
# solid marten Maybe add another context instead?

Yeah that what I was suggesting before, but I'm not sure how much work this will entail to also send damage kind alongside other stuff, thus my thought that sending fake ammo class names could be easier.

#

Personally I rename _ammo to these # monikers after decyphering where the game got the damage from

desert trench
#

and this

// units from playerSide cant be run over
if
(
    (_isInfantry)
    &&
    {
        (SPE_CadetMode)
        &&
        {
            (_projectile isEqualTo "")
            &&
            {
                (_unit isNotEqualTo _source)
                &&
                {
                    (isNull _source)
                    ||
                    ((_sideSource getFriend _sideUnit) >= 0.6)
                }
            }
        }
    }
)```
gaunt depot
#

_selection isEqualTo "" is far from ideal as hit parts can have empty selection names, better check for _hit_index < 0

desert trench
#

yep from the looks of it. if easier to identify, would be handy I'd agree

untold sky
# near cedar **Problem**: I want to get the target position selected by the player in the art...

getArtilleryComputerSettings actually doesn't look in the artillery computer at all, it has no reference to any artillery computer or UI.
It just finds the current selected weapon.
It basically just gets the current weapon and loaded magazine of the vehicle you are sitting in.
Even sitting at a MG would return that, no matter if artillery computer. How fun.

its a combination of currentWeapon/currentWeaponTurret/currentMagazineTurret and some config lookups to find the displayname.
What a weird command, but its from OFP era so.. I guess that justifies that..

shownArtilleryComputer actually can look up the UI. And it could pull the.. targetETA... eh..
Mh, it seems it also doesn't know what position is selected. But you could read it back from the text in the UI controls ๐Ÿ˜„
Mh yes SetArtilleTarget Ah yes sure SetAtilleryTarget

oh wow the artillery target is not stored in the artillery UI, its stored in the global UI thing.... The same global UI that handles all the AI commanding, because clearly AI commanding should be in UI code, not in AI code. Ahhhhhhhh

#

Adding that to the get settings command is easy then, it can just pull it from global UI. So ticket for that.
But omg ugh I hate this

gaunt depot
#

I wonder whos idea it was to hardcode two entire menus (arty and UAV terminal) when 99% of it could be scripted?

untold sky
#

I could be scripted nowadays

#

back then that would've meant adding script commands to make it possible to script that, which was too much work.
And after the script commands were there, transferring it over was too much work.

gaunt depot
#

Doesn't work with generic PhysX objects though, still source=self

["B Alpha 1-2:1 (Sa-Matra) (B_Soldier_F)","",0.528751,"B Alpha 1-2:1 (Sa-Matra) (B_Soldier_F)","",-1,"<NULL-object> ()","",false,0]
#

I still detect it though

#

So much effort just to see this

daring wagon
untold sky
#

yes thats what i proposed on ft ticket

daring wagon
#

Very nice.

gaunt depot
solid marten
#

might as well to keep it consistent, is there current ticket?

#

will need repro for that as well

gaunt depot
#

I guess we can use this one as that roadkill change derived from that

gaunt depot
solid marten
#

could you add it to the ticket plz

gaunt depot
#
v = createVehicle ["Land_ToiletBox_F", player modelToWorld [0,10,0]]; 
pos = getPos v; 
onEachFrame {v setPos pos; v setVelocity [0,100,0]}; 
u = group player createUnit [typeOf player, v, [], 0, "CAN_COLLIDE"]; 
```Expanded it a bit so it auto kills a unit with collision damage
solid marten
#

well this is tricky, maybe box need to be moving in order to be considered source?

gaunt depot
#

Otherwise flying toilet could kill units

solid marten
#

if it just has velocity value but not moving it is suicide

gaunt depot
#

Replace class with some car and you'll get source=car in the event handler

#

same sitution but source is the vehicle, not unit