単純な使用武器制限は簡単に設定出来ます。
SR禁止にしたい場合は、このように記述します。
On Kill; Damage SniperRifle; Kill Say No snipers on this server, %p%!!
それでは、細かく内訳を説明していきましょう。
ProconRulz ルールの基本記述
まず、ProconRulzのスクリプトの基本は以下。
トリガー + 状態 + アクション
細かな説明は省くとして、ProconRulzの基本はこれが全てです。
設定したルールを実行する為のトリガーを記述し、状態を確認、条件を満たしている場合はアクションに設定したスクリプトが実行されます。
ざっくりと設定可能な項目について述べていきますが、詳細についてはオンラインマニュアル(英語)を読み解いて下さい。
私もまだ全部は把握できていません。
トリガー(Triggers)
- On Round
- On Spawn
- On Kill
- On TeamKill
- On Join
- On Leave
- On Say
上から順に、ラウンド開始時、スポーン時、キルした時、チームキルした時、サーバへJOINした時、サーバから抜けた時、チャット発言をした時、となります。
この中で、使用武器の制限に使えそうなトリガーとなると、キルした時択一となります。
状態(Conditions)
次に状態の説明。これは、「状態を確認する」的な意味になります。
細かく説明を入れると相当面倒なので、大まかに考えてここで使った武器がルール上許されているか否かを判断する場所だと認識して下さい。
今回の様に、使用武器を制限したい場合は以下のように記述します。
武器個別指定の場合
On Kill; Weapon <対象武器>[,武器2,武器3,・・・];
<対象武器> の部分をそれぞれ条件に使いたい武器の名前に書き換えてください。
e.g. On Kill; Weapon DAO-12
e.g. というのは、英語論文等で頻出したりする略語です。
日本語で言うと「例えば」にあたります。ProconRulzのオンラインマニュアルに沢山出てきていたので真似して使ってみました。
話がそれましたが、武器は複数設定する事が出来ます。[,武器2,武器3,・・・]の用に、半角カンマで区切って設定して下さい。
間にスペースを含んではいけません。
全ての武器名を知るには、ProconRulzプラグイン「詳細」タブを参照してください。
明記はして来ませんでしたが、Procon、ProconRulz自体はBF4専用ツールではないので、マニュアルには他のゲーム用の記述もあります。
Procon起動時、ProconRulzプラグインの「詳細」タブを確認すると、現在接続中のゲームに適した武器リストが記載されています。
武器のくくりで制限する場合
On Kill; Damage <対象の武器ジャンル>;
個別での制限と似た感じで設定します。
冒頭に記述したルールも、この武器ジャンルで設定しています。
設定可能なジャンルとしては、以下があります。
None, Nonlethal, Impact, Melee, Handgun, AssaultRifle, LMG, SMG, SniperRifle, Shotgun, Explosive, ProjectileExplosive, VehicleWater, VehicleAir, VehicleStationary, VehicleLight, VehicleHeavy
アクション(Actions)
状態判定で結果が真になった場合に実行されるアクションです。
できる事は結構ありますが、使用武器制限となると、キル、またはキック辺りが妥当かと思います。
一時バンや永久バンも可能ですが、そのあたりはサーバ管理者の思想にもよるのでご自由にという感じです。
条件の複合
ProconRulzの記述は、状態とアクションについて複数を一括で記述する事が可能です。
例えば以下の用に記述する事が出来ます。
On Kill; Damage SniperRifle
PlayerCount 3; Kick;
PlayerCount 1; Kill;
Say No snipers on this server, %p% !!
この場合は、SRを使ってキルした場合チャットメッセージが表示され、1回目は対象者をキルを、3回でサーバからキックします。
[PlayerCount n] は、n回以上という条件になります。
さて、これで運用サーバでの使用武器制限が可能となりました。
ロッカーやメトロでよく見かける「No Explosive」いわゆる爆発物禁止サーバも、状態の部分で Explosive と ProjectileExplosive を禁止する記述をすればOK!
それでは良いサーバ管理を。