Декомпиляция уровня — различия между версиями

Материал из MODFAQ.RU — моддинг классического S.T.A.L.K.E.R., TES и Fallout
Перейти к: навигация, поиск
(Новая страница: «__NOTOC__ {| class="wikitable" style="float:right; margin-left:0.8em; clear:right; text-align: center; font-size:12px; width: 300px;" |- | colspan=2 style="font-s…»)
 
м
 
(не показаны 3 промежуточные версии этого же участника)
Строка 12: Строка 12:
 
|-
 
|-
 
| '''Актуальность'''
 
| '''Актуальность'''
| [[X-Ray SDK 0.7]]
+
| [[S.T.A.L.K.E.R. - Зов Припяти|ЗП]]
 
|-
 
|-
 
| '''Необходимый софт'''
 
| '''Необходимый софт'''
| [[:Категория:Текстовые_редакторы|Текстовый редактор]], [[X-Ray Converter]]
+
| [[:Категория:Текстовые_редакторы|Текстовый редактор]], [[X-Ray Converter]], [[X-Ray SDK 0.7]]
 +
|-
 +
| colspan=2| '''Связанные статьи'''
 
|-
 
|-
 
| colspan=2| {{Шаблон:Подключение уровней}}
 
| colspan=2| {{Шаблон:Подключение уровней}}
Строка 21: Строка 23:
  
 
Чтобы переделать готовый игровой уровень, без наличия исходников объектов и файлов в формате '''SDK'''  — декомпилируйте уровень.
 
Чтобы переделать готовый игровой уровень, без наличия исходников объектов и файлов в формате '''SDK'''  — декомпилируйте уровень.
 
  
 
== Настройка конвертера ==
 
== Настройка конвертера ==
Строка 27: Строка 28:
  
 
Если версия Windows у вас 64-битная, используйте вариант из папки '''x64-Release''', а если ещё и видеокарта от '''NVIDIA''', то — '''x64-Release_CUDA'''.
 
Если версия Windows у вас 64-битная, используйте вариант из папки '''x64-Release''', а если ещё и видеокарта от '''NVIDIA''', то — '''x64-Release_CUDA'''.
 
  
 
2) Скачайте '''X-Ray Converter Extra'''.
 
2) Скачайте '''X-Ray Converter Extra'''.
Строка 34: Строка 34:
  
 
Переместите их в папку конвертера.
 
Переместите их в папку конвертера.
 
  
 
3) Файл '''fsconverter.ltx''' настроен для работы с [[X-Ray SDK 0.4|SDK 0.4]], поэтому уберите его из папки конвертера. А имеющийся файл '''''fsconverter_cs-cop.ltx''''', переименуйте в '''fsconverter.ltx'''
 
3) Файл '''fsconverter.ltx''' настроен для работы с [[X-Ray SDK 0.4|SDK 0.4]], поэтому уберите его из папки конвертера. А имеющийся файл '''''fsconverter_cs-cop.ltx''''', переименуйте в '''fsconverter.ltx'''
 
  
 
4) Чтобы конвертер понимал, куда ему ложить декомпилированный уровень, необходимо открыть '''fsconverter.ltx''', и найти строчку:
 
4) Чтобы конвертер понимал, куда ему ложить декомпилированный уровень, необходимо открыть '''fsconverter.ltx''', и найти строчку:
Строка 47: Строка 45:
 
$sdk_root$ = false| false| D:\Programs\X-Ray_SDK_0.7\editors\
 
$sdk_root$ = false| false| D:\Programs\X-Ray_SDK_0.7\editors\
 
</source>
 
</source>
 
  
 
== Подготовка к декомпиляции ==
 
== Подготовка к декомпиляции ==
Строка 53: Строка 50:
  
 
В списке профили не только [[S.T.A.L.K.E.R. - Тень Чернобыля|ТЧ]], [[S.T.A.L.K.E.R. - Чистое Небо|ЧН]] и [[S.T.A.L.K.E.R. - Зов Припяти|ЗП]], но и множества билдов.
 
В списке профили не только [[S.T.A.L.K.E.R. - Тень Чернобыля|ТЧ]], [[S.T.A.L.K.E.R. - Чистое Небо|ЧН]] и [[S.T.A.L.K.E.R. - Зов Припяти|ЗП]], но и множества билдов.
 
  
 
Пример декомпиляции уровня из билда 1844.
 
Пример декомпиляции уровня из билда 1844.
  
 
В файле '''converter.ini''', в секции <code>[profiles]</code>, билд имеет профиль <code>1844</code>, и секцию <code>1844_config</code>.
 
В файле '''converter.ini''', в секции <code>[profiles]</code>, билд имеет профиль <code>1844</code>, и секцию <code>1844_config</code>.
 
  
 
1) Найдите в секции <code>1844_config</code>, строчки:
 
1) Найдите в секции <code>1844_config</code>, строчки:
Строка 70: Строка 65:
 
$game_levels$ = D:\Downloads\xrCore build 1844 - Feb 19 2004\gamedata\levels\
 
$game_levels$ = D:\Downloads\xrCore build 1844 - Feb 19 2004\gamedata\levels\
 
</source>
 
</source>
 
  
 
2) Чтобы конвертировать спавн билда в формат '''SDK 0.7''', допишите в секцию строчку:
 
2) Чтобы конвертировать спавн билда в формат '''SDK 0.7''', допишите в секцию строчку:
Строка 76: Строка 70:
 
spawn_version = cop
 
spawn_version = cop
 
</source>
 
</source>
 
  
 
== Декомпиляция ==
 
== Декомпиляция ==
 
1) В папке конвертера создайте [[*.bat]] файл с любым именем, например, '''start.bat'''
 
1) В папке конвертера создайте [[*.bat]] файл с любым именем, например, '''start.bat'''
 
  
 
2) Запишите в него следующий код:
 
2) Запишите в него следующий код:
<source lang=cmd>
+
<source lang=bat>
 
converter -level 1844:tir3 -out tir -mode le
 
converter -level 1844:tir3 -out tir -mode le
 
pause
 
pause
Строка 92: Строка 84:
  
 
<code>tir</code> — название уровня, которое будет после декомпиляции в SDK (''editors\rawdata\levels'')
 
<code>tir</code> — название уровня, которое будет после декомпиляции в SDK (''editors\rawdata\levels'')
 
  
 
3) При попытке запустить '''start.bat''', произойдет ошибка <code>[bug] unimplemented code path at ..\xr_entity_script.cxx:294</code>.
 
3) При попытке запустить '''start.bat''', произойдет ошибка <code>[bug] unimplemented code path at ..\xr_entity_script.cxx:294</code>.
Строка 99: Строка 90:
  
 
Решение известных ошибок конвертера описано здесь: [[X-Ray Converter#Возможные ошибки и их исправление]]
 
Решение известных ошибок конвертера описано здесь: [[X-Ray Converter#Возможные ошибки и их исправление]]
 
  
 
Готово! Если конвертер в конце написал '''saving scene''', значит декомпиляция прошло нормально. Уровень можно открывать в '''Level Editor X-Ray SDK 0.7'''.
 
Готово! Если конвертер в конце написал '''saving scene''', значит декомпиляция прошло нормально. Уровень можно открывать в '''Level Editor X-Ray SDK 0.7'''.
  
 
[[Категория:X-Ray_SDK]][[Категория:Level_Editor]]
 
[[Категория:X-Ray_SDK]][[Категория:Level_Editor]]

Текущая версия на 19:16, 27 июня 2022

Декомпиляция уровня

Автор aka_sektor
Тип статьи руководство
Актуальность ЗП
Необходимый софт Текстовый редактор, X-Ray Converter, X-Ray SDK 0.7
Связанные статьи
Декомпиляция уровня

Подключение одного уровня
Подключение нескольких уровней

Чтобы переделать готовый игровой уровень, без наличия исходников объектов и файлов в формате SDK — декомпилируйте уровень.

Настройка конвертера

1) Скачайте и установите X-Ray Converter.

Если версия Windows у вас 64-битная, используйте вариант из папки x64-Release, а если ещё и видеокарта от NVIDIA, то — x64-Release_CUDA.

2) Скачайте X-Ray Converter Extra.

Это файлы converter.ini, fsconverter.ltx и fsconverter_cs-cop.ltx.

Переместите их в папку конвертера.

3) Файл fsconverter.ltx настроен для работы с SDK 0.4, поэтому уберите его из папки конвертера. А имеющийся файл fsconverter_cs-cop.ltx, переименуйте в fsconverter.ltx

4) Чтобы конвертер понимал, куда ему ложить декомпилированный уровень, необходимо открыть fsconverter.ltx, и найти строчку:

$sdk_root$			= false| false| X:\
А затем задать свой путь к SDK до папки editors. Пример:
$sdk_root$			= false| false| D:\Programs\X-Ray_SDK_0.7\editors\

Подготовка к декомпиляции

Чтобы конвертер понимал, какой уровень ему декомпилировать, необходимо в файле converter.ini выбрать профиль, и задать в его секции путь к папке с готовым уровнем.

В списке профили не только ТЧ, ЧН и ЗП, но и множества билдов.

Пример декомпиляции уровня из билда 1844.

В файле converter.ini, в секции [profiles], билд имеет профиль 1844, и секцию 1844_config.

1) Найдите в секции 1844_config, строчки:

$game_data$			= X:\_builds_\build_1844\gamedata\
$game_levels$		= X:\_builds_\build_1844\gamedata\levels\
Измените путь до папки gamedata билда на свой. Пример:
$game_data$			= D:\Downloads\xrCore build 1844 - Feb 19 2004\gamedata\
$game_levels$		= D:\Downloads\xrCore build 1844 - Feb 19 2004\gamedata\levels\

2) Чтобы конвертировать спавн билда в формат SDK 0.7, допишите в секцию строчку:

spawn_version = cop

Декомпиляция

1) В папке конвертера создайте *.bat файл с любым именем, например, start.bat

2) Запишите в него следующий код:

converter -level 1844:tir3 -out tir -mode le
pause

1844 — профиль

tir3 — название уровня в билде (gamedata/levels)

tir — название уровня, которое будет после декомпиляции в SDK (editors\rawdata\levels)

3) При попытке запустить start.bat, произойдет ошибка [bug] unimplemented code path at ..\xr_entity_script.cxx:294.

Удалите из xrCore build 1844 - Feb 19 2004\gamedata\levels\tir3 файл level.spawn, и запустите снова.

Решение известных ошибок конвертера описано здесь: X-Ray Converter#Возможные ошибки и их исправление

Готово! Если конвертер в конце написал saving scene, значит декомпиляция прошло нормально. Уровень можно открывать в Level Editor X-Ray SDK 0.7.