Mission Overview – Arma 3

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Spelling error)
m (Text replacement - "[[{{arma2}}]]" to "{{arma2}}")
(17 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[category:Arma 3: Editing]]
{{Feature|Informative|For overview configuration in [[:Category:Operation Flashpoint|{{ofp}}]], [[:Category:ArmA: Armed Assault|{{Name|arma1|short}}]] and [[:Category:Arma 2|{{arma2}}]], see [[Overview.html]].}}
''For overview configuration in [[Operation Flashpoint]], [[Arma]] and [[Arma 2]], see [[Overview.html]]''
{{TOC|side}}
 
 


Overview is short summary of a mission displayed in mission selection. It's the first thing player sees from a mission and should not be underestimated; well made overview can immediately capture player's attention, while poorly made one can make him ignore your mission forever.
Overview is short summary of a mission displayed in mission selection. It's the first thing player sees from a mission and should not be underestimated; well made overview can immediately capture player's attention, while poorly made one can make him ignore your mission forever.
Line 8: Line 6:
The overview is visible in the following menus:
The overview is visible in the following menus:
* '''Play > Scenarios / Showcases / Challenges'''
* '''Play > Scenarios / Showcases / Challenges'''
* '''Play > Campaign''' (unavailable in Alpha and Beta version)
* '''Play > Campaign'''
* '''Multiplayer Create Game''' (only for hosts / admins)
* '''Multiplayer Create Game''' (only for hosts / admins)


== Displayed Information ==
== Displayed Information ==
[[File:A3_missionOverview.jpg|400px|right]]
[[File:A3_missionOverview.jpg|400px|right]]
[[File:A3_customMissionOverview.jpg|400px|right]]
The overview consists of:
The overview consists of:
* '''Name'''
* '''Name'''
Line 24: Line 25:
* '''Description'''
* '''Description'''
** Short and snappy summary formatted as [[Structured Text]].
** Short and snappy summary formatted as [[Structured Text]].
* '''Custom Description'''
** Allows addition of custom UI elements to mission description. Serves for example for displaying score reached in challenges.
** Is displayed only when ''overviewScript'' parameter is defined in mission's class in CfgMissions. See Sample overviewScript.sqf.
** Works only for SP missions (namely in Showcases, Challenges and Scenarios dialogue).
** For custom IDCs only values higher than 10000 should be used.




== Configuration ==
== Configuration ==
Two ways how to [[Mission Export|export a mission]] exists - either as mission [[PBO]], or as addon PBO. Both are using [[Description.ext]], but addon format also allows configuration in [[Config.cpp]]. Campaign missions are listed in [[Campaign Description.ext]], but missions still support Description.ext.
Two ways how to [[Mission Export|export a mission]] exists - either as mission [[PBO]], or as addon PBO. Both are using [[Description.ext]], but addon format also allows configuration in [[Config.cpp]]. Campaign missions are listed in [[Campaign Description.ext]], but missions still support Description.ext.


Line 33: Line 40:
Single missions can be locked using [[Description.ext#keys|keys]]. In such cases, overview image is transparent and ''overviewTextLocked'' is used instead of ''overviewText''. This applies <u>only</u> to single missions, not to mission folders, campaigns or campaign missions.
Single missions can be locked using [[Description.ext#keys|keys]]. In such cases, overview image is transparent and ''overviewTextLocked'' is used instead of ''overviewText''. This applies <u>only</u> to single missions, not to mission folders, campaigns or campaign missions.


=== [[Description.ext]] ===
<syntaxhighlight lang="cpp">
briefingName = "The Final Countdown";
overviewText = "The nuke is still out there!";
overviewTextLocked = "Finish the Splendid campaign in order to unlock this mission.";
overviewPicture = "overviewPicture_ca.paa";
author = "Stranger";
</syntaxhighlight>


'''[[Description.ext]]'''
=== [[Config.cpp]] ===
overviewText = "The nuke is still out there!";
overviewTextLocked = "Finish the Splendid campaign in order to unlock this mission.";
overviewPicture = "overviewPicture_ca.paa";
author = "Stranger";


'''[[Config.cpp]]'''
<syntaxhighlight lang="cpp">
class CfgMissions
class CfgMissions
  {
{
class Missions
class Missions
{
// Mission subfolder (optional, mission can be defined straight away)
class MySubfolder
{
displayName = "Comanche Missions";
overviewText = "Scenarios involving your favorite helicopter.";
overviewPicture = "\a3\fw_f\data\overviewPictureFolder_ca.paa";
author = "Stranger";
   
// Mission itself
class MyMission
{
overviewText = "The nuke is still out there!";
overviewPicture = "\FW\data\overviewPicture_ca.paa";
overviewTextLocked = "Finish the Splendid campaign in order to unlock this mission.";
author = "Stranger";
overviewScript = "\FW\scripts\overviewScript.sqf";
 
directory = "\FW\MyMission.Altis";
};
};
};
class Campaigns
  {
  {
{{codecomment|// Mission subfolder (optional, mission can be defined straight away)}}
// Campaign; its missions are defined in campaign description.ext
class MySubfolder
class Splendid
{
{
displayName = "Comanche Missions";
overviewText = "SURVIVE - ADAPT - WIN";
overviewText = "Scenarios involving your favorite helicopter.";
overviewPicture = "\a3\missions_f\data\splendid_ca.paa";
overviewPicture = "\a3\fw_f\data\overviewPictureFolder_ca.paa";
author = "Bohemia Interactive";
author = "Stranger";
 
 
directory = "\FW\Splendid";
{{codecomment|// Mission itself}}
};
class MyMission
};
{
};
overviewText = "The nuke is still out there!";
</syntaxhighlight>
overviewPicture = "\FW\data\overviewPicture_ca.paa";
 
overviewTextLocked = "Finish the Splendid campaign in order to unlock this mission.";
=== Sample overviewScript.sqf ===
author = "Stranger";
 
{{Color|purple|#include "\A3\ui_f\hpp\defineCommonGrids.inc"}}
[[params]] ["_display", "_missionClassname"];
   
   
directory = "\FW\MyMission.Altis";
[[private]] _challengesOverviewGroup = _display [[displayCtrl]] 2302; {{cc|Custom UI elements should be created inside this group}}
};
};
};
class Campaigns
  {
{{codecomment|// Campaign; its missions are defined in campaign description.ext}}
class Splendid
{
overviewText = "SURVIVE - ADAPT - WIN";
overviewPicture = "\a3\missions_f\data\splendid_ca.paa";
author = "Bohemia Interactive";
   
   
directory = "\FW\Splendid";
[[private]] _newControl = _display [[ctrlCreate]] ["Rsctext", 10001, _challengesOverviewGroup]; {{cc|IDCs higher than 10000 should be used}}
};
_newControl [[ctrlSetPosition]] [0, 0, 21.5 * GUI_GRID_W, 3.5 * GUI_GRID_H + (0.5 * ([[safeZoneH]] - GUI_GRID_HAbs))];
};
_newControl [[ctrlCommit]] 0;
};
_newControl [[ctrlSetText]] "TEST";
_newControl [[ctrlSetBackgroundColor]] [1,0,0,0.5];
 
=== [[Campaign Description.ext]] ===
 
<syntaxhighlight lang="cpp">
class Campaign
{
firstBattle = Beginning;
disableMP = 1;
briefingName = "Splendid";
author = "Campaign author";
overviewPicture = "\FW\data\overviewPicture_ca.paa";
overviewText = "Campaign overview";
 
class Beginning
{
name = "The Beginning";
cutscene = ;
firstMission = mission01;
end1 = ;
lost = ;
class mission01
{
briefingName = "Mission name";
author = "Mission author";
overviewPicture = "\FW\data\overviewPicture_ca.paa";
overviewText = "Mission overview";


'''[[Campaign Description.ext]]'''
template = mission01.Altis;
class Campaign
};
{
};
firstBattle = Beginning;
};
disableMP = 1;
</syntaxhighlight>
 
briefingName = "Splendid";
 
author = "Campaign author";
[[Category:Mission Editing]]
overviewPicture = "\FW\data\overviewPicture_ca.paa";
overviewText = "Campaign overview";
 
class Beginning
{
name = "The Beginning";
cutscene = ;
firstMission = mission01;
end1 = ;
lost = ;
class mission01
{
briefingName = "Mission name";
author = "Mission author";
overviewPicture = "\FW\data\overviewPicture_ca.paa";
overviewText = "Mission overview";
template = mission01.Altis;
};
};
};

Revision as of 02:51, 20 July 2021

For overview configuration in Operation Flashpoint, ArmA and Arma 2, see Overview.html.

Overview is short summary of a mission displayed in mission selection. It's the first thing player sees from a mission and should not be underestimated; well made overview can immediately capture player's attention, while poorly made one can make him ignore your mission forever.

The overview is visible in the following menus:

  • Play > Scenarios / Showcases / Challenges
  • Play > Campaign
  • Multiplayer Create Game (only for hosts / admins)


Displayed Information

A3 missionOverview.jpg
A3 customMissionOverview.jpg

The overview consists of:

  • Name
    • Mission name. Keep it short, because space in mission selection menu and in loading screens is limited.
  • Author
    • Your name or nickname, used also in Loading Screens. Displayed as "by <author>".
  • Preview picture
    • Must be in PAA file format.
    • 2:1 aspect ratio (different aspect are rendered correctly as well, but won't cover the whole area).
    • Ideally 1024x512 pixels.
  • Description
  • Custom Description
    • Allows addition of custom UI elements to mission description. Serves for example for displaying score reached in challenges.
    • Is displayed only when overviewScript parameter is defined in mission's class in CfgMissions. See Sample overviewScript.sqf.
    • Works only for SP missions (namely in Showcases, Challenges and Scenarios dialogue).
    • For custom IDCs only values higher than 10000 should be used.


Configuration

Two ways how to export a mission exists - either as mission PBO, or as addon PBO. Both are using Description.ext, but addon format also allows configuration in Config.cpp. Campaign missions are listed in Campaign Description.ext, but missions still support Description.ext.

Entries defined in mission Description.ext have the largest priority and will overwrite those in Config.cpp / Campaign Description.ext

Single missions can be locked using keys. In such cases, overview image is transparent and overviewTextLocked is used instead of overviewText. This applies only to single missions, not to mission folders, campaigns or campaign missions.

Description.ext

briefingName = "The Final Countdown";
overviewText = "The nuke is still out there!";
overviewTextLocked = "Finish the Splendid campaign in order to unlock this mission.";
overviewPicture = "overviewPicture_ca.paa";
author = "Stranger";

Config.cpp

class CfgMissions
{
	class Missions
	{
		// Mission subfolder (optional, mission can be defined straight away)
		class MySubfolder
		{
			displayName = "Comanche Missions";
			overviewText = "Scenarios involving your favorite helicopter.";
			overviewPicture = "\a3\fw_f\data\overviewPictureFolder_ca.paa";
			author = "Stranger";
 
			// Mission itself
			class MyMission
			{
				overviewText = "The nuke is still out there!";
				overviewPicture = "\FW\data\overviewPicture_ca.paa";
				overviewTextLocked = "Finish the Splendid campaign in order to unlock this mission.";
				author = "Stranger";
				overviewScript = "\FW\scripts\overviewScript.sqf";

				directory = "\FW\MyMission.Altis";
			};
		};
	};
	class Campaigns
 	{
		// Campaign; its missions are defined in campaign description.ext
		class Splendid
		{
			overviewText = "SURVIVE - ADAPT - WIN";
			overviewPicture = "\a3\missions_f\data\splendid_ca.paa";
			author = "Bohemia Interactive";

			directory = "\FW\Splendid";
		};
	};
};

Sample overviewScript.sqf

#include "\A3\ui_f\hpp\defineCommonGrids.inc"

params ["_display", "_missionClassname"];

private _challengesOverviewGroup = _display displayCtrl 2302;  // Custom UI elements should be created inside this group

private _newControl = _display ctrlCreate ["Rsctext", 10001, _challengesOverviewGroup]; // IDCs higher than 10000 should be used
_newControl ctrlSetPosition [0, 0, 21.5 * GUI_GRID_W, 3.5 * GUI_GRID_H + (0.5 * (safeZoneH - GUI_GRID_HAbs))];
_newControl ctrlCommit 0;
_newControl ctrlSetText "TEST";
_newControl ctrlSetBackgroundColor [1,0,0,0.5];

Campaign Description.ext

class Campaign
{
	firstBattle = Beginning;
	disableMP = 1;
	 
	briefingName = "Splendid";
	author = "Campaign author";
	overviewPicture = "\FW\data\overviewPicture_ca.paa";
	overviewText = "Campaign overview";
  
	class Beginning
	{
		name = "The Beginning";
		cutscene = ;
		firstMission = mission01;
		end1 = ;
		lost = ;
		 
		class mission01
		{
			briefingName = "Mission name";
			author = "Mission author";
			overviewPicture = "\FW\data\overviewPicture_ca.paa";
			overviewText = "Mission overview";

			template = mission01.Altis;
		};
	};
};