Ark:Донат-Магазин/Кастомные предметы: различия между версиями
VorteX (обсуждение | вклад) м |
Swidh (обсуждение | вклад) м |
||
(не показано 5 промежуточных версий 2 участников) | |||
Строка 8: | Строка 8: | ||
{{important|Название кастомного предмета должно на 100% совпадать с названием соответствующего ему товара в панели магазина}} | {{important|Название кастомного предмета должно на 100% совпадать с названием соответствующего ему товара в панели магазина}} | ||
{{important|При работе с кастомными предметами убедитесь, что в [[Ark:Донат-Магазин/Конфиг-файл|конфиг-файле]] включена настройка '''customGoods''' }} | |||
Кастомные предметы прописываются в '''JSON-файле [[Ark:Донат-Магазин/Пример_custom.json_(все_виды_товаров)|custom.json]]''' (или прямо в [[Ark:Донат-Магазин/Пример_config.json|config.json]], в соответствующем методе): | Кастомные предметы прописываются в '''JSON-файле [[Ark:Донат-Магазин/Пример_custom.json_(все_виды_товаров)|custom.json]]''' (или прямо в [[Ark:Донат-Магазин/Пример_config.json|config.json]], в соответствующем методе): | ||
Строка 114: | Строка 116: | ||
"mods": { | "mods": { | ||
"quality": { "min": | "quality": { "min": 2, "max": 3 }, | ||
"armorMul": { "value": 2 } | "armorMul": { "value": 2 } | ||
} | } | ||
Строка 155: | Строка 157: | ||
"dcHours": 2, | "dcHours": 2, | ||
"dcDays": 0, | "dcDays": 0, | ||
"dcInfinite": false | "dcInfinite": false, | ||
"mods": { } | |||
} | } | ||
Строка 162: | Строка 165: | ||
"level": 80, | "level": 80, | ||
"statPriority": "Health=10", | "statPriority": "Health=10", | ||
"blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'" | "blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'", | ||
"mods": { } | |||
} | } | ||
Строка 170: | Строка 174: | ||
"statRounds": 1500, | "statRounds": 1500, | ||
"statPriority": "Health=10,Stamina=5", | "statPriority": "Health=10,Stamina=5", | ||
"blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'" | "blueprint": "Blueprint'/Game/PrimalEarth/Dinos/Raptor/Raptor_Character_BP.Raptor_Character_BP'", | ||
"mods": { } | |||
} | } | ||
Строка 198: | Строка 203: | ||
** dcDays - на сколько дней | ** dcDays - на сколько дней | ||
** dcInfinite - бессрочно (true/false) | ** 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 - добавить очки крафтинга | |||
* modBalanceStats (true/false) - используется совместно с mods. Пытается сбаллансировать дино после корректировки. Балансировка заключается в приведении общей суммы характеристик к "природному" знаменателю, который имеет вид "уровень дино - 1". Если в результате изменения характеристик произошло увеличение одной из них - то все остальные характеристики будут уменьшены на соответствующее число (если есть такая возможность - характеристика не может быть меньше 0). И наоборот. | |||
В качестве значения модификаторов используется объект { "value" : значение }, либо { "min": мин, "max": макс }, которые позволяют, соответственно, установить фиксированное значение или выбрать диапазон. | |||
Пример модификатора 2-3 на качество + x2 на броню: | |||
"mods": { | |||
"healthPoints": { "min": 30, "max": 50 }, | |||
"meleePoints": { "value": 25 } | |||
} | |||
{{important|Обязателен только уровень и блюпринт, остальные параметры можно не указывать - тогда у них будет значение по умолчанию}} | {{important|Обязателен только уровень и блюпринт, остальные параметры можно не указывать - тогда у них будет значение по умолчанию}} | ||
{{tip|Селекции поддаются только характеристики, доступные для рандомизации/прокачки у выбранного дино. Увеличение количества раундов селекции улучшают выборку селекции, но повышает нагрузку на сервер в момент выдачи.}} | {{tip|Селекции поддаются только характеристики, доступные для рандомизации/прокачки у выбранного дино. Увеличение количества раундов селекции улучшают выборку селекции, но повышает нагрузку на сервер в момент выдачи.}} | ||
Строка 344: | Строка 415: | ||
"Прохождение миссии Генезис": { | "Прохождение миссии Генезис": { | ||
"type": "cheat", | "type": "cheat", | ||
"command": " | "command": "forcecompleteactivemission 0" | ||
}, | }, | ||
"Гигантозавр 50 очков в урон (самец) (плагин woolydino)": { | "Гигантозавр 50 очков в урон (самец) (плагин woolydino)": { |
Текущая версия на 21:23, 12 ноября 2024
Кастомные предметы
<< Ark:Донат-Магазин
| К концу статьи | Предыдущая глава: Система быстрой кастомизация товаров (Аффиксы) | Короткая ссылка
Кастомные предметы - это определяемые на уровне настроек конкретного сервера предметы, наборы или команды. С помощью них можно добавить на сервер любой предмет, присутствующий в моде или специализированную команду. С помощью кастомных предметов в магазине можно добавить уникальные товары, характерные для вашего хостинга или предметы с модов.
Каждый кастомный предмет должен иметь уникальное название, по которому он будет связан с товаром в панели магазина. При этом содержимое товара, которое нужно ввести в панели, не имеет особого значения - оно может быть любым (например стак соломы). При получении товара на сервере оно будет автоматически заменено командами, которые вы прописали для кастомного предмета.
Кастомные предметы прописываются в 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 предмета - "Металлический слиток" и "Чертёж ТЕК-винтовки".
Виды предметов
Предмет | Пример конфигурации |
---|---|
Прокачка персонажа или дино
Выдает опыт выжившему или (если сидит верхом) - дино. |
"Прокачка персонажа или дино": { "type": "experience", "amount": 1000000000 }
|
Товар-услуга
Любая услуга, на которую нет автоматической команды. Реализуется через отправку сообщения в специальный чат админу. |
"Вытащить забаганного дино": { "type": "message", "webHook": "hook1", "webHookMessage": "Сервер %serverInfo%, %playerInfo% попросил вытащить забаганного дино.", "message": "Сообщение отправлено администратору, ожидайте. Если вдруг администратор не пришел - напишите в чат-группу сервера" }
|
Summon-команда
Аналогично admincheat summon. |
"Белый луч": { "type": "summon", "className": "SupplyCrate_Level03_C" }
|
Предмет
Выдача предмета. |
"Металлический слиток": { "type": "item", "stackSize": 200, "count": 400, "quality": 1, "blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Resources/PrimalItemResource_MetalIngot.PrimalItemResource_MetalIngot'", "mods": { } }
В качестве значения модификаторов используется объект { "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'" }
|
Энграмма
Выдача чертежа предмета. |
"Энграмма ТЕК-винтовки": { "type": "engram", "blueprint": "Blueprint'/Game/PrimalEarth/CoreBlueprints/Weapons/PrimalItem_TekRifle.PrimalItem_TekRifle'" }
|
Динозавр
Выдача существа. |
"Тек-раптор: { "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": { } }
В качестве значения модификаторов используется объект { "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 }
Этот тип товара есть только в 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 }
|
Респециализация дино
Выдача права на вызов команды сброса и перераспределение прокачки любого дружественного дино на этом сервере, на которого нацелен прицел. |
"Респециализация дино": { "type": "dinorespec", "times": 1 }
|
Вырастить дино
Выдача права на вызов команды роста (мгновенно выращивает дино) для любого дружественного дино на этом сервере, на которого нацелен прицел. |
"Рост дино": { "type": "dinogrow", "times": 1 }
Чтобы "нацелиться" на baby-дино, надо смотреть чуть выше его "маленького" размера
|
Пермишены
Интеграция с плагином Ark Permissions. Добавить или удалить игрока из группы. |
"Добавление в группу Premium": { "type": "permissions", "do": "add", "group": "Premium" }, "Добавление в группу Premium на 3 дня": { "type": "permissions", "do": "add", "group": "Premium", "minutes": 0, "hours": 0, "days": 3, "endMessage": "Время Премиум истекло" }
если игрок оффлайн - то endMessage будет ему отображено при следующем появлении на сервере
Перед тем как использовать этот тип товара, не забудьте добавить все необходимые группы на сервер
|
PlayerCommand
Запуск игровой команды. Поддерживается с версии 2.8. |
"Вознесение Бета": { "type": "playercommand", "command": "Ascend2" }, "Роквелл-Вознесение Альфа (Aberration)": { "type": "playercommand", "command": "AbAscend3" }
Выдача вознесения даст игроку одноименную ачивку в 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" }
Консольные команды не возвращают значения, поэтому плагин магазина не может проконтролировать успешность их исполнения. Используйте их на свой страх и риск, обязательно тестируйте товары с это командой!
|
Шестигранники
Добавление внутриигровой валюты DLC Genesos |
"1000000 Шестигранников": { "type": "hexagons", "count": 1000000 }
|
Примеры
Ссылки
Далее: Вебхуки