-
Notifications
You must be signed in to change notification settings - Fork 26
Making your first mission
BlackHawkPL edited this page Sep 22, 2016
·
26 revisions
Did you read the introduction?
Open 3D editor, choose a map you want your mission to take place on and save it under temporary name.
Find the mission in %UserProfile%\Documents\Arma 3 - Other Profiles\ -Profile name-\missions. Download the framework and add it to the mission folder.
Now that the framework is installed you need to add playable characters. For that you can either use Compositions made by other users or make one yourself.
Write the description and setup the gear script and group name and set the rank for each unit. Make sure all units are set as playable and their init fields match with example below.
Now we will set up gear script. First, navigate to customization\loadouts folder, create new file and name it with your faction name.
Now we must add #define package "NATO_"
to the top of your loadout file (in this case NATO.sqf), it will be the name prefix, as seen in Part 2 unit edit field ("NATO_CO"). Next, we define item groups that will be used often, for example uniforms, IFAKs, items. Later it will save a lot of space and make file smaller and easier to read. (see one of default loadout files on how to do it)
Write gear cases for every unit type, again look into one of example files to see how it's done
Put down the AI units. If you want to place units inside buildings, it's important you put this disableAI "PATH"; this setUnitPos "UP"
in their init fields, to make them behave in more realistic manner when in CQB environment. (first command forces AI to stop and prevents them from, for example, running off rooftops. Second one forces set stance, "UP" "MIDDLE" "DOWN" available)
Next we customize time limit and team names in settings.sqf.
FW_TimeLimit = 30;
FW_TimeLimitMessage = "TIME LIMIT REACHED!";
[west, "NATO", "player"] call FNC_AddTeam;
[east, "CSAT", "ai"] call FNC_AddTeam;
At last we will be adding a truck as a mission objective, to reference it in the end conditions we will call it OBJECTIVE.
Now that the scenario has been setup the briefing. See UO Briefing Guidelines for sample briefing.
We start by making the first end condition for the destruction of the truck. Add following line to endConditions.sqf
if (!(alive OBJECTIVE)) exitWith {
"The NATO forces have destroyed the fuel truck." call FNC_EndMission;
};
Next we make a second end condition for eliminating CSAT forces.
_eastCasualty = "CSAT" call FNC_CasualtyPercentage;
if (_eastCasualty >= 95) exitWith {
"The NATO forces have aliminated the CSAT forces." call FNC_EndMission;
};
_westCasualty = "NATO" call FNC_CasualtyPercentage;
if (_westCasualty >= 70) exitWith {
"NATO forces took too many casualties." call FNC_EndMission;
};