Модификации

Материал из PetruCHIO - Mindustry server
Перейти к навигации Перейти к поиску
Write it.pngТут маловато информации
Если есть ещё - принесите её нам в жертву. Нам она нужна. Если по теме, конечно :3

Модификации — это неотъемлемая часть игры. С помощью них можно добавлять новые жидкости, блоки, руды. Модификации в Mindustry состоят из папки или zip-файла, и с файлом mod.json, а также набора спрайтов и файлов .json, определяющих новый контент.

ANDROID-ВЕРСИЯ ТЕПЕРЬ ПОДДЕРЖИВАЕТ МОДИФИКАЦИИ

Скачивание специальной версии

Вообще этот пункт на данный момент не обязателен, но если вы хотите самые свежие фиксы загрузчика модов, то можете скачать специальную версию bleeding edge

  1. Тыкаем сюда.

Также есть полуавтоматическое скачивание.

  1. Тыкаем опять сюда.
  2. Ищем и скачиваем Mindustry-BE-Desktop-xxxx.jar, где xxxx — какие-то цифры.

Импорт модификации

Есть три способа импортировать модификацию. И все они простые

1. (только PC-версия) Скопируйте и вставьте папку/файл мода в папку mods Mindustry В Steam это находится в установочном каталоге Mindustry:

steam/steamapps/common/Mindustry/save/mods

Если у вас нет Steam-версии, то путь должен быть следующим:

%appdata%/Mindustry/mods

2. Заархивируйте папку с модификацией (не в отдельную папку, а лишь содержимое)(можете пропустить этот пункт, если мод уже находится в архиве).
2.1. Импортируйте через встроенный файловый менеджер игры: Главное меню→Модификации→Импортировать модификацию. Это не рекомендуется для мододелов, т.к. вам нужно постоянно архивировать в мод.
3.Узнайте адрес к модификации на github и скопируйте имя пользователя+название репозитория.
3.1.Импортируйте через игру:
Главное меню→Модификации→Импортировать GitHub модификацию.

Создание модификации

Hard it.pngПеред созданием НАСТОЯТЕЛЬНО рекомендуем почитать эту статью >>> JSON
Hard it.pngИ ещё эту >>> Git
  1. Переходим в директорию
  • Для Steam:
    steam/steamapps/common/Mindustry/mods
  • Для остальных настольных:
    %appdata%/Mindustry/mods

%appdata%/Mindustry/mods

  1. Создаём папку с любым названием. Желательно латиницей. Пусть название модификации будет Modik.
  2. Создаём папки и файлы так же, как и в древе снизу. Если лень создавать, то можете скачать отсюда.
└── Modik
   ├── content
   │   └── blocks
   │       └── magma.json
   │   └── liquids
   │       └── lava.json
   │   │──items
   ├── mod.json
   ├── sounds
   │   ├── pewpew.mp3
   │   └── pewpew.ogg
   └── sprites
   │   └── blocks
   │   └── liquids

Код

Подсказки!

  • В большинстве случаев используется английский для создания модификаций. Если вы не знаете какой-то блок, то можно нажать сюда
  • Прочитайте руководство по синтаксису JSON.
  • Лучше используйте английский.
  • Всему нужно тип. Всегда.
  • Все блоки, предметы, мехи и т.д. имеют два одинаковых типа. Это name(имя) и description(описание).

Пример:

"name": "Zoloto"
"description":"Золото (для тех, кто не знает английский)"

Блоки

Специальная категория:
blocks Было перемещено сюда для уменьшения высоты страницы.

Предметы

Специальная категория:
item

Переменные Значения Описание
type material Тип предмета, если ему не присвоить значение material, то предмет нельзя загрузить в ядро и использовать его для строительства
name Строка Название предмета, будет отображено в игре.
description Строка Описание предмета, будет отображено в игре.
cost Вещественное число Цена расчёта стоимости предмета при копировании блоков содержащих его.
color от #000000 до #FFFFFF Цвет предмета, в 16 битном диапазоне цветов. Используйте только HEX цвета.
hardness Натуральное число Жесткость, используется для материалов, добываемых бурами. Чем больше число, тем труднее добыть предмет
alwaysUnlocked false или true При значении true предмет открыт в базе данных
explosiveness Вещественное число > 0 Взрывоопасность предмета
flammability Вещественное число > 0 Возгораемость предмета
radioactivity Вещественное число > 0 Радиоактивность предмета

Жидкости

Специальная категория:
Директория:

   ├── Modik
   ├── content
   │   └── liquids
   │       └── lava.json

liquid

Свойство Описание Примечание
temperature Температура.
0.5 — это комнатная;
0 — очень холодная;
1 — знойная жара.
flammability Воспламеняемость.
Доступные значения: [0;1]
0 — полностью воспламеняется;
Всё, что выше, может загореться при воздействии тепла
0.5+ — очень легко воспламеняется.
viscosity Вязкость (Густота)
1 - Вязкая , желеобразная (При проливании жидкости ,она никогда не пропадёт)
0.5 - Вода (Пропадает через время)
0 - Маскимально жидкая (Моментально пропадает)
heatCapacity Теплоёмкость
количества тепла сохраняемого этой жидкостью.
0.4 — вода (прилично)
Всё, что ниже, вероятно, менее плотно и хуже охлаждает.
explosiveness Сила взрыва жидкости при перенагревании.
0 — никак
1 — ядерная бомба
flameColor Цвет при взрыве жидкости. Используйте только HEX цвета.
color Цвет жидкости. Используйте только HEX цвета.
effect Эффект. Эффекты

Единицы (юниты)

Пишем название юнита, не знаешь тогда жми https://petruchio.org.ru/wiki/index.php/%D0%A3%D1%87%D0%B8%D0%BC_%D0%B0%D0%BD%D0%B3%D0%BB%D0%B8%D0%B9%D1%81%D0%BA%D0%B8%D0%B9 И добавляем их.

Мехи

Чтобы добавить новый мех, надо в папке content создать папку mechs, в ней у нас будет лежать JSON файл.

Свойство Описание Примечание
name Имя меха. -
description Описание меха. -
speed Скорость меха по земле. 1 = 60
boostSpeed Скорость меха по воздуху. 1 = 60
buildPower Скорость строительства блоков у меха. 1 = 60
engineColor Цвет двигателя меха. Используйте только HEX цвета.
flying Летает или нет. Используйте true или falce.
health Здоровье меха. 1 = 60 HP
weaponOffsetX Смещение оружия у меха по X. В пикселях.
weaponOffsetY Смещение оружия у меха по Y. В пикселях.
weapon Оружие меха Пишите название текстурки оружия.

1 = 60 означает то, что вместо вашего значения надо написать ваше значение , умноженное на 60, например чтобы у меха было здоровье 120, туда надо написать 2.

Вот пример:

{
	"name": "Имя меха",
	"description": "Описание меха.",
	"speed": 0.6,
	"boostSpeed": 1.5,
	"buildPower": 2.0,
	"engineColor": "666495",
	"flying": false,
	"health": 300,
	"weaponOffsetX": 4,
	"weapon": {
		"name": "файл оружия",
		"length": 1.5,
		"reload": 4,
		"alternate": false,
		"bullet": "lightning"
	}
}
            ==== Эффекты ====

Эффекты это частицы которые излучает блок они могут быть разных цветов цвет должен быть в hex

Статус эффекты

Статус эффекты накладываются на некоторый объект на определенное время

Свойство Описание Примечание
none Нет эффекта. -
burning Эффект горения. Наносит урон в течение времени
freezing Эффект заморозки. Замедляет объект и уменьшает его броню
wet Эффект промокания. Делает объект уязвимым к электрическому урону
melting Эффект плавления. Наносит урон в течение времени и замедляет объект
tarred Эффект нефти. Замедляет объект и делает его уязвимым к огненному урону
overdrived Эффект ускорения. Увеличивает скорость объекта и наносимый им урон
shielded Эффект защиты. Увеличивает броню объекта в 3 раза
boss Эффект босса. Увеличивает броню объекта и его урон в 3 раза
shocked Эффект шока. -
corroded Эффект коррозии. Наносит небольшой урон

Спрайты

Мультиязычность

Наверное, самое простое для добавления.

  1. Узнаём специальную категорию созданной вами вещью. Специальная категорию можно узнать в разделе Код. Ниже приведено обрезанное древо.
└── Modik
    ├── bundles
    │   └── bundle.properties
    │   └── bundle_ru.properties
  1. Создаём в папке Modik/bundles файл(если вы не создали ранее).
  • Если хотите добавить строки для английского, то выберите файл bundle.properties
  • Если хотите добавить строки для русского, то выберите файл bundle_ru.properties
  1. Добавляем строку:

СпециальнаяКатегория.НазваниеВещи.name(имя)/description(описание)= <Вставить текст>
Пример. Например, я хочу добавить для жидкости lava название и описание другое на русском.

  1. Переходии в файл bundle_ru.properties
  2. Пишем следующее:
  • liquid.lava.name = Лава
  • Нажимаю Enter
  • liquid.lava.description = Очень горячая жидкость.

Звуки

Учим английский

Было перемещено сюда для уменьшения высоты страницы.