Jump to content

JCataclisma

Member
  • Content Count

    207
  • Joined

  • Last visited

  • Medals

Everything posted by JCataclisma

  1. Hey, guys! Regarding "Arma 3 Creator DLC: Expeditionary Forces": In case anyone wants to spawn the new amphibious using scripts instead of the mission editor, here are the texture paths for each one of their - really nice!!! - six variations. Just for the sake of variety, I am using the regular 30 mm cannon for the "sandy" ones, and the M1 50 mm for the "greenys". I have also included the lines for the custom animations like open hatches, show sandbags, etc. And there is the rear ramp opening as well, although it's "blocked" in the lines bellow, 'cause I could not find the proper action on the game menu to open/close it. These lines are from my very basic "spawner", so if you want to use them as they are, please remember to adapt accordingly the ones like "setPos", "setDir", etc. Cheers! Arma 3 Creator DLC: Expeditionary Forces https://store.steampowered.com/app/2647830/Arma_3_Creator_DLC_Expeditionary_Forces/
  2. JCataclisma

    Taxiing planes script

    Hey! Try and take a look at the page containing most of the inputAction keys, in the link bellow. Search for "heliDown" and, two lines after, it will show you some specifics for planes, which might do the trick you need. 😉 https://community.bistudio.com/wiki/inputAction/actions?useskin=darkvector You could have some fun by trying to use other commands as well. And, yeah, you could use isKindOF 'Plane' or even 'Air' if you want to take other flying things than helos and planes.
  3. JCataclisma

    A conundrum - or not

    The only things I can think would be to apply some commands upon the guy once he reaches that escape point, like teleporting him somewhere distant and using "_this setCaptive true;" and "_this allowDamage false;", so you would force the NPC to not being a target for nobody, until you get him back to action on next objectives.
  4. Place it (the vehicle) on the editor, then double-click it, and inside the second row ("Object: Init") there's a box "variable name". That's the unique name you will give to it. 😎
  5. If that small script does what you want, you could just add more objects, from 1 to 16 as you have initially planned, then copy and paste the code and change all the variable names you find inside it. For instance, keep the thunderMk1 / mk12 / mk13, and change all of them for every time you paste, using "z14", "thunder10" or whatever you like. You will notice that every variable name appears several times on each block of code, so you must change them all (I'd suggest "Find And Replace" function while in a nice editor like Notepad++). But remember that such variable names MUST match the names you give to the invisible objects on mission editor - the ones marking places where you want the lightning strikes. Play and mess with the delay time between each lightning, managed by those "sleep 2;" lines after every block. And if you want the full blown at the end, you can just copy and paste it all over again, but removing such "sleep2;" lines so the script will apply all the lightnings again at once. So the grand finale could be like this:
  6. Nice, really nice idea! Well, I cannot handle "modules' " stuff, but a few months ago, @pierremgi brought a lot of great improvements to a kind of "Zeus' Hammer" punishment that I used to apply upon dirty players on a public server. Although it was used within a new addAction (menu), I have just tested it, and it works really nice when activated by a trigger. Please make this first attempt, at least to see whether such style could help in the direction you want. Instead of modules, place at least three objects like the "Helipad (invisible)" (class name "Land_HelipadEmpty_F"), and give them the variable names of "thunderMk1", "thunderMk12" and "thunderMk13". Place a trigger that should be activated by the player to start the show: CONDITION: this ON ACTIVATION: [] execVM "CircleOfThunder.sqf"; Create a file named "CircleOfThunder.sqf" inside your mission folder, and throw all the stuff bellow inside it. If you want the lightning alone, without those extra "delayed" explosions, you can just delete all those lines starting from "_charge_11" until " _charge_88" (there are three blocks of them).
  7. JCataclisma

    help re nearestObjects

    Mostly, no...and yes. 😂 Providing _nearbyEastTroops is just a custom/random name I've chosen for such variable, it could be ANY other name, like "_closeEnemies", "_nearestTargets", or whatever. 'SoldierEB' ('E' is for 'East') is the config name/kindOf for the Opfor units, which you can find when you go in the editor, right-click on the unit and check the "View in config file". The combination of 'Man' and 'SoldierEB' is what actually does the trick, so you can use 'SoldierGB' for Independent faction ('G' for 'Guerrilla') and 'SoldierWB' for Bluefor/West. I forgot to mention that such code I use is specifically for soldiers, not necessarily targeting vehicles. Just as a more clear example, this is what I am currently using, some kind of fake gas bomb, which should act differently upon each kind of "people" nearby its area of impact ('_charge_9' is the variable name for the gas bomb): private _nearbyEastTroops = nearestObjects [_charge_9, ["Man"], 7] select {_x isKindOf 'SoldierEB'}; private _nearbyGuerTroops = nearestObjects [_charge_9, ["Man"], 7] select {_x isKindOf 'SoldierGB'}; private _nearbyBlueTroops = nearestObjects [_charge_9, ["Man"], 7] select {_x isKindOf 'SoldierWB'}; sleep 4; { _x setDamage 1; } forEach _nearbyEastTroops; { _x setDamage 1; } forEach _nearbyGuerTroops; { _x setUnconscious true; } forEach _nearbyBlueTroops; sleep 2;
  8. JCataclisma

    help re nearestObjects

    Try something like this: private _nearbyEastTroops = nearestObjects [cap0_1, ["Man"], 51] select {_x isKindOf 'SoldierEB'}; {[_x, 2500] execVM "fn_taskRush.sqf"} forEach _nearbyEastTroops;
  9. JCataclisma

    Vehicle disable, but not destroy

    @meaty "/*HitPoints to protect*/" is NOT what you must use: it's just an example, so you need to add there the names of the hit parts you desire to protect. You can find the specific names of such part by righ-clicking on the vehicle in editor, then looking at its config file. Take a look at Polpox' message again, so you can see what was used: {(_this#7 in ["hitlfwheel","hitlbwheel","hitlmwheel","hitlf2wheel","hitrfwheel","hitrbwheel","hitrmwheel","hitrf2wheel"])}
  10. You don't need all those symbols on the second line - just use "_unit = _this select 0;" . And, accordingly to that example on wiki page, you are missing the parenthesis on the "getUnitLoadout". So try this: Params ["_unit"]; _unit = _this # 0; if (random 1 < 0.8) then { _unit setUnitLoadout (getUnitLoadout basic); } else { _unit setUnitLoadout (getUnitLoadout elite); };
  11. Hello! Does the game tell you which specific variable is wrong, like showing you the "#" symbol before the variable name? And, just for the sake of an extra testing, you could have two soldiers anywhere distant on your map, named "elite" and "notElite", already using the desired loadout. Then you try to use the syntax shown on the Example 2 (link at the end of this message) So instead of your current last lines on the provided code, you could try something like this: if (random 1 < 0.8) then { _unit setUnitLoadout (getUnitLoadout notElite); } else { _unit setUnitLoadout (getUnitLoadout elite); }; https://community.bistudio.com/wiki/setUnitLoadout?useskin=darkvector
  12. Does it happen with any class of launcher, or just a specific one? Vanilla or mod? Did you try to use "removeAllWeapons" on the unit prior to add the launcher (at least for testing), so to avoid the lack of space on soldier's inventory? And maybe whether there is no space for the rockets, the command might be ignored. Nonetheless, try to use "addWeaponGlobal", to force the use of slot.
  13. JCataclisma

    Increase light of vehicles

    I don't think so. But you can add some extra lanterns/portable lights attached to the vehicle, to see whether they give you a better result. Just modify and use the code bellow to see what it does. You will need to change "[x,y,z]" values on the second line to adjust the position you want. Two direct approaches: 1-) If you add e code on the init box of vehicle on editor, then change "_currentVehicle" to "this" (or "_this" if multiplayer). or 2-) Give your vehicle a name on editor and add this code to the init.sqf, changing "_currentVehicle" to the name of the vehicle. _frontRightLamp = "Land_PortableLight_02_single_folded_olive_F" createVehicle [0, 0, 0]; _frontRightLamp attachTo [_currentVehicle, [0.95, 2.3, -1.4]]; _frontRightLamp setDir 180;
  14. Maybe you could do some experimentation by "evolving" such objects with invisible helipads, then attaching a lightpole to them and see whether it would return desired values... ? 🤔 But, yeah, you would remain NOT getting original objects' values.
  15. The only mode/framework I have mostly been playing for the past two years is Quiksilver's Invade & Annex. I believe there are a few nice ideas there, on the Side Missions mini-scenarios, things like escort a truck from one town to a distant one, search & destroy situations, base and/or vehicle defense, etc. Yeah, they are all PvE, but it feels like such things could work just fine for PvP - although I only play PvE. Cheers!
  16. JCataclisma

    Map Limit Question

    Have you notice whether it happens regarding the distance between the objects and the players? So you could rule out the configuration for "view distance" for each player. The closer objects, let's say 500m or 1000 meters away, are the shown only for you as well? Besides, are such objects from any specific DLC, maybe? So it could be just like some servers which use some mods but as optional, then the players without those mods/dlcs will not be able to see and/or interact with such objects.
  17. JCataclisma

    Unruly behavior of AI in column

    If you fancy to experimenting with MODs, here's a really nice one: https://youtu.be/yr6x0VHEyCY
  18. You can also experiment with these objects, which are a kind of spotlight used on landing points. I use them a lot as additional strobe/position lights for vehicles (green and red) and also as off-road lights in front of vehicles (orange). "reflector_cone_01_narrow_red_f" "reflector_cone_01_narrow_green_f" "reflector_cone_01_narrow_orange_f"
  19. May I ask whether you want this weapon change as a surprise for the players, or do they already know and expect that to happen? Because although this would complete change the direction you seem to want, there is the option of set and addAction on an object on site, so instead of an automated trigger, players could click to execute such action and have their weapons changed.
  20. Hello! I'd say that example #5 would be the easiest to show what we must focus on your case. The selection "hide on use" doesn't mean to hide/remove the action istelf, but only to hide the scroll menu after clicking. The action, though, will still be available. As the params' count starts on "0", the object which's got the action is "_this select 0" and "actionID" would be "_this select 2". So your first command lines inside the addAction code could be "_notPlayer = _this select 0; _usedAction = _this select 2;" , and then at the end you should use "_notPlayer removeAction _usedAction;", so that the action will be deleted after clicking on it. Still on the same example 5, you could change the "50" radius to something like "5", so that the action will only be shown when player is that close to the unit with the addAction. Try something like this, to check the effects: this addAction [ "Start Briefing", // title { _notPlayer = _this select 0; _usedAction = _this select 2; Trigger_Con = true; publicVariable "Trigger_Con"; _notPlayer removeAction _usedAction; }, nil, // arguments 7, // priority ("7" will force it to be shown way on top) true, // showWindow true, // hideOnUse "User5", // shortcut (just a suggestion, the action's executed also if you click the keybind you have on Config -> Controls -> Custom -> Custom 5 "true", // condition 5, // radius (need to get closer to see the action) false, // unconscious "", // selection "" // memoryPoint ]; https://community.bistudio.com/wiki/addAction?useskin=darkvector
  21. I have the "eventHandler" bellow, currently working with no errors, whether in mission editor or in MP dedicated server. But the problem is that it will delete the vehicle regardless who disembarks and gets 75 meters away. _currentVehicle addEventHandler ["getOut", { _this spawn { waitUntil { sleep 1; if ((_this select 2) distance (_this select 0) > 75) then { deleteVehicle (_this select 0); true } else { false } } } }]; I need it to act only whether the unit exiting is the driver/pilot. I am trying to change it like this, but no success so far - I get either an error or it keeps deleting the vehicle is any of its passengers leaves and goes distant. The "best" approach I have come to would be to say "hey, if the exiting unit is NOT driver, stop here" // this returns errors; _currentVehicle addEventHandler ["getOut", { _owner = ((_this # 1) == driver (_this # 0)); if ((_this # 2) != _owner) exitWith {}; _this spawn { waitUntil { sleep 1; if ((_this select 2) distance (_this select 0) > 75) then { deleteVehicle (_this select 0); true } else { false } } } }]; // this doesn't change anything and vehicle gets deleted for any passenger that walks away; _currentVehicle addEventHandler ["getOut", { if ((_this # 2) == driver (_this # 0)) exitWith {}; _this spawn { waitUntil { sleep 1; if ((_this select 2) distance (_this select 0) > 75) then { deleteVehicle (_this select 0); true } else { false } } } }];
  22. Oh, so clean, so much better! 😁 Thank you, @pierremgi
  23. Ok, after a few attempts with several approaches, it seems like this one is working as intended. I am initially giving the exiting unit a name, then creating a new variable which stores the role of such unit, and finally telling that whether such role is NOT driver, script should stop. So far, it works just as I needed, but will do more testing. _currentVehicle addEventHandler ["getOut", { _jumper = _this select 2; private _role = assignedVehicleRole _jumper; if !(_role isEqualTo ["driver"]) exitWith {}; _this spawn { waitUntil { sleep 1; if ((_this select 2) distance (_this select 0) > 75) then { deleteVehicle (_this select 0); true } else { false } } } }];
  24. Although this is NOT in the same pack, this Peacebob's wasteland version of a Star Wars Tie Fighter matches perfectly the "attachedScrap" idea. So I will attach the links here, for a very extra doses of fun and creativity. DIY Tie Fighter: https://steamcommunity.com/sharedfiles/filedetails/?id=3302401470 "DIY Wars" - a Tie Fighter mission: https://steamcommunity.com/sharedfiles/filedetails/?id=3303818614
×