serverCommand: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(new behaviour is different need to specify version because of that)
mNo edit summary
 
(72 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


| arma2 |= Game name
|game1= arma2
|version1= 1.05


|1.05|= Game version
|game2= arma2oa
____________________________________________________________________________________________
|version2= 1.50


| Executes [[Multiplayer_Server_Commands|a server command]] on the server. In order to be able to execute admin command the user must be logged in as admin. Commands available for non-admin users are: #login, #vote and #userlist. Which command is available can be detected with [[serverCommandAvailable]] and whether or not it can be executed with [[serverCommandExecutable]].<br><br>'''NOTE:''' This command must be executed from UI event handler ([[ctrlAddEventHandler]], [[displayAddEventHandler]]), such as ''onButtonDown'' or other [[User_Interface_Event_Handlers]].
|game3= tkoh
<br><br>As of Arma 3 v1.39 [[serverCommand]] can be used on dedicated server and headless clients. This requires a password, both set in [[server.cfg]] and passed to the command itself. |= Description
|version3= 1.00
____________________________________________________________________________________________


| '''serverCommand''' command |= Syntax
|game4= arma3
|version4= 0.50


|p1= command : [[String]] |= Parameter 1
|gr1= Multiplayer


| [[Boolean]] - always [[true]] for some reason (since A3 v1.39 also [[false]] if a non valid command is used ("#blah")) |= Return value
|descr= Executes the given [[Multiplayer_Server_Commands|server command]].
____________________________________________________________________________________________
{{Feature|informative|
* Available commands for execution can be found with [[serverCommandAvailable]]
* Commands that can be executed can be found with [[serverCommandExecutable]]
}}
 
{{Feature|important|If [[serverCommand]] is executed on a client, it must be executed from [[isUIContext|UI context]], such as [[User Interface Event Handlers#onButtonDown|"onButtonDown"]] or similar events (see [[User Interface Event Handlers]]).}}
 
|s1= [[serverCommand]] command
 
|p1= command : [[String]]
 
|r1= [[Boolean]] - [[false]] if a non valid command is used ("#blah"), false otherwise (was always [[true]] before {{GVI|arma3|1.40|size= 0.75}})
 
|s2= password [[serverCommand]] command
|s2exec= server
 
|s2since= arma3 1.40
 
|p21= password : [[String]] - case-sensitive password defined in [[server.cfg]] with {{hl|serverCommandPassword}} param
 
|p22= command : [[String]] - server command


| s2= password '''serverCommand''' command &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;''(since Arma 3 v1.39)''|= Syntax
|r2= [[Boolean]] - [[false]] if command failed at some stage. [[true]] doesn't mean that command succeeded.


|p21= password : [[String]] - password defined in [[server.cfg]] with ''serverCommandPassword'' param |= Parameter 1
|x1= <sqf>serverCommand "#logout";</sqf>
|p22= command : [[String]] |= Parameter 2


| r2= [[Boolean]] - [[true]] if password is correct |= Return value
|x2= Create button on the main map which will show userlist to anyone who clicks on it:
__________________________________________________________________
<sqf>with uiNamespace do
{
private _ctrl = findDisplay 12 ctrlCreate ["RscButton", -1];
_ctrl ctrlSetPosition [0,0,0.5,0.1];
_ctrl ctrlSetText "USERLIST";
_ctrl ctrlCommit 0;
_ctrl ctrlAddEventHandler ["ButtonDown",
{
serverCommand "#userlist";
}];
};</sqf>


|x1 = <code>[[serverCommand]] "#logout";</code>
|x3= <sqf>serverCommand format ["#kick %1",_name];</sqf>
|x2 = Create button on the main map which will show userlist to anyone who clicks on it:
<code>[[with]] [[uiNamespace]] [[do]] {
ctrl = [[findDisplay]] 12 [[ctrlCreate]] ["RscButton", -1];
ctrl [[ctrlSetPosition]] [0,0,0.5,0.1];
ctrl [[ctrlSetText]] "USERLIST";
ctrl [[ctrlCommit]] 0;
ctrl [[ctrlAddEventHandler]] [
"ButtonDown",
{[[serverCommand]] "#userlist"}
];
};</code>
|x3 = <code>[[serverCommand]] [[format]] ["#kick %1",_name];</code>


| [[serverCommandAvailable]], [[serverCommandExecutable]] |= See also
|x4= <sqf>private _passwordWasOK = "MyServerCommandPassword" serverCommand "#lock";</sqf>


|seealso= [[serverCommandAvailable]] [[serverCommandExecutable]] [[admin]] [[isUIContext]]
}}
}}


<h3 style="display:none">Notes</h3>
<dl class="command_description">
</dl>


<h3 style="display:none">Bottom Section</h3>
[[Category:Scripting Commands: Server Execution]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
[[Category:Introduced with Arma 3 version 1.40]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
[[Category:ArmA 2: New Scripting Commands List|{{uc:{{PAGENAME}}}}]]

Latest revision as of 14:09, 27 November 2023

Hover & click on the images for description

Description

Description:
Executes the given server command.
If serverCommand is executed on a client, it must be executed from UI context, such as "onButtonDown" or similar events (see User Interface Event Handlers).
Groups:
Multiplayer

Syntax

Syntax:
serverCommand command
Parameters:
command : String
Return Value:
Boolean - false if a non valid command is used ("#blah"), false otherwise (was always true before Arma 3 logo black.png1.40)

Alternative Syntax

Syntax:
password serverCommand command
Parameters:
password : String - case-sensitive password defined in server.cfg with serverCommandPassword param
command : String - server command
Return Value:
Boolean - false if command failed at some stage. true doesn't mean that command succeeded.

Examples

Example 1:
serverCommand "#logout";
Example 2:
Create button on the main map which will show userlist to anyone who clicks on it:
with uiNamespace do { private _ctrl = findDisplay 12 ctrlCreate ["RscButton", -1]; _ctrl ctrlSetPosition [0,0,0.5,0.1]; _ctrl ctrlSetText "USERLIST"; _ctrl ctrlCommit 0; _ctrl ctrlAddEventHandler ["ButtonDown", { serverCommand "#userlist"; }]; };
Example 3:
serverCommand format ["#kick %1",_name];
Example 4:
private _passwordWasOK = "MyServerCommandPassword" serverCommand "#lock";

Additional Information

See also:
serverCommandAvailable serverCommandExecutable admin isUIContext

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