ADDRESS1 開発後記
ADDRESS1 開発後記
公開してからだいぶ時間が経ってしまったが、開発を振り返ろうと思う。
”Address1”とかいうタイトル
前作が「天国の一丁目」だったので次は「一番地」だなと思い、 番地と言えばメモリのアドレスだし、次回作タイトルは「メモリの一番地」にするか~
というのがこの作品の全てであり、あとはこのタイトルに合うようにシナリオを書いたりしただけ。
開発期間
本格的な開発を始めたのはこのツイートを見るに"2019-10-27"で
steam版の初公開が"2023-05-01"で キャラデザや大まかなシナリオの作成は自分のツイートを見る限り"2019-02-06"なので 開発期間は大体4年ぐらいか。まあ開発をしていなかった期間や、steam公開後に英語版を作ったりしていたので 正確な開発期間となるともっと曖昧な数字になる。
開発前から開発期間は4年ぐらいにしようと設定していた。 なぜ4年なのかは後述。
薄暗い気持ち
正直言って薄暗い気持ちで開発を始めた。 megabitconvention02というのが2019年08月25日に開催されて、無謀にもこれに一度出店をしたことがあって。 私の作ったゲームのクオリティがあまりにも低かったのと集客がヘタクソで誰からも遊んで貰えなくて。 両隣のブースは凄く人気があるのにその間の自分のゲームは誰にも遊んでもらえなくて。 みんな私のゲームをチラッと見ては見なかったことにして素通りしてゆく。 もうひたすらボーっと11:00~16:30までひたすら暇をしていただけで。それだけでかなり精神的にキてしまったんですが、このイベントのあと公開されたメガビットコンベンション02のシューティングゲーム一挙レポート!と銘打った記事にさえ辛うじてシューティングゲームである自分のゲームは紹介されていなかった事が追い打ちになって。
メガビットコンベンション02のシューティングゲーム一挙レポート!
— 寺島壽久/ゲームキャストの中の人 (@gamecast_blog) August 26, 2019
ボスが溶ける破壊のSTG『グランドクロス・リノベーション』、グラディウス系パロディゲーム『魔神少女シューティング』など注目5作を取り上げました!https://t.co/BLvWOyu8Fu pic.twitter.com/ItNkcyQKhL
(いいかユズ、ホントのクソゲーってのは酷評されるんじゃなくて無視されるんだぜ。むしろ酷評なんてちゃんと遊んでくれている上に、自分のターゲット層以外にまで自分のゲームが行き届いているというスゲー事だからな。)
こういう舞台に立ってみて初めて、「大学の発表の場」と「商品発表の場」の違いを理解しましたね。 大学の発表は「そもそも周囲の人間が自分の話を聞いてくれるという大前提」があって、 こういう商品発表の場では「そもそも皆自分に対して興味も無く自分の話を聞くつもりもないので、何とかして自分の話は聞く価値があると説得しなければならない所から始まる」ということにあまりにも無自覚だった。
このイベントで隣のブースになった魔神少女STGというゲームを開発した「ひつじさん」という方にどれぐらいの期間開発をされていたのかうかがったところ「4年」という回答が帰ってきたので「自分もそれぐらい頑張れば同じ土俵に立てるのかな」という思いでADDRESS1の開発期間を4年と見積もった。
8/25(日)に大阪なんばで行われる「Megabit Convention 02」に魔神少女STG出展します。試遊台もあるぞ!https://t.co/49g5f0P2DB#魔神少女5周年記念 pic.twitter.com/BTSK7XbSJN
— ひつじさん (@Hitsuji_3) August 17, 2019
しかしこのイベント直後の時点では「もう2度とゲームなんて作りたくない」ぐらいの気持ちだった。
そのタイミングで「Hellsinker.」と出会ってもう一度だけ、開発をしてみようかなと思った。 しかしまあ、ADDRESS1の開発を始めたのはこのイベントで私を無下に扱った連中への復讐に近い思いからだった。
面白いゲームを作っている製作者のTwitterを見てみると人間性が最悪でガッカリしてしまうことが多いが ゲームや何かしらの作品を完成させるということは割と大変なことで何かしらの「拗らせ」や「悪意」や「名声欲」のような (いい意味でも悪い意味でも)強い感情が無いと難しいことではあるよなと今では思う。(異論は認められるものとする)
ゲームシステム
「シューティングゲームにおける接近戦って楽しいしそれに重点を置いたSTGを作ろう!」ぐらいのアイディアで作った。
ADDRESS1
— フリゲ20XX得票作品bot (@BestFurigeBot) April 1, 2023
弾を回避する系のstgではなくバリアをはって近接戦闘を挑む系のstgなので、パターンを覚えてボスに張り付きながら近接攻撃をするときは脳汁がめちゃくちゃ出ましたhttps://t.co/9i9zV84aAz
それをちゃんと理解してくれた人もいてとても嬉しい。
しかし、「上手くタイミングを見計らって接近戦をしかける」というゲームシステムを上手く機能させることが出来たのは「Stage1」だけで、 それ以外ではステージの内容を頭捻って考えるので精いっぱいで、「近接戦システムを上手く機能させよう」というところまでステージの内容を練り上げることが出来なかった。
スコア
当初は「最早スコアなんて不要だろ」と考えていて、要素として付けていなかったのだが、 知り合いにこのゲームを少し遊んでもらってみると「ただ敵の攻撃を避けながらショットを打ち続ければ良いタイプのSTGとはちょっと違うので、一体どういうプレイをすれば良いのか分からない」ようで、それを見てから考えを改め「初めてプレイする人にどのようなプレイが良いプレイなのか教える指標」、つまり「稼ぐもの」というよりは「機械学習エージェントに与える報酬」というスタンスでスコアを設計することにした。
参考作品
初期のゲームシステムを考えるうえで参考にした作品は「Hellsinker.」「らじおぞんで」「空飛ぶ赤いワイン樽」「神威」です。
どれも名作。
ヒトガタハッパ
Address1を作っている最中に「ヒトガタハッパ」というゲームと出会った。 自分は「シューティングゲームにおける接近戦って楽しいしそれに重点を置いたSTGを作ろう!」ぐらいのアイディアしか出なかったにも関わらず、 このゲームはあろうことか「自機を爆弾として敵にぶつけて攻撃する」というのが基本設計で。
しかもそのゲームコンセプトを活かすようなステージを最後まで練り上げることが出来ているし、なにより凄く面白い。 完全に負けたと思った。
このシステムは、「弾幕というものは接近を防ぐために張られるものであり、弾幕を避けきりなおかつ敵に直接打撃を入れてこそ、真に弾幕に勝利したと言える」という作者の主張を表現したものである。
(引用元: pixiv百科事典)
完敗としか言いようがない。
Penryn
元々狂ったようなゲームシステムにしようと思っていたのでキャラデザも狂った感じで。
脳みそがむき出しなのはなんでなのかはここを見てもらった方が早いと思う。(このゲームのシナリオには直接関わってこないことではあるけれど、主人公に「自分と同じコンプレックス」という呪いを与えて、その主人公が救われる物語を作ることで間接的に自分を救いたかった)
というかこういう考えなので、バッドエンドしかないゲームとか作れないんだよな。 どうしてここまで苦労して可愛がって作ったキャラクターに不幸な思いをさせることが出来ようかという気持ちになってしまう。
PenrynとMIA
「頑張って頑張っても目標に手が届かない」のと「頑張って頑張ってようやく目標に手が届いた瞬間にその目標の周囲を覆っていたメッキが剝げ落ち、”自分があれだけ追い求めていたものはこんなにも価値の無いものだったのか”」となるの、どちらが辛いんでしょうね。
ちなみにこのメッキですが、目標に向かって頑張り続けた期間が長ければ長いほどピカピカ輝きを増してゆくので剝がれた時の失望も目標に届かなかった時の失望も大きくなってしまうのが厄介な所だと思います。
PenrynとMerom
同じような生い立ちを持ち、同じ大切なものを持ち、それを(守るため|取り戻す為)に同じように身体改造を加えていった2人ですが それを(守るため|取り戻す為)に真逆の行動を取る2人。 2人の思考と肉体改造はどこか常軌を逸していて、きっと2人とも限界は近かったのでしょう。
Meromの手をあれだけ過剰に大きくしたのは 「大切なものをこの手で守りたい」という気持ちが過剰なまでになってしまったというメタファー(?)
GameOver時のテキスト
一応テキストの主体がPenrynともMIAとも取れるように書いたはずだけれど、 どれか一つだけPenrynが主体としか取れない文章が存在した記憶がある。
別に主体を私として取っても良いです。
Stage4クリア後メニュー画面のテキストの日本語訳
まるで 肉食動物のように
世界は私に牙を向ける
まるで その獲物であるように
抵抗せずそれを受け入れる
抗っても意味がないことぐらい分かっているから
この身に湧き上がる絶望と痛み
その中でも自身を終わらせることが出来ない私は
一体何をこの世界にまだ望んでいるのだろう
制限され義務付けられた休養の中で
即時的な快楽にすがり全てを見失ってしまう前に
この世界の全てにささやかな反逆を
自らの存在に福音を
かつて確かにそこにあった
自らの存在の意義を
「制限され義務付けられた休養の中で 即時的な快楽にすがり全てを見失ってしまう前に」 というのは、
休日や終業と銘打ちながら「自己研鑽」を強いてくるアレと、 アルコールなどでなんとか毎日騙し騙しやっていきながら自分を見失っている私についての記述です。
というかこの文章自体が私の会社勤めに対するフラストレーションを綴っていますが、まあ許してやって下さい。
BGM
- プログラムでステージを作る。
- そのあと下表のような形で何分何秒に何が始まるのかを記録する。
- この表の中の大事なタイミングで曲調が変わるように曲を作る。(この時点ではだいたいのタイミングでよい)
- もう一度プログラムに戻り、曲調が変るタイミングと、大事な事が起こるタイミングがキッチリ合うようにパラメーターを調整する。
Stage4 | 秒 | 分 | ms | frame | diff |
---|---|---|---|---|---|
敵登場 | 13.6 | 0分13.6秒 | 13600 | 816 | 0 |
WARNING_Start | 32.116666 | 0分32.11秒 | 32116.666 | 1926.99996 | 1110.99996 |
Merom_人間形態戦闘開始 | 43.48333333 | 0分43.48秒 | 43483.33333 | 2609 | |
Merom_ロボ変形開始 | 148.1333333 | 2分28.13秒 | 148133.3333 | 8888 | 8072 |
Merom_ロボ変形終了 | 165.6166667 | 2分45.61秒 | 165616.6667 | 9937 | |
MEROM_ロボ飛び上がり | 235.3 | 3分55.3秒 | 235300 | 14118 | 13302 |
MEROM_ロボ爆発開始 | 291.4666667 | 4分51.46秒 | 291466.6667 | 17488 | 16672 |
MEROM_上半身形態開始 | 297.6833333 | 4分57.68秒 | 297683.3333 | 17861 | 17045 |
MEROM_上半身形態爆発開始 | 320.3833333 | 5分20.38秒 | 320383.3333 | 19223 | 18407 |
MEROM_上半身形態爆発終了 | 324.133333 | 5分24.13秒 | 324133.333 | 19447.99998 | 18631.99998 |
Kubrick_前で静止 | 352.65 | 5分52.65秒 | 352650 | 21159 | 20343 |
STAGE4END | 382.2666666 | 6分22.26秒 | 382266.6666 | 22936 | 22120 |
Stage2の道中はかなり音ハメを頑張った(というか音ハメがメインのステージだった)んだけど、 パラメーターを調整するのが面倒で中途半端に投げ出してしまった。
アニメーション制作の現場では、動画と音の同期に関して「動画は音より2フレーム前にすると仕上がりが良い」という「動画先行の原則」が語られてきた。
こういうこともこの時知った。
反省
もっと高級なゲームエンジンを用いて開発を時短すべきだった。
プログラミングパートのほとんどの部分は「アルゴリズムをプログラムで記述すること」ではなく 「パラメーターを適切に調整すること」にあり、それをデフォルトでサポートしてくれるような開発環境(例えばUnityで言うところのInspectorのような機能)を用いるべきだった。 というか最終的にDXライブラリのような環境で開発することにしたとしても 「このコンセプトは最終的に面白いゲームになりえるか」を素早く判断出来るようにするために、プロトタイプだけでも高級なゲームエンジンを用いて素早く作ることが出来るようになっておいた方が良い気がする。
BGMは自作にこだわらず素材を利用してもよかった
作曲が苦手過ぎた。もう本当に曲を作るのが辛かった。 たまたま一曲だけいい曲が作れるだけでは全然ダメで、色々な場面にキッチリと合った曲を作ることが出来なければならない。 きつすぎる。 作曲に関してはいい思い出無いです。
ゲームの進行に合わせて変化するメニュー画面それぞれにBGMをつけたかった。
作曲難しい。
音ハメをもっと丁寧にしたかった。
「IKUSAAAN!」とか「Hellsinker.のSegment8」の音ハメすごいよね。 いや~すごいわ。あそこまでやるだけの気力がない。
「敵に上手く近づいて接近戦をしかけるスタイル」を徹底すべきだった。
ステージの内容を頭捻って考えるので精いっぱいで、「近接戦システムを上手く機能させよう」というところまでステージの内容を練り上げることが出来なかった。
結局みんな「過去に遊んだどのゲームに似てるか」ぐらいにしか着目していなかった。
まあそりゃそうか。そりゃそうだよな。 何も知らないゲームの紹介なら「グラフィックが綺麗か」「過去に遊んだゲームの中でどれに似てるか」ぐらいにしか目がいかないよな。
周囲の反応集
フリゲ20XX得票
ADDRESS1
— フリゲ20XX得票作品bot (@BestFurigeBot) April 1, 2023
弾を回避する系のstgではなくバリアをはって近接戦闘を挑む系のstgなので、パターンを覚えてボスに張り付きながら近接攻撃をするときは脳汁がめちゃくちゃ出ましたhttps://t.co/9i9zV84aAz
コンセプトを理解したうえで楽しんでくれて ここまで丁寧に遊んでもらえるとは思わなかったのでとても嬉しい。
merom686氏
https://merom686.hatenablog.com/entry/2023/05/27/152138
とても嬉しい。
MQ 7145氏
紹介中に別のゲームの話をされていたり、Hellsinker.にこういう武器使ってるキャラいたよねぐらいの紹介で無下にされている感は否めない。
discord
知らない外国人(しかも私の書いた絵がアイコン)からフレンド申請が来てて、「怖いなぁ」と思いつつとりあえず承認してみたら、 「I wante to tell you that i like your game」 というメッセージが届いて嬉しくなった。 (英語対応しておいて良かった)
総括
いろいろ嬉しい反応もありましたが、「これでmegabitconvention02の雪辱を晴らすことが出来たか」と問われると「駄目だったよ」というのが正直な所かもしれない。
4年かけて頑張ってみても結局私はこの程度だったということです。
逆に自分がどの程度なのかしっかり知ることが出来たのは良かったのかもしれない。
「Penrynに世界を用意してあげることが出来た。」 「物語を完成させることでPenrynを救うことが出来た。」 それでいいんだ。私程度の人間はそれで”足るを知る”べきなんだ。
今後
このゲームのキャッチコピーは
大切なあの記憶 もう一度だけ この体でもまだ そう思えるのなら
ですが,もはや私は
もう一度だけ なんてもう 思えない...
ので「もうゲーム作ることも無いかな」という気持ちです。 疲れ果てました。お疲れ様でした。