Перейти к содержимому

Кастомные предметы

Кастомные предметы - это определяемые на уровне настроек конкретного сервера предметы, наборы или команды. С помощью них можно добавить на сервер любой предмет, присутствующий в моде или специализированную команду. С помощью кастомных предметов в магазине можно добавить уникальные товары, характерные для вашего хостинга или предметы с модов.

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

! Если кастомный предмет не сработал (например поврежден конфиг-файл), то будет выдан предмет, прописанный в панели магазина

! Название кастомного предмета должно на 100% совпадать с названием соответствующего ему товара в панели магазина

! При работе с кастомными предметами убедитесь, что в конфиг-файле включена настройка customGoods

Кастомные предметы прописываются в JSON-файле custom.json (или прямо в config.json, в соответствующем методе):

{ “Металлический слиток”: { “type”: “item”, “stackSize”: 200, “count”: 400, “quality”: 1, “blueprint”: “Blueprint’/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_MetalIngot.PrimalItemResource_MetalIngot’” }, “Чертёж ТЕК-винтовки”: { “type”: “blueprint”, “quality”: 10, “blueprint”: “Blueprint’/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_TekRifle.PrimalItem_TekRifle’” } }

В данном примере определено 2 предмета - "Металлический слиток" и "Чертёж ТЕК-винтовки".
## Виды предметов
| Предмет | Пример конфигурации |
| --- | --- |
| **Прокачка персонажа или дино**
Выдает опыт выжившему или (если сидит верхом) - дино.
|
```bash
"Прокачка персонажа или дино": {
"type": "experience",
"amount": 1000000000
}
  • amount - количество выдаваемого опыта

| | Товар-услуга

Любая услуга, на которую нет автоматической команды. Реализуется через отправку сообщения в специальный чат админу.

|

Окно терминала
"Вытащить забаганного дино": {
"type": "message",
"webHook": "hook1",
"webHookMessage": "Сервер %serverInfo%, %playerInfo% попросил вытащить забаганного дино.",
"message": "Сообщение отправлено администратору, ожидайте. Если вдруг администратор не пришел - напишите в чат-группу сервера"
}
  • webHook - название вебхука
  • webHookMessage - сообщение для администратора. Поддерживаются слова-заменители:
    • %serverInfo% - название сервера
    • %playerInfo% - steamId, steam-ник, имя выжившего и трайб игрока
    • %characterName% - имя выжившего
    • %steamName% - steam-ник
    • %tribeName% - трайб
    • %steamId% - steam-ID
    • %title% - название товара
  • message - сообщение для игрока (в игровой чат)

| | Summon-команда

Аналогично admincheat summon.

|

Окно терминала
"Белый луч": {
"type": "summon",
"className": "SupplyCrate_Level03_C"
}
  • className - класс вызываемого предмета, см. [1]

| | Предмет

Выдача предмета.

|

Окно терминала
"Металлический слиток": {
"type": "item",
"stackSize": 200,
"count": 400,
"quality": 1,
"blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_MetalIngot.PrimalItemResource_MetalIngot'",
"mods": { }
}
  • stackSize - размер стака, по умолчанию 1
  • count - сколько предметов выдать (обязательный параметр)
  • quality - качество (если предмет его поддерживает)
  • blueprint - блюпринт предмета (обязательный параметр)
  • mods - модификации предмета (необязательно). Представляет собой объект, в котором каждый ключ устанавливает модификацию.
    • quality - установить качество
    • armor - установить броню
    • durability - установить прочность
    • damage - установить урон
    • coldResist - установить защиту от холода
    • warmResist - установить защиту от жары
    • qualityAdd - добавить к текущему качеству
    • armorAdd - добавить к текущей броне
    • durabilityAdd - добавить к прочности
    • damageAdd - добавить к урону
    • coldResistAdd - добавить к защите от холода
    • warmResistAdd - добавить к защите от жары
    • qualityMul - умножить качество
    • armorMul - умножить броню
    • durabilityMul - умножить умножить прочность
    • damageMul - умножить урон
    • coldResistMul - умножить защиту от холода
    • warmResistMul - умножить защиту от жары

В качестве значения модификаторов используется объект { “value” : значение }, либо { “min”: мин, “max”: макс }, которые позволяют, соответственно, установить фиксированное значение или выбрать диапазон.

Пример модификатора 2-3 на качество + x2 на броню:

Окно терминала
"mods": {
"quality": { "min": 2, "max": 3 },
"armorMul": { "value": 2 }
}

| | Чертеж

Выдача чертежа предмета.

|

Окно терминала
"Чертёж ТЕК-винтовки": {
"type": "blueprint",
"quality": 10,
"blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_TekRifle.PrimalItem_TekRifle'"
}
  • quality - качество чертежа
  • blueprint - блюпринт предмета (обязательный параметр)

| | Энграмма

Выдача чертежа предмета.

|

Окно терминала
"Энграмма ТЕК-винтовки": {
"type": "engram",
"blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_TekRifle.PrimalItem_TekRifle'"
}
  • blueprint - блюпринт предмета (обязательный параметр)

| | Динозавр

Выдача существа.

|

Окно терминала
"Тек-раптор: {
"type": "dino",
"level": 400,
"neutered": true,
"gender": 1,
"imprint": true,
"experience": 5000,
"age": 1.0,
"wild": false,
"blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/BionicRaptor_Character_BP.BionicRaptor_Character_BP'",
"dcMinutes": 0,
"dcHours": 2,
"dcDays": 0,
"dcInfinite": false,
"mods": { }
}
Окно терминала
"Раптор 80лвл селекция (здоровье)": {
"type": "dino",
"level": 80,
"statPriority": "Health=10",
"blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'",
"mods": { }
}
Окно терминала
"Раптор 80лвл улучшенная селекция (здоровье++, выносливость+)": {
"type": "dino",
"level": 80,
"statRounds": 1500,
"statPriority": "Health=10,Stamina=5",
"blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'",
"mods": { }
}
Окно терминала
"Тек-страйдер с харвестером и пушкой (доступен с версии 3.3)": {
"type": "dino",
"level": 100,
"neutered": true,
"gender": 1,
"imprint": true,
"experience": 5000,
"age": 1.0,
"wild": false,
"blueprint": "Blueprint'/Game/Genesis2/Dinos/TekStrider/TekStrider_Character_BP.TekStrider_Character_BP'",
"striderHead": 0,
"striderChest": 2
}
Окно терминала
"Гача с кастомными ресурсами": {
"type": "dino",
"level": 100,
"neutered": true,
"gender": 1,
"imprint": true,
"experience": 5000,
"age": 1.0,
"wild": false,
"blueprint": "Blueprint'/Game/Extinction/Dinos/Gacha/Gacha_Character_BP.Gacha_Character_BP'",
"gachaResources": {
"Blueprint'/Game/Extinction/CoreBlueprints/Resources/PrimalItemResource_ElementDust.PrimalItemResource_ElementDust'": 60,
"Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_Silicon.PrimalItemResource_Silicon'": 20,
"Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_Crystal.PrimalItemResource_Crystal'": 20,
"Blueprint'/Game/Extinction/CoreBlueprints/Resources/PrimalItemResource_CorruptedWood.PrimalItemResource_CorruptedWood'": 40,
"Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_Thatch.PrimalItemResource_Thatch'": 40,
"Blueprint'/Game/ScorchedEarth/CoreBlueprints/Resources/PrimalItemResource_RawSalt.PrimalItemResource_RawSalt'": 40
}
}
  • level - уровень выдаваемого существа, обязательный параметр
  • neutered - кастрирован или нет (если не указан - то в соответствии с настройками плагина)
  • gender - пол, 1 - М, 2 - Ж
  • imprint - привязать существо (да или нет)
  • experience - стартовый опыт
  • age - возраст (от 0 до 1), 0 выдаст детеныша, 1 - взрослая особь
  • wild - заспавнить дикого
  • blueprint - блюпринт динозавра (обязательный параметр)
  • statRounds - количество раундов селекции, по умолчанию 50, максимальное значение 4096. Количество особей в селекции.
  • statPriority - приоритет характеристик для селекции (весовые коэфициенты, обозначающие важность характеристики), строка вида “хар1=значение1,хар2=значение2”. Все характеристики:
    • Health - здоровье
    • Stamina - выносливость
    • Oxygen - кислород
    • Food - еда
    • Water - вода
    • Weight - вес
    • MeleeDamageMultiplier - урон
    • SpeedMultiplier - скорость
    • TemperatureFortitude - температурная стойкость
    • CraftingSpeedMultiplier - скорость крафта
  • Право покраски только что выданного дино (команда /красить или /sdc):
    • dcMinutes - на сколько минут
    • dcHours - на сколько часов
    • dcDays - на сколько дней
    • dcInfinite - бессрочно (true/false)
  • mods - модификации динозавра (необязательно). Представляет собой объект, в котором каждый ключ устанавливает модификацию.
    • health - установить % от стандартных очков здоровья
    • stamina - установить % от стандартных очков выносливости
    • torpidity - установить % от стандартных очков торпора
    • oxygen - установить % от стандартных очков кислорода
    • food - установить % от стандартных очков еды
    • water - установить % от стандартных очков воды
    • weight - установить % от стандартных очков веса
    • melee - установить % от стандартных очков урона
    • speed - установить % от стандартных очков скорости
    • fortitude - установить % от стандартных очков стойкости
    • crafting - установить % от стандартных очков крафтинга
    • healthAdd - добавить % от стандартных очков здоровья
    • staminaAdd - добавить % от стандартных очков выносливости
    • torpidityAdd - добавить % от стандартных очков торпора
    • oxygenAdd - добавить % от стандартных очков кислорода
    • foodAdd - добавить % от стандартных очков еды
    • waterAdd - добавить % от стандартных очков воды
    • weightAdd - добавить % от стандартных очков веса
    • meleeAdd - добавить % от стандартных очков урона
    • speedAdd - добавить % от стандартных очков скорости
    • fortitudeAdd - добавить % от стандартных очков стойкости
    • craftingAdd - добавить % от стандартных очков крафтинга
    • healthMul - умножить очки здоровья
    • staminaMul - умножить очки выносливости
    • torpidityMul - умножить очки торпора
    • oxygenMul - умножить очки кислорода
    • foodMul - умножить очки еды
    • waterMul - умножить очки воды
    • weightMul - умножить очки веса
    • meleeMul - умножить очки урона
    • speedMul - умножить очки скорости
    • fortitudeMul - умножить очки стойкости
    • craftingMul - умножить очки крафтинга
    • healthPoints - установить очки здоровья
    • staminaPoints - установить очки выносливости
    • torpidityPoints - установить очки торпора
    • oxygenPoints - установить очки кислорода
    • foodPoints - установить очки еды
    • waterPoints - установить очки воды
    • weightPoints - установить очки веса
    • meleePoints - установить очки урона
    • speedPoints - установить очки скорости
    • fortitudePoints - установить очки стойкости
    • craftingPoints - установить очки крафтинга
    • healthPointsAdd - добавить очки здоровья
    • staminaPointsAdd - добавить очки выносливости
    • torpidityPointsAdd - добавить очки торпора
    • oxygenPointsAdd - добавить очки кислорода
    • foodPointsAdd - добавить очки еды
    • waterPointsAdd - добавить очки воды
    • weightPointsAdd - добавить очки веса
    • meleePointsAdd - добавить очки урона
    • speedPointsAdd - добавить очки скорости
    • fortitudePointsAdd - добавить очки стойкости
    • craftingPointsAdd - добавить очки крафтинга
  • striderHead - установить голову страйдера (-1 random, 0 harvester, 1 silence cannon, 2 machine gun, 3 radar) - доступно с версии 3.3
  • striderChest - установить тело страйдера (-1 random, 0 shield, 1 onesided shield, 2 cannon, 3 saddlebags) - доступно с версии 3.3
  • gachaResources - установить ресурсы Гачи (объект с ключами “блюпринт - количество”) - доступно с версии 3.3
  • modBalanceStats (true/false) - используется совместно с mods. Пытается сбаллансировать дино после корректировки. Балансировка заключается в приведении общей суммы характеристик к “природному” знаменателю, который имеет вид “уровень дино - 1”. Если в результате изменения характеристик произошло увеличение одной из них - то все остальные характеристики будут уменьшены на соответствующее число (если есть такая возможность - характеристика не может быть меньше 0). И наоборот. В качестве значения модификаторов используется объект { “value” : значение }, либо { “min”: мин, “max”: макс }, которые позволяют, соответственно, установить фиксированное значение или выбрать диапазон.

Пример модификатора 2-3 на качество + x2 на броню:

Окно терминала
"mods": {
"healthPoints": { "min": 30, "max": 50 },
"meleePoints": { "value": 25 }
}

! Обязателен только уровень и блюпринт, остальные параметры можно не указывать - тогда у них будет значение по умолчанию

! Селекции поддаются только характеристики, доступные для рандомизации/прокачки у выбранного дино. Увеличение количества раундов селекции улучшают выборку селекции, но повышает нагрузку на сервер в момент выдачи.

| | Динозавр + прокачка + седло

Выдача существа с седлом + прокачка по опыту по выбранным характеристикам.

|

Окно терминала
"Раптор 140лвл (здоровье +30, урон +20, вес +10)": {
"type": "spawnsetupdino",
"blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'",
"baseLevel": 80,
"statLevel": "Health=30,MeleeDamageMultiplier=20,Weight=10",
"saddleBlueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Items/Armor/Saddles/PrimalItemArmor_RaptorSaddle.PrimalItemArmor_RaptorSaddle'",
"saddleQuality": 2.0
}
  • blueprint - чертеж дино
  • baseLevel - базовый уровень выдаваемого существа (со случайными статами)
  • statLevel - уровни, выдаваемые на конкретные характеристики, строка вида “хар1=значение1,хар2=значение2”. Все характеристики:
    • Health - здоровье
    • Stamina - выносливость
    • Oxygen - кислород
    • Food - еда
    • Water - вода
    • Weight - вес
    • MeleeDamageMultiplier - урон
    • SpeedMultiplier - скорость
    • TemperatureFortitude - температурная стойкость
    • CraftingSpeedMultiplier - скорость крафта
  • saddleBlueprint - чертеж седла
  • saddleQuality - качество седла

! Этот тип товара есть только в ARK: Survival Evolved

! Все параметры обязательны, и у этого типа товара нет выбора пола/возраста/покраски и т.д.

! Начисляемые через statLevel уровни можно потом перераспределять через респециализацию дино

! Прокачке поддаются только характеристики, доступные для прокачки у выбранного дино

! Если нужно выдать дино с приоритетными характеристиками для разведения, то следует использовать параметр statPriority товара dino

| | Набор предметов

Выдача набора из нескольких предметов. Можно комбинировать предметы разного типа. Количество предметов в наборе не ограничено.

|

Окно терминала
"ТЕК-винтовка с 2x уроном + энграмма для использования": {
"type": "pack",
"items": [
{
"type": "engram",
"blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_TekRifle.PrimalItem_TekRifle'"
},
{
"type": "item",
"count": 1,
"quality": 3,
"blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_TekRifle.PrimalItem_TekRifle'",
"mods": { "damageMul": { "value": 2 } }
}
],
"message": "Сообщение для товара-услуги"
}

! Если в наборе есть товары-услуги, то атрибут “message” (сообщение игроку в чат) у них работать не будет. Вместо этого, надо поставить “message” у самого товара-набора, как на примере выше

| | Право покраски дино

Выдача права на покраску любого дружественного дино на этом сервере

|

Окно терминала
"Право покраски дино": {
"type": "dinocolor",
"minutes": 0,
"hours": 0,
"days": 3,
"infinite": false
}
  • minutes - на сколько минут
  • hours - на сколько часов
  • days - на сколько дней
  • infinite - бессрочно (true/false)

| | Респециализация дино

Выдача права на вызов команды сброса и перераспределение прокачки любого дружественного дино на этом сервере, на которого нацелен прицел.

|

После получения права, становится возможным использование команды /respec или !респец.

Окно терминала
"Респециализация дино": {
"type": "dinorespec",
"times": 1
}
  • times - сколько раз можно применить

| | Вырастить дино

Выдача права на вызов команды роста (мгновенно выращивает дино) для любого дружественного дино на этом сервере, на которого нацелен прицел.

|

После получения права, становится возможным использование команды /grow или !рост, а также /printdino.

Окно терминала
"Рост дино": {
"type": "dinogrow",
"times": 1
}
  • times - сколько раз можно применить

! Чтобы “нацелиться” на baby-дино, надо смотреть чуть выше его “маленького” размера

| | Привязать дино

Выдача права на вызов команды привязки дино (делает привязку выбранного дино к игроку) для любого дружественного дино на этом сервере, на которого нацелен прицел.

|

После получения права, становится возможным использование команды /imprint или !привязать.

Окно терминала
"Привязка дино": {
"type": "dinoimprint",
"times": 1
}
  • times - сколько раз можно применить

! Чтобы “нацелиться” на baby-дино, надо смотреть чуть выше его “маленького” размера

! Доступно начиная с версии 3.3 плагина

| | Приручить дино

Выдача права на вызов команды приручения дино (делает приручение выбранного дино к игроку) для любого дикого дино на этом сервере, на которого нацелен прицел.

|

После получения права, становится возможным использование команды /tame или !приручить.

Окно терминала
"Приручение дино": {
"type": "dinotame",
"times": 1
}
  • times - сколько раз можно применить

! Доступно начиная с версии 3.3 плагина

| | Пермишены

Интеграция с плагином Ark Permissions. Добавить или удалить игрока из группы.

|

Окно терминала
"Добавление в группу Premium": {
"type": "permissions",
"do": "add",
"group": "Premium"
},
"Добавление в группу Premium на 3 дня": {
"type": "permissions",
"do": "add",
"group": "Premium",
"minutes": 0,
"hours": 0,
"days": 3,
"endMessage": "Время Премиум истекло"
}
  • do - действие (add или remove)
  • group - название группы
  • minutes - на сколько минут
  • hours - на сколько часов
  • days - на сколько дней
  • endMessage - это сообщение будет отображено игроку по окончанию времени

! если игрок оффлайн - то endMessage будет ему отображено при следующем появлении на сервере

! Перед тем как использовать этот тип товара, не забудьте добавить все необходимые группы на сервер

| | PlayerCommand

Запуск игровой команды. Поддерживается с версии 2.8.

|

Окно терминала
"Вознесение Бета": {
"type": "playercommand",
"command": "Ascend2"
},
"Роквелл-Вознесение Альфа (Aberration)": {
"type": "playercommand",
"command": "AbAscend3"
}
  • command - текст команды, типичные значения для Ark:
    • Ascend1, Ascend2, Ascend3 - вознесения Tek Cave
    • AbAscend1, AbAscend2, AbAscend3 - вознесения Абберации
    • EXTAscend1, EXTAscend2, EXTAscend3 - вознесения Extinction
    • Genascend1, Genascend2 - вознесения Genesis (команды Genascend3 для альфа вознесения не существует)

! Выдача вознесения даст игроку одноименную ачивку в Steam и запустит показ заключительных титров

| | Cheat

Запуск консольной команды. Поддерживается с версии 2.85b.

|

Окно терминала
"Вылупление яйца": {
"type": "cheat",
"command": "HatchEgg"
},
"Прохождение миссии Генезис": {
"type": "cheat",
"command": "forcecompleteactivemission 0"
},
"Гигантозавр 50 очков в урон (самец) (плагин woolydino)": {
"type": "cheat",
"command": "woolydino %steamId% Blueprint'/Game/PrimalEarth/Dinos/Giganotosaurus/Gigant_Character_BP.Gigant_Character_BP' 225 0.0 0 1 35 35 20 30 35 50 19 0"
}
  • command - текст команды, поддерживаются подстановочные переменные:
    • %characterName% - ник игрока
    • %steamName% - имя игрока в Steam/EGS
    • %tribeName% - имя трайба
    • %steamId% - ID игрока в Steam/EGS
    • %playerId% - внутри-игровой номер персонажа (печатается на импланте)

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

| | Шестигранники

Добавление внутриигровой валюты DLC Genesos

|

Окно терминала
"1000000 Шестигранников": {
"type": "hexagons",
"count": 1000000
}
  • count - сколько выдать

|