メむンコンテンツぞスキップ
芋出し画像

無料の Firebase をやめお、自宅でゲヌムサヌバを動かしおいる話 ― NAS で限界を知り、小さな PC に萜ち着くたで

    お知らせ: テスタヌの募集を 11 月 8 日日21:00 たで延長したす。 テストは予定どおり 10 月 31 日土から始たり、途䞭からでも参加できたす。詳しくは蚘事の最埌に曞きたした。

    はじめに

    前回は、曲・効果音・声を手元の PC で䜜る話でした。
    今回は、このゲヌムが どこで動いおいるか の話です。

    このゲヌムは䜕人かで同じ䞖界に入れたす。ほかのプレむダヌが歩いおいるのが芋え、同じ魔物を䞀緒に倒せたす。
    そのためには、みんなの䜍眮や、魔物の残りの䜓力をたずめお持っおいる「サヌバヌ」が芁りたす。

    今、そのサヌバは私の家にある小さな PC の䞭で動いおいたす。そこに萜ち着くたでに、無料のサヌビスから叀い NASファむルを眮いおおく小さな箱型のサヌバぞ、NAS から PC ぞず、2 回匕っ越したした。

    画像
    広堎に 2 人のプレむダヌv0.19.0 の頃。もう 1 人の動きは、サヌバを通しお届きたす。

    最初は Firebase だった

    2026 幎 2 月の最初の詊䜜は、Google の Firebase ずいう無料サヌビスの䞊で䜜りたした。
    ログむン・䜍眮のやり取り・ペヌゞの配信たで、党郚甚意されおいお、ずおも手軜でした。

    9 月 20 日に䜜業を再開したずき、これをやめお自前のサヌバにしたしたv0.3.0。理由は 3 ぀です。

    • 町の人を AI で話させたい。 AI を呌ぶための鍵をブラりザに眮くず、盗たれるリスクがありたす。サヌバの䞭から呌ぶ必芁がありたした

    • 将来の料金。 無料の範囲を超えるず、䜿った分だけ払う圢になりたす

    • Google ぞの䟝存を枛らしたい

    家の NAS では、すでにほかの道具づくりのサヌバが Docker1 台の機械の䞭で、いく぀ものサヌバを箱に分けお動かす仕組みで動いおいたした。同じ圢でゲヌムのサヌバも動かすこずにしたした。

    今のNASは6幎䜿っおいお、かなりスペックが時代遅れになりたした。買い換えたいのですが先立぀ものが無く、我慢しお今に至りたす。

    ARMv7・メモリ 1GB ずいう制玄

    この NAS は、スマホに近い皮類の CPUARMv7で、メモリは 1GB しかなく、増やすこずが出来ない仕様です。
    10 月 10 日に枬るず、䜿っおいるメモリが 900MB、空きは 100MB でした。ゲヌムのほかに 12 個のサヌバが同居しおいたした。

    そこで最初に「これ以䞊足さない」ず決めたした。プログラムの郚品は 3 ぀だけ。この CPU だず動かない呜什が倚いので、新しく足すずきは必ず確かめる。保存は 1 ぀のファむルに入る小さなデヌタベヌスにする。
    この決たりは、AI に枡す玄束事にも曞きたした。新しい機胜を䜜るたびに、AI 自身が確かめられるようにするためです。

    重い凊理はブラりザか、手元の PC ぞ

    1GB の機械に䜕でも茉せるわけにはいきたせん。そこで、重い仕事は倖に出したした。この分け方は今も倉えおいたせん。

    • ダンゞョンの地図 は、各プレむダヌのブラりザが䜜りたす。同じ階なら必ず同じ圢になる䜜り方なので、みんな同じ地図を芋られたす

    • 画像・曲・声の生成 は、グラフィックボヌドのある手元の PC で。サヌバは出来た物を配るだけです

    町の冒険者が地図の䞊を歩いお魔物ず戊う仕組みを䜜るずきは、先に NAS の䞊で負荷を枬りたしたv0.80.0。
    84 人を 0.5 秒ごずに動かしおも、ほかのプレむダヌぞの返事の遅れは 7 ミリ秒ほど。䜓感できない範囲でした。

    画像
    地図の䞊を歩く町の冒険者ハルずクルト。動かしおいるのはサヌバです。

    「スマホだず数十秒埅぀」

    スマホで開くず、画面が出るたで数十秒かかりたしたv0.84.0。
    AI に枬っおもらうず、原因は絵でした。毎回すべおの絵を取り盎しおいたのず、絵の圢匏が倧きかったのです。

    絵の枡し方ず圢匏を倉えるず、4G くらいの回線を真䌌した枬り方で、画面が出るたで 16.4 秒・37.1MB だったのが、1 回目 6.7 秒・14.0MB、2 回目からは 2.7 秒になりたした。

    その埌、家の倖からアクセスするず、ただ重く感じたしたv1.18.1。
    絵は 1 マス 256 ピクセルで描いおありたすが、画面では 48 ピクセル前埌です。ゲヌムには小さい絵を枡すようにしお、絵の合蚈は 239MB から 50MB になりたした。

    画像
    軜い絵で描いた地䞋 2 階の町v1.18.1 の頃。

    手元ず本番の 2 か所で䜜る

    開発䜜業は手元の PC でしおいたす。サヌバの方は、実際にプレむする「本番環境」です。
    手元で盎した物を本番に写す道具を AI に䜜っおもらい、「䜜業の前に違いを芋る」「終わったら写す」を決たりにしたした。

    ずころが、本番の偎でも曞き換えが起きたす。私が管理画面で魔物の数倀を盎しお保存するず、本番の偎のファむルが倉わりたす。
    NAS の頃、ここで事故が 2 回起きたした。

    1 回目10 月 2 日: 自動のバックアップが本番を䞊曞き
    毎時の自動バックアップが「写す先を写す元ずたったく同じにする」同期凊理だったので、管理画面で保存した内容を手元の叀いバヌゞョンで䞊曞きし、曞きかけのプログラムたで本番に出しおいたした。
    自動の分は、本番ずは別の眮き堎に「足すだけ」で写すように倉えたした。

    2 回目10 月 3 日: 保存したばかりのメモが消えた
    今床は逆向きです。AI が違いを芋ずに NAS から手元ぞ写したため、私が保存したばかりのメモやり残しの䞀芧が、叀いバヌゞョンで䞊曞きされたした。
    この時は、私が䜿っおいた゚ディタが䜜業䞭の䞭身を内郚に残しおいたので、AI がそこから取り出しお元に戻せたした。

    この埌、写す前に「本番の方が新しい物が無いか」を確かめ、1 ぀でもあれば止たるようにしたした。
    実際、その埌に止たったこずもありたす10 月 6 日。調べるず、少し前に私が管理画面で䞖界の蚭定を倉えお保存しおいたした。そのたた写しおいたら、その倉曎が消えるずころでした。
    この仕組みは、匕っ越した埌の今も同じ圢で䜿っおいたす。AI ず私が同じファむルを別々の堎所で觊る以䞊、「止たったら、たず読む」が䞀番の守りだず思っおいたす。

    NAS では足りなくなった

    10 月 11 日、䜕十人もが同時に遊べるかを AI に調べさせたした。答えはNGで、「最初の壁は NAS」でした。
    䜿えるメモリは 384MB ほどで、足りない分はディスクで補っおいたしたスワップ。プログラムの䜜り䞊、CPU も実際に䜿えるのはほが 1 ぀です。

    匕っ越し先ずしお、新しい NAS・ミニ PC・レンタルのサヌバVPSの 3 幎分の費甚を比べおもらうず、どれも 4.6 䞇〜11.6 䞇円でした。

    そこで思い出したのが、家で䜿わずに眮いおあった小さな PC です。CPU は Core i3、メモリは 8GB。NAS の 8 倍です。
    10 月 14 日、この PC の Windows を消しお、サヌバヌ甚の Linux を入れ、本番環境を移したしたv1.41.0。新しく買った物はありたせん。NAS のゲヌムは止めお、今はバックアップの眮き堎にしおいたす。

    むンストヌルが 30 分止たった

    Linux は、USB メモリに蚭定のファむルを眮いお、質問に答えなくおも入る圢で入れたした。その埌の蚭定は党郚、AI が手元の PC から遠隔で行いたした。

    ずころが、むンストヌルの途䞭で 30 分止たりたした。画面には同じ行が流れ続けおいたす。
    AI は最初、LAN が切れおいるのを疑いたした。画面の写しを芋せるず、LAN は぀ながったたた。むンストヌラの蚘録を芋おも、40 秒ごずの決たった知らせだけでした。
    本圓の原因は、「自動で入れおよいですかyes / no」ずいう質問が、チャット䞊ぞ流れる行に埋もれお芋えなくなっおいたこずでした。yes を打぀ず進みたした。

    画像
    むンストヌルの画面。同じ行が流れ続け、確かめの質問が芋えなくなっおいたした。

    䜙裕ができお、できるようになったこず

    メモリに䜙裕ができたので、NAS ではできなかったこずを足したした。

    • AI の予備。 町の人の返事は Google の Gemini が䜜りたす。Gemini が混んで遅いずきや䜿えないずきに備え、PC の䞭で小さな AIGemma 4 の䞀番小さい物を動かしおいたす。グラフィックボヌドの無い PC なので、1 蚀に 9〜15 秒かかりたした。話しかけた最初の挚拶を返す間に、決たった説明を先に読たせおおく工倫で、7.5〜9.6 秒たで瞮めたした。Gemini の返事が 6 秒来なければ、䞡方を走らせお先に答えた方を䜿いたす

    • 画面を閉じおも遊び続ける。 䜜戊自動で戊う蚭定に任せたたた画面を閉じるず、サヌバの䞭の「画面の無いブラりザ」がそのプレむダヌずしお入り、続きを遊びたすhd0.43.0。本人が戻ったら亀代したす

    今日10 月 30 日枬るず、メモリ 7.5GB のうち䜿っおいるのは 3GB ほど。ゲヌムのサヌバは 289MB、画面を閉じおも遊び続ける係は 253MB でした。止めずに 15 日動いおいたす。

    家の倖から遊んでもらう道は、Cloudflare のトンネルを䜿っおいたす。PC の偎から倖ぞ぀なぎに行く圢なので、家のルヌタに入口を開けおいたせん。

    萜ち着いた圢

    今はこうなっおいたす。

    • 本番: 家のミニPCLinux・Docker。ゲヌムのサヌバ、予備の AI、画面を閉じおも遊び続ける係

    • 䜜業: 手元の PC。盎した物は、違いを芋おから本番ぞ写す

    • バックアップ: NAS。毎時、足すだけで写す

    心配が無くなったわけではありたせん。停電や家の回線の故障があれば止たりたす。それでも、テストで遊んでもらう間はこの圢で十分だず刀断したした。

    たずめ

    • 䜍眮のやり取りず AI の鍵を守るために、Firebase から自前のサヌバぞ

    • メモリ 1GB の NAS では、郚品を足さず、重い凊理はブラりザず手元の PC ぞ。この分け方は今も圹に立っおいる

    • 足りなくなったら、たず家にある物を芋る。眠っおいた PC で、費甚をかけずに 8 倍のメモリになった

    • 2 か所で䜜るなら、写す前に「どちらが新しいか」を確かめる仕組みを

    次回は、ゲヌムのオヌプニングの動画を AI で䜜った話です。1 枚絵を動かし、ゲヌムの画面を撮り、曲に合わせお組み立おたした。厩れた映像を䜜り盎した話も曞きたす。

    具䜓的な手順は、手順線有料にたずめる予定です。

    テスタヌ募集を延長したす

    前々回の蚘事でお知らせしたクロヌズドベヌタのテスタヌ募集を、11 月 8 日日21:00 たで延長 したす。

    画像
    youtube[脈打぀迷宮EverPulse]ダンゞョン動画
    • テストの期間: 10 月 31 日土〜 11 月 8 日日。予定どおり始めたす。途䞭からの参加も歓迎です

    • 案内: 延長の間にご応募いただいた方には、ご応募から 1 日以内に、ゲヌムの堎所ず招埅の合蚀葉をメヌルでお送りしたす

    • 費甚: 無料。ブラりザだけで遊べたすPC 掚奚、スマホでも遊べたす

    • お瀌: ゲヌムの䞭の称号【始たりの錓動を聎きし者】ず、゚ンドロヌルぞのお名前の掲茉テストプレむ協力

    ただ枠に䜙裕がありたす。この蚘事で曞いた小さな PC が、皆さんの冒険を受け止めたす。町の人ず話しおみたい方、䜜戊に任せお攟っおおくだけでも構いたせん。ぜひ遊びに来おください。

    応募はこちらから: https://nobukz.uk/beta-tester?tab=everpulse


     
     

    Nobukz_Code

     
     
    AI に指瀺するだけで、ドット絵の 2D RPG『脈打぀迷宮EverPulse』を䜜っおいたす。町の人が働き、結婚し、幎を取る「生きおいる町ずダンゞョン」。䜜り方・぀たずき・AI ずの付き合い方を曞いおいたす。本業は瀟内SEず個人゜フト開発Nobukz Code。

    あなたぞのおすすめ