CounterStrikeSharpサーバーで管理者になる方法
CounterStrikeSharpのプラグインにあるキック、BAN、マップ変更などの管理コマンドは、適切な権限フラグを持つプレイヤーだけが使えます。権限はサーバー上のいくつかのJSONファイルに保存されています。3つのファイルの役割がわかれば、自分や友人に管理者権限を付与するのに2分ほどしかかかりません。
configsフォルダーを探す
サーバー上のaddons/counterstrikesharp/configsを開きます。重要なファイルは3つです。admins.jsonは人物とその権限を一覧にしたもの、admin_groups.jsonは再利用できる権限グループの定義、admin_overrides.jsonは特定のコマンドが要求する権限を変更するためのものです。
自分のSteamID64を調べる
管理者リストは、Steamアカウントでユーザーを識別します。いちばん簡単なのは、7656119で始まる17桁の数字であるSteamID64です。SteamプロフィールのURLを、SteamID検索サイトに貼り付けると確認できます。古い形式のSTEAM_0:X:Yも使えます。
フルアクセス権限で自分を追加する
admins.jsonを開き、名前、SteamID、付与したいフラグを書いたエントリーを追加します。@css/rootはすべての操作を許可するフラグなので、自分自身と、完全に信頼できる人にだけ付与してください。
{
"MyName": {
"identity": "76561198000000001",
"flags": ["@css/root"]
}
}
フラグは必ず@で始める
フラグは@css/kickのように、先頭に@を付けて書きます。@のないフラグは認識されず、エラーも目立った形では出ないまま、権限が付与されません。よく使うのは、基本的な管理コマンド用の@css/generic、@css/kick、@css/ban、@css/changemap、@css/vip、@css/rootです。
複数の管理者にはグループを使う
同じ権限を持つ管理者が複数いる場合は、admin_groups.jsonで権限を1回だけ定義し、admins.jsonからそのグループを参照します。グループ名は#で始めます。あとでグループを変更すると、そのグループを使っているすべての管理者に反映されます。
{
"#css/simple-admin": {
"flags": ["@css/generic", "@css/kick", "@css/ban"]
}
}
{
"MyName": {
"identity": "76561198000000001",
"groups": ["#css/simple-admin"]
}
}
overridesで細かく調整する
admin_overrides.jsonを使うと、プラグインに手を加えずに、コマンドが要求するフラグを変更できます。たとえば、通常は@css/banが必要なコマンドを、@css/kickを持つ人も使えるようにする、といった設定ができます。必須ではなく、まったく必要としないサーバーも多くあります。
うまくいかないとき
ファイルを編集したらサーバーを再起動し、起動時のコンソールにJSONエラーが出ていないか確認します。そのうえでサーバーに入り、フラグが必要なコマンドを試してください。よくある原因は、SteamIDの間違い、@のないフラグ、JSONの構文ミス、別のフォルダーにあるファイルのコピーを編集していたことです。
開発者向け:自作コマンドを保護する
プラグインを書く場合、フラグを手作業で確認する必要はありません。コマンドのメソッドの上にRequiresPermissions属性を付けると、そのフラグを持たない人のコマンドをCounterStrikeSharpが自動的に拒否します。
[RequiresPermissions("@css/kick")]
public void OnKickCommand(CCSPlayerController? player, CommandInfo commandInfo)
{
// ...
}
このチュートリアルは役に立ちましたか?
Barlap コミュニティのために。