Difference between revisions of "Auto Admin"

From Holdfast: Nations At War
Jump to navigation Jump to search
m
m (Capitalization)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
[Testing here since the steam page keeps deleting my link to google doc]
+
This page refers to a community made workshop mod created by [[User:Elf]] . For support using the mod, you can request support on the [https://discord.com/invite/holdfastgame official holdfast discord] in #Server-Owners.
 
 
This page refers to a community made workshop mod created by [[User:Elf]] . For support using the mod, you can request support on the [https://discord.com/invite/holdfastgame official holdfast discord] in #Server-Owners.  
 
  
 
== Installing the Mod ==
 
== Installing the Mod ==
Line 14: Line 12:
  
 
== Configuration ==
 
== Configuration ==
[test]
+
Many settings used can be modified via the server configuration file. These changes can either be global to all map rotations or local to a single map rotation.
 +
 +
=== Global vs Local Changes ===
 +
Global changes should be put at the top of the config and not in a map rotation. These will apply to all rotations. Use the format:<pre>
 +
mod_variable autoadmin:<command Name>:<value>
 +
</pre>Local changes will apply only to the specific map rotation that they are put in. They MUST be put inside a map rotation. Use the format<pre>
 +
mod_variable_local autoadmin:<command Name>:<value>
 +
</pre>
 +
 
 +
== UI Panels ==
 +
 
 +
=== 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).
 +
 
 +
[[File:Autoadmin raygun.jpg|thumb|RayGun panel opened via Alt + Q.|alt=|border|left]]
 +
[[File:Autoadmin raygunpunishment.jpg|thumb|Punishment Panel. You can select presets via Alt + number|alt=|none]]in the punishment panel, players can quick select preset messages via Alt + number. (Alt + 1, Alt + 2 etc).
 +
 
 +
=== Quick Access Panel ===
 +
The quick access panel (open with F5) allows for easy access to common commands. Admins can use it to call all charge, end the round, set weather, broadcast messages and create polls.
 +
[[File:Autoadmin quickaccess.jpg|border|none|thumb|Quick Access panel opened with  F5]]
 +
 
 +
=== Map Rotations Panel ===
 +
 
 +
By default , this panel will show those used in the public linebattle. These can be changed via the config by the command:<pre>
 +
mod_variable autoadmin:AddMapRotation:ModdedMapExample,ArmyAssault,French,British
 +
mod_variable autoadmin:AddMapRotation:Egypt,ArmyAssault,French,British
 +
</pre>Using this panel, you can easily override a config or rotate to a specific config.
 +
[[File:Autoadmin mapRotations.jpg|border|none|thumb]]
 +
 
 +
=== Kill Log Panel ===
 +
This panel allows admins to see recent kills from each team and quickly slay or revive players.
 +
[[File:Autoadmin killlog.jpg|none|thumb]]
 +
 
 +
=== Artillery Priority Panel ===
 +
 
 +
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>
 +
[[File:Autoadmin artyclaim.jpg|none|thumb]]
  
 
== Player FOL ==
 
== Player FOL ==
[test]
+
All classes in the game have customisable settings. These can be changed by the command
 +
 
 +
=== Prevent Illegal Shooting ===
 +
By default the autoadmin will prevent any player from shooting if they are not in spacing. This can be disabled by the following:<pre>
 +
mod_variable autoadmin:preventIllegalShooting:false
 +
</pre>
 +
 
 +
=== Class Settings for FOL ===
 +
<pre>
 +
mod_variable autoadmin:ClassName:<Layer>,<SafeZone>,<ChainZone>,<OtherPlayersNeeded>
 +
</pre>
 +
{| class="wikitable"
 +
|+
 +
!Variable Name
 +
!Description
 +
!Examples
 +
|-
 +
|ClassName
 +
|[https://wiki.holdfastgame.com/Server_Configuration_Enums#Class Class Name enum]
 +
|
 +
* ArmyInfantryOfficer
 +
* Guard
 +
|-
 +
|Layer
 +
|The layer that will be checked. Each class can have multiple layers that get checked
 +
|
 +
* Player
 +
* Arty
 +
* Cav
 +
|-
 +
|SafeZone
 +
|The distance (in meters) that will players must be inside to allow the player to shoot
 +
|1.13 (m)
 +
|-
 +
|ChainZone
 +
|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.
 +
|2.13 (m)
 +
|-
 +
|Other Players Needed
 +
|The minimum number of players (other than the player shooting) needed inside the safe zone for a valid FOL
 +
|2
 +
|}
 +
 
 +
=== Example ===
 +
Below is an example of allowing Surgeons to Skirm<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>
 +
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>
 +
 
 +
 
 +
The AutoAdmin will default having all classes following player based FOL apart from Light Infantry and rifles being allowed to Skirm in 5m range. Cannoneers and Sappers being able to skirm around a cannon in 15m range. Hussars and Dragoons being able to fire on horseback in 25m range.
 +
 +
=== Ghost System ===
 +
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"
 +
|+
 +
!Variable Name
 +
!Description
 +
!Argument
 +
!Default
 +
|-
 +
|timeToExist
 +
|The time in seconds that a player is still considered valid after being killed.
 +
|float
 +
|1 (s)
 +
|}
  
 
== All Charge System ==
 
== All Charge System ==
Line 30: Line 138:
 
|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.  
 
|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.  
 
|int
 
|int
|30
+
|30 (s)
 
|-
 
|-
 +
|allChargeTimeTrigger
 +
|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.
 +
|int
 +
|360 (s)
 +
|-
 +
|allChargeTriggerDelay
 +
|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.
 +
|int
 +
|30 (s)
 +
|-
 +
|minimumNumbersOfPlayers
 +
|Minimum number of players on the server to trigger a percentage based all charge.
 +
|int
 +
|15
 +
|-
 +
|allChargeMinPercentageAlive
 +
|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
 +
|float
 +
|0.52
 +
|-
 +
|allChargeMessage
 +
|The message sent when calling an all charge
 +
|string
 +
|All charge! Cavalry dismount. Weapon and Artillery Firing is disabled!
 +
|}
 +
 +
=== Automatic All Charge ===
 +
The autoadmin can be configured to automatically call all charge when certain conditions are met. By default the AutoAdmin will be on mode "None". This can be changed by: <pre>
 +
mod_variable autoadmin:allChargeState:<mode>
 +
</pre>
 +
{| class="wikitable"
 +
|+
 +
!Mode
 +
!Description
 +
|-
 +
|None
 +
|Auto admin will not call all charge automatically (default state).
 +
|-
 +
|TimeOnly
 +
|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
 +
|-
 +
|PercentageOnly
 +
|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.
 +
|-
 +
|TimePercentageConstant
 +
|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.
 +
|}
 +
 +
== Artillery Settings ==
 +
{| class="wikitable"
 +
|+
 +
!Config Command
 +
!Description
 +
!Arguments
 +
!Default
 +
|-
 +
|ArtilleryLiveTimer
 +
|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.
 +
|int
 +
| -1
 +
|-
 +
|ArtyOnArtyTime
 +
|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.
 +
|int
 +
|3600
 +
|-
 +
|ArtilleryPrioritySystemEnabled
 +
|Determines if the game will record and show via the F5 menu who claimed an artillery piece first. Most useful public servers.
 +
|bool
 +
|true
 +
|-
 +
|CannonClaimedMessage
 +
|This is the message messaged to players after they claim an artillery piece
 +
|string
 +
|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
 +
|}
 +
 +
== Custom Commands ==
 +
The AutoAdmin has a few custom commands added to the game to make things a little quicker for frequently used combinations. These can be found below
 +
{| class="wikitable"
 +
|+
 +
!Command
 +
!Description
 +
!Arguments
 +
|-
 +
|ac [time]
 +
|Calls all charge now, or if a time is provided then calls it in [time] seconds. All charge will disable shooting, arty, cavalry etc.
 +
|Time is an optional field
 +
|-
 +
|delay <nowiki><time> <command></nowiki>
 +
|Runs <command> in <nowiki><time> seconds. Eg rc delay 30 set characterGodMode true will run the command in 30 seconds.</nowiki>
 +
|<nowiki><time> : seconds</nowiki>
 +
<command> : string
 +
|-
 +
|hold
 +
|Pauses the round. Sets speed to 0, enables god mode. Disables firing.
 
|
 
|
 +
|-
 +
|resume
 +
|Resumes the round. Sets the speed to 1, disables god mode, enables firing.
 
|
 
|
|
 
|
 
 
|-
 
|-
|
+
|s <id>
|
+
|Slaps player with <id> for 50 damage. This is used in comp.
|
+
|<id> : player ID
|
+
|}
 +
 
 +
== Chat Filter For Admin Logs ==
 +
Admin logs by default are filtered out of the chat. These can be re-enabled by the config line:<pre>
 +
mod_variable autoadmin:ApplyAdminActionChatFilter:false
 +
</pre>
 +
 
 +
== Translation / Message Preset Variables ==
 +
The mod allows many of the Preset messages to be changed via config. These are
 +
{| class="wikitable"
 +
|+
 +
!Variable Name
 +
!Description
 +
!Default
 +
|-
 +
|allChargeMessage
 +
|Message sent when all charge is called
 +
|All charge! Cavalry dismount. Weapon and Artillery Firing is disabled!
 +
|-
 +
|allChargeAtMessage
 +
|Message sent when annoucing all charge at a specific time
 +
|All Charge at:
 +
|-
 +
|FOLWarningMessage
 +
|Message sent when a player attempts to FOL
 +
|Make sure to be shoulder to shoulder when firing
 +
|-
 +
|CannonClaimedMessage
 +
|Message sent when a player claims a cannon
 +
|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
 
|}
 
|}

Latest revision as of 10:29, 27 August 2023

This page refers to a community made workshop mod created by User:Elf . For support using the mod, you can request support on the official holdfast discord in #Server-Owners.

Installing the Mod

The mod can be found on the steam page here.

At the top of the config file insert mods_installed 2531692643 #eLF’s AutoAdmin .


Insert at the bottom of the map rotation for any maps you wish to have the mod installed load_mod 2531692643 #eLF’s AutoAdmin .

The mod should be the last non-skin mod to be installed in the map rotation otherwise will appear as an option in Map Voting.

Configuration

Many settings used can be modified via the server configuration file. These changes can either be global to all map rotations or local to a single map rotation.

Global vs Local Changes

Global changes should be put at the top of the config and not in a map rotation. These will apply to all rotations. Use the format:

mod_variable autoadmin:<command Name>:<value>

Local changes will apply only to the specific map rotation that they are put in. They MUST be put inside a map rotation. Use the format

mod_variable_local autoadmin:<command Name>:<value>

UI Panels

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).

RayGun panel opened via Alt + Q.
Punishment Panel. You can select presets via Alt + number

in the punishment panel, players can quick select preset messages via Alt + number. (Alt + 1, Alt + 2 etc).

Quick Access Panel

The quick access panel (open with F5) allows for easy access to common commands. Admins can use it to call all charge, end the round, set weather, broadcast messages and create polls.

Quick Access panel opened with F5

Map Rotations Panel

By default , this panel will show those used in the public linebattle. These can be changed via the config by the command:

mod_variable autoadmin:AddMapRotation:ModdedMapExample,ArmyAssault,French,British
mod_variable autoadmin:AddMapRotation:Egypt,ArmyAssault,French,British

Using this panel, you can easily override a config or rotate to a specific config.

Autoadmin mapRotations.jpg

Kill Log Panel

This panel allows admins to see recent kills from each team and quickly slay or revive players.

Autoadmin killlog.jpg

Artillery Priority Panel

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:

mod_variable autoadmin:ArtilleryPrioritySystemEnabled:false
Autoadmin artyclaim.jpg

Player FOL

All classes in the game have customisable settings. These can be changed by the command

Prevent Illegal Shooting

By default the autoadmin will prevent any player from shooting if they are not in spacing. This can be disabled by the following:

mod_variable autoadmin:preventIllegalShooting:false

Class Settings for FOL

mod_variable autoadmin:ClassName:<Layer>,<SafeZone>,<ChainZone>,<OtherPlayersNeeded>
Variable Name Description Examples
ClassName Class Name enum
  • ArmyInfantryOfficer
  • Guard
Layer The layer that will be checked. Each class can have multiple layers that get checked
  • Player
  • Arty
  • Cav
SafeZone The distance (in meters) that will players must be inside to allow the player to shoot 1.13 (m)
ChainZone 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. 2.13 (m)
Other Players Needed The minimum number of players (other than the player shooting) needed inside the safe zone for a valid FOL 2

Example

Below is an example of allowing Surgeons to Skirm

mod_variable AutoAdmin:Surgeon:Player,5,6,1

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.

mod_variable autoadmin:Guard:Player,1.13,2.13,2 mod_variable autoadmin:Guard:Arty,15,20,1

Below is an example of allowing Carpenters to fire only in line, skirm around a cannon and fire on horseback.

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


The AutoAdmin will default having all classes following player based FOL apart from Light Infantry and rifles being allowed to Skirm in 5m range. Cannoneers and Sappers being able to skirm around a cannon in 15m range. Hussars and Dragoons being able to fire on horseback in 25m range.

Ghost System

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).

Variable Name Description Argument Default
timeToExist The time in seconds that a player is still considered valid after being killed. float 1 (s)

All Charge System

Config Command Description Arguments Default
allChargeVisableWarning 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. int 30 (s)
allChargeTimeTrigger 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. int 360 (s)
allChargeTriggerDelay 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. int 30 (s)
minimumNumbersOfPlayers Minimum number of players on the server to trigger a percentage based all charge. int 15
allChargeMinPercentageAlive 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 float 0.52
allChargeMessage The message sent when calling an all charge string All charge! Cavalry dismount. Weapon and Artillery Firing is disabled!

Automatic All Charge

The autoadmin can be configured to automatically call all charge when certain conditions are met. By default the AutoAdmin will be on mode "None". This can be changed by:

mod_variable autoadmin:allChargeState:<mode>
Mode Description
None Auto admin will not call all charge automatically (default state).
TimeOnly 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
PercentageOnly 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.
TimePercentageConstant 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.

Artillery Settings

Config Command Description Arguments Default
ArtilleryLiveTimer 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. int -1
ArtyOnArtyTime 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. int 3600
ArtilleryPrioritySystemEnabled Determines if the game will record and show via the F5 menu who claimed an artillery piece first. Most useful public servers. bool true
CannonClaimedMessage This is the message messaged to players after they claim an artillery piece string 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

Custom Commands

The AutoAdmin has a few custom commands added to the game to make things a little quicker for frequently used combinations. These can be found below

Command Description Arguments
ac [time] Calls all charge now, or if a time is provided then calls it in [time] seconds. All charge will disable shooting, arty, cavalry etc. Time is an optional field
delay <time> <command> Runs <command> in <time> seconds. Eg rc delay 30 set characterGodMode true will run the command in 30 seconds. <time> : seconds

<command> : string

hold Pauses the round. Sets speed to 0, enables god mode. Disables firing.
resume Resumes the round. Sets the speed to 1, disables god mode, enables firing.
s <id> Slaps player with <id> for 50 damage. This is used in comp. <id> : player ID

Chat Filter For Admin Logs

Admin logs by default are filtered out of the chat. These can be re-enabled by the config line:

mod_variable autoadmin:ApplyAdminActionChatFilter:false

Translation / Message Preset Variables

The mod allows many of the Preset messages to be changed via config. These are

Variable Name Description Default
allChargeMessage Message sent when all charge is called All charge! Cavalry dismount. Weapon and Artillery Firing is disabled!
allChargeAtMessage Message sent when annoucing all charge at a specific time All Charge at:
FOLWarningMessage Message sent when a player attempts to FOL Make sure to be shoulder to shoulder when firing
CannonClaimedMessage Message sent when a player claims a cannon 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