Краткое описание всех Node - atomrpg/modkit GitHub Wiki

Базовые ноды

Dialog Pharase - Фраза персонажа, с которым говорит Главный Герой.

Dialog Answer -ответ который произносит главный герой. Обычно варианты ответа всегда должны идти после Dialog Pharase.

Dialog Continue - нода автоматически создает вариант ответа с текстом "Далее".

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

Log - выводит текст в журнал игрока. Удобно использовать как в роли отладки, и как дополнительная информация для игрока.

Animation

Отвечает за анимацию на объектах, персонажах и т.д.

AnimSpeed - скорость с которой будет проигрываться анимация у объекта.

AnimatorSetDefaultAnimTree - сбрасывает дерево анимации на первоначальное.

AnimatorTrigger - запускает определенную анимацию из дерева анимации активируемую триггером.

PlayAnim - проиграть определенную анимацию.

SetAnimationOverride - заменяет дерево анимации

SetAnimationOverrideList -

TriggerAnim -

Barter

Отвечает за торговлю с персонажем.

BarterBegin - начать торговлю с персонажем. (Обычно вставляется в ноду Answer)

BarterDiscount - даёт определённый процент скидки у торговца на весь товар.

BarterPrepareCustom - нода вызывает окно бартера с указанным inventoryObject (Например, если указать $VEHICLE$, то появится окно бартера с машиной)

Behavior

Отвечает за поведение персонажей и существ в бою.

BehaviorState - скрипт поведения начинается с этой ноды.

Composite

Parallel - параллельный запуск

Selector - последовательный выбор

Sequence - последовательная нода

Decorator

CanAttack - Может Атаковать?

Failer - промах, ошибка.

HasPanic - в панике

Inverter - инвертер

IsRandomAttackPrimary - случайная атака первичным оружием?

IsTeammate - это напарник?

IsTurnBegin - ход начался?

PlayStateFromBehavior -

RandomDecorator -

Repeater - повторить

Succeed - действие успешно

Leaf

AddKey- добавить ключ.

Attack - атаковать

BehaviorHeal - лечение

CheсkHeal - проверка на требуется ли лечение

CheckHP - проверить уровень хп в % и действия после на выбор

DebugLog - нода служит для отслеживания работы бехава ИИ

FindAttackPosition - поиск удобной позиции для атаки по заданным параметрам в ноде

FindBestTarget - поиск лучшей цели для атаки по которой можно попасть.

FindRandomFreeNodeInRange-

HasAPForAttack -имеются ли очки действий для атаки

HasKey - проверка ключа.

MoveToTarget - двигаться к цели.

ProcessPanic - запуск паники на цель.

RemoveKey - удалить ключ

SetAnimTrigger - активировать триггер анимации

SpawnCharacterAtPoint - заспавнить существо в точке

SpawnPrefabBehavior - спавн префаба с текущим бехавом

TeleportTo - телепортировать объект к цели

TurnEnd - закончить ход

WaitTime - ожидание в секундах.

WaitTurn - ожидание хода.

Character

AreAllAroundDead - проверяет мертвы ли все в указанной фракции на карте.

CharacterAddEffect - добавляет эффект указанному персонажу.

CharacterAddExp - добавляет опыт указанному персонажу.

CharacterAddPerk - добавляет перк указанному персонажу.

CharacterAddResults - выдает результат игры в определенном направлении (из статистики по игре)

CharacterAddSpecPoints - добавляет очко таланта указанному персонажу

CharacterAttackNode - атаковать цель

CharacterCapsNode- переопределение роли существа (например добавление персонажа в отряд игрока)

CharacterClearEffectsNode - удаляет эффекты у цели.

CharacterDamage - наносит повреждение цели.

CharacterExists -

CharacterFollowTo - следовать за кем либо.

CharacterGoAway - персонаж покидает локацию.

CharacterHandHasWeapon - имеется ли какое оружие в руках персонажа?

CharacterHasEffect - есть ли эффекты?

CharacterHasEquipItem - Экипирован предмет?

CharacterHasEquipType - Экипирован предмет определенного типа?

CharacterHasHurt - персонаж ранен?

CharacterHasPerk - персонаж имеет такой-то перк.

CharacterHeal - вылечить персонажа.

CharacterInBattle - персонаж в бою?

CharacterInDialog - персонаж ведёт диалог?

CharacterInIdle - персонаж в ожидании?

CharacterInOut - Персонаж входит в локацию или уходит.

CharacterInvalidateAllSlots - проверить все слоты персонажа

CharacterIsDead - персонаж мертв?

CharacterIsEnemy - персонаж враг ?

CharacterIsFemale персонаж женского пола?

CharacterIsInState - проверяет не находится ли персонаж под указанным стейтом.

CharacterIsStayOnOneOfPoint -

CharacterIsStayOnPoint -

CharacterKillHim - персонаж убивает другого указанного персонажа

CharacterKill - убить указанного персонажа

CharacterMoveMultiplier - увеличение скорость передвижения персонажа

CharacterMoveTo -персонаж двигается к точке

CharacterMoveToRandom - персонаж случайно двигается по точкам (например как патруль на картах)

CharacterNeedUpdate - перезапускает бехав у персонажа

CharacterPatrol - патруль

CharacterRandomIdle - запускает случайное состояние ожидания

CharacterRegimentEquip - персонаж самостоятельно посмотрит экипировку что есть у него в инвентаре, и оденет подходящую

CharacterRemoveEffect - удалить эффект с персонажа

CharacterRemove - удалить персонажа

CharacterResetBackPosition - сбрасывает точку возврата персонажа

CharacterRotateTo - повернуть персонажа

CharacterSetAIBehavior - установить новый бехав для ИИ

CharacterSetAsDead - устанавливает что персонаж мёртв

CharacterSetCanFollow - установить персонаж может следовать

CharacterSetItem - выдать итем персонажу

CharacterSetState - установить состояние

CharacterShootlHim - сделать выстрел в персонажа

CharacterShootToPoint -сделать выстрел в точку

CharacterSleep - отправить в сон

CharacterState - состояние персонажа

CharacterStop - остановить персонажа

CharacterStun - устанавливает персонажа в состояния оглушения

CharacterSwing - персонаж двигается в радиусе 5 клеток

CharacterSwitchShotMode - переключает режим стрельбы у персонажа

CharacterSwitchWeapon - сменить оружие у персонажа

CharacterTake - персонаж подберет лут

CharacterTeleport - телепортировать персонажа

CharacterTeleportRandom - телепортировать персонажа на одну из случайно выбранных точек

CharacterWaitAnimation - персонаж ожидает указанную анимацию

CharacterWakeup - персонаж подымается от какого либо состояния

CharacterActive - активировать персонажа

CharacterKillAll - убить всех персонажей определенной фракции.

CharactersRemove - удаляет персонажей

HasEnemyAround - есть ли враги?

Reset Characeter - сброс персонажа на первоначальное состояние (в том числе уровень и хар-ки)

Reset Creature - сброс Кричера до первоначального состояния.

Cinematic

Отвечает за кат сцены в игре.

CameraMoveTo - камера плавно двигается к точке

CameraShake - тряска камеры.

CharacterHeadLook - зафиксировать на персонаже

CharacterHeadLookOverride -

CinematicBegin - начать кат сцену.

CinematicEnd - закончить кат сцену.

PostProcessBegin- запустить пост процесс (речь про эффекты для экрана)

PostProcessEnd - закончить пост процесс (речь про эффекты для экрана)

Communication

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

HasCommunication - открыт ли канал коммуникации между бехавами персонажей

OnCharacterCommunicationCommandEvent - событие которое ждет коммуникации между бехавами

SendCommunicationCommand - послать команду

Dialog

Отвечает за диалоги с персонажами.

DialogBegin - нода позволяет начать диалог с персонажем. Чек бокс бартера позволяет включать и отключать доступ к бартеру с персонажем.

DialogEnd - закрывает диалог с персонажем. (Если была создана нода DialogBegin в скрипте, то для закрытия диалога должна существовать DialogEnd)

DialogPortarait - позволяет изменить портрет персонажа на любой другой - подключается к ноде Phrase, позволяет изменить имя персонажа конкретно для этой фразы. Измененный портрет будет работать только к подключенной фразе.

DialogShowAliasNameNode - покажет под портретом имя персонажа

DialogShowCustomNameNode - позволяет вывести любое введённое имя под портрет персонажа.

DialogShowNameNode - нода при подключении показывает имя персонажа под портретом.

DialogUpdateHealthBarNode - обновляет визуальный эффект здоровья персонажа на портрете.

PlayDialog - запустить другой диалог.

Event

Отвечает за ожидающие ноды. Они при загрузке не исполняются пока не будут выполнены условия ноды.

CharacterConsumableApply - персонаж использует потребляемый предмет

CharacterDistanceTrigger - срабатывает если персонаж подошел слишком близко или отошел далеко.

CharacterKillEvent - срабатывает при убийстве указанного персонажа

DestroyDestructible - уничтожить разрушаемый объект

GamepadEvent - ожидает нажатие определенной клавиши с геймпада

KeyboardEvent - ожидает нажатие определенной клавиши с клавиатуры

OnChangeDaytimeEvent - ожидает изменения времени суток

OnCharacterWantBattleEvent - ждет начала битвы

OnDialogEvent - ждет начала диалога

OnLockInteractEvent -

OnMinuteTimeEvent -

OnTakeItemEvent - событие при получении предмета

OnTryStealEvent - событие если предмет украдет

OnVehicleFuelFinishEvent - если топливо в машине закончилось

PlayerTakeItemEvent - игрок получает предмет

StunEvent - игрок в находится в стане

EXP

AddExp - добавить опыт ГГ. Имеется чекбокс на игнорирование интеллекта - что позволит дать опыт без бонуса за интеллект.

HUD

Данная категория отвечает за интерфейс персонажа.

CloseBackPack - закрыть интерфейс рюкзака.

HudCutScene - скрыть весь интерфейс. Есть чек бокс - скрыть интерфейс на время катсцены.

HudTargetInfo - вызывает плашку-инфо над объектом (HPBar, CharacterHP, ObjectHP)

Inputvibration - Вибрирует d-pad указанное время.

ShowPDAWorldMap- открыть глобальную карту.

Interactive

AnimTrigger - установить определенную анимацию через триггер

InteractiveBegin - начать интерактив

InteractiveInfo -

InteractiveNone - если интерактив не трогают

InteractiveRepair -

InteractiveScience -

InteractiveShowPocket -

InteractiveUse - интерактив запуститься если на него нажмет игрок в игре.

Tryrepair -

Keyword

Данные ключи существуют только внутри скрипта динамического объекта т.е. локально. Они не передаются глобально между другими динамическими объектами. Поэтому их имена могут повторятся в других скриптах (например Keyword MEET используемый в диалогах у разработчиков).

AddKeyword - создать ключ переменную.

HasKeyword - проверка есть ли такой ключ.

RemoveKeyword - удалить ключ

Math

математические функции для операции с ключами

CompareDigitValue - сравнивает цифровое значение

CompareKeyValue - сравнивает значение ключа

MathForEach - математический цикл

MathKeyValue - математическая операция с ключем (сложение вычитание и т.д.)

PointInsideCircle - точка внутри круга - например круговой спавн нпц.

Memo

Отвечает за работу записок.

MemoBegin- сообщает что это записка при активации бехава.

MemoImage- показывает указанную картинку.

MemoPage- страница с текстом из записки.

MemoWait- ожидания.

Misc

различные удобные ноды не вошедшие в другие категории.

AddExpGambling - опыт за азарные игры.

AddKeyItemCount - добавляет ключ определенным итема (можно дать пачке итемов).

AddKeyText - создает ключ с текстом.

AddKeyValue - создает ключ с значением.

AddPlayerPref - добавляет ключ игроку.

BattleWaitTime - время ожидания в битве.

BuildFormationsNode - построить определенную формацию (например расстрельный круг).

CameraSnap - перемещает камеру на игрока.

CreateRandomSeed - создает случайно сгенерированное значение.

Delay - задержка.

Dialog Avatar -

DialogBackground -

DistToTarget - дистанция до цели.

DoneAllQuestsNode - завершить все квесты.

EncounterAddChancePercentNode - увеличивает шанс случайной встречи на глобальной карте.

Explosion - сделать взрыв.

FlashSplash - затемнение экрана и после возвращение обратно в нормальное состояние.

FormatKeyValue -

GroundHasItem - есть ли на земле указанный предмет

HasBundle - проверка на присутствие какого либо бандла (архива игры) например длц.

HasKeyValue - содержит ли ключ такое значение.

HasPublicEvent - запущен ли какой либо публичный эвент (23 февраля, Хэллоуин и т.д.)

HasRandomDice - кидает кубик на да нет с указанным шансом.

IsActiveLanguageNode - какой перевод игры сейчас активен?

MannequinDress - переодевание creature, изменение линков точек крепления одежды на персонаже

ObjectRemove - удаляет объект.

OffenseRest -

OppKeyValue -

PlayBehavior - запустить и заменить на новый бехавиор (заменит оригинал на новый)

PlayState - запустить другой бехевиор но не заменять оригинальный.

QuestReset - сбрасывает квест.

Random - случайно выбирает одну ветку из множества подключенных к данной ноде веток.

ResetLevelDataNode - полностью возвращает всё состояние уровня, до его посещения игроком.

RestoreRandomSeed - сбрасывает сгенерированное значение

SetExplosiveTimer - устанавливает таймер для динамита.

ShowTutorialHint - система подсказок как в начальной локации.

SteamAchievement - активация ачивок стима.

StopBehavior - остановить скрипт.

TvShow -

TVSwitch -

Unique -

Wait - ожидание в секундах.

WaitLoadingState - ожидание загрузки состояния (например полезно при загрузке уровня).

WaitRandom - ожидает в секундах значение выбирается случайно в заданном диапозоне.

Whoop - текст который будет появляется над головой персонажа.

WhoopRedhanded -

Notebook

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

NotebookAddNote - создать уникальный глобальный ключ.

NotebookHasNote - проверить есть ли такой уникальный глобальный ключ.

NotebookRemoveNote - удалить уникальный глобальный ключ.

Object

Данная категория отвечает за действия с объектами на карте, как статические так и динамические.

ActiveObject - активировать или деактивировать объект на карте.

CleanCorpses - удалить трупы объектов - В ноде можно указать конкретно какой фракции удалить трупы или удалить трупы только если у них ничего в инвентаре нет.

MoveObject - перемещение объекта по осям XYZ.

ObjectCheck - проверяет существует ли объект с таким именем на карте.

ObjectHasSibling - проверяет, есть ли у объекта вложенные объекты. обычно это делается для путевых точек по которым патрулируют персонажи. Например проверяем, если это группа, то потом можно выбрать произвольную точку в группе и идти к ней.

Openabled

отвечает за открытие и закрытие объектов.

CloseDoor - закрыть указанную дверь.

CloseIfOpen - закрыть дверь если она открыта.

CloseOpenable - запереть открываемую дверь.

DoorIsOpen - дверь открыта?

GenPinLocker - сгенерировать ключ для двери.

LockChestLocker - запереть сундук.

LockDoorLocker - запереть дверь.

LockerIsOpen - сундук открыт?

OpenDoor - открыть дверь.

Openable - сделать дверь открываемой.

OpenableIsOpen - открыта ли открываемая дверь?

Player

Ноды для главного героя

Addskill - добавляет навык игроку (выбирается из списка), сколько добавить указывается в ноде.

BookSkill - добавляется скилл игроку через систему книг (например для того чтоб действовал бонус от таланта на книги.)

Dice - это нода броска костей - на неё напрямую влияет параметр Удачи ГГ. Шанс удачи указывает в ноде.

EncounterType - объявляет случайную встречу созданную в ассете случайных встреч глобальной карты (Encounter). (Например как в скрипте первой глобальной карты Z_1)

HasHurt - проверяет ранен ли игрок.

HasModifier - проверяет все параметры персонажа с учётом различных модификаторов от предметов и эффектов.

HasPlayerPerk - проверяет есть ли такой перк у игрока.

HasSkill - проверяет скилы игрока без учета каких либо модификаторов.

HasStat - проверяет хар-ки персонажа без учета каких либо модификаторов.

HasTeamMate - проверяет находится ли данный персонаж в отряде ГГ.

Heal - вылечить игрока (если делать в минус, то будет отнимать)

IsFemale - проверка является ли ГГ Женским персонажем.

PlayerAddPerk - добавить перк игроку.

PlayerAddRecipe - добавить рецепт игроку

PlayerAddStat - добавить характеристики игроку.

PlayerAlighTeamMate -

PlayerFixPositionIfInObstacle -

PlayerGameDifficult - проверяет на какой сложности запущена игра.

PlayerHasClothes - есть ли на игроке одежда.

PlayerHasCondition - висит ли что-то из списка в ноде на игроке (эффекты).

PlayerHasEnemy - есть ли враги на карте.

PlayerHasHallucinations - Проверяет есть ли у игрока Галлюцинации

PlayerHasRecipe - проверяет есть ли такой рецепт у ГГ.

PlayerHasWeaponPerk - имеется ли у игрока определенный перк от оружия.

PlayerHasZooMan - имеет ли навык разделки животных.

PlayerInDialog - проверяет запущен ли сейчас диалог.

PlayerIsVisible - проверяет видно ли игрока.

PlayerLevelOut - игрок уходит с локации.

PlayerOverlap -

PlayerRemovePerk - удалить перк у ГГ.

PlayerResetCondition - Сбросить состояния

PlayerResetHunger - сбросить голод.

PlayerResetNotifications - сбрасывает с игрока все состояния.

PlayerResetWorldTime - сбросить время.

PlayerRolling - кидает кубик и выдает через whoop сколько выпало.

PlayerSetName - установить имя для ГГ.

PlayerSetWorldPos - установить позицию игрока на глобальной карте.

PlayerSkipTurn - игрок пропускает ход.

PlayerToLocation - переместить игрока на локацию.

PlayerWait - ожидание игрока.

PlayerWaitStun - ожидание пока пройдет стан.

PlayerWhereMapLocation - проверка локации где находится игрок.

SetEncounterType - устанавливает тип случайной встречи который произойдет следующим.

SetWorldMapEncounterTime - время до срабатывания следующей случайной встречи

StopAnyAction - остановить все действия.

PlayerVehicle

Автомобиль игрока.

IsCarAvailable - проверяет доступна ли машина.

PlaceCar - разместить машину на точках.

Player Vehicle On Location -

VehicleAddFuel - добавить топливо в автомобиль.

VehicleDrive - игрок за рулем автомобиля на карте.

VehicleFuelFitInside- проверяет сколько топлива в баке автомобиля.

VehicleHasFuel - проверка есть ли топливо в машине.

VehicleSetup - присваивает машине новый прото префаб (Можно сменить модель автомобиля этой нодой).

Quest

Данная категория отвечает за квесты в игре.

QuestBegin - Создать квест. Указывается уникальный ключ. Описание квеста делается в файле локализации.

QuestDone - завершить квест. Указывает уникальный ключ квеста который требуется завершить.

QuestStatus - три проверки. Активен ли квест\Квест выполнен\Квест ещё не взят.

Relationship

Данная категория отвечает за отношения между нпц, фракциями и ГГ.

CharacterSetrelationShip - установить для персонажа отношения с фракцией

FractionIsEnemyRelationShip - фракция является ли врагом другой фракции?

FractionSetRelationShip - установить отношения между фракциями

SetRelationShipBetweenFractions -

Sound

Отвечает за звук.

EnableSound - включить звук.

HasPlayingSound - проверка, играет ли сейчас звук?

PlaySound - проиграть звук.

PlayUISound - проиграть звук интерфейса

StopSound - остановить звук.

Spawn

Отвечает за спавн объектов и НПЦ.

AddSpawnPoint - добавляет точку спавна на карту где: SpawnName - имя точки. Position - координаты на карте X,Y,Z. Rotation - поворот точки.

SpawnCharacter - спавнит существо из категории character. В поле Spawn нужно указать точку куда спавнить. ЧекБокс RandomName присваивает уникальное имя для существа (Имя точки + имя существа)

SpawnEntity - заспавнить объект с которым можно взаимодействовать например (предметы, ящики, интерактивы и т.д)

SpawnPrefab - заспавнить любой статический объект.

Time

Данная категория отвечает за время в игре.

CompareTimeDate - сравнивает

DayNight - проверяет день или ночь и идёт по ветке согласно текущему состоянию дня.

HasTimeDateCome -

IsDayNumber- проверяет какой сегодня день и если соответствует выбранному продолжает работу ноды, что идут после неё.

Scrolltime- мотает время в игре, можно выбрать тип промотки (Часы, дни, недели) и указать на сколько мотать.

SetMidNightTime- установить темное время суток.

TimeDatePeriod-

TimeDateTrigger-

Transform

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

TransformSetPosition - изменяет позицию объекта.

TransformSetRotation - поворачивает объект.

TransformSetScale - изменяет размер объекта.

Video

Ноды отвечают за проигрывание видео в игре.

ShowVideo - проигрывает указанное видео и делает переход на указанную локацию.

ShowVideoScenario - используется VideoScenario компонент, тут и субтитры, и ветвления (сценарии задаются индексом). Пример концовка игры.

WorldMap

Данная категория нод отвечают за глобальную карту

AddLocationToMap - открывает на карте локацию, с возможностью её посещения. (Это делается для карт, которые нельзя посетить и найти обычным способом, гуляя по глобальной карте).

EncounterStart - запуск энкаунтера (Пример можно посмотреть в WMap.Events)

PlayerMapLocation- проверяет на какой карте находится ГГ.

PlayerWhere_worldMap - проверяет находится ли игрок на глоабльной карте, можно указать имя по ID

Set_WorldMap_Id - сменить глобальную карту у игрока - (При перемещении ГГ на другие глобальные карты)