当サイトの運営者です。ゲーム制作とプラグイン開発が好きで、コミュニティに貢献したいと考えています。
RPGツクールMZでゲームを制作中です。
※プログラマ・エンジニアではありません。
プラグイン自動更新 - AutoPluginUpdater.js
シェア用テキスト:
▼プラグイン自動更新(うなぎおおとろ様作) - AutoPluginUpdater.js
https://plugin-mz.fungamemake.com/archives/3177
プラグインが最新であるかどうかを確認し、最新でなければ自動更新を行うプラグインです。
ふりがな:ぷらぐいんじどうこうしん
機能概要: プラグインが最新であるかどうかを確認し、最新でなければ自動更新を行うプラグインです。
利用規約(ライセンス): MITライセンス
作者:うなぎおおとろ
作者サイト:https://twitter.com/unagiootoro8388
ダウンロードページ:https://raw.githubusercontent.com/unagiootoro/RPGMZ/mas…
ファイル名:AutoPluginUpdater.js
プラグインのヘルプ:
/*: @target MZ @plugindesc プラグイン自動更新プラグイン v1.0.0 @author うなぎおおとろ @url https://raw.githubusercontent.com/unagiootoro/RPGMZ/master/AutoPluginUpdater.js @help プラグインが最新であるかどうかを確認し、最新でなければ自動更新を行うプラグインです。 [使用方法] このプラグインを導入すると、ONになっているプラグインについて、最新のものであるかをチェックして 最新のものでない可能性のファイルがある場合、一覧として表示します。 そして、一覧の中から更新したいプラグインを選択することで、自動更新を行うことができます。 なお、プラグインの更新を行う前には自動でバックアップを取得します。 [更新画面の操作について] 更新画面の操作はすべてマウスで行います。 更新したいプラグインにチェックを入れて「選択したプラグインを更新」をクリックするとプラグインが更新されます。 更新が完了するとタイトル画面に移行しますが、この段階ではファイルの更新結果が反映されないため、F5を押してリロードを行ってください。 「プラグインを更新せずにゲーム開始」をクリックした場合はプラグインを更新せずにタイトル画面に移行します。 なお、更新が必要なプラグインが存在しない場合は、更新画面を表示せずにすぐにタイトル画面に移行します。 [URLの登録] プラグインのダウンロード先URLは、プラグイン内に記載されているURLから自動で抽出しますが、 手動で設定することもできます。この場合、プラグインパラメータの「PluginUrl」にURLを登録します。 なお、手動で設定したURLは、プラグイン内に記載されているURLよりも優先されます。 プラグインで抽出したURLは、プラグインパラメータ「WriteLog」をtrueにすることで、 ゲーム起動時に「plugin-update-log.txt」というファイルに保存されます。プラグインからのURLの抽出が上手くいかない可能性があるので、 最初にこのファイルを確認して、プラグインのURLが正しいものになっているかを確認してみてください。 [特定のプラグインを更新チェックの対象外にする] 特定のプラグインを更新チェックの対象外にする場合、プラグインパラメータの「DisableUpdatePlugin」に 対象外とするプラグイン名を指定します。 [バックアップについて] プラグインの更新を行う場合、更新対象のプラグインについて自動でバックアップを取得します。 取得したバックアップは日時ごとに管理され、「backup/バックアップ取得日時」ディレクトリの中に保存されます。 [プラグインのチェックの仕組みについて] プラグインのチェックについては、次の仕組みで行っています。 ・ONになっているプラグインすべてについて、プラグインのソースコードをローカルから読み込む。 ・プラグインからURLを抽出し、そのURLからプラグインをダウンロードする。 ・ダウンロードしたプラグインとローカルのプラグインが一致しているか確認し、一致していなければ 更新対象のプラグインとしてリストアップする。 [URLの抽出について] URLについては、プラグイン内に記載されているURLを抽出します。 このとき、URLがGithubのURLであった場合、Rawに変換を行います。 また、GithubのリポジトリのURLであった場合、リポジトリのURL + プラグインのファイル名からなるURLを ダウンロード先URLとして扱います。 [タイムスタンプについて] 更新対象のプラグインはタイムスタンプの管理を行い、起動するたびに何度もダウンロードされないようになっています。 タイムスタンプは「plugin-update-timestamp.json」というファイルに保存されます。 タイムスタンプの有効期限は1日で、その間はプラグインのダウンロードを行いません。 もしダウンロードをやり直したい場合は「plugin-update-timestamp.json」を削除してください。 ただし頻繁に削除することはダウンロード先のサーバに負荷を与えることになるため、必要最低限の場合に留めてください。 [ライセンス] このプラグインは、MITライセンスの条件の下で利用可能です。 @param BackupDirName @type string @default backup @desc バックアップ先のディレクトリ名を指定します。 @param PluginUrl @type struct<Url>[] @desc 手動で登録するプラグインのURLを指定します。 @param DisableUpdatePlugin @type string[] @desc 自動更新の対象外にするプラグイン名を指定します。拡張子「.js」は省略してください。 @param WriteLog @type boolean @default true @desc trueを設定すると、ログをファイルに保存します。 @param LogFileName @type string @default plugin-update-log.txt @desc ログを保存するファイル名を指定します。 @param TimestampFileName @type string @default plugin-update-timestamp.json @desc タイムスタンプを保存するファイル名を指定します。 */