テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

ニート犬
記事: 4
登録日時: 2017年11月14日(火) 12:20

テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by ニート犬 » 2017年11月14日(火) 13:13

キャラチップを使って建物や家具を擬似的に配置するハウジングシステムを作ろうと思ったのですが、トリアコンタン様の『テンプレートイベント』でコピーしたイベントを同じく『イベント動的生成プラグイン』で呼び出して配置後、Yanfly様の『YEP_SaveEventLocations』で記憶させマップ移動後もリセットされないような作りにしたところ上手く適応されず消えてしまいました。

あらかじめ『YEP_SaveEventLocations』の設定されたマップに配置してあるイベントは位置移動や移動ルートで動かしても状態が保存されたので、動的生成されたイベントはマップ移動で強制的に消えてしまう仕様なのでしょうか?
これが使えないとなると同じ建物や家具でも複数配置するには同じだけ同じイベントを作る必要が出てきてしまい作業量が何倍にも膨れ上がるほか、マップが大量のイベントで埋め尽くされてしまいます。
単なる見落としがあるのか、もしくは他にも方法があるなど、何か解決方法を思い至る方がいらっしゃいましたらアドバイスしていただけると助かります。

アバター
フトコロ
記事: 1029
登録日時: 2017年2月06日(月) 21:32

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by フトコロ » 2017年11月14日(火) 20:20

こんにちは。

動的生成されたイベントはマップ移動で強制的に消えてしまいます。
そこで、これは以前自分用で作ったものですがよければどうぞ。

●FTKR_EventReSpawnEx.js
https://raw.githubusercontent.com/futokoro/RPGMaker/master/FTKR_EventReSpawnEx.js

EventReSpawn.jsとTemplateEvent.jsで生成した一時イベントの座標とセルフスイッチを記録するプラグインです。

テンプレートイベントのメモ欄に<ERS_記録>と入れることで、そのイベントを動的生成すると記録できるようになります。

あとは、プラグインパラメータの設定で場所移動時に自動的に記録するか、プラグインコマンドで指定して記録してください。

詳しくは、プラグインのヘルプを見てください。


なお、イベントの座標とセルフスイッチA~Dの状態を記録するだけなので、それ以外の情報は記録しません。
何らかのプラグインやスクリプトで、イベントごとにオリジナルのパラメータを設けていたり、セルフスイッチの種類を増やしていた場合などには、その分は記録しないので注意してください。
---------------------------------------------------------------------------------------------------
プラグイン置き場(GitHub)
https://github.com/futokoro/RPGMaker/blob/master/README.md

検討中の内容は上記リンク先の「対応するかもしれないプラグインのメモ」を参照してください。
ニート犬
記事: 4
登録日時: 2017年11月14日(火) 12:20

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by ニート犬 » 2017年11月15日(水) 05:39

フトコロ さんが書きました:こんにちは。

動的生成されたイベントはマップ移動で強制的に消えてしまいます。
そこで、これは以前自分用で作ったものですがよければどうぞ。

●FTKR_EventReSpawnEx.js
https://raw.githubusercontent.com/futokoro/RPGMaker/master/FTKR_EventReSpawnEx.js

EventReSpawn.jsとTemplateEvent.jsで生成した一時イベントの座標とセルフスイッチを記録するプラグインです。

テンプレートイベントのメモ欄に<ERS_記録>と入れることで、そのイベントを動的生成すると記録できるようになります。

あとは、プラグインパラメータの設定で場所移動時に自動的に記録するか、プラグインコマンドで指定して記録してください。

詳しくは、プラグインのヘルプを見てください。


なお、イベントの座標とセルフスイッチA~Dの状態を記録するだけなので、それ以外の情報は記録しません。
何らかのプラグインやスクリプトで、イベントごとにオリジナルのパラメータを設けていたり、セルフスイッチの種類を増やしていた場合などには、その分は記録しないので注意してください。


こんなにも迅速な回答をいただき本当にありがとうございます。プラグインの提供までしていただき頭が上がりません。そこでさらにお時間を取らせてしまうのは非常に申し訳ないのですが、一つだけ質問をさせてください。

さっそくプラグインをお借りして試してみたところ確かに動的生成されたイベントの座標は記録されていましたが、これは同じマップに入ると自動で再生成されるのではなく再度イベントで生成した際に同じ座標で現れるというものでよろしいのでしょうか。

特に間違いが無いのであればこのままプラグインを使用させていただきハウジングシステムの実装に取り掛かろうと思います。
アバター
フトコロ
記事: 1029
登録日時: 2017年2月06日(月) 21:32

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by フトコロ » 2017年11月15日(水) 12:26

ニート犬 さんが書きました:さっそくプラグインをお借りして試してみたところ確かに動的生成されたイベントの座標は記録されていましたが、これは同じマップに入ると自動で再生成されるのではなく再度イベントで生成した際に同じ座標で現れるというものでよろしいのでしょうか。

このプラグインは、記録した状態に従い一時イベントを自動で再作成するものです。

マップ移動で、一度削除されるのはかわりません。
---------------------------------------------------------------------------------------------------
プラグイン置き場(GitHub)
https://github.com/futokoro/RPGMaker/blob/master/README.md

検討中の内容は上記リンク先の「対応するかもしれないプラグインのメモ」を参照してください。
ニート犬
記事: 4
登録日時: 2017年11月14日(火) 12:20

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by ニート犬 » 2017年11月15日(水) 17:24

フトコロ さんが書きました:このプラグインは、記録した状態に従い一時イベントを自動で再作成するものです。

マップ移動で、一度削除されるのはかわりません。

お返事ありがとうございます。
自分の環境ですとマップに入り直した際は消えた状態で、同じイベントを実行すると以前に動的生成されたイベントがマップ移動で一度削除される前と同じ位置に出現するという動作なのですがあっていますか?

自動で再作成というのがもし「マップに入り直したら特にイベントを実行せずとも勝手に出現してくれる」という意味ですと何か僕がやり方を間違えている可能性があるので……。

また質問を返してしまいすみません。現状でもシステムの実現は可能ですので返信が面倒な場合はスルーしてください。
アバター
フトコロ
記事: 1029
登録日時: 2017年2月06日(月) 21:32

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by フトコロ » 2017年11月15日(水) 20:25

ニート犬 さんが書きました:自分の環境ですとマップに入り直した際は消えた状態で、同じイベントを実行すると以前に動的生成されたイベントがマップ移動で一度削除される前と同じ位置に出現するという動作なのですがあっていますか?

はい、その認識で合っています。

プラグインを作成したのがだいぶ前でしたので、こちらも少し勘違いしていました。

なお、正確には、記録した情報は生成した一時イベントのイベントIDに紐付いています。
マップに入りなおした後に一時イベントを生成するときに、毎回同じ順番で同じ一時イベントを生成しないと、記録の状態とは、ずれるので注意してください。

例えば、AとBという2種類のテンプレートイベントが合って、一時イベントの生成順番がA⇒Bとなっていた場合、再度マップに入りなおしたときも、同じ用にA⇒Bの順番で生成しないと記録した内容が合わなくなります。

とりあえず、現状の仕様はこのようになっているので、一時イベントの生成順番には気をつけてください。
---------------------------------------------------------------------------------------------------
プラグイン置き場(GitHub)
https://github.com/futokoro/RPGMaker/blob/master/README.md

検討中の内容は上記リンク先の「対応するかもしれないプラグインのメモ」を参照してください。
ニート犬
記事: 4
登録日時: 2017年11月14日(火) 12:20

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by ニート犬 » 2017年11月16日(木) 05:33

フトコロ さんが書きました:なお、正確には、記録した情報は生成した一時イベントのイベントIDに紐付いています。
マップに入りなおした後に一時イベントを生成するときに、毎回同じ順番で同じ一時イベントを生成しないと、記録の状態とは、ずれるので注意してください。

例えば、AとBという2種類のテンプレートイベントが合って、一時イベントの生成順番がA⇒Bとなっていた場合、再度マップに入りなおしたときも、同じ用にA⇒Bの順番で生成しないと記録した内容が合わなくなります。

とりあえず、現状の仕様はこのようになっているので、一時イベントの生成順番には気をつけてください。

なるほど、初心者にはやや扱いが難しそうですね。了解です。

今回は重ね重ねありがとうございました。これをもって解決とさせていただきます。自分のような新参者相手に丁寧なアドバイスをいただけた事とても助かりました。
OikariBuncho
記事: 10
登録日時: 2022年2月12日(土) 15:40

Re: テンプレートイベントとイベント動的生成プラグインで配置したイベントをマップに記憶させる方法

投稿記事by OikariBuncho » 2022年2月17日(木) 09:09

素晴らしいプラグイン、ありがとうございます。
突然失礼いたします。

プラグインヘルプの利用方法が

コード: 全て選択

 * コピー元のイベントのメモ欄に、以下のタグを記入します。
 *
 *     <ERS_記録> or <RES_SAVE>


とございましたが、実際は「<ERS_記録> or <ERS_SAVE> 」かと存じます。
動かなかったので少し調査してました。
なお、TemplateEvent.jsがV2.1.5、EventReSpawn.jsがV1.12.2で動作確認できております。

ご返信は不要です。ほかの方々の役に立てばと。

“MV:質問” へ戻る