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

Материал из PetruCHIO - Mindustry server
Перейти к навигации Перейти к поиску
[досмотренная версия][досмотренная версия]
(→‎Пример использования: Исправлена очепятка)
Метки: правка из мобильной версии, правка с мобильного устройства
 
(не показано 20 промежуточных версий 2 участников)
Строка 1: Строка 1:
Пользовательские правила - это те правила, которые доступны в игре и для изменения на сервере.
+
'''Пользовательские правила''' — это те правила, которые доступны в игре и для изменения на сервере.
=== Настройка правил на сервере ===
+
 
Чтобы добавить или удалить правило, используйте <code>rule add правило</code> и <code>rule remove правило</code> соответственно.
+
== Настройка правил на сервере ==
 +
Чтобы добавить или удалить правило, используйте <code>rule add правило</code> и <code>rule remove правило</code> соответственно.<br>
 +
Для понимая что такое типы данных, Вы можете прочесть [[Тип данных|статью]]
 +
 
 +
=== Boolean / Логические правила ===
 +
Эти правила имеют значения: true (да) и false (нет).
 +
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
 
! Название !! По умолчанию !! Описание
 
! Название !! По умолчанию !! Описание
 
|-
 
|-
| Boolean.
+
| <code>infiniteResources ||  || Бесконечные ресурсы у игроков (дает возможность строить источники ресурсов и повышает скорость строительства)
 
|-
 
|-
| <code>infiniteResources || Текст ячейки || Текст ячейки
+
| <code>waveTimer || true || Таймер для волн
 
|-
 
|-
| <code>waveTimer || Текст ячейки || Текст ячейки
+
| <code>waves || || Есть ли волны иль нет
 
|-
 
|-
| <code>waves || Текст ячейки || Текст ячейки
+
| <code>enemyCheat || || Бесконечные ресурсы у врагов (ИИ), с включенным правилом вражеским турелям не потребуются боеприпасы
 
|-
 
|-
| <code>enemyCheat || Текст ячейки || Текст ячейки
+
| <code>pvp || || Режим пвп
 
|-
 
|-
| <code>pvp || Текст ячейки || Текст ячейки
+
| <code>unitDrops || true || Оставляют ли вражеские боевые единицы после смерти неподалеку от ядра ресурсы
 
|-
 
|-
| <code>unitDrops || Текст ячейки || Текст ячейки
+
| <code>reactorExplosions || true || Взрывы реакторов с нанесением большого урона
 
|-
 
|-
| <code>reactorExplosions || Текст ячейки || Текст ячейки
+
| <code>limitedRespawns || false || Ограничены ли появления игроков.
 
|-
 
|-
| <code>limitedRespawns || Текст ячейки || Текст ячейки
+
| <code>waitForWaveToEnd || false || Ждёт ли таймер для волн, пока враги будут уничтожены
 
|-
 
|-
| <code>waitForWaveToEnd || Текст ячейки || Текст ячейки
+
| <code>attackMode || false || Режим атаки.
 
|-
 
|-
| <code>attackMode || Текст ячейки || Текст ячейки
+
| <code>editor || false || Режим редактора. Всё замирает. Можно использовать для смены команд, но лучше [[JS]]
 
|-
 
|-
| <code>editor || Текст ячейки || Текст ячейки
+
| <code>tutorial || false || Режим обучения. Практически бесполезно, т.к. багнутое.
 
|-
 
|-
| <code>tutorial || Текст ячейки || Текст ячейки
+
| <code>lighting || false || Освещение.
 
|-
 
|-
| <code>lighting || Текст ячейки || Текст ячейки
+
| <code>drawDarkness || true || Эксперементальное в 6.0. Отрисовка теней.
 +
|}
 +
 
 +
=== Float / Правила с вещественными числовыми значениями ===
 +
Правила со вещественными числовыми значениям, вписанное значение это множитель.
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Описание
 +
|-
 +
| <code>unitBuildSpeedMultiplier || 1 || Множитель скорости постройки боевых единиц.
 +
|-
 +
| <code>unitHealthMultiplier || 1 || Множитель здоровья боевых единиц.
 +
|-
 +
| <code>playerHealthMultiplier || 1 || Множитель здоровья игрока.
 +
|-
 +
| <code>blockHealthMultiplier || 1 || Множитель здоровья построек.
 +
|-
 +
| <code>playerDamageMultiplier || 1 || Множитель урона игрока.
 +
|-
 +
| <code>unitDamageMultiplier || 1 || Множитель урона боевых единиц.
 +
|-
 +
| <code>buildCostMultiplier || 1 || Множитель затрат на строительство.
 +
|-
 +
| <code>buildSpeedMultiplier || 1 || Множитель скорости строительства.
 +
|-
 +
| <code>deconstructRefundMultiplier || 0.5 || Множитель возврата ресурсов при разбирании постройки.
 +
|-
 +
| <code>enemyCoreBuildRadius || 400 || Радиус, в котором нельзя строить относительно ядра
 +
|-
 +
| <code>dropZoneRadius || 300 || Радиус зоны высадки врагов
 +
|-
 +
| <code>respawnTime || 60 * 4 || Время респауна игрока (указывается в тиках)<ref>60 тиков это, примерно, 1 секунда.</ref>
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
| <code>waveSpacing || 60 * 60 * 2 || Время между волнами (указывается в тиках<ref>60 тиков это, примерно, 1 секунда.</ref>)
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
| <code>bossWaveMultiplier || 3 || Множитель спауна волны с боссом
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
| <code>launchWaveMultiplier || 2 || Множител
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
| <code>solarPowerMultiplier || -1 || Множитель энерговыработки солнечных панелей.
 +
|}
 +
 
 +
=== Zone / ?! ===
 +
 
 +
{| class="wikitable"
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
! Название  !! Описание
 +
|-
 +
| <code>zone  || Режим, при включении которого в игре разрешается отправка ресурсов с помощью стартовой площадки. Поднобности [[JS|здесь]].
 +
|-
 +
| '''Пример использования''' || <code>rules add zone groundZero
 +
|}
 +
 
 +
=== Array<SpawnGroup> / Правило с массивом данных ===
 +
 
 +
Для лёгкого редактирования просто зайдите в Редактор->Меню->Информация про карту->Настройки волн.</br>
 +
После настройки волн: Редактировать->Cкопировать в буфер обмена.
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Структура массива !! Описание
 +
|-
 +
| <code>spawns ||  ||  ||
 +
|}
 +
'''Пример использования:'''</br>
 +
<code>rule add spawns [{type:dagger,scaling:1},{type:crawler,begin:4,spacing:2,scaling:2},{type:titan,begin:14,spacing:2,scaling:2},{type:fortress,begin:24,spacing:2,scaling:5},{type:eruptor,begin:49,spacing:3,scaling:10},{type:chaos-array,begin:74,spacing:4,scaling:20},{type:eradicator,begin:99,spacing:5,effect:8},{type:wraith},{type:reaper}]</code>
 +
 
 +
=== Int / Правило с целочисленным значением ===
 +
Обратите внимание, что limitedRespawns должно быть истинным (true).
 +
Допускаются только целые числа.<br>
 +
Полное названия этого типа данных — Integer.
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Описание
 +
|-
 +
| <code>respawns || 5 || Количество возрождений игроков (всех) на одну волну.
 +
|}
 +
 
 +
=== Array<ItemStack> / Правило с массивом данных ===
 +
 
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Структура массива !! Описание
 +
|-
 +
| <code>loadout ||  || <code>[{item:руда,amount:1},{item:руда,amount:1}] || Стартовые ресурсы
 +
|-
 +
| '''Пример использования.'''
 +
|
 +
|rowspan=2| <code>'''rules add loadout''' [{item:copper,amount:1},{item:lead,amount:1},{item:sand,amount:1},{item:titanium,amount:1},{item:thorium,amount:1},{item:plastanium,amount:1},{item:graphite,amount:1},{item:metaglass,amount:1},{item:silicon,amount:1},{item:phase-fabric,amount:1},{item:surge-alloy,amount:1}]</code>
 +
|}
 +
 
 +
=== ObjectSet<Block> / Правило с ?! ===
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Структура записи значений !! Описание
 +
|-
 +
| <code>bannedBlocks ||  || <code>[блок, блок] || Блоки, которые нельзя использовать
 +
|}
 +
'''Запрет всех блоков:'''</br>
 +
<code>rules add bannedBlocks [duo, scatter, scorch, hail, arc, wave, lancer, swarmer, salvo, fuse, ripple, cyclone, spectre, ripple, meltdown,mechanical-drill,pneumatic-drill,laser-drill,blast-drill,water-extractor,cultivator,oil-extractor,conveyor,titanium-conveyor,armored-conveyor,junction,bridge-conveyor,phase-conveyor,sorter,inverted-sorter,router,distributor,overflow-gate,underflow-gate,mass-driver,mechanical-pump,rotary-pump,thermal-pump,conduit,pulse-conduit,plated-conduit,liquid-router,liquid-tank,liquid-junction,bridge-conduit,phase-conduit, power-node,power-node-large,surge-tower,diode,battery,battery-large,combustion-generator,thermal-generator,turbine-generator,differential-generator,rtg-generator,solar-panel,solar-panel-large,thorium-reactor,impact-reactor,vault,container,unloader,launch-pad,launch-pad-large, draug-factory,spirit-factory,phantom-factory,command-center,wraith-factory,ghoul-factory,revenant-factory,dagger-factory,crawler-factory,titan-factory,fortress-factory,repair-point,power-source,power-void,item-source,item-void,liquid-source,message,illuminator,dart-mech-pad, delta-mech-pad, tau-mech-pad, omega-mech-pad, javelin-ship-pad, trident-ship-pad, glaive-ship-pad,vault,container,unloader,launch-pad,launch-pad-large,graphite-press,multi-press,silicon-smelter,kiln,plastanium-compressor,phase-weaver,alloy-smelter,cryofluidmixer,blast-mixer,pyratite-mixer,melter,separator,spore-press,pulverizer,coal-centrifuge,incinerator,copper-wall,copper-wall-large,titanium-wall,titanium-wall-large,plastanium-wall,plastanium-wall-large,thorium-wall,thorium-wall-large,phase-wall,phase-wall-large,surge-wall,surge-wall-large,door,door-large,mender,mend-projector,overdrive-projector,force-projector,shock-mine]
 +
</code>
 +
 
 +
=== Color / Правило с ?! ===
 +
Для работы этого правила Вам надо указать в значении правила <code>lighting</code> <code>true</code><br>
 +
Допускаются значения с десятичными дробями. Не используйте значения больше единицы.<br>
 +
'''ВАЖНО:''' чтобы это работало должно быть включено правило '''lighting'''.
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Структура записи значений !! Описание
 +
|-
 +
| <code>ambientLight || <code>{r: 0.005, g: 0.0, b: 0.02, a: 0.8}</code> || <code>{r: значение, g: значение, b: значение, a: значение}<ref>Цвета в этом правиле указываются в цветовой модели [https://ru.wikipedia.org/wiki/RGB RGB]. <code>Red</code> — красный, <code>green</code> — зелёный, <code>blue</code> — синий.<code>a</code> — это густота тумана</ref> || Освещение на карте.
 +
|}
 +
 
 +
==== Пример использования ====
 +
{| class="wikitable"
 +
|-
 +
! Название !! Команда
 +
|-
 +
| <code>rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.8}</code> || Значение по умолчанию.
 +
|-
 +
| <code>rules add ambientLight {r: 0.9, g: 0.9, b: 0.9, a: 0.15}</code> || Туман.
 +
|-
 +
| <code>rules add ambientLight {r: 0.0, g: 0.0, b: 0.0, a: 1.0}</code> || Просто темнота.
 +
|-
 +
| <code>rules add ambientLight {r: 0.11, g: 0.01, b: 0.18, a: 0.95}</code> || Хэллоуин.
 +
|-
 +
| <code>rules add ambientLight {r: 0.0, g: 0.0, b: 0.0, a: 0.92}</code> || Полная ночь(без оттенка).
 +
|-
 +
| <code>rules add ambientLight {r: 0.01, g: 0.0, b: 0.05, a: 0.92}</code> || Полная ночь(с оттенком).
 +
|-
 +
| <code>rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.93}</code> || Сбалансированная ночь.
 +
|-
 +
| <code>rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.95}</code> || Тёмная ночь.
 +
|-
 +
| <code>rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.98} </code> || Очень тёмная ночь.
 +
|}
 +
 
 +
=== Team / Правила со строковым типом данных ===
 +
{| class="wikitable"
 +
|-
 +
! Название !! По умолчанию !! Структура записи значений !! Описание
 +
|-
 +
| <code>defaultTeam || 1 || <code>айди команды || Стандартная команда
 +
|-
 +
| <code>waveTeam || 2 || <code>айди команды || Команда волн
 +
|}
 +
ID должно быть в промежутке [0,32383].
 +
{| class="wikitable"
 +
|-
 +
! ID !! Цвет команды
 +
|-
 +
| 0 || gray (серые).
 +
|-
 +
| 1 || sharded (жёлтые)
 +
|-
 +
| 2 || crux (красные)
 +
|-
 +
| 3 || green (зелёные)
 +
|-
 +
| 4 || фиолетовые
 +
|-
 +
| 5 || blue (синие)
 +
|-
 +
| 6 || розовые
 +
|-
 +
| 7 || тёмно-синие
 +
|}
 +
 
 +
=== StringMap / ?! ===
 +
{| class="wikitable"
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
! Название !! По умолчанию !! Структура записи значений !! Описание
 
|-
 
|-
| <code> || Текст ячейки || Текст ячейки
+
| <code>tags || ?! || <code> ?! || ?!
 
|}
 
|}

Текущая версия на 00:34, 10 августа 2020

Пользовательские правила — это те правила, которые доступны в игре и для изменения на сервере.

Настройка правил на сервере

Чтобы добавить или удалить правило, используйте rule add правило и rule remove правило соответственно.
Для понимая что такое типы данных, Вы можете прочесть статью

Boolean / Логические правила

Эти правила имеют значения: true (да) и false (нет).

Название По умолчанию Описание
infiniteResources Бесконечные ресурсы у игроков (дает возможность строить источники ресурсов и повышает скорость строительства)
waveTimer true Таймер для волн
waves Есть ли волны иль нет
enemyCheat Бесконечные ресурсы у врагов (ИИ), с включенным правилом вражеским турелям не потребуются боеприпасы
pvp Режим пвп
unitDrops true Оставляют ли вражеские боевые единицы после смерти неподалеку от ядра ресурсы
reactorExplosions true Взрывы реакторов с нанесением большого урона
limitedRespawns false Ограничены ли появления игроков.
waitForWaveToEnd false Ждёт ли таймер для волн, пока враги будут уничтожены
attackMode false Режим атаки.
editor false Режим редактора. Всё замирает. Можно использовать для смены команд, но лучше JS
tutorial false Режим обучения. Практически бесполезно, т.к. багнутое.
lighting false Освещение.
drawDarkness true Эксперементальное в 6.0. Отрисовка теней.

Float / Правила с вещественными числовыми значениями

Правила со вещественными числовыми значениям, вписанное значение это множитель.

Название По умолчанию Описание
unitBuildSpeedMultiplier 1 Множитель скорости постройки боевых единиц.
unitHealthMultiplier 1 Множитель здоровья боевых единиц.
playerHealthMultiplier 1 Множитель здоровья игрока.
blockHealthMultiplier 1 Множитель здоровья построек.
playerDamageMultiplier 1 Множитель урона игрока.
unitDamageMultiplier 1 Множитель урона боевых единиц.
buildCostMultiplier 1 Множитель затрат на строительство.
buildSpeedMultiplier 1 Множитель скорости строительства.
deconstructRefundMultiplier 0.5 Множитель возврата ресурсов при разбирании постройки.
enemyCoreBuildRadius 400 Радиус, в котором нельзя строить относительно ядра
dropZoneRadius 300 Радиус зоны высадки врагов
respawnTime 60 * 4 Время респауна игрока (указывается в тиках)[1]
waveSpacing 60 * 60 * 2 Время между волнами (указывается в тиках[2])
bossWaveMultiplier 3 Множитель спауна волны с боссом
launchWaveMultiplier 2 Множител
solarPowerMultiplier -1 Множитель энерговыработки солнечных панелей.

Zone / ?!

Название Описание
zone Режим, при включении которого в игре разрешается отправка ресурсов с помощью стартовой площадки. Поднобности здесь.
Пример использования rules add zone groundZero

Array<SpawnGroup> / Правило с массивом данных

Для лёгкого редактирования просто зайдите в Редактор->Меню->Информация про карту->Настройки волн.
После настройки волн: Редактировать->Cкопировать в буфер обмена.

Название По умолчанию Структура массива Описание
spawns

Пример использования:
rule add spawns [{type:dagger,scaling:1},{type:crawler,begin:4,spacing:2,scaling:2},{type:titan,begin:14,spacing:2,scaling:2},{type:fortress,begin:24,spacing:2,scaling:5},{type:eruptor,begin:49,spacing:3,scaling:10},{type:chaos-array,begin:74,spacing:4,scaling:20},{type:eradicator,begin:99,spacing:5,effect:8},{type:wraith},{type:reaper}]

Int / Правило с целочисленным значением

Обратите внимание, что limitedRespawns должно быть истинным (true). Допускаются только целые числа.
Полное названия этого типа данных — Integer.

Название По умолчанию Описание
respawns 5 Количество возрождений игроков (всех) на одну волну.

Array<ItemStack> / Правило с массивом данных

Название По умолчанию Структура массива Описание
loadout [{item:руда,amount:1},{item:руда,amount:1}] Стартовые ресурсы
Пример использования. rules add loadout [{item:copper,amount:1},{item:lead,amount:1},{item:sand,amount:1},{item:titanium,amount:1},{item:thorium,amount:1},{item:plastanium,amount:1},{item:graphite,amount:1},{item:metaglass,amount:1},{item:silicon,amount:1},{item:phase-fabric,amount:1},{item:surge-alloy,amount:1}]

ObjectSet<Block> / Правило с ?!

Название По умолчанию Структура записи значений Описание
bannedBlocks [блок, блок] Блоки, которые нельзя использовать

Запрет всех блоков:
rules add bannedBlocks [duo, scatter, scorch, hail, arc, wave, lancer, swarmer, salvo, fuse, ripple, cyclone, spectre, ripple, meltdown,mechanical-drill,pneumatic-drill,laser-drill,blast-drill,water-extractor,cultivator,oil-extractor,conveyor,titanium-conveyor,armored-conveyor,junction,bridge-conveyor,phase-conveyor,sorter,inverted-sorter,router,distributor,overflow-gate,underflow-gate,mass-driver,mechanical-pump,rotary-pump,thermal-pump,conduit,pulse-conduit,plated-conduit,liquid-router,liquid-tank,liquid-junction,bridge-conduit,phase-conduit, power-node,power-node-large,surge-tower,diode,battery,battery-large,combustion-generator,thermal-generator,turbine-generator,differential-generator,rtg-generator,solar-panel,solar-panel-large,thorium-reactor,impact-reactor,vault,container,unloader,launch-pad,launch-pad-large, draug-factory,spirit-factory,phantom-factory,command-center,wraith-factory,ghoul-factory,revenant-factory,dagger-factory,crawler-factory,titan-factory,fortress-factory,repair-point,power-source,power-void,item-source,item-void,liquid-source,message,illuminator,dart-mech-pad, delta-mech-pad, tau-mech-pad, omega-mech-pad, javelin-ship-pad, trident-ship-pad, glaive-ship-pad,vault,container,unloader,launch-pad,launch-pad-large,graphite-press,multi-press,silicon-smelter,kiln,plastanium-compressor,phase-weaver,alloy-smelter,cryofluidmixer,blast-mixer,pyratite-mixer,melter,separator,spore-press,pulverizer,coal-centrifuge,incinerator,copper-wall,copper-wall-large,titanium-wall,titanium-wall-large,plastanium-wall,plastanium-wall-large,thorium-wall,thorium-wall-large,phase-wall,phase-wall-large,surge-wall,surge-wall-large,door,door-large,mender,mend-projector,overdrive-projector,force-projector,shock-mine]

Color / Правило с ?!

Для работы этого правила Вам надо указать в значении правила lighting true
Допускаются значения с десятичными дробями. Не используйте значения больше единицы.
ВАЖНО: чтобы это работало должно быть включено правило lighting.

Название По умолчанию Структура записи значений Описание
ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.8} {r: значение, g: значение, b: значение, a: значение}[3] Освещение на карте.

Пример использования

Название Команда
rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.8} Значение по умолчанию.
rules add ambientLight {r: 0.9, g: 0.9, b: 0.9, a: 0.15} Туман.
rules add ambientLight {r: 0.0, g: 0.0, b: 0.0, a: 1.0} Просто темнота.
rules add ambientLight {r: 0.11, g: 0.01, b: 0.18, a: 0.95} Хэллоуин.
rules add ambientLight {r: 0.0, g: 0.0, b: 0.0, a: 0.92} Полная ночь(без оттенка).
rules add ambientLight {r: 0.01, g: 0.0, b: 0.05, a: 0.92} Полная ночь(с оттенком).
rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.93} Сбалансированная ночь.
rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.95} Тёмная ночь.
rules add ambientLight {r: 0.005, g: 0.0, b: 0.02, a: 0.98} Очень тёмная ночь.

Team / Правила со строковым типом данных

Название По умолчанию Структура записи значений Описание
defaultTeam 1 айди команды Стандартная команда
waveTeam 2 айди команды Команда волн

ID должно быть в промежутке [0,32383].

ID Цвет команды
0 gray (серые).
1 sharded (жёлтые)
2 crux (красные)
3 green (зелёные)
4 фиолетовые
5 blue (синие)
6 розовые
7 тёмно-синие

StringMap / ?!

Название По умолчанию Структура записи значений Описание
tags ?!  ?! ?!
  1. 60 тиков это, примерно, 1 секунда.
  2. 60 тиков это, примерно, 1 секунда.
  3. Цвета в этом правиле указываются в цветовой модели RGB. Red — красный, green — зелёный, blue — синий.a — это густота тумана