Skip to content

Latest commit

 

History

History
81 lines (73 loc) · 5.12 KB

README.md

File metadata and controls

81 lines (73 loc) · 5.12 KB

Plugin "Admin"

This plugin supports administrative commands that are needed to operate a DCS server remotely.

Configuration

Currently, most of the configuration affecting the admin plugin. is still being done in the dcsserverbot.ini.
An exception is the .download command. You can specify, which folders / patterns you want to offer your admins to download from your server. There is a default list being loaded, if no list is provided. The format is self-explanatory.

{
  "configs": [
    {
      "downloads": [
        { "label": "DCS Logs", "directory": "%USERPROFILE%\\Saved Games\\{server.installation}\\logs", "pattern": "dcs.log*", "target": "<id:{config[ADMIN_CHANNEL]}>" },
        { "label": "DCSServerBot Logs", "directory": ".", "pattern": "dcsserverbot.log*", "target": "%USERPROFILE%\\Downloads" },
        { "label": "Missions", "directory": "%USERPROFILE%\\Saved Games\\{server.installation}\\Missions", "pattern": "*.miz" },
        { "label": "Tacview", "directory": "%USERPROFILE%\\Documents\\Tacview", "pattern": "Tacview-*.acmi", "target": "<id:12345678901234567>" },
        { "label": "Config Files", "directory": ".\\config", "pattern": "*.json" },
        { "label": "dcsserverbot.ini", "directory": ".\\config", "pattern": "dcsserverbot.ini" }
      ]
    }
  ]
}

When using the .download command, you can select which "label" you want to download.
If "target" is not provided, the file will be sent as a DM. If sending as a DM exceeds the limits of 8 MB, it tries to download to the current channel.
"target" can be anything from a file path to a channel (see example above).

Discord Commands

Command Parameter Channel Role Description
.update [-force] admin-channel DCS Admin Updates DCS World to the latest available version. -force can be used, if no update could be detected automatically.
.config admin-channel DCS Admin Configure name, description, password and num max players for your server.
.password admin-channel DCS Admin Changes the password of a DCS server.
.kick name [reason] admin-channel DCS Admin Kicks the user with the in-game name "name" from the DCS server. The "reason" will be provided to the user.
.spec name [reason] admin-channel DCS Admin Moves the user with the in-game name "name" to spectators. The "reason" will be provided to the user as a chat message.
.ban name admin-channel DCS Admin Bans a specific player by their UCID.
.unban ucid admin-channel DCS Admin Unbans a specific player by their UCID.
.bans admin-channel DCS Admin Lists the current active bans.
.download admin-channel DCS Admin Download a dcs.log, dcsserverbot.log, bot config file or a mission into a DM, path or configured channel.
.shell admin-channel Admin Runs a shell command on a specific node.

In addition, you can upload embeds to discord channels, just by using json files like this:

{
  "message_id": 967120121632006228,
  "title": "Special K successfully landed at Senaki!",
  "description": "Special K did it again and succeeded at his try to land at Senaki.",
  "img": "https://i.chzbgr.com/full/8459987200/hB315ED4E/damn-instruction-manual",
  "fields": [
    {
      "name": "Pilot",
      "value": "sexy as hell",
      "inline": true
    },
    {
      "name": "Speed",
      "value": "130 kn",
      "inline": true
    },
    {
      "name": "Wind",
      "value": "calm",
      "inline": true
    }
  ],
  "footer": "Just kidding, they forgot to put their gear down!"
}

Just upload a file with such a content and a .json extension to the channel where you want the information to be displayed (can be done by the Admin-Role only!). If you provide a valid message_id, the message will be updated.

Config File Uploads

Every config file that either the bot uses for itself (dcsserverbot.ini) or the different plugins use (.json) can be uploaded in the admin channels by a user belonging to the Admin group. The files will be replaced, the dedicated plugin will be reloaded or the bot will be restarted (security question applies), if you update the dcsserverbot.ini. All changes will happen on the bot that is controlling the server of that admin channel!