2026年4月16日 · ミハイル・ヴァシリエフ
Nexus開発日記:太陽系
この期間で新しいシミュレーションを追加した——太陽系だ。まだゲーム性も本格的な物理もなく、エンジンを見せるためのデモにすぎない。
太陽系
中心に太陽があり、そのまわりを惑星や衛星、小惑星がめぐっている。どの天体にも質量、大きさ、温度、ほかにも十ほどの属性があって、すべて実際の天文データにもとづいている。仕上がりは対話型のウィキペディアのようなもので、天体をクリックして調べていく。今のところは見るだけのモードで、遊べはしない。もうひとつ、戦術モードもある。そこでは軌道は簡略化されていて動きもないが、盤面がヘックスに区切られている。マス目があると、宇宙ストラテジーのように艦隊を動かしたり拠点を置いたりしやすい。これから作るゲーム性のための下地だ。


エンジンの新機能
今月いちばんの成果は、グラフィックとアニメーションを備えた2Dクライアントだ。中身のほうでも、昔のゲームから引きずっていたいくつかの課題が片づいた。属性が汎用になった。同じ「質量」が惑星にもあれば、たとえば米袋にもある。どんな対象にも使えるひとつの属性だ。そのうちどれを組み込むかは、それぞれのゲームの設計しだいで決める。
ついでに、とても大きい数ととても小さい数の扱いも整理した。以前はうちの初期のゲームがここでつまずいていた。人口が数十億を超えると、もう兆や京が出てきて、まともに表示する場所もなかった。今はそういう値を短く、10の累乗で書く。1のあとにゼロが30個ならぶ代わりに10³⁰だ。もう混乱はない。
システムは動かしながらコマンドで変えられる。書き方は簡単で、/set のあとに天体、属性、値とつづける。動画から例をふたつ挙げる:
/set Jupiter Orbit 2
/set Earth Weight 1e35ひとつ目は木星を第二軌道へ、太陽の近くへ移すコマンドだ——すると、そばに寄りそう小惑星のトロヤ群も一緒についてくる。ふたつ目は地球をどんどん重くして、ブラックホールに崩れさせ、ほかの属性をいっぺんに失わせる。どの操作も取り消せる——すべて元どおりになる。

密度はエンジンが質量と大きさから自分で計算する。ただし本格的な物理はなく、これはデモだ。さっきの木星も、太陽のすぐそばに来ても冷たいままだ。そこまで手がまわっていない。
音声操作
スマホなら、これ全部を声で操作できる。マイクを押して、やりたいことを言うだけだ。「火星を消して」——軌道ごと惑星が消える。「木星と海王星の軌道を入れ替えて」——入れ替わる。「太陽に大気を足して」——足してくれる、もっとも有毒なやつだが。AIは多くのことを理解するが、全部ではない。「月をいい感じにして」と頼むと、戸惑ってしまう。「いい」は人によって違うからだ。それに、画像やラベルの表示は今のところ太陽系だけで、系外惑星や銀河はこの方法では追加できない。あれは別のコンテンツで、まだ予定の段階だ。

言語とネットワーク
言語はコマンドひとつで切り替わる:
/lang arSA
/lang enUSこれでインターフェースがアラビア語になり、また元に戻る。言語は全部で二十以上ある。ネットワーク越しに二つ目のクライアントを起動して、同じセッションにつなぐこともできる——今はただのデモだが、いずれはこの方法で、Marble Ageのような昔のスタジオのゲームを一緒に遊べるようにしたい。モバイル版もほぼ同じことができるので、ソファに寝ころんだまま星系をいじることもできる。
このシミュレーションはサイトに公開した——シミュレーション一覧から試せる。Nexusと今後の予定についてくわしくはNexusのページへ。
