Supreme Commander 2
Недостатньо оцінок
[RU] Запуск на Linux и других платформах
Автор: DOOM BFE💪
Детальный разбор возможности запуска SC2 на других ОС и платформах
   
Нагородити
До улюбленого
В улюблених
Прибрати
Небольшое предисловие
Давайте введу небольшие понятия в руководство, чтобы было проще ориентироваться:
L - Linux
EWE - Exagear Windows Emulator
WOA - Windows On ARM

Тестировал всё на дистрибутиве Manjaro Linux 21.2.5[manjaro.org], KDE Plasma 5.24.3[manjaro.org].
Так же Manjaro поддерживает и другие графические оболочки: XFCE[manjaro.org] и GNOME[manjaro.org]
Системные требования[github.com] для Proton.
SupCom2[www.protondb.com] на странице ProtonDB.
L: Запуск через Steam
Заходим в Настройки, выбираем вкладку Steam Play, и нажимаете Включить Steam Play для всех поддерживаемых продуктов и Включить Steam Play для всех других продуктов.

Далее у вас должны будут скачатся библиотеки для Linux.

После чего находите Supreme Commander 2 в своей библиотеке, нажимаете на него Правой Кнопкой Мыши > Свойства > Совместимость и ставите галочку.
Возвращаемся в раздел Общие, и теперь будем работать с параметрами запуска.

Тут по разному, но на странице ProtonDB[www.protondb.com] люди пишут, как у них запускалось, но я не вижу разницы между:
PROTON_USE_WINED3D=1 и PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 так что разберём основные моменты.

Разрешение экрана:
Можно установить его в Оконном и Полноэкранном режиме.
Для этого после PROTON_USE_WINED3D=1 %command% либо PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 %command% добавляете следующие параметры:

Оконный: /size
Полноэкранный: /fullscreen

Теперь нужно указать разрешение экрана, которое будем выставлять, для этого после указанного варианта, добавляем разрешение вашего экрана, к примеру:
  • 1920 1080 (FullHD)
  • 1366 768
  • 1280 720 (HD)
  • 1024 768
и т.д.

После чего к примеру должно получиться:
  • PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 %command% /fullscreen 1920 1080
    либо
  • PROTON_USE_WINED3D=1 %command% /fullscreen 1920 1080

Если не указать эти параметры, то вместо игры вы увидите целое ничего, а именно тёмный экран с серым прямоугольником...
L: Технические моменты и сам Proton
В первую очередь, второй экран не поддерживается.

Так же на разных версиях Proton игра по своему реагирует, но у меня к примеру игра стабильно, вне зависимости от Proton, имеет задержку FPS в 16 мс.

Так же на последних версиях встречается проблема, когда при наличии второго экрана, курсор может уйти на него, вместо того чтобы передвинуть камеру. Но при отсутствии второго экрана, можете играть на любой версии.
Можно конечно и с этим жить, к примеру если монитор разрешением ниже основного, то можно упереться в границу, к примеру верхнюю. Либо играть с стрелочками на клавиатуре, либо передвигать по миникарте, кому как...

Proton 7.0-1
Уходит за экран: Да


Proton 6.3-8
Уходит за экран: Да


Proton 5.13-8
Уходит за экран: Да


Proton 5.0-10
Уходит за экран: Нет
Возможно самый оптимальный вариант.


Proton 4.11-13
Уходит за экран: Нет
Наблюдались просадки FPS


Proton 4.2-9
Уходит за экран: Нет


Proton 3.16-9
Уходит за экран: Нет
Наблюдается небольшие уходы юнитов на миникарте.


Proton 3.7-8
Уходит за экран: Нет




Кстати кто-нибудь заметил, как в каждой версии отличаются шрифты?
L: Подключение MangoHud
Можно подключить утилиту/Overlay MangoHud[github.com] (Накладывается поверх игры), которая будет отображать данные по типу температуру видеокарты/процессора и так далее. Знакомо многим как MSI Afterburner[www.msi.com] + RivaTurner, но не суть.

Есть кучу гайдов по данной проге, но я остановлюсь на основных моментах.

Установка:
Открываете терминал / Konsole, и вписываете следующие команды поочерёдно:

Запуск утилиты:
Даллее установив утилиту, она не будет работать по щелчку пальца, нужно её задействовать в игре. Опишу вариант для Steam, и конкретно для SupCom2:
Нажимаете по Supreme Commander 2 в библиотеке Steam Правой Кнопкой Мыши > Свойства > Общие.
Параметры запуска:
По скольку перед этим мы вписывали параметры для запуска игры, нужно поставить правильно и сам MangoHud. Для этого в начале вписываете
  • mangohud %command%
После чего должно получится:
  • mangohud %command% PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 %command% /fullscreen 1920 1080

    либо

  • mangohud %command% PROTON_USE_WINED3D=1 %command% /fullscreen 1920 1080

Так же MangoHud можно настраивать, для показа большей информации, для этого в начале параметров запуска, после mangohud добавляете:
  • MANGOHUD_CONFIG=
И добавляете нужные вам параметры, их можно посмотреть как на GitHub[github.com], пролистав в самый низ; либо на других гайдах.

Мой конфиг:
mangohud MANGOHUD_CONFIG=cpu_temp,gpu_temp,position=top-left,ram,vram,font_scale=0.8,toggle_hud=F8,alpha=0.7,arch %command% PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 %command% /fullscreen 1920 1080
L: Запуск не через Steam
Если у вас нету возможности запустить через Steam, тогда есть альтернативный вариант, с установкой отдельно протона. Данный вариант удобен тем, что под рукой всегда будет приложение, позволяющее удобно установить любое виндовое приложение (Если не косячить).

1)Скачиваем PortProton[portwine-linux.ru]
(Раньше было через терминал, теперь готовые варианты)

2) Запускаем PortProton, пока он докачает все оставшиеся файлы.
(Оттуда кстати можно установить автоматический лаунчеры)

3)Далее находим установщик, и запускаем его. Нажимаете Launch, и устанавливаете куда вам нужно.

4)Находим установленный SupCom2, и далее запускаем SupremeCommander2.exe, также попутно можно нажать Create Shortcut, чтобы каждый раз не искать папку с игрой.

5) Ставите нужные параметры запуска.

6) Играйте в собственное удовольствие.

(Я сделал этот раздел на отвали, потому что уже настрадался с этим руководством.)
L: FAQ
Раздел, в котором я постараюсь рассказать о решениях проблем, с которыми я столкнулся, и с которыми вы можете столкнутся.

Q: После установки Linux, Steam, Proton, SupCom2, последнее не запускается.
A: Вариантов куча, но расскажу про тот, с которым я сталкивался:
В первую очередь, возможно вы просто создали новый раздел для Linux, отформатированный в ext4, но установили Proton и SC2 на другой раздел, который NTFS.
Проблема NTFS в Linux огромная (не помню почему), но к примеру из-за этого нельзя ставить Linux на NTFS, из-за своих разногласий.

Примета данной проблемы, ярлык Виндовой игры имеет иконку Steam, вместо своей.

Цитата допису Marlock:
Использование NTFS возможно, но не рекомендуется, поскольку она работает медленнее, более уязвима к потере данных и в целом менее надежна, чем обычные разделы Linux, такие как ext4.
Можно конечно кое как решить эту проблему, но оно того нестоит, поэтому лучше просто отформатировать раздел в ext4, и уже после на него установить все нужные вам игры.

Проблема загрузчика:
(Оставлю для себя)
Если после установки Manjaro, отсутствует grub загрузчик, а в UEFI не показывается параметр с Linux - инструкция по созданию нового загрузчика[mascloud.ru].
Внимание! Если не знаете что делаете, лучше туда не лезть, ибо нужно внимательно читать и смотреть, куда вы ставите загрузчик, и что он должен загружать!
Ставится загрузчик на EFI раздел, обычно он в формате FAT32, на 100-500 Мб раздел.

Так же вот ссылка на форум, где человек пытается разъяснить про все проблемы, с которыми можно столкнутся.
https://steamcommunity.com/app/221410/discussions/0/1636417404917541481/
L: Установка модов
Если это простые моды или карты, которые в формате .scd, то установка обычная, как на Windows.
Если это моды для Revamp Mod Manager, то тут придётся пострадать. Для начала нужно:
  1. Скачать сам мод
  2. Открыть их как архивы.
  3. Перед следующим действием, нужно создать резервные файлы в отдельной папке ванильных файлов:
    • bp.scd
    • lua.scd
    • z1_lua_dlc1.scd
  4. В архиве будет архив mod.zip. Его распаковываете в корневую папку с игрой, и можете играть.
Кстати, когда наиграетесь, нужно искать файлы модов, и удалить их, и закинуть оригинальные файлы из бекапа. (Либо сделать проверку целосности файлов.)

Ниже должен был быть рабочий вариант, но он не работает...
Если это моды для Revamp Mod Manager, то тут придётся малость постараться. Для начала нужно зайти в Steam, и Правой Кнопкой Мыши > Управление > Просмотреть локальные файлы. Далее нужно создать ссылку на эту папку, после чего переместить эту ссылку в папку home. После чего нужно установить PortProton[portwine-linux.ru], и через него уже запустить Mod Manager. Далее он запросит ссылку на исполняемый файл SupremeCommander2.exe, заходим в папку home > заходим по созданной ссылке, и ищем нужный файл в папке bin.
.
Ну вот я смог запустить Revamp Expansion Mod 2.0 (RVE), и работает же.

На FPS не обращайте внимание, ракурс специально такой выбрал, для того чтобы показать почти всю карту.
EWE: Запуск на Android
Запуска через Exagear Windows Emulator это отдельная тема, которую я разберу лишь поверхностно (просто поверьте, это возможно). Дело в том, что используется много сторонних утилит, по типу Tunip+Zink, VirGL Overlay, так же пробуют разные версии Wine для запуска, но в любом случае до этой темы я просто не хочу добираться по простым причинам:
  1. Нету времени/желания;
  2. Нету нужного устройства для таких выкрутасов.

Но к слову уже запускали генералов (C&C: Generals) и Red Alert 3, и производительности для жанра RTS было достаточно. Нюанс даже здесь состоит в том, что всё тестится на топовых на данный момент процессорах Snapdragon не ниже 845.
WOA: Запуск на процессорах ARM
Есть тема на 4pda[4pda.to], по запуску Windows на процесорах ARM.
Небольшое предисловие. В основном компютеры работающие на Windows - работают на процессорах x86, совершенно своя архитектура, а есть ещё архитектура ARM, на которой работают все Android устройства, MAC буки и т.д. (Лучше сами углубитесь, про что я сейчас рассказал). И из-за разности архитектур, не получится на обычный стационарник на процессорах x86 установить Android, так и на смартфоны не получится установить Windows 10 к примеру, или всё же можно?
Благодаря развитии идеи ХромБуков, Майки запилили специальные версии Windows 10 и Windows 11 для ARM процессоров, да, у них производительность не кайф, но уже прогресс есть.
Подвожу я это к следующему, на отдельных устройствах Android, Raspberry Pi[www.raspberrypi.org] и может ещё пару других устройств можно установить полноценную Windows (Лучше всего подходит для этого 11), с возможностью запускать виндовые приложения. А значит можно SC2 запустить так же, так как, она использует D3D9 (Если была бы на OpenGL, то были бы проблемы с запуском).

Но и установить такую винду не каждый сможет на свои Android (Дело не в замене системы, там можно вообще винду поставить как вторую систему), дело в процессорах, так как подобное будет работать только на Qualcomm Snapdragon, и желательно последних. Процессоры MediaTek не будут работать. Поэтому смотрите в теме выше про поддерживаемые устройства.
Коментарів: 2
DOOM BFE💪  [автор] 21 лип. 2022 о 6:30 
Если запилишь хороший текст про опыт - отдельно для тебя забабахаю раздел.
bazil71 21 лип. 2022 о 5:43 
Миску пельмешек этому человеку.
Только вчера баловался на кали с протоном и подумал про SC2 и тут на, уже кто-то тему выложил).
Пойду пробовать запускать на Китай буке jumper ezbook x4).
Про 2 экран, тоже самое встречается и на винде + баги от 10 серии nvidia.
Отпишу про опыт протона на селероне с встройкой.