■サイト[SilverSecond]トップ
■開発日誌トップ
■ 2017/05/20 (土)  片道次回作1 プロトタイプ ■
【片道次回作1 開発中!】

ここ最近、開発日誌をじっくり書いてしまって
作業の進行が少し遅れてしまっていたので、
今週は全力で開発の方に労力を投入していました。

ということで、現在、私が何をやっているかをお知らせです!



【ただいまの作業 プロトタイプ開発中】

ただいま「片道勇者の次回作」のプロトタイプを開発中です。
今は基本システムを作成中で、できているのは以下のあたりです。

・マップの表示処理(今回はこれも自作です、ヘクスマップ!)


・基本的な移動処理(クリックした先に移動できる、経路探索が少し大変)

・攻撃やスキルなど基本コマンドの実装
(今回はメニューを開く必要なし! 詳しいことはいずれまた)

・敵のAIのひな形(近付いたらこっちに気付いて、寄ってきて殴るだけのAI)

・落ちてるアイテムと交換できる処理

・ランダムで敵やアイテムが沸いてくる処理



そしてこれから最低限「骨」として作らねばならないのは、
いま思いつくだけでも以下のあたりです。


・情報を表示するための各種インターフェース
(HPゲージやら何やら。表示するだけなので楽)

・マップ自動生成処理(そもそもマップのあり方を再検討する必要がありそう。
『片道勇者』では「大局的にどう進むか」を楽しめる部分が少なかった気がするので)

・ショップの取引機能(地味にすごく面倒臭い処理です)

・レベルアップ処理(今回はプラス版の女神像的な数択ランダム選択肢から、
上げるパラメータや取れるスキルを自分で選べる予定です)

・キャラクターとの会話処理や選択肢機能・テキストスクリプト

・強制スクロールの処理(当然今回も強制スクロールします)

・マップ上の「壁」の実装(マップのアクセントとして優秀すぎる!)

・タイトル画面の実装(片道勇者みたく少し凝ってみたいですね)

・ワールド選択画面の実装(いつも通り)

・キャラメイク画面の実装(今回はワールド選択の次に出すかも)

・ゲーム終了時評価画面の実装(いつも通り)

・街やダンジョンの生成処理

・ミニマップ処理(今のところ必要か分かりません、別の手段で補える?)

・各種便利機能(最後まで考え続けることになるでしょう)




【マップ自動生成、どうしよう?】

この開発予定の部分で、いま特に悩んでいるのが「マップ自動生成」です。

『片道勇者』のマップ自動生成は、
「とりあえずそれっぽいマップが奇跡的にできた!」というところで満足してしまい、
「どう楽しんでもらうか」という点において何の意図も持っていませんでした。

「山の近くにいれば敵のランダムイベント襲撃に対応しやすい」など、
たまたま局所的には行動の方針が生まれたりもしたのですが、
無思考で作るのはあまりにも偶然頼りすぎるので、
今度はしっかり「意図」を持って作りたいなと思います。
せっかく2Dマップを使っているのに、そこで面白さを出せないのはもったいない!
せめて、上あたりを攻めるか下あたりを攻めるかを
「狙って判断」して進められる感じにしたいですね。

「たまに1地形に2つの属性がある(北側が雪原、南が荒野など)」とか、
「たまに危険だけど実入りが大きい細道ルートがある」とか、
いただいたコメントからもいろいろと考えてみています。
一方で、ある片方の選択肢ばかりが有利になると面白くないので、
バランス調整の労力はますます上がるかもしれません。

基本は「リターンが大きい道はリスクが高い」でそれっぽくなるでしょうけれど、
「状況次第では自主的に危険な道を回避したほうがいい」くらいの
微妙なバランス感で行きたいですね。
『片道勇者』のダンジョンみたいに、変に毎度突っ込みすぎると死ぬくらいが理想です。



以下はいただいた拍手コメントへの返信です。

>PLAYISMでローカライズする際、全テキストのエクセルデータを
>用意するそうですが、これをウディタで準備する場合は始めから
>DBに打ち込んで呼び出すように作るのでしょうか? それとも全部
>手作業で打ち込み直したり? 選択肢やインターフェイス周りの
>テキストはどう管理すべきでしょうか?                  .
>何か効率的な方法があれば紹介してほしいなあと思っています。


PLAYISMさんちのこちらの手順にある内容ですね。
ウディタの場合、ローカライズすることを前提にするなら
全ての文字列を始めからユーザデータベースや
テキストファイルに入れてしまうのが一番早いと思います。
片道勇者では一定以上を手作業で入力することになってしまいましたが、
それでも大変な地獄を見てしまいました。
うまいことデータベースに入れておけば整理もある程度ラクになるはずです。

さらに、もしPerlやPHPなど何かスクリプトが使えるのでしたら、
データベースに雑に文字を入れていても以下のような方法が使えます。

1.ウディタで各データベースをCSVとして出力する。
2.スクリプトなどを組んで「日本語部分だけ抽出」し、
それをエクセルファイル化して先方に渡して翻訳を依頼。
3.英語化されたテキストをもらったら、またスクリプトを組んで
「1」のCSVに対して「日本語部分を英語文で置換」する。
4.以上の手順でできた翻訳済CSVをウディタに読み込ませる。


という手順で、比較的楽にゲームを翻訳できると思います。
私がほぼそんなやり方でした。

ウディタには文字列置換などの機能もあるので、その気になれば
ウディタのコモンイベントを組んで上の全工程を行えるかもしれません。
とにかくローカライズにおいて「抽出」と「置換」は自動化しないと大変です、
人間の目だと絶対に見逃しますから。

ちなみに私が見た海外のゲームだと、ゲームに使用する文字列だけが
全部数個のXMLファイルにまとまっていたりして、
そこから呼び出す形にしていたケースがあります。
そこまでやっていれば翻訳も手軽なんですが、その場合、
ゲーム内に1テキスト入れるにもいちいち文字列ファイル側に
入力しなければならなくて、作るのがちょっと大変になってしまいます。

使えるリソースと使える技術の範囲で、うまくやってみていただければと思います。



開発日誌のゲーム開発ネタが尽きてきているので、
もし何か「こんな話題を聞いてみたい!」というお話がございましたら、
ぜひ拍手コメントからお送りください!
答えられるものはどんどんお答えしていきます。
 
関連記事