Mission editing basics by PMC
This is the crude basic information on mission editing, by reading this you know how things are done, but not yet the actual editing details about them.
In ArmA there is nice mission editor, you'll find it's icon in the ingame main menu.
There are two kinds of missions; Single Player missions (SP) and Multiplayer missions (MP). In some cases MP mission works on SP also, but there is some limitations depending how complex mission it is. Some might argue that why do only SP missions as same (simple) mission can be made for MP with one minute extra editing.
Then there is of course campaigns, campaign is created in its own directory and it contains two or more missions. One mission is never ever a campaign. Read more about campaigns in here.
Mission name is very important, its the identity of your mission. If you do not name your mission the by default it will get name like “__cur_mp” for example.
To name your mission, bring up the mission name / time dialog by double clicking the upper right hand corner of mission editor. In this dialog you can also set time, date, weather and resistance/RACS affiliation.
When you save a mission, it will be saved in the users dir defined by profiles parameter.
Do NOT use spaces or non supported characters in the mission name when you save it!
For example bad mission name:
My Tank Killer Mission 1.Sara
And how that would be named properly:
Note that the ending “.Sara” comes from ArmA engine, you do not have to type that in.
Mission directory is saved under the name you specify and the extension of this directory is specified by the terrain you're editing your mission. Here are the common ones from BIS terrains:
Rahmadi - “mission_name.Intro”
Sahrani - “mission_name.Sara”
South Sahrani - “mission_name.Saralite”
Porto - “mission_name.Porto”
You will then place all the mission related files like scripts and briefing/overview into this directory.
User made terrains have various dir name extensions.
Briefing is “briefing.html” file in the mission dir. Briefing is the mission instructions to the player. It can can contain pictures and hyperlinks to other briefing pages as well as map markers.
Usually the briefing includes hyperlinks for mission objective markers.
Overview is a “overview.html” file in the mission dir, this is shown in the single missions file list, it can include a picture and short description of the mission.
Triggers are what activate under specific mission conditions, easiest trigger is activated when no more enemy units are alive in the mission.
It is tricky to make fool proof mission ending triggers so player don't have to hunt down the one last remaining hiding enemy soldier in some bush.
Cutscene is a “movie” inside the mission, its completely made with ingame cameras using the world and units available. It is not video of any kind.
Intro cutscene is what plays before the mission gets into briefing.
Outro cutscene is what plays when the mission ends. However were not sure if its completely after the final trigger has been activated, before the de-briefing menu comes up.
When you want to save or export your mission to normal ArmA missions menu, you can use the Save button and then use the drop down to select “Export to single missions.” before clicking Save. Now it saves your mission under the specified mission name and places the pbo into the ArmA/Missions directory.
Please note that ArmA locks the mission pbo after one save, so if you try to do several saves then you unfortunately need to exit from ArmA and start it all over again before you can save the mission again.
Or you can use util like cpbo to pbo pack the mission and then copy the packed pbo into the ArmA/Missions directory.
Many people have asked how to encrypt your mission so nobody else can edit it, there is simple answer to that; You CAN'T.
All missions and campaign can be opened with simple PBO tools, some missions might have the mission.sqm file binarized (rapified?), so you need to use unRap to open it for text format again.
OFP and ArmA has so many (complex) missions because people can learn from others work by opening all PBO's, this is wonderful thing, forget about encrypting missions, that's not good for anyone.
If you are creating a multiplayer (MP) mission, you can edit and test it on “MP environment” even when you don't have internet connected. It isn't really hardcore testing method though if you have complex mission, as you are running it on Server and Client at the same time sort and you cannot test dedicated server settings at all. However all simple MP missions are easily created and tested like this.
To do this, click on the Multiplayer icon on main menu, then click New which brings you into the Create Game menu. Now you get to choose your server name, usually its <Yourname> on <your computer name> which is funny, so fill it out if you are not lazy (can leave it as is too), then choose password if you don't want anyone to join your testing session. Next click OK and your MP server has been created.
Now you are in the Create Game menu (heh same name as before), this time it lists all terrains found in your ArmA addon directories, if you browse them you get to see any existing missions created for them. The missions need to be located in the ArmA/Users/<YourName>/MPMissions/ directory to show up on this menu.
To create completely new mission, choose a terrain, then click New Editor or New Wizard and you are brought to mission editor if choosing New Editor or into the wizard menu if New Wizard was chosen.
Now you simply can edit your mission as normally, except that any saved missions are placed automatically into the ArmA/Users/<YourName>/MPMissions/ directory, in which you can edit them as they were in your Arma/Users/<YourName>/Missions/ directory.
The biggest combination of performance degradation causing things in missions are:
When you have too many units especially moving units, you start to get stutter in a mission, ie bad performance. Please do not add too many units into a mission, it is not an answer to make “mega cool” mission just by adding thousand units in mission editor, if you need that many units, use createUnit/createVehicle scripting commands.
Also when you have many guard waypoint units, they don't cause pretty much any performance degradation when they are idle, but when the battle breaks out and they are called to help other units, you start to get real mayhem regarding the battle and performance depending how many guard units are coming to other units assistance at one given time. Usually though the guard units are dispatched one by one (group that is).
How many units is proper amount? Well it really depends on the computer, its been tested that while other persons high end computer runs 800 units OK, other persons low end computer comes to a crawling stutter stop with the same mission. Seems like ArmA is much different than OFP in this regard, OFP times it wasn't that much of a computer CPU dependency for performance as it was just purely the OFP engine which set the stutter standards.
Do you have to consider low end computers when making missions? Do you have to limit yourself as creative mission maker because of some poor slob who cannot afford a decent (high end?) computer? Difficult questions, but there is ALWAYS the option to use createUnit/createVehicle commands so you only keep about 100-200 units in the battle, even though the mission or “story” can contain thousands of units.
createUnit is there for a reason, use it.