Core Body

You can put the core anywhere in the text file, but it is suggested to place this under your settings skeleton body.

The core is a skeleton body that defines what actually happens during the disaster and for what level. If you want your disaster to have all 6 levels then you will need to define all 6 levels in the core body. The maximum levels you can have is 6. You do not need to define all 6 levels, let's say you want only a disaster that can only be levels 1 and 2 then you need to only define those levels. This is an example of a very basic core body that has only level 1 and 2 with comments, it is pretty straightforward:

core:
    # Define the level that this sequence will be run on
    level 1:
        # The operation field has two variations ('ordered' OR 'random') the ordered operation will run your events in order from event 1 to the last event, the random operation will run your events in a random order one by one until its gone through them all
        operation: 'ordered'
        # Interval seconds is the amount of time in seconds between events run, the example set to 10 will run event 1 and then wait 10 seconds and run event 2 and so on
        interval_seconds: 10
        events:
            # This is an event, label events in order like this. An event is a series of actions that gets run so for example when an event is run you can start a disaster, spawn mobs, send messages, etc.
            event 1:
                # This is an action, you can have as many actions as you want in an event, this action will start a disaster. There are multiple types of actions refer to the actions page for more info
                disaster 1:
                    # Here I used a disaster action and within a disaster action you can start any disaster you want and specify modifiers, every disaster has different modifiers refer to the modifiers page for more info
                    type: 'acidstorm'
                    level: 2
                    # Specify how long the acidstorm will last
                    time: 60
                    # Damage setting for the acidstorm
                    damage: 2.0
                    # Particle setting for the acid storm
                    particles: false
                    # This setting is for if the disaster should be announced in chat, here it will be
                    broadcastAllowed: true
                # This is a broadcast action, this action will also be run when event 1 is run since it is inside the 'event 1' section. This will just broadcast a message to the world
                broadcast 1:
                    message: '&cYou feel a cold chill down your spine..'
                    # Target means what players to target, there are three types of targets ('all' will target all players; 'player' will target the player the disaster was started upon; 'random' will target random players you can specify how many under the target setting with 'targetAmount'; and finally 'startPos' this is used for other actions to happen where the disaster is started at)
                    target: 'all'
            # This is a second event 'event 2' in this disaster it will be run 10 seconds after 'event 1' is run at the start since our 'interval_seconds' is set to 10
            event 2:
                # A disaster action which will start a sinkhole on the origin player of the disaster
                disaster 1:
                    type: 'sinkhole'
                    size: 0.5
                    target: 'player'
                    # This is the offset of the disaster in blocks (radius from the player which the disaster can start on, this is randomly selected)
                    offset: 5
                # This is a second disaster action which will be started also when event 2 is run, so both a sinkhole and earthquake will happen at the same time
                disaster 2:
                    type: 'earthquake'
                    level: 3
                    force: 0.5
                    target: 'player'
                    offset: 10
            # You can also make a pause for your disaster in the events, so here this event will do nothing and then 10 seconds later (our 'interval_seconds') event 4 will start
            event 3:
                wait:
            event 4:
                disaster 1:
                    type: 'supernova'
                    level: 1
                    target: 'player'
    # We finished with the level 1 of our disaster, now we define a level 2 for our disaster and we will make it slightly harder then level 1
    level 2:
        # This time we use the 'random' operation so our events will be run in a random order
        operation: 'random'
        # This is an optional feature for the random operation, this will specify how many events to run for the disaster so if we had 9 events in our level 2 then only 3 will run and in a random order
        number_of_events: 3
        # To make it slightly harder we set the 'interval_seconds' to 9 instead of 10 which means that events will be run 9 seconds after eachother instead of 10
        interval_seconds: 9
        events:
            event 1:
                disaster 1:
                    type: 'acidstorm'
                    level: 2
                    time: 60
                    damage: 2.0
                    particles: true
            event 2:
                disaster 1:
                    type: 'sinkhole'
                    size: 0.6
                    # We use the 'all' target which means that all players in the world will have a sinkhole start
                    target: 'all'
                    offset: 5
                disaster 2:
                    type: 'earthquake'
                    level: 3
                    force: 1.2
                    # This is the third type of target the 'random' target which will pick an amount of random players in the world to start the earthquake on
                    target: 'random'
                    # When using the 'random' target you must add a 'targetAmount' under it to specify how many players will be randomly selected
                    targetAmount: 3
                    offset: 10
            # When you want to make a cooldown event where nothing happens so just a pause you can add it just like this the reason why I added the 'wait:' previously was to keep it more organized
            event 3:
            event 4:
                disaster 1:
                    type: 'supernova'
                    level: 2
                    target: 'random'
                    targetAmount: 1

Last updated