ROF Mission Editor User Manual Eng 01
ROF Mission Editor User Manual Eng 01
2.1. MCU.......................................................................................................................................6
2.1.3. Command.......................................................................................................................6
2.1.4. Trigger............................................................................................................................6
2.1.5. Translator.......................................................................................................................6
2.2. Links.......................................................................................................................................6
4.3.1. 3D Mode.........................................................................................................................20
4.3.2. 2D Mode.........................................................................................................................21
1
4.3.3. Cameras…………........................................................................................................21
5. Mission………………………………………………………………………………………...…25
5.2.1. *.Mission………...……………….………………………………………………..…27
5.2.2. *.msnbin………...………….………………………………………...………………29
5.2.3. [mission_name].eng…...….……………………………………….……………....…29
5.2.4. [mission_name].list…...…….…..……………………….………………………...…29
7. Editor Objects.................................................................................................................................37
7.2.1 Planes/Vehicles/Artillery/Balloons..............................................................................38
7.2.2. Trains..........................................................................................................................39
7.2.4. Buildings/Blocks/Airfields/Battlefield/Bridges.........................................................41
7.2.5. Helpers…………………………………………........................................................43
2
7.2.6. Locations……………………….……………………....................................................46
7.3.1. Planes/Vehicles/Artillery/Aerostats.................................................................................54
3
7.8. MCU Trigger............................................................................................................................115
9.4. Airstart……………………………………………………………………………………....144
9.7.2. Animated Object is Seen Not Instantly After Mission Start ……………......…......149
9.8. Building Animated Scene as Exemplified by the Scene from Training Campaign ..………149
9.10. Basic Mission – All Towns, Airfields and Bridges are on the Map…………………………...152
4
1. Introduction.
- Instrument to activate and deactivate mission objects by certain events, which greatly increases
performance in missions containing large numbers of objects;
- Backwards compatibility of single and multiplayer missions (missions work by the same logic and are
created with the use of universal instruments within the Editor);
- Ability to set priorities for command execution by AI, which in turn, determines non-linear mission
progress. This feature allows AI to observe its present situation and react accordingly, which in turn
creates the illusion of more natural (human-like) AI behavior, especially in multiplayer missions. For
example, if there is no threat from the side of the player or other mission entities, the AI will continue
executing his mission. But if a threat appears, AI actions can either be strictly determined by mission
design or the AI can be left to act on its own, and after the threat is gone the AI will proceed with his
mission.
- Visualization of gameplay with interface helpers (objects icons, waypoint icons, etc.). There are a
variety of icon types, and the ability to preview mission briefings and debriefings. One can also add
descriptive text as pop-up tips on the mission map;
- Built-in system of cameras, which allows creating scripted clips within the game engine. Basically,
cameras are part of a mission and can act as part of the game process without interrupting it;
- Option to insert text, graphics and video into a mission as part of the game process. All of these options
allow gameplay simplification, as well as create a specific atmosphere and custom plot line in a mission;
- Ability to edit object properties in groups such as moving, rotating, and copying (single objects,
as well as the whole missions);
- Ability create custom groups of unit formations and reuse them as templates (for example: a
standard group of planes or cars, standard types of buildings);
- Ability to import missions – this provides the functionality to combine the efforts of several
designers, creating one complete mission. It also accelerates building complex missions (one
makes a clip describing mission plot, the second is placing mission environment, the third creates
the functional part of the mission and so on).
All the abovementioned properties of the Editor allow you to implement the widest range of artistic ideas
in terms of mission and campaign design, as well as gameplay.
To create dynamically changing missions, Full Mission Editor (FME) uses scripted language based on the
interactions of objects in the simulator’s environment, with certain logical elements (MCU) in the mission
script – commands, triggers and translators.
5
2.1. MCU
2.1.1. MCU – Mission Control Unit – is a script that assigns various actions/properties to mission
objects and the mission itself, depending on the type of MCU.
2.1.2. Object (Entity) – any game entity that can interact with the player – includes planes, buildings,
and vehicles. Objects can be assigned with a model of behavior or a sequence of actions during a mission.
For objects to interact in this way, or become editable, they must be brought to life with the help of the
Create Linked Objects button, which can be found in the Basic Properties menu of the object (see section
7.2).
To understand how the script engine works, it’s important to know that an object only becomes an object
within a mission that has been loaded. In the Editor, we basically put in place a translator through which
the script later assigns behavior models to the objects in the game engine.
2.1.3. Command – is an MCU that assigns specific a behavior model to an object (commands like
“engage nearby enemies”) or a sequence of actions (commands like “go to waypoint”). In other words,
the command “tells” an object what it has to do and in which order. In the MCU list, commands have a
«Command:» prefix.
2.1.4. Trigger – is an MCU that activates a command or translator if certain conditions are met. Triggers
can be either dependent on the object (for example: activate a command/event when object enters specific
area) or independent (trigger activates command/event upon expiration of specific time passed after
previous command/event). In the MCU list, commands have «Trigger:» prefix.
2.1.5. Translator – is the link between a script and an object. The translator is a script that is bound by
the means of the Editor to an object and influences this object in a mission by the given rules.
2.2. Links
To write mission scripts correctly, one needs to understand linking logics of logical items with objects
and between each other. There are 2 types of links – object link and target link.
2.2.1. Object Link (hotkey Shift+O) Object link (further ОL – is marked by a line with green arrow) – is
established between command, trigger, translator and object (from MCU to object i.e. you need to select
the current MCU=> Shift+O=>object) that it influences. Object link (through a translator link to an
object) determines which object has to execute the current MCU.
For example, OL from “go to waypoint” command to “airplane” object defines that in the mission, this
plane has to proceed to the specified point. In case the link is established from a trigger, it can also mean
the object is participating in conditions that turn this trigger on.
2.2.2. Target Link (hotkey Shift+T) Target link (further TL - is marked by a line with red arrow) is
established between MCUs, determining the sequence of their execution.
Therefore, you have to select the MCU that the TL comes from and specify the MCU that will be next in
the logical chain. Simply speaking, drag one MCU onto another MCU.
It’s important to remember that for correct execution sequence of a script, the link has to be set from the
previous MCU to the next one, not the opposite way. There can be numerous MCUs linked to one single
MCU in different combinations.
6
Note: not all MCUs can provide TLs, see section 7.5 for detailed description of MCU properties.
Message – (is marked by a line with blue arrow) – is yet another type of link that sets sequence of MCU
execution.
But unlike a TL the cause of executing this link is not the execution of “parent” MCU, but the change of
certain condition of the object (through object’s translator – its essence) as a result of receiving a certain
command or change in object’s properties (for example - its death).
In other words through a message an object tells the script “I’ve done that”. Via interface a message is
established in a following way – select an object (of course with entity), right click on its icon, in context
menu click Select Object Menu, then select the needed message (messages have “Message” postfix).
- Add On Land Message – message stating the fact that command to land was executed;
- Add On Take off Message – message stating the fact that command to take-off was executed;
- Add On Target Attacked Message – message stating the fact that command to attack the target was
executed;
- Add On Area Attacked Message – message stating the fact that command to attack the area was
executed;
When being set Message uses double link – source and target. In most cases it’s enough to use target (to
skip source – press Esc while in setting Message mode – the cursor will change it’s type, then specify
target). But sometimes you’ll need to use source also – in case you need to use a message by the fact of
execution of a certain command.
For example if there are two commands for take-off for one plane you can specify as source – the first
take-off command and target – the first waypoint of plane’s flight, therefore when the plane will have to
make the second take-off you’ll have to specify as source already another command. In this example the
object will give a message after executing a certain sequence of actions. You can manage other executed
commands also in such a way.
When building a mission it’s important to remember the following basic rules:
- you need at least one Mission Begin translator, but their number is unlimited. For example you can
import stand-alone functional blocks of mission with the block itself having its own Mission Begin;
7
- each command has to be linked to an object that executes this command, i.e. the command has to
“know” who it belongs to;
- command or trigger are executed (turn on) only in case they are started by TL or Message from another
object;
- you should avoid giving commands to single object simultaneously and determine a sequence of
commands using Timer triggers (1-2 seconds);
- deactivated object doesn’t receive commands, keeping those received before deactivation;
- when activating an object there needs to be a delay before giving him new commands (1-2 seconds)
because activation process takes more then one step of modeling time;
- when using MCU Spawner remember that you can’t spawn a player (player controlled plane), you can’t
spawn groups;
- don’t place more then 20 objects of the same type (everything that is in the lists: Bridges, Buildings,
Airfields, Battlefield of the Library window) into one “screen frame” (approximately 5 km radius);
- it’s important to consider the priority of the command given to the object;
- don’t place more then 35 objects of different type into one “screen frame”;
- AI will attack only an object that belongs to opposite (enemy) coalition, it’s important to remember
about it when building missions;
- it’s important to adhere the limitations for MCU of the Editor, which are listed in X section of this
manual;
1) – «cut» object – delete object from the map and place it into clipboard.
3) – Measure Mode – ruler that allows measuring distance between points on the map, with possibility to
set any broken line by points, with dynamic distance measuring and displaying the distance between
points, where:
8
To remove the last section and further all the previous sections – consecutive Backspace key. Exit from
this mode – single Esc key.
4) – Toggle Camera – switches camera view in the Editor from isometric 3D to orthogonal 2D and vice
versa. Hotkey for switching from 2D to 3D – F9.
5) – Focus on Selection – focusing camera on the selected object. Object is placed in the center of the
monitor.
6) – Set on Ground – sets an object (or a selected group of objects) on the ground.
7) – Zoom to Cursor – if this key is on then camera zooms to the point where cursor is, if it’s off – then to
the center of the screen.
9) – Draw Icons – turns icons of the objects placed onto the map and Editor’s MCUs on/off.
10) – Draw Icon Text – turns text with names and IDs of the objects placed on the map on/off.
11) - Draw Icons in Group – turns icons of objects in groups on/off (off by default).
12) – turns compass on/off, where blue line – direction to north, moreover in 3D mode direction is also
shown by digits – where the camera is pointed (heading angle), green line – direction of wind at surface
level.
13) – Object Filter – opens Mission Editor Object Filter window that allows disabling icons of selected
types of objects and MCUs on the map. This filter also hides icons of objects so that they don’t disturb
while editing if they are not needed at the moment (basically – object can’t be selected). For example you
can hide icons of bridges and blocks (or groups of ground buildings) since in the process of mission
building they will occupy Editor’s working space and simply disturb:
9
14) – Mission Tree – turns Mission Tree window on/off, which represents the list of all objects and
MCUs installed on the map.
First number in brackets is object ID, the second is entity ID of an object. If it’s MCU then it’s MCU ID.
Also, besides displaying a list of objects this window allows quick transfer to the desired object by
double-clicking on it in the list. If you select an object in this menu and right click it then a pop-up
window will appear:
Move Camera to Object – move camera specifically to the selected object (MCU);
Add to Selection – adding this object (MCU) to the list of already selected objects (MCU);
Remove from Selection – removing this object (MCU) from the list of previously selected objects
(MCU);
Set Group as Working – possibility to edit a group of objects (see Section 6 “Working with objects”).
10
16) – Property Dialog – open/close Basic Properties window.
20) – MCU SEL – turns displaying of links of the selected entities on/off.
- Save Selection to File… – save selected objects (entities) to a separate file for future pasting or
importing into a mission.
Here objects are saved into a group with *.Group extension. For more on working with groups see
Section 6.
11
By default *.Group files are saved to \Data\Missions directory;
- Status Bar – show service information panel in Editor’s working space (see Section 4.5);
- Objects Library – show list of objects of the Editor (objects, commands, translators etc.);
- Focus on Selection Center – centering of view (focusing) on the selected object or MCU;
- Zoom to Cursor – if this option is on then camera zooms to the point where the cursor is, if it’s off then
to the center of the screen;
- Go to Camera – select and go to the camera that was set by Add Camera function (see Section 4.3).
12
4.2.3. Search and Select menu:
- Select All Objects – select all entities of the mission, all object of the game environment and also select
all objects in workgroup;
- Select All Visible Objects – select all visible objects in the mission displayed by Mission Editor Object
Filter (see above), and also select all objects in workgroup;
- Find by Name (empty matches everything) field – search by entity’s or object’s name;
13
- ID, Name, Type, Description window - window displays found entities or objects, ID in the mission,
name, type and description;
Check MCU button – select all checkboxes of MCU filter (commands, translators, triggers);
Double click result options field – set actions that will happen after you double-click the found object in
the list of found objects;
- Show properties checkbox – show properties window when you double-click the found object;
- Move camera to object checkbox – move camera to the found object when you double-click it;
- Select Object checkbox – select the found object when you double-click it;
- Add Object to Selection checkbox – add the object to the list of selected objects when you double-click
it;
- Select in mission tree checkbox – select the found object in mission “tree” window;
- Set Working Group checkbox – set editing mode for the found object when you double-click it (if it’s in
a group);
- Close Dialog checkbox – close Find Mission Object window when you double-click the name of the
found object (in the list).
14
4.2.5. Find location objects… menu
This mode allows finding and selecting a location on the map that will appear on the map after the
location database is loaded - Default.ldf, Substrate.ldf and TerrainLeveler.ldf. Before starting a search
you need to load these files to the editor.
Find by Name (empty matches everything) field – enter the full (partial) name of the object.
Name, Type, Description window – found locations window displaying its name, type and description
correspondingly.
15
Air Objective checkbox – search Air Objective type locations;
Find options field – additional filter for searching and selecting locations in the Editor.
Double click result options field – set actions that will happen after you double-click in the ID, Name,
Type, Description window.
Show properties checkbox – show Properties window for the found location;
This search mode directly intersects with such Editor’s objects as Helpers and Locations, to learn more
see Sections 7.2.5 and 7.2.6.
4.2.6. Draw menu – menu specifying how to draw different objects and MCU in the Editor’s working
space.
Draw Icon Text – show icon names for objects and MCUs;
16
Draw Compass – draw game world compass;
Draw MCU Links for Selected Objects – draw links for the selected objects;
Draw MCU Links for not Selected Objects – draw links for unselected objects;
Object Filter – open Mission Editor Object Filter window, that allows disabling drawing of selected
object types on the map (see above).
Start Integrity Check – starts a program that checks assigned links between entities in the mission and
displays results in the Editor’s main menu;
Check Integrity On Save/Load – starts a program that checks assigned links between entities in the
mission and displays results in the Editor’s main menu at each mission save or load;
Measure Mode – ruler allows measuring distance between points on the map. You can specify any broken
line by points. Distance is measured dynamically and displayed for each section. To remove the last
section and further all the previous ones press Backspace consequently.
Open Last Used Mission On Start – at Editor’s start up last open mission will be loaded;
17
Convert Missions to binary in Folder – convert mission files into binary format – with serious changes in
Editor’s version binary format of missions is also often changed (see 5.2.2). This option allows automatic
re-saving of old missions in the new format.
To do that choose folder with missions you’d like to re-save and the Editor will automatically re-save all
the missions that are in this folder and its subfolder;
In this mode joystick is “intercepted” by Mission Editor; two modes – simple flight in game world and
Camera Operator translator flight. In the second case if you set to the map a translator: Camera Operator –
Rightclick – Selected Object Menu – Look from this Object, you’ll be able to fly over desired terrain in
3D mode, at this the Editor allows placing all intermediate camera waypoints (Trigger Came Point) in
automatic or manual modes.
Also you can use this mode to place Waypoints for planes and vehicles. To do that you have to select an
object, which you will be placing points for (or the last waypoint of this object).
Joystick Options – joystick control options menu for flying in simple and Camera Operator modes.
Place button – button for manual placement of intermediate camera flight waypoints;
Auto place button - button for automatic placement of intermediate camera flight waypoints,
automatically places waypoints during “flight”;
Counter – time in milliseconds between intermediate waypoints (only for Auto place button mode);
18
Throttle – speed of flight;
4.2.8. Location Database menu – menu for working with locations of mission generator.
Edit Default Countries – edit members of coalitions Opposite and Order (see 5.1.);
Open - open;
Generate Terrain Leveler Info Bitmap – generate leveler areas location file for the tool leveling terrain
under the objects (in .bmp format);
Check Location DB Integrity – check and display of errors in locations database, the file is saved to
data\LocationDatabase\IntegrityCheck.txt.
4.3.1. 3D mode:
- hotkey for switching between 2D and 3D modes – F9 or button in the instrument panel (Section 4.1).
- in isometric mode – left mouse click + mouse movement adjust camera position;
19
- right mouse click + mouse movement allow moving camera in horizontal space, is backed up by W, S,
A, D – forward, back, left, right; SHIFT accelerates movement;
- mouse wheel moves camera by vertical axes. Camera heading can be determined by compass (circle in
top left corner of the screen, green line shows direction to north, blue – wind direction).
4.3.2. 2D mode:
In 2D mode – similarly to isometric mode, with the exception of the ability to change camera orientation.
Zooming is performed with mouse wheel.
To jump between map areas quickly you can use pre-set cameras. To do this left mouse-click the desired
map area and select Add Camera… (or Ctrl+Alt+C) in drop menu, type camera name in the appeared
window and click OK. To jump to the desired camera select Go to Camera in the drop menu after you
right click and then in the appeared dropdown menu select the desired camera.
Important: (!) During switching camera will work in the same mode it was set – i.e. if the camera was set
in isometric mode it will switch the Editor to isometric mode each time will jump to it. The same is true
for flat mode also (!).
4.3.3. Cameras
The list of pre-set cameras can be viewed and edited in Cameras window (Ctrl+Shift+c or right-click
=>Cameras).
After you add a camera to the list of cameras of the Editor you can use Ctrl+1, Ctrl+2…0 hotkeys to jump
to camera position. Order number (camera position in sequence called by hotkey) can be edited by
moving cameras in the list with Up and Down arrows in Cameras menu.
In this window:
20
Go To button allows jumping to camera selected in the list field in the left part of screen.
Delete and Delete All buttons delete selected camera and all cameras correspondingly.
Camera Info group displays camera type (Free 3D for cameras set in isometric mode, Ortho for cameras
set in flat mode), camera notes (can be added/edited manually) and camera coordinates (X:, Y:, Z; fields).
Zoom: field shows camera zoom to surface scale (only for Ortho cameras).
If you right-click anywhere on the map dropdown menu will appear, where:
Add On Land Message – set message about the fact of landing type link;
Add On Take off Message - set message about the fact of takeoff type link;
Add On Move Message - set message about the fact of movement type link;
Add On Killed Message - set message about the fact of “death” type link;
Add On Damage Message - set message about actual damage type link;
Add On Spawned Message - set message about the fact of “spawn” type link;
Add On Target Attacked Message - set message about the fact of attacking target type link;
Add On Area Attacked Message - set message about the fact of attacking area type link;
Look from This Object – switch to 3D mode and view from the selected object.
21
Cut – cut.
Copy – copy.
Paste – paste.
Where X and Z are map coordinates where camera will go to after you press OK.
4) - Camera (X Z Zoom): - coordinates and position of the camera from the first person:
- 5 – camera coordinates by X;
22
- 6 – camera coordinates by Z;
- 7 – camera coordinates by Y (height), in 2D mode this window shows camera zoom aspect.
5. Mission.
When creating a mission you can see mission settings window in the lower left corner of the Editor:
- Name – mission name. This name will be displayed in mission list in game interface. If the name is
blank then mission will be displayed by mission file name;
- Date – set date in the mission. You can set date in mission window or through the calendar, which will
appear if you click date properties (to the right in date window);
23
When creating missions use only first four mission types (Single, Cooperative, Dogfight and Training),
other mission types in the list are used by mission generator.
When creating a mission you should set mission type properly because if you for example set Cooperative
type to a mission and place it into the folder for Single type missions (data\missions) then this mission
won’t be visible in the mission list in game interface.
When adding another type map all files describing the new map must be placed into
data\graphics\[terrain_name] folder. In our case the map is inside Landscape folder and is described by
three files:
Height Map – (height.ini) file describes surface properties of a map, roads, water surfaces, forests and
also a set of textures covering map surface.
Textures – (textures.ini) file describes a set of textures for components of a map, such as forests, water,
surface masks, textures of town substrates etc.
Forests – (trees\summer.wds) file sets tree types depending on the season, in this case these are summer
trees.
24
Cloud – section with clouds and weather type settings:
Sky config – choose cloud type, clear – cloudless, average – rear clouds, heavy – cloudy, precipitation –
overcast, thunderstorm – overcast and fog.
25
Using [>>>] and [<<<] buttons you can add the abovementioned countries into Order and Opposite
coalitions.
Description window – in this window you can type mission description, which will be displayed in game
interface during mission selection in missions list and also as a text in mission description during mission
loading.
5.2.1. *.Mission – mission file in text format. Actually this is mission source; therefore always try to save
it if you are going to use the mission in future.
Contents of text format of mission on the example of empty mission (*.Mission mission file can be edited
in any text editor):
Options
PlayerConfig = ""; //script of the plane available for the player in the mission
0: 0: 0;
500 : 0: 0;
1000 : 0: 0;
2000 : 0: 0;
5000 : 0: 0;
501; //Germany
502; //Austria-Hungary
101; //France
102; //England
103; //USA
104; //Italy
105; //Russia
27
}
# end of file
5.2.2. *.msnbin – mission file in binary format. Functioning of a file of such type depends on mission
format (meaning – if an updated version of the project is out – this file would be unworkable). If the
Editor gives an error message when reading mission then, in case you have mission source left, delete
*.msnbin file and resave the mission. The Editor will automatically create a new version of binary file.
To add to this, binary mission is loading considerably faster then the text one.
Mission will load as in case of both types of files present (at this *.msnbin will have a reading priority
over *.Mission), so that if either this or that file type is present separately.
5.2.3. [mission_name].eng (or *.rus, *.ger, *.fra, *.spa) – localization files of the mission that store all
the text data that are used in the mission. Therefore if you have created a mission in Russian language and
want, for example, to create an English localization version then simply make a copy of this file and
change its extension from *.rus to *.eng.
5.2.4. [mission_name].list – file necessary for cooperative mission to work correctly (see Section 8).
Work with a mission (edit or re-save in the Editor) in that language (settings.exe – language), which it
was created in. Otherwise if you’ll open and re-save the mission in an Editor that is switched to another
language there can be problems with localization lines IDs.
During mission creation all texts of the mission are saved in localization files, where IDs are assigned to
blocks of text (in fact, inside the file it looks like a number with a colon – line index).
Therefore if you create several types of localization languages of a mission watch for IDs of all
localization files to match and be absolutely equal to the ID of the original localization file. Also when re-
saving a mission – check the ID, as they may change when adding new objects (though they shouldn’t;
but it’s better to control it all the way to avoid problems).
Select an object with left click, at this you ‘ll see a green frame around the object (1).
1)
2)
3)
29