Jump to content

meatball

Member
  • Content Count

    734
  • Joined

  • Last visited

  • Medals

Posts posted by meatball


  1. Try testing it on a dummy map and see if you see anything different. Open up the editor, drop down an explosive specialist and a crate next to a gas station or power line and see if you can take them down any faster. Could be something in the mission, but I didn't make any changes to anything other than pre-damaging some structures to make them easier to knock out :)


  2. I'll double check that one, but I do know demo charges suck nowadays and it may just be how BI has balanced stuff and the way it is. You need almost 3 of them to match the same power as 1 satchel charge, and both of those don't do a ton of damage anymore. You will need probably 3-4 charges for power lines, and that's with the mission forcing them to be heavily pre-damaged. 2-3 charges should blow up a pump, but it will usually only blow up one pump and leave the others untouched (even while fire rages around them...)


  3. Just this over and over again...

    Error in expression < >> "CfgMagazines" >> (vestitems player select _i))) then {
    player removeMagazin>
     Error position: <select _i))) then {
    player removeMagazin>
     Error Zero divisor
    File C:\Users\mb\Documents\Arma 3 - Other Profiles\Meatball\mpmissions\[Co-08]_Babel.clafghan\miscScripts\loseGear.sqf, line 52
    Error in expression < >> "CfgMagazines" >> (vestitems player select _i))) then {
    player removeMagazin>
     Error position: <select _i))) then {
    player removeMagazin>
     Error Zero divisor
    File C:\Users\mb\Documents\Arma 3 - Other Profiles\Meatball\mpmissions\[Co-08]_Babel.clafghan\miscScripts\loseGear.sqf, line 52
    Error in expression <> "CfgMagazines" >> ((vestitems player) select _i))) then {
    player removeMagazin>
     Error position: <select _i))) then {
    player removeMagazin>
     Error Zero divisor
    File C:\Users\mb\Documents\Arma 3 - Other Profiles\Meatball\mpmissions\[Co-08]_Babel.clafghan\miscScripts\loseGear.sqf, line 52
    Error in expression <> "CfgMagazines" >> ((vestitems player) select _i))) then {
    player removeMagazin>
     Error position: <select _i))) then {
    player removeMagazin>
     Error Zero divisor
    

    ---------- Post added at 17:43 ---------- Previous post was at 17:34 ----------

    Well, there you go, thanks guys! That cleared up all the errors. Here's the 'final' script.

    // Lose Random Items Script v 0.2
    // By Meatball
    // Coding Insight from Na_Palm, Grumpy Old Man & Das Attorney
    private ["_delListU","_delListB","_delListV","_randWpn","_randLost"];
    
    _randWpn = floor (random 3);
    
    if (_randWpn == 0) then {
    if (primaryweapon player != "") then {
    player unassignItem (primaryweapon player);
    player removeWeapon (primaryweapon player);
    };
    } else {
    	if (_randWpn == 1) then {
    		if (secondaryweapon player != "") then {
    		player unassignItem (secondaryweapon player);
    		player removeWeapon (secondaryweapon player);
    		};
    	player removePrimaryWeaponItem "optic_Arco";
    	player removePrimaryWeaponItem "optic_ACO_grn";
    	} else {
    		if (handgunweapon player != "") then {
    			player unassignItem (handgunweapon player);
    			player removeWeapon (handgunweapon player);
    		};
    		player removePrimaryWeaponItem "optic_Arco";
    		player removePrimaryWeaponItem "optic_ACO_grn";
    	};
    };
    
    
    _delListU = []; 
    for "_i" from 0 to (count uniformitems player - 1) do 
       {_randLost = random 5; 
       if (_randLost >= 3) then { 
           _delListU set [count _delListU, ((uniformitems player) select _i)]; 
       }; 
    }; 
    
    { 
    if (isClass(configFile >> "CfgMagazines" >> _x)) then { 
       player removeMagazine _x; 
       } else { 
           if (isClass(configFile >> "CfgWeapons" >> _x))  then { 
               player removeweapon _x; 
           } else { 
               player removeitem _x; 
           }; 
       }; 
    }forEach _delListU;  
    
    _delListV = []; 
    for "_i" from 0 to (count vestitems player - 1) do 
       {_randLost = random 5; 
       if (_randLost >= 3) then { 
           _delListV set [count _delListV, ((vestitems player) select _i)]; 
       }; 
    }; 
    
    { 
    if (isClass(configFile >> "CfgMagazines" >> _x)) then { 
       player removeMagazine _x; 
       } else { 
           if (isClass(configFile >> "CfgWeapons" >> _x))  then { 
               player removeweapon _x; 
           } else { 
               player removeitem _x; 
           }; 
       }; 
    }forEach _delListV;
    
    _delListB = []; 
    for "_i" from 0 to (count backpackitems player - 1) do 
       {_randLost = random 5; 
       if (_randLost >= 3) then { 
           _delListB set [count _delListB, ((backpackitems player) select _i)]; 
       }; 
    }; 
    
    { 
    if (isClass(configFile >> "CfgMagazines" >> _x)) then { 
       player removeMagazine _x; 
       } else { 
           if (isClass(configFile >> "CfgWeapons" >> _x))  then { 
               player removeweapon _x; 
           } else { 
               player removeitem _x; 
           }; 
       }; 
    }forEach _delListB;  
    


  4. Ah...I see. I think that's close, but I'm still seeing an zero divisor error on the first isClass check line in this updated one:

    if ((count vestitems player) > 0) then {
    for "_i" from 0 to (count vestitems player - 1) do
     {_randLost = random 5;
       if (_randLost >= 3) then {
           if (isClass(configFile >> "CfgMagazines" >> ((vestitems player) select _i))) then {
               player removeMagazine ((vestitems player) select _i);
           } else {
               if (isClass(configFile >> "CfgWeapons" >> ((vestitems player) select _i)))  then {
                   player removeweapon ((vestitems player) select _i);
               } else {
                   player removeitem ((vestitems player) select _i);
                   };
               };
           };
       };
    }; 
    

    ---------- Post added at 17:24 ---------- Previous post was at 17:17 ----------

    I think I might have an idea of what's happening though... Let's say there's 5 items in the array. So it'll loop through the if block 5 times. Say the second item gets dropped, now the array only has 4 items, by the time the loop gets up to the fifth go around (_i = 4), that array item is gone.


  5. Think I figured out what I needed. Basically if you set the mission to disable respawn (BTC_disable_respawn = 1) the player will drop 'unconscious' when they take enough damage to die and sit in the waiting for revive state up until BTC_revive_time_max runs out. But at that point the players do still get the Respawn menu and can respawn. What I wanted to do (and think I've figured out), is that the player goes down, waits for revive and if the max revive time runs out, they get rescued by a 'friendly local' and respawn at a random point within 500m of where they were waiting to revive (minus almost all their gear).

    I was able to get everything to work by editing the BTC_player_respawn function to capture the players actual position at the beginning of the function and then right before they are supposed to respawn I run an outside script that I pass that location to that randomizes their location and strips out most of their gear.

    Was just having trouble tracking down exactly where I needed to place that and how to get the correct player position :)


  6. Hey guys, quick question as an issue run into with a piece of the scripts and wondering if anyone has tracked down a fix/answer to it.

    Using any of the scripts that spawn vehicles with simpleCache, Militarize or Ambient Combat for example, if the players can somehow hijack a vehicle from the AI the vehicle will still despawn after a while, even if the players are in the vehicle. Has anyone figured out a way to have vehicles no longer subject to cahcing/despawning if players get in them?


  7. I've written up a script that goes through and pulls random items from a players inventory. The script is working, but it's throwing a bunch of "Error Zero divisor" errors in the rpt.

    Here's an example block of code:

    if ((count vestitems player) > 0) then {
    for "_i" from 0 to (count vestitems player) do
     {_randLost = random 5;
    if (_randLost >= 3) then {
    	if (isClass(configFile >> "CfgMagazines")) then {
    		player removeMagazine ((vestitems player) select _i);
    	} else {
    		if (isClass(configFile >> "CfgWeapons")) then {
    			player removeweapon ((vestitems player) select _i);
    		} else {
    			player removeitem ((vestitems player) select _i);
    			};
    		};
    	};
    };
    };
    

    And then in the rpt I see a whole lot of these:

    Error in expression <ayer removeMagazine ((vestitems player) select _i);
    } else {
    if (isClass(configF>
     Error position: <select _i);
    } else {
    if (isClass(configF>
     Error Zero divisor
    

    Like I said, the script does work correctly, I'd just like to figure out why it's tossing all those errors into the report and see if I can make the script cleaner.


  8. @ Kai

    Glad you enjoyed it! As for your questions.

    - As of right now there's nothing that can be done about the snow crash bug as it's a particle bug in the game engine. I am releasing a new version shortly that snow has been removed.

    - Hadn't thought about making the mission persistent. For sure there's likely no way anyone has the time or motivation to finish the mission all in one go, but my original concept was that players would be able to replay it multiple times and just hit whatever missions they felt like doing that session. That's why I added in the multiple spawn points. I'll look into it, but it might be some time as I have a few other projects going on at the moment.

    @all - As for those other projects, I've got two other missions in the works, both of which will tie into Force Recon (with a slightly revised storyline for FR). Force Recon will be 'episode 1' if you will and the other missions are in progress right now. :)


  9. Yeah, unfortunately. I've got difficulty set to Veteran and everything disabled except for Camera Shake, Net Stats and Weapon Cursor.

    I've also noticed that even though the player's own marker doesn't show on the map, the two big NS/EW crosshair lines that go across the entire map are still visible and show where are.

    All I want is for players to not be able to see where they or anyone else is on the map. Sometimes doing the simplest things are so hard...


  10. I've got a mission where the players get separated at one point and shouldn't know where each other is. Using server difficulty settings I've been able to disable the markers on friendlies and the team lead, but I can't seem to get rid of the fact that the players always seem to have a waypoint pointing back to the team leads position. As in, they get the hint on their screen corners the direction and distance the team lead is from them.

    Anyone know how to completely disable any hints/markers that show the team any information about other team members?


  11. Wondering if it's possible in any way to interact with units that are autocreated by the sites modules in any way through scripting. For example, counting the total, checking the number alive, etc? There is an init field, but it doesn't look like the engine handles those groups of auto created units the same as normal.

    For example, let's say I create a Blufor Observation Post Site module on my map which usually spawns 4 guys. In the init field I put "siteGuys = group this". Start the mission and the 4 Blufor units spawn as expected on the spot. But if I try doing a "units siteGuys" I get "[bIS_uniqueSite0]" as the array returned. If I try to "count siteGuys", I get only 1 for the count even though there's 4 guys.

    Any thoughts?


  12. Hey Gia, quick question. If using your revive with respawn disabled (BTC_disable_respawn = 1;) at the end of the BTC_revive_time_max period the player still gets the drop down menu showing the respawn locations with a Close and Apply button. Is there any way to interrupt that?

    Basically what I'd like to do is that if a player isn't revived in time the 'self-revive' but at random spot from where they went down to simulate some friendly local dragging them to safety and getting them back up.

    Even if you can just point me at the location where that menu box is called, I might be able to figure it out from there on my own ;)


  13. New Release v 0.90

    Note: the new version is not 'plug and play' if you are using the old version. You will need to update your description.ext file if you are using parameters to allow players to choose weather. See the update information below and installation instructions.

    v0.90

    - I've gone through a major change/update with randomWeather2 and removed snow from the 'default' version. There is a crash to desktop bug that can surface when it is snowing and a player respawns. I believe it's related to the known Physx crash bug and caused by a snow particle being in the players body when they die/respawn.

    - While the new v0.9 script does not include snow, I have included a version with snow for anyone that wishes to still use it or wants to experiment with it.

    - I will not be supporting or updating the snow based version going forward unless BI fixes the underlying bug.

    - Tweaked some settings to ensure that it is actually 'raining' when the mission starts if rain is selected.

    - Made a minor adjustment to the initial weather setup to ensure clouds are created properly.

    - Tested on stable build v1.12.

    Latest Version:

    - Armaholic (Thanks guys!): randomWeather2 Script


  14. Update: I accidentally put 1.13 in the title, I know the new patch is 1.12 :)

    Since the 1.12 patch today, it appears that setting initial Overcast/cloud levels through scripting no longer works on dedicated servers. You used to be able to do something like this in your init.sqf (or called script) to set overcast/cloud levels.

    skipTime -24;
    86400 setOvercast 1;
    skipTime 24;
    simulWeatherSync;
    

    On a locally hosted server, that still works correctly, setting the client to Overcast of 1 and loading the sky with clouds. If you do the same thing on a dedicated server, the client does actually get an overcast level of 1, but there's no clouds in the sky.

    Can someone else give that a shot and let me know if it's just something on my side, or that's something others are seeing.

    ---------- Post added at 17:53 ---------- Previous post was at 17:43 ----------

    I think it's related to simulWeatherSync. I can get the same results on a local client/server setup by commenting out the simulWeatherSynch; command. Leads me to believe that something changed with the command or weather that no longer allows simulWeatherSync to run correctly on a client when connected to a dedicated server. I am also seeing this in rpt files, "SimulWeather - Cloud Renderer - noise texture file is not specified!"


  15. Man, this script looks great, but before I dive headlong into it, I have a couple of questions after reading the readme and last 30 or so pages of the thread. I may have missed the answers due to info overload, so feel free to point me at a previous answer and say, "It's already been answered doofus." if I missed it.

    1) I've seen a few different mentions of zone size. Is there a true limit to how big zones could be? To be honest, what I'd like to do is cover most of map with zones so that there's random patrols all over the map, but I'd like them to be big 1km or 2km zones so there's not a ton of them. Is that going to create any major issues?

    2) Can multiple zones spawn/despawn at the same time? As in, Player A is on the west side of the map, Player B is on the East side of the map, and zone(s) near both of them spawn?

    Thanks much in advance!

×