このプロジェクトについて
ra-portは、Command & Conquer: Red Alert(1996年)の非公式ソースポートであり、macOS、Linux、Android、iOS上でネイティブに動作します。これは、Electronic ArtsがGPLv3および追加条項のもとで公開したソースコードに基づいており、元のコード構造を保ちつつ、SDL2を基盤としたプラットフォーム層を追加して映像、音声、入力を処理します。
プラットフォーム対応
- Apple Silicon上のmacOS:CMake/Ninjaを使用してビルドし、生の実行ファイルとして動作します(.appバンドルはまだありません)。
- Ubuntu上のLinux:ネイティブSDL2デスクトップ実行ファイルとしてビルド・動作し、ヘッドレス検証用のXvfb/ImageMagickスモークテストもオプションで利用可能です。
- Android:arm64-v8aデバッグAPKをビルドし、横向きに固定され、タッチネイティブ入力をサポート。初回起動時にアセットがアプリストレージに展開されます。
- iOS:シミュレータ用の横向きデバッグアプリ、または署名付きarm64デバイスビルドをビルドし、初回起動時にバンドルデータをアプリ書き込み可能なストレージにコピーします。
ゲームプレイの状態
キャンペーン(連合軍およびソ連軍)、ローカルスカーミッシュ、音声付き動画は動作すると報告されており、デスクトップではキーボード/マウス操作、モバイルではタッチ/音声操作に対応しています。オンライン/ネットワークマルチプレイヤー、ランチャー/セットアップツール、拡張パック、Android/iOS向けリリースパッケージング、macOS .appパッケージングは未実装です。
ゲームデータ
ゲームアセット、ムービー、音楽、ディスクイメージ、インストーラは含まれていません。プレイヤーは、自身のディスクまたはバックアップから合法的に入手したRed Alertファイルを用意する必要があります。準備スクリプトが、それらをassets/redalertディレクトリ下のgit無視ディレクトリにコピーします。デバッグ用モバイルビルドは、このローカルデータを意図的にバンドルするため、配布すべきではありません。
ビルドと実行
デスクトップビルドはCMakeとNinjaを使用し、SDL2開発パッケージが必要です。ヘルパースクリプトが、アセット準備、macOSでのコード署名、起動を処理します。AndroidにはJDK 17、Android SDK Platform 36、NDK 28.2.13676358、Android CMakeパッケージが必要です。iOSには完全なXcodeが必要です。フルスクリーンは環境変数で有効化するか、macOSではCommand+Return、LinuxではAlt+Returnで切り替えられます。ソースレベルテストとスクリプトチェックは、tests/run_script_tests.shを通じて実行されます。
このプロジェクトは意図的に保守的であり、広範な書き換えよりも小さなプラットフォーム固有のサポートファイルを優先しています。提案される貢献分野には、パッケージング、実機検証、セーブ/ロードの堅牢化、拡張パック対応、CIカバレッジが含まれます。ネットワークマルチプレイヤーは、現在のマイルストーンの範囲外です。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.