Jump to content

bLAcKmAgE87

Member
  • Content Count

    104
  • Joined

  • Last visited

  • Medals

Everything posted by bLAcKmAgE87

  1. Unlimited Ammo For Any Vehicle Entered by any selectable player...

     

    addMissionEventHandler ["TeamSwitch", {
    	params ["_previousUnit", "_newUnit"];
        _veh1 = vehicle _newUnit ; 
        _firstAmmo  = _veh1 ammo (currentMuzzle _newUnit ) ;
        [_previousUnit, _newUnit , _firstAmmo] execVM 'reloadingJets.sqf' ; 
    
    }];

    reloadingJets.sqf
     

    
    _myMan = vehicle  ( _this select 1) ;
    _firstAmmo =  (_this select 2 ) ;
    hint str _firstAmmo ; 
    
    _myMan setVariable ["iniAmmo",[_firstAmmo]] ;
    
    
    _myMan  addEventHandler ["Fired", {  _this  spawn {
            params ["_veh", "_weapon", "_muzzle"  ]; 
        
        if(_veh != objNull ) then 
        {   
            private _thatCount = ((_this select 0) getVariable "iniAmmo" ) select 0 ;
            hint (str "while firing" + str _thatCount) ;
            private _ammo = _veh ammo _muzzle ;
            private _givenLeg =  ( _thatCount ) ;
            private _againStuff = _givenLeg - 1 ;
            if (_ammo < _againStuff) then 
            {
                //Sleep .1;
                _veh setVehicleAmmo 1;
            };
        }; 
    	
    }}];

    How do I avoid calling a .sqf? So that all my handlers exist on one file?

    Originally this was from the idea that once inside any object/vehicle the script would go off, but in practice

    or in editor you are constantly switching sides/playable units-> 
    init.sqf(abrg)

    player addEventHandler ["GetInMan", {
    	params ["_unit", "_role", "_vehicle", "_turret"];
       
        _vehicle  addEventHandler ["Fired", {  _this  spawn {
            params ["_veh", "_weapon", "_muzzle"];
      
    	private _ammo = _veh ammo _muzzle;
        if (_ammo == 0) then {
        //Sleep .3;
        _veh setVehicleAmmo 1;
        };
    	
    }}];


     

  2. so far...I'm stuck... STUCK... building a hash map... not because arrays are slow or un-fancible... but because of the way that data is inevitably structured... if it can't be evenly sorted into an array without a god amount of code, then my other strategy is to avoid scanning up headers to slot in...

    AVOID... then... that is, build each data piece with its key, since each piece of data CANNOT BE correlated with its HEADER AMONGST other DATA CELLS.

    So...thinking ahead.. I shouldn't use hash maps to build functions, that is for our arrays. Instead I need to use them to carry on important transitions into the arrays themselves. A compete and total bitch when using an array. Guessing the first and last of, well, every column and title at the same time.

     

    https://community.bistudio.com/wiki/HashMap

     

    Spoiler
    
    _configElementsVehicles = []; 
    _configElementsVehicles = "true" configClasses (configFile >> "120mm_HE") ;
    _countVehicleElements = count _configElementsVehicles  ;
    
    _configBinElementsVehicles = [] ; 
    _BEVscanword = 'bin\config.bin/120mm_HE/' ;
    _countBEVscanword = count _BEVscanword ;
    _type = _BEVscanword ;
    for [{ _pop = 0 }, { _pop < _countVehicleElements  }, { _pop = _pop + 1 }] do   
    {
    	_selectedElementFromCV = _configElementsVehicles select _pop ;
    	_convertedSelection = (str _selectedElementFromCV) ;
    	_findTypeSelection = _convertedSelection find _BEVscanword  ;
    	if(_findTypeSelection != -1) then 
    	{
    		_configBinElementsVehicles pushBack _selectedElementFromCV ;	
    	
    	};
    
    };
    
    _countAbleSelections = count _configBinElementsVehicles ; 
    _convertedListCV = [] ;  
    for [{ _pop = 0 }, { _pop < _countAbleSelections }, { _pop = _pop + 1 }] do   
    {
    		_currentBinElementCV = _configBinElementsVehicles select _pop ;   
      		_currentBinElementCV = (str _currentBinElementCV) ;   
        
         
      		_newSelectionIndx = count _currentBinElementCV ;   
      		_newSelectionIndx = _newSelectionIndx - _countBEVscanword ;  
      		_newSelectionIndx = _newSelectionIndx  ;  
      
      		_convertedSelectionElement = _currentBinElementCV select [ _countBEVscanword , _newSelectionIndx ] ;   
    
       		_convertedListCV pushBack _convertedSelectionElement ; 
    
    };
    
    _col1 = [] ; 
    _col2 = [] ; 
    _col3 = [] ;
    
    for[{_pop = 0 },{_pop < _countAbleSelections},{_pop = _pop + 1}] do 
    {
    	currentCheckSlot = _convertedListCV select _pop ; 
    	_configs = configProperties [configFile >> "120mm_HE" >> currentCheckSlot ];  
        _configs2 =  getText (configFile >> "120mm_HE" >> currentCheckSlot >> "simulation" ) ;  
        _configs3 = getText (configFile >> "120mm_HE" >> currentCheckSlot >> "type" ) ;
    
    		_configsC = count str _configs ;   
      		_configsC = _configsC - _countBEVscanword ;  
      		_configsC = _configsC  ;  
      
      		_configsD = str (_configs select  0 ) ;   
    	    _configsD = _configsD select [ _countBEVscanword , _configsC ] ;
    
    
    	_col1 pushBack _configsD ; 
    	_col2 pushBack _configs2 ; 
    	_col3 pushBack _configs3 ; 
    
    };
    
    //hint (str _col1 + " |    "+  str count _col1 ) ; 
    _elementsToTake = [] ;
    _CVelementJoint = []  ;
    
    for [{ _pop = 0 }, { _pop < _countAbleSelections }, { _pop = _pop + 1 }] do   
    {
    		_listedElement = _convertedListCV select _pop ;   
     		_hasFuelTanks = _col2 select _pop ;
    
     		_scanword = 'Weapon' ;
     		_convertedHasWord = (str _hasFuelTanks ); 
     		_decisionToTakeElement = _convertedHasWord find _scanword ;
    
     
     		//if( _decisionToTakeElement >= 0 ) then 
     		//{ 
      			_elementsToTake pushBack _listedElement ; 
    			_CVelementJoint pushBack _listedElement ; 
    
     		//}; 
    
    };
    
    	_countTakenElements = count _elementsToTake ;
    
    
    
    	hint("loop layer starting   |   " + str _countTakenElements ) ;
    	//sleep 2 ;
    	_CVelementProperties = [] ;
    	
    	private _objNamePass = "" ;
    	_someLine = "" ;
    	for [{private _gh = 0 }, { _gh < _countTakenElements }, { _gh = _gh + 1 }] do
    	{	
    		
    		
    	
    		_savedObjectDimensions = []  ;
    		_selectedElementSlotTitle = _elementsToTake select _gh ; 
    		_selectedCVelement = _elementsToTake select _gh ;
    		
    		_configGM = configProperties [configFile >> "120mm_HE" >> _selectedElementSlotTitle ] ;  
    	        
    
    		_configsCD = count str _configGM ;   
      		//_configsCD = _configsCD - _countBEVscanword ;  
      		//_configsCD = _configsCD  ;  
      
      		_configsG = str  _configGM;   
    	    //_configsG = _configsG select [ _countBEVscanword , _configsCD ] ;
    		 _fool = "" ;
    		_fool = _configsG regexReplace ["bin\\config\.bin\/120mm_HE" ,""];
    		_fool = _fool regexReplace [_selectedElementSlotTitle,  "" ] ;
    		_fool = _fool regexReplace ["/.",  "" ] ;
    
    		_foolC = (count _fool) ; 
    		//_fool = _fool select [ 2 , _foolC] ;
    
    
    		//_fool = _configsG regexReplace ["bin\\config\.bin\//g" ,""];
    		//_fools = str  _fool ;
    		_savedObjectDimensions pushBack ( _selectedElementSlotTitle) ;
    		
    		_newFool = [] ;
    		_fool = _fool splitString  "," ;
    		{
    		 _x = _x  regexReplace ["\[" , ""] ;
    		 _x = _x  regexReplace ["\]" , ""] ;
    		 _newFool pushBack _x ; 
    		} foreach _fool ;
    	
    		_savedObjectDimensions pushBack (  _newFool   ) ;
    	  
    
    
    		//_savedObjectDimensions pushBack ( str _configYM) ;
    		//_savedObjectDimensions pushBack ( str _configCM) ;
    
    
    		if(_gh == 0 ) then
    		{
    			_someLine = _newFool ; 
    
    		}; 
    
    
    		_CVelementProperties pushBack ( _savedObjectDimensions) ; 
    		
    		}; 
    
    
    	
    	//hint ( str (((_CVelementProperties select 0 ) select 1 ) select 0 ) + " | " + ( str ( count _CVelementProperties ) )   );
    	//hint str _CVelementProperties ; 
    	//sleep 3 ; 
    	_incr = 0 ;
    	_popAry = [] ; 
    	{
    		
    		_title = _x select 0  ; 
    		_parts = _x select  1 ;
    
    		_partsC = count _parts ; 
    		//hint str _parts ; 
    		
    		_finally = [] ;
    		_finally pushBack ( "_|");
    		for [{private _gh = 0 }, { _gh < _partsC }, { _gh = _gh + 1 }] do
    		{
    			
    			_part = _parts select _gh ; 
    			
    			_configsX = configFile >> "120mm_HE" >> _title >> _part  ;
    			_sepWord = " | " ;
    			_finally pushBack _sepWord ; 
    			_finally pushBack _part ; 
    			switch ( true ) do
    			{
    				case (isNumber _configsX): {_finally pushBack getNumber _configsX };
    				case (isText _configsX): {_finally pushBack getText _configsX };
    				case (isArray _configsX): {_finally pushBack getArray _configsX; };
    				default { nil };
    			};
    			
    			
    			//hint str _finally ; 
    			//sleep 2 ; 
    			
    			//((_CVelementProperties select _incr ) select 1) insert [ -1, _finally ] ;
    		}; 
    		_finally pushBack ( "_+|");
    		hint str _finally ; 
    		sleep 1 ; 
    		_popAry pushBack _title  ;
    		_popAry pushBack _finally ; 
    
    		_incr = _incr + 1 ;
    		 
    	} foreach _CVelementProperties ; 
    
    	
    	hint "end layer" ; 
    
    
    	copyToClipBoard (str _popAry ) ; 
    
    
    	/*
    	--preceeding code almost worked except in order to build the base you have to manually move elements
    	--and label the headers from the breaktags
    
    	DROP TABLE IF EXISTS a3_120mm_HE ; 
    CREATE TABLE a3_120mm_HE
    (
     title text  ,
     Simulation text ,
     QualityLevel decimal ,
     tType text, 
     pPosition text ,
    	
     Intensity decimal , 
     Intervals text,
     LifeTime decimal 
     
     
    ); 
    SELECT *  FROM a3_120mm_HE ;
    	
    	*/

     

     

    ...well... if you get to the bottom and can read the headers... SELECT * FROM a3_120mm_HE ; in sql 

     

    "blast_wave_refract"	"particles"		" blast_wave_effect_medium "	" [0,0,0] "	1	" 3 * 1 "	0.2
    "ExplodeRefract"	"particles"		" blast_wave_med "	" [0,0,0] "	1	"1"	1
    "DustLongMediumMed"	"particles"	1	" DustLongMedium "	" [0,0,0] "	1	"1"	1
    "DustLongMedium"	"particles"	2	" DustLongMedium "	" [0,0,0] "	1	"1"	1
    "ExplosionDustLong"	"particles"		" ExplosionDustLong "	" [0,0,0] "	0.2	"1"	1
    "ShrapnelFast"	"particles"		" ShrapnelFast "	" [0,0,0] "	1	"1"	3
    "ShrapnelLong"	"particles"		" ShrapnelLong "	" [0,0,0] "	1	"1"	20
    "GroundDustCottonMed"	"particles"	2	" GroundDustCottonMed "	" [0,0,0] "	0.1	"1"	0.5
    "DustFast"	"particles"		" DustFast "	" [0,0,0] "	1	"1"	0.5

     

    1. bLAcKmAgE87

      bLAcKmAgE87

      https://www.walmart.com/browse/home/office-chair-mats/4044_103150_97116_8918468?facet=material%3AMetal

      big compaines with the issue

      Spoiler
      
      let
          Source = Table.FromColumns({Lines.FromBinary(File.Contents("X:\sourceWeaps.txt"), null, null, 1252)}),
          #"Split Column by Delimiter" = Table.ExpandListColumn(Table.TransformColumns(Source, {{"Column1", Splitter.SplitTextByDelimiter(",""+|"",", QuoteStyle.None), let itemType = (type nullable text) meta [Serialized.Text = true] in type {itemType}}}), "Column1"),
          #"Changed Type" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Column1", type text}}),
          #"Split Column by Delimiter1" = Table.SplitColumn(#"Changed Type", "Column1", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.1", "Column1.2"}),
          #"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter1",{{"Column1.1", type text}, {"Column1.2", type text}}),
          #"Split Column by Delimiter2" = Table.SplitColumn(#"Changed Type1", "Column1.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.1", "Column1.2.2"}),
          #"Changed Type2" = Table.TransformColumnTypes(#"Split Column by Delimiter2",{{"Column1.2.1", type text}, {"Column1.2.2", type text}}),
          #"Split Column by Delimiter3" = Table.SplitColumn(#"Changed Type2", "Column1.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.1", "Column1.2.2.2"}),
          #"Changed Type3" = Table.TransformColumnTypes(#"Split Column by Delimiter3",{{"Column1.2.2.1", type text}, {"Column1.2.2.2", type text}}),
          #"Split Column by Delimiter4" = Table.SplitColumn(#"Changed Type3", "Column1.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.1", "Column1.2.2.2.2"}),
          #"Changed Type4" = Table.TransformColumnTypes(#"Split Column by Delimiter4",{{"Column1.2.2.2.1", type text}, {"Column1.2.2.2.2", type text}}),
          #"Split Column by Delimiter5" = Table.SplitColumn(#"Changed Type4", "Column1.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.1", "Column1.2.2.2.2.2"}),
          #"Changed Type5" = Table.TransformColumnTypes(#"Split Column by Delimiter5",{{"Column1.2.2.2.2.1", Int64.Type}, {"Column1.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter6" = Table.SplitColumn(#"Changed Type5", "Column1.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.1", "Column1.2.2.2.2.2.2"}),
          #"Changed Type6" = Table.TransformColumnTypes(#"Split Column by Delimiter6",{{"Column1.2.2.2.2.2.1", Int64.Type}, {"Column1.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter7" = Table.SplitColumn(#"Changed Type6", "Column1.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2"}),
          #"Changed Type7" = Table.TransformColumnTypes(#"Split Column by Delimiter7",{{"Column1.2.2.2.2.2.2.1", Int64.Type}, {"Column1.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter8" = Table.SplitColumn(#"Changed Type7", "Column1.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2"}),
          #"Changed Type8" = Table.TransformColumnTypes(#"Split Column by Delimiter8",{{"Column1.2.2.2.2.2.2.2.1", Int64.Type}, {"Column1.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter9" = Table.SplitColumn(#"Changed Type8", "Column1.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type9" = Table.TransformColumnTypes(#"Split Column by Delimiter9",{{"Column1.2.2.2.2.2.2.2.2.1", type number}, {"Column1.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter10" = Table.SplitColumn(#"Changed Type9", "Column1.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type10" = Table.TransformColumnTypes(#"Split Column by Delimiter10",{{"Column1.2.2.2.2.2.2.2.2.2.1", type text}, {"Column1.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter11" = Table.SplitColumn(#"Changed Type10", "Column1.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type11" = Table.TransformColumnTypes(#"Split Column by Delimiter11",{{"Column1.2.2.2.2.2.2.2.2.2.2.1", type number}, {"Column1.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter12" = Table.SplitColumn(#"Changed Type11", "Column1.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type12" = Table.TransformColumnTypes(#"Split Column by Delimiter12",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.1", type number}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter13" = Table.SplitColumn(#"Changed Type12", "Column1.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type13" = Table.TransformColumnTypes(#"Split Column by Delimiter13",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.1", type number}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter14" = Table.SplitColumn(#"Changed Type13", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type14" = Table.TransformColumnTypes(#"Split Column by Delimiter14",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.1", type number}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter15" = Table.SplitColumn(#"Changed Type14", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type15" = Table.TransformColumnTypes(#"Split Column by Delimiter15",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", type number}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter16" = Table.SplitColumn(#"Changed Type15", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type16" = Table.TransformColumnTypes(#"Split Column by Delimiter16",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", type text}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter17" = Table.SplitColumn(#"Changed Type16", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type17" = Table.TransformColumnTypes(#"Split Column by Delimiter17",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", Int64.Type}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter18" = Table.SplitColumn(#"Changed Type17", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type18" = Table.TransformColumnTypes(#"Split Column by Delimiter18",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", type text}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Split Column by Delimiter19" = Table.SplitColumn(#"Changed Type18", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", Splitter.SplitTextByDelimiter(""",""[", QuoteStyle.None), {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Changed Type19" = Table.TransformColumnTypes(#"Split Column by Delimiter19",{{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1", type text}, {"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2", type text}}),
          #"Replaced Value" = Table.ReplaceValue(#"Changed Type19","[","",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value1" = Table.ReplaceValue(#"Replaced Value","]","",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Replaced Value2" = Table.ReplaceValue(#"Replaced Value1","]","",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value3" = Table.ReplaceValue(#"Replaced Value2","""""","""",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value4" = Table.ReplaceValue(#"Replaced Value3","""""","""",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value5" = Table.ReplaceValue(#"Replaced Value4","""","",Replacer.ReplaceValue,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value6" = Table.ReplaceValue(#"Replaced Value5","""","",Replacer.ReplaceValue,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Replaced Value7" = Table.ReplaceValue(#"Replaced Value6","""""","""",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Replaced Value8" = Table.ReplaceValue(#"Replaced Value7","""""","""",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2"}),
          #"Replaced Value9" = Table.ReplaceValue(#"Replaced Value8","""","",Replacer.ReplaceText,{"Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value10" = Table.ReplaceValue(#"Replaced Value9","""","",Replacer.ReplaceText,{"Column1.1", "Column1.2.1", "Column1.2.2.1", "Column1.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.1", "Column1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1"}),
          #"Replaced Value11" = Table.ReplaceValue(#"Replaced Value10","[","",Replacer.ReplaceText,{"Column1.1"})
      in
          #"Replaced Value11"

       

       

  3. myHouse = nearestObject [player, "house"];
    hint str animationNames myHouse ;
    _myName = [] ;
    _myName = animationNames myHouse ;
    _myPick =   (_myName select 2) ;
    
    myHouse enableDynamicSimulation true ;
    
    
    {
    
    //myHouse animateSource [  "door_1" , 1, true];
    private _spotZ = "" ; 
    _spotZ =  _x ;
    
    myHouse animate [  _spotZ  , 1 ,0.1];
    
    sleep 0.01 ;
    hint str _x ;
    
    } forEach _myName ;
    
    
    
    _someGroup = allGroups select 1 ;
    _someGroup2 = allGroups select 2 ;
    
    
    _someGroupsLead = leader _someGroup ; 
    _someGroupsLead2 = leader _someGroup2 ;
    
    _GL1 = _someGroupsLead  ;
    _GL2 = _someGroupsLead2  ;
    
    _count = count units _someGroup  ;
    hint str _count ; 
    sleep 2;
    _firstUnit =  (( units _someGroup) select 0) ;
    
    _firstUnit doTarget player ;
    sleep 2 ;
    
    _secUnit = units _someGroup select 4  ;
    _thirdUnit = units _someGroup select 2 ;
    
    _secUnit doTarget _thirdUnit ;
    _thirdUnit doTarget _secUnit ;
    sleep 3; 
    _secUnit doFire _thirdUnit ;
    _thirdUnit doFire _secUnit ;

     

  4. SELECT  DISTINCT editorSubcategory FROM a3objectsdatabase ; 
    "EdSubcat_Personnel_Viper"
    "EdSubcat_Helmets"
    
    "EdSubcat_Humanitarian"
    "MEF_A3_Units_15"
    "MEF_A3_Units_6"
    "EdSubcat_Planes"
    "EdSubcat_Personnel_Bandits"
    "EdSubcat_InventoryItems"
    "EdSubcat_Explosives"
    "EdSubcat_Medicine"
    "EdSubcat_TopSlot_Optics"
    "MEF_A3_Units_12"
    "EdSubcat_CUP_A2_Roads"
    "EdSubcat_Sounds"
    "EdSubcat_Forest"
    "EdSubcat_AssaultRifles"
    "EdSubcat_Trains"
    "MEF_A3_Units_11"
    "MEF_A3_Units_3"
    "EdSubcat_Storage"
    "EdSubcat_Vests"
    "EdSubcat_Rocks"
    "EdSubcat_CUP_A1_Roads"
    "EdSubcat_Market"
    "cba_EdSubcat_Personnel_MalariaInfected"
    "EdSubcat_Uniforms"
    "EdSubcat_Personnel_SpecialForces"
    "EdSubcat_AircraftCarrier"
    "EdSubcat_Machines"
    "EdSubcat_ConstructionSites"
    "EdSubcat_Beach"
    "EdSubcat_BottomSlot"
    "EdSubcat_Backpacks"
    "EdSubcat_Advertisements"
    "MEF_A3_Units_1"
    "EdSubcat_CUP_Winter"
    "MEF_A3_Units_9"
    "EdSubcat_TopSlot_Collimators"
    "MEF_A3_Units_5"
    "EdSubcat_SubMachineGuns"
    "FIR_PilotCrewPack_US_Class"
    "EdSubcat_Personnel_African"
    "EdSubcat_Hats"
    "EdSubcat_Default"
    "EdSubcat_SniperRifles"
    "EdSubcat_Personnel_Enoch"
    "EdSubcat_Launchers"
    "EdSubcat_WarningSigns"
    "EdSubcat_Helpers"
    "EdSubcat_Military"
    "EdSubcat_Cars"
    "EdSubcat_Posters"
    "EdSubcat_Personnel_Pacific"
    "EdSubcat_TEST"
    "EdSubcat_RailwaySegments"
    "EdSubcat_DismantledWeapons"
    "EdSubcat_Railways"
    "EdSubcat_Personnel_Camo_Urban"
    "EdSubcat_Personnel_VR"
    "MEF_A3_Units_4"
    "EdSubcat_Personnel_Tanoan"
    "EdSubcat_RoadSigns"
    "EdSubcat_CUP_School"
    "EdSubcat_ShootHouse"
    "EdSubcat_Lamps"
    "EdSubcat_Gallery"
    "MEF_A3_Units_7"
    "EdSubcat_Pistols"
    "EdSubcat_Tanks"
    "MEF_A3_Units_14"
    "MEF_A3_Units_2"
    "EdSubcat_Blocks"
    "EdSubcat_Airports"
    "EdSubcat_Flags"
    "EdSubcat_Trees"
    "MEF_A3_Units_8"
    "EdSubcat_Personnel_European"
    "EdSubcat_Helicopters"
    "EdSubcat_MachineGuns"
    "EdSubcat_Religious"
    "EdSubcat_APCs"
    "EdSubcat_Shops"
    "EdSubcat_Historical"
    "EdSubcat_CUP_Snow_Sidewalks"
    "EdSubcat_BlankSigns"
    "EdSubcat_Aquatic"
    "EdSubcat_Chemlights"
    "EdSubcat_Terrestrial"
    "EdSubcat_Helipads"
    "EdSubcat_Boats"
    "MEF_A3_Units_10"
    "EdSubcat_CUP_Statue"
    "EdSubcat_Sports"
    "EdSubcat_StaticShips"
    "EdSubcat_Personnel"
    "EdSubcat_Cemetery"
    "EdSubcat_Plants"
    "EdSubcat_CUP_Tropical"
    "EdSubcat_Seaports"
    "EdSubcat_Personnel_Asian"
    "EdSubcat_CUP_Rural"
    "EdSubcat_CUP_Railways"
    "EdSubcat_SideSlot"
    "EdSubcat_Food"
    "EdSubcat_Utilities"
    "EdSubcat_CUP_Infrastructure"
    "EdSubcat_Residential_City"
    "Column1.1"
    "EdSubcat_Intel"
    "EdSubcat_Decontamination"
    "EdSubcat_Obstacles"
    "EdSubcat_Office"
    "EdSubcat_Electronics"
    "EdSubcat_Services"
    "EdSubcat_Personnel_Paramilitary"
    "EdSubcat_CUP_Winter_objects"
    "EdSubcat_Targets"
    "EdSubcat_Turrets"
    "EdSubcat_FrontSlot"
    "EdSubcat_Personnel_CombatPatrol"
    "EdSubCat_Residential_City"
    "EdSubcat_CUP_Sidewalks"
    "EdSubcat_Graffiti"
    "EdSubcat_Bushes"
    "EdSubcat_Camping"
    "MEF_A3_Units_13"
    "EdSubcat_Industrial"
    "EdSubcat_Agricultural"
    "EdSubcat_Garbage"
    "EdSubcat_Personnel_Story"
    "EdSubcat_Craters"
    "EdSubcat_Tools"
    "EdSubcat_Transportation"
    "EdSubcat_Residential_Village"

     

  5. bLAcKmAgE87

    Arma 3 Random Crashes

    I have had that problem and since I have I just used the JEMalloc allocator - 64 bit to keep that from happening... also NO LOGs has been set to 1
  6. DROP TABLE IF EXISTS ARMA3VIKS ; 
    CREATE TABLE ARMA3VIKS
    (
     objName text PRIMARY KEY ,
     objType text ,
     objXDim decimal ,
     objYDim decimal, 
     objZDim decimal,
     objState1 int , 
     objState2 int
    ); 
    
    SELECT * FROM arma3viks
    WHERE objType LIKE '%UAV%'
    ;
    "xzobj26"	"UAV"	0	0	0	26	-1
    "xzobj354"	"UAV_01_base_F"	0	0	0	354	-1
    "xzobj355"	"B_UAV_01_F"	4	2.42307	0.304504	-1	0
    "xzobj356"	"O_UAV_01_F"	4	2.42307	0.304504	-1	0
    "xzobj357"	"I_UAV_01_F"	4	2.42307	0.304504	-1	0
    "xzobj358"	"UAV_02_base_F"	0	0	0	-1	0
    "xzobj359"	"UAV_02_CAS_base_F"	0	0	0	-1	0
    "xzobj360"	"B_UAV_02_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj361"	"O_UAV_02_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj362"	"I_UAV_02_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj363"	"B_UAV_02_CAS_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj364"	"O_UAV_02_CAS_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj365"	"I_UAV_02_CAS_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj366"	"UAV_02_dynamicLoadout_base_F"	0	0	0	-1	0
    "xzobj367"	"B_UAV_02_dynamicLoadout_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj368"	"O_UAV_02_dynamicLoadout_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj369"	"I_UAV_02_dynamicLoadout_F"	10.1888	6.96719	3.18408	-1	0
    "xzobj434"	"UAV_05_Base_F"	0	0	0	434	-1
    "xzobj435"	"B_UAV_05_F"	20.2624	12.7754	3.70142	-1	0
    "xzobj436"	"UAV_03_base_F"	0	0	0	-1	0
    "xzobj437"	"UAV_03_dynamicLoadout_base_F"	0	0	0	-1	0
    "xzobj438"	"B_T_UAV_03_dynamicLoadout_F"	11.232	11.8217	3.25749	-1	0
    "xzobj590"	"B_T_UAV_03_F"	11.232	11.8217	3.25749	590	-1
    "xzobj591"	"UAV_04_base_F"	0	0	0	-1	0
    "xzobj592"	"O_T_UAV_04_CAS_F"	8.99524	5.54911	3.13144	-1	0
    "xzobj752"	"C_IDAP_UAV_01_F"	4	2.42307	0.304504	752	-1
    "xzobj753"	"UAV_06_base_F"	0	0	0	-1	0
    "xzobj754"	"UAV_06_antimine_base_F"	0	0	0	-1	0
    "xzobj755"	"UAV_06_medical_base_F"	0	0	0	-1	0
    "xzobj756"	"B_UAV_06_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj757"	"O_UAV_06_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj758"	"I_UAV_06_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj759"	"C_IDAP_UAV_06_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj760"	"C_UAV_06_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj761"	"C_IDAP_UAV_06_antimine_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj762"	"B_UAV_06_medical_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj763"	"O_UAV_06_medical_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj764"	"I_UAV_06_medical_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj765"	"C_IDAP_UAV_06_medical_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj766"	"C_UAV_06_medical_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj840"	"I_E_UAV_01_F"	4	2.42307	0.304504	840	-1
    "xzobj841"	"I_E_UAV_06_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj842"	"I_E_UAV_06_medical_F"	2.29455	2.31555	0.503085	-1	0
    "xzobj845"	"O_UAV_01_Mine_F"	4	2.42307	0.304504	845	-1

    HOW do I format tables on here?

    1. bLAcKmAgE87

      bLAcKmAgE87

      ..all weapons have the same bounding box size.

  7. However... they will fly up automatically quite a bit before settling back into their designated height.
  8. Spoiler
    
    
    // [ _count1 , countx1 , county1 , ticker , bumpx , bumpy , posQ1 , _groupX , _blam1 , unitNameHandle , partyAnimal , _groupIDBlam  ]
    
    _blam1 = unitNameHandle +  (str _count1 );
    
    if(ticker == 1) then
    {
    countx1 = (countx1 )  ;
    county1 = (county1 ) ;
    };
    if (ticker == 0 ) then
    {
    countx1 = (countx1 ) + bumpx  ;
    county1 = (county1 ) + bumpy  ;
    } ;
    whatx = ( posQ1 select 0) + (countx1)  ;
    whaty = ( posQ1 select 1) + (county1)  ;
    whatz = ( posQ1 select 2);
    
    private _posNew = [(whatx),(whaty),(whatz)] ;
    
    //"MEF_DMARPAT_RS_RM" createUnit [ _posNew, _groupX , ( _blam1  + " = this") ];
    _vehz = createVehicle ["B_T_UAV_03_dynamicLoadout_F", _posNew ,[],0,"CAN_COLLIDE" ];      
    _vehz setVehicleVarName _blam1 ;
    _vehz setDir ( dixa + 90  );
    
    createVehicleCrew _vehz;
    {
    	diag_log [_x, faction _x, side _x, side group _x];
    } forEach crew _vehz;
    
    _blam1 = missionNamespace getVariable [ _blam1 , objNull];
    
    //_blam1 disableAI 'all' ;
    
    {_x disableAI "path"} foreach units _groupX ;
    
    _blam1 setName ( unitNameHandle  + (str _count1) ) ;
    
    //myFool setVariable [ (_blam1 + "v"), (_i + 123), true];
    //[_blam1] join grpNull ;
    _faze = _blam1  getDir partyAnimal ;
    
    _groupX setFormDir _faze ;
    //_faze = _faze + 180 ;
    //_faze = _faze ;
    //createVehicleCrew _vehz;
    //_vehz setDir ( _faze );
    
    _blam1x = unitNameHandle +  (str _count1) + "_m";
    markxx = createMarker [ _blam1x, _posNew  ];
    markxx setMarkerType "mil_circle";
    markxx setMarkerShape "ICON";
    _count1 = _count1 + 1;
    
    //sleep (.01) ;
    
    ticker = 0 ;
    if( _i % modulZ  == 0 && _i != 0 ) then
    {
    
    lessModulz = modulZ - 1 ;
    countx1 =  countx1 - (bumpx * lessModulz )  - bumpy  ;
    county1 =  county1 - (bumpy * lessModulz )  + bumpx  ;
    ticker = 1 ;
    
    _grpC = _grpC +  1 ;
    _groupIDBlam = "grp_" + str _grpC ;
    
    _groupX = missionNamespace getVariable [ _groupIDBlam , objNull];
    _groupX = createGroup west;
    _groupX setGroupId [ _groupIDBlam ] ;
    
    } ;
    
    

     

     

  9. ok ok here's a catch to the script....: leftGunnerGuy fireAtTarget [ tank , currentWeapon vehicle gunner leftGunnerGuy ]; ... ... leftGunnerGuy fireAtTarget [ tank , weapons (vehicle gunner leftGunnerGuy) select 1 ]; the first one works with a heli... the second works with a tank... each vehicle works slightly differently so you have a lot to go through... ...watch this video... in like.. an hour or so... and turn up the quality filter to see the code. The heli is gunna come down and do as you ask.
  10. just use the transport unload waypoint and set a script off I guess... no problem
  11. Ok... yea... so in this folder of yours : C:\Users\Solarcode Red\Documents\Arma 3 - Other Profiles\missions\missonName.VR where missonName.VR is the mission you've made in the editor. in Arma 3 - Other Profiles\missions\missonName.VR You should have a single mission.sqm file there from the editor's creation. Add init.sqf using notepad... also being very careful to save the extension as .sqf not .txt by selecting allFiles in fileTypes I know that sounds weird but lets go over it again... Open textpad.... go to save as and click it... in the dialog... select file types... pick allfile types... you should see the .sqm file, but don't select it... type in init.sqf as the file name... and save it with that title... you should notice the extension has changed at the top of the notepad file that is open...otherwise... it ends as .txt which can't be used here... in the blank init.sqf... it works just as any notepad or text file... but with the extension .sqf save this save this as init.sqf save the other script as fireIt.sqf its like using two screens... in your editor... in your mission... which you've saved once, and have the init and fireIt files add that trigger from above... make it detect civilians and make not repeat... put some civilians inside... start the mission with the big orange button hopefully ...init.sqf goes off... then the trigger... then the script fireIt.sqf
  12. No not you lol I don't think you are jerk... I just don't like it when people beat around the bush... so I thought I'd help you out... Also consider playing with this line... private _aimOn = ( leftGunnerGuy ) aimedAtTarget [ _myCar ] ; vs. private _aimOn = ( leftGunnerGuy ) aimedAtTarget [ _tank] ; The second one will not work.... and also ...your welcome... I am sure that there are better firing scripts but at least I have something to show you
  13. sorry ... you posted when I was editing my message for you... check the codes I've shown again...(refresh lol)
  14. Here... obviously what I am showing isn't anywhere near as good enough(most especially the previous script), but at least I have this to give to you for study: Suppose you have a ton of civilians... in a trigger, you can make that. And the trigger... well... just start off easy... doesn't repeat. Ok... Make trigger, put civis in it, detect for civis once. Let's focus on this one. "init.sqf" trigger (with no name) Ok... in the triggers activation block... this will go. It will pick up everybody inside that passes and will drop it into a simple array... Now... for your sqf... which along with init.sqf goes into your user missions folder in MyDocuments (User\documents\arma3OtherProfiles\missions\...) "fireIt.sqf" swear to god dead civilians everywhere....
  15. your trigger activates... in your trigger you've put... say... [] execVM 'fireIt.sqf' ; in your mission folder...you've saved a text file with the extension .sqf as fireIt ... or fireIt.sqf after selecting allFiles from the dialog in notepad. etc...
  16. Don't be a jerk... this will work for sure!!!! lol Assuming you have a leftGunnerGuy as left door gunner and ... myCar as a car. How it is you add targets to your trigger automatically is another subject(s), but if you were to pick one that passed the trigger going off repetatively... you'd say.... that you can each one individually or try and pick out the area of the triggerzone. Suppose you pick each one out.. in your trigger you'd put something like... { [_x] execVM 'fireIt.sqf'; } foreach thisList ; ...and addToTheTop of the sqf... params ["_stray"] ; ... elaborate ....civilians what not... ...put a little more into that...
  17. Building a bridge and driving over the whole thing... a 3 kilometer bridge! Lol Get a sander.... Use setAclTime = 0.9 or greater to increase or decrease block gradient. Only the first shot gets put into a usable array. Also, the loadTrace.sqf is called statically as shown below. amended init.sqf amended rocketTracers.sqf loadTrace.sqf made a certain way...
×