Skip to content

The Configuration File

Parker Hawke edited this page Aug 17, 2017 · 8 revisions

One of the core components of DragonEggDrop - Revival is its customizability and feature diversity. Many of these features can be taken advantage of through the use of the plugin's configuration file. The configuration file is ever-expanding and will have features added and removed between releases. Although most options are documented when initially generated, this page will go into depth on what each feature will do.

Default Configuration File

The configuration file will generate with relatively fair configuration options (including a few dragon templates - see Creating Custom Dragons). The below default configuration file is up to date as of version 1.4.0-BETA1 and later.

# DO NOT REMOVE OR MODIFY #
version: 2
# ----------------------- #

perform-update-checks: true

# All data involving the particle effects displayed after the death of the Ender Dragon
Particles:
    # The Y location the reward object will spawn at
    egg-start-y: 180.0
    
    # Type of particle, see: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Particle.html
    type: 'FLAME'
    
    # The number of particles to spawn per particle iteration
    amount: 4
    
    # Extra data of the particle (Most are not affected by this value)
    extra: 0
    
    # The particle offsets for each direction
    x-offset: 0.001
    y-offset: 0.001
    z-offset: 0.001
    
    # The speed multiplier at which particles will be spawned (how fast they will descend)
    speed-multiplier: 1
    
    # The amount of particle lines that will animate from the ceiling
    stream-count: 6
    
    # How often to spawn the particles (in ticks)
    interval: 1
    
    # Advanced particle functionality! DO NOT TOUCH UNLESS YOU UNDERSTAND WHAT THIS DOES
    Advanced:
        # A pre-defined mathematical shape for the particles to be displayed in
        # (Available: "BALL", "HELIX", "OPEN_END_HELIX", "CUSTOM")
        preset-shape: 'OPEN_END_HELIX'
        
        # The mathematical expression in which particles will be spawned along the x coordinate
        x-coord-expression: 'cos(theta)'
        
        # The mathematical expression in which particles will be spawned along the z coordinate
        z-coord-expression: 'sin(theta)'

# Number of lightning entities to spawn on egg land
lightning-amount: 4

# Respawn dragon on join? (delay is in seconds)
respawn-on-join: false
join-respawn-delay: 60

# Respawn dragon on death? (delay is in seconds)
respawn-on-death: true
death-respawn-delay: 300

# Whether the countdown will run even when out of the end
countdown-across-world: false

# Announcement message animation
announce-messages:
- '&6Dragon respawning in &e%formatted-time%'
- '&eDragon respawning in &6%formatted-time%'

perform-update-checks

Update checks will make an asynchronous query to SpiGet's API and ensure that the working version on your server is up to date. If a new version is available, players with op will be notified in chat every 30 minutes identifying the new version number. The /dragoneggdrop help command will also display that a new version is available for those that do not have op but rather the respective permission node. This has no impact on server performance and keeping this to "true" is recommended.

Particles

The entire particles category allows for the customization of the particles displayed after a dragon is killed in The End. From the type of particle to the shape in which it will be rendered, this allows extreme customizability after the dragon's death.

egg-start-y

A rather simplistic integer value that indicates at which height the particles will start spawning at.

type

A String constant that determines the type of particle to be displayed. Note that these particle values may or may not have similar names to those listed in Minecraft's client. For a full list of possible particle effects, see SpigotMC's Javadoc page for the Particle enum. All listed values are accepted in this configuration option. If an invalid value is specified, FLAME will be the default value.

amount

A number of particles that should be spawned per animation tick. If using advanced equations, generally this value is set to 1. Note that larger values may or may not affect server or client performance.

extra

The extra value of particle effects. Many particles are not affected by this parameter, but for those that are, this is recognized primarily as the "speed" of the particle. This accepts a decimal value.

x-offset, y-offset and z-offset

The x, y and z offsets determine the stretch in which particles may be spawned. The larger the values, the further particles will be stretched when spawned. If these values are set to a low decimal value (i.e. 0.001), the particles will seem to not move from where they were spawned.

speed-multiplier

Starting from the egg-start-y configuration value, this affects the speed at which the particles will descend to the portal. The higher this value, the faster particles will descend.

stream-count

Particles are spawned in "streams" which are quite simply vertical lines of particles. By default, this value is set to 6 and each stream is spawned at even intervals between one another (i.e. 60 degrees apart for 6 streams, 45 degrees for 8, etc.).

interval

The interval of time (in ticks) in which particles will be spawned. 1 second = 20 ticks

Particles.Advanced

While still being a part of the Particles configuration option, this section is an extremely flexible equation parsing only usable by those who understand how to create custom mathematical equations for particles. These options go beyond the basic options in the Particles category but will allow for more creative particles after the death of the dragon. To learn how to use this feature, the Advanced Particle Equations page will explain this section in greater depth.

preset-shape

DragonEggDrop - Revival comes with 3 pre-configured particle equations to display various shapes after the death of the dragon.

  • BALL: A sphere of particles shotting directly down to the top of the portal
  • HELIX: A spiraling helix of particles
  • OPEN_END_HELIX: A spiraling helix of particles that gradually closes as it decreases to the portal

If none of the above suit the desired shape, "CUSTOM" may be selected to grant access to the x-coord-expression and z-coord-expression configuration options.

x-coord-expression and z-coord-expression

Each expression affects the axis of the particles respectively. The y axis is not changeable due to its constant decreasing value. These expressions come preset with defined functions and variables which are further explained in the Advanced Particle Equations page.

lightning-amount

A number of lightning bolts that will be spawned as loot strikes the top of the end portal. These lightning bolts may cause a fire on top of the portal, though any loot chests spawned will not be affected.

respawn-on-join and join-respawn-delay

Both of these options coincide together. If respawn-on-join is set to false, join-respawn-delay will take no effect. The respawn-on-join configuration option determines whether the dragon will attempt to respawn when the player joins the game or enters the end world. If set to true, join-respawn-delay declares the time it will take (in seconds) for the dragon to respawn. If a dragon exists in the world as the respawn occurs, the countdown will continue but the respawn process will fail.

respawn-on-death and death-respawn-delay

Both of these options coincide together. If respawn-on-death is set to false, death-respawn-delay will take no effect. The respawn-on-death configuration option determines whether the dragon will attempt to respawn after it has been killed. If set to true, "death-respawn-delay" declares the time it will take (in seconds) for the dragon to respawn. If a dragon exists in the world as the respawn occurs, the countdown will continue but the respawn process will fail.

countdown-across-world

Setting this value to true will let the respawn countdown continue even if the players are not in The End. Otherwise, if set to false, the countdown will stop after leaving The End.

announce-messages

A list of Strings which will be iterated over in sequential order to all players in The End every second as the time decreases. The variables %formatted-time% and %time% will be parsed and replaced as they are displayed to players. %formatted-time% will display the time in a formated manor such as "10 minutes 34 seconds", whereas %time% will display the time in seconds such as "634".

Clone this wiki locally