Jump to content

Booker-

Member
  • Content Count

    16
  • Joined

  • Last visited

  • Medals

Posts posted by Booker-


  1. The fences that surround the Tanoa International Airport; I am able to edit them the way I see fit. The problem I am having is making them have no damage. I have put in the init;

     

    this addeventhandler [this allowdamage false];

    this allowdamage false;

    this enableSimulation false;

    etc.

     

    I have put it in the

    Init ;|; Init+Object Init ;|; Init+Global Object Init ;|; Init+Object Init+Global Object Init ;|; Object Init ;|; Global Object Init ;|; Object Init+Global Object Init. 

    I have tried the Enable Damage tab/checkbox and it seems to only work for doors.  If you guys have anything for me on how to make the Terrain Objects not have any damage through the "EDIT TERRAIN OBJECTS," I would be grateful!


  2. On 10/21/2017 at 8:59 AM, hoverguy said:

    Hello @Booker-

     

    Name gate variable -> fenceGate

     

    Trigger

     

    On activation

    
    fenceGate animateSource ["Door_1_sound_source",1]; 
    fenceGate animateSource ["Door_2_sound_source",1];

    On Deactivation

    
    fenceGate animateSource ["Door_1_sound_source",0]; 
    fenceGate animateSource ["Door_2_sound_source",0];

     

    My man, you are a god! Thank you. 

    Been looking all over for this.

    • Like 1

  3. On 6/8/2017 at 4:14 AM, Lenyoga said:

     

    Holy necropost, Batman.

     

    To keep it short - most things related to 3d models are possible (guns, gear, character models), whereas the character models would require a certain amount of leftover sanity to do the rigging and weighting if you create a lot of new assets instead of simple retextures of OFP models. Custom models for NV goggles are possible, but thermal vision and the other variants are impossible.

     

    Backpacks do not exist in OFP as opposed to the later games, carrying multiple items can be solved via a simple config trick, multiple weapons can be handled via a script (but as far as I remember the original Splinter Cell, Chaos Theory and the few minutes I've spent in Blacklist, you only really need a multi purpose rifle and a pistol.)

     

    Melee combat and advanced stealth is possible, there has been a great mission demonstrating it (I forgot the title, but I could look it up again if you want.)

     

    With all that said, I have really thought about doing a few Splinter Cell inspired addons and missions years ago, but the thought of creating interiors in OFP and scripting the enemy movement in there still gives me nightmares. You'd have to do accurate geometry, roadway and a paths LOD for the AI to know where to go in, out and stand. But if you do have the time to create a few Splinter Cell addons, I'd love to see the results and maybe give it a try in the editor!

    I have a buddy that wants to start something like what you are talking about. Let me talk to him and see what he really wants to do. He already has a melee mod and wants to create a Stealth mod. TY for the reply on what you think. :D

    • Like 1

  4. Ok, So I see that the last post was over 10 years ago. So lets try this again. They more or less already have 'Splinter Cell' gear but no where near called that. 

     

    Saying that, would it be possible to create all of the Splinter Cell: Blacklist outfits? If you are wanting more info on what I am talking about, I would be happy to do so. 

     

    No need on the Noggles, and if possible to create a very small to very large Invisible backpack that has no Shadow would be amazing! 


  5. On 4/4/2017 at 0:34 AM, sarogahtyp said:

     

    Whats the problem? I think u just have to start it from your e.g. InitServer.sqf.

    In the first lines of the script there are some options u may set. and they are well described. Just open your eyes and ask questions if you dont understand something.

    Nobody knows you and your scripting knowledge. Therefore you have to ask if you need an information.

    I was angry that day and don't remember why. Lol. I will put that into my InitServer.sqf. TY for getting back to me.


  6. On 1/22/2017 at 0:33 PM, hansson0728 said:

    not really done, but something like this maybe for veh patrol, it should be quite easy on CPU also..

     

    
    // // Debug
     _group =[getPos player, WEST, 4] call BIS_fnc_spawnGroup; 
    
    _start  =	[player,[0,50],random 360,0,[1,100]] call SHK_pos;		// Starting location
    _range  = 	100;													// Maximum range
    _amount = 	13;														// Amount of waypoints
    _unit   =	leader _group;											// Unit that should patrol
    
    _Positions = [];
    _SadSwitch = 0;
    _grp = group _unit;
     
     // First position
    _pos = [_start,[50,70],random 360,0,[1,_range]] call SHK_pos;
    _Positions = _Positions + [_pos];
    _i = 1;
    while { _i < _amount} do {
     
    		while {(_Pos in _Positions)} do 
    		{
    			_pos = [_start,[random 30,random 100],random 360,0,[1,_range]] call SHK_pos;
            };
    		_wp = _grp addWaypoint [ _pos , 1, _i ];
     
            if ( _SadSwitch == 0 ) then 
    		{
                    [_grp, _i] setWaypointType 			"MOVE";
    				[_grp, _i] setWaypointSpeed 		"LIMITED";
    				[_grp, _i] setWaypointBehaviour 	"SAFE";
                    [_grp, _i] setWaypointCombatMode 	"WHITE";
                    [_grp, _i] setWaypointFormation 	"COLUMN";
    				[_grp, _i] setWaypointTimeout 		[0, 1, 0];
            };
    		
    		if ( _SadSwitch == 3) then
    		{
    		    [_grp, _i] setWaypointType 			"SAD";
    			[_grp, _i] setWaypointSpeed 		"LIMITED";
    			[_grp, _i] setWaypointBehaviour 	"AWARE";
                [_grp, _i] setWaypointCombatMode 	"RED";
                [_grp, _i] setWaypointFormation 	"COLUMN";
    			
    			_SadSwitch = 0;
    			
    		} else
    		{
    			_SadSwitch = _SadSwitch + 1;
    		};
           // Debug Marker
            _string = format["%1",_i];
            _marker = createMarker [ _string, _pos ];
            _string setMarkerColor "ColorBlue";
            _string setMarkerType "mil_dot";
            _string setMarkerText _string;
     
            _i = _i + 1;
    		_Positions = _Positions + [_pos];
    };
     
    _wp = _grp addWaypoint [_start,0,_amount];
    [_grp, _amount] setWaypointType "CYCLE";

     

    I finish it then test is out. TY for starting it. :D


  7. On 11/17/2014 at 4:42 AM, Kerc Kasha said:

    hideobject does the trick

    Only problem is when you hide the object, that certain object is still there. Meaning if you wanted to shoot an enemy on the other side of the 'house'. You would be hitting the house, not the enemy. Keep this in mind when you hide any objects. Also, a note I might add, if you are driving and all of a sudden hit a 'object'. That would be the object that you have hidden. 

     

    I use the Hide Terrain Objects to remove trash and other crap at my home base that does not need to be there. 

     

    Cheers!


  8. On 6/11/2014 at 5:00 PM, whiztler said:

    This one does the trick for me:

     

    
    /*
       .....               ...     ..           ...     ..      
    .H8888888h.  ~-.    .=*8888x <"?88h.     .=*8888x <"?88h.  
    888888888888x  `>  X>  '8888H> '8888    X>  '8888H> '8888  
    X~     `?888888hx~ '88h. `8888   8888   '88h. `8888   8888  
    '      x8.^"*88*"  '8888 '8888    "88>  '8888 '8888    "88>  
    `-:- X8888x        `888 '8888.xH888x.   `888 '8888.xH888x.  
         488888>         X" :88*~  `*8888>    X" :88*~  `*8888>
       .. `"88*        ~"   !"`      "888>  ~"   !"`      "888>
     x88888nX"      .   .H8888h.      ?88    .H8888h.      ?88  
    !"*8888888n..  :   :"^"88888h.    '!    :"^"88888h.    '!  
    '    "*88888888*    ^    "88888hx.+"     ^    "88888hx.+"    
           ^"***"`            ^"**""               ^"**""    
    
       | TheButcherBay | ARMA 3 ALPHA | ANJAN DELETE ALL |
    */
    
    
    if (!isServer) exitWith {};
    
    TBB_Included = [];
    
    TBB_Excluded = ["B_soldier_AR_F","B_soldier_exp_F","B_Soldier_GL_F",
                   "B_Helipilot_F","B_soldier_M_F","B_medic_F","B_Soldier_F",
                   "B_soldier_repair_F","B_soldier_LAT_F","B_Soldier_SL_F",
                   "B_Soldier_lite_F","B_Soldier_TL_F","B_Lifeboat",
                   "B_Assaultboat","B_SpeedBoat","B_Quadbike_F",
                   "B_Hunter_F","B_Hunter_HMG_F","B_Hunter_RCWS_F",
                   "B_MH9_F","B_AH9_F","O_Ka60_Unarmed_F","O_Ka60_F","B_Mk6"];
    
    // true/false = on/off.
    _canMove = true;          // if vehicles should be deleted when they are to damaged to move and empty, NOTE empty fuel also means it cannot move.
    _abandoned = false;      // if vehicles should be deleted after being x time un manned, if 1 unit enters in the time period, time is reset, and vehicle is processed again when empty or destroyed.
    _groupDel = true;          // if empty groups should be deleted, to avoid reaching 144 group limit in long missions.
    _viewDist = 0;            // min distance in meter from a player unit to allow delete, if you dont care if player sees the delete, set it to 0.
    _manTimer = 30;          // x seconds until delete of dead man units.
    _vehTimer = 30;          // x seconds until delete of dead vehicles, for destroyed and heavy damaged vehicles.
    _abaTimer = 30;          // x seconds a vehicle must be unmanned to be deleted, for _abandoned option.
    _incTimer = 30;            // x seconds any object put inside the TBB_Included will be deleted no matter condition.
    
    // DO NOT EDIT PAST THIS LINE //
    
    // delete function.
    _delete = {
       _del = _this select 0;
       _dis = _this select 1;
       _tim = _this select 2;
       _aba = _this select 3;
       _abt = _this select 4;
       _cnm = _this select 5;
       if (isPlayer _del) exitWith {};
    
       _abort = true;
       if ("veh" in _this AND (_aba OR _cnm)) then {
           _sec = _abt;
           while {_sec != 0} do {
               sleep 1;
               if (_aba AND (getDammage _del) < 1 AND ({alive _x} count (crew _del)) == 0) then {_sec = _sec - 1};
               if (_aba AND _sec == 0) then {_abort = false};
               if (((_cnm AND canMove _del) OR _aba) AND ({alive _x} count (crew _del)) != 0) then {
                   _sec = 0; _abort = true;
                   _del setVariable ["TBB_delete_readd", true, true];
               };
               if ((getDammage _del) >= 1) then {
                   _sec = 0; _abort = false;
                   sleep _tim;
               };
               if (isNull _del) then {_sec = 0; _abort = true};
           };
       } else {
           _abort = false;
           sleep _tim;
       };
       // fail safe for excluded and included.
       if (isNull _del OR _abort OR _del in TBB_Excluded) exitWith {};
       {
           _arr = _x; _obj = ""; _timer = _tim; _dist = _dis;
           if ((typeName _arr) == "ARRAY") then {
               _obj = _arr select 0; _timer = _arr select 1;
               if ((count _arr) == 3) then {_dist = _arr select 2} else {_dist = _viewDist};
           } else {
               _obj = _arr; _timer = _tim; _dist = _dis;
           };
           if (_del == _obj) then {
               _del = _obj;
               _dis = _dist;
               if ((_timer - _tim) > 0) then {sleep (_timer - _tim)};
               // clean up the TBB_Included array of deleted objects.
               TBB_Included = TBB_Included - [_x];
           };
       } foreach TBB_Included;
    
       if (!isNull _del) then {
           _arr = [];
           waitUntil {sleep 1; ({isPlayer _x AND (_del distance (vehicle _x)) < _dis} count playableUnits) == 0};
           waitUntil {sleep 1; ({isPlayer _x AND (_del distance (vehicle _x)) < _dis} count switchableUnits) == 0};
           if ("veh" in _this OR "incVeh" in _this) then {{_arr = _arr + [_x]; _x setPos (getPos _del); deleteVehicle _x} foreach crew _del} else {
               if (_del isKindOf "man") then {hideBody _del; sleep 10};
           };
           _arr = _arr + [_del];
           deleteVehicle _del;
           //{_x = objNull; waitUntil {sleep 1; isNull _x}; _x = nil} foreach _arr;
    
           {if (_x in TBB_delete_respawned) then {_arr = _arr - [_x]}} foreach _arr;
           TBB_delete_respawned = TBB_delete_respawned + _arr;
       };
    };
    
    _processed = []; _todo = []; _types = []; _included = []; TBB_delete_respawned = [];
    while {true} do {
       // check TBB_Excluded array for changes.
       {if ((typeName _x) == "STRING" AND !(_x in _types)) then {_types = _types + [_x]}} foreach TBB_Excluded;
       // update types/classnames if changed.
       {if (!(_x in TBB_Excluded)) then {_types = _types - [_x]}} foreach _types;
       // clean the processed list of all objects that have been deleted.
       {if (isNull _x) then {_processed = _processed - [_x]}} foreach _processed;
       // clean the included list of all objects that have been deleted.
       {if (isNull _x) then {_included = _included - [_x]}} foreach _included;
    
       // process TBB_Included array.
       {
           _arr = _x; _obj = ""; _timer = 0; _dist = 0;
           if ((typeName _arr) == "ARRAY") then {
               _obj = _arr select 0; _timer = _arr select 1;
               if ((count _arr) == 3) then {_dist = _arr select 2} else {_dist = _viewDist};
           } else {
               _obj = _arr; _timer = _incTimer; _dist = _viewDist;
           };
           if (_x in _included) exitWith {};
           _included = _included + [_obj];
           if (_obj isKindOf "AllVehicles" AND !(_obj isKindOf "Man")) then {
               _null = [_obj,_dist,_timer,false,0,false,"incVeh"] spawn _delete;
           } else {
               _null = [_obj,_dist,_timer,false,0,false,"inc"] spawn _delete;
           };
       } foreach TBB_Included;
    
       // gather all dead.
       _allD = allDead;
       {if (_x in TBB_delete_respawned AND _x in _processed) then {_processed = _processed - [_x]}} foreach _allD;
       {
           _unit = _x;
           if (_x in _included) exitWith {};
           if ((vehicle _x) == _x AND !(_x in _processed) AND ({_unit isKindOf _x} count _types) == 0 AND !(_x in TBB_Excluded)) then {
               if (!(_x in _todo)) then {_todo = _todo + [_x]};
           };
       } foreach _allD;
    
       // gather all vehicles and process depending on options used.
       _allV = vehicles;
       {if (_x in TBB_delete_respawned AND _x in _processed) then {_processed = _processed - [_x]}} foreach _allV;
       {
           _veh = _x;
           if (_x in _included) exitWith {};
           if (_x getVariable ["TBB_delete_readd", false]) then {
               _processed = _processed - [_x];
               _x setVariable ["TBB_delete_readd", false, true];
           };
           if (!(_x in _processed) AND ({_veh isKindOf _x} count _types) == 0 AND !(_x in TBB_Excluded)) then {
               if ((getDammage _x) >= 1 OR (_canMove AND !canMove _x AND ({alive _x} count (crew _x)) == 0) OR (_abandoned AND ({alive _x} count (crew _x)) == 0)) then {
                   if (!(_x in _todo)) then {_todo = _todo + [_x]};
               };
           };
       } foreach _allV;
    
       // run the delete script for todo list.
       {
           if (!(_x in _processed)) then {
               if (_x isKindOf "Man") then {
                   _null = [_x,_viewDist,_manTimer,_abandoned,_abaTimer,_canMove] spawn _delete;
               } else {
                   _null = [_x,_viewDist,_vehTimer,_abandoned,_abaTimer,_canMove,"veh"] spawn _delete;
               };
               _todo = _todo - [_x]; _processed = _processed + [_x];
           };
       } foreach _todo;
    
       // delete empty groups.
       if (_groupDel) then {{if ((count (units _x)) == 0) then {deleteGroup _x; _x = grpNull; _x = nil}} foreach allGroups};
    
       // sleep 10 seconds, then check if there are any changes to dead or vehicles that are not processed.
       sleep 10;
    };
     

     



    You say this one does the trick, but what in gods name is this? Where am I suppose to put it? How do I attach it? Do I need a macro? Etc etc etc!!! I don't mean to be rude, just upsets me when anybody does not give out everything and only half ass at it.

×