2D Mission Editor

From BISim Wiki
Jump to: navigation, search

Contents

Introduction

This article will take you on a tour of the 2D Mission Editor interface, explaining the functions of the many menu options and dialogues. This article focuses on explaining the effect of each option, rather than recommending which option should be used to create a desired outcome. A single option can create different effects based on different circumstances

The mission editor is divided into two sections. On the left is the Map Section, which is a map display where units and other entities are placed and manipulated. On the right are the Control Menus, which controls the current mission editing mode, mission parameters and provides file management options.

The Armed Assault Mission Editor

The basics of the mission editor are easy to grasp, allowing beginners to create "instant action" style missions in a matter of minutes. Other mission editing functions are far more complex and cryptic, and some are even redundant or useless. Creating a complex mission can take weeks of editing, and will require knowledge of scripting and creation of some supporting text files outside of the game. Multiplayer missions create some further complexities that will need to be considered, e.g. locality. It is recommended that the user becomes familiar with creating single player missions and scripts before trying to create a multi player mission.

Definitions

For the purposes of this article only, the following terms use are used:


Control Menus and Options

The control pane on the right of screen controls the many settings and editing modes of the mission editor. They are, from top to bottom:

Currently edited mission component

This drop down list allows you to choose which component of a mission you are currently editing. A single mission stores all objects and mission parameters for the intro and outro cutscenes completely separately from the gameplay component of a mission. It is not essential to use any of these other than the mission component. While each component requires a player unit if it is to be used, the player will only have control of the unit in the Mission component. In the Intro and Outros, AI will control the player's unit. The Intro and Outros will not end when the player unit dies, but must be ended using a trigger.

Intel Dialogue

The Intel box is the dark grey box with a weather icon, the time and date. It allows you to name your mission, give it a brief description, set the mission starting date and time, the current and forecast weather and which sides RACS forces are friendly to. Clicking on the Intel box will bring up the Intel dialog.

The Intel Dialogue

Name

The mission name is used in mission lists, such as when browsing missions in the "Single Mission" mode, on multiplayer sessions and mission lists, in the campaign mission list, and on the map notepad. If you do not name your mission, the missions folder/pbo name will be used.

Description

This description is only displayed while in multiplayer mode, but it is recommended to give every mission a short description to explain what the mission is about, failing all else to allow you to identify it yourself in the future.

Date and Time

These options should be self explanatory. VBS2 is highly accurate in its rendering of seasonal patterns. Thus daylight hours, the sun's path across the sky, star constellations and moon phases are all simulated correctly given the current terrain's world location. Tides are also accurately simulated, and can be somewhat hard to predict as different seasons and moon phases create vastly differing high/low water marks.

Weather/Fog Sliders

In this section, the first slider defines the mission's initial weather conditions. Setting the weather slider all the way to the right creates clear skies, all the way to the left is a heavy thunderstorm. The fog slider underneath controls the current fog levels - left is no fog, right is maximum fog. The two "Forecasted" weather sliders work in exactly the same way, with a linear transition from the initial weather conditions to the forecast conditions occurring over the first 30 minutes of a mission. Note that after the first 30 minutes of a mission, VBS2 carries out some long term dynamic weather simulation of its own, although it is over a timescale beyond most missions (changes occurring over 1.5 to 14 hours). For controlling the weather after the first 30 minutes you can use environment scripting commands.

RACS Is Friendly to:

Choose which side(s) the RACS side will be friendly to at the start of the mission. Note that the civilian side will inherit the same allies and enemies of the RACS side.

Current Map Editing Mode

The mission editor is always in one of these six modes. Each different mode allows the creation and manipulation of different types of map entities. The required mode can be set by either clicking on the modes name or pressing the associated function key. The modes are set out in the basic order they would be used while creating a mission. For more information on using each mode, see the map editing section below.

Load

Allows you to load a previously saved mission. Only uncompressed mission folders in your current profiles missions folder can be loaded.

Merge

Merge will import all map data (units, groups, waypoints, triggers, etc) from one mission into the currently loaded mission. Other settings such as those set in the Intel Dialogue are not imported.

Save

You can save your current mission with this dialogue.

Clear

Clicking this will remove all map entities such as units, waypoints, markers and triggers. Settings such as those defined in the Intel Dialogue are retained. Be warned that there is no undo function in the mission editor.

Show IDs

Every object defined in the terrain you are using has an assigned ID number that can be used to refer to the object in script code. These IDs are normally hidden for clarity, and this button toggles them on or off. IDs are only visible at high zoom levels.

Show Textures

Clicking on this option will backfill the map with the satellite map texture rather than the default white. This gives the user an idea of the type of terrain found in an area, although the satellite map does not always correspond exactly with the ground detail textures as seen at close range.

Preview

Preview will start the mission from within the editor so that you can test the results of your labour. A player unit must be on the map for the preview button to be visible. If shift is held down while clicking on the preview button, the mission preview will include the mission briefing and debriefing. Note that in preview mode, some aspects of a mission may not always behave in the same way as they would if the mission was played as a single mission. It is wise to check your mission in "single mission mode" (outside of the mission editor) before considering release.

Continue

After you have exited from the preview mode, clicking 'Continue' will allow you resume the mission from the point you left it. Note that any changes made in the editor since you exited the preview will not be shown. You must click 'Preview' again to restart with the updated version of your mission.

Exit

Will exit the mission editor and return to the main menu. Any unsaved work will be lost. A confirmation dialogue is shown.


Map Editing

The mission map takes up the main portion of the mission editor.

Basic Controls

Units Mode (F1)

Unit mode is used to add individual units, vehicles and objects on the map. To do so, double click on the empty space where you would like to add a unit. This will open the Unit Dialogue. You can also open the unit dialogue of an existing unit while in any editing mode other than waypoints by double clicking on the unit. Note that if there is no player unit on the map, the unit dialogue will only allow valid player units may be placed.

The Unit Dialogue

Side

There are four sides in VBS2, to which units can be assigned to: BLUFOR, OPFOR, Independent (RACS) and Civilian. BLUFOR and OPFOR will always start the mission as enemies. The Independent side's relations with the first two sides can be set on a mission by mission basis using the Intel Dialogue. The Civilian side will also inherit the friends and enemies of the Independent side. The difference is that the Civilian side are considered to be friends by all sides (killing civilians is bad!).

Once a player unit is on the map, Game Logic and Empty sides become available. The Game Logic side is used for abstract game logic objects, which among other uses can be used to create script like effects from within the mission editor. The Empty side includes empty versions of every side's vehicles, and map objects such ammo crates, sound sources, tents, flagpoles and fences. The side of an entity changes the available options is many other dialogues. It is not possible to change the side of an object once it has been placed. Player friendly units are represented by green icons, enemy units by red, Civilian and Game Logic units by blue, and Empty side objects by dark yellow.

Class

This is the general type of entity you wish to place. The purpose of this class is to reduce the many hundreds of available entities into more easily searched groups. It is not related to any game config classes.

Control

Defines who controls the entity. This option is not available for Game Logic or Empty side objects. All non-player controlled units will be controlled by AI. If the selected object is a vehicles, extra options will become available.

Info Age

Defines how long it has been since some unit belonging to the same side as player has seen this target. By default enemy units are not known unless somebody sees them (unknown). This way you can reveal some enemy unit to the center of the player. The impact of this value on AI behaviour is minimal, it influences mostly path-finding (AI groups try to avoid known enemies), to some extent it changes how fast will AI recognize the unit once they see it, and it may also cause AI center to send units which are available as guards (are ready at a guard waypoint).

Vehicle Lock

This option is only functional if the selected object is a vehicle. It defines whether any player controlled unit or members of a group lead by a player can board the vehicle or not. Default is unlocked. Note that an AI leader will not understand that a player unit can not enter a locked vehicle, and script commands will not respect this setting.

Rank

This defines the rank of the unit. The highest ranking unit in a group will normally be the group leader. Rank also has some affect on gameplay, such as highly ranked units being less likely to flee and more intimidating to enemy forces.

Unit

This is the specific type of entity you want to place or edit. The options available in this list box depend on the chosen Class.

Special

Defines special placement options for the starting position for the unit at the very beginning of a mission. If the unit is part of a group, default AI behaviour will make it try to return to formation as soon as the mission begins.

Name

The name of a unit can be used to refer to the object in script code. Like all variable names, the name must not contain any spaces or reserved characters. You should try to make it something meaningful and avoid conflicts. Note that if a variable exists with an identical name, no warning will be given and the name will refer to the variable first, rather than the named unit. If you copy and paste a named entity, the duplicate will be automatically have an underscore and number appended to it's name to avoid conflicts.

Skill

Highly skilled units can see farther, shoot more accurately and be generally more devious. At lowest skill units will be less observant, poor marksmen and generally stupid. Moving the slider to the right gives the unit a higher skill. Skill values set by the slider range between 0.2 and 1.

Initialization

Any script code placed in this box will be executed as the mission begins. Script code is extremely powerful and useful - it allows you to create many effects and change aspects of the mission that would not be possible using only the graphical interface of the mission editor. For example, to make a soldier begin the mission unarmed, add "removeAllWeapons this" (without the quotation marks) to it's initialization string.

Description

This text will appear next to the unit in the multiplayer unit selection screen.

Health/Armour

Defines how damaged the object is at the beginning of the mission. Moving the slider to the left makes it more damaged, up to a maximum of 0.97. Note that fully damaged units will begin the mission alive, then be instantaneously damaged. This means fully damaged soldiers will display a death animation, and vehicles will generally explode within 10 seconds of the mission starting.

Fuel

Defines how much fuel the object has, moving the slide left results in less fuel. This only has an effect on vehicles. Note that this setting does not change the amount of fuel cargo a refueling truck or petrol station holds. Use setFuelCargo for that purpose.

Ammunition

Defines how much ammunition the unit has at the start of the mission. Moving the slider left removes whole magazines for most units and removes individual rounds for single magazine weapons (such as the main tank cannon and aircraft missiles). This setting does not change the amount of ammunition cargo carried by a vehicle or ammunition crate.

Azimut

Defines which direction the unit will be facing. You can drag the pointer around the circle, or enter the desired bearing into the text box. If the unit is set to start In Formation, the unit will use the group leader's facing.

Probability of Presence

Defines how likely it is that the entity will exist each time the mission is played. This can be used to add a bit of randomness to missions. Moving the slider all the way to the right means the object will always be there, all the way to the left means the unit will never appear. Note the Condition of Presence must also return true if the entity is to appear in the mission.

Condition of Presence

This is a script code condition which must return true in order for the object to appear in the mission. By default this reads "true" which means the object will appear as defined by it's Probability of Presence. For an example, if you wanted a unit to appear only if the mission is being played in Veteran mode, place "!cadetMode" (without quotation marks) in it's Condition of Presence box. A unit with a Condition of Presence that returns false will not exist in the mission, irrespective of its Probability of Presence.

Placement Radius

Changes the object's starting position to a random point within a circle of this radius, in metres. This can be used to add some randomness to your mission. For grouped units, the placement radius is only used by the group leader, and group members with a Special setting of None (or In Cargo for a group without suitable vehicle).

Groups Mode (F2)

Group editing mode can be used in several ways. The primary use is to join previously placed individual entities together into groups. Joining individual units together into groups can greatly improve their combat abilities. A group will move together, share information about enemy units and can bring greater firepower to bare on a target. Each individual unit on the map that has no visible group links is actually in a group of it's own. When a unit is created near another unit of the same side, it will automatically be placed in the other unit's group. To join a unit into an existing group, simply left click and hold on the unit, then drag a line to any unit of the group you wish to add it too. Release the button to join the unit into that group. Group links are displayed by light blue line drawn from the leader to each other unit in the group. Removing a unit from a group is done by left clicking and holding on the unit and dragging the group link line into empty space, then releasing. The highest ranking unit in a group will generally be the leader. While it is possible to create extremely large groups in VBS2, huge formations of AI units create path finding issues and can be very hard to manage for a human leader.

Individual objects may also be grouped to Triggers (to link a specific object to the trigger) and Markers (allowing an object to start at a random but specific location), see those sections for further details.

The final function of Group Mode is to place an entire group in one step. These groups have been pre-defined within VBS2's main config file. Any units placed in this manner may be individually manipulated as normal. To place a group, simply double click on an empty map location. The Group Dialogue will open.

The Group Dialogue

Side

Choose the side of the group you wish to place.

Type

Choose the type of group to be placed. Mechanized infantry are listed under Infantry, not Armor.

Name

Defines the specific group to be placed. Armor platoons and Air Squadrons consist of 4 vehicles, infantry squads consist of up to 9 men. Motorized squads and mechanized squads will begin with only the crew in their vehicle.

Azimut

Defines which direction the group will be facing. You can drag the pointer around the circle, or type in the desired facing into the box. Note that the group formation will be built around the leader, using his location and facing.

Triggers Mode (F3)

A trigger is an abstract game entity that will wait until it's condition block returns true, then carry out the On Activation string. When used effectively, they can make your mission seem much more dynamic and realistic. For example, you can use a trigger to set off a siren and call reinforcements when the player is spotted near an enemy base, or to start a convoy moving when the player gives a radio command. Triggers are represented in the mission editor by a dark blue ellipse or rectangle with a small blue flag in the centre. Triggers may be linked to an object in Groups Mode (F2), which generally means that only that object or group can activate the trigger. Triggers can be used in various ways, for example the location and dimensions of a trigger are not always used as part of it's conditions, and triggers do not necessarily require an On Activation block, instead being used to return a list of objects that satisfy it's conditions. Each trigger's Condition block will be checked approximately twice every second for the duration of the mission. To add a new trigger to your mission, double left click in some empty map space. The Trigger Dialogue will open.

The Trigger Dialogue

Axis a/Axis b

These two controls define the radius size of the trigger, in metres. If a trigger has not been rotated (angle = 0), then Axis a is aligned East-West, Axis b is North to South.

Angle

Defines the angle of the trigger. 0 faces north, 90 faces east, etc. Triggers can also be rotated on the map by holding down shift, the left clicking on the trigger and dragging.

Ellipse/Rectangle

Choose the shape of the trigger.

Activation

These options provide a graphical method of creating a trigger condition. The chosen Activation option generally combines with selected condition type from the six condition types below (Present, Not Present, Detected by West, etc). Some of these conditions can not be easily or efficiently recreated using script commands. Note that these options only define what value this (in the condition string) will have each time the trigger is checked. Choose who or what will activate the trigger from the drop down menu. If the trigger is linked to a unit, only the relevant options will be available. You may choose :

Once/Repeatedly

Defines how many times the trigger can be activated. Only repeatable triggers can deactivate, single use triggers will remain active forever. Most repeatable triggers can only be reactivated once they have deactivated (radio triggers do not follow this rule).

Present/Not Present

If the activator is a side or object, the trigger will be activated if that side/object is or is not present within the trigger's boundaries. To be considered present, an object must be alive/undestroyed.

Detected By <side>

A unit is considered detected when the leader of any group on the detecting side can correctly identify the detected units side. Depending on the type of unit being detected, this may occur at various knowsAbout levels. The Seized by <side> Activation type also use these options, see above for details.

Countdown/Timeout Counters

These counters can add a degree of randomness to a trigger, and can make the trigger's activation less obvious to the player. For example, player immersion can be destroyed by a "enemy not present" trigger that completes an objective the very microsecond the bullet strikes the last enemy unit.

Below the Countdown and Timeout buttons you will see three boxes; Min, Max and Mid. These define the period of trigger activity in seconds between the Min and Max values, gravitating towards the Mid value. If all three are set to 10, then the period would be 10 seconds, with no randomness. If Min was 5, Max was 15 and Mid 10, the period would be somewhere between 5 and 15 seconds, most likely being close to 10.

Type

These are several types of trigger activation effects and abstract types that are generally unavailable through script code. These events will take place immediately after the On Activation code block is executed.

Name

Defines the name of the trigger, allowing it to be manipulated by script code. It must comply with normal variable name rules (no spaces, reserved characters or reserved words allowed, warnings may not be given!).

Text

If the trigger is activated by a radio command, this text will replace the default radio command name in both the command menu and on the radio visible on the mission map. This text will also be displayed within the editor when the mouse cursor hovers over the trigger, allowing the user to quickly identify what the trigger is and does.

Condition

The trigger will activate when this script code block returns true. If you leave the Condition box blank, the trigger will never activate. Within this block this refers to a boolean defined by whether the conditions chosen within the Activation options above are currently true or false, and thisList (or list <this trigger's name>) refers to an array of objects that are currently inside the trigger area and satisfy the trigger's Activation conditions. Note that thisList does not always refer to units that are activating the trigger. Two exceptions are the Not Present condition, which is returns the same list as if it were a Present type (ie, returns objects of the chosen side that are inside the trigger) and the Seized by <side> trigger, which returns all units that are considered when calculating dominance (ie, if the Detected by side thinks that a unit is still within the trigger even though it is not, it will still be included in thisList). Using script code in the Condition box allows the creation of more complex trigger activation requirements, including multiple and/or conditions. The trigger checks the condition approximately once every 0.501239 seconds (averaged over 10,000 checks).

On Act(ivation)

This script code block will be executed when the trigger's conditions are met, so long as the trigger's type allows activation. Any actions defined by the trigger's Type will take place immediately after this activation block begins executing. Within the On Activation block, this refers to (UNKNOWN BOOLEAN, ALWAYS FALSE?), and thisList refers to the same array as it does in the Condition block above.

On Dea(ctivation)

A script code block that will be executed the first time a repeatable trigger's conditions check returns false after having been previously true. Only repeatable triggers deactivate. Radio <letter> types do not deactivate, or at least never execute On Deactivation block. The special variables thisList and this have the same meanings as they would in the On Activation block.

Effects

Click on this button to open the Trigger Effects Dialogue. It allows for the easy creation of some audio and visual effects that will be carried out immediately after the trigger's On Activation code block. More than one effect may be used at once. Note that most if not all of the effects in this dialogue could be created using script code in the On Activation block.

The Trigger Effects Dialogue

Condition Block (untitled)

The script code block at the top of the Effects Dialogue can be used to require a condition that must be satisfied in order to execute the chosen effects. The block must return true in order for the chosen effects to take place. This block is checked after the trigger's On Activation code block is executed.

Anonymous

This drop down list allows you to play an anonymous vocal sample. The audio will seem to be coming from a nearby source to all players in the mission, irrespective of their position.

Voice

This drop down list causes the trigger to play a vocal sample. The audio will seem to be coming from close to the entity that activated the trigger, or if the trigger is linked to a group, the unit will speak the vocal sample (with lip movement).

Environment

This list allows you to play the chosen environmental sound-scape sounds for the duration of a mission. Since the normal environmental sounds are chosen dynamically based upon the player's position, time and weather, this option is unlikely to be of any use other than testing. (NEEDS CONFIRMATION - does it stop?)

Trigger

The chosen sound effect will play. The sound source is at the centre of the trigger.

Track

The chosen music track will play once when the trigger activates, immediately halting any previously playing music.

Type

Defines the creation of one of the following types of visual effects:

Text

This option will only be available if Type is not set to "None". It will either behave as a drop-down list of available Resource or Object types, or a box in which to enter text.


Waypoints Mode (F4)

Waypoints are used to define the route and behaviour of a group during the mission. At any point in time a group will have one active waypoint (generally the waypoint they are to move towards). Once a waypoint's conditions have been met, it will become complete and the group's next waypoint automatically becomes active. Some of a waypoint's settings will take place as the waypoint becomes active, others when the waypoint is complete.

Waypoints are a property of their group - only one group can use each waypoint, and if that group is deleted all of it's waypoints are deleted (both in the mission editor and in the mission). Waypoints can be placed either spatially (created in empty space), or attached to an object (directly placed on an object). Waypoints can only be attached to objects with a class definition (for example, all mission placed objects, and houses can be used, but rocks, fences and trees can not). Several waypoint types only function correctly if the waypoint is spatial, some only work if it is attached to an object, and others behave differently depending on the placement type. Spatial waypoints can be moved as desired in the same manner as moving units, while object linked waypoints remain attached to the object, even if the object moves while the mission is running. It is interesting to note that a non-editable waypoint is automatically created at every group leader's initial position. Waypoints are represented by a black dot within a circle, joined together with black arrows. To create a waypoint, first select any unit of the group you wish to create waypoints for. Then double left click in either empty space, or on the desired object. Multiple waypoints can be attached to the same object by holding down shift and double left clicking on the object. Once a waypoint has been created, it's placement can not be swapped between a spatial waypoint and an attached waypoint (unless the attached object is deleted). The waypoint dialogue is shown below.

The Waypoint Dialogue

Select Type

A waypoint's type will define what the group is to do when the waypoint becomes active. Note that if the selected group is on side Logic, only waypoint types AND and OR are available.

Waypoint Order

In this drop down menu, you can choose the number that the currently edited waypoint will be. It is possible to insert a new waypoint between two existing waypoints by changing this to the desired waypoint number in the new waypoint's dialogue. The order in which existing waypoints will be carried out can also be changed.

Description

Text in this box will be displayed on the HUD when the waypoint is currently active. If left blank, the waypoints type shall be used.

Combat Mode

The group's combat mode can be defined in this drop down box. Combat Modes change as the waypoint becomes the group's current active waypoint, rather than when the group completes the waypoint. Note if the group is lead by a player, these changes will not automatically take place.

Formation

This will specify which formation the group should enter as the waypoint becomes active. Unless specified otherwise, all groups start a mission in the default formation Wedge. Formations are normally formed around unit 1 (normally also the group leader) and each unit will normally keep in the same formation position as his number. For these descriptions, infantry units have been used. As a rough guide, each adjacent land or sea vehicle seems to use an additional "width" spacing of approximately twice the normal spacing, and an additional three times the "depth" (behind or in front) spacing. Air units will keep about five times the width, and ten times the depth spacing. The effect is cumulative, so that two helicopters will keep twice as far apart as one helicopter will stay from one soldier. Some behaviour modes can override the formation setting. Some large formation types may have trouble moving through object rich areas such as towns.

Speed

This setting will define the movement speed of the group. Changes will take place as the waypoint becomes active, rather than when the waypoint is completed. In Normal or Limited mode, the group leader will slow his movement rate to allow his units to keep up with the formation. Note that a leader in an aircraft will not be able to move slowly enough to allow slow ground units to keep up.

Behaviour

A group's Behaviour mode determine how it's units move from one point to another, behave when idle and how the engage an enemy. This setting can over-ride all of the above group mode settings (Combat Mode, Formation and Speed). As with those three modes, this setting also takes effect as the waypoint becomes active. Behaviour effects are most obvious on infantry groups.

Placement Radius

This option works in a similar way to a objects placement radius. The waypoint will be placed at random within a circle of the given radius, in meters. Note that the waypoint's position is set during mission initialization, so a group that uses a Cycle loop to go to a waypoint with a placement radius more than once will always move to the same location. If the waypoint is attached to an object, the waypoint HUD marker will appear at a random location for players, until they know of the object it is attached to, when the HUD marker will reposition itself onto the object. AI leaders will always move directly to the object.

Position In House

This option is only available if the waypoint is attached to an object with a defined path "Level Of Detail" (LOD) with positions. Most enterable buildings should have these, and only infantry units can use them. The positions are often near doorways and windows, although since the numbering system follows no simple rule a lot of trial and error will be needed to place the waypoint in the desire location. Path LODs allow units to ignore clipping, allowing them to walk through anything. If you send a multi-unit group to a position, they will all move to that position, standing inside each other! A move type waypoint set to a building position will never be considered complete without scripting. More than one waypoint can be set on the same building.

Timeout Counters

Despite it's name, this counter works in a similar way the Trigger Countdown counter. Once the waypoint would normally be considered complete, the waypoint will wait for the specified time period before it is completed and the group is allowed to continue to the next waypoint. The conditions of completion do not have to remain true for the duration of this time period!

Condition

This script code block allows creation of additional conditions before the waypoint will be completed. While the block's return value is false, the waypoint's type will be changed to type "Wait", which can not be completed. The group will move to the waypoints position (irrespective of whether they would normally do this for the waypoint's true type!), generally waiting until the Condition block returns true before carrying out the waypoint's type actions (but not for all types). If the Condition block is left empty, the waypoint will never complete. Within the Condition block, this refers to the group leader, and thisList refers to an array containing each unit in the group.

On Act(ivation)

Another script code block, executed when the waypoint is completed. Within this block, this refers to the group leader, and thisList refers to an array containing each unit in the group.

Script

This block will only be used if the waypoint is of type Scripted. See that waypoint type description above for details.

Never Show/Show in Cadet/Always Show

Choose whether or not you wish this specific waypoint to visible on the mission map during gameplay. Waypoints will only be visible to units within their group. If any waypoint is shown, the group leader's initial position in the mission editor will also be drawn (this position is set before any changes made during initialization take place). Lines are drawn between the shown waypoints, irrespective of how many non-shown waypoints lie between them.

Effects

The waypoint effects dialogue allows for audio and visual effects to be created as the waypoint is completed, immediately after the trigger's On Activation code block is executed. The dialogue is almost identical to the Trigger Effects Dialogue. More than one effect may be used at once. Note that most if not all of the effects in this dialogue could be created using script code in the On Activation block. Waypoints which create effects have a small blue camera icon next to them in the mission editor.

The Waypoint Effects Dialogue

Condition Block (untitled)

The script code block at the top of the Effects Dialogue can be used to require a condition that must be satisfied in order to execute the chosen effects. The block must return true in order for the chosen effects to take place. This block is checked after the trigger's On Activation code block is executed.

Anonymous

This drop down list allows you to play an anonymous vocal sample. The audio will seem to be coming from a nearby source to all players in the mission, irrespective of their position.

Voice

This drop down list causes the group leader to say a vocal sample, with lip movements.

Environment

This list allows you to play the chosen environmental sound-scape sounds for the duration of a mission. Since the normal environmental sounds are chosen dynamic based upon the listeners position etc, this is unlikely to be of any use other than testing. (NEEDS CONFIRMATION)

Trigger

Trigger is a tab where you can mark an area on the map (circle) in order to have it scripted, or if you wish to activate a function at an event. Very useful when scripting missions, eg. a car explodes when it passes a border.

Track

The chosen music track will play, immediately halting any currently playing music.

Type

Defines the creation of one of the following types of visual effects:

Text

This option will only be available if Type is not set to "None". It will either behave as a drop-down list of available resources or object types, or a box in which to enter text.


Synchronize Mode (F5)

Synchronization mode is used to make different groups carry out their waypoint orders at the same time, and optionally only under specific circumstances. Synchronization can seem a hard concept to understand at first, but it is a very powerful and easy to use tool. For example, synchronization can be used to organize friendly forces to wait until everyone is in position before launching a mass attack, or wait in ambush until an enemy convoy is in the perfect location before opening fire. Synchronizing links can be made between any of a group's waypoints and any number of other group's waypoints, and any number of triggers. A synchronized waypoint will not complete until all waypoints it is linked with are ready to complete, and all synchronized triggers are activated. Synchronizing links are displayed by a dark blue line connecting the entities. To create a synchronized link between a waypoint and another group's waypoint or a trigger, simply left click and hold on the waypoint, move the mouse to the desired waypoint/trigger then release. To remove synchronization lines from a waypoint or trigger, left click on it, hold and drag a line into empty space. Note this will remove all synchronizing lines from that entity, so be careful.

When a group's current waypoint is synchronized, the HUD will display the waypoint type as "Wait", and the group will move to the waypoints position, even if the true waypoint type would not normally involve moving to the waypoint's position. Another important thing to know is that while a group's waypoint's Activation code block does not return true, but the waypoint is otherwise ready to activate that waypoint will be considered complete for the purposes of synchronization! It is possible to link one waypoint with more than one waypoint of another single group. It is also possible to create synchronized links that can never be satisfied, in which case no warning will be given and groups will stuck waiting forever.

Triggers do not wait for synchronized waypoints, only the waypoint needs to wait until the trigger is active. Lines of synchronization generally do not have any polarity, so it does not matter which waypoint is clicked on and which is dragged to. There are some exceptions to this rule. With some waypoint types such as Get In and Join, the synchronizing link has greater significance than just timing in this case, it defines which group shall join and which shall be joined. See those waypoints types descriptions for details. Game Logic's OR type waypoints are another special case, they only require one synchronized entity to be ready, rather than all of them as is normally the case.


Markers Mode (F6)

The final editing mode is Marker mode. It is primarily used to place visual map icons and zones on the mission map. Markers are only visible while the mission editor is in marker mode, but can still be manipulated while in other modes. To do so, hover the mouse cursor over a marker's position to display it's name. The second use of markers is to define a possible starting position for any number of objects. To do this, create a group link between the marker and the object. The object will begin the mission at any one of the markers it is grouped with or at it's original position, chosen at random. This offers another way to create some randomness in a mission, with more precise control compared to using the object's Placement radius option. Note that any marker used in this way will still be drawn on the mission map (although setting the axis sizes to 0 can be used to hide a marker). Markers can not be attached to objects. To create a map marker, double left click in empty space. The Marker Dialogue is shown below:

The Marker Dialogue

Name

Every marker must have a unique name. Marker names should comply with normal variable naming rules (no spaces, reserved characters or reserved words) but VBS2 will only provide a warning in the case of a duplicate marker name. Markers can only be found by recognizing their name while in another map editing mode.

Icon/Rectangle/Ellipse

Markers can be one of two types :

Color

Choose the desired color. Default for icon markers is red, and black for zoned shapes.

Icon

This option is only available if the marker is an Icon type. Choose any icon from the list. The two Empty types are valid, they just lack proper names. Players can create icon markers during the mission by double clicking on the map.

Fill

Only available for Ellipse or Rectangle markers. The shape will be filled with the selected fill pattern. All fill patterns are slightly transparent.

Axis a/Axis b

These options define the scale at which the marker will be drawn. Icon type markers have no absolute size, but rather display at a constant size irrespective of map zoom. The axis values define the relative scale for the icon, for example marker with an axis value of 10 will be displayed 10 times larger than normal icon display size. For zone type markers, these values define the radius of the marker, in meters. Axis a is east west, Axis b north south, assuming angle of 0. To make an invisible marker (such as those used to define possible starting locations for a object) set both axis to 0.

Angle

A marker can be rotated as with any object or trigger.

Text

Only Icon markers will use this text. It will be displayed in small colored font directly east of the marker, irrespective of the marker's angle.

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox