LINUX.ORG.RU

Порт F-15 Strike Eagle II на SDL3 и OpenGL

 , , ,


0

3

Опубликован проект f15se2-ex 0.1.0 — порт авиасимулятора MicroProse F-15 Strike Eagle II на современные системы. Проект основан на реконструированных исходных кодах версии F-15 Strike Eagle II v451.03 с дополнением Desert Storm Expansion Disk 1991 года.

Цель проекта — перенести игру на современные архитектуры, сохранив дух оригинала и улучшив техническую часть. В качестве графического и оконного слоя используется SDL3, для вывода 3D-графики — OpenGL, звук работает через эмуляцию AdLib на базе Nuked-OPL3.

На текущий момент игра полностью проходима. Реализованы перенос рендеринга и ввода на SDL3, работающий звук, поддержка джойстика и вывод графики через OpenGL.

Основные улучшения:

  • убрано ограничение в 15 кадров в секунду;
  • игровая логика отделена от рендеринга;
  • управление стало отзывчивее благодаря обработке событий через SDL3;
  • добавлена поддержка современных разрешений и широкоформатного экрана;
  • картинка стала чётче благодаря OpenGL и сглаживанию;
  • увеличена дальность прорисовки;
  • карта, радар и экран цели теперь выводятся в высоком разрешении;
  • воздушные цели можно выбирать так же, как наземные;
  • исправлена часть проблем с отрисовкой 3D-объектов;
  • старый программный рендеринг можно включить через F15_RENDER=software.

Сборка под Linux выполняется через CMake и Ninja. На Ubuntu достаточно установить SDL3 и собрать проект:

sudo apt install libsdl3-dev
cmake --preset base-ninja
cmake --build build

После сборки исполняемый файл нужно поместить в каталог с игровыми ресурсами или указать путь к ним через параметр --game либо переменную окружения F15SE2_DIR.

Проект находится в разработке, поэтому проблемы ещё есть, но уже сейчас его можно собрать, запустить и пройти игру. Для желающих дорабатывать старые игры на C это также может быть интересным примером переноса DOS-игры на современный стек.

Планируемые улучшения:

  • более реалистичное поведение ракет;
  • доработка средств противодействия ракетам;
  • более сильный искусственный интеллект противников;
  • улучшение стрельбы из пушки;
  • следы от ракет;
  • более подробная модель повреждений самолёта;
  • внутриигровое меню настроек;
  • улучшение облаков, дыма, земли и воды;
  • полноценная трёхмерная кабина;
  • редактор сценариев и моделей;
  • многопользовательский режим;
  • обратный порт на 32-битный DOS;
  • поддержка виртуальной реальности.

>>> Репозиторий

>>> Журнал разработки

>>> Канал разработчиков в Discord

>>> Репозиторий



Проверено: hobbit ()
Последнее исправление: CrX (всего исправлений: 5)

Хех… Я в неё ещё на «Поиске» играл. В режиме слайд-шоу, конечно, но ухитрялся даже миссии выполнять.

alegz ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Поддерживается получение ракетой С-300? ^_^

Этот выпад столько шуток пораждает, но не одну не сказать, так как это сообщение потрут. Я считаю это несправедливым и твоё сообщение нужно удалить админам, раз на него нельзя сострить в ответ.

mamina_radost
()

Для декомпиляции игры был определен компилятор, флаги, переписаны все функции на С с достижением двоичной копии с оригиналом. И разработан тулкит, чтобы делать такое с дос играми. И вообще декомпиляция очень интересно описана в журнале по ссылке

xor2003
() автор топика

Какими инструментами декомпилировали?

Я правильно понимаю, что смотрели на бинарник и подбирали код на Турбо Си, который бы дал то же в соответствующем месте?

question4 ★★★★★
()

После сборки исполняемый файл нужно поместить в каталог с игровыми ресурсами или указать путь к ним через параметр --game либо переменную окружения F15SE2_DIR.

Правильно ли я понимаю, что игровые ресурсы нужно иметь «свои»?..

Somebody ★★★★
()
Ответ на: комментарий от router

Эта игра на том же движке. Я садился в f-117. Я поищу, может есть миссия с авианосцем.

xor2003
() автор топика
Ответ на: комментарий от question4

Верно. Написали свои для сравнения бинарников и тп: mzretools. Только компилятор MS C 5.1, а не Borland turbo. Есть репозиторий на гитхаб со всеми дос компиляторами

xor2003
() автор топика
Ответ на: комментарий от Somebody

Как в случае со всеми портами игр - мы переписываем движок, ресурсы вы покупаете сами. Ну или находите

xor2003
() автор топика
Ответ на: комментарий от router

насколько помню, в штатных миссиях аэродромы сухопутные, но вроде бы в миссии на Средиземном море можно сесть на авианосец. хотя могу путать с «f-19» или «f-117».

alegz ★★★★★
()
Ответ на: комментарий от xor2003

Написали свои для сравнения бинарников и тп: mzretools. Только компилятор MS C 5.1, а не Borland turbo.

https://github.com/neuviemeporte/mzretools Спасибо.

Только 8086, или и более поздние процессоры?

Только MS C и Turbo C? Или Watcom C тоже можно? Необходима ли в точности та же версия компилятора?

Поддерживаются ли бинарники с DOS/4GW?

question4 ★★★★★
()

Видос бы приложили, оценить как это выглядит

pikabu
()
Ответ на: комментарий от slackwarrior

Пиксели подробно рассмотришь. В полном 3D.

Там скорее не пиксели, а кирпичи будут :)

anc ★★★★★
()
Ответ на: комментарий от question4

Думаю что до 286 включительно. Компилятор не важен. Тулкит специально под 16 бит сегментную модель памяти. Потому что ее декомпилировать сложнее чем 32 бита и dos4gw. Под 32 бит есть миллион декомпиляторов в С. Берете нейронку, даете ей декомпилированный С и просите сделать юнит тесты под оригинальные функции из бинарника. Под 16 бит есть еще Тулы: spice86, пропатченная ghosts, libdosbox, masm2c.

xor2003
() автор топика
Ответ на: комментарий от xor2003

Тулкит специально под 16 бит сегментную модель памяти.

Понятно. Да, с этим сложно.

question4 ★★★★★
()
Ответ на: комментарий от windows10

так ты думаешь что VR изобрели 10 лет назад?

Я думаю, что эту игру не разрабатывали под VR, поэтому при запуске в VR там будет всрато.

Aceler ★★★★★
()

Даже поискал на ностальгии во что же мы в школе играли. В Retaliator.

Хотя, в сабж вроде тоже играли.

Loki13 ★★★★★
()
Последнее исправление: Loki13 (всего исправлений: 1)
Ответ на: комментарий от alegz

У меня друг так играл. Рассказывал: Прихожу домой из школы, запускаю миссию, ложусь на курс. Иду обедать. К концу обеда самолёт долетает до цели. Выполняю задание. Ложусь на обратный курс. Иду делать уроки. Сажусь. Завтра новая миссия. :)

atrus ★★★★★
()
Ответ на: комментарий от atrus

Там есть ускорение времени. А вообще пока летишь к цели можно сбивать самолеты

xor2003
() автор топика
Ответ на: комментарий от bulch

Знаю. Тоже хотелось бы. Можно попробовать сопоставить сигнатуры функций

xor2003
() автор топика
Ответ на: комментарий от windows10

помню в 90ых у меня радом со школой был компьютерный магаз (местного фидошника), а при нём был компклуб, так вот там были VR шлем(ы), жаль поиграть в них так и не довелось

z0idator
()
Ответ на: комментарий от Aceler

Я думаю, что эту игру не разрабатывали под VR, поэтому при запуске в VR там будет всрато.

Чукча не читатель, чукча писатель?)

Поднимись в тему, и прочитай внимательно, относительно чего упоминалась поддержка виртуальной реальности.

windows10 ★★★★★
()
Ответ на: комментарий от xor2003

На самом деле игра уже выглядит сильно лучше, чем на скрине

Вопрос цели. Симы про F-15 «сильно лучше чем на скрине» давно есть, начиная от Jane's F-15 1998го и со всеми остановками до DCS. Обычно порты классики делают чтоб органолептически ощущать «то самое», баг-ту-баг.

slackwarrior ★★★★★
()

Пойду поищу коробку с 5.25 дискетами, где-то был записан F15

PlaQ ★★
()
Ответ на: комментарий от z0idator

при нём был компклуб, так вот там были VR шлем(ы), жаль поиграть в них так и не довелось

Ничего не потерял. Я играл году в 1996 в таком шлеме в Doom. За 30 лет уже не вспомню детально ощущения, помню только боль от напрасно потраченных денег, потому что оно было прям намного дерьмовее, чем играть в Doom на хорошем большом мониторе.

Chiffchaff
()
Ответ на: комментарий от anc

Всё-таки не удержался и распаковал 15 из архива. Как минимум, на Ливийском ТВД есть авианосец, может, и ещё каких-то, типа Вьетнама. Я почему помню — разница была в том, что при посадке на авианосец допускалась бо́льшая вертикальная скорость, и не надо было тормозиться самому, финишёр останавливал мгновенно.

alegz ★★★★★
()

xor2003

А новость-то от автора!

luke ★★★★★
()
Ответ на: комментарий от xor2003

ресурсы вы покупаете сами. Ну или находите

Есть ещё вариант начать пилить свои ресурсы под свободными лицензиями.

luke ★★★★★
()

Жуть. Других слов у меня не находится. Зачем портировать такую древность, ещё и с такой графикой. Я понимаю дум портируют т.к. культовый, но это я первый раз увидел, а я про ретрософт довольно много знаю (больше чем все кого знаю ИРЛ, но меньше некоторых ЛОР-овцев).

peregrine ★★★★★
()
Ответ на: комментарий от router

Если ты про зубодробительную по сложности посадку, то там постарше игра будет. Скорее всего имеется ввиду игра Top Gun (NES) 1987 года.

peregrine ★★★★★
()
Ответ на: комментарий от peregrine

Вообще-то именно эта версия (II) вполне культовая, как и многие симы от MicroProse (хотя, вроде, менее популярна, чем более ранний F-19 или поздний F-117). Плюс, кроме прочего, они были портированы на Амигу и Атари, что ещё более увеличивает популярность. У меня, например, именно эта игра была вообще первым флайтсимом.

Другой вопрос, зачем вообще портировать то, что идеально идёт под Досбоксом…

alegz ★★★★★
()
Ответ на: комментарий от peregrine

дум портируют т.к. культовый

Так и это культовая игруля. Упоминается в не менее культовой повести Пелевина «Принц госплана».

я про ретрософт довольно много знаю

Очень сомнительно.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Пелевин не культовый (он пытается казаться элитарным и интеллектуальным в рамках своей пиар компании, но это тоже не совсем так, хотя он далеко не дурак и возможно интеллектуал, я его ИРЛ не знаю чтоб судить строже). Из культовых (массовой культуры, нишевые есть) и живых у нас, пожалуй, никого нет сейчас. Последними были Стругацкие и Можейко (Кир Булычёв) с Успенским. Чтоб быть культовым надо медиафраншизу вытянуть. Т.е. не только книжку написать, которую почти все прочитали, но и кино которое все видели или атрибутику вроде сраных анимешных фигурок/картинок/аватарок которая всюду встречается. Вот Resident Evil культовый - есть игра, кино, а в городе я видел мотоцикл стилизованный под амбреллу. Можейко - культовый (мультфильм Тайна третьей планеты все видели или советский фильм про Алису и песню оттуда). Стругацкие ещё более культовые уже мирового уровня, те вообще влияние оказали на творчество в других странах (Пикник на обочине) и локально (Трудно быть богом и вселенная полудня). А Пелевин, Пехов и иже с ними это просто среднячки. Да, своё дело знают, выпускают твёрдый и уверенный контент, но, если быть честными, их уровень не превышает уровень у Дормагоя Курмаича, который на западе просто любитель, пишуший (очень медленно) сказки для детей и не замахивающийся на уровень Роулинг или Пратчета.

Возможно культовой может стать франшиза Последний Богатырь. Но те не с книжки начали, а сразу с фильмов для детей. И сама франшиза не очень идёт вне рамок кино с актёрами, где это пожалуй самый успешный российский проект нашего времени. Да, пусть для детей, а не взрослых, но мы не про фильмы для тебя говорим, а про ситуацию на всём рынке нашей культуры.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Упоминается в не менее культовой повести Пелевина «Принц госплана»

Там про F-19, насколько мне известно. Он, таки да, был популярней, как и более поздний F-117. Там ещё была фишка, что сценарии из 19 можно было выдрать и использовать в 15, они были совместимы.

alegz ★★★★★
()
Ответ на: комментарий от alegz

Там про F-19, насколько мне известно

Там было про оба и не только.

no-such-file ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.