Строка 5: |
Строка 5: |
| ==Введение== | | ==Введение== |
| ===Что такое XNB файл?=== | | ===Что такое XNB файл?=== |
− | Игра хранит свои данные в сжатом контейнере <tt>.xnb</tt> формата в директории <tt>Content</tt>. Например, [[Абигейл#Портреты|портреты Абигейл]], отображаемые во время диалога, упакованы в файл <tt>Content\Portraits\Abigail.xnb</tt>. Каждый <tt>.xnb</tt> файл содержит два файла: файл с данными (например, изображение), и файл с метаданными (информация о файле с данными). К примеру, вот что находится внутри <tt>Content\Portraits\Abigail.xnb</tt>: | + | Игра хранит свои данные в сжатом контейнере <samp>.xnb</samp> формата в директории <samp>Content</samp>. Например, [[Абигейл#Портреты|портреты Абигейл]], отображаемые во время диалога, упакованы в файл <samp>Content\Portraits\Abigail.xnb</samp>. Каждый <samp>.xnb</samp> файл содержит два файла: файл с данными (например, изображение), и файл с метаданными (информация о файле с данными). К примеру, вот что находится внутри <samp>Content\Portraits\Abigail.xnb</samp>: |
| | | |
| <pre> | | <pre> |
Строка 15: |
Строка 15: |
| В примере выше: | | В примере выше: |
| | | |
− | * <tt>Abigail.png</tt> содержит портреты Абигейл. Отредактировав этот файл можно изменить портреты в игре:<br />[[File:Modding - creating an XNB mod - example portraits.png]] | + | * <samp>Abigail.png</samp> содержит портреты Абигейл. Отредактировав этот файл можно изменить портреты в игре:<br />[[File:Modding - creating an XNB mod - example portraits.png]] |
| | | |
− | * <tt>Abigail.yaml</tt> содержит метаданные о файле <tt>Abigail.png</tt> (например, какого он типа). Не нужно беспокоиться об этом файле, так как обычно он не изменяется. | + | * <samp>Abigail.yaml</samp> содержит метаданные о файле <samp>Abigail.png</samp> (например, какого он типа). Не нужно беспокоиться об этом файле, так как обычно он не изменяется. |
| | | |
| ===Как внести изменения в игру?=== | | ===Как внести изменения в игру?=== |
Строка 23: |
Строка 23: |
| | | |
| # Создать с помощью [https://www.nexusmods.com/stardewvalley/mods/1915 Content Patcher] контент пакет. Таким образом можно изменить XNB файл игры без использования программирования (просто отредактировать файл JSON), а также не заменять оригинальный файл игры. | | # Создать с помощью [https://www.nexusmods.com/stardewvalley/mods/1915 Content Patcher] контент пакет. Таким образом можно изменить XNB файл игры без использования программирования (просто отредактировать файл JSON), а также не заменять оригинальный файл игры. |
− | # [[Руководство по созданию модификаций|Создание SMAPI мода]] и использование его [[Modding:Modder_Guide/APIs/Content|Content API]]. Требуются навыки программирования. | + | # [[Модификации:Моддер_гайд/Приступая_к_работе|Создание SMAPI мода]] и использование его [[https://stardewvalleywiki.com/Modding:Modder_Guide/APIs/Content|Content API]]. Требуются навыки программирования. |
− | # Создание XNB мода и замена оригинальных файлов. Этот метод крайне не рекомендуется; смотрите [[Использование XNB модификаций|использование XNB модификаций]] для получения дополнительной информации. | + | # Создание XNB мода и замена оригинальных файлов. Этот метод крайне не рекомендуется; смотрите [[Модификации:Использование XNB модификаций|использование XNB модификаций]] для получения дополнительной информации. |
| | | |
| ===Где получить помощь?=== | | ===Где получить помощь?=== |
Строка 30: |
Строка 30: |
| | | |
| ==Распаковывание и упаковывание ресурсов== | | ==Распаковывание и упаковывание ресурсов== |
− | Файлы формата <tt>.xnb</tt> представляют собой сжатый контейнер и не редактируются. Для редактирования ресурсов игры используется программа xnbcli, позволяющая распаковывать и упаковывать XNB файлы. Она кроссплатформена и имеет [https://github.com/LeonBlade/xnbcli открытый исходный код]. | + | Файлы формата <samp>.xnb</samp> представляют собой сжатый контейнер и не редактируются. Для редактирования ресурсов игры используется программа xnbcli, позволяющая распаковывать и упаковывать XNB файлы. Она кроссплатформена и имеет [https://github.com/LeonBlade/xnbcli открытый исходный код]. |
| | | |
| Как это работает: | | Как это работает: |
Строка 36: |
Строка 36: |
| # Скачивается [https://github.com/LeonBlade/xnbcli/releases xnbcli]. | | # Скачивается [https://github.com/LeonBlade/xnbcli/releases xnbcli]. |
| # Распаковывается файл для редактирования: | | # Распаковывается файл для редактирования: |
− | ## Находится нужный <tt>.xnb</tt> файл в директории [[Модификации:Директория игры|<tt>Content</tt>]]. | + | ## Находится нужный <samp>.xnb</samp> файл в директории [[Модификации:Директория игры|<samp>Content</samp>]]. |
− | ##Копируется в директорию <tt>packed</tt> программы xnbcli. | + | ##Копируется в директорию <samp>packed</samp> программы xnbcli. |
− | ## Двойной клик по <tt>unpack.bat</tt> (Windows) или <tt>unpack.sh</tt> (Linux/Mac). | + | ## Двойной клик по <samp>unpack.bat</samp> (Windows) или <samp>unpack.sh</samp> (Linux/Mac). |
| # Редактирование распакованных данных (смотрите ниже). | | # Редактирование распакованных данных (смотрите ниже). |
| # Упаковывание ресурсов назад в файл: | | # Упаковывание ресурсов назад в файл: |
− | ## Двойной клик по <tt>pack.bat</tt> (Windows) или <tt>pack.sh</tt> (Linux/Mac). | + | ## Двойной клик по <samp>pack.bat</samp> (Windows) или <samp>pack.sh</samp> (Linux/Mac). |
− | ## Замена оригинального <tt>.xnb</tt> файла измененным. | + | ## Замена оригинального <samp>.xnb</samp> файла измененным. |
| | | |
| ==Редактирование распакованных данных== | | ==Редактирование распакованных данных== |
Строка 51: |
Строка 51: |
| [[File:Modding - creating an XNB mod - example tilesheet.png|thumb|Пример тайл-листа, который состоит из сетки тайлов как этот: [[File:Modding - creating an XNB mod - example tile 1.png]]]] | | [[File:Modding - creating an XNB mod - example tilesheet.png|thumb|Пример тайл-листа, который состоит из сетки тайлов как этот: [[File:Modding - creating an XNB mod - example tile 1.png]]]] |
| Несколько определений: | | Несколько определений: |
− | * '''Спрайт-лист''' представляет собой PNG-файл, содержащий небольшие изображения (обычно в виде сетки). Каждый квадрат сетки называется ''спрайтом''. Например, спрайты многих объектов хранятся в <tt>Content\Maps\spring_objects.xnb</tt>. | + | * '''Спрайт-лист''' представляет собой PNG-файл, содержащий небольшие изображения (обычно в виде сетки). Каждый квадрат сетки называется ''спрайтом''. Например, спрайты многих объектов хранятся в <samp>Content\Maps\spring_objects.xnb</samp>. |
| * '''Тайл-лист''' является синонимом спрайт-листа, который содержит в себе тайлы карты. Каждый квадрат сетки называется ''тайлом'' и имеет размер 16×16 пикселей. | | * '''Тайл-лист''' является синонимом спрайт-листа, который содержит в себе тайлы карты. Каждый квадрат сетки называется ''тайлом'' и имеет размер 16×16 пикселей. |
− | * '''Портрет''' спрайты содержащие портреты персонажей. Находятся в <tt>Content\Characters\*.xnb</tt>. | + | * '''Портрет''' спрайты содержащие портреты персонажей. Находятся в <samp>Content\Characters\*.xnb</samp>. |
| | | |
| Спрайт-листы легко редактируются: | | Спрайт-листы легко редактируются: |
− | # [[#Распаковывание и упаковывание ресурсов|Распаковывается <tt>.xnb</tt> файл]], ресурсы которого будут редактироваться. | + | # [[#Распаковывание и упаковывание ресурсов|Распаковывается <samp>.xnb</samp> файл]], ресурсы которого будут редактироваться. |
− | # Открывается <tt>.png</tt> файл в графическом редакторе (например [http://www.getpaint.net/download.html Paint.NET] для Windows, или [https://www.gimp.org/downloads/ GIMP] для Linux/Mac). | + | # Открывается <samp>.png</samp> файл в графическом редакторе (например [http://www.getpaint.net/download.html Paint.NET] для Windows, или [https://www.gimp.org/downloads/ GIMP] для Linux/Mac). |
| # Вносятся изменения в изображение. | | # Вносятся изменения в изображение. |
− | # [[#Распаковывание и упаковывание ресурсов|Упаковываются ресурсы]] в <tt>.xnb</tt> файл, и он переносится в исходную директорию. | + | # [[#Распаковывание и упаковывание ресурсов|Упаковываются ресурсы]] в <samp>.xnb</samp> файл, и он переносится в исходную директорию. |
| | | |
| Теперь можно запустить игру, и увидеть изменения. | | Теперь можно запустить игру, и увидеть изменения. |
Строка 69: |
Строка 69: |
| | | |
| [[en:Modding:Editing XNB files]] | | [[en:Modding:Editing XNB files]] |
− | [[zh:使用模组:制作一个XNB模组]] | + | [[zh:使用模组:制作一个XNB模组]] |