Jump to content


  • Content Count

  • Joined

  • Last visited

  • Medals

Community Reputation

627 Excellent


About Leopard20

  • Rank
    Master Sergeant

Contact Methods

  • Website URL
  • Twitter
  • Youtube
  • Steam url id
  • Reddit

Profile Information

  • Gender
  • Location
  • Interests
    Military stuff, Programming, Artificial Intelligence, Robotics

Recent Profile Visitors

7189 profile views
  1. I plan to update it after Super AI. It needs a complete rewrite as well (there are a lot of bad coding practices that make it slow) Machine learning?! For a computer game?! lol It's not possible (performance wise). Especially in a game like Arma which runs bad already. It does have a significantly better navigation (path generation) system tho. In fact, I would say over 70% of the development time has been spent on this aspect of the game.
  2. Hi. If possible, I will. Right now the priority is my other mod.
  3. Hi Nope. I will keep everyone updated if there is any. New issues pop up every step of the way, so I don't know when I can finish this. 😞 But rest assured I'm doing my best.
  4. @Morriski Man this terrain is a piece of art! I love it! That's so beautiful! Is that how the skies are or have you used your sullen skies mod?
  5. Yes, IFA3 is still in development, so hopefully it will get fixed.
  6. This code is full of all kinds of errors (5 lines out of 9 lines you wrote). It appears to be a function that added some (broken) event handler, so it was proabbly executed like: [_someUnit] call THAT_fnc_addHandleDamage. You can put it in the init box of a unit, in which case you can just remove the first line and write: this addEventHandler [....................] The error is that the condition is wrong (I'm not sure what _checkVehicles were but I'm assuming they're the vehicle types that were allowed). It should've checked the type, not the vehicle itself: if ((_unit != _vehicle) && {typeOf _vehicle in _checkVehicles}) exitWith {0}; You can't use the handleDamage event handler if you're using ACE Medical. (ACE will return its own damage) I'm not sure what you were trying to do exactly, but this does what the title says: Add this to the init box of the heli: It makes any player unit that gets in invincible, and any unit (player and non player) that gets out becomes vulnerable. this addEventHandler ["GetIn", { params ["_heli", "", "_unit", ""]; _unit allowDamage !(isPlayer _unit); }]; this addEventHandler ["GetOut", { params ["_heli", "", "_unit", ""]; _unit allowDamage true; }]; If the units are in the vehicle at the start of the mission, add this to the init box of the units (or you can use {_x allowDamage false} forEach units this If you add it to the group's init box): this allowDamage false; You might want to learn some SQF programming before trying to make a mission that needs scripting.
  7. There was no need to post screenshots. There's a button in the Launcher that allows you to export your mod list as a nice and pretty HTML file.
  8. You can zip it and upload it somewhere. @Gunter Severloh I'm not sure if an RPT can help in this case. But it might be worth a try. @Hery387 Does the leader literally say "Disembark"? If not, it is most likely due to some mod that is trying to change the unit's animation. In case you don't find any solution, here is a scripting "hack", which teleports any unit that disembarks into the vehicle: (make sure to change the time to what you want) Add this to the group's init script: MY_VAR_GetOutTime = 10; //maximum seconds after mission start where you don't want the units to get out { _x addEventHandler ["GetOutMan", { if (time < MY_VAR_GetOutTime) then { params ["_AI", "_role", "_veh", "_index"]; call ([ {_AI moveInDriver _veh}, {_AI moveInTurret [_veh, _index]}, { _fullCrew = fullCrew [_veh, "cargo", true]; if (count _fullCrew == 0) then { _AI moveInTurret [_veh, _index] } else { if ((isNil "_index" || {count _index == 0}) && { _index = -1; { if (_x#0 == _AI) exitWith { _index = [_x#2]; }; } forEach _fullCrew; _index isEqualTo -1 }) then { _AI moveInCargo _veh } else { _AI moveInCargo [_veh, _index#0] } } }, { _AI moveInGunner _veh }, { _AI moveInCommander _veh } ] select (["driver", "turret", "cargo", "gunner", "commander"] find toLower _role)); }; }]; } forEach units this
  9. Do you use any AI mods? If so, try without them, see if they're causing the issue. Also, can you specify what vehicles you use (and from which mod)? If you could share your mission, maybe we could help more.
  10. Have you done anything else to the mission? Normally they don't do that . Two things I can think of: 1. Add this to the init script of the group: units this orderGetIn true 2. Try disbanding the whole group, then join them back in: Select all units in the squad, press ctrl+drag mouse on empty space to disband, then ctrl+drag again and link them to the leader (preferably the BTR commander)
  11. Leopard20

    Scripting upon death

    One method is to use the "AnimDone" event handler: https://community.bistudio.com/wiki/Arma_3:_Event_Handlers#AnimDone For example (replace "MyAnim" with the name of the animation you want to play): _EH = _unit1 getVariable ["AnimDone_EH",-1]; if (_EH == -1) then { //you only need one event handler, so do not add if you have created one already _EH = _unit1 addEventHandler ["AnimDone", { params ["_unit1", "_anim"]; if (_anim == "MyAnim") then { //unit2 do something } }]; _unit1 setVariable ["AnimDone_EH",_EH]; }; _unit1 playMoveNow "MyAnim" The alternative approach is to use a scheduled script with "sleep": _unit1 playMoveNow "MyMove"; //Read animation duration from config //Animation duration is the inverse of animation speed (1/speed); if it's negative or zero, it's simply: (-1*speed) _moveTime = -1*getNumber(configFile >> "CfgMovesMaleSdr" >> "States" >> "MyMove" >> "Speed"); if (_moveTime < 0) then { _moveTime = -1/_moveTime; }; sleep _moveTime; //_unit2 do something
  12. I was just quoting the guy. So I didn't pay much attention to that. But you're right about that one.
  13. I'm not sure if terrain object IDs are constant or not (I think they are). If they are, all you have to do is write: ([3337.4,3689.55,0.00149918] nearestObject 30580) hideObjectGlobal true; It will always return object ID 30580, but your method might return some other object (due to randomness).
  14. Leopard20

    Arma 3 Notepad++ Syntax Highlighting

    @Janez Hi, Could you please add the latest commands from the dev branch as well: https://community.bistudio.com/wiki/Category:Introduced_with_Arma_3_Development_Branch There's gonna be an update soon (most likely by the end of this week) and I don't think there are gonna be any new commands. BTW, please add the \ operator too; it's used as the line continuation character in preprocessor lines (I totally forgot to mention this the last time) Edit: the : operator is missing as well. (used in switch do cases)