フリーゲーム「妹のドリームランド」開発室

RPG フリーゲーム ツクール RPGMaker ボカロP 温州みかん 月曜日更新

「負荷」という壁

妹の夢の世界(Ⅱ世界)を小さくします。

f:id:workingestimation:20190402225247j:plain

PCでもスマートフォンでも、高性能で大容量です。

大昔のファミリーコンピュータの頃に比べると、処理速度や容量については比較にならない程改善され、どんぶり勘定でよくなりました。

俗に言われるムーアの法則です。

そのころ開発者であったわけでもありませんし、実際にその現場を知っているというわけでもなく、業界裏話として語られている部分を信じているだけです。

当時は涙ぐましい努力があったと。

「妹のドリームランド(仮題)」は一見てスーパーファミコン後期からプレーステーション前期程度のグラフィックで、現代のPCやスマートフォンでは「楽勝」な処理のように思われていますが、実は、大きな壁があります。

BGMが重いのです。

比較的ごく最近まで、ゲームの音楽はMIDIファイルというリアルタイムで音を出すファイルを読み込んでいました。これは、20kバイト~重いモノでも100kバイトの程度で、一瞬で読み込めます。

しかし、RPGツクールMVから、このMIDIファイルによる再生の仕様は廃止になり、oggという圧縮ファイルを(ループ)再生するという方式になり、BGM1曲あたり、400kバイト~2Mバイト程度の容量を食う厄介者になってしまったのです。

ちなみに、Windows7あたりから、MIDIの再生機能は標準装備ではなくなりました。

ここだけの話、画像ファイルなら、暗転時に事前にロードさせるという技術を使うことができます。しかし、音楽ではその方法が通じません。1かたまり が大きいので、プレロードでも、その時、ほぼ確実にラグが発生するからです。

そのマップで切り替わるBGMすべてを、マップ切り替え時に読み込ませると、マップ移動そのものが成立しなくなる箇所がでてきます。

 

つまり、「イモドリ」は、画面切り替え時(BGM切り替え時)にラグが多いのです。

 

対策としてできることは、1分ループを40秒ループにして、1kバイトでも削るくらいです。

あとは、画像ファイルや処理そのものを削る、という方法です。

自称ボカロPの温州(うんしゅう)みかんは、プログラムの知識が乏しく、プラグインを組むことができません。なので、無駄に負荷の掛ける仕組みで、ミニマップを表示したり、キャラクターの装備や効果を指定したりしています。

 

そのような理由もあり、β版では、Ⅱ世界を小さくします。

「広すぎ」という意見が「やっぱり」あった、というのが本当の理由です

実は、テストプレーで「洞窟ウザ遠い」、という精神的負荷を感じていながら、世界探索型を名乗っているものの、ダンジョンが少ないボリューム不足を補うために、世界そのものを広くしたという経緯があります。

広い、と指摘があったら変えよう、と思っていました。

 

4月4日(木)~4月10日(水)まで、ブログをお休みします。

β(ベータ)版 配信の前に バージョンアップ

バージョンアップ
ver0.00→ver0.10(2019.3.31)

https://www.dropbox.com/sh/nbq1hi9qffkhmf4/AACN4T2VqK43pHM1caUPhlwIa?dl=0
(前バージョンも存置)

主に以下の点を変更しました


◇大きな変化
・本を装備するとSPが上昇する仕様を廃止
(これにともなう主人公と犬のSPの成長値の上昇補正)
・ダンジョンや町での戦闘背景を追加

◇スキル、パラメータ、ステータスなどの設定
・主人公と犬のSPの成長値の上昇補正
・ハロルド エナジー・ウェーブ スキル効果の上方修正
・テレーゼ ショック・ウェーブ スキル効果の上方修正
・星の子 SP吸収 スキル効果の下方修正
・さびた剣 の売値 100G→200G
・スライムゼリー の売値 50G→100G
・鉄パイプを主人公以外でも装備可能に

◇敵のグラフィック表示位置の変更(主人公たちに近すぎました)

◇追加要素
・つよいスライムのドロップアイテムを追加
・知恵の洞窟にセーブクリスタルを配置
・新マップ 雪の島 を追加

◇セリフの言い回しなどの変更点
Ⅰ世界
・博士が仲間になるとき
・ギルドの受付
ユングの町 宿屋の老婆
・知恵の洞窟の石像にタッチしたときのコメント
Ⅱ世界



・砂漠の狼

◇バグ等不具合の是正
・メニュー画面でアンチドーテを使用すると、メニュー画面が閉じる不具合を修復
・火山の移動先が1マップ飛ぶ不具合を修復

 

セーブデータの引継ぎは可能ですが、以下のような操作が必要です。

「imo-ver0_00」フォルダ内の「www」フォルダ内にある「save」フォルダを
「imo-ver0_10」フォルダ内の「www」フォルダ内へコピー

f:id:workingestimation:20190331002051p:plain

セーブデータ引継ぎ1

f:id:workingestimation:20190331002216p:plain

セーブデータの引継ぎ2 www→save



セーブの個ファイルごとでも可能です。対象ファイル例:「faile1.rpgsave」を「save」内に移動。なお、新規に「save」フォルダを作成しても、関連ファイルが作成されないため、ゲーム内で、セーブしたのち(関連ファイルが自動生成されたのち)データのコピーを行うことを推奨します。

f:id:workingestimation:20190331002310p:plain

セーブデータの引継ぎ3 各セーブファイル

 

 

workingestimation.hatenablog.com

 

「世界樹」の呪い

世界樹は呪われています・・・

YouTubeなどでゲーム音楽のメドレーを聞いていると、曲にちゃんとしたタイトルがある曲と「ボスバトル」「戦闘曲1」などとファイル名(識別するための名称)のような曲があることに気づきます。
サウンドリエータさんのセンス、と言ってしまうとそれまでですが、端的には依頼された「曲」を作っているのか、開発室と一体となって「ゲーム」を作っているのか、という制作の方向性の差が表れているのだろうと感じられます。

曲にはタイトルが必要です。
しかし、ゲームの一素材には、解りやすいファイル名が必要です。

どっちがいい、わるい、ではなく、また、白紙段階での音楽(テーマ曲・BGM)の外注やフリー素材の活用が増えたことへの苦言でもありません。個人の感想です。

しかし、ファイル名のような曲のほうが、ゲーム音楽ぽいのです。頑張ってシーンを盛り立てているように思えます。
逆に凝ったタイトルの曲は「取って付けた感」があります。
「曲」単体の良し悪しで言えば、凝ったタイトルのほうが汎用性が高いと思え、総じて「曲」単体の価値を押し上げています。
しかし、ゲームとの一体感に基準を置くと、簡易的なタイトルの曲のほうに軍配が上がります。

ゲーム音楽のタイトルで、まっさきに浮かぶのが「ユグドラシル(Yggdrasill)」です。感覚的に多いです。
北欧神話由来の世界を体現する巨大な木「世界樹」を意味しています。
語源は「地名」や「オーディンの馬」から来ているとかさまざまですが、世界樹ユグドラシルが使用されるゲームの世界観に北欧神話要素は極めて薄いです。

なんとなく響きがいいから、という理由で多用されているのでしょうか?

ゲームの本質に近づこうとせず、とりあえずこの言葉を入れれば、ファンタジーっぽくなるという代表格が「世界樹です。
世界樹」が出てくるRPGは様式美を追及する姿勢が強く、新しいものを開発しようという意識が弱いです。それこそ、良質な素材を集めれば良質な完成品ができる、と考えているかのようです。

実在するタイトルの批判ではなく、許容する業界の空気への批判です。プロアマ問わず、様式美の追及を放置すると業界が停滞します。

しかし、確実なウケをねらった企画が増えたことは、チームが一体となって新しいゲームを開発できる環境が、ほぼない、という現実の裏返しかもしれません。
しかしながら、結局「プロデューサーの好み」の一言で片づけられてしまいます。

なお、妹のドリームランド(仮題)の制作は、テストプレヤー様を除き、私一人です。
チーム一丸・・・ナニソレ、おいしいの?

「乱数は均一」なのか

「ソシャゲガチャは、午前0時にすると、当たりやすい」

ゲーム制作者となっての考察

 

「乱数」はよくゲームに利用されます。

RPGにおいては、敵の出現率やその構成、敵に与えたり、受けたりするダメージのバラつきなどにです。

妹のドリームランド」にも利用しています。

しかし、近年では、スマートフォンのアプリなどのソーシャルゲームにおける、(課金による)キャラクター選出(ソシャゲガチャ)の印象が強くなっているように感じます。

例:

SS_ハロルド・・・0.005%

SS_テレーゼ・・・0.005%

SS_マーシャ・・・0.005%

のように

公平を期する手段として、乱数が用いられていますが、「乱数は均一」なのは膨大な試行回数を行ったときのみです。1回や2回の試行回数では、均一にはなりません。

経験上。学術上。

しかし、ソシャゲガチャのようにお金が絡むものでは、正確に既定のパーセンテージを満たさなければなりません。一時的な、わずかな偏りでさえ、許されない状況になりつつあります。

そこで、逆転の発想 乱数テーブル というシステムの導入が考えられます。

内部のカウンタ(プログラム)により、抽選前に当たりと外れを割り振って「2パーセントの割合で星5」を維持する仕組みです。

例えば、新たな抽選が始まり、

1 始めに当たりを出し

2 規定の回数ハズレを出す

3 パーセンテージが整ったら、1に戻る(また当たりを出す)

を繰り返します。

もちろん、すべてのソシャゲガチャがこのような抽選を行っているわけではありません。しかし、なんらかの手を加えて<結果の均一>を保とうとしています。

部分的な「乱数は均一」ではないので、そうでもしなければ<結果を均一>にできないからです。

つまり、始めの当たりを出すタイミングにガチャサーバーにアクセスできれば、確実に当たりテーブルに乗ることができるわけです。

 

唐突な Q&A

Q.そのシステムをリセットするタイミングはいつか?

A.午前0時、日付が変わったとき

Q.なぜ、そう言える!

A.お偉いさんに統計を報告するとき、日単位が最も報告しやすいだろうから

 

というゲーム・システム開発者目線の考察ができます。

そして、実はこの乱数・ランダム要素への介入はフリーゲーム「妹のドリームランド」へも活かされています。なお、課金システムはありません。

 

workingestimation.hatenablog.com