Pular para o conteúdo principal

Zonas do Elite Script

Zonas são locais definidos por uma forma que podem ser usados como alvos por criadores de scripts para executar qualquer tipo de ação.

Apenas uma zona pode ser definida por script.

To target zones, the target type ZONE_FULL or ZONE_BORDER can be used.

Zones themselves also use Script Targets to define were the zone will appear.

shape

Define a forma da zona. Formas válidas:

Shape TypeDetailsAnimatableBorder
CYLINDERForma cilíndrica
SPHEREForma esférica
DOMEForma de cúpula (meia esfera)
CUBOIDForma de cuboide
STATIC_RAYUma linha fixa entre dois pontos
ROTATING_RAYUma linha giratória entre dois pontos
TRANSLATING_RAYUma linha que se move entre dois pontos iniciais e dois pontos finais
CONEForma de cone

Animável

Zonas com animações iniciam a animação da zona quando o script é chamado pela primeira vez.

This means that if an action has a wait time, when the action starts the zone has already been moving around while the action was waiting.

Zones are always animated on every tick. This means that if you use the SPAWN_PARTICLES action, you can set it to run every tick as the zone will be moving every tick. If you run every second, you will see the particles jumping around as the zone kept moving even on ticks where particles were not spawned.

If you want to make a rotating zone action but want to wait for a set amount of ticks before starting the action, make that a different script and call that script through RUN_SCRIPT. Make sure the RUN_SCRIPT has the wait time you want.

As zonas permanecerão no local final após o término da animação.

All animatable zones are set to not track on the script targets since the extra movement would make things too hard to understand for scripters and players. This means that these zones will not follow bosses or players around and will always move relative to their initial spawn points.


Borda

Certain zones can have borders. Borders mean that ZONE_BORDER can be used as the target of the zone. Borders are defined by creating a second, smaller shape inside the first, larger shape. The area between the smaller zone and the larger zone is the border.

Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CYLINDER
radius: 4
borderRadius: 3
height: 8
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: SMOKE_LARGE
Target:
targetType: ZONE_BORDER
repeatEvery: 5
times: 20

elitescript_zones_border.jpg

This script makes smoke particles that only appear in the zone border for 5 seconds (repeat every 5 x times 20 = 100 ticks).

If you did not use the ZONE_BORDER option but the ZONE_FULL option instead then the entire zone would be covered in smoke particles like this:

elitescript_zones_borderfull.jpg


SPHERE

KeyDetailsMandatory
shapeSets the shape of the zone. Should be SPHERE
targetSets the location for the center of the sphere
filterSets which types of entities get targeted
radiusRadius of the sphere
borderRadiusRadius of the inner sphere
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: SPHERE
radius: 4
borderRadius: 3
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

elitescript_zones_sphere.jpg

Este script demonstra a forma de uma esfera usando partículas de nuvem.


DOME

KeyDetailsMandatory
shapeSets the shape of the zone. Should be DOME
targetSets the location for the center of the dome
filterSets which types of entities get targeted
radiusRadius of the dome
borderRadiusRadius of the inner dome
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: DOME
radius: 4
borderRadius: 3
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

elitescript_zones_dome.jpg

Este script demonstra a forma de uma cúpula usando partículas de nuvem.


CONE

KeyDetailsMandatory
shapeSets the shape of the zone. Should be CONE
targetSets the location for the apex (tip) of the cone
target2Sets the location for the center of the base of the cone
filterSets which types of entities get targeted
radiusRadius of the base of the cone
borderRadiusRadius of the inner cone
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CONE
radius: 10
Target:
targetType: SELF
offset: 0,0,0
Target2:
targetType: SELF
offset: 0,10,0
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
coverage: 0.8
repeatEvery: 5
times: 20

This script demonstrates the shape of a cone using cloud particles. Keep in mind that this zone is a CONE shape, meaning it is a 3D volume, important to consider if you're aiming to create sweep effects.


CYLINDER

KeyDetailsMandatory
shapeSets the shape of the zone. Should be CYLINDER
targetSets the location for the center of the cylinder
filterSets which types of entities get targeted
radiusRadius of the cylinder
borderRadiusRadius of the inner cylinder
heightHeight of the cylinder
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CYLINDER
radius: 4
borderRadius: 3
height: 8
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

elitescript_zones_cylinder.jpg

Este script demonstra a forma de um cilindro usando partículas de nuvem.


CUBOID

KeyDetailsMandatory
shapeSets the shape of the zone. Should be CUBOID
targetSets the location for the center of the cuboid
filterSets which types of entities get targeted
xSets the length of the cuboid
ySets the height of the cuboid
zSets the width of the cuboid, defaults to x
xBorderSets the length of the inner cuboid
yBorderSets the height of the inner cuboid
zBorderSets the width of the inner cuboid, defaults to x
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: CUBOID
x: 4
y: 4
z: 4
xBorder: 3
yBorder: 3
zBorder: 3
Target:
targetType: SELF
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

elitescript_zones_cuboid.jpg

Este script demonstra a forma de um cuboide usando partículas de nuvem.


STATIC_RAY

KeyDetailsMandatory
shapeSets the shape of the zone. Should be STATIC_RAY
targetSets the location for the first point of the line
target2Sets the location for the last point of the line
filterSets which types of entities get targeted
ignoresSolidBlocksSets if the ray will pass through solid blocks. Defaults to true
pointRadiusSets the thickness of the ray. Default is 0.5 blocks.
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: STATIC_RAY
Target2:
targetType: DIRECT_TARGET
offset: 0,1,0
Target:
targetType: SELF
offset: 0,1,0
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 5
times: 20

elitescript_zones_staticray.jpg

Este script demonstra a forma de um raio estático usando partículas de nuvem.

We have adjusted the height of the zone by using the offset option on both ends of the zone to make the ray appear from the middle of the player and the boss, otherwise the ray would appear at their feet.


ROTATING_RAY

KeyDetailsMandatory
shapeSets the shape of the zone. Should be ROTATING_RAY
filterSets which types of entities get targeted
targetSets the location for the first point of the line
target2Sets the location for the last point of the line
animationDurationSets, in ticks, the amount of time for the rotation
pitchPreRotationApplies an initial rotation to the pitch before the animation
yawPreRotationApplies an initial rotation to the yaw before the animation
pitchRotationSets the pitch rotation for the animation
yawRotationSets the yaw rotation for the animation
ignoresSolidBlocksSets if the ray will pass through solid blocks. Defaults to true
pointRadiusSets the thickness of the ray. Default is 0.5 blocks.
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: ROTATING_RAY
animationDuration: 100
pitchPrerotation: 0
yawPrerotation: 0
pitchRotation: 0
yawRotation: 360
ignoresSolidBlocks: true
Target:
targetType: SELF
offset: 0,1,0
Target2:
targetType: DIRECT_TARGET
offset: 0,1,0
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 1
times: 100

elitescript_zones_rotatingray.gif

Este script mostra como um raio giratório se parece usando partículas de nuvem.

First, it creates a ray from the boss to the player who harmed it, using cloud particles. Then, it adjusts the positions slightly upward by one block using offset.

Next, it spins the ray in a full circle around the player who was targeted. This rotation lasts for 5 seconds (100 ticks) to complete, with the targeted player as the center.


TRANSLATING_RAY

KeyDetailsMandatory
shapeSets the shape of the zone. Should be TRANSLATING_RAY
filterSets which types of entities get targeted
animationDurationSets, in ticks, the amount of time for the translation
targetSets the location for the first point of the line
finalTargetSets the location of the destination for the first point of the line
target2Sets the location for the second point of the line
finalTarget2Sets the location of the destination for the second point of the line
ignoresSolidBlocksSets if the ray will pass through solid blocks. Defaults to true
pointRadiusSets the thickness of the ray. Default is 0.5 blocks.
Exemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Zone:
shape: TRANSLATING_RAY
Target:
targetType: SELF
FinalTarget:
targetType: SELF
offset: 0,10,0
Target2:
targetType: DIRECT_TARGET
FinalTarget2:
targetType: DIRECT_TARGET
offset: 0,10,0
animationDuration: 100
ignoresSolidBlocks: true
Actions:
- action: SPAWN_PARTICLE
particles:
- particle: CLOUD
Target:
targetType: ZONE_FULL
repeatEvery: 1
times: 100

elitescript_zones_translatingray.gif

Este script mostra como um raio em movimento se parece usando partículas de nuvem.

First, it creates a ray from the boss to the player who harmed it, using cloud particles.

Then, it animates the ray to go upwards 10 blocks from both targets using the offset on the FinalTarget1 and FinalTarget2.

The animation takes 5 seconds (100 ticks) to complete.

We can easily make the ray move sideways by adjusting the Z offset to something like offset: 0,0,10:

elitescript_zones_translatingray2.gif

This behavior might change depending on where you're facing in the game.
If we modify the X offset in the script shown in the GIF image, the ray would appear to move away from us in a straight line from our perspective.


filter

The filter property can be used to only target specific entities inside of the zone. These entities can be:

ValueDetails
PLAYERApenas mira em jogadores na zona (padrão)
ELITEApenas mira em elites na zona
LIVINGMira em todas as entidades vivas na zona
Exemplo
eliteScript:
FilterExample:
Events:
- PlayerDamagedByEliteMobEvent
Zone:
shape: SPHERE
radius: 12
borderRadius: 11
filter: ELITE
Target:
targetType: SELF
track: false

This example script shows how to use the filter to make the zone only target elites.