Перейти к контенту

[Типа блог] Ковыряем Stalker Unreal Zone


Nim-Bitum

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

Тут я буду ковырять старый проект от админов АМК 2010 года.

Оригинальный анонс (Internet archive)

О проекте (1)

О проекте (2)
Преальфа билд игры
Исходные коды (.uc + .upk)

UDK 2015-02

UE Explorer (для распаковки кода из готовой игры)
Gildor.org (декомпрессор и распаковщик игровых архивов)

 

 

 

Что такое этот ваш UDK?
В 2010-2015-м это была пушка - тебе давали ограниченный но доступ к движку Unreal Engine 3, чтобы ты мог создавать игры.
Почему не Unreal Engine 4? Ну, патамушта. А если серьезно - то в 2010-м не было никакого UE4. А код из тех времен.
 


Как моддить игру на UDK?

Скрытый текст

Шаг нулевой - У меня есть готовая игра, я хочу ее модифицировать - земля пухом тебе, брат.

Со времен UE3 все игры собиратся в т.н. cooked packages. Что это значит для типичных человеков, типа меня? Ну, начнем с того что все ресурсы, начиная от моделей и текстур и заканчивая кодом игры - собираются в бинарный файл.Вы можете декомпилировать архивы, если мсье Glidor хоть что-то расшифровал. Но для хоть какой-либо работы с архивом - придется восстанавливать до 90% архива .upk. Поверьте мне,  я распаковал LiS первую, и все еще собираю файлы, до вида "как было изначально". А ведь еще есть версии этих архивов, и шифрование. Поэтому, просто так вы ничего не сможете сделать. Точнее - сможете, но придется некоторые вещи восстанавливать вручную по текстовым конфигам. К примеру, Вот материал, подобный шейдерам от GSC. А Тут его текстовый вид. Вы готовы парсить такой текст? Я не говорю, что это невозможно, просто очень муторно.


Ладно, ты там что-то писал о Stalker Unreal Zone?
Да, так уж получилось что я довольно близко общался с WodkaGT, и он говорил, мол ue3 отличный движок, лучше ничего нет и не будет.
Итак, чтобы модить остатки прожекта вам нужно (теория)

Шаг первый - найти хоть что-нибудь. Где-то в 2019-м с помощью Internet Archive я выкачал всё, что было, ссылки выше
Шаг второй - заставить работать это всё в 2023-м, на более-менее актуальном железе.

Предпринято: скачка 4 вариантов UDK, а именно, 2010-02, 2010-04, 2010-09 и 2015-02.
Результат - заработал полноценно под win10 ltsb/ltsc только февральский билд. И то один раз, и непонятно как. Остальные версии спокойно запускали режим игры, но не могли запустить режим редактора - "C:\UDK\UDK-2015-01\Binaries\UDKLift.exe editor" вылетал через 2-3 секунды после запуска.
Решение - прошерстить все выложенные инсталляшки UDK.
Шаг третий - выкачать все бинарники за 2010-2011 года. Отменено, по причине сгоревшего монитора, который питался от 2-й видеокарты (vga). Также отклонил проверку дистрибутивов, скачаных из internet archive по причине нехватки времени и скорости.
Предпринято - попытка скачки .iso за 2010 и за 2011 года.  Качалось больше суток, и по итогу побилось. Спасибо моему провайдеру, он вообще отжигает с общедомовым роутором.
Решение - попробовать запустить всё на последней бете UDK.

Итак, скачиваем преальфу, убеждаемсячто в преальфе ничего толком нет, ни Агро, ни Темной долины, (аномалии и транспорт я не проверял).
Качаем исходники из первого поста, кладем их  в каталог с UDK, соблюдая структуру каталогов, и идем по сторонней ссылке https://sites.google.com/site/unrealdevelopmentkitpractick/home/docs/svoj-tip-igry
Ведь наш UDK ни в какую не хочет знать о нашем новом проекте.
Если конкретно, то
 

Цитата
Для того чтобы UDK понял что добавлен именно проект и начал читать директорию с объявленными классами. Для этого нужно зайти чуть выше в папку UDKGame\config и найти там файл DefaultEngine.ini.
 
Все файлы конфигурации разделены на секции каждая новая секция начинается с названия секции заключенной в квадратные скобочки например [Название секции]. 
 
Для добавления нашего пакета необходимо найти секцию с названием  [UnrealEd.EditorEngine] и добавить в ней строку с именем нашего пакета.
 
[UnrealEd.EditorEngine]
+EditPackages = UTGame
+EditPackages = UTGameContent
//+EditPackages = имя каталога из \Development\Src\, в моем случае это будет
+EditPackages= UZone_Game
 

 

Вроде всё готово, UDK должен видеть наш проект, поэтому запускаем процесс
C:\UDK\UDK-2015-01\Binaries\UDKLift.exe с параметром "editor". Можно капсом. То есть, с т.з движка:

C:\UDK\UDK-2015-01\Binaries\UDKLift.exe EDITOR

и
 

C:\UDK\UDK-2015-01\Binaries\UDKLift.exe editor

для движка равны. Ну а параметр запускает именно редактор.
После чего мы запускаем ярлык, и получаем в ответ консольный выхлоп на 25 ошибок
Скринов не будет, но ошибки будут однотипными
 

Redefinition of 'event OnAnimEnd' differs from original - 'optional' mismatch

 

К сожалению я не настолько великий знаток unrealscript - а именно на нем пишется геймплей - и я не нашел способа переопределить параметры в

UZ_Weapon 

для родительского класса
 

UTWeapon

Поэтому, придется пройтись по всем скриптам оружия, убирая параметр
 

optional

То есть привести event

simulated event OnAnimEnd(optional AnimNodeSequence SeqNode, optional  float PlayedTime, optional  float ExcessTime)

к варианту

simulated event OnAnimEnd( AnimNodeSequence SeqNode,  float PlayedTime,  float ExcessTime)


в теории - можно закрыть окно консоли, ведь мы подбедили ошибку. Но нет, нифига.
Компилятор будет ругаться на все другие функции
 

OnAnimEnd()

Не видя ничего иного я просто глянул сырцы

UTWeapon

Итого пришлось все эвенты привести к виду выше, и функции к виду ниже:

OnAnimEnd(None, 0.f, 0.f);

OnAnimEnd(None, 0.f, 0.f);

Обратите внимание, что это придется провести во всех скриптах оружия!
Я предпочитаю Sublime Text с плагином uescript c пакетом синтаксиса отсюда https://packagecontrol.io/packages/UnrealScriptIDE
Настоящие программисты (если конечно прочитают этот псевдоблог на задворках амк форума) уже скорее всего меня заочно расстреляли, но ведь компилится и не вылетает!
Ну, почти

После внесенных мною изменений в код - будет ошибка по mesh.pawn и ее blur - я просто закоментил строку.

Ну блюр и блюр, чего бухтеть-то?

 

Скрытый текст

А теперь я скажу тебе удалить пару .upk пакетов.
То есть запусти UDK редактор, запусти content browser

Что такое content browser?
Ты что, это альфа и омега работы в UDK.
Сюда ты импортируешь всё, и сохраняешь в пакеты. Epic Games придумали грузить мелкие архивы для одного уровня/на одну тематику, чтоб консоли не поперхнулись.
Сам Content browser выглядит уот так уот
Т
ак что же нужно удалить, и почему?
На этот вопрос, мой юный друг, я отвечу с конца
1) Нужно удалить ибо пакеты битые и при любой удобной возможности они будут крашить процесс редактора

Суть в том, что у .upk aрхивов есть параметры наследования, как у .db* в сталкере, таким образом вы будете получать ошибки вида https://ibb.co/yWKG56f при любом действии. Я не уверен, как это работает, но ошибки могут возникать включая оригинальные .upk от ut3 из архивов UDK. Я через неделю таких ошибок даже подумал, что у меня начал сыпаться жесткий диск.
2)Для работы UDK нужно удалить пакет "WP_Cx_Shotgun", ибо он даже в сливе был побит. Но не волнуйся, Где-то тут будет оригинальный пакет. Но придется кодить, если ты хочешь его использовать.
Второй пакет опционален, и даже я сейчас не могу его найти. Он просто не нужен. Он нигде не учитвывается. Ну то есть вообще нигде. Ни в коде, ни в других пакетах

Скрытый текст

Ты можешь запускать UDK и творить...
 

Скрытый текст

К сожалению, я пока не буду тут обсуждать как создавать браши, и ставить свет от солнца, и старт игрока.
Могу лишь посоветовать как включить режим Unreal Zone:
view - world properties - game type и там выбрать ну как-то так https://ibb.co/hYqbW2j


Дальше я обязательно проработаю этот вопрос, скорее всего ссылками на сторонние уроки, но заранее заархивлю ссылки.


 

 

Изменено пользователем Nim-Bitum
  • Нравится 1
  • Полезно 1
  • Сочувствую 1
Ссылка на комментарий

Немного документации по Unreal Engine 3 (UDK)
https://docs.unrealengine.com/udk/Three/WebHome.html Общая справка по движку от Epic Games. От запуска и до коддинга и прочих второстепенных фишек.
Некоторые пункты просто так недостижимы, и вообще отсылают на  UE3 modding home(с корневой страницы так просто не попасть) и даже на https://docs.unrealengine.com/udk/Two/WebHome.html
 

 

https://web.archive.org/web/20131210030734/http://unreal-level.3dn.ru/index/0-5 З Знаменитый в узких кругах Unreal-level.ru.

Изменено пользователем Murarius
  • Нравится 1
Ссылка на комментарий

Шок, скандалы, интриги, расследования!!!111 Шучу.

Проинспектил пре-альфу (далее - демка). Итак, в демке нет ни полноценных аномалий, ни транспорта. Кроме того, похоже что код в демке:
1) полноценно не работает при экспорте игры в билд, если выражаться терминами сталкира. А только при тесте игры из редактора.
2)Очень подозрительно похож на код из слива исходников.
Пока код не сверял по md5, но факт остается фактом.


Если вдруг кому интересно - выложу декомпил карты из демки, выложу декомпил кода из демки. Пока что я по сторонним для форума причинам - выжат как лимон.
Кроме того, если вдруг тут есть олд, чтобы кастануть сюда WodkfGT и его прихвостней коллег по проекту - напишите сюда или в лс.

Кроме того, осмелюсь похвастаться шейдером террейна с агропрома. Пока только диффузки. Ну и за наводку - блгодарю юзера Xenus-Ghost aka X-Ghost (я не знаю какой из ников он использовал тут)
Так выглядит шейдер.
image.png
А так - сам террейн. И да, тут есть сглаживание. Уберу чуть позже, ибо оно немного помогло выявить не баг, а фичу unreal engine для консолей, и которая мне не поможет - по крайней мере - пока.
image.png

Если что - я вкурсе, что не принял во внимание (в унреале какая-то *ударенная на голову* система вращения текстур) вращение детальных карт, и вообще взял 2 карты из зп.

Если кто-то знает urina unreal engine любой версии - пишите сюда или в лс.
Я доступен с 21:00 по GMT+4. На крайний случай - прочитаю ваше сообщение утром.


За сим - спокойной ночи тем, кто еще не спит.

Если завтра будут силы - опишу как импортить ресурсы из сталкира.
 

Изменено пользователем Nim-Bitum
Ссылка на комментарий

Если что - я все еще продолжаю.  Собрал тестовый пакет SUZ из декомпила "бетки", чет не сработало. ПОКА.
Кроме того - понял (опять) что в блендаре я не могу нормально создать, а затем работать со скелетал мешем.
Ну хоть имею 8 сцен с дерьмом, вместо анимаций. Чувствую себя очень тупым.
 

Ссылка на комментарий

4ou9erW.png
Демка продолжает "радовать". ССД на котором демка расположена - ок.

Изменено пользователем Nim-Bitum
  • Нравится 1
Ссылка на комментарий
18.01.2023 в 23:04, Nim-Bitum сказал:

Почему не Unreal Engine 4? Ну, патамушта. А если серьезно - то в 2010-м не было никакого UE4. А код из тех времен.

Хм...

Ну, а сейчас-то он есть. И Unreal Engine 4, и Unreal Engine 5.

Так что вопрос (ну почему?) обретает новый смысл. Не просыпалось ли случаем, желания о переносе усилий на более современные-актуальные рельсы?

  • Согласен 1
  • Полезно 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
  • Куратор(ы) темы:

×
×
  • Создать...