こんにちはオンライン

コラム

■ はじめに

こちらのコラムは定期ゲ・甲 Advent Calendar 2021の25日目として寄稿させて頂いたものです。
他にも様々な記事がありますので、よければご覧くださいね。

また、このサイト上でのいかなる情報は予告なく変更になる可能性があります。
あらかじめご了承くださいませ。


■ もくじ

■ 定期ゲを作るのは大変という話 ~実践編~

大変です。すごい大変でした。
ゲーム的な要素がなく、簡単なチャットのみが存在するこんオンでこうだったので、
他の定期ゲーム・APゲームの制作労力はきっと計り知れないのでしょう……

公開時のツイートでも語っているように、このサイト(こんにちはオンライン)は本来PHPとSQLの学習を目的としたものでした。
(PHPはWeb向けのプログラム言語、SQLはユーザーデータを保管するサーバーを操る言語、みたいな感じです)
なので、本来はここまでアップデートやメンテナンスを重ねる予定もありませんでした。
遊んで頂き、本当にありがとうございます。

性分からか基礎さえできてしまえば作る事そのものはとてもとても楽しく行えるのですが、
やはり作ったものを運営するのは全く別の技量を要求されることが多く、慣れない内は非常に大変でした。
(今も全く慣れてないので大変ですが……)

何よりプレイヤーとは『禁止と明示されない限りできることを探して実行する』ということを思い知らされました。
それは例えば仕様の穴だったりグレーゾーンだったりと様々ではありますが、
そういったトラブルや要望に対して、どのような対応が適切か……と頭を悩ませることも多々ありました。
インディーゲームは善意で成り立っています。よそのゲームでは粗を見つけても優しくしてあげてくださいね。


自身、HTMLとCSSの知識はあれどPHPとSQLには触れたことはほぼなく、手探りの状態からはじめたもので
登録処理、キャラリストの表示、ログイン処理、投稿処理……と立ちはだかる壁は数しれずあり……
手探り状態から適宜教えて頂いた先人方には本当に感謝が絶えぬばかりです。

開発過程をご紹介してもよいのですが、長くなる上に専門性の高い話にもなりそうなので、
デバッグ用のサーバーで起きたことなどをいくらかご紹介させて頂きます。



前置きとして、PHPというのは「ユーザーが送った文字をHTML上で表示する」ということを頻繁に行うため、
HTMLの一部として誤解される文字列を送った場合、何も対策がないともれなく不具合の原因となります。
『<b>太字</b>』と入力し送信すれば、対策が無い限り『太字』となりますし、
たとえば悪いスクリプトを書いて送信することで、ユーザーに悪いプログラムを実行させることもできてしまいます。
(世間ではこれを"脆弱性"と呼びます)

これを対策するのは容易ですが、もしも対策し忘れた場合……格好の標的になってしまうことを留意しなければなりません。



その例1。これは身内にデバッグに協力してもらう際に登録フォームを開放していた時のことで、
アイコンのURLに『とあるゲームの効果音の動画埋め込みタグ』を挿入された例です。
斬新なキャラ表現ですね。



その例2。こちらもまた同様にして改変されたプロフィールです。知らないゲームのティザーサイトが広がってました。
非常に覚えのある行為ではありますが、こういうのも本来はリスクであることを留意しなければいけません。
ゲーム説明が曰く『挨拶を用いたパズルアクション』だそうで、それはそれでちょっとおもしろそうだなと思ってしまった自分がいます。



最後に、これはチャット欄での対策をしなかった例です。
完全に知ってる別の概念になっていますね。(おまけに左下のキャラクターもposition:fixed;で張り付いています)
このハック行為は後のとあるアクションの元ネタになったとか……


■ "こんにちは"で繋がる世界

上記の通り元々はチャットテスト用のものだったのですが、
チャットシステムを作っているうちに愛着が湧いてきてしまい、何か小さくても遊びにできないかと思っていました。
しかし、ゲームらしいゲームを作るほどの技術はないため、あくまでも"砂場"の範疇の中で遊具を用意できないか、と思考していた所……

「Twitterのような限られた文字数でロールをしたら、おもしろいのでは?」
そういったアイデアがふと舞い降りてきたのでした。

よく、『ロールの返事は長文がいいか短文がいいか』といった話を聞きます。
個人的にはどちらでもいいのですが(どちらにも良さや味わいがありますからね)、たとえばシステムでどちらかを強いられたら……
なんてことを考えたりもします。たとえば、10文字でしか喋れなかったら……

彼らは短歌や俳句のように、少ない文字数で最大限の情報を詰め込んだりするのでしょうか。
あるいは、名前やアイコンに情報を詰め込んで終わってしまうのでしょうか。
そんな『制約下でのロール』にいつしか興味を持つようになっていきます。


「はじめまして!」
もし、開口一番の挨拶が最後まで表示されなかったら……
普段キャラクターチャットを行っているプレイヤーはどのような反応を持つのでしょうか。驚く?怒る?それとも……
そんな期待と不安を込めて、初期文字数を設定するのでした。

想定では、思うように投稿できないストレッサーや、または制限を生かした模索(または大喜利)のような、
そういう"一発ネタ"として消費してもらえれば、と思っていました。
昨今のロールプレイチャットではもはや必須とも言える"個室"もないですしね。



しかし、結果としてこんにちはオンラインは想定とは異なる受け取られ方をしているように見えました。
公開された『こんにちはオンライン』は、その情報量の少なさから「ちゃんと書かなくていいロール場所」として、
長く重厚なロールに疲れた人を癒やす"休憩所"のような側面を持つようになっていったと思います。
これは個人的にかなり意外であると共に、とてもありがたい事だと思っております。

本当に、遊んで頂きありがたい限りです。今後ともよろしくおねがいします。


■ おわりに

こうして技術的な学習進捗を作品という形でお見せできて、そしてありがたいフィードバックを頂けて。
自分は本当に恵まれた環境にいると思うばかりでございます。いつも本当にありがとうございます。

来年はいよいよシマナガサレの実制作にも着手したくありますが、
その前に"ゲーム"を作るための慣らしとして、何か違う小さいものを挟むかもしれません。
もし見かけましたら、手遊び程度に触ってもらえれば幸いです。


それでは、メリー・クリスマス!

トップへもどる