ARMA 3 Setup Guide

From Alliance Navy Wiki
Jump to: navigation, search

Overview

This checklist will assist ArmA mission makers in setting up an Op Night Scenario

Checklist

  • Before Opening Editor
    • Check Mods

  • Infantry Slots
    • Place individual soldiers
    • Check as Playable
    • Give Role Description
    • Check appropriate Ace Options
    • Group soldiers into units
    • Set unit callsigns

  • Zeus Slots
    • Place 2x Zeus virtual entities
    • Set virtual entities as playable (one as player)
    • Title Virtual entities (Variable name)
    • Place 2x Game master modules (not gameplay mode!)
    • Synch Game master modules
    • Set owner name to match virtual entity variable name
    • Title slot (e.g Zeus-1, Zeus-2)
    • Set default addons to "All addons (including unofficial ones)
    • Check Forced Interface

  • Other Slots
    • Place 2x headless client slots
    • Set Ace Spectator slot

  • Attributes>General
    • Set Scenario Title
    • Set DLC to "None"
    • Check Editable Objects (Zeus)

  • Attributes>Multiplayer
    • Game Type "Undefined Game Mode"
    • Set Respawn settings
    • Respawn "Respawn on Custom Position
    • Check Select Respawn Position
    • Check Show respawn counter
    • Check Subtract respawn tickets
    • Check Allow Manual Respawn
    • Revive Mode Disabled
    • Incapacitation Mode Basic
    • Bleed out Duration (recommend 2 minutes)

  • Settings>Game Options
    • Difficulty
      • Group Indicators "Limited Distance"
      • Friendly Name Tags "Hide"
      • Enemy Name Tags "Hide"
      • Detected Mines "limited distance"
      • Commands "Show"
      • Waypoints "Show"
      • Check Tactical Ping
      • Uncheck Killed By
      • Extended Map Content, check only mines and ping
      • Uncheck automatic reporting/multiple saves
    • Addon settings


Scripts

Find mission file in documents > arma3-Other profiles > NAME > mpmissions

Insert OnPlayerKilled.sqf:

player setVariable["Saved_Loadout",getUnitLoadout player]; 


Insert OnPlayerRespawn.sqf:

removeAllWeapons player;
removeGoggles player;
removeHeadgear player;
removeVest player;
removeUniform player;
removeAllAssignedItems player;
clearAllItemsFromBackpack player;
removeBackpack player;
player setUnitLoadout(player getVariable["Saved_Loadout",[]]);

Insert InitPlayerServer.sqf:

diag_log format [ "initPlayerServer called : %1", diag_tickTime];
{
	diag_log format [ "initPlayerServer checking curator _x", diag_tickTime];
	if (!isnull (getassignedcuratorunit _x)) then {
		_unit = getassignedcuratorunit _x;
		if (isnull (getassignedcuratorlogic _unit)) then {
			diag_log format [ "initPlayerServer FIXING curator _x", diag_tickTime];
			unassignCurator _x;
			sleep 1;
			_unit assignCurator _x;
			if (isClass (configFile >> "CfgPatches" >> "task_force_radio")) then {
				_unit call TFAR_fnc_isForcedCurator;
			};
		};
	};
} foreach allcurators;