Jump to content

meatball

Member
  • Content Count

    734
  • Joined

  • Last visited

  • Medals

Posts posted by meatball


  1. Man...sometimes it seems so hard do the simplest things. I just want there to be no 'automatic' audio or chat calls out of enemies, directions, regroup calls, anything. I've currently got all of the following in my init.sqf

    enableSentences false;
    0 fadeRadio 0;
    enableRadio false;
    player disableConversation true;
    player setVariable ["BIS_noCoreConversations", true]; 
    

    Even with all that, people just won't shuttup :) Is there any way to just keep people completely quiet?


  2. Apologize if this has been asked previously, but I couldn't find anything in my cursory search. Is there any way to add a check into a mission init.sqf to see if ACRE is running?

    I'd like to swap out default radios for players to the 148's if ACRE is running, but if it's not, I don't want people to get hit with missing object errors. A simple if (ACRE is running on this client) then {add 148}; in the init.sqf could do the trick, just not sure if that 'ACRE is running' check is even possible.


  3. @F2k - Normally, grouping triggers with a building works in the short term, but any time there is a patch it breaks, because the trigger is actually attached to the object ID and object ID's change from patch to patch. Apparently that will no longer be the case with 1.14 and onward though. Regardless, that method does not seem to work with those two buildings/objects for some reason, and maybe they're broken.

    @Grumpy - I'll give that a shot, but I'm starting to think it's just easier to plop down some sort of object, and let the players destroy that.

    ---------- Post added at 16:08 ---------- Previous post was at 15:43 ----------

    Alright, looks like I got it, it might have just been a syntax issue. I set up a gameLogic object named mixGL next to the mixing tower with this in the init:

    mixer = nearestObject [mixGL,"Land_cmp_Shed_F"];
    

    And then setup a trigger to watch for '!alive mixer' and it worked. Also ran across this great little resource to find building/object class names. I always knew about the assets page, but didn't know it included all the buildings as well, great stuff.


  4. I'm working on the Altis map, in the Quarry to the south of Pyrgos. On the north side of the quarry there is a 'Concrete Mixing Shed' and a 'Factory Conveyor Belt (Slope)' that I'd like the players to destroy. I've tried all the tricks I know including linking a trigger directly to the object ID and setting the trigger to go off on Not Present. Also tried setting up gamelogic right next to the ID's to assign a variable name to them using 'nearestobject' or 'nearestbuilding' and then watching that ID for !alive.

    GL init tried both this:

    mixer = nearestobjects [this, ["Land_cmp_Shed_dam_F"],20];

    and this:

    mixer = nearestbuilding this;

    Trigger: !alive mixer

    Nothing seems to recognize when these two buildings/objects go down. Any ideas?


  5. Can I not specify and create my own array name as I have here, or must i work within the arrays provided only?

    Dark, were you ever able to get this to work? I was trying to get the same thing to work with no luck as well. I'd like to have different points spawn specific vehicles. I can set up the array myself and reference in the addaction call, but I get a "There was an error and no vehicles could be fetched!" hint.

    Reading the config, I _think_ you need to set VVS_Premade_List to true, but even with that I get the error.

    Secondary question. Has anyone figured out a way to set a time limit on how often vehicles can be spawned? Or maybe some sort of finite numbers of each type?


  6. Also for the despawning vehicles even if a player is driving it I found something that I tested on a dedicated server successfully.

    In the eos_core.sqf (again) in the cache portion of light vehicle, armor vehicle, mortar and Helicopter Transport

    replace that line:

    if (!(vehicle player == _vehicle)) then {{deleteVehicle _x} forEach[_vehicle];};
    

    for this:

    if ({isPlayer _x} count (crew _vehicle) == 0) then {{deleteVehicle _x} forEach[_vehicle];};
    

    so no player that is inside a vehicle will have his vehicle despawned.

    Hope this help.

    Holo.

    Awesome! I'll have to dig in the script because I wonder if there's any way to just completely pull that vehicle out of the check after that point. Great that it won't despawn while players are in it/driving, but wouldn't it still possibly despawn the if the players all pile out for some reason? Once players get in a vehicle, it should stay in game till they wreck it or it gets blown up, and then normal cleanup scripts should be able to deal with it.


  7. Alright, so I've run up into a bit of a weird issue with a related script. So, basically what I'm doing is the players get on an AI chopper, it gets shot down and they get tossed out, losing some gear (the script above). The rest of the script I wrote swaps out their backpack for a chute, then on landing swaps the chute back for their backpack. The problem is that it seems to work fine, unless...the player role starts with a default gear loadout in their pack.

    If that player pulls out any (or all) of the default backpack gear and sticks other stuff in, they'll end up on the ground not only with some of the new gear they put back in, but _all_ of the gear from the original loadout. I've tried a bunch of different commands, but can't seem to get anything to work. Anyone have any thoughts on the following script?

    // Run loseGear script
    loseGear = execVM "miscScripts\loseGear.sqf";
    waitUntil {scriptDone loseGear};
    
    // Throw the player out of the chopper.
    moveout player;
    
    _gear = [];
    _backpack = backpack player;
    _backpack2 = unitbackpack player;
    _backpack_items = getItemCargo (unitBackpack player);
    _backpack_weap = getWeaponCargo (unitBackpack player);
    _backpack_mags = getMagazineCargo (unitBackpack player);
    
    _gear =	[_backpack_items,_backpack_weap,_backpack_mags];
    
    // Remove Backpack & add steerable chute
    3 fadeSound 0.15;
    removeBackpack player;
    sleep 1.5;
    player addBackpack "B_Parachute";
    deleteVehicle _backpack2;
    
    waitUntil {isTouchingGround player};
    
    // Take off parachute
    removeBackpack player;
    
    // Replace backpack and contents.
    if (_backpack == "") exitWith{};
    player addbackpack _backpack;
    
    // Add items back into backpack from _gear array
    if (count ((_gear select 1) select 0) > 0) then	{
    	for "_i" from 0 to (count ((_gear select 1) select 0) - 1) do
    	{  
    	(unitBackpack player) addweaponCargoGlobal [((_gear select 1) select 0) select _i,((_gear select 1) select 1) select _i];
    	};
    };
    if (count ((_gear select 2) select 0) > 0) then	{
    	for "_i" from 0 to (count ((_gear select 2) select 0) - 1) do
    	{ 
    		(unitBackpack player) addMagazineCargoGlobal [((_gear select 2) select 0) select _i,((_gear select 2) select 1) select _i];
    	};
    };
    if (count ((_gear select 0) select 0) > 0) then	{
    	for "_i" from 0 to (count ((_gear select 0) select 0) - 1) do
    	{  
    		(unitBackpack player) addItemCargoGlobal [((_gear select 0) select 0) select _i,((_gear select 0) select 1) select _i];
    	};
    };
    


  8. How rough is nearestEntities on server/client resources if you used it in a trigger? For example, say you wanted to watch a goat population for some reason, I was thinking you could set up a site and then simply add something like this into the trigger condition:

    count (goatSite nearEntities ["Goat_random_F",30]) <= 10;
    

    Just don't know if that'll clobber the machine running the trigger check :)


  9. Agreed, I've seen the same thing with AI Spawn Script Pack as well. While it's definitely not limited to EoS, it's still an issue that would need to be addressed by that script itself. When most of these scripts create/cache AI and vehicles they use an array to track the unit names at spawn so it can then reference the same name at despawn. Problem is, if a player swipes a vehicle, that vehicle is still sitting in the array of 'spawned' AI vehicles and nothing ever tells it to remove that vehicle from the array. So, when despawn happens, the vehicle goes with it.

    So, while I know what's going on, every script/mod stores the AI/vehicles in different places/arrays, so there's no way that I can think of to write a script that would fix the issue across the board. So, unless it's built into the script to (1) recognize that the players actually got into one of the spawned vehicles, and (2) pull that vehicle out of the scripts arrays so it doesn't get despawned, it'll be a problem :)

    I would think it could be addressed by just a couple of lines of code, but it's a matter of where to put that code, and what variables/arrays need to be referenced for that specific script.


  10. Hmm, question to everyone. Has anyone discovered a way to stop vehicles from despawning if hijacked by players? Basically if EoS spawns AI with a vehicle, and the players either disable the drivers/passengers or the drivers/passengers abandon the vehicle and the players hop in, the vehicle will still despawn (even if the players are currently driving it) when the players move out of the original spawn range for that zone.

    Doesn't happen often, but happens enough that it throws things off. Even had a few players die when driving 70 kph and their vehicle despawned out from under them...

×