Jump to content

Sgt. Dennenboom

Member
  • Content Count

    93
  • Joined

  • Last visited

  • Medals

Everything posted by Sgt. Dennenboom

  1. Sgt. Dennenboom

    Hellcat skyfire missiles

    GOM has the right idea with his script, but it could fail if used in multiplayer. There is no way to know which one of the two remoteExec's will be executed first on the receiving client. It could easily add the hellfire first, then remove it. A very simple way to avoid this would be to send over a script that does everything at once (highly unsecure though, write a function and send that over instead): _veh = yourAircraft; _mags = ["weapon1","weapon2"...,"weaponN"]; [ [_veh,_mags], { params ["_veh","_mags"]; { _veh setPylonLoadout [1+_forEachIndex,"",true]; // Numbers work too (uses 1-based indexing) _veh setPylonLoadout [1+_forEachIndex,_x,true]; } forEach _mags; } ] remoteExecCall ["call",_veh]; Be aware that setPylonLoadout needs to be executed where the turret that pylon currently belongs to is local. If you want to switch pylon control from pilot to gunner, you'll have to remove it where the []/[-1] turret is local, and add it where the [0] turret is local. This gets real confusing real quick.
  2. Sgt. Dennenboom

    help on bubble script 2.0

    Editor > Tools > Config Viewer. Objects/vehicles/units are in "CfgVehicles" Mines are in "CfgAmmo"
  3. Sgt. Dennenboom

    Custom Animation for mission

    You'll have to create an addon containing the custom animation data.
  4. Sgt. Dennenboom

    help on bubble script 2.0

    For example, a way to get the class of every single available object in the game: _allObjectClasses = ("getNumber (_x >> 'scope') == 2" configClasses (configFile >> "CfgVehicles")) apply {configName _x}; The string is used to filter more thoroughly. To get a list of all civilian cars in the game: _allCivilianCarClasses = (" (getNumber (_x >> 'scope') == 2) // 0:private, 1:protected, 2:public and {(getNumber (_x >> 'side') == 3) // 0:east, 1:west, 2:indep, 3:civ and {(getText (_x >> 'vehicleClass') == 'Car')}} // 'Car', 'Armored', 'Ship', 'Air', etc... " configClasses (configFile >> "CfgVehicles")) apply {configName _x}; The config values you can filter for can be found here, or in the in-game config viewer.
  5. Sgt. Dennenboom

    help on bubble script 2.0

    The most efficient way is to define an array of classnames, but is not dynamic. Instead you could pull a bunch of classnames from the "CfgVehicles" config using the configProperties/configClasses commands in which you filter for scope, vehicle type and side/faction. This should only be done once, at the start of the script. You should also remember not to spawn a new script for every single vehicle. It's much better in my opinion to have one script that handles every vehicle, with sleeps in it to prevent performance decreases.
  6. Sgt. Dennenboom

    help on bubble script 2.0

    This is run on the server right? What is the context this script would be used in? Do you know why the script uses "playableUnits" instead of "allPlayers"? There is some massive potential for optimization in this script, but as they say: premature optimization is the root of all evil. You'll have to find a balance between optimization and readability. Doing something like: playerSarray = []; {playerSarray = playerSarray + [_x];playerSarray = playerSarray + [20] } foreach playableUnits; Is very inefficient and won't actually work since it creates a blacklist array with the wrong format. Rather do: _posBlacklist = playableUnits apply {[_x,20]}; _posRandom = [randomplayerpos,5,25,5,0,0.3,0,_posBlacklist] call BIS_fnc_findSafePos I'll look into the rest of the script tomorrow
  7. Sgt. Dennenboom

    [MP][CTI-COOP] EvorA

    Obviously I can't fix AI not walking over composite objects such as the carrier. In the Malden NATO mission (which is the only one with a carrier), you can always purchase AI at one of the other bases instead.
  8. In my opinion, the easiest way to make this is to add an addAction to the player which checks whether your cursorTarget is a vehicle and that it's not too far away etc. Look into the setUserActionText command on how to change the action button into an icon. This is the repair icon: "\a3\ui_f\data\IGUI\Cfg\Actions\repair_ca.paa". If you need a specific help, link your code.
  9. nearestObjects takes class names or config parents. There are no vehicles with a "sarheli0"/"sarheli1"/"sarheli2" classname, nearestObjects won't find anything. _nObj will therefore be an empty array, and _veh will be undefined. Use something like: _nObj = nearestObjects [casPos,["Helicopter"],100]; If you want to find the nearest vehicle from sarheli0/sarheli1/sarheli2 do: _helis = [sarheli0,sarheli1,sarheli2]; _helisSorted = [_helis,[],{casPos distance _x}] call BIS_fnc_sortBy; _veh = _helisSorted select 0;
  10. Sgt. Dennenboom

    [MP][CTI-COOP] EvorA

    Got a juicy update for you guys! Files uploaded to steam and to the dropbox link in the original post. Added: Rudimentary ACE support (Not all ACE setting combinations have been tested for mission-breaking bugs). No need for editing the mission, just enable ACE. Mission-side healing scripts disabled in favor of ACE medical. ACE items are automatically added to arsenal ACE logistics (rearm, refuel, repair) force-disabled in favor of mission-side servicing. ACE pylons force-disabled Added: Lobby parameter for saving non-purchased equipment (disabled by default). Added: Approximate map marker during mortar strike on base. Fixed: Conflict between steam mission name and verifying script (Steam-version was not hostable on dedi). CUP and RHS versions coming *soon*.
  11. Harzach's suggestion works. If you want each rock to have its own addAction, do the following: _listRocks = [rock1,rock2,rock3,rock4]; { _x addAction ["Move Rock",{hideObject (_this select 0);}]; } forEach _listRocks; You can look up the commands on the scripting commands wiki if you don't understand some of them.
  12. Sgt. Dennenboom

    Defining Configs in description.ext

    You cannot edit the configFile in description.ext as far as I'm aware, so you cannot give custom "init" eventhandlers or useractions to a vehicle config. This only works through making an addon. If you want to have an addAction that works without adding it to every spawned vehicle you have few options: Add it to the player. Use a mission eventhandler such as getInMan/InventoryOpened/... to give an addAction. Use a loop that checks all objects in the mission and adds the action when required.
  13. Sgt. Dennenboom

    [MP][CTI-COOP] EvorA

    You can purchase a "construction truck", which you can use to place a permanent FOB. FOB's can be teleported to, and you can also purchase weapons, vehicles and AI here. There is no MHQ as I feel that it might make the mission a bit too easy. Not very difficult, I've also made some CUP and Unsung versions (not on workshop). The mission doesn't automatically utilize modded assets though, it must be edited for them to be used.
  14. Sgt. Dennenboom

    [MP][CTI-COOP] EvorA

    Sadly I cannot do anything about this. If you put the helicopter in the middle of this ship instead of near the side, they'll get in more easily
  15. Sgt. Dennenboom

    [MP][CTI-COOP] EvorA

    Saving should be disabled. While it works in single player, the mission is best played on a dedicated server in the same vein as Domination, Insurgency etc. Dropbox repository link added
  16. Sgt. Dennenboom

    List of all hidden texture inits

    Yes with a mod I meant. I think the .p3d doesn't have the texture selections set up in model builder. I can't verify or change this as it is binarized, and I don't think i can make a mod using edited binarized assets by BIS.
  17. Sgt. Dennenboom

    List of all hidden texture inits

    I've tried retexturing this helmet model, but it doesn't seem to allow it (other helmet works just fine). That said, I'm pretty much a newbie at this. Was anybody able to retexture this model? Is it necessary to edit the .p3d file to get this to work (which I guess is not possible since it's binarized).
  18. Sgt. Dennenboom

    General Discussion (dev branch)

    It's a windows 10 issue since the creators update. I've heard Overwatch has the same problem. The game freezing when alt-tabbing is most common if you do it during a loading screen.
  19. Sgt. Dennenboom

    Vehicle Interiors - Feedback

    No other classnames have changed. The reason the Marid's was changed is because its gunner seat has been removed and the RCWS given to the commander.
  20. Sgt. Dennenboom

    Vehicle Interiors - Feedback

    Did you use the classname of the new Marid? "O_APC_Wheeled_02_rcws_v2_F"
  21. Sgt. Dennenboom

    General Discussion (dev branch)

    Little error: the Nyx driver cam info panel shows only a black screen (camera is inside the vehicle geometry).
  22. Sgt. Dennenboom

    Vehicle Interiors - Feedback

    Love the new interiors, especially the Varsuk with its messy cables. Makes it feel very real. One little thing that bothers me a bit is the very low volume of the reloading of the cannon on all of the tanks in interior view. It sounds as if the loading happens in a tank on the opposite side of the battlefield. I haven't been in an actual tank but I'd imagine reloading process makes a lot of mechanical noise.
  23. Sgt. Dennenboom

    General Discussion (dev branch)

    Yes, the commander seat is in the right of the turret of the scorcher/sochor, while the gunner sits on the left. The only hatch is positioned on the left side though, so only the gunner should be able to turn out. In the scorcher currently only the commander is able to turn out which opens the hatch above the gunner, and creates a camera floating above the vehicle, while the gunner cannot. In the sochor currently both gunner and commander can turn out, with the gunner not opening the hatch.
  24. Sgt. Dennenboom

    Simple trigger help

    addActions already spawn their code, so you are safe to use sleeps in there.
  25. Sgt. Dennenboom

    Why dosent _caller work in MP?

    addAction code is run on the computer that triggers the action (the player's computer). addScore only gives score to people when run on the (dedicated) server. You will need to send the addScore command to be executed on the server. This can be done using remoteExecCall: _caller = _this select 1; _score = 10; [_caller,_score] remoteExecCall ["addScore",2]; Where the "2" is the id of the server which is always 2.
×