Jump to content

=Odin=

Member
  • Content Count

    108
  • Joined

  • Last visited

  • Medals

Community Reputation

0 Neutral

1 Follower

About =Odin=

  • Rank
    Sergeant

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hello, This is a city to city patrol script I made a few years back that you can use, as it has waypoints spawn bis groups in it allready, or just read it and copy what bits work for you :) ////////////////////////////////////////////////////////////////// // Function file for [ARMA2/Combined Ops] // Created by: [(AEF) Odin] ////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////// // Function file for ARMA2 // Created by: Odin aka (AEF)Odin // Visit http://www.aef-hq.com.au/aef3 // USAGE ==> // // Create a rectangle marker and name it what you like. // Add a function module. // Add a "CityCenter" Logic. // Be sure to add a Russian rifleman somewhere on the map (set probabilaty of presence to 0), // Or change the units side to represent the patrol groups side. // YOU MUST have at these lines in you init.sqf // // if (!isServer) exitWith{}; // waitUntil {!isNil "bis_fnc_init"}; // // To call this script you must include the "MarkerName" and one of the 6 different groups. // "INF" // "MOTO" // "MECH" // "TANK" // "AIR" // "2GROUPS" // Now add this line to your init // call{["MarkerName","YourChoiceOfGroup"] execVM "CityToCityPatrol.sqf"}; // EXAMPLE ==> // call{["pat","AIR"] execVM "CityFlatPatrol.sqf"}; // // This script has been set up to spawn East groups, if you want another group uncomment the desired // side and re add comment "//" to previous Group // To change from East to West EXAMPLE==> // _InfGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Infantry" >> "RU_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Infantry" >> "INS_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Infantry" >> "USMC_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [getMarkerPos _zone, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Infantry" >> "CDF_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, resistance, (configFile >> "CfgGroups" >> "Guerrila" >> "GUE" >> "Infantry" >> "GUE_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, civilian, (configFile >> "CfgGroups" >> "Civilian" >> "CIV" >> "Infantry" >> "CIV_Crowd")] call BIS_fnc_spawnGroup; // // Would look like this // // //_InfGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Infantry" >> "RU_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Infantry" >> "INS_InfSquad")] call BIS_fnc_spawnGroup; // _InfGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Infantry" >> "USMC_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [getMarkerPos _zone, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Infantry" >> "CDF_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, resistance, (configFile >> "CfgGroups" >> "Guerrila" >> "GUE" >> "Infantry" >> "GUE_InfSquad")] call BIS_fnc_spawnGroup; // //_InfGrp = [_zone_pos, civilian, (configFile >> "CfgGroups" >> "Civilian" >> "CIV" >> "Infantry" >> "CIV_Crowd")] call BIS_fnc_spawnGroup; // // Use the Included ClassName refernce list "GroupClasses.txt" to change the GroupClasses. // ////////////////////////////////////////////////////////////////// if (!isServer) exitWith{}; Private ["_start","_zone","_zone_size","_zone_size_x","_zone_size_y","_type"]; _start = false; _zone = _this select 0; //_zone_pos = getMarkerPos _zone; _zone_size = MarkerSize _zone; _zone_size_x = (_zone_size select 0); _zone_size_y = (_zone_size select 1); sleep 0.05; _start = true; _type = _this select 1; if (_start) then { Private ["_init","_search","_zone_pos","_InfGrp","_MotoGrp","_MechGrp","_TankGrp","_AirGrp","_Grp1","_Grp2","_UnitLeader","_list","_typeVar","_neighbors","_name","_x","_wp1","_wp2","_wp3","_wp4","_wp5","_wp6","_wp7","_cond1","_cond2"]; _init = switch (_type) do { case "INF": { _search = createMarker ["_spawn",getMarkerPos _zone]; _search setMarkerType "Empty"; _search setMarkerColor "Default"; _search setMarkerSize [0.5, 0.5]; sleep 0.001; _search setMarkerPos [(getMarkerPos _search select 0)+ Random _zone_size_x,(getMarkerPos _search select 1)- Random _zone_size_x]; _zone_pos = getMarkerPos _search; _InfGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Infantry" >> "RU_InfSquad")] call BIS_fnc_spawnGroup; //_InfGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Infantry" >> "INS_InfSquad")] call BIS_fnc_spawnGroup; //_InfGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Infantry" >> "USMC_InfSquad")] call BIS_fnc_spawnGroup; //_InfGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Infantry" >> "CDF_InfSquad")] call BIS_fnc_spawnGroup; //_InfGrp = [_zone_pos, resistance, (configFile >> "CfgGroups" >> "Guerrila" >> "GUE" >> "Infantry" >> "GUE_InfSquad")] call BIS_fnc_spawnGroup; //_InfGrp = [_zone_pos, civilian, (configFile >> "CfgGroups" >> "Civilian" >> "CIV" >> "Infantry" >> "CIV_Crowd")] call BIS_fnc_spawnGroup; _UnitLeader = leader _InfGrp; _UnitLeader = leader _InfGrp; _list = ["CityCenter",[getMarkerPos _zone,_zone_size_y],true] call bis_fnc_locations; while {true} do { { sleep 0.02; _typeVar = _x getVariable "type"; _neighbors = _x getVariable "neighbors"; _name = _x getVariable "name"; sleep 0.02; _wp1 = _InfGrp addWaypoint [getpos _x, 0]; [_InfGrp, 1] setWaypointBehaviour "COMBAT"; [_InfGrp, 1] setWaypointSpeed "FULL"; [_InfGrp, 1] setWaypointType "MOVE"; waitUntil{currentWaypoint _InfGrp != 1}; sleep 0.2; deleteWaypoint _wp1; } forEach _list; }; }; case "MOTO": { _search = createMarker ["_spawn1",getMarkerPos _zone]; _search setMarkerType "Empty"; _search setMarkerColor "Default"; _search setMarkerSize [0.5, 0.5]; sleep 0.001; _search setMarkerPos [(getMarkerPos _search select 0)+ Random _zone_size_x,(getMarkerPos _search select 1)- Random _zone_size_x]; _zone_pos = getMarkerPos _search; _MotoGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Motorized" >> "RU_MotInfSquad")] call BIS_fnc_spawnGroup; //_MotoGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Motorized" >> "INS_MotInfSquad")] call BIS_fnc_spawnGroup; //_MotoGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Motorized" >> "USMC_MotInfSection")] call BIS_fnc_spawnGroup; //_MotoGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Motorized" >> "CDF_MotInfSquad")] call BIS_fnc_spawnGroup; //_MotoGrp = [_zone_pos, resistance, (configFile >> "CfgGroups" >> "Guerrila" >> "GUE" >> "Motorized" >> "GUE_MotInfSection")] call BIS_fnc_spawnGroup; _UnitLeader = leader _MotoGrp; _list = ["CityCenter",[getMarkerPos _zone,_zone_size_y],true] call bis_fnc_locations; while {true} do { { sleep 0.02; _typeVar = _x getVariable "type"; _neighbors = _x getVariable "neighbors"; _name = _x getVariable "name"; sleep 0.02; _wp2 = _MotoGrp addWaypoint [getpos _x, 0]; [_MotoGrp, 1] setWaypointBehaviour "COMBAT"; [_MotoGrp, 1] setWaypointSpeed "FULL"; [_MotoGrp, 1] setWaypointType "MOVE"; waitUntil{currentWaypoint _MotoGrp != 1}; sleep 0.2; deleteWaypoint _wp2; } forEach _list; }; }; case "MECH": { _search = createMarker ["_spawn2",getMarkerPos _zone]; _search setMarkerType "Empty"; _search setMarkerColor "Default"; _search setMarkerSize [0.5, 0.5]; sleep 0.001; _search setMarkerPos [(getMarkerPos _search select 0)+ Random _zone_size_x,(getMarkerPos _search select 1)- Random _zone_size_x]; _zone_pos = getMarkerPos _search; _MechGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Mechanized" >> "RU_MechInfSquad_1")] call BIS_fnc_spawnGroup; //_MechGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Mechanized" >> "INS_MechInfSquad")] call BIS_fnc_spawnGroup; //_MechGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Mechanized" >> "USMC_MechInfSquad")] call BIS_fnc_spawnGroup; //_MechGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Mechanized" >> "CDF_MechInfSquad")] call BIS_fnc_spawnGroup; //_MechGrp = [_zone_pos, resistance, (configFile >> "CfgGroups" >> "Guerrila" >> "GUE" >> "Mechanized" >> "GUE_MechInfSection")] call BIS_fnc_spawnGroup; _UnitLeader = leader _MechGrp; _list = ["CityCenter",[getMarkerPos _zone,_zone_size_y],true] call bis_fnc_locations; while {true} do { { sleep 0.02; _typeVar = _x getVariable "type"; _neighbors = _x getVariable "neighbors"; _name = _x getVariable "name"; sleep 0.02; _wp3 = _MechGrp addWaypoint [getpos _x, 0]; [_MechGrp, 1] setWaypointBehaviour "COMBAT"; [_MechGrp, 1] setWaypointSpeed "FULL"; [_MechGrp, 1] setWaypointType "MOVE"; waitUntil{currentWaypoint _MechGrp != 1}; sleep 0.2; deleteWaypoint _wp3; } forEach _list; }; }; case "TANK": { _search = createMarker ["_spawn3",getMarkerPos _zone]; _search setMarkerType "Empty"; _search setMarkerColor "Default"; _search setMarkerSize [0.5, 0.5]; sleep 0.001; _search setMarkerPos [(getMarkerPos _search select 0)+ Random _zone_size_x,(getMarkerPos _search select 1)- Random _zone_size_x]; _zone_pos = getMarkerPos _search; _TankGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Armored" >> "RU_TankPlatoon")] call BIS_fnc_spawnGroup; //_TankGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Armored" >> "INS_TankSection")] call BIS_fnc_spawnGroup; //_TankGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Armored" >> "USMC_TankPlatoon")] call BIS_fnc_spawnGroup; //_TankGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Armored" >> "CDF_TankPlatoon")] call BIS_fnc_spawnGroup; //_TankGrp = [_zone_pos, resistance, (configFile >> "CfgGroups" >> "Guerrila" >> "GUE" >> "Armored" >> "GUE_TankSection")] call BIS_fnc_spawnGroup; _UnitLeader = leader _TankGrp; _list = ["CityCenter",[getMarkerPos _zone,_zone_size_y],true] call bis_fnc_locations; while {true} do { { sleep 0.02; _typeVar = _x getVariable "type"; _neighbors = _x getVariable "neighbors"; _name = _x getVariable "name"; sleep 0.02; _wp4 = _TankGrp addWaypoint [getpos _x, 0]; [_TankGrp, 1] setWaypointBehaviour "COMBAT"; [_TankGrp, 1] setWaypointSpeed "FULL"; [_TankGrp, 1] setWaypointType "MOVE"; waitUntil{currentWaypoint _TankGrp != 1}; sleep 0.2; deleteWaypoint _wp4; } forEach _list; }; }; case "AIR": { _search = createMarker ["_spawn4",getMarkerPos _zone]; _search setMarkerType "Empty"; _search setMarkerColor "Default"; _search setMarkerSize [0.5, 0.5]; sleep 0.001; _search setMarkerPos [(getMarkerPos _search select 0)+ Random _zone_size_x,(getMarkerPos _search select 1)- Random _zone_size_x]; _zone_pos = getMarkerPos _search; _AirGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Air" >> "RU_Mi24VSquadron")] call BIS_fnc_spawnGroup; //_AirGrp = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "INS" >> "Air" >> "INS_Mi8Squadron")] call BIS_fnc_spawnGroup; //_AirGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "USMC" >> "Air" >> "USMC_UH1YSquadron")] call BIS_fnc_spawnGroup; //_AirGrp = [_zone_pos, west, (configFile >> "CfgGroups" >> "West" >> "CDF" >> "Air" >> "CDF_Mi24DSquadron")] call BIS_fnc_spawnGroup; _UnitLeader = leader _AirGrp; _list = ["CityCenter",[getMarkerPos _zone,_zone_size_y],true] call bis_fnc_locations; while {true} do { { sleep 0.02; _typeVar = _x getVariable "type"; _neighbors = _x getVariable "neighbors"; _name = _x getVariable "name"; sleep 0.02; _wp5 = _AirGrp addWaypoint [getpos _x, 0]; [_AirGrp, 1] setWaypointBehaviour "COMBAT"; [_AirGrp, 1] setWaypointSpeed "FULL"; [_AirGrp, 1] setWaypointType "MOVE"; waitUntil{currentWaypoint _AirGrp != 1}; sleep 0.2; deleteWaypoint _wp5; } forEach _list; }; }; case "2GROUPS": { _search = createMarker ["_spawn5",getMarkerPos _zone]; _search setMarkerType "Empty"; _search setMarkerColor "Default"; _search setMarkerSize [0.5, 0.5]; sleep 0.001; _search setMarkerPos [(getMarkerPos _search select 0)+ Random _zone_size_x,(getMarkerPos _search select 1)- Random _zone_size_x]; _zone_pos = getMarkerPos _search; _Grp1 = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Motorized" >> "RU_MotInfSquad")] call BIS_fnc_spawnGroup; sleep 1; _Grp2 = [_zone_pos, east, (configFile >> "CfgGroups" >> "East" >> "RU" >> "Infantry" >> "RU_InfSquad")] call BIS_fnc_spawnGroup; _UnitLeader = leader _Grp1; _list = ["CityCenter",[getMarkerPos _zone,_zone_size_y],true] call bis_fnc_locations; while {true} do { { sleep 0.02; _typeVar = _x getVariable "type"; _neighbors = _x getVariable "neighbors"; _name = _x getVariable "name"; sleep 0.02; _wp6 = _Grp1 addWaypoint [getpos _x, 0]; [_Grp1, 1] setWaypointBehaviour "COMBAT"; [_Grp1, 1] setWaypointSpeed "FULL"; [_Grp1, 1] setWaypointType "MOVE"; _wp7 = _Grp2 addWaypoint [getpos _x, 0]; [_Grp2, 1] setWaypointBehaviour "COMBAT"; [_Grp2, 1] setWaypointSpeed "FULL"; [_Grp2, 1] setWaypointType "MOVE"; waitUntil{ _cond1 =currentWaypoint _Grp1 != 1; _cond2 =currentWaypoint _Grp2 != 0; _cond1 && _cond2 }; sleep 0.2; deleteWaypoint _wp6; deleteWaypoint _wp7; } forEach _list; }; }; }; }; Sleep 0.1; Or this is the link to a newer version that supports ACE with a demo mission http://www.armaholic.com/page.php?id=10292 Hope that helps. Odin
  2. =Odin=

    Police Sirens

    Heya Sarge, I may be a bit rusty at scripting, but in your 1st line of the siren.sqf _this = _this select 3; you are using one of the Magic Variables ==>http://community.bistudio.com/wiki/Magic_Variables, Maybe change that and all corrisponding references to a new name e.g. _sarge = _this select 3;[//CODE]Also a [color=#0000FF]select 3 [/color]should follow [color=#0000FF]select 0;[/color] it may not be law but I think it helps. Like I say I am a bit rusty but try that and see if it helps. Odin
  3. Awesome I love this, Helped me find the Class names of enterable buildings :D
  4. Heya lucky, maybe take a look at these scripts they do what you ask but spawn entire groups of units or vehicles at random locations. You can open them up and have a look to see how it was acheived, or use the included readme to help implement them into your own mission. hope it helps. http://creobellum.org/node/24
  5. This Airsupport script may help you out as a starter http://creobellum.org/node/110 Search for camSetRelPos or this topic on the OFPEC should help out with the set up of a camera chase Hope that helps http://www.ofpec.com/forum/index.php?topic=34324.0
  6. Maybe try it like this, this is based on a working version I have used for switching betwwen players squads, waitUntil {!(isNull player)}; waitUntil {player==player}; switch ((side player)) do { case WEST: { player createDiaryRecord ["Diary",["Extraction","You will be made aware of your extraction location apon completion of your first task."]]; player createDiaryRecord ["Diary",["Info 2","Multiple hostiles, several light vehicles spotted by CDF. The shipment of Tunguskas was at the docks of Bereznio. They are thought to be awaiting transport and not expected to be manned."]]; player createDiaryRecord ["Diary",["Info 1","Mission is failed pending any player's death."]]; MAG_tskObj1=player createSimpleTask ["Extraction"]; MAG_tskObj1 setSimpleTaskDescription ["Move to the extraction point","Extraction","Extraction"]; MAG_tskObj1 setSimpleTaskDestination (getMarkerPos "extraction"); MAG_tskObj0=player createSimpleTask ["Destroy Tunguskas"]; MAG_tskObj0 setSimpleTaskDescription ["Destroy the three Tunguskas that arrived on a recient shipment to Bereznio","Destroy Tunguskas","Destroy Tunguskas"]; }; case EAST: { }; case RESISTANCE: { }; case CIVILIAN: { }; }; Also as far as I know you can't use the old html coding within a .sqf ie: <marker name='extraction'>extraction</marker> I am not sure on this but I think you should probably remove the "setCurrentTask" line out of the briefing and add it to your init.sqf. I assume it may cause problems where it is
  7. Try it this way SpawnNum = random 3; If (SpawnNum == 1) then { East = 1; West = 0; North = 0; }; If (SpawnNum == 2) then { East = 0; West = 1; North = 0; }; If (SpawnNum == 3) then { East = 1; West = 0; North = 0; }; globalVariable "SpawnNum"; globalVariable "East"; globalVariable "West"; globalVariable "North"; player sidechat "Check";
  8. Maybe try this switchmove ""; think that is how I have done that in the past, long time ago now but :)
  9. In the condition field put this this &&(player in thislist) That should work
  10. yep aggreed 100%, all my Knowledge of scripting has come from here, the Wiki and of course all the affiliated Community forums and sites. thank-you indeed
  11. Thanx Splicer. As far as I know the Gametype = blah; only affects MP games so no change will be needed for a single player mission. if you are still unsure visit this page, http://community.bistudio.com/wiki/Description.ext#Multiplayer
  12. crB Zone Alarm Demo - v0.1 This mission is to demonstrate the use of the Zone Alarm script, upon activation an alarm will sound with a hint message as well as a marker that will blink on and off. this script can be used by multiple triggers and markers, refer to the Parameter guide. Use the radio for teleport and camera functions. Usage; Description.ext is required for the crB_Zone_Alarm script! Create a trigger that encompasses the area you need for the Alarm to cover, the demo missions area is a 30x30 rectangle. AxisA ==> 30 (Change the size to the area you need for the Alarm to cover) AxisB ==> 30 (Change the side to the area you need for the Alarm to cover) Shape ==> Rectangle (Change the shape to suit your mission, I find Rectangle is the best for this set up) activation ==> Opfor-Repeatedly (Change the side to suit your mission but leave it set at Repeatedly) type ==> none name ==> Condition ==> this On Act. ==> Opfgo = true;call {["zone", 30, 30, "Rectangle", "ColorRed"] execVM "crB_scripts\crB_Zone_Alarm.sqf";}; <<REFER TO THE PARAMETER GUIDE IF YOU NEED TO CHANGE THE SIZE< SHAPE<OR COLOR OF THE ALARM MARKER>> On Dea ==> Opfgo = False; Parameter Guide: - the name of the marker that will act as the Flashing marker - eg a Marker called zone - the x axis size for the marker - eg 30 - the Y axis size for the marker - eg 30 - the shape of the marker - eg "Rectangle"- NOTE: "Rectangle" or "ellipse" are the only shapes you can use - the color of the marker - eg "ColorRed" - refer to http://community.bistudio.com/wiki/setMarkerColor for a compete list of colors You will also need to add an empty marker called zone and place it on top of the centre of the trigger COMPONENT CHECKLIST: One Trigger one marker called zone Initial release v0.1 Created by: (AEF)Odin [2CAV] Developer notes ==> Also included is one extra alarm sound in the sounds folder. If you add your own sound, try and make sure any custom sounds are of the same time length as the ones provided. DOWNLOAD HERE - http://creobellum.org/sites/creobellum.org/files/crB_Zone_Alarm.zip Visit us at http://creoBellum.org
  13. Well he could either just DeleteVehicle unitname; or unitname setPos (getPos SomeobjectFarAway); Both ways work in that fashion just deleteVehicle means he is gone forever Sorry just saw you don't want them teleported.
  14. What about just "move" him where you want? in conjunction with buildingPos this move (building buildingPos 1)
×