Об этом проекте
ra-port — это неофициальный порт исходного кода Command & Conquer: Red Alert (1996), работающий нативно на macOS, Linux, Android и iOS. Он основан на исходном коде, выпущенном Electronic Arts под GPLv3 с дополнительными условиями, и сохраняет узнаваемую структуру оригинального кода, добавляя платформенный слой на базе SDL2 для видео, звука и ввода.
Поддержка платформ
- macOS на Apple Silicon: собирается и запускается через CMake/Ninja как обычный исполняемый файл (без .app-бандла).
- Linux на Ubuntu: собирается и запускается как нативное настольное приложение SDL2, с опциональным smoke-тестом через Xvfb/ImageMagick для проверки без графической среды.
- Android: собирает локальный отладочный APK для arm64-v8a, зафиксированный в ландшафтной ориентации, с нативным сенсорным вводом; ресурсы извлекаются в хранилище приложения при первом запуске.
- iOS: собирает ландшафтное отладочное приложение для симулятора или подписанную сборку для устройства arm64, копируя встроенные данные в доступное для записи хранилище приложения при первом запуске.
Состояние игрового процесса
Кампания (за союзников и за СССР), локальная схватка и видео со звуком, как сообщается, работают, а также управление с клавиатуры и мыши на настольных системах и сенсорный ввод/звук на мобильных устройствах. Сетевой мультиплеер, инструменты запуска и настройки, пакеты дополнений, релизная упаковка для Android/iOS и упаковка macOS в .app не реализованы.
Игровые данные
Игровые ресурсы, фильмы, музыка, образы дисков и установщики не включены. Игроки должны предоставить легально полученные файлы Red Alert со своих дисков или резервных копий; скрипт подготовки копирует их в игнорируемые git каталоги внутри assets/redalert. Отладочные мобильные сборки намеренно включают эти локальные данные и не должны распространяться.
Сборка и запуск
Настольные сборки используют CMake с Ninja и требуют пакетов разработки SDL2; вспомогательные скрипты выполняют подготовку ресурсов, подписывание кода на macOS и запуск. Для Android требуются JDK 17, Android SDK Platform 36, NDK 28.2.13676358 и пакет Android CMake; для iOS требуется полный Xcode. Полноэкранный режим можно включить через переменную окружения или переключить сочетанием Command+Return на macOS и Alt+Return на Linux. Тесты на уровне исходного кода и проверки скриптов запускаются через tests/run_script_tests.sh.
Проект намеренно консервативен и предпочитает небольшие платформенно-зависимые вспомогательные файлы широким переписываниям. Предлагаемые направления для вклада включают упаковку, проверку на физических устройствах, повышение надёжности сохранения/загрузки, поддержку дополнений и покрытие CI. Сетевой мультиплеер выходит за рамки текущего этапа.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.