Hytale Asset ReferenceUnofficial
Versions / 0.6.0-pre.9 / EncounterManager / Example_Macro_Slot_Boss.json

Example_Macro_Slot_Boss

Server/EncounterManager/Example_Macro_Slot_Boss.json, 6.0 KB

Fields

FieldType
Classstring
Typestring
StartStatestring
Debugstring
Parametersobject
Instructionsarray[1]

Source

{
  "Class": "EncounterManager",
  "Type": "Abstract",
  "StartState": "Intro",
  "Debug": "DisplayState,DisplayTarget",
  "Parameters": {
    "BossSpawnMarker": {
      "Value": "Test_Boss_Marker",
      "Description": "Boss spawn marker for spawning the boss."
    },
    "MainBossRole": {
      "Value": "Test_Boss_Basic",
      "Description": "Main boss role to switch to after intro. Intro is complete when the boss sends the Boss_In_Position beacon message."
    },
    "Phase1Behavior": {
      "Value": "$Null",
      "Description": "Macro element that decides what behavior to run in phase 1."
    },
    "Phase2Transition": {
      "Value": "Encounter_Macro_Transition_TargetInHealthRange",
      "Description": "Macro element that decides when the encounter should transition to phase 2."
    },
    "Phase2Behavior": {
      "Value": "$Null",
      "Description": "Macro element that decides what behavior to run in phase 2."
    },
    "Phase3Transition": {
      "Value": "Encounter_Macro_Transition_TargetInHealthRange",
      "Description": "Macro element that decides when the encounter should transition to phase 3."
    },
    "Phase3Behavior": {
      "Value": "$Null",
      "Description": "Macro element that decides what behavior to run in phase 3."
    },
    "EndTransition": {
      "Value": "Encounter_Macro_Transition_TargetInHealthRange",
      "Description": "Macro element that decides when the encounter should complete."
    },
    "EndBehavior": {
      "Value": "$Null",
      "Description": "Macro element that decides what behavior to run when the encounter completes."
    }
  },
  "Instructions": [
    {
      "Sensor": {
        "Type": "Player",
        "Range": 30,
        "Collector": {
          "Type": "EncounterAudio"
        }
      },
      "Instructions": [
        {
          "Sensor": {
            "Type": "State",
            "State": "Intro"
          },
          "Instructions": [
            {
              "Sensor": {
                "Type": "And",
                "Sensors": [
                  {
                    "Type": "Beacon",
                    "Range": 100,
                    "Message": "Boss_In_Position"
                  },
                  {
                    "Type": "Target",
                    "Range": 100,
                    "TargetSlot": "Boss"
                  }
                ]
              },
              "Actions": [
                {
                  "Type": "ChangeTargetRole",
                  "Role": { "Compute": "MainBossRole" }
                },
                {
                  "Type": "State",
                  "State": "Phase_1"
                }
              ]
            },
            {
              "Sensor": {
                "Type": "Not",
                "Sensor": {
                  "Type": "Target",
                  "Range": 100,
                  "TargetSlot": "Boss"
                }
              },
              "ActionsBlocking": true,
              "Actions": [
                {
                  "Type": "PlaySound",
                  "SoundEventId": "SFX_Test_Blip_A"
                },
                {
                  "Type": "Timeout",
                  "Delay": [ 1, 1 ]
                },
                {
                  "Type": "TriggerSpawners",
                  "Count": 1,
                  "Range": 30,
                  "SpawnMarker": { "Compute": "BossSpawnMarker" },
                  "TargetSlot": "Boss",
                  "Rebind": true
                },
                {
                  "Type": "Timeout",
                  "Delay": [ 2, 2 ]
                }
              ]
            }
          ]
        },
        {
          "Sensor": {
            "Type": "State",
            "State": "Phase_1"
          },
          "Instructions": [
            {
              "Reference": { "Compute": "Phase1Behavior" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Behavior" ],
              "AcceptsForward": true,
              "Nullable": true
            },
            {
              "Reference": { "Compute": "Phase2Transition" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Transition" ],
              "AcceptsForward": true,
              "Modify": {
                "_ExportStates": [ "Phase_2" ]
              }
            }
          ]
        },
        {
          "Sensor": {
            "Type": "State",
            "State": "Phase_2"
          },
          "Instructions": [
            {
              "Reference": { "Compute": "Phase2Behavior" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Behavior" ],
              "AcceptsForward": true,
              "Nullable": true
            },
            {
              "Reference": { "Compute": "Phase3Transition" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Transition" ],
              "AcceptsForward": true,
              "Modify": {
                "_ExportStates": [ "Phase_3" ]
              }
            }
          ]
        },
        {
          "Sensor": {
            "Type": "State",
            "State": "Phase_3"
          },
          "Instructions": [
            {
              "Reference": { "Compute": "Phase3Behavior" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Behavior" ],
              "AcceptsForward": true,
              "Nullable": true
            },
            {
              "Reference": { "Compute": "EndTransition" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Transition" ],
              "AcceptsForward": true,
              "Modify": {
                "_ExportStates": [ "Completed" ]
              }
            }
          ]
        },
        {
          "Sensor": {
            "Type": "State",
            "State": "Completed"
          },
          "Instructions": [
            {
              "Reference": { "Compute": "EndBehavior" },
              "Interfaces": [ "Hytale.Instruction.Encounter.Phase.Behavior" ],
              "AcceptsForward": true,
              "Nullable": true
            }
          ]
        }
      ]
    }
  ]
}