format: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments( \("local" or "global"\))?|Effects|Multiplayer Effects( \("local" or "global"\))?|Multiplayer Exe...)
m (Text replacement - "<h3 style="display:none">Bottom Section</h3> " to "")
Line 50: Line 50:
</dl>
</dl>


<h3 style="display:none">Bottom Section</h3>
[[Category:Scripting Commands|FORMAT]]
[[Category:Scripting Commands|FORMAT]]
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]

Revision as of 01:42, 18 January 2021

Hover & click on the images for description

Description

Description:
Composes a string containing other variables or other variable types. Converts any variable type to a string. If you want to convert a string back to a number, use parseNumber.

The output of this command is limited to ~8Kb. joinString on the other hand doesn't have such limit
Groups:
Strings

Syntax

Syntax:
format [formatString, var1, var2 ...]
Parameters:
[formatString, var1, var2 ...]: Array
formatString: String - a string containing text and/or references to the variables listed below in the array. The references appear in the form of %1, %2 etc.
var1: Any Value - variable referenced by %1
var2: Any Value - variable referenced by %2
Return Value:
String - The full string (up to 8kb, see above) is returned.

Examples

Example 1:
format ["Player:%1, player's side:%2", player, side player]; returns "Player:WEST 1-1-A:1 (Username), player's side:WEST"
Example 2:
player addEventHandler ["HandleDamage", { hint format ["You just sustained %1%2 damage!", ceil ((_this select 2) * 100), "%"]; }]; hints "You just sustained 20% damage!"

Additional Information

See also:
formatTextendlstrtoStringjoinString

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

Notes

Worldeater
The maximum number of characters returned by the format command seems to depend on the total byte count. For plain ASCII strings the limit is 2048 characters.
Killzone_Kid
In Arma 3 the max length of String returned by format command seems to be 8191 characters. formatText doesn't seem to have this limitation.
Posted on March 28, 2015 - 09:22 (UTC)
Heeeere's Johnny!
In addition to the note above, formatTexted strings are Structured Text, hence cannot be used like formatted strings (with most scripting commands). A workaround to get strings of type String with more than 8191 characters is:str formatText ["%1", _string]
Posted on January 2, 2016 - 10:22 (UTC)
Killzone Kid
In addition to the note above, you may consider using joinString instead of format or formatText workaround. joinString is a fraction faster than format and it has no limit on the length of the string (apart from global String limit obviously)