I think its better to bite the bullet and fix this, make drawRectangle/drawEllipse/drawIcon treat angle as world angle rather than UI angle, same as markers currently do.
- Queries
- Arma 3 Activity
- All Stories
- Search
- Advanced Search
Advanced Search
Apr 4 2023
Example of repro results, in this case 4 out of 100 drones teleported back to their original spot after assembly.
Apr 3 2023
In T171344#2425784, @BIS_fnc_KK wrote:if set velocity is part of vehicle update packet (probably is) then it will update when it updates which could be after ownership change which is immediate. Not sure what would be a good solution
This doesn't happen only with such quick scripted assembles, I was working with backpack drones recently and had them disappear twice on me during normal testing gameplay (Using Assemble from mouse wheel menu). What I've seen as client: drone appears before me for a few frames and then vanishes. When I checked its position it was very far and high away (out position probably) and falling down back to earth.
Updated repro, now properly shows bugged vehicles in the chat and puts them into fucked array.
Apr 2 2023
Didn't check what exactly changed yet (is group deleted or has delete when empty flag set?) but I noticed that you can't get that empty group when vehicle is dissembled unless you put it into a variable. Lets expand Disassembled event handler to also include reference to the group that deleted units had?
I wonder if its possible to fix this through config without changing the model?
Apr 1 2023
Mar 31 2023
In summary, I'm against changing existing commands to also handle one specific case of being run on backpacks. Its already possible to do everything you want with packed static\drone, just requires some tricks, this command should have made it clear and easy to do that.
In T171260#2424804, @BIS_fnc_KK wrote:the vehicle is removed from world when it is packed I dont want to make a specific getter for asset that is not supposed to be exposed with api. The fact that it is available via variable reference was overlooked but due to back compatibility would now remain. I am actually trying to make it usable by wider user base, set/getVehicleAmmo is a good example. I can add that and god knows when I will be around that part of the code again, so if you give the list I can do it in one go
I don't get this argument what so ever, even if out vehicles aren't simulated or shouldn't be operated with some scripting commands, so what? And its not like this is arbitrary code execution level security issue, just a matter of entity being limited while hidden. Lets forbid allObjects from returning out vehicles too then, what if user deletes a vehicle from there and ends up getting an RPT error? There are already myriad of ways to break\lag\freeze\crash the game with scripting already, by the nature of modding.
Did tests for all possible combination, works properly. Shitty test code:
if(!isNil"markers") then {{deleteMarker _x} forEach markers;}; markers = []; if(!isNil"objects") then {{deleteVehicle _x} forEach objects}; objects = []; if(!isNil"locations") then {{deleteLocation _x} forEach locations}; locations = []; positions = []; if(isNil"testgroups") then {{{deleteVehicle _x} forEach units _x; deleteGroup _x} forEach testgroups}; testgroups = [];
You can do a lots of things with a packed drone\static - repair, refuel, change weapons and magazines, get\set variables, altering a single command to have special handling case for backpacks is not the way. Returning object off backpack can also tell you if backpack was assembled before.
In T171260#2424746, @BIS_fnc_KK wrote:Sure I can. Would this be enough?
In T171260#2424744, @BIS_fnc_KK wrote:I can make it rearm with
unitBackpack player setVehicleAmmo 1;
Simplest application example - rearming static weapons\drones when they're in backpack form:
getBackpackVehicle unitBackpack player setVehicleAmmo 1;
- Fresh mission, get backpack with player addBackpack "B_UGV_02_Demining_backpack_F"
- Run "B_UGV_02_Demining_F" allObjects 4 => []
- If command existed, you'd run getBackpackVehicle unitBackpack player => <NULL-object>
- Assemble backpack
- Disassemble the drone
- Run "B_UGV_02_Demining_F" allObjects 4 => [2102463a040# 1781926: ugv_02_f.p3d]
- Wear backpack off the ground
- Now can run the new command with same getBackpackVehicle unitBackpack player expression and it should return that same vehicle 2102463a040# 1781926: ugv_02_f.p3d
When you dissemble the drone or static weapon, it doesn't get deleted but gets hidden and link to that entity is stored in the backpack, the command should return that link. When you spawn assemblable backpack it doesn't spawn associated drone\static right away but only when you assemble it the first time.
In T171260#2424736, @BIS_fnc_KK wrote:getBackpackVehicle unitBackpack player
unitBackpack is null when weapon is assembled
Did some tests, works great!
In T171272#2424697, @kju-PvPscene wrote:Would this also help with textures used by UI, particles or even game assets?
Like one can force preloading via config (PreloadConfig and PreloadTextures) - aka would be good to have also via mission desc.ext or scripting (best).
In T63451#2424617, @BIS_fnc_KK wrote:How bad, and what is the alternative? Mind you any radical change and we gonna have a lot of people complaining about that too
Mar 30 2023
I've seen people abuse this to skip reloading animations - drop weapon and mag on the ground and pick it back up, faster than reloading animation.
Made a ticket: T171272
In T170766#2424525, @dedmen wrote:BOOL = preloadTexture STRING
Yes. Separate ticket. And its low priority. Texture cache mess will be fun
Fun allowed then. "Can we have a scripting command to check that" was about having such texture preloading scripting command, sorry for hasty confusing replies, really happy to see this addressed.
In T170766#2424525, @dedmen wrote:Can we have a scripting command to check that?
No.
Refined idea once more, it all can be crammed into single command:
BOOL = preloadTexture STRING
Will return true as soon as texture is loaded.
In T170766#2424521, @dedmen wrote:So one issue, its trying to use the texture before its loaded (because loading is async), so when the display is created, you set the texture, it will only load next frame, but right after creating display it tries to render.
Easy to check for that and skip rendering the texture.Next issue, you have to manually re-render till its done loading, and there is no way for you to know when its done, it might take multiple frames.
So fix for that, after creation it will automatically trigger re-rendering while there is a non-ready texture inside the display OR there is a UIToTexture inside it that is scheduled for re-render.
That will recursively wait till all sub-textures are loaded.But this will only happen at creation, if you add a sub texture some time later, you need to take care of that updating yourself.
Bumping, had a need to have STR_A3_C_CfgVehicles_B_HMG_02_high_weapon_F0 and STR_A3_C_CfgVehicles_O_HMG_02_high_weapon_F0 fixed, its names for backpacks for disassembled M2 Static gun. Gonna have to use FIA versions instead of proper side versions for now.
Mar 29 2023
In T170766#2424111, @dedmen wrote:Y can I not run mission in Eden 😢
works fine if i remove all the waitUntils and eden check. But need to run set texture twice to trigger that error.
I have already seen this error before.. it tries REALLY hard to load the second mipmap, even when there is only one. And it.. obviously fails.
Mar 28 2023
Repro adjusted with big visible text on the map:
testcenter = getPosWorld player;
In T170754#2423769, @dedmen wrote:
Yeah, this is a long going bug in the game, since at least Arma 2, probably even Arma 1 or even OFP. I think its caused by messing with your FOV in .Arma3Profile by changing either fovTop or fovLeft and if they're not 4:3 and 3:4, map icons become squished. Here is how I have it at 1080p with
fovTop=0.75; fovLeft=1.3333334;
Mar 27 2023
Check parameters, maybe you have your mods listed there in "Mods" or "Server-side Mods"
Related ticket to close once this one is done: T128006
Since Arma 3 v1.96 this command returns both driver and gunner units if the UAV is controlled by 2 players.
Can be set as resolved.
Found a hack to fix stuck remote control trough UAV terminal:
Mar 19 2023
I recently had an issue where buildings failed to receive scripted (HandleDamage-returned) damage for JIP players. I chose some building far from the action, damaged it, restarted the game, rejoined and it had wrong damage numbers. My guess was that game mixes up which entity should get which damages, maybe it does it the same with variables. It was pretty reproducible last time I observed it, I'll make a ticket some time.
Does deleting and re-creating the marker again helps to bring it to foreground?
On a side note, log function shows group have fade and scale close to 0.5 but not exactly. They're fine on next frame, looks like ctrlCommited return true one frame before animation actually finishes.
To fix this issue, display your texture in normal UI somewhere before using it inside ui2texture. I have the ticket about this exact issue @ https://feedback.bistudio.com/T170766
Mar 18 2023
The use case is displaying high resolution textures in small sizes to avoid ugly aliasing.
What about having it as procedural texture?
Mar 17 2023
Please let us know how it went, I had similar issues with streaming objects, yet to make a repro and ticket so I'm very interested in your case.
Mar 14 2023
Does this happen for JIP players and not players who were on the server at the moment of "setVariable" use?
Mar 13 2023
@Sergey_rus42 What is your UID? Also, sights are per weapon, you probably bought it for certain weapon.
Mar 12 2023
Another attribute name idea, same property name, different values:
mipmap='#2'
mipmap='32px'
mipmap='0.04'
or usemip or just mip as original idea had it.
Mar 10 2023
Mar 6 2023
Mar 5 2023
mipmap='2'
mipmaph='32'
mipmapui='0.04'
More name ideas
This error also happens if you try displaying .paa pictures without mipmaps inside inner ui2texture display.
Temporary workaround without need to draw inner display anywhere on UI:
Mar 3 2023
Mar 2 2023
I also had a need for such feature and found a hacky workaround. The way to solve it is to attach through a intermediary local object (createVehicleLocal)
Mar 1 2023
Yes its all already possible, its a question of convenience of doing it with a single command.
Feb 28 2023
Feb 27 2023
Example:
_group addEventHandler ["UnitKilled", { params ["_group", "_unit"]; if(units _group findIf {alive _x} < 0) then { // Everyone is dead }; }];
In T170658#2413276, @Xeno wrote:Samatra, there is already a killed EH.
This is about an event handler only firing when all units in a group are dead.. Needed for AI groups in Co-op missions for example.
Currently you have to constantly iterate over all units of a group to check if all units are down.
So virtually like the empty group EH which only fires when all units in a group are deleted.
I'd suggest "UnitKilled" event handler instead. There you can check if everyone is dead as well doing something on individual unit death.
In T165080#2413236, @BIS_fnc_KK wrote:Cant tell what is scripted and what is vanilla on that video. Can you make an Eden repro showing the problem?
Feb 26 2023
In T165080#2413212, @BIS_fnc_KK wrote:It cannot be just fixed as it may break missions where people used workarounds
In T165080#2413210, @BIS_fnc_KK wrote:is this the same issue? https://feedback.bistudio.com/T169976