04 — デスクトップアプリ — ゲーム · Project Sinners

KyuSin

ボード、カード、カジノの軽いゲームを、かすかな CRT 効果のあるレトロ端末風の器にまとめたもの。操作はビジュアルが基本で、テキストコマンドも選べます。2言語対応、アカウントもインターネットも不要。

休止中 — M6a 完了、Onsa の後に再開

作品の情報

担当
仕様、範囲の判断、各マイルストーンの検証。実装は Claude Code
期間
2026年9月 — 継続中
プラットフォーム
デスクトップ — Windows と Linux(インストーラーはまだなし)
技術スタック
Tauri 2 · Rust · SvelteKit (Svelte 5) · SQLite · ChaCha20 (rand_chacha)
GitHub のコード
github.com/MufuyuMoku/kyusin

数字

26

完成したゲーム

M6a 時点で、SPEC §7 の完了の定義(Definition of Done)9項目をすべて満たす。

346

Rust のテスト

PROGRESS.md の M6a セッションログより。ほかに UI テストが49件。

41

RTP 付きのカジノの賭け

M6a だけで。すべて100%未満で、厳密に計算したうえで CI のシミュレーションと照合。

6

チェスのレベル

Stockfish 19 に対して較正。レベル5と6はおよそ1826と2093。

技術メモ

これは何か

KyuSin(プロジェクト名 Project Sinners)は、たくさんの軽いゲームをひとつのレトロ端末風の器に入れたデスクトップアプリです。蛍光体のテーマ、強さを調整できるかすかな CRT 効果、起動シーケンスがあります。すべてローカルで動き、アカウント、インターネット、広告、課金はありません。画面はインドネシア語と英語に対応し、翻訳の抜けは CI で確認しています。

遊び方の基本はビジュアルです。駒をドラッグし、カードをクリックし、テーブルにチップを置く。テキストコマンドのモード(e2e4、hit、bet 50)も好きな人のために用意していますが、必須ではありません。裏側では、どのビジュアル操作もテキストコマンドと同じアクションに変換されます。そしてそのアクションこそが、のちに LAN の他のプレイヤーや AI エージェントが送ってくるものです。

大きな計画

順番に三つの最終目標があります。

  1. シングルプレイ。 すべてのゲームをボットやディーラーを相手に遊べる。チュートリアル、レーティング、チップつき。
  2. インターネットなしのマルチプレイ。 同じローカルネットワーク(LAN/Wi-Fi)で一緒に遊ぶ。
  3. Project Nor-4 と一緒に遊ぶ。 ローカルの AI エージェントが、LAN のプレイヤーと同じプロトコルでプレイヤーとして参加する。

いまはまだ一つ目の目標に向かう途中です。

完成しているもの

M6a(2026年10月9日)時点で、26のゲームが完了の定義を満たしています。ルールとテスト、ボット、ビジュアル、テキストコマンド、自動テストで守られた対話型チュートリアル、リプレイ、マニフェスト。

分類ゲーム
ボードリバーシ、チェス
ディーラーと対戦するカードブラックジャック、バカラ、ドラゴンタイガー、カジノウォー、レッドドッグ、アンダルバハール、スリーカードポーカー、カリビアンスタッド、カジノホールデム、レットイットライド、パイガウポーカー
プレイヤー同士のカード(ボットと対戦)テキサスホールデム、オマハ、ティーンパッティ、チャプサスサン、ドミノ・チウチウ
サイコロ、ホイール、牌ヨーロピアンルーレット、アメリカンルーレット、クラップス、シックボー、ビッグシックス、ファンタン、牌九(牌)、チャックアラック

チェスには Stockfish 19 に対して較正した6つのレベルがあります。Stockfish は開発者のマシンで測定器として使うだけで、同梱はしていません。ローカルのレーティングには Glicko-2 を使っています。

正直なカジノ

  • 本物の数字。 ルールと配当表には実際のカジノの数字を使い、どのカジノゲームも本当の RTP やハウスエッジを表示します。数字は列挙やマルコフ連鎖で厳密に計算し、CI のシミュレーションと照合しています。牌九(牌)の列挙は 736,281,000 通りの配牌です。
  • チップは購入も換金も、プレイヤー間の移動も一切できません。
  • 証明できる乱数。 シャッフルやサイコロの目は、参加者全員のシードを合わせたものから生まれます。各シードのコミットメント(ハッシュ)をラウンド前に公開し、終わったらすべてのシードを開示するので、結果を検証でき、ホストを含めて誰も結果を選べません。認めている限界もあります。手札を伏せるカードゲームでは、ラウンド中、ホストのアプリが技術的にはデッキの順番を知っています。
  • すべての対戦のリプレイ。 どの対戦も、シードとコマンドの並びにすぎないからです。

次に

マイルストーン内容
M6bキノ、ビンゴ、スクラッチカード、ハイロー、ビデオポーカー
M7カジノアーケード。時間で進むゲームのための取り決めつき
M8残りのカジノ以外のボード・カードゲーム(Gaple、Cangkulan、Remi など)— 最終目標1
M9LAN:ホストと参加、自動検出、ロビー、ネットワーク越しの証明可能な公平性 — 最終目標2
M10エージェント用プロトコルとテスト用エージェント — 最終目標3。Nor-4 は待たない
M11CI から Windows インストーラーと Linux の .deb パッケージ、サードパーティライセンスのページ
M12アプリを作り直さずに、新しいゲームを WASM カートリッジとして追加

インストーラーのファイルはまだありません。M11 で用意します。