|  |  |  | 
	| Канал X Rebirth »
Модовый и скриптовый отсек X Rebirth: «Ковыряем новый движок (моддинг)» | 
	|  | 
	|  | 
	
		| Арманкессилон 
  1757 EGP 
              Рейтинг канала: 2(18)
 Репутация: 346
 Сообщения: 13225
 Откуда: Ставрополь
 Зарегистрирован: 16.08.2007
 
      |  | Ну вы поняли  Давайте разбираться вместе что есть X Rebirth и как нам теперь его модифицировать. Позже соберу в первое сообщение что-то вроде FAQ, дабы пилоты ЕГи и дальше радовали весь мир своими скриптами и модами   
 FAQ (в разработке)
 
 Q: С чего начать?
 A: Итак, пока есть не до конца переведенное руководство по моддингу: Здесь. Оригинал статьи: http://forum.egosoft.com/viewtopic.php?t=347831
 
 Q: Как устанавливать моды?
 A: В X Rebirth моды являются расширениями. Поэтому создаем в корне игры папку "extensions", в нее копируем наши моды (каждый мод должен быть в своей папке). В главном меню появится пункт "Дополнения" (Extensions), где можно будет включать/отключать моды.
 
 Q: Как включить debug-меню?
 A: Есть мод, добавляющий это меню. Ссылка на оригинал: http://forum.egosoft.com/viewtopic.php?t=348039. Там же вы можете скачать сам мод.
 
 Q: Игра, как и прежде использует запакованные каталоги cat/dat?
 A: Да. В этом плане все осталось, как и в предыдущих играх серии.
 
 
 Q: Как распаковать/запаковать cat/dat?
 A: В Steam есть официальный набор инструментов для распаковки/запаковки каталогов. Он доступен как в консольном исполнении, так и с графическим интерфейсом. Ищите в Steam в разделе инструментов X Rebirth tools. ПКМ по ней - catalog tool.
 _________________
 Все астероиды не пересчитать!
 
 Последний раз редактировалось: Арманкессилон (10:30 05-05-2014), всего редактировалось 6 раз(а)
 | 
		
		|  | 
    |  | 
	
		| AlexYar 
  1955 EGP 
                Рейтинг канала: 5(187)
 Репутация: 325
 Сообщения: 33299
 
 Зарегистрирован: 26.10.2003
 
    |  | Может сразу модовый отсек создать, чтобы этот канал "лишней" информацией не засорять? 
 И заодно пункт 17 лок.правил отменить для модового отсека, ибо запрещение использования технических терминов в постах "и прочую дребедень"... ну вы поняли
   | 
		
		|  | 
    |  | 
	
		| HikeR 
  145 EGP 
    Рейтинг канала: 4(57)
 Репутация: 30
 Сообщения: 886
 Откуда: Великий Новгород
 Зарегистрирован: 20.09.2005
 
      |  | есть на свете БГ, немцы научились использовать Lua-скрипты. правда их мало, в основной массе все по-старому. некоторые модели (или это только collision-боксы) в православном Collada-формате. 
 пары cat/dat теперь банальные донельзя, cat - текстовый файл со строками вида "fullpath size timestamp hash", dat - несжатый набор файлов (вероятно разрабы испугались, что в случае использования сжатия игра будет весить неприлично мало ;)
 
 p.s.
 файлики lang.dat/voicelang.dat прямо намекают на прекращение гемора с выбором разных локалей озвучки и текста.
 
 Последний раз редактировалось: HikeR (15:59 15-11-2013), всего редактировалось 1 раз
 | 
		
		|  | 
    |  | 
	
		| Night Nord 
  130 EGP 
   Рейтинг канала: 2(15)
 Репутация: 16
 Сообщения: 501
 Откуда: Санкт-Петербург
 Зарегистрирован: 31.10.2013
 
    |  | Lua-скрипты там для UI. Всё остальное - на гибриде старых двух XML-основанных языков. | 
		
		|  | 
    |  | 
	
		| AlexYar 
  1955 EGP 
                Рейтинг канала: 5(187)
 Репутация: 325
 Сообщения: 33299
 
 Зарегистрирован: 26.10.2003
 
    |  | Запили бы уже кто-нить программку-распаковщик кат-датов и всего остального...   | 
		
		|  | 
    |  | 
	
		| DIMOSUS.X 
  997 EGP 
         Рейтинг канала: 1(3)
 Репутация: 188
 Сообщения: 3252
 Откуда: Vilnius/Minsk
 Зарегистрирован: 06.08.2008
 
      |  | Почти готов распаковщик, но столкнулся с проблемой, а именно — файл со слишком длинным именем и директорией 
 
	  | Цитата: |  
	  | assets/props/SurfaceElements/props_surf_ar_spotlight_lamp_small_01_short_flickering_data/assets_props_surfaceelements_props_surf_ar_spotlight_lamp_small_01_short_flickering-collision.xmf |  Винда тупо отказывается создать такой файл, ругаясь:
 
 
	  | Цитата: |  
	  | Слишком длинный путь или имя файла. Полное имя файла должно содержать меньше 260 знаков, а имя каталога - меньше 248 знаков. |  _________________
 Даже ежики ежиков могут с трудом,
 Иначе бы ежики были кругом.
 | 
		
		|  | 
    |  | 
	
		| Криптон 
  1015 EGP 
        Репутация: 164
 Сообщения: 2681
 Откуда: Москва
 Зарегистрирован: 05.04.2008
 
      |  | ну, это только 187 символов, если поставить игру в папку с коротким названием, проблем быть не должно. У меня, например,
 D:\M$g\SteamLibrary\SteamApps\common\X Rebirth\
 - данный файл влазит
 
 добавлено спустя 1 минуту:
 Теоретически, путь можно сократить до чего-нибудь вроде
 D:\1\SteamApps\common\X Rebirth\
 Короче уже Стим не позволит
 
 Последний раз редактировалось: Криптон (22:54 15-11-2013), всего редактировалось 1 раз
 | 
		
		|  | 
    |  | 
	
		| DIMOSUS.X 
  997 EGP 
         Рейтинг канала: 1(3)
 Репутация: 188
 Сообщения: 3252
 Откуда: Vilnius/Minsk
 Зарегистрирован: 06.08.2008
 
      |  | Черт, у меня путь вообще был c:\Users\DIMOS\Documents\Visual Studio 2012\Projects\XR_Unpaker\XR_Unpaker\bin\Release\
 
   _________________
 Даже ежики ежиков могут с трудом,
 Иначе бы ежики были кругом.
 | 
		
		|  | 
    |  | 
	
		| MistR 
  80 EGP 
  Рейтинг канала: 1(1)
 Репутация: 29
 Сообщения: 193
 Откуда: Краснодар
 Зарегистрирован: 25.12.2008
 
    |  | Для распаковки файла можно вообще использовать отдельный каталог с минимумом символов: С:\X Rebirth\ или С:\0\
 
 
 
Чем он тебе помешает скинуть архивы прямо на корень диска?
	  | Криптон : |  
	  | Теоретически, путь можно сократить до чего-нибудь вроде D:\1\SteamApps\common\X Rebirth\
 Короче уже Стим не позволит
 |  _________________
 НЕТ - Читам!!!
 
 Последний раз редактировалось: MistR (23:03 15-11-2013), всего редактировалось 1 раз
 | 
		
		|  | 
    |  | 
	
		| Night Nord 
  130 EGP 
   Рейтинг канала: 2(15)
 Репутация: 16
 Сообщения: 501
 Откуда: Санкт-Петербург
 Зарегистрирован: 31.10.2013
 
    |  | Эххх. Щас "раздобуду" версию и буду тоже ковырять из под линупсов. Там таких глупых вещей как ограничение на длину файла нету (т.е. оно существенно больше  ) | 
		
		|  | 
    |  | 
	
		| Криптон 
  1015 EGP 
        Репутация: 164
 Сообщения: 2681
 Откуда: Москва
 Зарегистрирован: 05.04.2008
 
      |  | 
Вообще-то я себе представлял конечную цель не как просто "распаковать архивы", а "запустить игру с распакованными файлами"...
	  | MistR : |  
	  | Чем он тебе помешает скинуть архивы прямо на корень диска? |  | 
		
		|  | 
    |  | 
	
		| Alopex 
  168 EGP 
   Репутация: 14
 Сообщения: 1256
 
 Зарегистрирован: 25.12.2010
 
    |  | 
ну и в чем видится проблема указать Стиму, что игра уже скачана и находится по пути d:\ ?
	  | Криптон : |  
	  | цель не как просто "распаковать архивы", а "запустить игру с распакованными файлами"... |  | 
		
		|  | 
    |  | 
	
		| Night Nord 
  130 EGP 
   Рейтинг канала: 2(15)
 Репутация: 16
 Сообщения: 501
 Откуда: Санкт-Петербург
 Зарегистрирован: 31.10.2013
 
    |  | Кроссплатформенный быстро-хак вариант: https://gist.github.com/NightNord/7491081 
 Нужен
 третийлюбой питон и только. Брать отсюда: http://python.org/download/
 Запуск из консоли типа ./unpack.py 01.cat
 Можно добавить --output /path/to/desired/dir и будет счастье в другой папке.
 
 Гуй на pyside сделаю позже. Нормальную структуру кода и прочие прелести вроде возможности просмотра и выбора файлов - тоже. Сейчас надо разобраться с алгоритмом чексуммы и восстановлением таймштампов.
 
 EDIT: Второй питон тоже справляется. Хоть и дольше.
 EDIT: Версия 0.2 - с проверкой чексум!
 
 Последний раз редактировалось: Night Nord (00:11 16-11-2013), всего редактировалось 3 раз(а)
 | 
		
		|  | 
    |  | 
	
		| DIMOSUS.X 
  997 EGP 
         Рейтинг канала: 1(3)
 Репутация: 188
 Сообщения: 3252
 Откуда: Vilnius/Minsk
 Зарегистрирован: 06.08.2008
 
      |  | А скрипт учитывает, что в некоторых именах файлов встречаются пробелы?   _________________
 Даже ежики ежиков могут с трудом,
 Иначе бы ежики были кругом.
 | 
		
		|  | 
    |  | 
	
		| Night Nord 
  130 EGP 
   Рейтинг канала: 2(15)
 Репутация: 16
 Сообщения: 501
 Откуда: Санкт-Петербург
 Зарегистрирован: 31.10.2013
 
    |  | Да, естественно - он сначала режет по пробелам, отрезает три последние куска, а остальное склеивает назад   Чексумма: обычный md5. Щас прикручу для проверки.
 | 
		
		|  | 
    |  | 
	
		| DIMOSUS.X 
  997 EGP 
         Рейтинг канала: 1(3)
 Репутация: 188
 Сообщения: 3252
 Откуда: Vilnius/Minsk
 Зарегистрирован: 06.08.2008
 
      |  | Поковырял, к моей печали "physically based shading" не обнаружился. Хотя для мододелов это плюс — текстуры можно рисовать по старому. Есть некое подобие Френеля на острых углах, но оно все в зачаточном виде и так же далеко от Nex Gen как и прошлые части. А я то надеялся...
 
 добавлено спустя 2 минуты:
 Порадовали не до конца вырезанные ресурсы для дебага и просто забытые файлы
   _________________
 Даже ежики ежиков могут с трудом,
 Иначе бы ежики были кругом.
 
 Последний раз редактировалось: DIMOSUS.X (23:51 15-11-2013), всего редактировалось 2 раз(а)
 | 
		
		|  | 
    |  | 
	
		| Night Nord 
  130 EGP 
   Рейтинг канала: 2(15)
 Репутация: 16
 Сообщения: 501
 Откуда: Санкт-Петербург
 Зарегистрирован: 31.10.2013
 
    |  | PBL к космосиме? Зачем? По мне так лучше пускай они нормальные априорные колизии сделали, да тени человеческие (а не этот ужас прошлого века) - уже намного лучше будет. 
 
 
	  | Цитата: |  
	  | Порадовали не до конца вырезанные ресурсы для дебага и просто забытые файлы  Гы-гы
 
 |  Так а те самые "файлы с пробелами" - этож "Copy of ". Судя по огрызкам немецкого в мануале/энциклопедии и техническим ляпам вроде \(бла-бла\) - в большой спешке они релиз делали, ой в большой
   
 Последний раз редактировалось: Night Nord (23:58 15-11-2013), всего редактировалось 1 раз
 | 
		
		|  | 
    |  | 
	
		| Night Nord 
  130 EGP 
   Рейтинг канала: 2(15)
 Репутация: 16
 Сообщения: 501
 Откуда: Санкт-Петербург
 Зарегистрирован: 31.10.2013
 
    |  | Ну не знаю. Мне так кажется, что все эти physical-based штуки хороши для шутеров - там и водичка, и стёкла, и погода и всякое окружение где можно понтануться крутой картинкой. А тут как не освещай астероид - всё равно будет астероид  . А Йише явно более серьёзная помощь нужна   
 P.S. Ну и да, physical-based на DX9 всё же тяжко, тяжко. Вот портанут на OpenGL - там можно будет развернуться с ComputeShader'ами. Главное чтобы достаточно педалей наружу выставили, а там подрихтовать всегда можно будет.
 
 Кстати, по поводу рендер-модов. На английском форуме кто-то делал выполощенные картинки (с уменьшенным saturation) - картинка сразу становится более адекватной. Сделать бы такой пост-процессинг...
 | 
		
		|  | 
    |  | 
	
		| DIMOSUS.X 
  997 EGP 
         Рейтинг канала: 1(3)
 Репутация: 188
 Сообщения: 3252
 Откуда: Vilnius/Minsk
 Зарегистрирован: 06.08.2008
 
      |  | shaderfx\high\inc\ Тут лежат открытые наборы функций шейдеров. Если движок умеет это компилить на лету, то это легко реализуемо
 
 добавлено спустя 4 минуты:
 В частности функция ToneMap_Reinhard хелпера utility_func.fxh
 Самый стандартный тонмапинг Рейнхарда. Если его заменить на Filmic, то можно значительно прибавит к качеству картинки.
 
 добавлено спустя 58 минут:
 Не прокатило с шейдерами... Ни подмена в распакованном виде, не в запакованном.
 Видимо они просто забыли удалить часть их исходников.
 _________________
 Даже ежики ежиков могут с трудом,
 Иначе бы ежики были кругом.
 
 Последний раз редактировалось: DIMOSUS.X (01:22 16-11-2013), всего редактировалось 2 раз(а)
 | 
		
		|  | 
    |  | 
	
		| AlexYar 
  1955 EGP 
                Рейтинг канала: 5(187)
 Репутация: 325
 Сообщения: 33299
 
 Зарегистрирован: 26.10.2003
 
    |  | 
	  | Alopex : |  
	  | ну и в чем видится проблема указать Стиму, что игра уже скачана и находится по пути d:\ ? |  
 И как это сделать?
 | 
		
		|  | 
    |  | 
	|  | 
	
		|  | 
    |  | 
	| Канал X Rebirth ->
	  Модовый и скриптовый отсек X Rebirth: «Ковыряем новый движок (моддинг)» | 
	
		|  |