Difference between revisions of "Admin Features"

From Holdfast: Nations At War
Jump to navigation Jump to search
 
(26 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
 
== Ray-Gun System ==
 
== Ray-Gun System ==
When logged in as admin, you can access the ray gun by looking (in free roam or spawned in) at a player and hitting Alt + Q. If a player is found in the direction you are looking, then the player information panel will open up giving fast access to message, revive, slay and slap. These can be accessed via the number keys (1,2,3,4).
+
When logged in as admin, any player you are aiming at should have their name highlighted in green. If you open the Round Players Panel while a player is highlighted (default "P" keybind) that player will be automatically selected for quick admin action access. Common actions also have their own hotkey shortcuts for even quicker access:  
 
 
== Artillery Priority System ==
 
 
 
This panel allows admins to see who has claimed artillery pieces. Artillery can only be claimed by a cannoneer or a sapper. This can be disabled by:<pre>
 
mod_variable autoadmin:ArtilleryPrioritySystemEnabled:false
 
</pre>
 
 
 
== Fire Out Of Line ==
 
Fire Out Of Line only allows shooting firearms while players are within a line. To enable it, use: <pre>fol_enabled true</pre>
 
 
 
mod_variable autoadmin:ClassName:<Layer>,<SafeZone>,<ChainZone>,<OtherPlayersNeeded>
 
</pre>
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
!Variable Name
+
!Number Key
!Description
+
!Action
!Examples
+
|-
 +
|1
 +
|Private Message
 +
|-
 +
|2
 +
|Slay
 +
|-
 +
|3
 +
|Revive
 +
|-
 +
|4
 +
|Slap
 
|-
 
|-
|ClassName
+
|5
|[https://wiki.holdfastgame.com/Server_Configuration_Enums#Class Class Name enum]
+
|Heal
|
 
* ArmyInfantryOfficer
 
* Guard
 
 
|-
 
|-
|Layer
+
|6
|The layer that will be checked. Each class can have multiple layers that get checked
+
|Bring
|
 
* Player
 
* Arty
 
* Cav
 
 
|-
 
|-
|SafeZone
+
|7
|The distance (in meters) that will players must be inside to allow the player to shoot
+
|Go To
|1.13 (m)
 
 
|-
 
|-
|ChainZone
+
|8
|If the minimum number of players needed is not in the safe zone, then this distance will be used to check if a player is valid via chaining. This is used for players on the "edge" of lines. Recommend making it 1m bigger than the safe zone.
+
|Temp Voip Mute
|2.13 (m)
 
 
|-
 
|-
|Other Players Needed
+
|9
|The minimum number of players (other than the player shooting) needed inside the safe zone for a valid FOL
+
|Temp Chat Mute
|2
 
 
|}
 
|}
 +
When the dialog box is open after pressing an admin action key, you can press the "Enter" key for quick confirmation. 
 +
 +
You can toggle the admin ray-gun system between "Always On", "Freeflight Only", and "Off" modes via a button at the bottom of the Round Players Panel.   
 +
 +
== Fire Out of Line ==
  
Below is an example of allowing Surgeons to Skirm<pre>
+
Fire Out of Line (FOL) only allows shooting firearms while players are within a line. To enable it, use: <pre>fol_enabled true</pre>
mod_variable AutoAdmin:Surgeon:Player,5,6,1
 
  
</pre>Below is an example of allowing Guards to Skirm around a cannon, while only allowing them to shoot in line when no cannon is near. <pre>
+
There are 4 different settings that you can set either globally or per player class.
mod_variable autoadmin:Guard:Player,1.13,2.13,2
 
mod_variable autoadmin:Guard:Arty,15,20,1
 
</pre>Below is an example of allowing Carpenters to fire only in line, skirm around a cannon and fire on horseback.<pre>
 
mod_variable autoadmin:Carpenter:Player,1.13,2.13,2
 
mod_variable autoadmin:Carpenter:Arty,15,20,1
 
mod_variable autoadmin:Carpenter:Cav,15,20,1
 
</pre>
 
  
If a casualty occurs in the line, a “ghost” collider is placed where the player died. This will prevent people from being called out for FOL due to a casualty. The time the ghost exists for can be changed by the variable “timeToExist” (in seconds).
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
!Variable Name
+
 
 +
!Setting Name
 
!Description
 
!Description
!Argument
+
!Default Value
!Default
+
|-
 +
|radius
 +
|The farthest distance (in metres) a player can be from a player line in order to be considered part of the line.
 +
|1.5 (m)
 +
 
 +
|-
 +
|mounted_radius
 +
|Same as "radius" but only relevant while the player is mounted on a horse.
 +
|25 (m)
 +
|-
 +
|artillery_radius
 +
|If a player is within this distance to an artillery piece, they can fire even if not within a line.
 +
|0 (disabled)
 
|-
 
|-
|timeToExist
+
|players_needed
|The time in seconds that a player is still considered valid after being killed.  
+
|The minimum number of players needed - including the local player - to form a valid line.
|float
+
|3
|1 (s)
+
|}
|}  
 
  
== All Charge ==
+
Some classes have specific default value overrides, listed here:
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
!Config Command
+
!Class
!Description
+
!Setting
!Arguments
+
!Override Value
!Default
 
 
|-
 
|-
|allChargeVisableWarning
+
|Light Infantry
|The amount warning time given to players before an all charge. Eg if an all charge would be triggered for 10:00, then a 30 second warning means the broadcast will occur at 10:30 letting them know.
+
|radius
|int
+
|5
|30 (s)
 
 
|-
 
|-
|allChargeTimeTrigger
+
|Rifleman
|In an all charge mode which considers time, when this time is reached, all charge will be called. Eg setting it to 600 will call all charge at 10:00.
+
|radius
|int
+
|5
|360 (s)
 
 
|-
 
|-
|allChargeTriggerDelay
+
|Cannoneer
|The time between a percentage-based trigger and when its called. Eg the percentage-based trigger is met at 11:00, the game will then wait this time before announcing all charge. Eg 11:00 trigger, 10:30 announcement, 10:00 activation.
+
|artillery_radius
|int
+
|15
|30 (s)
 
 
|-
 
|-
|minimumNumbersOfPlayers
+
|Rocketeer
|Minimum number of players on the server to trigger a percentage based all charge.
+
|artillery_radius
|int
 
 
|15
 
|15
 
|-
 
|-
|allChargeMinPercentageAlive
+
|Sapper
|When the round goes below this value of current players alive compared to the amount spawned, then an all charge will be called if using a percentage based automatic all charge trigger
+
|artillery_radius
|float
+
|15
|0.52
 
|-
 
|allChargeMessage
 
|The message sent when calling an all charge
 
|string
 
|All charge! Cavalry dismount. Weapon and Artillery Firing is disabled!
 
 
|}
 
|}
  
 +
To override the defaults for all classes with your own values, you can use the following command. Note that this will not affect classes that have a default override for that setting i.e. the ones listed in the table above.<pre>fol_default <FOLSettingName> <value></pre>
 +
 +
You can also override any default value for any specific class using this command. This will also override any class default override values listed above.<pre>fol_class <PlayerClass> <FOLSettingName> <value></pre>
 +
 +
When a player dies, a temporary "ghost" will spawn in their place so that the line doesn't immediately break. The default ghost lifetime is 3 seconds. You can change this via this command:<pre>fol_ghost_duration <value></pre>
 +
 +
If a player fires out of line, they will be blocked from firing again for a default duration of 2 seconds. You can change this value via this command:<pre>fol_fire_block_duration <value></pre>
 +
 +
You can also punish players that fire out of line with automatically applied slap damage. You can do this via this command, which is set to 0 by default:<pre>fol_slap_damage <value></pre>
 +
 +
Players will be notified when firing out of line. There are 2 possible notifications that depend on the maximum radius value of the player class. The 2 notifications are as follows:
 +
 +
# "Firing out of line! Make sure you're shoulder to shoulder when firing."
 +
# "Skirmish order! Make sure you’re closer to other units when firing."
 +
 +
By default, the first notification will be shown if the radius is 3m or less. Otherwise, the second notification will be shown. You can change this distance threshold value via this command:<pre>fol_skirmish_distance_threshold <value></pre>
 +
 +
'''Example:'''<pre>fol_enabled true
 +
fol_slap_damage 50
 +
fol_fire_block_duration 5
 +
fol_ghost_duration 4
 +
fol_default players_needed 5
 +
fol_default radius 2
 +
fol_class rifleman radius 10
 +
fol_class lightinfantry players_needed 2
 +
fol_class lightinfantry artillery_radius 10</pre>For a rotation containing FOL commands as in the example above:
 +
 +
* If a player fires out of line, he will take 50 slap damage and he will also be blocked from firing again for 5 seconds.
 +
* If a player dies, his ghost will still form part of a valid line for 4 seconds after death.
 +
* By default, for a line to be valid it will need to contain a minimum of 5 players.
 +
* By default, a player will need to be at most 2m away from another player that is part of a line to also form part that line.
 +
* Riflemen can be 10m away from a line of players to be able to shoot, instead of just 2m. However, if they are more than 2m away from their line, they will not be counted as part of a line for other players.
 +
* Light infantry will be able to shoot if they are part of a line that contains just 2 players, i.e. they just have to be next to 1 other player. However, if the line contains less than 5 players, any other non-light infantry players in the line will not be able to shoot.
 +
* If a light infantry is within 10m distance from an artillery piece, they will be able to shoot even if they are not part of any line.
 +
 +
== All Charge ==
 +
When All Charge is activated, firing is restricted. It can be enabled at any time via the RC command:<pre>rc ac <delay></pre>(inputting no delay parameter defaults to a value of 0)
 +
 +
A delay value of 0 triggers an All Charge immediately.
 +
 +
A delay value of -1 cancels any active or pending All Charge.
 +
 +
 +
You can also have All Charge trigger automatically by setting the auto trigger mode. There are 4 different modes.
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
!Mode
+
!Mode Name
 
!Description
 
!Description
 
|-
 
|-
|None
+
|none
|Auto admin will not call all charge automatically (default state).
+
|Auto trigger system disabled.
 
|-
 
|-
|TimeOnly
+
|time_only
|When the time set in allChargeTimeTrigger is reached, all charge will be called. Will give a warning in advance up to the number of seconds set in allChargeVisableWarningTime
+
|All Charge will trigger at a set round time.
 
|-
 
|-
|PercentageOnly
+
|percent_only
|When the number of players alive on the server is lower than this percentage, all charge will be called. Must have at least minimumNumbersOfPlayers connected to the server or will not call all charge.
+
|All Charge will trigger after the percentage players left alive is equal or lower than the set value (only applies to game modes with a round spawn close time).
 
|-
 
|-
|TimePercentageConstant
+
|percent_or_time
|Will have percentage and time conditions. If either condition are met will call all charge. Therefore will use percentage based unless the round goes on for a while where it will call it based on time. This is recommended setting for automatic all charge.  
+
|All Charge will trigger when either the time condition or the percent condition is met, whichever becomes true first.
 
|}
 
|}
 
+
To set the Auto Trigger Mode, use:<pre>all_charge_auto_trigger_mode <AutoTriggerMode></pre>
== Artillery Settings ==
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
 +
Other All Charge Commands
 
!Config Command
 
!Config Command
 
!Description
 
!Description
!Arguments
+
!Argument
!Default
+
|-
 +
|all_charge_trigger_delay
 +
|If set, players will be notified about any scheduled all charge this amount of seconds before the time trigger.
 +
|float (s)
 +
|-
 +
|all_charge_time_trigger
 +
|Sets the round time value for the auto trigger system.
 +
|float (s)
 
|-
 
|-
|ArtilleryLiveTimer
+
|all_charge_percent_players_trigger
|If set, then will automatically enable artillery firing at this time (in seconds). This is easier than manually putting "rc delayed XX set allowArtyFiring" in your config for every rotation.
+
|Sets the percent value for the auto trigger system.
 +
|float (0-1 range)
 +
|-
 +
|all_charge_percent_trigger_min_players_needed
 +
|The percent trigger will only activate if the round started with a minimum of this number of players.
 
|int
 
|int
| -1
 
 
|-
 
|-
|ArtyOnArtyTime
+
|all_charge_block_pistol_fire
|The time (in seconds) for when Arty on Arty is live. If an Arty on Arty shot is detected before this time, a broadcast message will be posted notifying the admin who shot the cannon.
+
|Sets whether to block pistol fire during All Charge.
|int
+
|bool
|3600
 
 
|-
 
|-
|ArtilleryPrioritySystemEnabled
+
|all_charge_block_artillery_fire
|Determines if the game will record and show via the F5 menu who claimed an artillery piece first. Most useful public servers.  
+
|Sets whether to block artillery fire during All Charge.
 
|bool
 
|bool
|true
 
 
|-
 
|-
|CannonClaimedMessage
+
|all_charge_slow_cavalry
|This is the message messaged to players after they claim an artillery piece
+
|Sets whether cavalry should be restricted to a slow speed during All Charge.
|string
+
|bool
|You have claimed the Artillery piece and have priority while you remain using it. If someone else takes control of it, then type in recruitment chat to notify an admin
 
 
|}
 
|}
 +
 +
P.S. If All Charge is triggered by an automatic time trigger, players will be notified at round time of [all_charge_time_trigger] + [all_charge_trigger_delay]. Then All Charge will be enabled at round time of [all_charge_time_trigger].
 +
 +
However, if All Charge is triggered by an automatic percentage trigger, players will be notified at the exact time when the percentage threshold is met, and then All Charge will be enabled [all_charge_trigger_delay] seconds later.
 +
'''Example:'''<pre>all_charge_auto_trigger_mode time_only
 +
all_charge_time_trigger 300
 +
all_charge_trigger_delay 30
 +
all_charge_block_pistol_fire false</pre>For a rotation containing all charge commands as in the example above, at time 5:30, all players will be notified that All Charge will activate at 5:00. Then at 5:00 All Charge will become active, but pistols will still be usable.
 +
 +
==Artillery Settings==
 +
The first cannoneer or rocketeer to use an artillery piece in a round gets listed as the claimant of that piece in the Artillery Priority Panel. If the same player claims another artillery piece, then the first claim will get revoked. Notifications will be sent to both the claimant player and any player who tries to use an artillery piece that is already claimed, if enabled via this config command:<pre>arty_claiming_notifications true</pre>
 +
{| class="wikitable"
 +
|+Other Artillery Commands
 +
!Config Command
 +
!Description
 +
|-
 +
|arty_firing_start_time
 +
|Disables artillery firing until the set time in seconds has passed.
 +
|-
 +
|arty_on_arty_start_time
 +
|Disables artillery fire damaging other artillery pieces until the set time in seconds has passed.
 +
|}
 +
 +
== Map Rotations Panel ==
 +
The map rotations panel shows a list of all rotations in the server config. You can rotate to any map and can even choose to load a rotation with different factions than those set in the config file.
 +
 +
Mod map names will be listed as "Custom Mod Map" by default. However, you can set a custom name for rotations that use mod maps in the server config file by using the below command.
 +
 +
With the release of the 'Field Orders' update you're now similarly able to override the name of official maps.<pre>map_name_override <name></pre>

Latest revision as of 09:00, 21 November 2024

Unless stated otherwise, all server config commands listed in this page are global rotation commands, which means that they can either be placed inside a map rotation to apply to that rotation only, or else before the map rotations section to apply to all map rotations.

Ray-Gun System

When logged in as admin, any player you are aiming at should have their name highlighted in green. If you open the Round Players Panel while a player is highlighted (default "P" keybind) that player will be automatically selected for quick admin action access. Common actions also have their own hotkey shortcuts for even quicker access:

Number Key Action
1 Private Message
2 Slay
3 Revive
4 Slap
5 Heal
6 Bring
7 Go To
8 Temp Voip Mute
9 Temp Chat Mute

When the dialog box is open after pressing an admin action key, you can press the "Enter" key for quick confirmation.

You can toggle the admin ray-gun system between "Always On", "Freeflight Only", and "Off" modes via a button at the bottom of the Round Players Panel.

Fire Out of Line

Fire Out of Line (FOL) only allows shooting firearms while players are within a line. To enable it, use:

fol_enabled true

There are 4 different settings that you can set either globally or per player class.

Setting Name Description Default Value
radius The farthest distance (in metres) a player can be from a player line in order to be considered part of the line. 1.5 (m)
mounted_radius Same as "radius" but only relevant while the player is mounted on a horse. 25 (m)
artillery_radius If a player is within this distance to an artillery piece, they can fire even if not within a line. 0 (disabled)
players_needed The minimum number of players needed - including the local player - to form a valid line. 3

Some classes have specific default value overrides, listed here:

Class Setting Override Value
Light Infantry radius 5
Rifleman radius 5
Cannoneer artillery_radius 15
Rocketeer artillery_radius 15
Sapper artillery_radius 15

To override the defaults for all classes with your own values, you can use the following command. Note that this will not affect classes that have a default override for that setting i.e. the ones listed in the table above.

fol_default <FOLSettingName> <value>

You can also override any default value for any specific class using this command. This will also override any class default override values listed above.

fol_class <PlayerClass> <FOLSettingName> <value>

When a player dies, a temporary "ghost" will spawn in their place so that the line doesn't immediately break. The default ghost lifetime is 3 seconds. You can change this via this command:

fol_ghost_duration <value>

If a player fires out of line, they will be blocked from firing again for a default duration of 2 seconds. You can change this value via this command:

fol_fire_block_duration <value>

You can also punish players that fire out of line with automatically applied slap damage. You can do this via this command, which is set to 0 by default:

fol_slap_damage <value>

Players will be notified when firing out of line. There are 2 possible notifications that depend on the maximum radius value of the player class. The 2 notifications are as follows:

  1. "Firing out of line! Make sure you're shoulder to shoulder when firing."
  2. "Skirmish order! Make sure you’re closer to other units when firing."

By default, the first notification will be shown if the radius is 3m or less. Otherwise, the second notification will be shown. You can change this distance threshold value via this command:

fol_skirmish_distance_threshold <value>

Example:

fol_enabled true
fol_slap_damage 50
fol_fire_block_duration 5
fol_ghost_duration 4
fol_default players_needed 5
fol_default radius 2
fol_class rifleman radius 10
fol_class lightinfantry players_needed 2
fol_class lightinfantry artillery_radius 10

For a rotation containing FOL commands as in the example above:

  • If a player fires out of line, he will take 50 slap damage and he will also be blocked from firing again for 5 seconds.
  • If a player dies, his ghost will still form part of a valid line for 4 seconds after death.
  • By default, for a line to be valid it will need to contain a minimum of 5 players.
  • By default, a player will need to be at most 2m away from another player that is part of a line to also form part that line.
  • Riflemen can be 10m away from a line of players to be able to shoot, instead of just 2m. However, if they are more than 2m away from their line, they will not be counted as part of a line for other players.
  • Light infantry will be able to shoot if they are part of a line that contains just 2 players, i.e. they just have to be next to 1 other player. However, if the line contains less than 5 players, any other non-light infantry players in the line will not be able to shoot.
  • If a light infantry is within 10m distance from an artillery piece, they will be able to shoot even if they are not part of any line.

All Charge

When All Charge is activated, firing is restricted. It can be enabled at any time via the RC command:

rc ac <delay>

(inputting no delay parameter defaults to a value of 0)

A delay value of 0 triggers an All Charge immediately.

A delay value of -1 cancels any active or pending All Charge.


You can also have All Charge trigger automatically by setting the auto trigger mode. There are 4 different modes.

Mode Name Description
none Auto trigger system disabled.
time_only All Charge will trigger at a set round time.
percent_only All Charge will trigger after the percentage players left alive is equal or lower than the set value (only applies to game modes with a round spawn close time).
percent_or_time All Charge will trigger when either the time condition or the percent condition is met, whichever becomes true first.

To set the Auto Trigger Mode, use:

all_charge_auto_trigger_mode <AutoTriggerMode>
Other All Charge Commands
Config Command Description Argument
all_charge_trigger_delay If set, players will be notified about any scheduled all charge this amount of seconds before the time trigger. float (s)
all_charge_time_trigger Sets the round time value for the auto trigger system. float (s)
all_charge_percent_players_trigger Sets the percent value for the auto trigger system. float (0-1 range)
all_charge_percent_trigger_min_players_needed The percent trigger will only activate if the round started with a minimum of this number of players. int
all_charge_block_pistol_fire Sets whether to block pistol fire during All Charge. bool
all_charge_block_artillery_fire Sets whether to block artillery fire during All Charge. bool
all_charge_slow_cavalry Sets whether cavalry should be restricted to a slow speed during All Charge. bool

P.S. If All Charge is triggered by an automatic time trigger, players will be notified at round time of [all_charge_time_trigger] + [all_charge_trigger_delay]. Then All Charge will be enabled at round time of [all_charge_time_trigger].

However, if All Charge is triggered by an automatic percentage trigger, players will be notified at the exact time when the percentage threshold is met, and then All Charge will be enabled [all_charge_trigger_delay] seconds later.

Example:

all_charge_auto_trigger_mode time_only
all_charge_time_trigger 300
all_charge_trigger_delay 30
all_charge_block_pistol_fire false

For a rotation containing all charge commands as in the example above, at time 5:30, all players will be notified that All Charge will activate at 5:00. Then at 5:00 All Charge will become active, but pistols will still be usable.

Artillery Settings

The first cannoneer or rocketeer to use an artillery piece in a round gets listed as the claimant of that piece in the Artillery Priority Panel. If the same player claims another artillery piece, then the first claim will get revoked. Notifications will be sent to both the claimant player and any player who tries to use an artillery piece that is already claimed, if enabled via this config command:

arty_claiming_notifications true
Other Artillery Commands
Config Command Description
arty_firing_start_time Disables artillery firing until the set time in seconds has passed.
arty_on_arty_start_time Disables artillery fire damaging other artillery pieces until the set time in seconds has passed.

Map Rotations Panel

The map rotations panel shows a list of all rotations in the server config. You can rotate to any map and can even choose to load a rotation with different factions than those set in the config file.

Mod map names will be listed as "Custom Mod Map" by default. However, you can set a custom name for rotations that use mod maps in the server config file by using the below command.

With the release of the 'Field Orders' update you're now similarly able to override the name of official maps.

map_name_override <name>