Advanced Hints (Field Manual) – Arma 3

From Bohemia Interactive Community
Revision as of 23:53, 8 January 2014 by DarkDruid (talk | contribs)
Jump to navigation Jump to search

Summary

Advanced hints are system of educative/informative hints. There are two place where you can see these hints:

  • Field Manual - list of all advanced hints, you can open it from main menu or pause menu
  • In Game - mission designer can call any advanced hint by function BIS_fnc_advHint

Specifications:

  • There is a set of default advanced hints in the game. Players are able to add own hints.
  • Hints can be related only to a mission, campaign or the whole game. Hints related to any mission/campaign are not accessible in other missions/campaigns.
  • Showing of advanced hints in mission can be disabled by player in game options.


Calling of hint in mission

  • Simple function triggered by the designer at any needed point in the mission flow
  • Syntax: [classes, duration1, condition1, duration2, condition2, showing, onlyFullHint, onlyOnce] call BIS_fnc_advHint;where:
    • Classes - [Array] in format [main class, class]. Main class and class are classes in a config (see Config definition part) that includes title, image, description text possibly including keybinds (html formatted); required parameter
    • Duration1 - [Number] An amount of time the SHORT version of hint is shown; optional - default 30 s
    • Condition1 - [String] A condition that hide the SHORT version of hint when becomes true; optional - default nothing
    • Duration2 - [Number] An amount of time the FULL version of hint is shown; optional - default 30 s
    • Condition2 - [String] A condition that hide the FULL version of hint when becomes true; optional - default nothing
    • Showing - [Bool] true show hint even if tutorial hints are disabled via game settings; optional - default false
    • OnlyFullHint - [Bool] true show directly the full hint without using of the short hint, optional - default false
    • OnlyOnce - [Bool] show the hint in a mission only once (true) or multiple times (false), optional - default false

Note: Grey paremeters aren't implemented yet.


Config

  • System can read definitions from configFile, campaignConfigFile and missionConfigFile (so mission/campaign specific hints are possible).
  • Hint must by defined in class CfgHints.

Definition:

class CfgHints
{
	class InfantryMovement
	{
		// Topic title (displayed only in topic listbox in Field Manual)
		displayName = "Infantry Controls";
		class SteppingOver
		{
			// Hint title, filled by arguments from 'arguments' param
			displayName = "Stepping over obstacles";
                        // Optional hint subtitle, filled by arguments from 'arguments' param
			displayNameShort = "Stepping over obstacles";
			// Structured text, filled by arguments from 'arguments' param
			description = "Press %11 to step over low obstacle. Your %13 is %14";
                        // Optional structured text, filled by arguments from 'arguments' param (first argument
                        // is %11, see notes bellow), grey color of text
                        tip = "The free look represents turning the head sideways and up or down.";
			arguments[] = {
				{{"getOver"}}, // Double nested array means assigned key (will be specially formatted)
                                {"name"}, // Nested array means element (specially formatted part of text)
				"name player" // Simple string will be simply compiled and called
                                              // String is used as a link to localization database in case it starts by str_
			};
			// Optional image
			image = "\path\image_ca.paa";
			// Hint scope, values as everywhere else in game. 2 means displayed, 0 and 1 not.)
			scope = 2;
		};
	};
};

Definition notes:

  • First item from arguments field in config is inserted in text via variable %11, second item via %12, etc.
  • Variables %1 - %10 are hardcoded:
    • %1 - small empty line
    • %2 - bullet (for item in list)
    • %3 - highlight start
    • %4 - highlight end
    • %5 - warning color formated for using in structured text tag
    • %6 - civilian color formated for using in structured text tag (configfile >> 'CfgInGameUI' >> 'IslandMap' >> 'colorCivilian')
    • %7 - enemy color formated for using in structured text tag (configfile >> 'CfgInGameUI' >> 'IslandMap' >> 'colorEnemy')
    • %8 - friendly color formated for using in structured text tag (configfile >> 'CfgInGameUI' >> 'IslandMap' >> 'colorFriendly')
    • %9 - neutral color formated for using in structured text tag (configfile >> 'CfgInGameUI' >> 'IslandMap' >> 'colorNeutral')
    • %10 - unknown color formated for using in structured text tag (configfile >> 'CfgInGameUI' >> 'IslandMap' >> 'colorUnknown')
  • color formated for using in structured text is string: "color = 'given_color'"