忍者ブログ
windowsやブラウザ のゲーム作ったりとか。

RPGツクールMVのお話です。

JavaScriptを理解していなくても
サンプルゲームのプラグインや元のスクリプトを参考にすることで
プラグインが作れてしまうんじゃなかろーか?

というわけで、今回は
戦闘で全滅しても、ゲームーバーにならないプラグインを作ってみようと思います。

マップ設定の敵出現歩数で行う、デフォルトのランダムエンカウントを使わず
全ての戦闘をイベントコマンドの「戦闘の処理」で行えば
プラグインがなくても、ゲームオーバーにならないように出来るのですが
今回はデフォルトのランダムエンカウントを使いたい、という前提です。
 
カテゴリーは講座になってるけど
どっちかというと「やってみた」に近いものです。
当方、JavaScriptのJaの字も理解していないのでご注意下さい。
この通りやって何か問題がおきても責任はもちません。
よーと、一応免責しておきます。
 
まず、環境を整えます。
JavaScriptを編集するには、テキストエディタなどが必要です。
ググるといくつか出てきますが
私はTeraPadを使用しています。

今回参考にするプラグインは
tachiさんの「Sea Pirate シーピラート」に含まれる
Tachi.js」というプラグインです。
用意したテキストエディタで開いてみます。
プロジェクトデータフォルダ内の「js」フォルダの中にある
plugins」というフォルダの中に入っています。
(プロジェクトデータはGamesフォルダ内のexeファイルを解凍)

 
なんか色々書いていますが、欲しいのはゲームオーバーの時の処理なので
テキストエディタの「検索」機能で「ゲームオーバー」という単語を検索します。
204行目くらいに欲しい処理が記述されています。
18行ほどのこの記述を223行目の「};」まで、まるっとコピーして
テキストエディタに貼り付け、好きな名前で保存すれば
「ゲームオーバーにならないプラグイン」の完成です。

※ツクールの利用規約により
 サンプルゲーム内のデータの改変利用が認められているので
 コピペしましたが
 ユーザーさんの有志で配布されているプラグインを改変する場合は
 プラグインごとの利用規約を守ってくださいね。


プラグインとしてファイルを保存するにはちょびっとだけルールがあります。
・拡張子は   .js
・文字コードは UTF-8 で保存
・「plugins」フォルダに入れる

とりあえずこれだけ守っていれば、MVのプラグイン管理画面で
セッティングできるようになるっぽい。
ファイル名は日本語でも認識しますが、なるべく半角英数字が良いようです。

あとは、これを登録し、ONにしてテストプレイしてみましょう。
わーい、全滅してもゲームオーバーにならなくなりました。

完。

・・・なのですが
せっかくなので元のスクリプトと見比べてみることにしましょう。
元のスクリプトは、「js」フォルダ内の「rpg_managers.js」を開き
さっきコピペしたスクリプトの一行目の命令文を検索。

//」でコメントアウトされた、日本語の文章は検索しても出てきませんよ。
元のスクリプトは全て英語なのです・・・

なお、コメントアウトというのは、いわゆる注釈です。

2320行あたりに、さっきコピペした命令文と概ね一緒の命令文があります。
Tachi.js」と、どのような差があるか検証してみましょう。

どうやら
2329行目の命令文がコメントアウトされているようです。
この命令がゲームオーバー画面を呼び出しているのでしょう、多分おそらく。

ifで始まる命令文は、条件分岐です。
全員死んでいて「canLose」でなければゲームオーバーになりますよ
という命令のようです。
canLose」が何を意味しているのかは、さっぱりわかりませんが
全員復活してマップに戻る処理が入ってるっぽい。
が、ここは特にいじらなくていいようなので、とりあえず放置。
(どなたか意味がわかる方、よかったら教えて下さると嬉しいです)
 
唐傘ドールさんが、教えて下さいました!
「canLose」は敗北可のフラグです。
rpg_objects.jsの Game_Player.prototype.executeEncounterの
BattleManager.setup(troopId, true, false);の falseをtrueにすれば、敗北可になります。
イベントコマンドの戦闘処理 Game_Interpreter.prototype.command301で、
フラグを獲得しています。
通常戦闘では変更する必要が無いので固定されているのです。

ということなのだそうです。
試しに falseをtrueに書き換えてみたところ、ゲームオーバーになりませんでした。
唐傘ドールさん、ありがとうございました!

 そして、2326、2327行目の命令文がコピペされているようです。
2327行目の命令文をコメントアウトすると、戦闘画面から出られなくなるので
マップに戻る命令と考えられますね。
2326行目の命令をコメントアウトすると、マップ画面に戻った途端に
ゲームオーバーになるし、「revive」は翻訳すると「復活」なので
パーティメンバーを復活させる命令と考えていいかなと思います。

もう一行追加されている「$gameSwitches.setValue(2, true);という部分は
スイッチの2番をONにするぜ、という命令です。
これは多分とかおそらくではなく、確実にそういう命令です。

つまり、全滅したらゲームオーバーにならずマップに戻って
スイッチ2をONにするというわけですね。

なんでスイッチをONにするのか?
全滅したことをイベントで判定できるように・・・でしょうか。

例えば、全滅したら教会に戻るとか
このままだと、パーティメンバー全員がHP1で生き返るけど
主人公以外は死んだままにしたいとか
スイッチで起動するコモンイベントなどにイベントを書き込んでおけば
そういったオプションを追加するのが簡単に出来るというわけです。
すんばらしいです。

スイッチの番号を変更したい場合は、数字を変更すれば良いですね。
 
さて、これだけでもプラグインとしてなんら問題はなさそうなのですが
プラグイン管理画面で、説明文が表示されないのはちょっと寂しいよね。

説明を表示するための雛形を
Tachi.js」からコピってもいいのですが
せっかくなので、公式プラグインからコピりましょうか。
AltMenuScreen.js」を開いてみます。

3行目までは、プラグインの名前がコメントアウトされていますね。

5~10行目の「/*:で始まる方は
デフォルト・・・と言うか英語やその他の言語用の説明文のようです。
12~17行目の「/*:ja」で始まる方が、日本語専用の説明文のようです。

素材として配布する場合は、両方とも記入するのが望ましいですが
個人的に使うだけなので、片方は削除しても問題ないっぽい。

* @plugindesc」というのは、説明文を書けという意味らしいので
ここにプラグインの簡単な説明を書きます。
* @author」は、プラグインの作者名を書くようです。
* @help」は、プラグインを設定する画面で「ヘルプ」を押すと表示されるようです。
* 」をつけると改行もできるようですよ。

これで、プラグインとしての体裁も整いました。
完成です!!

Tachiさんありがとうございました。

ちなみに、プラグイン作成例がこちら
 パラメータでスイッチ番号を入力できるようにしておきました。
ツクールシリーズでの利用に限り、ご自由にお使い下さい。
ただし、何か問題がおきても責任はもちません。

 なお、4Gamerさんの
一見さんによる一見さんのための「RPGツクールMV」入門。スマホゲームも作れるようになったお手軽ゲーム作成ツールをプラグインで拡張しよう
という記事も大変参考になるので合わせてごらん頂くと
よろしいかと思います。


拍手[5回]

PR

RPGツクールMVで使用可能なイベントコマンドの入力例です。
(試してないけど、RPGツクールVXAceでも使えるかも?)

何かのお役に立てれば幸いです。

「特定のリージョンの上を自走するイベント」が作れます。
レースイベントなどで、ライバルキャラの走行ルートを
上上下下・・・と入力するのが億劫なときなどに便利かも?
(どっちが楽かは歩く量によるかもしれませんね。
 ちょっと歩く程度なら、普通に指定した方が楽かなと)

トロッコを走らせるときにも使えそうですが
途中で進行ルートをスイッチ等で切り替えるようなギミックが
ある場合は向いてないかもしれません。

ともかく「いつも一定のルートを歩くイベント」向きのイベント例です。
コモンイベントに入れておいて、必要に応じて呼び出すのがいいかな。

著作権等はありません、ご自由に引用して下さい。
ご利用連絡も不要ですが、「いいね(拍手)」してくれると嬉しいです。

用意するもの
移動ルート用のリージョン 1つ(当講座では 100番を指定)
終点用のリージョン1つ (当講座では 101番を指定)
(リージョンとは
 主にフィールドマップにてモンスターの出現範囲を分けるために配置するタイルで
 Aceの場合は、ツールバーにあるモザイクみたいなアイコン
 MVの場合は、タイルパレットの下のタブの「R」を、クリックすると編集可能)

イベントの現在位置(X座標、Y座標)を取得する変数 それぞれ1つ
リージョンIDを代入するための変数 1つ

歩行用のイベント 1つ(イベント中も主人公を操作するなら、トリガーは並列処理)

イベントの概要
歩かせたいイベントの1歩先のリージョンが指定したリージョンかどうかを判別し
YESなら進み、NOなら無視します。
それを4方向分作成し、ラベルコマンドを使って終点までループさせます。
もし、一歩先にあるのが終点用のリージョンなら、ループを終了して
次のイベントに進みます。

ポイント
逆送を防ぐため、イベントの向きによって実行内容を変えています。
また、一歩先の位置情報を取得するため
位置を取得した変数に、加算や減算を行っているので
他の方向を調べる前に加算(減算)した分を加算(減算)しなおす命令を入れています。

注意点
複数のイベントを走らせるときは、その数だけリージョンや変数が必要です。
なお、ルートが重なり合うと誤動作を起こします。

イベント入力例の画像

拍手[4回]

昨日(12月17日)、RPGツクールMV日本版が発売されました!

ゆわか制作のサンプルゲーム「ニナと鍵守の勇者」の
プロジェクトデータも入ってますよ!
 
(なお、サンプルゲームはニコニコゲームマガジンにて
 ブラウザ版とダウンロード版が無料で遊べます)

一昨日は「発売記念イベント」があったようで
レポートの記事(プレス)が公開されています。
プレス記事その2

参加されたベータテスターさんのレポートもあります。
RPGツクールMVでアプリリリースを目指す開発室さん
RGC|RPGゲームツクールコミュさん

ところで、私のサンプルゲームのプロジェクトファイルには
うちだゆーさんのご好意で「ニナと鍵守の勇者」のロゴデータが
入っていたりするので、続編や番外編の制作に是非ご活用下さいね!

タイトルイラストは、トリダモノさんが描いてくれました。
シナリオ・設定は重歳謙治さんにご協力いただきました。
(ありがとうございました!)

さらに、プロジェクトデータの方には開発室もあります。
プラグインの説明とかちょっぴり役立つ情報もあったりなかったりです。

マウス専用ミニゲームも是非解析して
みなさんのゲーム制作に役立ててもらえたらいいなと思います。


プラグインプチ改造講座(というかマメ知識)
「BattleResultsPopup.js」というプラグインがあります。
複数のサンプルゲームで使用されている大人気の
戦闘の結果の表示方法を変更するプラグインです。
ただ、このプラグインこのままだとレベルアップのお知らせをしてくれません。
そこで、レベルアップのお知らせをしてくれるようにしたいと
希望したところ、以下の回答を頂きました。

プラグインをテキストエディタで開きます。

Game_Actor.prototype.shouldDisplayLevelUp = function() {
        return false;
    };

という記述を探し出し、削除する か // でコメントアウトし
文字コードUTF-8で保存します。

終わり。

※メモ帖とかだと改行が正しく表示されなかったりすることがあるので
jsファイル編集に適したテキストエディタを探した方がいいようです。
私はTeraPadを使用しています。
 

拍手[3回]

脚本統一フリーゲーム創作企画「魔封の聖夜」に参加させていただきました。
現在、ゆわかの作品と合わせて全部で5作品が遊べます。

12月24日まではまだ投稿受付中!

とのいうことなので、もしよかったら挑戦してみてね。

どういう企画かというと
同じ脚本でそれぞれの作者がゲーム化するというものです。

元の脚本もDLできるので
それぞれどのように味付けされたのか見比べるのも楽しいと思います。

企画サイトはこちら

なお、ダウンロードは赤い丸をクリックして下さい。

ゆわかのゲームは、ステージクリア型SRPGとなっております。
プレイ時間は大体40分ほどです。


拍手[0回]

ドンドンパプパプ!
お待たせしました、いよいよ当家のサンプルゲームお披露目です!

 
☆ ニナと鍵守の勇者 を遊ぶ ☆

なお、IEでの動作はサポートしてないそうなので
Google ChromeやFireFoxをオススメ。
それでも動かない場合は、他のブラウザを試してね。
 
ゲームの説明にもあるように
「パッケージのキャラクターで皆様に続きを作ってもらう企画の第一話」
という設定で作成されています。
なので、導入部分だけになっています。
 
原案は、あの重歳謙治さんです。
トシ重さんといえば、ピンと来る方も多いかな?
ちょっと前には、ニコニコのブロマガ記事を書かれたりされています。
 多岐にわたって色々ご相談にのって頂きました。(ありがとうございますv)

タイトルイラストは、トリダモノさん!
タイトルロゴは、うちだゆーさんが作ってくれました!
ロゴのフォトショップファイルも同梱されているのでお楽しみに。

王道的な勇者の物語で、他人に続きをツクってもらう前提のゲームというのは
初挑戦なので、上手く出来ましたかどうか・・・
どれだけ続きが作られるかによって、明らかになっちゃいますね。
せめて1本だけでもどなたかが作ってくださいますように(祈り)←願いがかないました!ありがとう!

製品版に梱包されてるプロジェクトデータには「開発室」が設けられていて
意味のあるのからないのまで色々な情報を記載しています。
ぜひ、ご活用下さいませ。


-2016.06.18追記-
祈りが届いたのか、ついに続編を作ってくれた方が現れました!
夢幻台さん作「ニナと鍵守の勇者~疾風の忍者と魔物使い~」公開中です!
是非、遊んでね!

-2016.12.05追記-
なんと、さらに番外編を作ってくれた方が現れました!
ドパン!さん作「グレイスとリシル」公開中です!
ぜひ、遊んでね!

-2017.04.25追記-
Appstoreからのiosアプリ版が配信開始!
iPhoneをお持ちの方はぜひ遊んでね!

-2017.09.28追記-
どどんがどんと続編を作ってくれた方が現れました!
おそしお(小曾潮)さん作「ニナと鍵守の勇者~白緑双糸~」公開中です!
是非、遊んでね!

-2018.07.16追記-
なななんと!またもや続編を作っていただきました!
バケニャンコさん作ニナと鍵守の勇者~気まぐれ妖精と黒魔道士~」公開中です!
夢幻台さんが作ってくれた第二話の続きとなっています。
是非、遊んでね!

--------------------------------------------------------------------
 
さて、11月13日よりニコニコゲームマガジンにて、ブラウザ版が順次公開されていますが
今回は新たに3本のゲームが公開され、9本全ての公開が開始されたことになります。
(※公開が終了したようで、現在はRPGアツマールで公開されています)

今日、27日より公開が開始された3本は
minaki2424さんの「MV Magic Victory」
岩田文人 ENTACL GRAPHICXXXさんの「LivingShip Cowboy」
ゆわかの「ニナと鍵守の勇者」
です!

また、RPGツクールMV公式ページで新機能の講座が更新されてたよ!
テレポートの作り方とかとても参考になりますね!

 続きまして、準公式プラグインご紹介のコーナー。

「FixedBattleMembers」
指定したパーティメンバーの並び替えを禁止します。
隊列の先頭のキャラを固定したい時に便利です。
プラグインコマンドでいつでも変更可能です。

「MenuSubMember」
戦闘に参加させない同行者をメニューに表示するプラグインです。
ゆうやけさんの「羊の海」にも使用されていましたね。
まあいわゆる、気持ちの問題なのですが
ああ、一緒にいるんだなあ・・・を視覚的に感じられます。
残念ながらデフォルトのメニュー画面にしか対応していません。
AltMenuScreenにも対応が検討されたのですが
どうしても配置するスペースが・・・(汗)ごめんなさい。

「LastUsedItem」
最後に使用したアイテムかスキルのIDを取得できます。
「ニナと鍵守の勇者」では、ダンジョンを脱出するアイテムとスキルの使い分けに
使用されています。
色々と使用用途の幅が広いプラグインです。

「NovelMessage」
メッセージを画面全体に表示するプラグインです。
「ニナと鍵守の勇者」では、酒場でもらえる「依頼」の「説明画面」に
使用されています。
任意のスイッチをONにすると、イベントコマンド「文章の表示」に入力した内容が
ノベル風に表示されるようになります。
選択肢の表示は、最下部に固定されています。

「ExtraEquipType」
クラスや装備を変更せずに、装備できる武器/防具タイプを増やすプラグイン。

「BattleVoice」
戦闘行動にボイスをつけるプラグイン!
ImCyan(アイムシアン)さんの「FantasicReverie」で使用されています。
ああ憧れのボイス付き戦闘!

「BattlebackScroll」
戦闘背景(Battleback1)をスクロールさせるプラグイン。
スピード感あふれる戦闘をあなたに!
minaki2424さんの「MV Magic Victory」で使用されています。

いかがでしょうか。
ゲーム作りたくなりました?
海外の公式プラグインもすごいけど、日本の公式プラグインも頑張ってますよ!
ま・・・まけ・・・まけ・・・めけへんで!!

というわけで、海外ユーザーさん制作のプラグインまとめページもご紹介。
RPGツクールMV プラグインDB さん

RPGツクールMVは、12月17日発売です!
どうぞ楽しいゲーム制作ライフを!

拍手[2回]

前のページ      次のページ
広告枠
アクセス解析

ATOM  
ATOM 
RSS  
RSS 


ソフトウェア制作講座





Copyright ©   YUWAKA'S SOFT   All Rights Reserved
Design by MMIT / TemplateB3  Powered by NINJA TOOLS
忍者ブログ [PR]