level. compiler/decompiler (level. cdc) — различия между версиями
Материал из xrWiki
RedPython (обсуждение | вклад) |
RedPython (обсуждение | вклад) |
||
Строка 35: | Строка 35: | ||
* Введено логгирование, адаптирован новый модуль отладки | * Введено логгирование, адаптирован новый модуль отладки | ||
'''[v.0.3]''' | '''[v.0.3]''' | ||
− | Исправлен баг запаковки, если паковался чанк FSL_CFORM | + | * Исправлен баг запаковки, если паковался чанк FSL_CFORM |
'''v.0.2''' | '''v.0.2''' | ||
* Добавлена поддержка билдов 749-1555 | * Добавлена поддержка билдов 749-1555 |
Версия 16:20, 5 июня 2013
S.T.A.L.K.E.R. level compiler/decompiler
Тип | Компилятор/декомпилятор |
Автор | K.D. |
Последняя версия | 0.4 |
Написан на | Perl 5 |
Обратная связь | AMK форум |
Скрипт предназначен для распаковки и запаковки файла level. Поддерживаются форматы всех финалок и всех известных билдов. Кроме распаковки также подробно разбираются следующие секции:
- FSL_HEADER — заголовок с версией xrLC и качеством сборки
- FSL_SHADERS — таблица пар текстура/шейдер (engine shader). В билдах 1558-1569 только текстура.
- FSL_LIGHT_DYNAMIC — источники света (в основном, для R1)
- FSL_GLOWS — отблески
- FSL_TEXTURES — текстуры (билды 749-1098).
Можно редактировать, изменения при запаковке сохранятся. В билдах часть секций находится в запакованном виде, текущая версия скрипта их не распаковывает.
Использование
Декомпиляция: lcdc -d <файл> [-o <папка>]
lcdc -c <папка> [-o <файл>]
Подсказки:
- в FSL_LIGHT_DYNAMIC у каждой секции есть параметр type (тип). Доступные варианты: point|spot|directional.
- в FSL_GLOWS shader_index означает номер пары в таблице текстура/шейдер. Внимание! Под индексом 0 в таблице нет пары, так и должно быть.
История версий
[v.0.4]
- Введено логгирование, адаптирован новый модуль отладки
[v.0.3]
- Исправлен баг запаковки, если паковался чанк FSL_CFORM
v.0.2
- Добавлена поддержка билдов 749-1555
v.0.1
- Начальный релиз, основная функциональность.
Автор данного скрипта - K.D., разбор формата level - bardak.