ずぼらにRequiredAssetsを登録するプラグイン(RPGツクールMV)

スクリプトやプラグインコマンドなどで使用した画像やオーディオは、
デプロイ時の「未使用ファイルを含まない」オプションで除外されてしまいます。

このプラグインはjs/plugins/TRP_AssetsRegister.jsを上書きして@requiredAssetsを書き込むことで
テストプレイ中に一度でも再生したオーディオ、表示した画像データを
デプロイ時の「未使用ファイルを含まない」で弾かれないようにします。
無いと思いますが、同名のプラグインがあれば上書きされますのでご注意下さい。

一度登録したアセットを取り消す場合は、TRP_RequiredAssets.jsをテキストエディタで開き、
該当のアセットの行を削除して下さい。

【免責事項】

このプラグインを利用したことによるいかなる損害にも作者は責任を負いません。
プラグインの説明をよくお読みになり、利用者の責任の上でご利用下さい。

【ダウンロードリンク】

TRP_AssetsRegistere(右クリックからダウンロード)
TRP_RequiredAssets(右クリックからダウンロード)

上の2つのプラグインを登録してONにしてください。

「めまぐるしき世界にて!」制作メンバー募集要項

「めまぐるしき世界にて!」を一緒に開発する制作メンバーを募集致します。
以下、少し長いですが各項目をお読みいただいた上でご応募お願い致します。

一緒に「めませかを神ゲーに育て上げよう!」という意気込みを持った方のご応募をお待ちしております!

【募集する担当分野】

・グラフィッッカー(募集内容は多岐に渡ります。後述の作業内容を確認してください。)
・BGM担当
・4コマ/広報イラスト担当
・データ作成担当(マップ/スキル/サブイベント)
上のどの分野にも当てはまらないが、「こんなことができて、現状のめませかに○○といった改善・クオリティアップができる」といったスキルがあれば応募して頂けます。(例:スクリプト、PV作成、Webデザイン、広報などなど)

【制作ゲームの概要】

・タイトル:「めまぐるしき世界にて!」(以下、めませか)
・メインシナリオ15時間程度の中編RPG
ニコニコ自作ゲームフェス2018にて『オープニング部門大賞』『ツクール賞』『スニーカー文庫賞(特別賞)』を受賞
・コメディ調の掛け合いとオリジナルの戦闘システム、MMOっぽさが体感できるシステムが売り
・連載形式でRPGアツマールにて公開中(現在3章まで公開)
https://game.nicovideo.jp/atsumaru/games/gm4495
・完成後はスマートフォンアプリ、Steamにて販売予定。(条件が揃えばSwitchでの販売も検討)
・残り2〜3年で作品の完成及び販売を目指します。
・現在はメインで制作しているシロップ(@thiropGames、以下、私と記載)の他、キャライラスト担当、BGM担当の3人で制作中です。

【報酬】

・作業成果ごとに売上分配権を設定(単価については要相談)
・脱退の連絡がなく1ヶ月以上連絡が取れない場合は脱退とともに売上分配権の放棄とさせて頂きます。
<補足>
全年齢の同人一次創作RPGということで、ヒットして収益を上げた前例などはほとんど無いと思います。各メンバーの売上分配権分の売上が発生しない場合も十分考えられますので、報酬を第一の目的として参加されるのはおすすめしません

【作業体勢】

タスクの進め方

・(私と相談の上)各自で作業タスクをGoogleスプレッドシートなどにまとめて、作業完成予定日を含めた作業スケジュールを作成(テンプレート有り・スプレッドシート以外でも可)

進捗報告

・Slack上で週に1回進捗報告をしてもらいます。(Slackの使い方はお教え致します)
・作業進捗が無い場合にも、その旨の報告をお願いします。多忙で進捗報告もできないような状況の場合は、(できればそうなる前に)いつまでは報告できそうにないとの旨を報告してもらえれば大丈夫です。
・基本的にこちらから締め切りを設定したり急かしたりすることはありません。長丁場のため、各人の生活を優先した上で制作してもらっています。毎週の進捗報告も進捗が無いと報告してもらっても全く問題ありません。ただし、各自の作業スケジュールに取り戻せない遅れが生じた場合には、それが分かった段階で連絡と作業スケジュールの再調整をして頂きたいです。

ミーティング

・不定期(2〜3ヶ月に1度程度)にSlack上でチャットミーティングを実施。プロジェクト全体の状況報告や各自の作業内容の相談などを行います。
・個別の相談事などは、細かい部分でもSlackのDMで相談してもらえば、できるだけすぐに返答します。

共同制作からの脱退について

・生活状況の変化やモチベーションの低下など、どんな理由であれ共同制作から離れることは問題ありません。
・ただし、「”必ず”、共同制作から抜ける旨の連絡」をして頂きたいです。それに対して問い詰めたりすることは絶対にありません。その場合は、後任を早く探すためにも早めの連絡をお願いします。
・1ヶ月以上の進捗報告がなされない場合は、脱退したとみなします。

【応募方法】

連絡を円滑にするため、以下の内容について記述の上、
twitterのDM:@thiropGames
E-mail:thiropgamestudio@gmail.com
どちらかに連絡をお願い致します。
質問のみの連絡ももちろん可能です。

・お名前(ハンドルネーム)
・Twitterアカウント(もしあれば)
・応募する担当分野
・作風が分かるファイルかURL
・週あたりの”現実的な”作業可能時間(ばらつきがある場合はだいたいの平均で大丈夫です。制作以外の遊ぶ時間も大事です、それも考慮して下さい。)
・直近に控えている制作時間に関わる生活の変化など(就職、進学、転職などもしあれば)
・公開中のゲームをプレイしての簡単な感想、参加時に改善したいことなど

9月いっぱいを目処に募集を締め切る予定です。
連絡を頂いた方には3日以内に確認の返信を致します。

【採用の基準・求めることの概観】

プロジェクト途中での募集ということもあり、「現状のめませかの作風を損なわず、条件に合う方がいれば」というスタンスで募集させていただきますので、自由度が少なく募集条件が厳しい部分もあると思いますが、ご了承下さい。

全担当共通

・「健全で王道なRPG」というめませかの作風から大きく外れないこと
・クオリティを現状使用しているデフォ素材/ロイヤルティフリー素材から維持、できれば向上すること
・公開中の「めませか」の世界観に賛同していただける方

グラフィック・BGM担当

・「めませかのクオリティ向上」のための提案ができること。
新メンバーにはゲーム全体を通しての美術・BGMの統一感ある演出でクオリティ向上に寄与してもらうことを期待しています。現状のめませかに対して、「こうすればもっと良くなるのに」「自分の作風で独自の世界観を作れる!」といった何かしらの提案をして頂ける方を募集します。

マップ・スキル・サブイベント担当(データ担当)

新メンバーには現状、私が全て担当している作業を分担してもらうことで、ゲーム完成までの期間短縮に貢献してもらうことを期待しています。そのため、ツクールの使い方などをある程度習熟した方にお願いしたいです。

また、もちろん各自で何かしらやりたいアイデアがあれば、実装コストやゲーム全体のバランスと併せて実装を検討致します。

4コマ/広報担当

作業量自体はそこまで多くはないと思いますが、定期的な情報発信が必要なため、ある程度ばらつき無く作業時間を確保して頂ける方を優先致します。めませかのキャラクター達を元気よく描いてくれる方の募集をお待ちしてます!

【各分野の作業内容】

  • グラフィック担当
  • BGM担当
  • 4コマ/広報イラスト担当
  • マップデータ担当
  • スキルデータ担当
  • サブイベント担当
  • グラフィック担当の作業内容

    めませかのグラフィック向上のための何らかの素材制作をしてもらいます。
    得意な分野でご応募下さい。4コマ/広報イラストとの兼任も可能です。

    ・ドット絵によるキャラモーション/マップのクオリティアップ
    ・アイコン類や小物イラストなどの整備
    ・UIのブラッシュアップ
    ・キービジュアルなど世界観を表現するイラスト

    などなど。ジャンルに縛りがない分、現状からのクオリティアップを期待します。

    BGM担当の作業内容

    現在、サウンド担当がBGMを制作してますが、担当が多忙のためゲーム全体のBGMまで賄いきれない状況です。めませかはMMO世界が舞台ということで、ゲーム内ゲーム(MMO)と、その上で展開される物語の2層に分けて考えることができます。新しい担当にはゲーム内ゲーム(MMO)部分のBGMを担当していただきます。ダンジョンごとのBGM、街のBGM(中央区画、運河区画など区画ごとに分けても可)、通常戦闘BGMの制作が主な担当内容です。

    ゲーム内ゲーム部分の世界観をBGMで構築して頂くことが第一の内容となります

    ゲーム内ゲームのBGMは以下のような演出方針を考えてます。
    ・あえて立体感があるBGMに統一することで、2Dのゲーム画面と空気感を外してプレイヤーに微妙な違和感を感じさせて、ゲーム内ゲームの存在を認識させる演出
    ・異世界感がある楽器や曲調(民族楽器と電子音の組み合わせなど。.hackなど参考)

    上記から外れても、「こういった曲調はどうだろう」といった提案があれば前向きに検討致します。

    また、希望があれば現サウンド担当と相談して分担の上SE演出など、BGM以外の音響演出も可能です。

    4コマ/広報イラスト担当の作業内容

    Twitter公式アカウントで連載する4コマ漫画や、広報用のイラスト(1周年記念イラストなどなど)、ゲーム内でのちょっとしたイラストなどを担当してもらいます。

    4コマはこちらでネタを用意しますが、自分で考えたものを混ぜてもらっても大丈夫です。また、希望があれば1〜2キャラほど、サブキャラのデザインをしていただくことも可能です。

    マップデータ担当の作業内容

    RPGツクールMVを使って主にダンジョンマップを作ってもらいます。FSMマップチップなど難易度高めのマップチップを扱うことがある他、画像データ圧縮のためタイルセット画像を編集して必要最低限のパーツ構成になるように調整しながら作成してもらうため、少しだけ手間がかかります。
    各ダンジョンのサンプルイメージや使用タイルは用意しますが、提案してもらっても大丈夫です。

    スキルモーション担当の作業内容

    スキルごとのキャラクターモーション、およびアニメーションエフェクトの調達/調整をしてもらいます。VictorEngineのVE_BattleMotionsというプラグインを改造したものを使用していますが、YEP_ActSeqPackでモーションを作れる方であれば問題ないと思います(VE_BattleMotionsの使い方はお教え致します)。

    どんなモーションの雰囲気かは、現在公開している3章までの習得スキルをご参考下さい。アニメーションエフェクトについては自分で作っても、素材として出来上がってるものを使用しても大丈夫です。

    また、希望があればスキルの効果やバランス調整などをしていただくことも可能です。

    サブイベント担当の作業内容

    各ギルドのモブPCにまつわるサブイベントの構成とイベントを作成してもらいます。サブイベントの雰囲気は公開しているものを参考にして下さい。ほとんどの場合、立ち絵なしの会話+ちびキャラのモーションで構成されます。

    また、サブイベントは本編とは独立したサブシナリオを軸に進んでいきます。現在、サブシナリオのおおまかな流れのみ出来ていて、具体的にどのようなサブイベントの構成で進んでいくかのプロットは出来ていません。いずれシロップが書く予定ですが、希望があればサブシナリオの全体プロットを書いていただくことも可能です。

    めませか3章「攻略情報」と「実績」

    3章攻略のヒント

    シズの「魔力の盾」は非情に強力です。
    ブランのHPが低い時は、シズが「魔力の盾」を貼って前衛で一時的に盾役をし、その間にブランを後列で回復させれば体勢を立て直すことができます。

    *ボスのレアドロップはNMか活性期の噂を集めると効率的です。バザーで売ってることもあります。

    □対ベビードラゴン

    ・リーダーモンスター(槍のアイコン)の場合は周りの雑魚から倒しましょう
    ・シールドブレーク直後に前列攻撃のブレスを行ってきます。
     ハナビはPT全体のHPを見て攻撃に参加するか、先読みして前衛の回復を行うかを判断しましょう。
    ・ブランが危ない時はシズが前列で「魔力の盾」を使うことで、ブレスを完全無効化できます。

    □神獣戦

    ・回復をこまめに行わないとブランが倒れます。リキャストごとに回復を使いましょう。
    ・敵の回避率が高めなので回復の合間にダークネスを使いましょう。
    ・必殺技に対してシズは「魔力の盾」で完全無効化でき、ブランは「バッシュ」を使うことで防御しつつ攻撃することができます。使えない場合はしっかりと防御しましょう。

    2章までの変更点

    戦闘のバランス調整

    装備やスキルの性能が一部変わってます。

    ダンジョン最深部のワープ設置

    ダンジョン最深部の魔法陣に触れると街まで帰還することができます。大穴ダンジョンは2層に入って奥にあります。

    NMの仕様変更

    通常ダンジョンはボスのみNMがポップします。NMは通常のボスを倒した後に確率でポップするか、噂があれば最初から出現しています。
    「淵源の杖」強化のための素材はそれぞれ、1章ボス・2章ボスのドロップアイテムです。
    NMだとドロップ率が大幅に上がるので、噂を集めつつ周回してボスを倒しましょう。

    また、雑魚モンスターは狩場ダンジョンのみNMポップに変更しました。
    狩場ダンジョンは同じ種類のモンスターを倒すほど・種類を問わずモンスターを倒すほどNMがポップしやすくなります。

    サブイベント「○章内クリアで報酬」の文言を削除

    代わりに、ボスモンスターのNMを登場章内に倒すと実績がもらえるように変更しました。

    ウィンディがレベル制限ボスに変更

    ウィンディが出現する部屋に入るとLVが12に制限されます。装備LVが合わない装備は外れるので注意しましょう。

    スーパーレア宝箱の実装

    攻略型のダンジョンに緑色のスーパーレア宝箱を実装しました。出現確率は低いです。ダンジョン奥の帰還魔法陣の上の宝箱はスーパーレアの確率が高いほか、ダンジョンのマナ活性期には出現確率がわずかに上がります。

    サイクロプスにレアドロップ武器実装

    密林遺跡のボスNMにレアドロップが追加されました。

    実装済みの実績一覧

    *1〜2章でのみ取得できる実績は、次回のアップデートで一時的にマナか素材で交換できるようにする予定です。

    シナリオ攻略系

    □ハローワールド:第1章を難易度「リアル」でクリア
    □ひとりぼっちはこわくない:第2章を難易度「リアル」でクリア
    □Dive To The World!:第3章を難易度「リアル」でクリア

    ボスNM討伐系

    □廃ゲーマーの一歩:第2章で「デスブリンガー」討伐
    □力・イズ・パワー:第2章で「ギガント」討伐
    □第六感:第3章で「ウィルオウィスプ」討伐

    制限ボス討伐系

    □儀式を破る者:LV12制限ボスを撃破
    □峡谷を跨ぎし者:LV22制限ケゼルを撃破
    ・峡谷のNMを倒して得られるアイテムを3種類集め、ダンジョン奥の大きな石を調べる。
    今までの敵とは一線を画す強さです
    ・LV22に到達し、アクセサリスロットが埋まって武器/防具の強化が進んでないと厳しいです。
    (できればマスターピース目指して専門ギルドで強化しましょう。)
    ・シズのフロストを使って雑魚を1匹足止めし、残りの雑魚から片付けましょう。

    レベル上げ系

    □一人前の初心者デビュー:自力でLVを20上げる(最短到達はLV21)

    強化合成系

    □マスターピースの輝き:マスターピースを1種獲得
    □MQ至上主義:マスターピースを5種獲得

    縮小したアニメーション画像を使うプラグイン

    タイトルのままです。
    画像サイズが大きいアニメーションファイルを縮小することで
    ファイルサイズ(ゲーム容量、通信時間、画像キャッシュ)の節約が図れます。
    使い方はプラグインのヘルプを参照くださいm(_ _)m

    AnimationImageSize.js(右クリックから保存)

    ツクール外でSEを確認するツール

    【ツクール外でSEを確認するツール】

    ○ツクール外でSEを確認できる
    ○Enterキーで次々と再生可能
    ○プラグインやスクリプトでSEファイル名を直打ちするときにコピペできる
    ☓ピッチ変更できない

    □基本の使い方
    ・ツクールのプロジェクトデータのseフォルダ(audio/se)を解凍したフォルダにコピペ。
    ・se_check.htmlをブラウザで開く。(Safariはoggファイルを再生できないのでChrome推奨)

    □RTP以外のSE素材を追加している場合

    から

    の間にseフォルダ内のoggファイル名を拡張子ありで列挙。
    *あらかじめRTP効果音のファイル名が列挙してるので、SEを追加削除してる方は適宜編集してください。
     テキストエディタによってはファイルを全て選択してコピーし、
     エディタにペーストするとファイル名をペーストできます。

    □注意点
    ・ブラウザによっては上手く再生できないのでChromeの利用を推奨します。

    めませか開発状況とお詫び<2/19>

    開発状況

    こんにちは。早いもので1月に2章を公開してから1ヶ月経ちました。
    その間、アツマールでプレイ数1万を達成することができ、2月10日の闘会議に行われたニコニコ自作ゲームフェス授賞式では3つも賞をいただくことが出来ました!ありがとうございます!

    さて、1ヶ月半〜2ヶ月ごとに新章を公開していくと謳っていましたので、来月には3章の公開時期……のはずだったですが申し訳ありません、3章の公開は4月中旬以降になる見通しです。

    自作ゲームフェスの締め切りまでに2章を公開したいと考えていましたのでそれまでは一気に制作を進めましたが、コメントで頂いた反応や実際に自分で遊んでみての感触として、

    ・敵を倒して進むプレイヤーと避けて進むプレイヤーの両極に分かれてバランス調整が難しい
    ・サブクエストの素材集めが大変
    ・素材集めで同じダンジョンを攻略するのが面倒
    ・町のモブPCをゲームの楽しさに活かしきれてない

    などの課題を感じました。
    そのため、新章の制作を進める前にいったんシステムを修正して遊びやすく・楽しめるゲームの基盤づくりに取り組むことにしました。

    システムの修正についてはだいたい70%ほど出来上がったといったところです。3章公開が遅れるお詫びも兼ねて開発中のシステムを簡単に紹介したいと思います。

    先制攻撃(スカウト)スキル


    気力を使うことでマップ上でジョブ固有の先制攻撃スキルを使うことができます。
    背後・左右から仕掛けないといけなかったり、遠隔スキルは動いてる敵には外してしまうなどの欠点もありますが、プレイヤーから積極的に戦闘をしかけることができます。

    ハイボルテージ


    敵に止めを刺したキャラは、一定確率(気力が高いほど発生確率高)でハイボルテージという状態になります。5秒ほどで効果が切れますが、すぐに次の戦闘を開始することでAP(行動力)にボーナスが貰えます。いきなり連続でスキルを使うことができ、敵の配置やスキルのリキャストに気を配ることで連戦をスピーディーにこなすことができます。

    ワープ選択画面


    今まで通りアイテム画面から転移結晶を使うこともできますが、ショートカットボタンからは専用のワープ選択画面でワープ先を選ぶこともできます。ゲームの楽しさには直結しませんが、どんな世界が舞台なのかが分かりやすいと思います。

    実績


    やりこみ層向けに実績システムを用意しました。報酬アイテムなどは現状では考えてませんが実績ごとにキャラクターのお祝いメッセージを見ることができます。

    ランダムダンジョン


    各フロアが自動生成される繰り返し遊べるダンジョンです。中に入るとレベルが制限されたり、ダンジョン内で手に入る持ち帰れない防具しか装備できなかったりと特殊な仕様になっています。
    このダンジョンでは各ダンジョンで取得できる素材も手に入るので、ゆるく遊びながら素材集めなどを楽しむことができます。

    また、武器も持ち帰ることができませんがダンジョン内で強化することができ、次にまたダンジョンに潜った際には強化が引き継がれます。そして、ダンジョンを攻略した暁にはこの武器が……?
    ※ランダムダンジョンについては調整に時間がかかりますので、3章公開後のアップデートで追加予定です。

    終わりに

    上記の他にも素材狩り&レベル上げ用のシンプルなダンジョンの実装や、町を遊びやすくコンパクトに調整、町で遊べるちょっとしたミニゲームの実装なども行う予定です。

    3章公開まで今しばらくかかりますが、ゲームとして着実に進化していますのでどうぞゆるく期待しつつお待ち下さい!

    歩行グラを演技させるテクニック(中級者向け)

    この記事はRPGツクールMVアドベントカレンダー2017の12/16担当分です。

    *この記事内の内容や紹介・公開しているプラグインによって発生するいかなるトラブルや損失・損害等につきましては一切責任を問わないものとします。

    二等身キャラ……可愛い!!……ですよね?
    オリジナルの3等身〜のキャラはゲーム世界=画面にリアリティが出て素晴らしいですが、デフォルメが強く記号的な2等身だからこそ手軽で記号的な演出が馴染むという強いメリットもあります!

    剣で敵を攻撃するモーションは敵キャラに体当たりで動かすだけで表現できるし、専用のモーションを用意しなくても棒立で回転させるだけで…


    ほら、ちゃんと前宙してるように見え……ますよね?
    等身がリアルに近づくほど、こういったモーションは専用のグラフィックを用意しないと不自然に見えてしまうというデメリットもあるんです。

    このように等身が低いと雑に動かしてもプレイヤーが想像力で補完しやすいのですが、それでもキャラをもう少し丁寧に動かすことで、さらにキャラクターたちを活き活きと演技させることもできます!

    この記事にはスクリプトを扱う高度な内容が多いですが、ここぞというシーンの演出を強化するのにきっと役立つ内容をご紹介します。(3等身〜キャラを使ってる方でももちろん役立つ内容があると思いますよ!)

    どんな人に向けた記事か?

    ・この記事で紹介する内容は動作環境V1.5.1を想定。それ以外のバージョンでは動作しない可能性もありますのでご了承下さい。

    ・イベントシーンの演出をもう少しだけ手間を掛けて凝ってみたい方。
    肝となるのは「手間をかけて」という部分です。ハッキリ言ってここで紹介するテクニックは人によってはイベントコマンドでイベントを組み上げるよりよっぽど時間がかかり、実用的じゃないと感じる方もいるかもしれません。まずはここぞというシーンでちょこっとずつ活用するのがいいと思います。

    ・一通りイベントコマンドの使い方を理解している中級者向け。
    スクリプトを使ったテクニックが大半です。ツクールの基本を抑えてる人じゃないと少し大変かもしれません。スクリプトの読み方、書き方もちょこっと解説してます。

    移動ルートのスクリプトコマンドを活用

    ちなみに、記事内テクニックのほとんどはプラグインコマンドではなく、スクリプトコマンドを使います。その理由はスクリプトコマンドは移動ルート内で使うことができ、キャラごとの処理を移動ルートにまとめることでわかりやすく記述できるからです。

    次項からは便利なプラグインの紹介とともに、スクリプトでキャラを制御する方法もできるだけわかりやすく解説していきますね。

    キャラに残像をつける〜『スクリプトの読み書きの基本』

    SAN_ResidualSprites
    サンシロ氏が公開している手軽に格好良い残像演出ができるプラグインです。
    残像系のプラグイン使ってない人はさっそく入れてみましょう!
    *利用時には配布先の利用規約を厳守して下さいね。

    私も普段は自作のしょぼいプラグインを使ってるので、こちらのプラグインに触るのは始めてです。一緒にプラグインのヘルプから使い方を学んでいきましょう。スクリプト自分で読み書きできる人はざっと読み流してね。

    ■プレイヤーに残像をつける
    $gamePlayer.residual().setValid(valid);

    ふむふむ、スクリプト触ったことない人には英語の羅列でなんのこっちゃですね。スクリプトを読み解く最初のコツは英語を理解することです!地道に辞書を引いていきましょう

    gamePlayer:ゲームのプレイヤー(主人公)
    これはわかりやすいですね、プレイヤーキャラのことです!

    residual:残余、残留物
    これは残像のことですね。

    スクリプト(プログラミング)の基本は雑に言うと
    「(誰の)何」というデータやオブジェクト(物)を表す表現と
    「誰々さん、何なにをしてください」という命令表現の二つです!

    $gamePlayerはプレイヤーのゲームデータを指しています。
    たとえば$gamePlayer._xというスクリプトは
    「誰の何」にあてはめると、「プレイヤーのx座標」という意味になります。それぞれの単語の意味さえ分かれば簡単ですね!

    一方、単語のあとに()がついてるものは関数と読んで、「何をしてください」の命令にあたります。

    $gamePlayer.residual()というのは
    「プレイヤーにresidual(残像)をやれ」と訳せますがこれだとresidual()のあとのsetValid(valid)とどう繋がるかがちょっと分かりませんね。

    少し話が離れますが、$gamePlayer.requestAnimation()という命令は「プレイヤーキャラにアニメーション表示を要求します」と訳せますが、このように単に命令を下すだけの関数の他に、$gamePlayer.x()のように「プレイヤーさん、x座標を教えてください」のように相手に尋ねて返答(x座標)を返してもらう関数もあります。

    $gamePlayer.residual()も
    「プレイヤーさん、residual(残像)をやってください」ではなく
    「プレイヤーさん、resudial(残像)の情報を下さい」と訳せるわけです。

    つまり、$gamePlayer.residual()の部分はプレイヤーから受け取った残像データそのものということになり、setValidの訳が「有効(valid)かどうかを設定(set)する」ということを踏まえると、

    $gamePlayer.residual().setValid(valid)
    プレイヤーの残像情報さん、残像をvalid(有効)に設定して下さい

    と訳すことができるのです!

    valid(有効)にはtrue(正)かfalse(偽)を指定します。これはスイッチのONとOFFにあたります。ツクールのスクリプトで使うJavascriptではスイッチのON、OFFはtrue、falseに置き換わると覚えておきましょう!

    さて、スクリプトの読み方の解説が長くなりましたが、まとめると残像のオンオフは次のスクリプトコマンドで行えることがわかりました。

    残像をオン:$gamePlayer.residual().setValid(true);
    残像をオフ:$gamePlayer.residual().setValid(false);

    一番最後のセミコロン「;」は1つ1つのスクリプトの終わりを表す記号です。場合によっては忘れるとエラーになることもあるので行の最後には忘れずに「;」を記述しましょう。

    プレイヤーではなく、マップ上のイベントキャラに残像を設定するには

    $gameMap.event(eventId).radisual().setValid(valid)

    というコマンドを使うみたいです。後半のradisual().setValid(valid)の部分はプレイヤーの時と同じですね。

    前半の$gameMap.event(eventId)を訳すと
    ゲームマップさんのイベント(イベントID)となります。つまりマップ上のイベントキャラのデータをイベントIDを指定して取得してます。イベントIDというのはイベントの編集画面の上部や、イベントを選択したマップ編集画面の右下などで確認できる番号です。

    イベントIDが10番のイベントに残像をセットするには
    $gameMap.event(10).residual().setValid(true);
    という具合ですね。

    (*TIPS:イベントの名前は自由につけられますが、「イベントID:名前」のように記述しておくと作業中にイベントIDを確認しやすくて便利です)

    さて、ここまででスクリプトコマンドを利用して好きなキャラに残像を表示・非表示ができるようになりました。記事の冒頭で述べたコンセプト通りに移動ルートに組み込んでみましょう。


    やっぱり残像はカッコイイですね!これ付けておくだけで殺陣の演技シーンで強キャラ感を出せます!

    さて、移動ルートでスクリプトコマンドを使う時限定ですが、スクリプトの最初の「$gamePlayer」、「$gameMap.event(eventId)」という部分を「this」(これ)の4文字に置き換えることが出来ます。

    this.residual().setValid(true);

    だいぶスッキリしましたね。なぜこんな置き換えが出来るのかというと、移動ルートを実行している主体となるモノこそが$gamePlayerで表されるプレイヤーデータ、または$gameMap.event(eventId)で表されるイベントデータそのものなんです!

    移動ルート中ではthis(これ)という指示語は、移動ルートを実行するキャラクターのデータということは重要なので覚えておいて下さい!

    移動ルートの中身はこんな感じになりました。
    (*スクリプトコマンド二つ目の最後はtrueではなくfalseの間違いでした)

    キャラの表示を拡張する

    続いての内容はトリアコンタン氏が公開しているCharacterGraphicExtendというプラグインを使用します。
    記事内のダウンロードを右クリックから保存してプロジェクトに取り込みましょう!
    *利用時には配布先の利用規約を厳守して下さいね。

    このプラグインを使うとキャラの細かい表示操作ができます。
    ヘルプを見ると……できること多いですね!w
    ここでは自分がよく使うコマンドを紹介します!

    拡大率変更

    this.setScale(x拡大率、y拡大率)
    さっそく出てきましたね、this。これからも一杯出てきます。thisは移動ルート中のスクリプトコマンドで使うと動いてるキャラを指します。

    this.setScale(200,50)とすると
    自分(this、移動中のキャラ)の拡大率(scale)をxの横方向に200%、yの縦方向に50%の値でセット(set)して下さいと訳せます。

    特にモンスターキャラなどに使えそうな演出ですね!


    ドラゴンの巨大化演出。画面シェイクと合わせて3段階で巨大化してます。イベントコマンドはこちら。

    やられ演出も縦横にみょんみょんと拡大率を変えて演出してみました。


    う〜ん、ちょっと微妙ですね。訳あって拡大・縮小の中心がモンスターキャラの中心になっていないのですが、これは修正が面倒なのでよしとしておきましょうw

    剣撃のアニメーションの表示位置もずれてますね。これはのちほど修正します。

    イベントコマンドはこちら。最初のスイッチではさきほど作った男キャラの残像攻撃の移動ルートを指定するイベントを起動しています。



    わ~〜長い。拡大率と透明度を徐々に値を変えてるのですが、これだと設定するのも修正するのも少し大変ですよね。

    ということで、徐々に数値を変化させるプラグインを書いてみました。

    CharacterDirections(右クリックから保存)
    自作のプラグインです。MITライセンスで改変可能です。
    上述のトリアコンタンさんのCharacterGraphicExtendと一部連携してます。全機能使うには二つともプラグインを導入して下さい。

    拡大率を徐々に変えるスクリプトは

    this.startScale(duration,x,y)

    *拡大率(scale)を始める(start)と若干名付けが悪いですが、移動ルートに書くには短い方が良いのでこの命名にしてます。

    先程説明するのを忘れてましたが関数の後ろの()内に記述するパラメータは引数(ひきすう)と呼びますが、カンマ「,」で区切って複数指定することもよくあります。

    1つ目の引数パラメータであるdurationは持続時間を意味します。

    this.startScale(10,200,50);

    とするとそれぞれの引数は
    duration:10
    x:200
    y:50
    となり、「持続時間(duration)10フレームで拡大率を横(x)方向に200%、縦(y)方向に50%に拡大縮小せよ」というスクリプトになります。

    透明度も同じように徐々に変化させましょう。スクリプトコマンドはこちら。

    this.startOpacity(duration,opacity);

    訳すとopacity(透明度)を始めるですね。
    引数も同じくdurationで指定したフレームの時間でopacityで指定した透明度まで変化させます。

    例) this.startOpacity(10,30);
    10フレーム後に透明度が30になるように徐々に変化

    先程のモンスターのやられ演出をこれらのスクリプトコマンドで置き換えると下のようになります。


    わー短い。


    毎フレーム滑らかに透明度、拡大率が変化するので見栄えも多少よくなりました……よね?!

    くるくる前宙させよう

    CharacterGraphicExtendでは他にもキャラの表示角度(angle)を調整するパラメータも用意されています。

    this.setAngle(10);

    とすると10°傾けてキャラが表示されます。
    拙作のCharacterDirectionsではこれを拡張した関数も用意しています。

    this.startAngle(duration,angle);

    例)this.startAngle(20,360);
    20フレームで360°、つまり1回転させられます。

    くるくる宙返りさせるには移動ルートのジャンプコマンドと一緒に合わせれば良いわけです。
    ただ、ジャンプコマンドはジャンプが完了するまでにかかる時間(duration)が分かりません。ですので、宙返り用の命令関数も用意しておきました!

    this.exJump(x,y,baseHeight,rotateNum)

    x:ジャンプのx方向移動距離
    y:ジャンプのy方向移動距離
    baseHeight:ジャンプの高さを表すパラメータ。falseを指定するとデフォルトの10が設定されます。
    rotateNum:回転数。逆回転するときは-1のようにマイナスの値を指定
    注)baseHeightは単純に20にしたら高さが倍になるというパラメータではありません。クセがあるので必要に応じてこまかく数値をいじって高さを調節して下さい。

    例)this.exJump(4,0,15,2);
    x方向に4,y方向に0、ジャンプの高さが通常(10)よりも高い15の値で、前方に2回転しながらジャンプを行います。

    この関数命令は、回転させずにジャンプの高さを変えるためにも使えるのでいろいろ使い勝手があると思います。

    さて、男キャラのモーションもいろいろいじってみました。前方に進みながら、途中で前宙モーションを下のスクリプトコマンドで入れてます。

    this.exJump(4,0,18,4);
    前方(xが4,yが0)
    通常より高く(baseHeightが18)ジャンプしながら、
    4回転(rotateNumが4)させてみます。

    主な変更部分のイベントコマンドは↓

    他に解説しておく点は、this._angle = -5;
    などと、キャラの表示角度を設定して細かく前傾、後傾の姿勢に調整しています。

    本来はthis.setAngle(-5);と命令表現である関数を使うべきですが、面倒なので
    this._angle = -5;
    と勝手に自分(this)の角度の値(_angle)を代入記号のイコール(=)を使って書き換えています。あまり良くないので、this.setAngle()を使った方がよいです。

    同様にthis._moveSpeed = 7;といったスクリプトコマンドがあります。

    これは自分の移動速度(moveSpeed)を設定しています。
    移動ルートのコマンドで設定するのと比べて、最大値の6を超えて設定できたり、通常は設定できない6.5といった細かい速度調整が出来たりします!
    こちらも本来はthis.setMoveSpeed(moveSpeed)という関数命令を使うべきです!良い子は値を直接書き換えるのではなく、関数を使うと良いでしょう。

    アニメーションの表示をカスタマイズ

    マップ上でのアニメーション表示を拡張するプラグインを以前作っていたので掲載します。アニメーションの拡大率、位置、角度などカスタマイズして表示できます。自作のプラグインで、MITライセンスで改変可能です。
    SpriteAnimation(右クリックから保存)

    こちらはプラグインコマンドがメインです。競合いろいろありそうな雑なプラグインなのでご利用の際はご注意を。プラグインヘルプに書き方はいろいろ書いてます。

    animation イベント:1 2 拡大率:10 角度:20 x:30 y:40

    上の例では
    イベントIDが1のイベントを対象に
    アニメーションIDが2番のアニメーションを
    拡大率10%で
    20°回転させて
    右側(x軸+方向)に30、下(y軸+方向)に40ピクセルずらして表示

    といった感じです。プレイヤーに表示したい時は
    「イベント:イベントID(上の例では1)」の部分を「プレイヤー」に置き換えて

    animation プレイヤー 2 拡大率:10 角度:20 x:30 y:40

    とすればOKです。

    animation event:1 2 scale:10 angle:20 x:30 y:40

    のように英語表記でも書けます。

    このコマンドで表示しているアニメーションをいい具合に調整します!

    剣撃とその後の炎エフェクトの部分は以下のとおりです。

    *補足、一番最初のプラグインコマンドの最後のmirrorという記述は、反転して表示して下さいという指示を表します。

    個人的にはアニメーションを画面上のキャラのサイズや向きに合わせて表示すると、とてもそれっぽく馴染んでプレイヤーが演出に集中する手助けになると思ってます!

    上の動画ではアニメーション以外にも細々と調整してみてます。最後は地道にパラメータをいじったりシェイク・フラッシュ・SEなどを付け足していって納得行くまで演出を仕上げましょう!

    その他のTIPS

    移動ルートでのバルーンの表示

    移動ルートではバルーン表示のコマンドが用意されていません。スクリプトコマンドで呼び出せます。
    this.requestBalloon(balloonId);
    バルーンIDはイベントコマンドでリスト表示される順番通りです。
    1:!
    2:?
    3:♪(音符)
    4:♡(ハート)
    5:怒り
    6:汗
    7:くしゃくしゃ
    8:沈黙
    9:電球
    10:居眠り

    個人的な感覚ですが、イベントコマンドでバルーン表示をしたときにウェイトを多用すると少し長ったらしく感じる場合が多いです。バルーン表示でのウェイトは指定せずに、直後にウェイトコマンドで60フレームほど待機させて、バルーン表示が終わらないうちに次の動作に入るとテンポが良くなっておすすめです!(もちろん、あえてウェイトを長くとってキャラクターの心情を表現するのも効果的な演出です!)

    対峙してるときは棒立させない

    キャラ同士が敵対視て対峙しているときに、二人とも棒立だと緊迫感が伝わりづらいです。

    左右の足のどちらかを前にしている歩行途中のグラフィックを使うと少しだけ構えている感じがでますよ!

    移動ルートのスクリプトコマンドで設定するには

    this._originalPattern = 0;

    1が通常の直立パターン、2だと前に出ている足が逆のパターンです。
    ちなみに、表示しているパターンが変わるまでに若干のラグがあります。すぐに変えるにはスクリプトが少し長くなりますが以下のコマンドをお試し下さい。

    this._originalPattern = this._pattern = 0;

    まだ書きたい内容はいろいろと考えてましたが、いい加減長くなりましたのでここら辺にしておきます!

    演出を学ぼう

    最後にキャラクターの演出が凝っていて参考になるゲームを2つ紹介しておきます!

    RPGハイールDX

    いきなりオープニングのムービーで引き込まれますが、本編のイベントシーンも負けずにキャラが活き活きと動いていて釘付けになるはず!物語もツクールを触ってる人なら特に楽しめる内容で、是非おすすめします!

    めまぐるしき世界にて!



    えぇ、拙作です!!イベントシーンは全てに力を入れて、なるべく見てるだけで楽しめるシーン演出になるよう頑張ってます!
    現在1章公開中で1時間ほどでプレイできるのでぜひぜひに!

    以上、拙作「めまぐるしき世界にて!」宣伝の長い前フリでした!( ̄ー ̄)

    キャラ演出は凝ると時間泥棒ですが、プレイヤーをゲームの世界に惹きつける確かな効果もあると思います!
    要所要所で取り入れてみてはどうでしょうか?!