2026年7月1日 (水) 11:00にサービスが終了した,Shadowverse (Steam版) のエミュレーションサーバープロジェクト.
サービスが終了した後もデッキ編成,CPとの対戦,ルームマッチのプレイを可能にします.
ユーザーが自前でサーバーを立てることで,以下を実現します:
- デッキの編成
- 全カードの無償化
- CP戦
- ルームマッチ
なお,
- パズル
- ランクマッチ
- ガチャ
- 課金
などその他の機能は,現時点では視野に入れていません.
現在はルームマッチの実装途中です.フェーズごとの進捗はroadmapから確認できます.
- プロジェクトの設計
- クライアントの解析 (暗号,通信フォーマット,エンドポイント)
- ホームなどのUI
- 全カード,ボイス,スリーブの解放
- デッキ編成
- 対CP
- ルームマッチ
Steamクライアントで行われていた,HTTPおよびSocket.IOでサーバーと通信する仕組みを,OpenVerseで代行します:
- APIサーバー (HTTP): ログイン,マスタデータ,デッキ情報,ルームマッチ
- バトルサーバー (Socket.IO): オンライン対戦
- 静的サーバー: ゲームアセット
リクエストとレスポンスはJSONをMessagePackで包み,AESで暗号化します.詳しくはprotocol.mdを参照してください.
クライアントを自前のサーバーに向けるには,hostsでホストを書き換え,http化パッチかローカル証明書を使います.
Windows,Linuxで動作します.
src/OpenVerse.Common: 共通の暗号,通信コーデック,型src/OpenVerse.Api: HTTP APIサーバーsrc/OpenVerse.Battle: Socket.IOバトルサーバー
Steam版クライアントを持っていること (サービス終了前にプレイしたことがあり,card_masterが手元にあること) が前提で,Windows向けです.
- Releasesから
openverse-setup.exe,openverse-launcher.exeをダウンロードする openverse-setup.exeを実行し,OpenVerseに接続する前にセットアップを行う (初回のみ)openverse-launcher.exeを実行し,管理者権限を許可してサーバーを立ち上げる (毎回)- Steamからシャドバを起動する (ゲームを閉じるとhostsは元に戻る)
ゲームデータは同梱していないため,2で各自のクライアントから用意する仕組みです.自分でビルドする場合は,build-release.ps1でrelease/に一式を出力できます.
- 本プロジェクトは非公式であり,Cygamesとは無関係です
- クライアントはユーザーが正規の手段で入手してください
- OpenVerseは,当プロジェクトで用意したサーバーのソースコードと,観測した通信から取ったプロトコルメモだけを配布します.逆コンパイルコードやゲームのアセットは含みません
TBD
