Epoch Street Official ボード お知らせ 開発ブログ ガイド English

← 開発ブログ

開発ブログ - クローズドテスト 1.1.0 - ネット対戦をつくっています

2026-09-21

Epoch Street 1.0.0 には、ネット対戦が入っていません。作っていないからではなく、まだ出せる段階ではないからです。何が在って、何が残っているのかを書きます。

もう動いているもの

部屋を立てて、席にすわって、いっしょに1局遊ぶ——そこまでは動いています。テスト版では、テスターのみなさんに実際に触ってもらっています。

部屋 — 合言葉で入り、席にすわる
部屋 — 合言葉で入り、席にすわる

desync が起きない作りにしました

ネット対戦でいちばん怖いのは、みんなの画面が少しずつ違う盤面になっていくことです。Epoch Street は、そこを構造で閉じました。

対局中 — 右上は席ごとの持ち時間
対局中 — 右上は席ごとの持ち時間

サーバーが本物の対局を動かしています。 ゲーム本体と同じエンジンを、サーバーが画面なしで走らせています。クライアントが送るのは「何をしたか」という決定だけで、サーバーがそれを検証し、順番を決めて、全員に配ります。みんなは同じ決定を同じ順番で受け取るので、盤面がずれる余地がありません。

CPU の思考もサーバーが担当します。 エンジンの中で唯一の小数計算は CPU の判断のところにあって、小数は機械や OS によって答えが変わることがあります。そこをサーバーだけの仕事にすると、クライアント側の再現は整数と共有の乱数だけになります。機種や OS の違う人が同じ卓に着いても、盤面は1ビットも違いません。

ボードのバイトを照合してから始めます。 同じ名前のボードでも中身が違えば、最初の1手でずれます。部屋は遊ぶボードのハッシュを広告し、参加者は自分が実際に読んだファイルのハッシュで答えます。合わない人には、その部屋のボードそのものが配られます。

なぜ 1.0.0 に入っていないのか

実機を使った動作テストが終わっていないからです。自動テストは、2つのクライアントを本当に対戦させるところまで走っています(カジノのミニゲームが手番に割り込む場面も含めて)。それでも、回線の切れかた・機種・遅延のばらつきは、人の手元でしか出ないものがあります。

ですので 1.0.0 では、ネット対戦は画面ごと出していません。「一度出して引っ込めた」のではなく、まだ卒業していないという状態です。目安は 正式版 1.1 です。

⚠ ひとつだけ、はっきり書いておきます。正式版 1.0.0 とテスト版は、同卓できません。 エンジンの版は同じでも、正式版にはネット対戦の入口そのものが無いためです。

これから

残っているのは実機でのテストと、そこで出たものの手当てです。進んだらまたここに書きます。

いま遊べるのは、同じ画面を囲む2〜8人とチーム戦、そして CPU との対局です。あそびかたの基本 からどうぞ。