![Spintires Modding Spintires Modding](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/6caba0a6618b9e571e566a3c984ed4f5c39d2a66/512-image-2015-12-02-13-30-02.png)
Эта статья не является полным гайдом по моддингу SpinTires. К сожалению, таковой гайд просто бы не уместился на одной странице. Но вы всегда сможете найти недостающую информацию в сообществе SpinTires.
Создание грузовика для SpinTires
Шаг первый:
Скачайте и установите Spintires Editor при помощи сервиса Steam. Вы сможете скачать Spintires Editor только если у вас уже куплена сама игра.
При первом запуске Spintires Editor вы должны увидеть примерно вот это:
![Первый запуск Spinteres Editor Первый запуск Spinteres Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/410df649709e4ed4445bb6efd66d54d5cce689f3/477-1.jpg)
В открывшемся окне следуйте следующему алгоритму действий (как указанно на картинке):
![Первичная настройка SpinTires Editor Первичная настройка SpinTires Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/adb58356509209687ee4493bebdee1edaca88a5e/478-2.jpg)
- Выберите папку с установленной игрой.
- Нажмите кнопку "Install Game Media" - это запустит копирование игровых файлов в папку Spintires Editor, что позволит программе использовать игровые текстуры. Поэтому не удаляйте игру, если собираетесь использовать Editor. После этого у вас появится доступ ко всем игровым ресурсам и вы сможете использовать их для создания собственного мода. После каждого обновления игры вам нужно будет повторять этот пункт, для того, чтобы Spintires Editor имел доступ к обновлённым игровым файлам.
- Также, весьма желательно иметь в распоряжении NotePad++ для редактирования XML файлов. Если у вас еще не установлен этот текстовый редактор, то смело жмите "“Get Notepad++".
- После установки NotePad++, нажмите "Install Notepad++ plugins", для того чтобы установить специальные плагины для Spintires Editor, и следуйте инструкциям на экране. Эти плагины содержат множество полезных функций, в том числе:
- Быстрый запуск любого игрового файла (ALT-SHIFT-O)
- Переход к любой XML ветви (ALT-SHIFT-D)
И многие другие.
Нажмите правой кнопкой на "_mods" в окне File View и выберите пункт "Create new mod" (как показано на картинке). Это создаст новый мод Steam Workshop, он будет оставаться невидимым для всех кроме вас, пока вы сами не опубликуете его.
![Создание нового мода Создание нового мода](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/070f4ecd2feda08b850d33ce46e7cae95dac2547/479-3.jpg)
Основные понятия моддинга:
Модом для Spintires называется множество файлов, объединённых в директории, имеющей мод ID в качестве имени и, в свою очередь, находящейся в директории "_mods".
При каждом запуске Spintires Editor папки всех модов, которые вы создали, будут автоматически перенесены в папку "_mods". Все что вам нужно будет сделать перед публикацией, это заполнить папки файлами. Когда вы захотите опубликовать мод, эти файлы будут автоматически конвертированы в удобный для игры формат, переименованы и заархивированы, после чего отосланы в Steam Workshop. Таким образом никто кроме автора мода не сможет увидеть оригинальных файлов мода.
Шаг второй:
Создание ".X" файла грузовика
Вам не всегда нужно будет создавать новый файл с полигональной сеткой. К примеру, вам может понадобится отредактировать полигоны, грани и свойства уже существующего грузовика, но в нашем примере мы будем создавать новый грузовик с нуля.
Spintires использует формат ".x" для файлов полигональной сетки, что является старым форматом DirectX.
Следовательно, вам нужен будет конвертер для используемых вами моделей. Мы пользовались 3Ds Max 2012 и рекомендуем конвертер kW X-port.
![Вид модели в 3D Max Вид модели в 3D Max](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/aa4a43b1142e4b575d214afc0034880809cf68b7/480-4.jpg)
![Модель в 3D Max Модель в 3D Max](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/09e711447cf534e8cd2e7677361c7df8281c505f/481-5.jpg)
Убедитесь, что положение модели относительно осей установлено в стандартное положение. В 3D Max установить стандартное значение можно при помощи Hierarchy tab -> Reset Pivot.
Убедитесь, что корневой объект и сама текстура грузовика имеют одинаковую ротацию (X: 0.0, Y:0.0; Z:0.0) В 3D Max можно установить таковое при помощи Utilities tab -> Reset XForm modifier.
Полигональная модель грузовика должна быть выровнена по оси "X".
По крайней мере один объект (или субъобъект) модели должен быть физическим. Физические объекты, это объекты имеющие модель столкновения. Spintires автоматически создает модель столкновения для всех объектов, имеющих окончание "_cdt" в названии. Таким образом, эти объекты (или хитбоксы) не будут видимы в игре, то есть являются прозрачными, но могут иметь физическое тело как таковое. В тоже самое время, если объект имеет родственные субъобъекты с названием "cdt" - он будет использовать их геометрию в качестве собственной модели столкновения. Объекты с названием "cdt" не доступны в игре как таковые.
После того как установка полигональной модели завершена, переместите ".X" файл модели в "Media\_mods\[название мода]\meshes\trucks"
![Окно экспорта файлов kW X-port Окно экспорта файлов kW X-port](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/5cad35681e9314ad78a3e3e3539dd6deba5ecb79/482-6.jpg)
Шаг третий:
Создание XML-mesh файла грузовика
Каждый ".X" файл в Spintires имеет пару в виде текстурного файла ".XML", который описывает текстуры и специфические свойства полигональной модели в игре.
Найдите ваш новый ".X" файл в поле File View и дважды кликайте на него:
![Создание XML-mesh файла Создание XML-mesh файла](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/f610d8e8204b9fd48f4472e118c608a7f3917307/483-7.jpg)
Откройте ваш новый XML в Spintires Editor. Кликните правой кнопкой мыши по окошку с моделью и выберите пункт "Open XML File" в выпадающем меню.
![Вид mesh-файла в SpinTires Editor Вид mesh-файла в SpinTires Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/49766d77777392c0ea3d280fd7df4f012514bb81/484-8.jpg)
Мы крайне рекомендуем вам использовать NotePad++ для редактирования XML файлов. Если вы последовали нашему совету и установили все необходимые плагины для NotePad++, то нажатие на кнопку "Open XML File" автоматически откроет NotePad++.
![Пустой XML файл полигональной модели, открытый в NotePad++. Пустой XML файл полигональной модели, открытый в NotePad++.](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/fa4c63a10af522cac437c0eb3964a64a321f5831/485-9.jpg)
![XML ветвь, в виде кнопки. XML ветвь, в виде кнопки.](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/d4a69f752cfd44a4510df096c1b86e8299ff17a3/486-10.jpg)
![XML ветвь XML ветвь](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/0cafad8f45425eee0566742801ea9cf9eb28691b/487-11.jpg)
После того как подветвь с материалам добавлена, дважды кликните по ней, чтобы добавить соответствующие атрибуты.
![Редактирование XML ветви Редактирование XML ветви](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/5a459d205e0771efe7171a0814d30b7544f3c06e/488-12.jpg)
После того как вы добавили DiffuseMap и другие атрибуты, переместите курсор к параметрам атрибута (между кавычек). Должно появиться диалоговое окно настройки атрибутов.
![Редактирование атрибутов Редактирование атрибутов](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/32cd78f4a8c900507846119ed9f25ad1f45626e9/489-13.jpg)
Выберите файл текстур при помощи проводника SpinTires.
![Проводник файлов Spintires Editor Проводник файлов Spintires Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/3df04545c12ce1b1d4c2cadbf96936ad5e215eda/490-14.jpg)
![Проводник Mesh Frames. Проводник Mesh Frames.](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/aabb1590d8851b9ff7dd1dc7d223a98b21f6f19e/491-15.jpg)
![Части mesh-файла в Spintires Editor Части mesh-файла в Spintires Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/4f9b93264dca55cded3fcb6b82eec8a236e900ac/492-16.jpg)
В конце ваш XML-mesh файл должен выглядеть примерно вот так:
![Mesh-файл в NotePad++ Mesh-файл в NotePad++](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/e520efb7d75dd6b2ba04d0824a232bcfecd588b5/493-17.jpg)
Шаг четвертый:
Создание файла грузовика.
Нажмите правой кнопкой мыши по папке, которую мы создали в самом начале и выберете "New truck" в выпадающем меню.
![Создание нового грузовика Создание нового грузовика](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/452afe035e4a8c98835df7d77d0361c7d4807b39/494-18.jpg)
![Выбор имени грузовика Выбор имени грузовика](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/261c4f74b09ceb0a7c72626ce233e0631b184537/495-19.jpg)
После того как вы выбрали имя, новый XML файл должен быть создан в [имя мода]\classes\trucks.
Выберите этот файл и нажмите "Show in explorer" на панели инструментов.
![Показать файл в Windows Explorer Показать файл в Windows Explorer](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/076516e8673f36907cbdc1b7d0b28f2dd8274f00/496-20.jpg)
Прежде всего, выберите mesh-файл грузовика в качестве значения атрибута для "Truck/PhysicsModel/Mesh". Используйте инструменты Spintires для выбора файла, вместо "[truck mesh]" у вас должно быть что-то вроде "trucks/kamaz65115".
Далее выберите тип колес (некоторые стандартные типы колес находятся в папке "Media/classes/wheels") и замените "[rear wheel class]" и "[front wheel class]". Обратите внимание, что эти файлы являются XML classes, а не meshes.
После этого, проверьте, что атрибуты "ParentFrame" направлены к правильны mesh-файлам (субъобъектам).
Когда эти манипуляции будут закончены, вы можете открыть XML-файл грузовика в Spintires Editor. Он должен выглядеть примерно вот так:
![Мод грузовика с минимальными модификациями Мод грузовика с минимальными модификациями](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/20d115bc383ddffe27bf8df92c9d39a77e9e0fee/497-21.jpg)
Шаг пятый:
Настройка грузовика.
По сути процесс создания грузовика сводится к редактированию текст XML файла грузовика. Здесь вы можете видеть несколько инструментов, которые должны помочь вам в этом.
![Панель инструментов Spintires Editor. Панель инструментов Spintires Editor.](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/a80910c3ce5aba701f5ef8719c87dcc7f8370b15/498-22.jpg)
1. Обзор Wireframe mesh.
2. Отключить редактирование. Полезно, когда вы хотите просто просмотреть файлы и текстуры модели, но не хотите изменять их.
3. Lighting mode: точечное или объемное освещение (полезно при редактировании текстур и моделей затенения).
4. Включение и отключение тумана. Не используется непосредственно при создании мода.
5. Включение и отключение сетки.
6. Системная статистика.
7. Системные таймеры.
8. Перезагрузить ресурсы (текстуры и полигоны).
9. Открыть медиа-файл.
10. Скопировать объект. Не используется непосредственно при создании мода.
11. Начать и остановить физическую симуляцию. Используется для проверки физики грузовика в Spintires Editor.
Вы, также, можете использовать Havok Visual Debugger, для теста ваших настроек физики. Что бы сделать это откройте XML-файл грузовика в Spintires Editor и начните симуляцию (кнопка 11 на тулбаре).
![Отображение моделей столкновения Отображение моделей столкновения](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/37c2872ebc8518fc823caf46fcdf04d6410b4b4d/499-23.jpg)
После этого запустите Havok Visual Debugger (файл hkVisualDebugger.exe) и подключитесь к Spintires Editor (если это не происходит автоматически, то воспользуйтесь Network > Connect > localhost). После этого вы можете использовать View > User Cameras > Spintires Camera чтобы выровнять камеру Visual Debugger и камеру Spintires Editor.
![Вид модели в Havok Visual Debugger Вид модели в Havok Visual Debugger](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/f1aa45022ada17d0f7d8d35bb25e9817f28950fb/500-24.jpg)
Spintires Editor, по сути, это браузер грузовиков.
![Вид грузовика в Spintires Editor Вид грузовика в Spintires Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/ef77e660b4f7deb4c74e9f84f93461c8c546b89f/501-25.jpg)
1, 2, 3, 4 (HeadLight, Igniting, ReverseSignals, StopSignals) - позволяют вам просматривать и запускать действие частей Truck/ModelAttachments и TruckAddon/ModelAttachments XML.
5 (IK) - отображает настройки IK для TruckAddon/ControlledIK и TruckAddon/AutomaticIK.
6 (DamageSensation) - отображает область и части грузовика, на которые воздействует система повреждений в игре. Также, по этим областям можно оценить обтекаемость модели жидкостями.
7 (Shafts) - положение приводных валов грузовика.
8 (OcclusionMap) - текстура помещаемая на поверхность под грузовиком для симуляции окклюзии освещения.
9 (OcclusionVolume) - зона, закрытая моделью грузовика.
10 (OcclusionVolume/FullOcclusion) - используется вместо OcclusionVolume если установлен аддон с атрибутом "IsChassisFullOcclusion" с параметром "true".
Работа Spintires Editor в паре с плагинами Notepad++ Spintires:
Пример первый: регулирование положения приводных валов.
- Откройте XML-mesh файл грузовика, к которому вы хотите добавить приводные валы (используйте ALT-SHIFT-O).
- В контекстном меню выберите "Open XML File".
- В Notepad++ добавьте ветвь "SocketPoints/SocketPoint", если её нет, после этого переместите курсор между скобок в поле значений атрибута "Pos" и нажмите кнопку "Pos".
![NotePad++ с плагинами Spintires NotePad++ с плагинами Spintires](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/89b72a2a5d6d38568d93974e553caad534018e8e/502-26.jpg)
- Окно Spintires Editor должно появиться и показать глобальное положение выбранной ветви приводного вала
![Редактирование глобальных позиций в Spintires Editor Редактирование глобальных позиций в Spintires Editor](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/64febe47f8195e42e813772350b1728572825548/503-27.jpg)
- Используйте 3D контроль для чтобы изменять положение ветви приводного вала или кликните по полигону для привязки к точке пересечения. Нажмите "OK", чтобы сохранить координаты в Notepad++, "Cancel", чтобы отменить изменения и "Reset", чтобы вернуться к оригинальным значениям.
Пример второй: регулировка карты затенения.
- Откройте XML-mesh файл грузовика, к которому вы хотите добавить приводные валы (используйте ALT-SHIFT-O).
- В контекстном меню выберите "Open XML File".
- В Notepad++ добавьте ветвь "Truck/OcclusionMap", если её нет, после этого переместите курсор между скобок в поле значений атрибута "HalfSizeZ" и нажмите клавишу "Z".
![Редактирование глобальных позиций отдельных объектов Редактирование глобальных позиций отдельных объектов](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/18a971566e1f9d1e99b8972b67c148faaada60dc/504-28.jpg)
- Используйте 3D контроль для изменения ширины карты затенения.
Вы, также, можете редактировать локальные направления и позиции. Чтобы сделать это сперва выберите субъобъект в Spintires Editor, после чего нажмите "Pos Local/Offset" или "Dir/Axis Local" в диалоговом окне плагинов Notepad++ Spintires.
Шаг шестой:
Тестирование грузовика в игре.
После тестирования вашего грузовика в Spintires Editor, лучше всего протестировать его еще и в самой игре.
Запустите Spintires и убедитесь что у вас запущен и работает Steam.
В главном меню выберите "Proving ground", чтобы запустить игру на полигоне.
![Главное меню Spintires Главное меню Spintires](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/73aa99f60abe9169f37712e42d6b60783e2129cb/505-29.jpg)
![Инструменты разработчиков Инструменты разработчиков](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/4efad17bf88a3a2f60aa83438a88291c66d5685e/506-30.jpg)
Используйте кнопку "Spawn" для того, чтобы добавить новый грузовик.
![Выбор грузовика на Полигоне Выбор грузовика на Полигоне](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/9702c11061b2643acf54754a198c909528037b63/507-31.jpg)
![Переключение на заспавненый грузовик. Переключение на заспавненый грузовик.](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/27a53d1ade907acc494ab82e3627ea5f793ad367/508-32.jpg)
Шаг седьмой:
Публикация мода.
Ваш грузовик или аддон должен иметь приличное название. Чтобы отредактирвоать его добавьте ветвь примерно такого вида:
В специальном файле, с именем "strings.xml", который расположен в корневом каталоге вашего мода. Замените "kamaz65111" именем вашего грузовика или аддона и добавьте это имя в атрибуте "Value". Локализация модов пока еще не реализована, так что весьма рекомендуется использовать английский язык во всех названиях.
После того как вы дали имя всем своим творениям и протестировали их и в Spintires Editor, и в игре, запустите Spintires Editor и нажмите правой кнопкой мыши по вашему моду в "File View" и нажмите "Publish mod".
![Кнопка публикации мода Кнопка публикации мода](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/b62c1a2c92a56a5b2ad8a8fa63fc8086b66adb34/509-33.jpg)
![Диалоговое окно публикации мода Диалоговое окно публикации мода](https://cs1.worldofmods.ru/attachments/2015-12/large-fit/324965bfa057507769b8bdf8bec440edc0a2da73/510-34.jpg)
Если это первый раз, когда вы добавляете новый предмет в Steam Workshop, вы должны будете согласиться с условиями обслуживания, при помощи клика по ссылке "workshop terms of service".
Опционально, добавьте change note и нажмите кнопку "Publish". Должно будет появиться окно загрузки. После того как загрузка будет окончена мод станет видимым на странице https://steamcommunity.com/app/263280/workshop/