コンテンツアイコン

未完成 ServerAutoManager 1.1.0

このプラグインを使用して、プレイヤーが勝手にBANされた等になっても主は責任は負いません(主はそれを防ぐ作りにしてますが、使い方次第では起きかねないので…)。

このプラグインは、その名の通り、サーバー全体を勝手に管理してくれるプラグインです(今の所理想)。
古いプラグインをサーバーから検索して勝手に更新してくれたり…(理想)
↑と言ってもこのサイトには公開されているプラグインの情報を取得できるAPIか何かは無いから実質不可能なものなのですがねw

不適切な発言を送ろうとしたプレイヤーに制裁を加えたり…(実装済み)
PocketMine-MPをサーバーから勝手にダウンロード、更新したり…(実装済み)
指定のコマンドを実行できないようにしたり…(実装済み)
他のプラグインと連携して更に便利になったり…(実装済み)
…まぁとにかく色々したいわけです!
このプラグインのメリット
多言語対応!(今の所日本語と英語のみですが、他にも入れたいなぁ…)
PocketMine-MPの更新を確認して、更新があれば自動的にダウンロードしてインストールしたり…
不適切な発言を送信しようとしたら、それをブロックしたり、最悪送ったプレイヤーをBANしたり…
コマンドを禁止してそのコマンドを実行できないようにしたり…
が今の所出来ます。
将来的にはもっと色んな事ができると良いなと思って頑張ります!
コマンドは無し、
改造、二次配布、コードの中身見るの禁止(色々ごちゃごちゃしてるので…)
あと、僕の知識だけじゃ無理そうなので、一緒に手伝ってくれる人を募集します!
特に問題が無ければ採用するので、たくさん来てください!待ってます!
(でないとモチベ無くなって開発止まってしまいそうなので…w)

機能の説明
・PM-MP自動更新確認機能
サーバー起動時、または再読み込み時にPocketMine-MPのバージョンを自動確認して、通知します。
使用方法:
サーバー停止時
1. サーバーを起動します。
2. 権限設定が最適な際に自動的に更新を確認します。
サーバー起動時
1. サーバーにコマンド(/reload)を実行します。
2. 権限設定が最適な際に自動的に更新を確認します。

・PM-MP自動更新ダウンロード機能
上の機能使用時に更新が見つかった場合、PocketMine-MPを自動的にサーバーからダウンロードします。
使用方法:
1. config.ymlの次のオプションが有効になっているのを確認します: pmmpautoupdate
2. 上の機能を使って、更新が見つかった際に自動的にダウンロードします。

・PM-MP自動更新インストール機能
上の機能を使用した場合にサーバー停止時にPocketMine-MPを自動的に更新します。
使用方法:
1. 上の機能を使ってPM-MPをダウンロードします。
2. サーバーを停止します。(この時、"Stopping other threads"が表示されてもphpプロセスを強制的に止めないでください。)
3. インストールが開始されます。

・PM-MP自動更新巻き戻し機能
このプラグインを使ってPM-MPを更新したけど、やはり戻したいときに最長7日間変更を元に戻せる機能です。
使用方法:
1. config.ymlの次のオプションが有効にします(このオプションはサーバー停止時にリセットされます): pmmpupdatecallback
2. サーバーを起動します。
3. サーバーを停止します。
4. 処理が終了した後にPocketMine-MPのバージョンが更新前に戻っています。

config.ymlの説明します!
YAML:
configver: "1"
説明: ここは絶対にいじらない事、だけです!
lang: jpn
説明: 言語です!今の所日本語(jpn)と英語(eng)があります!
permission: "1"
説明: このプラグインが使用する権限のレベルです!
説明: 0で基本的な権限、1でcURL使って外部サーバーとの通信
説明: 2でサーバー内全データの読み込み、書き込み
説明: 3でサーバー内の出来事など全てを監視、実行、実行取消
説明: 4でサーバー機のコマンドを実行となります!
banplugin: default
説明: ここをプラグインの名前にするとそのプラグインを通してBANを行います。defaultにするとPM-MPのBAN機能を使用します。
pmmpautoupdate: "false"
説明: PM-MP自動更新機能が見つかった際に更新をダウンロード、インストールする機能を使うかの設定です。trueで有効、falseで無効
pmmpupdatecallback: "false"
説明: PM-MP自動更新機能で更新したPM-MPを何らかの理由で元に戻したい場合に最長7日間の間だけ元に戻すことが出来る機能です。但し、この機能を使用すると自動的に無効に戻ります。
ちなみに、permissionを0にすると今の所このプラグインで出来ることは無し!
あと、runChat.yml, runCmd.ymlは、下のように変えると制限するものが設定できます。
YAML:
cancell:
- 123あいうabc
ban:
- 456かきくABC
runChat.ymlのcancellをdefaultにすると、不快な言葉が入っているときにプレイヤーに注意を入れられます!
(この時コンソール側にもログで残ります)
runChat.ymlのban、runCmd.ymlのcancell、banはdefaultにしても今の所何も制限されません。
pmmptmp.phar - PocketMine-MPの最新版が一時的にダウンロードされたファイルです。インストール完了後に自動で削除されます。
oldupdate.phar - PocketMine-MPの最新版のインストール前のファイルです。これを削除するとプラグインを使用しての復元が出来なくなります。
update.txt - PocketMine-MPがプラグインを通して更新された日付が保存されたファイルです。これを削除すると、7日経ってもPocketMine-MPの復元が可能になります。

プラグイン仲介ファイルについて
このファイルは、ServerAutoManagerと他のプラグインを繋ぐファイルです。
これがあるとServerAutoManagerはこのファイルを通してBANなどを行うことが出来ます。
作り方
Banプラグインの場合
PHP:
<?php
// フォルダ構成はこの様にして下さい。
"(プラグインの名前)/src/(好きなフォルダ)/ban.php";
"(プラグインの名前)/load.yml";
// load.ymlは必ず以下をいれてください。
"name: (プラグインの名前)";
"filepath: (srcからban.phpまでのフォルダ(例: (プラグインの名前)/src/path/to/ban.phpの場合: /path/to, (プラグインの名前)/src/ban.phpの場合: /))";
"pluginver: (ServerAutoManagerの動作するであろうバージョン(例: v1.0.0の場合: 1.0.0))";
// load.ymlにオプションで以下を入れられます。
"require: (他の仲介ファイルが存在しないと仲介ファイルを読み込まないという動作を設定(例: RequiredFileの場合: RequiredFile))";
// load.ymlは全て文字列で入力して下さい。配列で入力は出来ません。
// ban.phpは以下の変数を定義して下さい。
$banresult;
// $banresultは以下が利用できます。
false;
// 失敗した場合にこれを定義してください。
// false以外を定義すると成功したとみなします。
// ban.phpでfunctionを使わないでください。(ServerAutoManagerは複数回ban.phpを実行する可能性があるため)
// ban.phpで使用可能な変数
$banplayername; // banするプレイヤーの名前が定義されます
$banreason; // banする理由が定義されます
$server; // Serverインスタンスが定義されます。
$pluginmanager; // PluginManagerインスタンスが定義されます。$server->getPluginManager()と同じです。
// load.ymlの例
'
name: test
filepath: /
pluginver: "1.0.0"
'
// load.ymlの例2
'
name: test
filepath: /test
pluginver: "1.0.0"
'
// load.ymlの例3
'
name: test
filepath: /
pluginver: "1.0.0"
require: "test2"
'
// ban.phpの例
?><?php

$banresult = BanTest::getInstance()->addBan($banplayername, $banresult); // 返り値がboolean型の場合
// ban.phpの例2
<?php
$banresult = $pluginmanager->getPlugin("BanTest")->addBan($banplayername, $banresult); // 返り値がboolean型の場合
最後に、
不具合は主に個人チャットなどで教えてくれるとありがたいです。
その時エラー発生時の文なども一緒に載せてくれるとすぐに解決する可能性が上がります。

このプラグインを使ってあなたのサーバーが更に便利になりますように!
著者
すごろく
ダウンロード数
1,439
閲覧数
1,677
最初のリリース
最後の更新
評価
0.00 つ星 評価0

More resources from すごろく

最新のアップデート

  1. 機能追加大型アップデート!

    遂に権限の1と2の使用機能が生まれました! ・PocketMine-MPのバージョン更新を(起動時もしくはリロード時に)自動的にサーバーから確認...
  2. 機能更新アップデート!

    プラグインの機能を追加しました...