Перейти к содержанию

Рекомендуемые сообщения

 

scale_1200.thumb.jpg.690bd40385dd0cdac7ade78770ebdf69.jpg

S.T.A.L.K.E.R.: Call of Pripyat - Enhanced Edition на Godot Engine

О проекте:

Это проект по переносу оригинальной игры «Зов Припяти» на современный open-source движок Godot Engine.

Это не просто модификация, а полноценная техническая реконструкция. Цель проекта — перенести логику оригинального движка X-Ray на Godot, обеспечив стабильность, современный рендер и новые возможности для разработчиков, сохраняя при этом ту самую атмосферу Зоны

Это осознанная адаптация: берем лучшее из X-Ray (механики, логику, дух игры) и переносим это на современные технологии Godot (C#, GDScript, Jolt Physics, Forward+).

Игровой движок: Godot Engine (4.6.2 Mono)

Разработчик: Vyacheslav Titov a.k.a. Demonfail

Старт разработки: 8 апреля 2026 года

Статус: В активной разработке

Статьи / Дневник: Яндекс.Дзен


Зачем это нужно?

Многие знают о проблемах и архитектурных ограничениях X-Ray. Перенос на Godot позволяет взглянуть на техническую составляющую «Сталкера» совершенно под другим углом.

В рамках Enhanced Edition ведется работа не только над графической частью, но и над глубокой, системной интеграцией оригинальных механик:

  • Создается новая архитектура базовых объектов (Object -> GameObject -> Entity -> Actor).
  • Скриптовая логика переводится с Lua на нативный GDScript.
  • Игровые системы и механики пишутся на C#.
  • Закладывается фундамент под работу с AI и ресурсами оригинальной игры (конфиги, анимации, коллизия).

Основные особенности и планы:

  • Современная архитектура и рендер: Использование возможностей Forward+ (Vulkan), отказ от старых "костылей" X-Ray.
  • Новая физика: Использование производительного движка Jolt Physics вместо устаревшего ODE. Кроссплатформенность: Потенциальная возможность нативного запуска «Зова Припяти» на Linux и других ОС.
  • Свой SDK внутри движка: Разработка собственных плагинов для Godot (Live Preview, Scene Editor), чтобы создать удобную среду для работы с ресурсами Сталкера.
  • Улучшенная стабильность: Избавление от «старых болезней» X-Ray, связанных с управлением памятью и потоками.

Дневник разработки:

Весь процесс создания, технические инсайты и разборы того, как устроены внутренности «Сталкера» под капотом, я публикую в формате статей. Если вам интересно, как именно X-Ray переносится на Godot строка за строкой — подписывайтесь.

👉 Читать дневник разработки на Яндекс.Дзен


Скриншоты / Видео:

Спойлер

 

1819309500_2026-04-06123101.thumb.jpg.b584859e208e10b468e949b646f512cc.jpg

123123.thumb.jpg.7dfa517bcb370080342c6b64d5580f60.jpg

1273267896_2026-04-06122835.thumb.jpg.0b135cef0b9abdb25c1fd33cd685e6b8.jpg

 

 

Изменено пользователем Demonfail
  • Лайк 5
  • Мастер! 5
  • Жму руку 2
  • Аплодисменты 2
  • Хабар 2
  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Цитата

А сможешь потом как-нибудь расписать как в оригинальных играх работает стрельба? Именно в деталях и с инфой о технической реализации. Мне просто очень нравится этот аспект игры, по сути там вроде каждая пуля это не рейкаст а проджектайл, типа того.


Да, рано или поздно будет о всём. Я обо всех аспектах буду писать. Ведь статьи — это и есть дневник разработки.

Я просто делаю по своей схеме:

1) Статьи идут от самого простого и легкого до самого сложного и нереального (по моим выводам, выйдет от 100 до 200 и выше, если я правильно всё рассчитал). Так я больше контролирую процесс и не сбиваюсь с мысли о чём писать.

2) Это то, что я публикую здесь, или буду публиковать где-то в другом месте (о чём я буду указывать). По сути, это то, что пойдёт в дальнейшем на материалы, статьи и реализацию.

3) Это тупо уже штурм-мозга, то о чём я не буду публиковать пока или не планирую / пойдет потом в 1 или 2 пункт.

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

Т.е. сегодня я, допустим, изучаю более подробно погоду, эффекты, небо и т.д. Завтра могу оптимизировать модельки там, почитать архитектуру, послезавтра я могу построить оптимизатор для чего-либо или Level Manager и т.д. и т.п.

Могу переосмыслить вещи или структуру. Как обычно, ложусь спать, и в голову приходит мысль: "б№31ь, надо переделать, получилось говно, можно лучше, завтра сделаю." :)
 


По поводу пули, я не особо в этом копался, но да, это Projectile.

Там более сложная система с оптимизацией... Типа ObjectPool (порождающий шаблон проектирования) и ClientEntity (то, что мы видим на экране) / ServerEntity (то, что выполняется, потом передается в локальный псевдоодиночный сервер или мультиплеер), Raycast там вроде нужен только для начала выстрела, чтобы пуля летела прямо по траектории, а потом действует сила притяжения (поэтому и можно стрелять навесом, есть упрощенная баллистика).

Я мельком все это видел, могу что-то и спутать, не вдавался в подробности, но я изучу это, когда мне будет интересно или будет реализация оружия / инвентаря.

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Короче говоря, не особо успеваю по многим аспектам, так что, хоть и хочется многим поделиться, придется ждать. Видео изначально кидал другу на оценку (чувствуется ли атмосфера), кидаю и кому интересно, мне даже интересно чужое мнение, как вам самим?

Да, видео ВК, мне просто впадлу заливать на YouTube, пока не доработаю всё, на ВК получается быстрее:

Вкратце, почти полная реализация: амбиент (включая звуки), окружения, небо, солнце, вырезанная луна, смена дня и ночи, время и календарь и т.е.

Почти вся адаптация из оригинала в Godot, но есть 2 проблемы:

1) Много багов, кукуха едет конечно у меня - но они исправляются.

2) Много ресурсов, для работы и адаптации...

В оригинале все хранится как дата-файлы в формате .ltx (он состоит из простых файлов конфигов (всем известный .cfg) и настроек формата .ini + наследование — короче, свой формат для хранения данных).

В Godot, это файлы ресурсов, они намного удобнее, масштабнее, и можно устроить им полный контроль через расширения (например, написать плагин, который кардинально меняет их визуальное представление). Но из этого большой минус: приходится всё руками переносить с .ltx в .tres.

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 минуты назад, Demonfail сказал:

Автор ограничил доступ к видео

  • Смущение 1

 1540412914_ezgif.com-optimize(1).gif.ec7250e918399802d8fe85d6d4fd7081.gif

«Если долго мучиться, что-нибудь получится»
Охотник за артефактами

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 минуты назад, Pavel2000 сказал:

Автор ограничил доступ к видео

Спасибо, исправил:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

А зачем переносить ту подделку кривую из стима, а не оригинальную игру? Там же очень много всего похерили и ничего не исправили, зато добавили новых багов и жуков. Я бы переносил на совершенно другой движок оригинал + неофициальный патч 1.6.03. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
5 минут назад, Narsul сказал:

А зачем переносить ту подделку кривую из стима, а не оригинальную игру? Там же очень много всего похерили и ничего не исправили, зато добавили новых багов и жуков. Я бы переносил на совершенно другой движок оригинал + неофициальный патч 1.6.03. 

Я был уверен, что меня про это спросят:)

Я не только портирую, EE версию, но и дорабатываю исправляю их косяки.


Дополнено 0 минут спустя

А ну ещё, я использую исходники оригинала, а не EE версии (их на руках у меня нет)


Дополнено 2 минуты спустя

А ресурсы в основном из ЕЕ версии, но я смотрю и решаю, какие лучше взять, включая даже из ТЧ, ЧН и т.е. (EE и оригинал)

Так как у них есть косяки, где в прошлых частях, ресурсы лучше сделаны, чем в новых версиях. Я не знаю, как они так делали)

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Demonfail а ты решил ее выбрать исключительно из-за поддержки геймпада? Просто других причин я не вижу. Хотя в сталкер с геймпада играть это извращение какое-то. Или там еще есть какие-то фишки особенные которых нету в оригинале? Просто ничего другого вспомнить не могу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
11 минут назад, Narsul сказал:

Demonfail а ты решил ее выбрать исключительно из-за поддержки геймпада? Просто других причин я не вижу. Хотя в сталкер с геймпада играть это извращение какое-то. Или там еще есть какие-то фишки особенные которых нету в оригинале? Просто ничего другого вспомнить не могу.

Я выбрал исключительно изначально "Сталкер: Зов Припяти" оригинал, потому что это любимая часть, и она действительно хорошо проработана в плане геймдизайна, баланса и сюжета. Я наслышан, как там люди старательно работали, и в итоге в игре меньше косяков, чем в прошлых частях.

По поводу ЕЕ версии, я взял не только из-за геймпадов, есть ресурсы которые подтянуты, например модели (для которых не нужна тесселяция, это технология уже устаревает, в Godot ее и нет), некоторые текстуры подтянуты ИИ - есть те которые не заметны по артефактам. Есть правки важные в Config'ах, в графическом плане тоже много чего подтянуто, шейдеры там есть, хоть и минимальные я смогу портировать их.

Локации я не буду брать из EE, так как наслышан о вырезне. Русский язык полностью будет, как и другие.

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

Короче я возьму только плюсы из EE, плюс другие движки посматриваю, как OpenXray, IX-Ray, Monolith т.е.

Изменено пользователем Demonfail

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   1 пользователь онлайн

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек. Оставаясь на сайте, вы подтверждаете свое согласие на их использование. Политика конфиденциальности | Условия использования