オンライン通信で他のプレイヤーを表示するプラグイン

フォーラムルール
素材の利用規約を決めたいけど、どんなことを書けばいいのか分からない場合は、
素材のテンプレートをご利用下さい。
アバター
くらむぼん
記事: 62
登録日時: 2016年6月26日(日) 12:22

オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by くらむぼん » 2016年7月10日(日) 20:15

オンラインゲームみたいにそれぞれのプレイヤーが表示されるプラグインを作ってみました。
もしあなたと同時にアクセスしている人がいる場合、その人のアバターが表示されます。
サンプルではチャットなんかも出来るようにしてあります。ぜひ一度お試しください。

さらにスイッチと変数のオンライン同期機能も追加してみました!

・サンプル
https://krmbn0576.github.io/rpgmakermv/

・プラグイン
https://raw.githubusercontent.com/krmbn ... eAvatar.js

※※※注意!※※※
一部の投稿サイトではContent Security Policyという機能によりオンライン通信が制限されている場合があります。
あなたが投稿を予定しているサイトで、このプラグインが使えるかどうかは必ず最初に実験してください!


・オンラインの「ジャンプ」と「チャット」を可能にする拡張コモンイベント(dataフォルダへ入れる)
https://raw.githubusercontent.com/krmbn ... vents.json

(拡張コモンイベントを入れる場合は、内部で使用している他の方のプラグインも導入する必要があります)
111さんの「InputForm」(の改造版)
https://raw.githubusercontent.com/krmbn ... utForm.css
https://raw.githubusercontent.com/krmbn ... putForm.js
tomoakyさんの「ネームポップ」
https://raw.githubusercontent.com/krmbn ... NamePop.js

※重要:チャットシステムを起動するために、最初にマップイベントで「スイッチ0001をON」にしてください!!
また、「スイッチ0001、0002&変数0001、0002」はこのシステムが使用しているためご利用の際はご注意ください。

・ライセンス
このプラグインは、どのように利用しても構いません。(PUBLIC DOMAIN)
画像
画像
画像
画像
画像
画像

Twitter:@krmbn0576
https://twitter.com/krmbn0576
最後に編集したユーザー くらむぼん on 2016年11月24日(木) 21:09 [ 編集 8 回目 ]

アバター
くらむぼん
記事: 62
登録日時: 2016年6月26日(日) 12:22

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by くらむぼん » 2016年7月28日(木) 21:07

更新:
ゲーム終了時にアバターが残ってしまうことがあるバグを修正しました。
結構発生しがちなバグなのでもしもう使っている方がいらっしゃったら新しいのに差し替えてください。

あとこれは数日前からですがサンプルの「中級編」に図解をつけてわかりやすくしました。


おまけ:
明日の18:00~19:00辺りに身内を大量に呼んでサンプルにログインする予定です。
もし大人数での動作の具合を確かめてみたい方がいらっしゃったらこの時間にお越しください。
(もちろん身内のノリ爆発状態になりますのでそこはどうかご了承ください)
アバター
くらむぼん
記事: 62
登録日時: 2016年6月26日(日) 12:22

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by くらむぼん » 2016年9月02日(金) 17:02

(コモンイベントへのリンクを追加した、という内容でした。一番上に移動したのでこちらは削除)
最後に編集したユーザー くらむぼん on 2016年9月17日(土) 17:09 [ 編集 2 回目 ]
kou
記事: 4
登録日時: 2016年9月12日(月) 16:44

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by kou » 2016年9月12日(月) 16:47

はじめまして。
早速使わせていただきました!
どうにか、ツクールでオンラインを実現したいと思ってたところにこのプラグインをみつけました。
とてもありがたく、重宝しております。
拡張機能として、プレイヤー同士の戦闘なんかができればいいな、と切に望んでおります。
ありがとうございました!!
アバター
くらむぼん
記事: 62
登録日時: 2016年6月26日(日) 12:22

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by くらむぼん » 2016年9月17日(土) 17:34

バージョンアップ!

・スイッチと変数の同期機能を追加しました。
 プラグインパラメータで指定した範囲のスイッチと変数について、全プレイヤーで値を共有します。
 ぶっちゃけトリアコンタンさんの同期プラグインから着想しましたっ

・「マップの設定」のメモ欄に<avatar_off>でアバターを表示しないマップを作れるようにしました。

・「アバター」にコピーするイベントを<avatar>マップイベントから
 「指定した番号のコモンイベント」に変更しました。
 以前までのバージョンから移行する方はお手数ですが
 <avatar>を廃止して実行内容だけコモンイベントに移してください!

・プラグインの内部構造をガラッと変更しました。(使用感は変わりません)


kouさん、喜んでいただけて良かったです!
「プレイヤー同士の戦闘」というご要望ですが、
今回追加した「スイッチと変数の同期機能」を使ってどうにか自作戦闘が作れないでしょうか?
何分私自身がそれでうまくいくか試してないので可能性は未知数ですが…
もしよかったら挑戦してみてください!
Metapo
記事: 10
登録日時: 2016年10月24日(月) 06:46

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by Metapo » 2016年10月25日(火) 17:17

上記のオンライン通信プラグインをサンプルゲームに導入するために
通常「スイッチ0001、0002&変数0001、0002」を「スイッチ0002、0003&変数0017、0018」
に変更して導入してみました。

導入は成功してオンライン状態でお互いのキャラも確認、チャットも確認できたのですが
常時他プレイヤーの頭上に0が表示されてしまう状態になってしまいます。

相手からチャットが送られてきたときはタイプされた文字が表示されるのですが
3秒後にタイプされた文字が消えると同時に「0」が表示されます。
解決策はありませんでしょうか?
アバター
くらむぼん
記事: 62
登録日時: 2016年6月26日(日) 12:22

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by くらむぼん » 2016年10月25日(火) 18:07

Metapoさんの不具合は…私の方で出たことはないですね(難問)
このサンプルでは「何もメッセージが無いこと」を内部的に「0」で表しているので
それが漏れ出して表示されている可能性が高いと思いますが…

とりあえずコモンイベントの内容を変更した時に失敗したかどうか確かめるのがいいと思いますので、
もし構わなければコモンイベントを右クリック→全選択→右クリック→「テキストとしてコピー」を押して、
内容をこの掲示板にコピペしてもらえませんでしょうか?

そこに問題があれば私の方で検証できると思います!
Metapo
記事: 10
登録日時: 2016年10月24日(月) 06:46

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by Metapo » 2016年10月25日(火) 19:35

早速のお返事ありがとうございます!コモンイベントを貼り付けさせていただきます。

[アバター]

◆プラグインコマンド:online 1 from chat
◆条件分岐:一時的変数 ≠ 0
◆プラグインコマンド:namePop 0 \V[1]

:それ以外のとき
◆プラグインコマンド:namePop 0

:分岐終了

[システム]

◆変数の操作:#0019 一時的変数 -= 1
◆条件分岐:一時的変数 = 0
◆変数の操作:#0019 一時的変数 = 0
◆プラグインコマンド:online 1 to chat
◆プラグインコマンド:namePop -1

:分岐終了
◆条件分岐:ボタン[シフト]が押されている
◆スイッチの操作:#0002 = OFF
◆スイッチの操作:#0003 = ON

:分岐終了

[チャット]

◆プラグインコマンド:InputForm x=250;y=300;v=1;max=50;
◆条件分岐:一時的変数 = 0
◆スイッチの操作:#0002 = ON
◆スイッチの操作:#0003 = OFF
◆イベント処理の中断

:分岐終了
◆プラグインコマンド:namePop -1 \V[1]
◆プラグインコマンド:online 1 to chat
◆変数の操作:#0019 一時的変数 = 180
◆スイッチの操作:#0002 = ON
◆スイッチの操作:#0003 = OFF
Metapo
記事: 10
登録日時: 2016年10月24日(月) 06:46

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by Metapo » 2016年10月25日(火) 19:44

上記イベントにおいてジャンプは削除しております。
また、なぜかわかりませんが
一時変数とタイマーで設定すると何も表示されなくなってしまいます。
そのためタイマー変数も一時変数にして設定してあります。

具体的に行おうとしているのは、サンプルにある「ニナと鍵守の勇者」に
オンライン要素を追加しようとしています。

もしよければ、くらむぽんさんのほうで「ニナと鍵守の勇者」にオンラインのチャットやジャンプなどを
導入していただき、成功例を見せていただけると嬉しいですと厚かましいお願いですみません。

正直このプラグインは衝撃的で、できればオンラインでの軽いつながりをシングルのゲームに入れれたらいいなと
思っています。
アバター
くらむぼん
記事: 62
登録日時: 2016年6月26日(日) 12:22

Re: オンライン通信で他のプレイヤーを表示するプラグイン

投稿記事by くらむぼん » 2016年10月25日(火) 21:42

いえ、その書き込みで原因がわかりました!
プラグインコマンドで「変数1番」を指定している部分が残っていました(例:online 1 from chat)ので、
それをすべて変数19番に差し替えていただければ(例:online 19 from chat)正常動作すると思います!
具体的には、以下のような感じです。(変更行のみ書きます)


[アバター]

◆プラグインコマンド:online 19 from chat
◆プラグインコマンド:namePop 0 \V[19]

[システム]

◆プラグインコマンド:online 19 to chat

[チャット]

◆プラグインコマンド:InputForm x=250;y=300;v=19;max=50;
◆プラグインコマンド:namePop -1 \V[19]
◆プラグインコマンド:online 19 to chat


あ、サンプルゲームを改造する際は原作者さま方が保有する権利に十分ご配慮くださいねー(おせっかい)

“MV:プラグイン素材” へ戻る