Don't Starve вики
Advertisement
Don't Starve вики
2203
страницы

Данное руководство предназначено в первую очередь для моддеров, но будет полезно и для тех, кто наполняет вики изображениями из игры (а также всем любопытствующим). Примечание: для скачивания с сайта Klei нужно быть авторизованным пользователем.

Все пути к файлам в этом руководстве подразумевают, что у вас уже открыта папка с игрой. Чтобы открыть её, нажмите правой кнопкой мыши по названию игры в библиотеке Steam и в появившемся контекстном меню выберите "Управление" -> "Посмотреть локальные файлы".

Виды папок[]

  • Папка data\anim содержит файлы текстур и анимаций всего, что движется: персонажей, существ, структур и некоторых элементов интерфейса игры.
  • Папка data\bigportraits содержит изображения портретов персонажей (в том числе портретов скинов в DST).
  • В папке data\images находятся файлы текстур пользовательского интерфейса игры: различных кнопок, загрузочных экранов и некоторых эффектов. Там же находятся файлы inventoryimages, в которых содержаться иконки всех предметов, какими они отображаются в инвентаре.
  • Папка data\minimap содержит файл с текстурами иконок различных объектов на игровой карте.

Следует отметить, что в Don't Starve Together некоторые файлы сжаты в архив databundles.zip, внутри которого можно найти папки с теми же названиями.

Извлечение отдельных текстур[]

За все текстуры в игре отвечают файлы формата .tex. Этот формат является производным от формата DXT и содержит сжатые изображения.

Для открытия файлов формата .tex и последующего извлечения изображений понадобится программа TEXTool. Рекомендуется к пользованию модифицированная версия этой программы за авторством пользователя TheZhab, основанная на версии 1.4.1.

Чтобы извлечь какую-либо текстуру, нужно найти нужный файл формата .tex и открыть его с помощью TEXTool. В открывшемся окне нужно нажать на кнопку "Save" и сохранить файл в нужном месте. Файл сразу сохранится в формате .png с прозрачным слоем. После этого можно открыть .png в графическом редакторе для того, чтобы вырезать нужное изображение (если там их много) или обрезать лишнее пустое пространство.

Модифицированная версия TEXTool позволяет выбирать нужные элементы, после чего вырезать и сохранять их по отдельности. Это возможно только если в папке вместе с файлом формата .tex также присутствует файл формата .xml с тем же именем. Например, так можно выделять и извлекать иконки различных предметов в инвентаре, если открыть файл inventoryimages.tex, где находится множество различных иконок.

Пример[]

Пример извлечения текстур на примере ягод:

  1. Открываем архив berries.zip (можно предварительно извлечь содержимое, но это необязательно) (\data\anim\berries.zip).
  2. С помощью TEXTool открываем файл atlas-0.tex.
  3. Сохраняем файл и получаем изображение ягод в формате .png.

Извлечение сборных текстур и анимаций[]

Как уже было сказано, все файлы анимаций находятся в папке data\anim. В этой папке можно найти множество архивов, названия которых чаще всего соответствуют кодам призыва объектов. За каждую анимацию отвечают сразу три файла:

  • atlas-0.tex содержит сами изображения. В случае, если у анимации много элементов и/или они большие по размеру, также может присутствовать файл atlas-1.tex.
  • build.bin содержит информацию о том, как и на какие элементы нужно "разрезать" текстуру из файла atlas-0.tex.
  • anim.bin содержит информацию о том, какие анимации есть у объекта и как должны двигаться элементы, полученные после "разрезания" текстуры.

Для получения анимации нужны все три вышеперечисленных файла, отсутствие хотя бы одного из них приведёт к провалу.

Для извлечения анимаций нужно скачать ktools и расположить в удобном месте (путь не должен содержать кириллицу). Также нужно скачать вот эти дополнительные файлы .bat и поместить в папку с ktools.
Альтернативный вариант (в случае возникновения проблем с ЯДиском или форумом Klei): уже собранный проект ktools).

Далее нужно найти интересующий объект в папке data\anim, открыть соответствующий архив и перенести файлы atlas-0.tex, build.bin и anim.bin в папку с ktools. Случай, если в архиве отсутствует файл anim.bin, описан ниже. После этого нужно запустить файл unpack.bat и дождаться окончания работы программы. В появившейся папке "folder" появятся исходники анимаций, а также файл .scml.

Для открытия файла .scml нужно скачать программу Spriter. После открытия файла появится окно программы, где можно посмотреть, как собраны анимации, а также запускать их и всячески изменять. Для того, чтобы экспортировать изображение или анимацию, нужно открыть меню "File" и выбрать пункт "Export Animation To PNG/GIF". После этого появится меню с различными функциями экспорта:

  • В случае, если требуется извлечь одно изображение в формате .png, нужно вписать "1" в поле "images" и поставить переключатель на "separate numbered image files".
  • Если же требуется извлечь анимацию в формате .gif, то нужно поставить крестик на пункте "keyframes only" и поставить переключатель на "animated gif".

Настроек для экспорта у программы Spriter гораздо больше, однако выше описаны только те, что оптимально использовать именно для вывода изображений и анимаций и последующей загрузки их на вики. После настройки экспорта нужно нажать на кнопку "Export" и выбрать нужную папку, куда сохранится полученное изображение или анимация.

Отсутствие файла anim.bin[]

Если же в архиве отсутствует файл anim.bin, его нужно найти в каком-то другом архиве. Обычно это значит, что у объекта есть другие версии, которые используют те же анимации. Например, это касается Честера: снежная и теневая его версии используют те же анимации, что и оригинал, тем самым у них нет собственного отдельного файла anim.bin.

Часто отсутствующий файл можно найти исходя из логики, однако бывают и сложные случаи, когда всё не так очевидно. Тогда нужно открыть папку data\scripts\prefabs и найти файл формата .lua с названием, соответствующим коду призыва искомого объекта. Его можно открыть при помощи обычного блокнота. Обычно в начале файла можно найти строки следующего формата: Asset("ANIM", "anim/название_файла.zip"). Эти строки определяют то, какие анимации использует объект, следовательно, нужный файл anim.bin нужно искать по названиям, указанным в этих строках.

Пример[]

Пример извлечения анимации на примере призрака пирата:

  1. Находим ghost_pirate_build.zip (\data\DLC0002\anim).
  2. Распаковываем содержимое в папку с ktools.
  3. Файл anim.bin отсутствует, однако в данном случае призрак пирата основан на обычном призраке и двигается "по образу и подобию" прототипа. Так что нам нужно найти анимацию обычного призрака и также скопировать в папку с ktools (где уже лежат atlas-0.tex и build.bin от призрака пирата) anim.bin от обычного призрака.
  4. В папке ktools запускаем файл unpack.bat и дожидаемся, когда программа преобразует все что нужно (обычно недолго).
  5. Теперь заходим в появившуюся папку "folder" и лицезреем исходники. Запускаем pirate_boat_placer.scml с помощью Spriter.
  6. Допустим, мы хотим получить анимацию того, как призрак появляется. В списке анимаций в правой части окна программы выбираем анимацию "appear".
  7. Заходим в меню "File" и выбираем "Export Animation To PNG/GIF".
  8. В появившемся окне ставим крестик на варианте "keyframes only" и кружок на варианте "animated gif". Нажимаем на кнопку "Export", сохраняем файл и получаем анимацию появления призрака пирата в формате .gif.

Другие моменты[]

Почему изображения выглядят размытыми/пережатыми?

Потому что они пережаты. Изначально размеры картинок, такие, как вы их можете видеть в папках с исходниками. Но в игре картинки выглядят намного меньше и поэтому фирма Клей (видимо) в целях экономии ресурсов компьютера пережимает почти все  изображения в меньшие по размеру. На качестве картинки в игре это практически не отражается, но вес уменьшается в несколько раз.

Если вы решите сделать мод, то тоже можете сделать такое уменьшение. Для этого после компиляции ваших изображений откройте архив с анимацией и извлеките atlas-0.tex куда-нибудь. Преобразуйте в .png и откройте в графическом редакторе. Измените разрешение изображения (с уже несколькими картинками). Лучше делать кратно уменьшений в 3-4 раза (например, из разрешения 1024х1024 сделайте 256х256). Преобразуйте полученное изображение в atlas-0.tex (с помощью TEXCreator.exe (есть в папке с TEXTool)) и поместите этот новый atlas-0.tex прямо в архив с заменой. Готово.

Возможные проблемы и их решение[]

При открытии исполняемых файлов появляется окно с ошибкой, связанной с отсутствием библиотеки "VCOMP120.DLL" на компьютере

Вам нужно скачать и установить пакет Visual Studio 2013 для x86. Скачать можно с официального сайта.

Advertisement