ティラノスクリプトではじめてのノベルゲーム制作をした (ツール編)

ご無沙汰になってしまったブログ投稿です。
どうやら僕はブログやSNSが苦手なようで。別に嫌いという意味での苦手ではなく、特に発信についてはそのインターバルを(一般的な)短さで行うことについて、向いていないのではないかと思っています。笑
それで、今日は急に思い立って書き始めたわけですが、流石にノーテーマで一記事書ききることも難しいので、最近公開したゲームの制作環境についてちょっと話をしてみたいと思います。

という書き出しで打ち始めたのですが、思いのほか長くなってしまったので2回に分けて記事にしようと思います笑
今回は「ツール編」ということで制作に利用したツールについて記していきたいと思います。 あ、「この制作環境すばらしいからYOUもこうしなYO!」みたいなつもりはなく、「こんな環境で作ったよ!」という報告のつもりで書いていきたいと思います。
あと、「こっちのツール使うと調子いいよ」みたいなご意見を貰えると僕ぁ嬉しいです。

なお開発機は主に家で使っているMacBookProと持ち運びのGPD pocket(windows)です。

ティラノスクリプトではじめてのノベルゲーム制作をした(ツール編)

作ったモノについて説明(という体の宣伝)

探しものは、夏ですか。

f:id:unity-ta:20180905221709j:plain

2018年8月、数年ぶりに帰省した田舎町で僕は何故かビー玉を探す不思議な女の子と出会った。
「──じゃあ、私のお願い……聞いてくれない?」
きっと忘れることのない、僕の見つけた平成最後の夏休み。

夏をテーマにしたプレイ時間2〜3時間程度の短編(中編)ノベルゲームです。ぜひプレイしてください。
https://novelgame.jp/games/show/1111

ざっくりと概要を説明するとノベルゲームエンジンTyranoScriptを使用しており、僕のほかにシナリオライタとイラストレータ、BGM担当の方がいて、僕は主にスクリプトと雑用係をしておりました。

最初はコードは書かないだろうしファイルはGoogleDriveとかで管理すればいいかな〜なんて思っていました。
でも、途中で気が変わり色々しっかりやったら、割としっかりやった分の恩恵を感じています。というか、やってなかったら間に合ってなかったかもしれない。

というわけで、ティラノのプロジェクトの制作環境まわりの話をしていきます。 (PGにとっては当たり前の話とかがメインです)

エディタ

VScode

https://code.visualstudio.com/

f:id:unity-ta:20180905221747p:plain

エディタは好みもあるとは思いますが、僕が使っているのはVScodeです。
まぁエディタはメモ帳でなければ(ある程度エディタとしての機能が揃っていれば)良いとは思いますが、VScodeを選んだ理由としては

  • 豊富な拡張性(ティラノ制作に関わらず)
  • 軽い
  • Gitと連携できる
  • jsもマークダウンもpython(後述)もおなじエディタで書ける
  • Win、Mac問わない

が挙げられます。

中でも特筆するならGit連携できること、マークダウンのプレビューを編集中のスクリプトと並べて見られる事でしょうか。
OS間での差もほとんどないので、操作への慣熟も早いと思います。 あと、何より軽い。

僕は作成したマクロやらスクリプト書く上でのルールとかのメモをマークダウンで書いてまとめているのですが、それをプレビューをしながら編集できるというのが中々調子が良いですね。

あれ、あのタグのデフォルトってなんだっけ?→ブラウザ開いてリファレンス見る
あれ、あの効果音のファイル名ってなんだっけ?→ファインダー開いて確認
のような工程が殆どなくなりました。

コミュニケーションツール

Slack

https://slack.com/

コミュニケーションツールは流行りのSlack。
slackを選んだ理由はチャンネルでトークテーマを切り分けられること、導入が簡単なこと、多数決とかタスク管理とか便利なアプリも入れられる(僕はほとんど初期状態のまま使ってますが)

イラストやシナリオといった部門の切り分けによるチャンネルの使い分けも有意義であると思いますが、僕たちは規模も小さいので「ミーティング用」と「決定事項」での切り分けを行なっています。
チャットは最も簡単なコミュニケーションですが、どうしてもログが流れてしまい後から読むのがつらいです。
ですが、チャット的使ったミーティングの結果を掲示板的使い方をする決定事項チャンネルにまとめていくことで、後から見たときに議事録というか以前のミーティングの内容を掴みやすくなりました。

ファイル(バージョン)管理

bitbucket + ソースツリー

アトラシアンのステマみたいになっちゃいますが、個人リポジトリ(無料)の導入で作業効率が凄い上がりました。 (最初はdropboxでファイル管理していたのを途中からbitbucketに変更)

ほんと一人で何か作ってる人とかプログラマでない方にこそgit(バージョン管理)の有用性は伝えたいですね。

まず、僕らはスクリプト担当者とシナリオ担当者が別人なので、シナリオの加減筆の差分が見れるのは大きいです。
それだけでなく、二端末で作業しているので家でガッツリ作業してるブランチ放置してても、出先でMasterブランチの動作確認とか、シナリオさんのプッシュしてくれたものの確認とかもできる。いちいち連絡貰わなくても、プッシュの連絡もメールで来る。
今回はプルリク使ってないけど、プルリクの運用もレビュー漏れが防げますし。作業自体もコミット単位で何かしら意味のある切り分けがされて、整理される。
これまでgitを個人制作で使っていなかったことを結構後悔しました。始めは他の方のツールへの慣熟等懸念がありましたが、有り余る恩恵です。
とりあえずgitナニソレな人は「git」とか「バージョン管理」でググると作業効率が上がるかもしれません。

とか言いつつ、近々GitLabに移行の予定なんですが。笑

デバッグ

ティラノライダー & Google Chrome

ティラノライダーはいわずと知れたティラノデバッグツールなので、いいとして。chromeでのデバッグですね。
ティラノのindex.htmlはChromeではそのまま開けないのでpythonのSimpleHTTPServerで確認って感じです。確認したい時にコマンド一発なのでストレスはないです。
macでもwinでもほぼ同じですぐに実行できるので助かりました。

その他

ツールとは違いますが、作業中のメモはマークダウンで書く癖をつけてます。
基本的にスクリプト書く上で忘れがちな事などのメモはマークダウンで書いてプレビューを表示すると効率が上がります。プレーンテキストと違って画像が入れられるので、助かってます。 きっと後からメンテナンスや改修する時にも、役立つと信じています。笑
また、シナリオ担当から貰ったテキストファイルを読み込んでスクリプトに変換するツールやゲーム開始前のリソースのプリロードを行うスクリプトを自動で書き出すツールをpythonで書いたりしました。
このあたりは次回、作業編でお話できたらなぁと思います。

結論?

小規模だったり個人開発でも多少まじめに環境作るとちゃんと効率が上がるよってことでしょうか。 僕もこれまでは面倒だし、どうせローカルでしか作業しないしって理由でリポジトリ建てないでいたのですが、実際Git導入したおかげでVScodeもその真価を発揮していい感じになりました。
制作環境は一人だろうと少人数だろうと手を抜いちゃだめですね。

関連記事:

wandervogel.hateblo.jp