User Details
- User Since
- Aug 11 2013, 10:47 AM (592 w, 6 d)
May 10 2016
On the VBS wiki, the command has a 4th argument :
https://resources.bisimulations.com/w/index.php?title=playScriptedMission
This argument is accepted by the Arma engine as an optional value. But still not working if set to true.
Find only one occurence of this command in the whole Arma 3 addons :
In Addons\ui_f\a3\ui_f\scripts\startCredits.sqf (in Arma 3\Addons\ui_f.pbo)
Limnos island ? Seems old stuff.
Did not success to use/modify the script.
disableSerialization;
private ["_idd", "_display"];
_idd = getNumber(configFile >> "RscDisplayOptions" >> "idd");
_display = findDisplay _idd;
_display closeDisplay 2;
- spawn
{
sleep 0.005;
playScriptedMission ["limnos", {private ["_handle"]; _handle = execVM "\A3\missions_f\data\scenes\credits1\init.sqf"}, configFile >> "CfgMissions" >> "Cutscenes" >> "Credits"];
};
Repro code of my previous note :
Bind the MiniMapToggle to a single key and a combo key.
Use these keys on the game display (46) :
> The single key is working for actionKeys and inputAction.
> The combo key is NOT working for actionKeys. BUT working for inputAction.
Open the main map (display 12) and do the same test :
> The single key is working for actionKeys. BUT NOT working for inputAction.
> The combo key is NOT working for actionKeys NOR inputAction.
(findDisplay 46) displayAddEventHandler ["KeyDown",
{
systemChat format
[
"GAME DISPLAY => INPUT : %1 @ KEYS : %2", inputAction "MiniMapToggle" > 0, (_this select 1) in actionKeys "MiniMapToggle"
];
false
}];
(findDisplay 12) displayAddEventHandler ["KeyDown",
{
systemChat format
[
"MAP DISPLAY => INPUT : %1 @ KEYS : %2", inputAction "MiniMapToggle" > 0, (_this select 1) in actionKeys "MiniMapToggle"
];
false
}];
Problem confirmed.
- actionKeys not reliable :
actionKeys can not be used for key combos :
actionKeys "MiniMapToggle" => [39, 4.86539e+008]
39 => ";"
4.86539e+008 <=> "Ctrl + M"
I presume the value contains a binary codification for Ctrl/Alt/Shift. We need at least the scheme of codification on the Biki to handle with it.
- Non working solution :
Using (inputAction "MiniMapToggle" > 0) in the KeyDown event handler is not reliable.
If a dialog is opened (like the main map), the value returned by this command is most of time equal to 0.
Duplicate of http://feedback.arma3.com/view.php?id=12651
:)
It would be really great to have this control working as expected (multi line text field).
Crash confirmed on Win7 64bits.
It is not directly linked to BIS_fnc_setHeight but to the setPos* commands.
On my computer crashed appears for player's altitude equals to 1000000000000 or 10000000000000.
Just before the CTD, arma3.exe uses all the available memory (4GB).
Great news :)
Thanks
Hello oukej,
To help us planning some coming community's development : what does mean this status "reviewed" ?
It means "will not be solved" ?
Thanks.
Here is a method to force the Arma engine to take into account de setPos'd static object for the AI pathfinding :
It is a code to be executed on each computer. It creates a helipad at the exact same position than the setPos'd object.
It is a trick to force the Arma engine to run its routine which updates the obstacles for AI pathfinding.
I tested it long time and it works, even in multiplayer.
// Force to take into account the obstacles for AI pathfinding (to be executed on each computer)
if (_object isKindOf "Static") then
{
_object spawn
{
/* * First helipad is to get the exact reference position of the object. * * Second helipad will cause the execution of the engine's routine * updating the pathfinding obstacles for this position. */ private ["_helipad1", "_helipad2"]; sleep 0.7; _helipad1 = "Land_HelipadEmpty_F" createVehicleLocal (getPosATL _this); _helipad1 attachTo [_this, [0,0,0]]; sleep 0.3; _helipad2 = "Land_HelipadEmpty_F" createVehicleLocal (getPosATL _helipad1); _helipad2 setPosASL getPosASL _helipad1; sleep 1; detach _helipad1; deleteVehicle _helipad1; deleteVehicle _helipad2;
};
};
Hello oukej,
Thanks for the clarification about "reviewed" and "acknowledged" :) It was not clear for me.
About the reported issue, here is a suggestion :
I assume there is an engine's function that update a data structure which contains all the
"Static" obstacles for AI path finding.
As you said, this function is probably called after the mission init to take into account the setPos in object's init lines.
If I'm right, maybe adding a SQF scripting command named "commitStaticObstacles", which calls the engine's function should be a very nice solution :)
So we can choose (on SQF-side) to update the data structure when the update should be needed.
(The command has local effect and takes no argument.)
Regards
@Killzone_Kid :
I had two different needs about the invulnerability :
- Be invulnerable when a condition NOT depending of the future damage events is true -> I succeed easily with allowDamage
- Compute a condition depending of the damage event context to know if the current Damage Event has to be ignored -> I succeed hardly with HandleDamage EH.
The two needs have been fullfilled. So I'm personnaly OK :)
The first need is not perfect because doing "allowDamage true" at the end may do vulnerable an object which has been set invulnerable by another script or by the mission maker.
The second need was hard due to the getHit missing but never mind.
I used some tricks and it is not 100% perfect.
Couldn't you use the setVariable command when changing the damage allowance in the provided example?
Of course if there is only my script running on Arma. But we need the command to ensure compatibility between other scripts and with the mission maker choices in the initialization line (if he adds "allowDamage false" on specific objects).
Note :
Using (then removing) the event handler HandleDamage to return 0 is not a viable solution.
Because returning 0 doesn't only make it invulnerable, but also do a "setDamage 0".
In addition, the missing of the "getHit" command makes difficult/impossible to keep the health status properly.
Thanks for your comments. I'm agree for the command name, isDamageAllowed is clearer.
Although I personally don't see the need for such command
What do you suggest ? :) You have a better solution to make temporary an object indestructible (without "corrupting" its current damage state) ?
Related to : AI walk through setPos'd static objects [repro mission]
http://feedback.arma3.com/view.php?id=19588
It works good. Thanks.
It if can help, here is how to ignore damage on a specific condition.
When selection is empty, we need to use the command "damage.
_unit addEventHandler ["HandleDamage",
{
private ["_unit", "_selection", "_damage", "_source"];
_unit = _this select 0;
_selection = _this select 1;
_damage = _this select 2;
_source = _this select 3;
if (<CONDITION WHEN NOT TAKE INTO ACCOUNT DAMAGE>) then
{
if (_selection == "") then { damage _unit // No selection, return previous damage value } else { _unit getHit _selection // Return previous getHit value };
}; // No "else", returning no value will let other event handlers handle the damage
}];
This command is absolutely needed to work with HandleDamage EH.
EDIT : I see some people making their own "gethit" implementation using set/getVariable on the unit.
But we still need the command !
Unfortunately, you are absolutely right :(
This is not a viable solution.
The request is not about setting the mouse position on the screen, but to set/get the cursor char position in the string entered in a text control.
This feature will be great. It will allow to finish my "multi line text editor" implementation requested here : http://feedback.arma3.com/view.php?id=12651
WeaponDisassembled and cursorTarget in R3F Logistics :
player addEventHandler ["WeaponDisassembled",
{ private ["_objet"]; _objet = cursorTarget; if (!isNull _objet && {!isNull (_objet getVariable ["R3F_LOG_est_deplace_par", objNull])}) then { _objet setVariable ["R3F_LOG_est_deplace_par", objNull, true]; }; }];
Absolutely agreed.
WeaponDisassembled EH should passed the disassembled weapon as 4th paramter.
This missing creates a potentiel bug in my project.
Would be great to cancel the weapon disassembly by returning false.
Or in a smarter way : to disable the disassembly feature by : weapon setVariable ["BIS_disable_weapon_disassembly", true]
The command cursorTarget can be used to get the disassembled weapon.
It works only for the local player. And this not a safe way to retrieve it.
To work also for units different from player, commands like nearestObject could also be used. But this is a very unsafe way.
BIS, please add this 4th parameter.
I deduce that the event handler triggers after the weapon is disassembled
No, I thought too before testing it. But I succeed to retrieve the dismounted weapon with cursorTarget.
Maybe the near* commands don't work (too slow ?).
Absolutely agreed with this remark :
"Then of course, a command to determine the current charge setting that is selected would be nice (and an indicator on the non-artillery computer UI)."
These two points are a missing.
The command inRangeOfArtillery returns a boolean, not the firing angles.
I know the mathematics are not complex (I implemented it on A2), but we still need a scripting command because :
- we can't easily/accurately know what is the selected shell's charge (close, far, extreme, ...) and its effect on ballistics
- the implementation is much faster and already exists on the A3 engine side
The high or low trajectory don't really matter as long as the artillery is able to hit the target.
It matters. The flying time is very different (can be 10 sec low and 35 sec high).
The accuracy and impact angle is not the same too.
Note : "direction high" and "direction low" will be always the same value with the arma ballistics.
But using this returned array format is more accurate and pratical (empty sub-array means "solution not exists").
Maybe try [R3F] Logistics ( http://makearmanotwar.com/entry/4DWDt4DY7i#.VFeUovmG98F ).
It is an external script, but maybe what you are seeking.
Thanks for your nice and hard work on the inventory thematics ;)
Duplicate : http://feedback.arma3.com/view.php?id=6266
Sorry, I just found an existing ticket.
Didn't searsh with the good keyword.
Confirmed with 0.77.109940
After using the commande, we keep the control of the unit.
Any news about this kind of feature to launch quickly the mission to dev ?
I waste 10% of my time to load missions ! :)
Directly related to http://feedback.arma3.com/view.php?id=12756
(Duplicate)
Confirmed.
The problem concerns not only RscDisplayInventory but any dialog.
This is directly related to this ticket : http://feedback.arma3.com/view.php?id=12644
Confirmed. It will be nice to have it.
Can be easily done by using "setMousePosition" in fn_camera.sqf :)
I finally found what is the exact problem.
It is not related to the dialog opened, but to camera view without using the command cameraEffectEnableHUD.
I put a mission file to show the difference with and without cameraEffectEnableHUD.
It is no more a matter for me, since using cameraEffectEnableHUD allow drawing icons in camera mode.
I don't know if it is a bug or a feature. But I think drawIcon3D and drawLine3D should have the same behavior.
Thx for this report KK,
You are right. The conditions to produce the problem are more complex.
I'm investigating on it and will update the ticket.
Updated : The problem is also available on the controls of a dialog.
Nice one, thanks :) It will be very useful.
Confirmed on 0.77.108982
Textures from mission can't be loaded. Only from addons.
Hope it will be changed.
Problem confirmed. A discuss about here : http://forums.bistudio.com/showthread.php?153979-camSetDir-is-bugged-please-upvote
We can use setVectorDirAndUp (or setVectorDir) for 3D vector.
Or setDir for azimut angle.
The problem still exists in the DEV branch.
Some additionnal info (like "move as driver") in my duplicate ticket : http://feedback.arma3.com/view.php?id=14825
Problem still present on 0.75.108717
Waiting for a solution too.
In 1.01.110097, most of inventory commands are still bugged/unavailable for a dead unit.
We have to implement weird, heavy and unreliable tricks to bypass this problem.
Hope it will be fixed.
Commands are disabled in MP :
[97106] Changed: copyFromClipboard now does nothing in MP, copyToClipboard does nothing in MP on clients.
Hope it will be enable back to allow import/export with community tools.
Summary and description should be updated.