Jump to content

csk222

Member
  • Content Count

    149
  • Joined

  • Last visited

  • Medals

Everything posted by csk222

  1. I know I have to use name player, I just don't know how and where to put it in. I have a hint script that allows me to display the players name, but I want to add the name to the welcome message if possible. _num1 = 1; _num2 = 2; _num3 = 3; _Stxt = parseText format [" <t color='#00FFCC' size='1' align='center'>BOMSF THOR TASK MANAGEMENT SYSTEM</t><br/><br/> <t color='#FF00FF' size='1' align='left'>%4</t> <t size='1' align='left'> Please take some time to read these instructions.</t><br /><br /> <t size='1' align='left'>Tasks are dynamically created by a squad leader. The objective is to clear all Opfor at each location.</t><br/><br/> <t size='1' align='left'>Everything is done via the mouse Scroll Wheel Menu. Choose from the following options:</t><br/><br/> <t color='#FFFF00' size='1' align='left'>TELEPORT MENU:</t> <t size='1' align='left'> Teleport to Leaders or Insertion Points. Make selection > Click OK.</t><br/> <t size='1' align='left'>Note: When incapacitated, teleport to a Leader or Medic Station to be revived.</t><br/><br/> <t color='#FF9900' size='1' align='left'>LOADOUTS MENU:</t> <t size='1' align='left'> Select preset loadouts. Make selection > Close the pad with the Esc key.</t><br/> <t size='1' align='left'>Note: Multiple scopes equipped in vest inventory.</t><br/><br/> <t color='#A00000' size='1' align='left'>VIRTUAL ARSENAL</t> <t size='1' align='left'> and </t> <t color='#FF0000' size='1' align='left'>VIRTUAL AMMOBOX</t><t size='1' align='left'> also available.</t><br/><br/> <t color='#00FF00' size='1' align='left'>REAMMO:</t> <t size='1' align='left'> Restocks your primary weapon's magazines (+1).</t><br/><br/> <t color='#FF99FF' size='1' align='left'>View Distance Menu:</t> <t size='1' align='left'> Raise/Lower overall view distance and Remove Grass options.</t><br/><br/> <t size='1' align='left'>Ctrl + Spacebar = Weapons Resting</t><br/> <t size='1' align='left'>Shift + Page Up = BOMSF HUD</t><br/><br/> <t size='1' align='left'>Weapons safe at base.</t><br/> <t size='1' align='left'>No destruction of friendly equipment.</t><br/> <t size='1' align='left'>Cooperative play expected.</t><br/> <t size='1' align='left'>Stay with your squad.</t><br/><br/> <t size='1' align='left'>Everyone is welcome here.</t><br/> <t size='1' align='left'>Enjoy Your Stay and Good Hunting.</t><br/> ", _num1, _num2, _num3, name player]; hintSilent _Stxt;
  2. csk222

    Ghost Missions

    I have been able to achieve most of what I wanted. What I'm working on now: I still haven't been able to disable the "Side Objectives". How can I remove the side objectives from the random objective pool, but still be able to create a side objective from the "AdminMode" Menu whenever I choose. - (Don't know if that will make sense). If that is not possible in the way I explained it, how do I get rid of the side objectives altogether? What I want to look into next: Which are the files that control the amount of enemy that spawn when an objective is created? Which are the files that control the amount of enemy that spawn for reinforcements? Would it be possible to add a task marker (carrot that gets checked off when a task is complete) for each individual objective? for example individually for the suitcase/intel, the kill commander, rescue hostage, destroy device, etc. These are things I haven't gotten around to, but will appreciate anything you can explain to advance my understanding and exploration of the mission. Thanks.
  3. Hello. I am looking to update an init.sqf file. I want to split the relevant code into init, initServer, and initPlayerLocal. Within the init.sqf there is a code to run a file called "custom.sqf" I need some help sorting that out too. init.sqf /////////////////////////////////////////////////////////////////////////// // BOMSF THOR TASK MANAGEMENT SYSTEM // By - Cobra [BOMSF] 1949-2014 // cobra@bomsf.com // http://www.bomsf.com // You may re-use any of this work as long as you provide credit back to me. // Edit By - CSK222 // init.sqf /////////////////////////////////////////////////////////////////////////// // defines #define PP preprocessfilelinenumbers #define TEG_terrainGrid 12.5 #define TEG_viewDistance 2500 diag_log "===============BOMSF CLIENT INIT====================================="; // includes #include "teg\lib\common.h" #include "tegConfig.sqf" TEG_customScripts = true; TEG_nvglights = true; TEG_gameLength = 180; TEG_scoreLimit = 320; initFinished = false; gameStarted = false; gameOver = false; enableSaving [false, false]; setViewDistance TEG_viewDistance; setTerrainGrid TEG_terrainGrid; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // It seems that arma needs some time to issue variables to clients, even in editor mode // Therefore we allow init to complete before spawning off all the stuff we want to do ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Server Side Scripts ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (isServer or isDedicated) then { // Virtual Arsenal ["Preload"] call BIS_fnc_Arsenal; // Compile preset teg scripts and functions [] call compile PP "teg\game_timer.sqf"; [] call compile PP "teg\score\scoreunits_coop.sqf"; [] spawn compile PP "teg\clearBodies.sqf"; [] spawn compile PP "places_mil.sqf"; // BOMSF bPad Setup Vars tsklist = []; publicVariable "tsklist"; // [_tskname, _tskmrkr] server_1 setVariable ["tskadd","false",true]; // init.sqf trigger for adding Assault Tasks server_1 setVariable ["crtdtsk", [], true]; // created task array [tsktype,tskname,tskcnt,targetpos,tskobj] server_1 setVariable ["opforadd", "false", true]; // task created opfor AI array [opfortype,opforname,opforgrp,opformrkr,targetpos,dopformrkr] server_1 setVariable ["opfornew", [], true]; // task created opfor AI array [opfortype,opforname,opforgrp,opformrkr,targetpos,dopformrkr] server_1 setVariable ["regionadd", "false", true]; // regional created opfor AI array [opfortype,opforname,opforgrp,opformrkr,targetpos,dopformrkr] server_1 setVariable ["regionnew", [], true]; // regional created opfor AI array [opfortype,opforname,opforgrp,opformrkr,targetpos,dopformrkr] server_1 setVariable ["tskcnt",0,true]; // Numbering for naming tasks server_1 setVariable ["mrkrcnt",0,true]; // Numbering for naming bPad created vehicles, markers, triggers, and groups server_1 setVariable ["combatao",2000,true]; // radius for combat area - leaving cao after activating task will give win to Opfor server_1 setVariable ["nrstmrkr",nil,true]; // nearest task marker for adding opfor forces proMissileActive = false; publicVariable "proMissileActive"; // Proteus Submarine Missile Status server_1 setVariable ["useNVG",TEG_nvglights,true]; // bPad BOMSF LoadOuts include NVG server_1 setVariable ["miMissileActive",proMissileActive,true]; // Proteus Submarine Missile Status bfvehlist = []; publicVariable "bfvehlist"; // bPad created blufor vehicles array // Turn On-Off NVGs in bPad BOMSF LoadOuts and for AI in bpad\LV\militarize.sqf server_1 setVariable ["nvgs", "false", true]; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // bPad required setups ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // All Tasks [] spawn { while {TRUE} do { sleep 3; if ((server_1 getVariable "tskadd") == "true") then { server_1 setVariable ["tskadd","false",true]; crtdtsk = server_1 getVariable "crtdtsk"; // array from task_create.sqf [tsktype,tskname,tskcnt,targetpos,tskobj] tsktype = crtdtsk select 0; // from tsd main dialog (Assault,Defend,SideTask) tskname = crtdtsk select 1; // tsktype + tskcnt from task_create.sqf tskcnt = crtdtsk select 2; // incremental from task_create.sqf targetpos = crtdtsk select 3; // mapclick from task_create.sqf tskobj = crtdtsk select 4; // SideTask Objective from tsd main dialog (ST1-9) or NONE nultskadd = [] spawn {nulct = [tsktype,tskname,tskcnt,targetpos,tskobj] execVM "bPad\tasks\task_add.sqf";}; }; }; }; // Check for bPad Task AI Opfor Patrol Spawns [] spawn { while {TRUE} do { sleep 3; if ((server_1 getVariable "opforadd") == "true") then { server_1 setVariable ["opforadd","false",true]; opforarray = server_1 getVariable "opfornew"; opfortype = opforarray select 0; opforname = opforarray select 1; opforgrp = opforarray select 2; opformrkr = opforarray select 3; targetpos = opforarray select 4; dopformrkr = opforarray select 5; nulofadd = [] spawn {nuloa = [opfortype,opforname,opforgrp,opformrkr,targetpos,dopformrkr] execVM "bPad\tasks\opfor_add.sqf";}; }; }; }; // Check for bPad Regional Opfor Patrol Spawns [] spawn { while {TRUE} do { sleep 3; if ((server_1 getVariable "regionadd") == "true") then { server_1 setVariable ["regionadd","false",true]; opforarray = server_1 getVariable "regionnew"; opfortype = opforarray select 0; opforname = opforarray select 1; opforgrp = opforarray select 2; opformrkr = opforarray select 3; targetpos = opforarray select 4; dopformrkr = opforarray select 5; nulregadd = [] spawn {nulregoa = [opfortype,opforname,opforgrp,opformrkr,targetpos,dopformrkr] execVM "bPad\ofr\regional\opfor_region_add.sqf";}; }; }; }; // Set up Markers On Leaders and Vehicles [] spawn { while {TRUE} do { sleep 5; // 10 original setting if (alive blufor1_1) then { "ofrsp" setMarkerPos position blufor1_1; }; if (alive blufor1_2) then { "tlrsp" setMarkerPos position blufor1_2; }; if (alive blufor1_3) then { "slrsp" setMarkerPos position blufor1_3; }; if ((not isNil "sub3") || (not isNull sub3)) then { "proteusrsp" setMarkerPos [((position sub3) select 0) + 10,((position sub3) select 1) +10,(position sub3) select 2]; }; if (alive uh80_alpha) then { "alpha_chopper" setMarkerPos position uh80_alpha; }; if (alive ch67_bravo) then { "bravo_chopper" setMarkerPos position ch67_bravo; }; }; }; // Check bPad Alpha-Bravo UH80 Move Requests [] spawn { // Set Airborne Server-side default variables { server_1 setVariable [_x,"false",true]; } forEach ["abo_ains","abo_a600","abo_aseal","abo_arope","abo_brope","abo_artb","abo_bins","abo_b600","abo_bseal","abo_brtb"]; private ["_airborne","_str"]; _airborne = ["abo_ains","abo_a600","abo_aseal","abo_arope","abo_brope","abo_artb","abo_bins","abo_b600","abo_bseal","abo_brtb"]; while {true} do { sleep 3; for "_i" from 0 to (count _airborne)-1 do { _str = _airborne select _i; if ((server_1 getVariable _str) == "true") then { server_1 setVariable [_str,"false",true]; [] spawn compile PP format ["bPad\abo\airborne\%1.sqf",_str]; }; }; }; }; // Check bPad SealTeam Platform Requests [] spawn { while {TRUE} do { sleep 3; if ((server_1 getVariable "stoadd") == "true") then { server_1 setVariable ["stoadd","false",true]; targetpos = server_1 getVariable "stopos"; anchor3 = "Sign_Pointer_F" createVehicle targetpos; publicVariable "anchor3"; anchor3 setPosASL [targetpos select 0, targetpos select 1, targetpos select 2]; nulstoadd = [] spawn {nulsp = [targetpos] execVM "bPad\abo\sealteam\sealteam_platform.sqf";}; }; if ((server_1 getVariable "stomov") == "true") then { server_1 setVariable ["stomov","false",true]; targetpos = server_1 getVariable "stopos"; anchor3 setPosASL [targetpos select 0, targetpos select 1, targetpos select 2]; nulstomov = [] spawn {nulspmv = [targetpos] execVM "bPad\abo\sealteam\platform_mobile.sqf";}; }; }; }; // Periodically MOVE bPad placed Vehicle Markers [] spawn { while {TRUE} do { sleep 10; if (count bfvehlist > 0) then { { bfveh = (_x select 0); bfmrkr = (_x select 1); if (alive bfveh) then { bfmrkr setMarkerPos position bfveh; } else { bfvehlist = bfvehlist - [_x]; publicVariable "bfvehlist"; deleteMarker bfmrkr; }; } forEach bfvehlist; publicVariable "bfvehlist"; }; }; }; // Periodically REMOVE bPad placed Blufor Vehicles [] spawn { while {TRUE} do { sleep 20; if (count bfvehlist > 0) then { { bfveh = (_x select 0); bfmrkr = (_x select 1); bfArrayInVehicle =[]; bfArrayInVehicle = crew bfveh; if (count bfArrayInVehicle > 0) then { bfvehlist = bfvehlist; publicVariable "bfvehlist"; // keep vehicle and or marker } else { bfvehactive = []; bfvehactive = (position bfveh) nearEntities ["Man", 1400]; // check for veh in active area if (count bfvehactive < 1) then { deleteVehicle bfveh; deleteMarker bfmrkr; bfvehlist = bfvehlist - [_x]; }; }; } forEach bfvehlist; publicVariable "bfvehlist"; }; }; }; }; ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //Ensure we wait for JIP to complete then Save loadout ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// waitUntil {!isNull player && isPlayer player}; [] spawn { // Run a few miscellaneous client-side scripts [] spawn compile PP "scripts\zlb_target.sqf"; // laser Target //[] spawn compile PP "scripts\zlb_ctarget.sqf"; // cursor Target [] spawn compile PP "scripts\tegsf_radio.sqf"; [] spawn compile PP "bPad\mop\mission_time.sqf"; [] spawn compile PP "bPad\mop\mission_weather.sqf"; // Weather Work In Progress // Compile LoadOut scripts getLoadout = compile PP "fnc_get_loadout.sqf"; setLoadout = compile PP "fnc_set_loadout.sqf"; // Save default loadout [] spawn { while{true} do { sleep 10; if(alive player) then { loadout = [player,["ammo"]] call getLoadout; }; }; }; // BOMSF Customized Revive Medic Markers TEG_Revive=true; TEG_MedicMarkers=true; if (TEG_Revive) then { [] spawn compile PP "BSF_revive\BSF_revive_init.sqf"; if (TEG_MedicMarkers) then { nullmm = [] execVM "BSF_revive\medicMarkers.sqf"; }; }; // CfgUnitInsignia [player,"BOMSF"] call bis_fnc_setUnitInsignia; //Allow custom scripts to run [] spawn compile PP "custom.sqf"; //Mission Briefing and Diary Records Setup [] spawn { if (!isNull player) then { TEG_Notes=[ [ "Mission Designers", "BOMSF THOR scripts by Cobra [BOMSF] <br />Edited by CSK222" ], [ "Objectives", "Tasks can be dynamically created by any player, but should be left up to the Group Leaders. Your objective is to clear all enemy forces at each Assault or Defend AO tasks." ], [ "Server Info", "TeamSpeak Server: ts44.gameservers.com:9230 <br />IP Address: 108.61.121.75 Port: 2302 <br/>Website: www.bomsf.enjin.com <br/>Youtube: www.youtube.com/csk222videos <br/><br/>We encourage the use of mods on our server. For a list of allowed mods please visit our website or join our BOMSF Steam Group for easy access to the BOMSF Mod Collection in the Steam Workshop." ], [ "BOMSF THOR SYSTEM", "T.HO.R. (Task Host Opposition Requisition) is a map task management system designed to assist in the conception, design and implementation of task parameters enabling the player or players to execute a variety of tasks. <br/><br/>Developed by BOMSF, THOR controls various modules with multiple functions designed to facilitate control of all the mission, asset and opposition parameters. <br/><br/>THOR is a creative tool that empowers the player’s imagination. THOR allows a player or player’s to create tasks, load-outs, transportation, blue force and opposition force squad and technical assets. THOR also allows for the expansion of the task and various assets in real time. Additionally time settings may be altered and support units may be utilized using the THOR systems via an on screen controlled BOMSF Tablet. <br/><br/>Features: <br/><br/>Everything is done via the tablet. <br/><br/>Q. How do you access the tablet? <br/>Use the Scroll Wheel (Action Menu) select Operations Tablet or press the Insert (Ins) key. <br/><br/>Q. How to set the time of day? <br/>Parameters > Choose Time. <br/><br/>Q. How to call for transport? <br/>Specops > LZ > Click map location for Insertion/Extraction. <br/>Specops > RTB > Sends the helicopter back to base. <br/><br/>For Insertion there are other choices. <br/><br/>Specops > Parajump > Click map location for Insertion via parachute. The helicopter will hover at 600 Meters (Altitude). Wait for it to come to a complete stop and eject. <br/><br/>Specops > Helicast > Click map location for SEAL Team Insertion. The helicopter will hover at 5 Meters (Altitude) over water. Wait for it to come to a complete stop and eject. <br/><br/>Specops > Fastrope > Click map location for Insertion via fast-rope. The helicopter will hover at 20 Meters (Altitude). Wait for it to come to a complete stop > Use the Action Menu, scroll all the way down and select Toss Ropes > Use the Action Menu, select Fastrope. Note: Only 1 person should be in charge of the rope (Usually Group Leader). If the rope is tossed while the helicopter is moving, it can cause a crash. 30 Second timer. <br/>Group Leaders also have access to vanilla transport via the supports menu. <br/><br/>Q. How to create a blue force vehicle? <br/>Vehicles > Choose vehicle > Click map location to spawn your selection. <br/><br/>Q. How to recruit blue force squad? <br/>Recruits > Choose Unit. The max number of units is 10. <br/><br/>Q. How to move the various insertion points? <br/>Set Markers Section on the Main page. <br/>Medic Station > Click map location. The medic station is where you respawn if you die (Respawn_West). <br/>Alpha, Bravo, Charlie > Click map location. Alpha and Bravo are the helicopter insertion markers but can be used independently. Charlie is just an extra insertion point. <br/><br/>Q. How to teleport to the various insertion points? <br/>Use the Scroll Wheel (Action Menu) select Teleport Menu. Select teleport location from the list or click on the map to snap to nearest available location (Map is Interactive). <br/><br/>Q. How to select loadouts? <br/>Loadouts > Choose Loadout. <br/>Use the Scroll Wheel (Action Menu) select Loadouts Menu. 4 Available choices BOMSF Loadouts will take you to the tablet for preset loadouts or Virtual Arsenal and Virtual Ammobox to create custom loadouts that can be saved and loaded at a later time. You will also have the option to Reammo. Reammo adds one magazine to your inventory. <br/><br/>Q. How to pop smoke? <br/>Use the Scroll Wheel (Action Menu) select Pop Smoke. Used sparingly in emergencies, 4-5 smoke grenades provide cover. Note: Can cause major lag. <br/><br/>Q. How to call for artillery and air interdiction support? <br/>Supports Section on the Main Page. <br/><br/>Bolt > Click map location. Zeus Lightning Bolt used for killing OPFOR that gets stuck in rocks or any situation like that. Can be fun to zap a friend too... DON'T DO IT! <br/><br/>CAS > Click map location. A164 Wipeout provides Close Air Support. <br/><br/>Artillery > Click map location. Drop artillery. <br/><br/>Missile > Click map location. Call in a missile strike from the Proteus Submarine." ] ]; for "_i" from 1 to (count TEG_Notes) do { private ["_x"]; _x = EL(TEG_Notes,count TEG_notes - _i); nulnotes = player createDiaryRecord ["Diary",_x]; }; nulsub = player createDiarySubject ["HotKeys","Hot Keys"]; nullkys = player createDiaryRecord ["HotKeys", ["BOMSF Operations Tablet", "On screen Controllable Tablet that allows Multiple Functions in game. <br/>INSERT key (INS) to toggle on-off or while open click the Power button."]]; nullkys = player createDiaryRecord ["HotKeys", ["BOMSF Squad Situational Hud", "Mini Map Heads Up Display on the lower right side of screen. <br/>SHIFT + PAGEUP keys to toggle on-off."]]; nullkys = player createDiaryRecord ["HotKeys", ["BOMSF Weapon Resting", "Virtual Bipod that allows you to steady your aim when prone or when near and object. <br/>LEFTCTRL + SPACE keys to toggle on-off or move away from rest position."]]; nullkys = player createDiaryRecord ["HotKeys", ["BOMSF FlightPlan Indicator", "An in game 3D line is drawn on map click location. You must be in 3rd Person to use it. <br/>SHIFT + PAGEDOWN keys to toggle on-off."]]; }; }; // Welcome message [] spawn compile PP "welcome.sqf"; }; custom.sqf /////////////////////////////////////////////////////////////////////////// // BOMSF THOR TASK MANAGEMENT SYSTEM // By - Cobra [BOMSF] 1949-2014 // cobra@bomsf.com // http://www.bomsf.com // You may re-use any of this work as long as you provide credit back to me. // Edit By - CSK222 // custom.sqf /////////////////////////////////////////////////////////////////////////// /////////////////////////////// // Setup at Game Start ////////////////////////////// // Player Action Menus nulactmenu = [] execVM "scripts\action_menu.sqf"; // Disable Fatigue player enableFatigue false; // Status Hud call compile preprocessFile "status_hud\HUD.sqf"; [] spawn ICE_HUD; //In Game User Placed 3D Markers nul3DMarks = [] execVM "scripts\3Dmarkers.sqf"; // IR Strobe nulStrobe = [] execVM "scripts\irstrobe.sqf"; // Fast Rope nulFastRope = [] execVM "scripts\zlt_fastrope.sqf"; // Group Manager nulGrpMngr=[] execVM "scripts\group_manager.sqf"; /////////////////////////////////////////////////////////////////////////////////////////////// // The following code is join in progress compatible init.sqf scripting. // Client side scripts should be run in the first two sections // The first two sections are identical and may appear redundant, but are required for Join in progress compatibility in multiplayer. // The final section is for server side scripts. /////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////// //non-JIP player, someone who's went through role selection and briefing //////////////////////////////////////////////////////////////////////////////////////////////////// if (!(isNull player)) then { player addEventHandler ["Respawn", {[player,loadout] call setLoadout;}]; player addEventHandler ["Respawn", {[player] execVM "scripts\action_menu.sqf";}]; player addEventhandler ["Respawn", {player enableFatigue false}]; // Player Icons (In Game Map Player Markers) // nulpi = [] execVM "scripts\icons.sqf"; // Player Markers (In Game Map Player Markers) nulpm = ["players"] execVM "teg\player_markers.sqf"; // Scorecard Display nulscard = [player] execVM "teg\score\scorecard.sqf"; // Vehicle Crew Display nulcrw = [player] execVM "BSF_crw\bsf_crew.sqf"; // Squad Hud Display nulsqh = [player] execVM "BSF_sqh\sqh_init.sqf"; // Chopper Map Hud Display nulchud = [player] execVM "BSF_chud\chud_init.sqf"; // BOMSF THOR KEY BIND nulthorkey = [player] execVM "bPad\thor_init.sqf"; // BOMSF Unit Insignia [player,"BOMSF"] call BIS_fnc_setUnitInsignia; }; /////////////////////////////////////////////////////////////////// //JIP player, role selection then right into mission. /////////////////////////////////////////////////////////////////// if (!isServer && isNull player) then {waitUntil {!isNull player}; player addEventHandler ["Respawn", {[player,loadout] call setLoadout;}]; player addEventHandler ["Respawn", {[player] execVM "scripts\action_menu.sqf";}]; player addEventhandler ["Respawn", {player enableFatigue false}]; // Player Icons (In Game Map Player Markers) //nulpi = [] execVM "scripts\icons.sqf"; // Player Markers (In Game Map Player Markers) nulpm = ["players"] execVM "teg\player_markers.sqf"; // Scorecard Display nulscard = [player] execVM "teg\score\scorecard.sqf"; // Vehicle Crew Display nulcrw = [player] execVM "BSF_crw\bsf_crew.sqf"; // Squad Hud Display nulsqh = [player] execVM "BSF_sqh\sqh_init.sqf"; // Chopper Map Hud Display nulchud = [player] execVM "BSF_chud\chud_init.sqf"; // BOMSF THOR KEY BIND nulthorkey = [player] execVM "bPad\thor_init.sqf"; // BOMSF Unit Insignia [player,"BOMSF"] call BIS_fnc_setUnitInsignia; }; // remove NVG and add Flashlights for enemy AI if (isServer or isDedicated) then { { if (side _x == east) then { _x unassignItem "NVGoggles_OPFOR"; _x removeItem "NVGoggles_OPFOR"; _x RemovePrimaryWeaponItem "acc_pointer_IR"; _x addPrimaryWeaponItem "acc_flashlight"; _x enableGunLights "forceon"; }; } foreach allunits; }; Thank you in advance for any help/information you may provide.
  4. Everything works properly as it is. It seems initServer.sqf will be the new init.sqf with the bulk of the code. I just thought some of the code could be spread out across the different init files. I didn't want to move anything around. I don't really understand the following. if (isServer or isDedicated) then <<< Does that mean everything under that goes in initServer.sqf? and if so, do I have to add if (isServer or isDedicated) then at the top of the initServer.sqf? waitUntil {!isNull player && isPlayer player}; <<< Don't know if (!(isNull player)) then <<< Don't know if (!isServer && isNull player) then <<< Don't know {waitUntil {!isNull player};
  5. csk222

    initSever or init?

    Somewhat related question: I inherited a mission over a year ago where it only contains an init.sqf file with a customscript.sqf to run other scripts. I would like to update that to the new standard of init.sqf - initserver.sqf - initplayerlocal.sqf. Is there a place/section on the forums or a site to post code where other users can check/review it?
  6. This is the script you need to add: http://www.armaholic.com/page.php?id=18967 https://forums.bistudio.com/topic/139848-getset-loadout-saves-and-loads-pretty-much-everything/
  7. csk222

    Ghost Missions

    Hello. I have enjoyed your Enemy Assault mission for a very long time - Thank You! I want to make a "Lite" version of this. I want to remove extra features such as any mod options, weather options, vehicles, respawn, etc. - anything that doesn't have to do with enemy units and task creation. I want to add to my personal missions mainly the created tasks/units (No Side Missions) at the randomly generated AOs. What are the files/scripts associated with that part of the mission and what markers/game logics etc. need to be present in the editor? Thank you for any information you may provide.
  8. vehname addeventhandler ["fired", {(_this select 0) setvehicleammo 1}];
  9. /* Step 1 - Place the following in your init.sqf //defines #define PP preprocessfilelinenumbers // Server Side Scripts if (isServer or isDedicated) then { [] spawn compile PP "places_locations.sqf"; }; Step 2 - Create places_locations.sqf and copy & paste everything */ //Place a Game Logic called "center" in the middle of the map (Step 3) _gamelogic = CENTER; //Garages _garage_all = nearestObjects [getPosATL _gamelogic, ["Land_i_Garage_V1_F","Land_i_Garage_V2_F","Land_i_Garage_V1_dam_F ","Land_i_Garage_V2_dam_F "], 32000]; //Military Cargo Houses _cargo = nearestObjects [getPosATL _gamelogic, ["Land_Cargo_House_V1_F","Land_Cargo_House_V2_F","Land_Cargo_House_V3_F"], 32000]; //Military Towers _tower = nearestObjects [getPosATL _gamelogic, ["Land_Cargo_Tower_V1_F"], 32000]; //Military HQs _hq = nearestObjects [getPosATL _gamelogic, ["Land_Cargo_HQ_V1_F","Land_Cargo_HQ_V2_F","Land_Cargo_HQ_V3_F"], 32000]; //Military Posts _post = nearestObjects [getPosATL _gamelogic, ["Land_Cargo_Patrol_V1_F","Land_Cargo_Patrol_V2_F","Land_Cargo_Patrol_V3_F"], 32000]; // Garages & Military Locations { _pos = position _x; _m = createMarker [format ["mrk%1",random 100000],_pos]; _m setMarkerShape "ICON"; _m setMarkerColor "ColorBlue"; _m setMarkerSize [1, 1]; _m setMarkerType "mil_dot"; } forEach _garage_all; { _pos = position _x; _m = createMarker [format ["mrk%1",random 100000],_pos]; _m setMarkerShape "ICON"; _m setMarkerColor "ColorRed"; _m setMarkerSize [1, 1]; _m setMarkerType "mil_dot"; } forEach _cargo; { _pos = position _x; _m = createMarker [format ["mrk%1",random 100000],_pos]; _m setMarkerShape "ICON"; _m setMarkerColor "ColorRed"; _m setMarkerSize [1, 1]; _m setMarkerType "mil_triangle"; } forEach _tower; { _pos = position _x; _m = createMarker [format ["mrk%1",random 100000],_pos]; _m setMarkerShape "ICON"; _m setMarkerColor "ColorOrange"; _m setMarkerSize [1, 1]; _m setMarkerType "mil_dot"; } forEach _hq; { _pos = position _x; _m = createMarker [format ["mrk%1",random 100000],_pos]; _m setMarkerShape "ICON"; _m setMarkerColor "ColorOrange"; _m setMarkerSize [1, 1]; _m setMarkerType "mil_triangle"; } forEach _post; Resources: https://community.bistudio.com/wiki/Arma_3_CfgVehicles_EMPTY https://community.bistudio.com/wiki/setMarkerColor https://community.bistudio.com/wiki/cfgMarkers https://community.bistudio.com/wiki/File:Arma2_markers1.jpg
  10. Thank you very much. That did the trick but now I'm getting an error message about "this" in BIS_grpAlphaUH80 = group this; when I place the following code in the expression field. It works fine when I remove it. createVehicleCrew uh80_alpha BIS_grpAlphaUH80 = group this uh80_alpha animateDoor ["door_L",1]; uh80_alpha animateDoor ["door_R",1]; uh80_alpha setObjectTexture [0,'images\bomsf_woodland.paa']; uh80_alpha setObjectTexture [1,'images\bomsf_woodland.paa']; clearItemCargoGlobal uh80_alpha; clearWeaponCargoGlobal uh80_alpha; clearMagazineCargoGlobal uh80_alpha; clearBackpackCargoGlobal uh80_alpha;
  11. I've been messing around with the vanilla vehicle respawn module but I just get an empty chopper to spawn. I'm still very uncertain of how to achieve this. Any help from anyone will be greatly appreciated.
  12. It has been a while since I last tried to make this work; Are there any new solutions or ways to make this happen? Here's a Recap: "I am hoping someone can help me or guide me in the right direction with changing the weather on a dedicated server. I get the following to work in the editor and when I host on my PC, but not on the dedicated server." "I get this to work on NON DEDICATED SERVERS. I'm basically looking for a function that will allow instant weather change; Or any weather change for that matter.." "Plain and simple, I don't know how to script the weather changes. I am open to any alternatives. What I attempted to do was to modify what worked for TIME CHANGE to suit WEATHER CHANGE. It worked out great, but not on the dedicated server." --- This is what calls the TIME CHANGE function (Button Press). class btnD1: mop_RscButton { idc = 1671; action = "closeDialog 0;[[],'teg_fnc_morningMsg',true,true] call BIS_fnc_MP;"; text = "Dawn (5AM)"; //--- ToDo: Localize; x = 0.1945; y = 0.0900; w = 0.190; h = 0.045; tooltip = "Change to Morning"; //--- ToDo: Localize; }; --- This is the TIME CHANGE function. teg_fnc_morningMsg = { private ["_text","_1","_msg"]; _text = "<t size='1'>" + "Morning" + "<br />" + "<t size='1.5'>" + "Mission Time Change" + "</t>" + "<br />" + "<img size='4' image='images\a3_bombadge2.paa'/>" + "</t>"; _1 =[_text,0.01,0.01,10,-1,0,90]spawn bis_fnc_dynamicText; _date = date; _date set [3,05]; //--- new hour (18) _date set [4,05]; //--- new minute (35) cuttext ["","black out"]; 1 fadesound 0; sleep 1; [[[_date], { setDate (_this select 0) }], "BIS_fnc_spawn"] call BIS_fnc_MP;; 2 fadesound 1; sleep 2; cuttext ["","black in"]; }; --- This is what calls the WEATHER CHANGE function (Button Press). class btnD10: mop_RscButton { idc = 1680; action = "closeDialog 0;[[],'teg_fnc_rain',true,true] call BIS_fnc_MP;"; text = "Rain"; //--- ToDo: Localize; x = 0.1945; y = 0.2700; w = 0.190; h = 0.045; tooltip = "Change Weather to Rain"; //--- ToDo: Localize; }; --- This is the WEATHER CHANGE function. teg_fnc_rain = { private ["_text","_1","_msg"]; _text = "<t size='1'>" + "Rain" + "<br />" + "<t size='1.5'>" + "Mission Weather Change" + "</t>" + "<br />" + "<img size='4' image='images\a3_bombadge2.paa'/>" + "</t>"; _1 =[_text,0.01,0.01,10,-1,0,90]spawn bis_fnc_dynamicText; cuttext ["","black out"]; 1 fadesound 0; sleep 1; skipTime -24; 0 setOvercast 1; 0 setRain 1; 0 setFog 1; skipTime 24; sleep 1; simulWeatherSync; 2 fadesound 1; sleep 2; cuttext ["","black in"]; }; --- Resources/Links: https://community.bistudio.com/wiki/setOvercast https://community.bistudio.com/wiki/overcast https://community.bistudio.com/wiki/setRain https://community.bistudio.com/wiki/rain https://community.bistudio.com/wiki/setFog https://community.bistudio.com/wiki/fog https://community.bistudio.com/wiki/simulWeatherSync https://community.bistudio.com/wiki/BIS_fnc_spawn https://community.bistudio.com/wiki/BIS_fnc_MP --- Please excuse the length of the post. Thank you in advance for any help, answers, or guidance you may provide.
  13. Hello. How can I turn all of the following information from buttons to a list box or drop list? Here's an example of how it is currently set up: --- bfv_gui_main.hpp
  14. Can you explain a bit further with an example of how to implement that or point me in the direction of where I can get a better understanding?
  15. _wscore = server_1 getVariable ["westscore","westscore not ready"]; Seemed to work (Got rid of the message), but then on the next load up the _escore variable got the same error. So I repeated the "fix". _escore = server_1 getVariable ["eastscore","eastscore not ready"]; On the the next load up _talive got the error, so it seems like it is just moving down the list. What can I add to the _talive line and what does "eastscore not ready" do?
  16. Might be useful: http://forums.bistudio.com/showthread.php?183897-How-to-set-Armor-Vehicle-skill Good luck.
  17. csk222

    [Guide] Your Guide to Dialogs

    I couldn't get this to work at all for me. I did notice a few errors i.e. it says to press Alt when it should be Ctrl. The information doesn't seem consistent. Its probably me. Are there any other documentation/tutorials on how to make listboxes?
  18. How can I make the AI toss the rope when I get to my destination? Is there a command or action I can script? This is a piece of our LZ/Insertion script. is there something like uh80_alpha action ['autoHover', uh80_alpha]; Example: uh80_alpha land "GET OUT"; uh80_alpha action ['autoHover', uh80_alpha]; uh80_alpha animateDoor ["door_L",1]; uh80_alpha animateDoor ["door_R",1]; sleep 20; uh80_alpha action ['Toss Rope', uh80_alpha]; // <<< Is something like this possible? [["AirborneCommand",["Airborne Command", "Alpha - Greenlight - Good To Go"]], "BIS_fnc_showNotification", true, false] spawn BIS_fnc_MP; sleep 1; };
  19. csk222

    AI Spawn Script Pack

    How can I make the garrison bots stay inside the buildings even when Blufor is detected? I want to HAVE TO search house to house to clear an area. fillHouse.sqf nulfh1 = [curmrkr,2,false,2,[5,0],100,[0.3,0.5,0.3,0.4,0.3,0.9,0.9,0.6,1,0.3],opforgrp,"opforgrp = group this;",nil,opformrkr] execVM "bpad\LV\fillHouse.sqf"; What is the proper "target" set up for the following on a dedicated server? I want them to seek and destroy the human players. heliParadrop.sqf nulhp1 = [opformrkr,2,true,false,1500,"random",true,100,150,8,0.5,50,false,false,false,true,player,true,0.8,opforgrp,"opforgrp = group this;",nil,false] execVM "bPad\LV\heliParadrop.sqf"; reinforcementChopper.sqf nulre1 = [opformrkr,true,2,4,false,true,player,"random",1500,true,true,8,0.8,[false,false,false,false],opforgrp,"opforgrp = group this;",nil,false] execVM "bPad\LV\reinforcementChopper.sqf";
  20. I see what you've done with the "Find Garage", could this be turned into something involving IEDs and the road? Just an idea.
  21. How come setMarkerBrush "Border" is not allowed in ARMA3? Or is there an alternative way of setting that up? I'd like to use it for this. _mrkrcao = createMarker [caomrkr, targetpos]; caomrkr setMarkerShape "ELLIPSE"; caomrkr setMarkerColor "ColorGrey"; caomrkr setMarkerSize [trigao,trigao]; caomrkr setMarkerType "Empty"; caomrkr setMarkerText "Combat Area"; Resources/Links: https://community.bistudio.com/wiki/setMarkerBrush
  22. Confirmed it does work. I was basically looking for the info on what the name for the border marker was, I saw it said only for ARMA2. I should've just tried it. Thanks.
  23. We have an in game tablet that allows us to click buttons to spawn vehicles. The following works properly as far as spawning the vehicle for everyone but the addactions (Get On Skid) only appear to the person that spawned the vehicle. What do I have to do? private ["_caller"]; _caller = _this select 0; titleText ["Open Map and Click on MH9 Vehicle Spawn location.", "PLAIN"]; ["mk_wst_mh9", "onMapSingleClick", { titleText ["", "PLAIN"]; _tpos = _pos; mrkrnum = server_1 getVariable "mrkrcnt"; mrkrnum = mrkrnum + 1; mrkrname = format["MH9_%1", mrkrnum]; vehname = format["BFMH9_%1", mrkrnum]; _mrkr = createMarker [mrkrname, _tpos]; mrkrname setMarkerShape "ICON"; mrkrname setMarkerColor "Color4_FD_F"; mrkrname setMarkerSize [1, 1]; mrkrname setMarkerType "mil_dot"; mrkrname setMarkerText mrkrname; server_1 setVariable ["mrkrcnt",mrkrnum,true]; vehname = "B_Heli_Light_01_F" createVehicle getMarkerPos mrkrname; vehname addAction["Get on Skid Left Front", "player moveInCargo [vehname, 4]"]; vehname addAction["Get on Skid Left Back", "player moveInCargo [vehname, 3]"]; vehname addAction["Get on Skid Right Front", "player moveInCargo [vehname, 2]"]; vehname addAction["Get on Skid Right Back", "player moveInCargo [vehname, 5]"]; ["mk_wst_mh9", "onMapSingleClick"] call BIS_fnc_removeStackedEventHandler; bfvehlist = bfvehlist + [[vehname, mrkrname]]; publicVariable "bfvehlist"; true; }] call BIS_fnc_addStackedEventHandler;
  24. @DreadedEntity - Thanks it worked, but I guess the way we are spawning the vehicles is causing other issues. @JShock - The scripter of our mission was a very methodical individual, that's just how he did things.
  25. Thanks for the replies in the "Random Weather Script" thread. I tried the following: action = "closeDialog 0;[] spawn teg_fnc_rain;"; Instead of: action = "closeDialog 0;[[],'teg_fnc_rain',true,true] call BIS_fnc_MP;"; And it made a little bit of progress; The weather did change while playing on the dedicated server but only for the person who is pressing the button (calling the function). Each player did successfully change the weather on THEIR machine while playing on the dedicated server. --- The next question is: In the random weather script this is how it is set up. execVM "randomWeather2.sqf"; in our init.sqf it looks like this: [] spawn compile PP "bPad\mop\mission_time.sqf"; Note: The weather change functions are in the same .sqf as the time change functions. Should I make the weather change functions in their own .sqf file? So it looks something like this - "execVM "mission_weather.sqf"; Will that do anything?
×