Mission Parameters – Arma 3

From Bohemia Interactive Community
Jump to navigation Jump to search
(Created page with "Category:Arma 3: Editing Server admin / host can customize multiplayer missions in ROLE ASSIGNMENT menu using parameters prepared by the mission designer. == Manual Para...")
 
mNo edit summary
Line 46: Line 46:




== Predefined Params ==
Arma 3 introduces a framework for defining commonly used params (e.g., time of the day or mission duration), which can be shared across multiple missions. Once included to description.ext, they will initialize automatically. Some of them can be further customized using specific [[PreProcessor_Commands|macros]].
class Params
{
#include "\a3\functions_f\Params\paramWeather.hpp"
#define TICKETS_DEFAULT 600
#include "\a3\functions_f\Params\paramRespawnTickets.hpp"
};
=== Available Templates ===
{| class="wikitable sortable"
! File
! Description
! Optional variables


== Predefined Params ==
|-
| <code>\a3\functions_f\Params\paramCountdown.hpp</code>
| Set missiong countdown (in seconds)
|
#define COUNTDOWN_MIN 600
#define COUNTDOWN_MAX 3600
#define COUNTDOWN_DEFAULT -1
 
|-
| <code>\a3\functions_f\Params\paramDaytimeHour.hpp</code>
|
|
#define DAYTIMEHOUR_DEFAULT 19
 
|-
| <code>\a3\functions_f\Params\paramDaytimePeriod.hpp</code>
|
|
#define DAYTIMEPERIOD_DEFAULT 12
 
|-
| <code>\a3\functions_f\Params\paramGuerFriendly.hpp</code>
|
|
#define GUERFRIENDLY_DEFAULT -1
 
|-
| <code>\a3\functions_f\Params\paramRespawnTickets.hpp</code>
| Set respawn tickets for all sides
|
#define TICKETS_MIN 100
#define TICKETS_MAX 1100
#define TICKETS_DEFAULT -1
 
|-
| <code>\a3\functions_f\Params\paramWeather.hpp</code>
|
|
#define WEATHER_DEFAULT 40
 
|}

Revision as of 14:49, 25 March 2014


Server admin / host can customize multiplayer missions in ROLE ASSIGNMENT menu using parameters prepared by the mission designer.

Manual Params

Params are defined in description.ext.

class Params
{
	class AISkill
	{
		title = "AI Skill"; // Param name visible in the list
		values[] = {0.2,0.6,1}; // Description of each selectable item
		texts[] = {"Recruit","Regular","Veteran"}; // Item values, can be only integers; the array has to have the same number of elements as 'texts'
		default = 0.6; // Default value; must be listed in 'values' array, otherwise 0 is used
	};
	class Daytime
	{
		title = "Time";
		texts[] = {"Morning","Day","Evening","Night"};
		values[] = {6,12,18,0};
		default = 12;
		function = "BIS_fnc_paramDaytime"; // (Optional) Function called upon mission start, selected value is passed as an argument
	};
	class ViewDistance
	{
		title = "View distance (in metres)";
		values[] = {500,1000,2000,5000};
		// When 'texts' are missing, values will be displayed directly instead
		default = 1000;
		file = "setViewDistance.sqf"; // (Optional) Script called upon mission start, selected value is passed as an argument
	};
};

Selected values are stored in paramsArray array, accessible anytime during the mission on any connected computer. Their order is the same as is in description.cfg (for example, params above would result in [12,1] if default values were kept).

Example (can be used in init.sqf):

if (isServer) then {
	_skill = paramsArray select 0;
	{
		_x setSkill _skill;
	} forEach allUnits;
};

setViewDistance.sqf:

setViewDistance (_this select 0);


Predefined Params

Arma 3 introduces a framework for defining commonly used params (e.g., time of the day or mission duration), which can be shared across multiple missions. Once included to description.ext, they will initialize automatically. Some of them can be further customized using specific macros.

class Params
{
	#include "\a3\functions_f\Params\paramWeather.hpp"

	#define TICKETS_DEFAULT 600
	#include "\a3\functions_f\Params\paramRespawnTickets.hpp"
};

Available Templates

File Description Optional variables
\a3\functions_f\Params\paramCountdown.hpp Set missiong countdown (in seconds)
#define COUNTDOWN_MIN		600
#define COUNTDOWN_MAX		3600
#define COUNTDOWN_DEFAULT	-1
\a3\functions_f\Params\paramDaytimeHour.hpp
#define DAYTIMEHOUR_DEFAULT	19
\a3\functions_f\Params\paramDaytimePeriod.hpp
#define DAYTIMEPERIOD_DEFAULT	12
\a3\functions_f\Params\paramGuerFriendly.hpp
#define GUERFRIENDLY_DEFAULT	-1
\a3\functions_f\Params\paramRespawnTickets.hpp Set respawn tickets for all sides
#define TICKETS_MIN	100
#define TICKETS_MAX	1100
#define TICKETS_DEFAULT	-1
\a3\functions_f\Params\paramWeather.hpp
#define WEATHER_DEFAULT	40