Модификации:Монстры: различия между версиями

Материал из Stardew Valley Wiki
Перейти к навигации Перейти к поиску
Строка 1: Строка 1:
 
←[[Модификации:Индекс|Индекс]]
 
←[[Модификации:Индекс|Индекс]]
{{Переведите}}
+
 
 
На этой странице объясняется, как игра хранит и анализирует данные о монстрах. Это расширенное руководство для разработчиков модов.
 
На этой странице объясняется, как игра хранит и анализирует данные о монстрах. Это расширенное руководство для разработчиков модов.
  

Версия 06:55, 16 сентября 2021

Индекс

На этой странице объясняется, как игра хранит и анализирует данные о монстрах. Это расширенное руководство для разработчиков модов.

Источник

Данные монстра хранятся в Content\Data\Monsters.xnb, могут быть извлечены для редактирования. Вот исходные данные по состоянию на 1.5.1 для примера:

Данные 
{
  "Green Slime": "24/5/0/0/false/1000/766 .75 766 .05 153 .1 66 .015 92 .15 96 .005 99 .001/1/.01/4/2/.00/true/3/Green Slime",
  "Dust Spirit": "40/6/0/0/false/1000/382 .5 433 .01 336 .001 84 .02 414 .02 97 .005 99 .001/2/.00/4/3/.00/true/2/Dust Spirit",
  "Bat": "24/6/0/0/true/1000/767 .9 767 .4 108 .001 287 .02 96 .005 99 .001/1/.01/4/3/.00/true/3/Bat",
  "Frost Bat": "36/7/0/0/true/1000/767 .9 767 .55 108 .001 287 .02 97 .005 99 .001/1/.01/4/3/.00/true/7/Frost Bat",
  "Lava Bat": "80/15/0/0/true/1000/767 .9 767 .7 108 .001 287 .02 98 .005 99 .001/1/.01/4/3/.00/true/15/Lava Bat",
  "Iridium Bat": "300/30/0/0/true/1000/386 .9 386 .5 386 .25 386 .1 288 .05 768 .5 773 .05 349 .05 787 .05 337 .008/1/.01/4/3/.00/true/22/Iridium Bat",
  "Stone Golem": "45/5/0/0/false/1000/390 .9 80 .1 382 .1 380 .1 96 .005 99 .001/5/.01/3/2/.00/true/5/Stone Golem",
  "Wilderness Golem": "30/5/0/0/false/1000/771 .9 771 .5 770 .5 382 .1 86 .005 72 .001/1/.01/3/2/.00/true/5/Wilderness Golem",
  "Grub": "20/4/0/0/false/1000/684 .6 273 .05 273 .05 157 .02 114 .005 96 .005 99 .001/0/.005/3/1/.00/true/2/Grub",
  "Fly": "22/6/0/0/true/1000/684 .9 157 .02 114 .005 96 .005 99 .001/1/.005/13/2/.0/true/10/Fly",
  "Frost Jelly": "106/7/0/0/false/1000/766 .75 412 .08 70 .02 98 .015 92 .5 97 .005 99 .001/0/.01/4/2/.0/true/6/Frost Jelly",
  "Sludge": "205/16/0/0/false/1000/766 .8 157 .1 -4 .1 72 .01 92 .5 98 .005 99 .001/0/.01/4/2/.0/true/10/Sludge",
  "Shadow Guy": "125/20/0/0/false/0/769 .75 769 .1 329 .02 337 .002 336 .01 335 .02 334 .04 203 .04 293 .03 108 .003 -4 .1 98 .005 99 .001/2/.01/-1/2/.0/true/15/Shadow Guy",
  "Ghost": "96/10/0/3/false/0/768 .95 768 .1 156 .08 338 .08 -6 .2 97 .005 99 .001/3/.01/12/4/.0/true/15/Ghost",
  "Carbon Ghost": "190/25/0/3/false/0/749 .99 338 .1/3/.01/12/4/.0/true/20/Carbon Ghost",
  "Duggy": "40/6/0/0/false/0/286 .25 535 .25 280 .03 105 .02 86 .1 72 .01 96 .005 99 .001/0/.01/1/2/.0/true/10/Duggy",
  "Rock Crab": "30/5/0/0/false/0/717 .15 286 .4 96 .005 99 .001/1/0/1/2/.0/true/4/Rock Crab",
  "Lava Crab": "120/15/0/0/false/0/717 .25 287 .4 98 .005 99 .001/3/0/1/3/.0/true/12/Lava Crab",
  "Iridium Crab": "240/15/0/0/false/0/732 .5 386 .5 386 .5 386 .5/3/0/1/3/.0/true/20/Iridium Crab",
  "Fireball": "1/18/0/0/true/0/72 .0000001/0/0/-1/3/.00/false/0/Fireball",
  "Squid Kid": "1/18/0/0/true/0/768 .75 814 .2 336 .05 287 .1 288 .05 98 .005 99 .001/2/0/6/3/.0/true/15/Squid Kid",
  "Skeleton Warrior": "300/12/1/3/false/0/769 .25 105 .03 106 .03 166 .001 60 .04 232 .04 72 .03 74 .01 97 .005 99 .001/3/0/5/2/.0/true/15/Skeleton Warrior",
  "Crow": "1/0/0/1/false/0/-4 .9/3/0/5/2/.0/false/1/Crow",
  "Frog": "1/0/0/1/false/0/-4 .9/3/0/5/2/.0/false/1/Frog",
  "Cat": "300/0/0/0/false/0/-6 .001/3/0/6/2/.0/false/0/Cat",
  "Shadow Brute": "160/18/0/0/false/0/769 .75 769 .1 337 .002 336 .01 335 .02 334 .04 203 .04 108 .003 -4 .1 98 .005 99 .001 74 .0005/2/.01/8/3/.0/true/15/Shadow Brute",
  "Shadow Shaman": "80/17/0/0/false/0/769 .75 769 .2 337 .002 336 .01 335 .02 334 .04 108 .003 -4 .1 98 .005 99 .001 74 .0005/2/.01/8/3/.0/true/15/Shadow Shaman",
  "Skeleton": "140/10/0/2/false/2000/881 .5 881 .4 881 .2 579 .005/1/.01/8/2/.0/true/8/Skeleton",
  "Skeleton Mage": "60/5/0/2/false/2000/80 0/1/.01/8/2/.0/true/8/Skeleton Mage",
  "Metal Head": "40/15/0/0/false/2000/768 .65 378 .1 378 .1 380 .1 380 .1 382 .1 98 .005 99 .001/8/.01/8/2/.0/true/6/Metal Head",
  "Spiker": "5/15/0/0/false/2000/378 .1 378 .1 380 .1 380 .1 382 .1/4/.01/8/2/.0/true/1/Spiker",
  "Bug": "1/8/0/0/false/2000/684 .76 157 .02 114 .005 96 .005 99 .001/0/0/-1/2/.0/true/1/Bug",
  "Mummy": "260/30/0/3/false/1000/768 .99 428 .2 428 .05 768 .15 243 .04 856 .01 99 .001 74 .001/0/.01/8/2/.0/true/20/Mummy",
  "Big Slime": "60/5/0/0/false/1000/766 .99 766 .9 766 .4 99 .001/0/.01/5/2/.0/true/7/Big Slime",
  "Serpent": "150/23/0/2/true/1000/769 .99 769 .15 287 .15 226 .06 446 .008 74 .001/0/.01/13/2/.0/true/20/Serpent",
  "Pepper Rex": "300/15/0/0/false/1000/80 0/5/.01/3/2/.0/true/7/Pepper Rex",
  "Tiger Slime": "415/23/0/0/false/1000/766 .8 157 .1 -4 .1 72 .01 92 .5 98 .005 99 .001/0/.01/4/2/.0/true/20/Tiger Slime",
  "Lava Lurk": "220/15/0/0/false/1000/881 .5 881 .4 881 .2 852 .15/5/.01/3/2/.0/true/12/Lava Lurk",
  "Hot Head": "250/18/0/0/false/2000/768 .65 287 .1 378 .1 378 .1 380 .1 380 .1 382 .1 833 .1 833 .1 98 .005 99 .001/8/.01/8/2/.0/true/16/Hot Head",
  "Magma Sprite": "220/15/0/0/true/2000/848 .5 848 .2/8/.01/8/2/.0/true/15/Magma Sprite",
  "Magma Duggy": "380/16/0/0/false/0/831 .5 831 .5 288 .4 848 .4 848 .15/0/.01/1/2/.0/true/18/Magma Duggy",
  "Magma Sparker": "310/15/0/0/true/2000/848 .5 848 .2/8/.01/8/2/.0/true/17/Magma Sparker",
  "False Magma Cap": "290/15/0/0/false/0/851 .99 848 .5 848 .2/3/0/1/3/.0/true/14/False Magma Cap",
  "Dwarvish Sentry": "300/18/0/0/true/0/60 .1 62 .1 64 .1 66 .1 68 .1 70 .1 72 .1/5/0/-1/3/.0/true/15/Dwarvish Sentry",
  "Putrid Ghost": "500/25/0/3/false/0/749 .99/3/.01/12/4/.0/true/25/Putrid Ghost",
  "Shadow Sniper": "300/18/0/0/false/0/769 .75 769 .1 337 .002 336 .01 335 .02 334 .04 203 .04 108 .003 -4 .1 98 .005 99 .001 74 .0005/2/.1/8/3/.0/true/20/Shadow Sniper",
  "Spider": "200/15/0/0/false/0/769 .75 769 .1 337 .002 336 .01 335 .02 334 .04 203 .04 108 .003 -4 .1 98 .005 99 .001 74 .0005/2/.1/8/3/.0/true/15/Spider",
  "Royal Serpent": "150/23/0/2/true/1000/769 .99 769 .15 287 .15 226 .06 446 .008 74 .001/0/.01/13/2/.0/true/20/Royal Serpent",
  "Blue Squid": "80/18/0/0/true/0/768 .75 814 .2 336 .05 287 .1 288 .05 98 .005 99 .001/2/0/6/3/.0/true/15/Blue Squid"
}

Формат

Индекс Поле Пример значения
0 Здоровье (хит-пойнты) 24
1 Урон (атака) 5
2 Минимальное количество монет, которые должны выпасть (нереализовано) 0
3 Максимальное количество монет, которые должны выпасть (нереализовано) 0
4 Будет ли "воздушным" (летать) false
5 Продолжительность случайных движений 1000
6 Предмет, который может выпасть 766 .75 766 .05 153 .1 66 .015 92 .15 96 .005 99 .001
7 Устойчивость (защита) 1
8 Агрессивность .01
9 Пороговое расстояние для нападения на игрока 4
10 Скорость 2
11 Шанс промаха при атаке .00
12 Является ли "монстром из шахты" true
13 Накапливаемый опыт 3
14 Отображаемое имя Green Slime

Индекс 4 "воздушный" равен "true" у монстров, которые летают над землей. Хотя Призраки не перечислены в качестве воздушных в данных, они переопределены как воздушные в коде игры.

Индекс 6 содержит список ID объектов, за каждым из которых следует вероятность выбора этого объекта. Из списка можно выбрать несколько объектов. "Дополнительные выпадающие предметы" в игровом коде дополняют этот список для нескольких типов монстров.

Индекс 12 обозначает "шахтовых монстров": монстры, статистика и выпадения которых улучшены для игроков, достигших дна шахт. К ним относятся Голем из глуши и другие монстры, которые на самом деле не встречаются в шахтах. Это поле "false" только для не-монстров, которые используют файл данных монстра, например, снаряд огненного шара, запущенный Малыш-кальмар.

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

Слаймы

Основная статья: Слаймы

Спрайты

Green Slime Notes.png

Спрайты слизи являются полностью модульными, с соответствующими частями, распределенными по листу спрайта. Каждая слизь использует один и тот же серый спрайт, окрашивая его маской оттенка в зависимости от типа слизи, а также случайным значением прозрачности. Строка 1 используется для состояния простоя и нормального движения. Строки 2-4, хотя и кажутся идентичными, в большинстве случаев кажутся неиспользуемыми (строка 2 появляется спорадически в конце некоторых атак, но для точных условий требуется дальнейшее тестирование). Строка 5 используется для анимации атаки. Область 6 на листе спрайтов содержит ресурсы для "ритуала спаривания", через который могут проходить слаймы, а также их частицы смерти. Спаривающиеся частицы (идущие по часовой стрелке) используются для поиска партнера, отклонения партнера и получения отказа.

Область 7 содержит средства для глаз. Слизистые глаза динамически размещаются на их спрайте в зависимости от их текущего действия. Когда слизь обращена вниз, глаза помещаются прямо поверх спрайта; при взгляде влево визуализируется только правый глаз и слегка перемещается влево; при взгляде вправо визуализируется только левый глаз и слегка перемещается вправо; при взгляде вверх глаза визуализируются непосредственно за слизью. Глаза, идущие по часовой стрелке, используются для их бездействия, во время атак, во время состояния "зло" (у каждой слизи есть шанс превратиться в "зло" при первом попадании и получить повышение характеристик) и получения урона.

Область 8 - антенна, прикрепленная к "мужским" слизям. Кажется, что он оживляется независимо от самой слизи, раскачиваясь взад и вперед несколько случайным образом. Как и в случае с основным спрайтом, здесь используется маска оттенка, чтобы принять цвет варианта слизи.

Область 9 представляет собой антенну, прикрепленную к "специальным" слизям, и анимируется так же, как и "мужская" антенна. Однако в этом случае не используется маска оттенка, вместо этого используется любой необработанный цвет на листе спрайта.