Denizen Script Object Types


Object Types are the fundamental types of data passed around in a Denizen script, often seen as the return type of a tag.
Learn about how objects work in The Beginner's Guide.


Showing all 72 object types...

Categories:

Pseudo ObjectType | Core | External



Category: Pseudo ObjectType


NameAreaObject
PrefixNone
Identity FormatN/A
Description"AreaObject" is a pseudo-ObjectType that represents any object that indicates a world-space area, such as a CuboidTag.
MatchableAreaObject matchers (applies to CuboidTag, EllipsoidTag, PolygonTag, ...), sometimes identified as "<area>":
"cuboid" plaintext: matches if the area is a CuboidTag.
"ellipsoid" plaintext: matches if the area is an EllipsoidTag.
"polygon" plaintext: matches if the area is a PolygonTag.
"area_flagged:<flag>": a Flag Matchable for AreaObject flags.
Area note name: matches if the AreaObject's note name matches the given advanced matcher.
Extended ByCuboidTag, EllipsoidTag, PolygonTag
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/AreaContainmentObject.java#L28

NameFlaggableObject
PrefixNone
Identity FormatN/A
Description"FlaggableObject" is a pseudo-ObjectType that represents any type of object that can hold flags,
for use with Command:flag or any other flag related tags and mechanisms.

Just because an ObjectType implements FlaggableObject, does not mean a specific instance of that object type is flaggable.
For example, LocationTag implements FlaggableObject, but a LocationTag-Vector (a location without a world) cannot hold a flag.
Extended ByGriefPreventionClaimTag, NationTag, TownTag, DiscordBotTag, DiscordChannelTag, DiscordCommandTag, DiscordGroupTag, DiscordInteractionTag, DiscordMessageTag, DiscordReactionTag, DiscordRoleTag, DiscordUserTag, BiomeTag, ChunkTag, CuboidTag, EllipsoidTag, EnchantmentTag, EntityTag, InventoryTag, ItemTag, LocationTag, MaterialTag, NPCTag, PlayerTag, PluginTag, PolygonTag, WorldTag, QueueTag, ScriptTag, TimeTag
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/flags/FlaggableObject.java#L7

NameObjectTag
PrefixNone
Identity FormatN/A
Description"ObjectTag" is a pseudo-ObjectType that represents the fundamental root of all object types.
If a tag says it returns an "ObjectTag", that means it can return any type of tag
(for example MapTag.get[...] returns an object of ... well, whatever type the value happens to be, so it's simply documented as "ObjectTag").
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/ObjectTag.java#L14

NamePropertyHolderObject
PrefixNone
Identity FormatN/A
Description"PropertyHolderObject" is a pseudo-ObjectType that represents any object that holds properties.
Extended ByEntityTag, InventoryTag, ItemTag, MaterialTag, TradeTag
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/properties/PropertyParser.java#L449

Nameserver
PrefixNone
Identity FormatN/A
Description"server" is an internal pseudo-ObjectType that is used as a mechanism adjust target for some global mechanisms.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/tags/core/ServerTagBase.java#L82

Namesystem
PrefixNone
Identity FormatN/A
Description"system" is an internal pseudo-ObjectType that is used as a mechanism adjust target for some core mechanisms.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/tags/core/UtilTagBase.java#L32

NameVectorObject
PrefixNone
Identity FormatN/A
Description"VectorObject" is a pseudo-ObjectType that represents any object that indicates a 3D vector, such as a LocationTag.
Extended ByLocationTag
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/VectorObject.java#L12

Namebungee
PrefixNone
Identity FormatN/A
Description"bungee" is an internal pseudo-ObjectType that is used as a mechanism adjust target for some global mechanisms.
RequiresDepenizen, DepenizenBungee, BungeeCord
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/bungee/BungeeBridge.java#L237



Category: Core


NameBinaryTag
Prefixbinary@
Base TypeElementTag
Identity FormatThe identity format for BinaryTag is a hex encoding of the byte set, in order.
Each byte is encoded as an individual big-endian hexadecimal pair, like "FF" for byte=255, "00" for byte=0, "0F" for 15, "F0" for 240, ... etc.
DescriptionBinaryTags represent raw binary data in Denizen.
This is useful in particular for file or network interop.
Generally you should only be interacting with BinaryTag if you have a specific reason to, otherwise there are usually more appropriate types to use.
Most content you'll come across will be encoded in a text-based format, not a binary one.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/BinaryTag.java#L31

NameBiomeTag
Prefixb@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for biomes is a world name, then a comma, then the biome key. For example: 'hub,desert', or 'space,minecraft:desert'.
DescriptionA BiomeTag represents a world biome type. Vanilla biomes are globally available, however some biomes are world-specific when added by datapacks.

A list of all vanilla biomes can be found at 🔗https://minecraft.wiki/w/Biome#Biome_IDs.

BiomeTags without a specific world will work as though they are in the server's default world.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__biomes"
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/BiomeTag.java#L33

NameChunkTag
Prefixch@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for chunks is <x>,<z>,<world>
For example, 'ch@5,3,world'.
DescriptionA ChunkTag represents a chunk in the world.

Note that the X/Z pair are chunk coordinates, not block coordinates.
To convert from block coordinates to chunk coordinates, divide by 16 and round downward.
Note that negative chunks are one unit lower than you might expect.
To understand why, simply look at chunks on a number line...
x x x x x
-2 -1 b 0 a 1 2
The block 'a' at block position '1' is in chunk '0', but the block 'b' at block position '-1' is in chunk '-1'.
As otherwise (if 'b' was in chunk '0'), chunk '0' would be double-wide (32 blocks wide instead of the standard 16).

For example, block at X,Z 32,67 is in the chunk at X,Z 2,4
And the block at X,Z -32,-67 is in the chunk at X,Z -2,-5

This object type is flaggable.
Flags on this object type will be stored in the chunk file inside the world folder.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/ChunkTag.java#L33

NameColorTag
Prefixco@
Base TypeElementTag
Identity FormatThe identity format for colors is <red>,<green>,<blue> or <red>,<green>,<blue>,<alpha> or the name of a color.
When using the numeric form, the number must be between 0 and 255, where 0 is least bright and 255 is most bright.
For example, 'co@50,64,128' or 'co@255,0,0,128' or 'co@red'.
DescriptionA ColorTag represents an RGBA color code.

Note that a ColorTag is NOT a base dye color (used by wool, etc). That is handled by a separate naming system.

Constructing a ColorTag also accepts 'random' to pick a random RGB color,
or 'transparent' to return 0,0,0,0
or RGB hex code like '#FF00FF',
or RGBA hex codes like '#FF00FF80',
or valid minecraft chat color codes (hex or historical codes).

A list of accepted color names can be found at Tag:util.color_names.

Red/green/blue/alpha values are each from 0 to 255.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/ColorTag.java#L20

NameCuboidTag
Prefixcu@
Base TypeElementTag
ImplementsFlaggableObject, AreaObject
Identity FormatThe identity format for cuboids is <world>,<x1>,<y1>,<z1>,<x2>,<y2>,<z2>
Multi-member cuboids can simply continue listing x,y,z pairs.
For example, 'cu@space,1,2,3,4,5,6'.
DescriptionA CuboidTag represents a cuboidal region in the world.

The word 'cuboid' means a less strict cube.
Basically: a "cuboid" is to a 3D "cube" what a "rectangle" is to a 2D "square".

One 'cuboid' consists of two points: the low point and a high point.
a CuboidTag can contain as many cuboids within itself as needed (this allows forming more complex shapes from a single CuboidTag).

Note that the coordinates used are inclusive, meaning that a CuboidTag always includes the blocks identified as the low and high corner points.
This means for example that a cuboid from "5,5,5" to "5,5,5" will contain one full block, and have a size of "1,1,1".

This object type can be noted.

This object type is flaggable when it is noted.
Flags on this object type will be stored in the notables.yml file.
MatchableRefer to ObjectType:areaobject's matchable list.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/CuboidTag.java#L35

NameCustomObjectTag
Prefixcustom@
Base TypeElementTag
Identity FormatThe identity format for custom objects is the script name, followed by property syntax listing all fields with their values.
DescriptionCustom objects are custom object types.
They use a script basis to create an object similar to the base object types (ListTag, PlayerTags, etc).

Usage of these should generally be avoided, as they can be considered 'over-engineering'...
That is, using a very complicated solution to solve a problem that can be solved much more simply.

Custom objects exist for experimental reasons. Do not use these in any real scripts.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/CustomObjectTag.java#L19

NameDurationTag
Prefixd@
Base TypeElementTag
Identity FormatThe identity format for DurationTags is the number of seconds, followed by an 's'.
DescriptionDurations are a unified and convenient way to get a 'unit of time' throughout Denizen.
Many commands and features that require a duration can be satisfied by specifying a number and unit of time, especially command arguments that are prefixed 'duration:', etc.
The unit of time can be specified by using one of the following:
t=ticks (0.05 seconds), s=seconds, m=minutes (60 seconds), h=hours (60 minutes), d=days (24 hours), w=weeks (7 days), y=years (365 days).
Not using a unit will imply seconds.
Examples: 10s, 50m, 1d, 20.

Specifying a range of duration will result in a randomly selected duration that is in between the range specified.
The smaller value should be first. Examples: '10s-25s', '1m-2m'.

The input of 'instant' or 'infinite' will be interpreted as 0 (for use with commands where instant/infinite logic applies).
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/DurationTag.java#L19

NameElementTag
Prefixel@
Identity FormatJust the plain text of the element value, no prefix or formatting.
DescriptionElementTags are simple objects that contain a simple bit of text.
Their main usage is within the replaceable tag system,
often times returned from the use of another tag that isn't returning a specific object type, such as a location or entity.
For example, <player.name> or <list[item1|item2|item3].comma_separated> will both return ElementTags.

Pluses to the ElementTag system is the ability to utilize its tag attributes,
which can provide a range of functionality that should be familiar from any other programming language,
such as 'to_uppercase', 'split', 'replace', 'contains', and many more.
See 'ElementTag.*' tags for more information.

While information fetched from other tags resulting in an ElementTag is often times automatically handled,
it may be desirable to utilize element attributes from text/numbers/etc. that aren't already an element object.
To accomplish this, the standard 'element' tag base can be used for the creation of a new element.
For example: <element[This_is_a_test].to_uppercase>
will result in the value 'THIS_IS_A_TEST'.

Note that while other objects often return their object identifier (p@, li@, e@, etc.), elements usually do not (except special type-validation circumstances).
They will, however, recognize the object notation "el@" if it is used.
MatchableElementTag matchers, often used as a default when other object types aren't available
"integer": plaintext: matches if the element is an integer number.
"decimal": plaintext: matches if the element is a decimal number.
"boolean": plaintext: matches if the element is a valid boolean ("true" or "false").
Extended ByAreaShopTag, BigDoorsDoorTag, FactionTag, GriefPreventionClaimTag, JobsJobTag, LibsDisguiseTag, LuckPermsGroupTag, LuckPermsTrackTag, PartyTag, MobArenaArenaTag, MythicMobsMobTag, MythicSpawnerTag, PlotSquaredPlotTag, PVPArenaArenaTag, ResidenceTag, ShopKeeperTag, SkillAPIClassTag, NationTag, TownTag, ViveCraftPlayerTag, WorldGuardRegionTag, DiscordBotTag, DiscordButtonTag, DiscordChannelTag, DiscordCommandTag, DiscordEmbedTag, DiscordGroupTag, DiscordInteractionTag, DiscordMessageTag, DiscordReactionTag, DiscordRoleTag, DiscordSelectionTag, DiscordTextInputTag, DiscordUserTag, BiomeTag, ChunkTag, CuboidTag, EllipsoidTag, EnchantmentTag, EntityTag, InventoryTag, ItemTag, LocationTag, MaterialTag, PluginTag, PolygonTag, TradeTag, WorldTag, BinaryTag, ColorTag, CustomObjectTag, DurationTag, ImageTag, JavaReflectedObjectTag, ListTag, MapTag, QuaternionTag, QueueTag, ScriptTag, SecretTag, TimeTag
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/ElementTag.java#L28

NameEllipsoidTag
Prefixellipsoid@
Base TypeElementTag
ImplementsFlaggableObject, AreaObject
Identity FormatThe identity format for ellipsoids is <x>,<y>,<z>,<world>,<x-radius>,<y-radius>,<z-radius>
For example, 'ellipsoid@1,2,3,space,7,7,7'.
DescriptionAn EllipsoidTag represents an ellipsoidal region in the world.

The word 'ellipsoid' means a less strict sphere.
Basically: an "ellipsoid" is to a 3D "sphere" what an "ellipse" (or "oval") is to a 2D "circle".

This object type can be noted.

This object type is flaggable when it is noted.
Flags on this object type will be stored in the notables.yml file.
MatchableRefer to ObjectType:areaobject's matchable list.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/EllipsoidTag.java#L29

NameEnchantmentTag
Prefixenchantment@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for enchantments is the vanilla ID, Denizen ID, or full key. Can also be constructed by Denizen script name.
For example, 'enchantment@sharpness', 'enchantment@my_custom_ench', or 'enchantment@otherplugin:customench'.
DescriptionAn EnchantmentTag represents an item enchantment abstractly (the enchantment itself, like 'sharpness', which *can be* applied to an item, as opposed to the specific reference to an enchantment on a specific item).
For enchantment names, check 🔗https://minecraft.wiki/w/Enchanting#Summary_of_enchantments. Note spaces should swapped to underscores, so for example "Aqua Affinity" becomes "aqua_affinity".

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__enchantments"
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/EnchantmentTag.java#L28

NameEntityTag
Prefixe@
Base TypeElementTag
ImplementsFlaggableObject, PropertyHolderObject
Identity FormatThe identity format for entities is a spawned entity's UUID, or an entity type.
For example, 'e@abc123' or 'e@zombie'.
DescriptionAn EntityTag represents a spawned entity, or a generic entity type.

Note that players and NPCs are valid EntityTags, but are generally represented by the more specific
PlayerTag and NPCTag objects.

Note that a spawned entity can be a living entity (a player, NPC, or mob) or a nonliving entity (a painting, item frame, etc).

This object type is flaggable.
Flags on this object type will be stored in the world chunk files as a part of the entity's NBT.
MatchableEntityTag matchers, sometimes identified as "<entity>", "<projectile>", or "<vehicle>":
"entity" plaintext: always matches.
"player" plaintext: matches any real player (not NPCs).
"npc" plaintext: matches any Citizens NPC.
"vehicle" plaintext: matches for any vehicle type (minecarts, boats, horses, etc).
"fish" plaintext: matches for any fish type (cod, pufferfish, etc).
"projectile" plaintext: matches for any projectile type (arrow, trident, fish hook, snowball, etc).
"hanging" plaintext: matches for any hanging type (painting, item_frame, etc).
"monster" plaintext: matches for any monster type (creepers, zombies, etc).
"animal" plaintext: matches for any animal type (pigs, cows, etc).
"mob" plaintext: matches for any mob type (creepers, pigs, etc).
"living" plaintext: matches for any living type (players, pigs, creepers, etc).
"vanilla_tagged:<tag_name>": matches if the given vanilla tag applies to the entity. Allows advanced matchers, for example: "vanilla_tagged:axolotl_*".
"entity_flagged:<flag>": a Flag Matchable for EntityTag flags.
"player_flagged:<flag>": a Flag Matchable for PlayerTag flags (will never match non-players).
"npc_flagged:<flag>": a Flag Matchable for NPCTag flags (will never match non-NPCs).
"npc_<type>": matches if the NPC is the given entity type (like "npc_cow" or "npc_mob" or "npc_player").
Any entity type name: matches if the entity is of the given type, using advanced matchers.
Extended ByNPCTag, PlayerTag
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/EntityTag.java#L68

NameImageTag
Prefiximage@
Base TypeElementTag
Identity FormatThe identity format for ImageTag is a hex encoding of the image's raw bytes, in order.
Each byte is encoded as an individual big-endian hexadecimal pair, like "FF" for byte=255, "00" for byte=0, "0F" for 15, "F0" for 240, ... etc.
Alternatively, an image's identity format can be an image id (from images loaded in with Command:Image), see description for more information.
DescriptionImageTags represent an image of any supported format.
They are represented by either a hex encoding of their bytes or their image id, but new images can also be created by providing a MapTag with the following keys:
- "width": the new image's width, required.
- "height": the new image's height, required.
- "background": a ObjectType:ColorTag for the new image's background, optional.

For id-based images, the image will directly reference the image loaded in under that id, so for example:

- define image <image[drawing]>
- draw id:drawing pixel x:0 y:0 color:red
# The "image" definition has changed as well, since it's an id-based image and the image under that id was edited.

See Tag:ImageTag.copy for getting normal image objects from id-based ones.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/ImageTag.java#L30

NameInventoryTag
Prefixin@
Base TypeElementTag
ImplementsFlaggableObject, PropertyHolderObject
Identity FormatThe identity format for inventories is the classification type of inventory to use. All other data is specified through properties.
DescriptionAn InventoryTag represents an inventory, generically or attached to some in-the-world object.

Inventories can be generically designed using inventory script containers,
and can be modified using the inventory command.

Valid inventory type classifications:
"npc", "player", "crafting", "enderchest", "workbench", "entity", "location", "generic"

This object type can be noted.

This object type is flaggable when it is noted.
Flags on this object type will be stored in the notables.yml file.
MatchableInventoryTag matchers, sometimes identified as "<inventory>":
"inventory" plaintext: always matches.
"note" plaintext: matches if the inventory is noted.
Inventory script name: matches if the inventory comes from an inventory script of the given name, using advanced matchers.
Inventory note name: matches if the inventory is noted with the given name, using advanced matchers.
Inventory type: matches if the inventory is of a given type, using advanced matchers.
"inventory_flagged:<flag>": a Flag Matchable for InventoryTag flags.
"gui" plaintext: matches if the inventory is a GUI (see Language:inventory script containers).
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/InventoryTag.java#L59

NameItemTag
Prefixi@
Base TypeElementTag
ImplementsFlaggableObject, PropertyHolderObject
Identity FormatThe identity format for items is the basic material type name, or an item script name. Other data is specified in properties.
For example, 'i@stick'.
DescriptionAn ItemTag represents a holdable item generically.

ItemTags are temporary objects, to actually modify an item in an inventory you must add the item into that inventory.

ItemTags do NOT remember where they came from. If you read an item from an inventory, changing it
does not change the original item in the original inventory. You must set it back in.

Find a list of valid materials at:
🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html
Note that some materials on that list are exclusively for use with blocks, and cannot be held as items.

This object type is flaggable.
Flags on this object type will be stored in the item NBT.
MatchableItemTag matchers, sometimes identified as "<item>", often seen as "with:<item>":
"potion": plaintext: matches if the item is any form of potion item.
"script": plaintext: matches if the item is any form of script item.
"item_flagged:<flag>": A Flag Matcher for item flags.
"item_enchanted:<enchantment>": matches if the item is enchanted with the given enchantment name (excluding enchantment books). Allows advanced matchers.
"raw_exact:<item>": matches based on exact raw item data comparison (almost always a bad idea to use).
Item property format: will validate that the item material matches and all directly specified properties also match. Any properties not specified won't be checked.
for example "stick[display=Hi]" will match any 'stick' with a displayname of 'hi', regardless of whether that stick has lore or not, or has enchantments or not, or etc.
Item script names: matches if the item is a script item with the given item script name, using advanced matchers.
If none of the above are used, uses MaterialTag matchables. Refer to MaterialTag matchable list above.
Note that "item" plaintext is always true.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/ItemTag.java#L56

NameJavaReflectedObjectTag
Prefixreflected@
Base TypeElementTag
Identity FormatThe identity format for JavaReflectedObjectTag is a random UUID that is associated with a temporary lookup to reduce reparsing risk.
DescriptionJavaReflectedObjectTag represent raw Java objects for reflection-based interactions in Denizen.
This is only useful in certain interop edge cases, and should usually be avoided.
They have no persistent identity, and instead only use a temporary generated UUID for the identity to allow reconstruction by lookup.
Two different JavaReflectedObjectTag might simultaneously refer to the same underlying Java object, despite having different IDs.
A Java object should not be retained in flags or other long term storage, as they will necessarily become invalid quickly.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/JavaReflectedObjectTag.java#L18

NameListTag
Prefixli@
Base TypeElementTag
Identity FormatThe identity format for ListTags is each item, one after the other, in order, separated by a pipe '|' symbol.
For example, for a list of 'taco', 'potatoes', and 'cheese', it would be 'li@taco|potatoes|cheese|'
A list with zero items in it is simply 'li@',
and a list with one item is just the one item and a pipe on the end.

If the pipe symbol "|" appears in a list entry, it will be replaced by "&pipe",
similarly if an ampersand "&" appears in a list entry, it will be replaced by "&amp".
This is a subset of Denizen standard escaping, see Language:Escaping System.
DescriptionA ListTag is a list of any data. It can hold any number of objects in any order.
The objects can be of any Denizen object type, including another list.

List indices start at 1 (so, the tag 'get[1]' gets the very first entry)
and extend to however many entries the list has (so, if a list has 15 entries, the tag 'get[15]' gets the very last entry).

Inputs that accept list indices will generally accept 'first' to mean '1', 'last' to mean the last entry in the list,
or negative numbers to automatically select an index starting at the end - so for example 'get[-1]' gets the last entry, 'get[-2]' gets the second-to-last, etc.
Synonyms (Search Aid)arraytag
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/ListTag.java#L32

NameLocationTag
Prefixl@
Base TypeElementTag
ImplementsFlaggableObject, VectorObject
Identity FormatThe identity format for locations is <x>,<y>,<z>,<pitch>,<yaw>,<world>
Note that you can leave off the world, and/or pitch and yaw, and/or the z value.
You cannot leave off both the z and the pitch+yaw at the same time.
For example, 'l@1,2.15,3,45,90,space' or '[email protected],99,3.2'
DescriptionA LocationTag represents a point in the world.

Note that 'l' prefix is a lowercase 'L', the first letter in 'location'.

This object type is flaggable.
Flags on this object type will be stored in the chunk file inside the world folder.
MatchableLocationTag matchers, sometimes identified as "<location>" or "<block>":
"location" plaintext: always matches.
"block_flagged:<flag>": a Flag Matchable for location flags at the given block location.
"location_in:<area>": runs AreaObject checks, as defined below.
If none of the above are used, and the location is at a real block, a MaterialTag matchable is used. Refer to ObjectType:MaterialTag matchable list.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/LocationTag.java#L65

NameMapTag
Prefixmap@
Base TypeElementTag
Identity FormatThe identity format for MapTags is a replica of property syntax - square brackets surrounded a semi-colon separated list of key=value pairs.
For example, a map of "taco" to "food", "chicken" to "animal", and "bob" to "person" would be "map@[taco=food;chicken=animal;bob=person]"
A map with zero items in it is simply 'map@[]'.

If the semicolon symbol ";" appears in a key or value, it will be replaced by "&sc", an equal sign "=" will become "&eq",
a left bracket "[" will become "&lb", a right bracket "]" will become "&rb", and an ampersand "&" will become "&amp".
This is a subset of Denizen standard escaping, see Language:Escaping System.
DescriptionA MapTag represents a mapping of keys to values.
Keys are plain text, case-insensitive.
Values can be anything, even lists or maps themselves.

Any given key can only appear in a map once (ie, no duplicate keys).
Values can be duplicated into multiple keys without issue.

Order of keys is preserved. Casing in keys is preserved in the object but ignored for map lookups.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/MapTag.java#L25

NameMaterialTag
Prefixm@
Base TypeElementTag
ImplementsFlaggableObject, PropertyHolderObject
Identity FormatThe identity format for materials is the material type name.
For example, 'm@stick'.
DescriptionA MaterialTag represents a material (a type of block or item).

Block materials may sometimes also contain property data,
for specific values on the block material such as the growth stage of a plant or the orientation of a stair block.

Material types: 🔗https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__materials"
MatchableMaterialTag matchers, sometimes identified as "<material>", associated with "<block>":
"material" plaintext: always matches.
"block" plaintext: matches if the material is a block-type material.
"item" plaintext: matches if the material is an item-type material.
"material_flagged:<flag>": a Flag Matchable for MaterialTag flags.
"vanilla_tagged:<tag_name>": matches if the given vanilla tag applies to the material. Allows advanced matchers, for example: "vanilla_tagged:mineable*".
If none of the above are used, uses an advanced matcher for the material name, like "stick".
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/MaterialTag.java#L36

NameNPCTag
Prefixn@
Base TypeEntityTag
ImplementsFlaggableObject
Identity FormatThe identity format for NPCs is the NPC's id number.
For example, 'n@5'.
Or, an NPC's id number, followed by a comma, followed by a custom registry name.
For example 'n@12,specialnpcs'
DescriptionAn NPCTag represents an NPC configured through Citizens.

This object type is flaggable.
Flags on this object type will be stored in the Citizens saves.yml file, under the 'denizen_flags' trait.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/NPCTag.java#L51

NamePlayerTag
Prefixp@
Base TypeEntityTag
ImplementsFlaggableObject
Identity FormatThe identity format for players is the UUID of the relevant player.
DescriptionA PlayerTag represents a player in the game.

This object type is flaggable.
Flags on this object type will be stored in the file "plugins/Denizen/player_flags/(UUID).dat",
with automatic loading only when the player is online and caching for interacting with offline player flags.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/PlayerTag.java#L63

NamePluginTag
Prefixpl@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for plugins is the plugin's registered name.
For example, 'pl@Denizen'.
DescriptionA PluginTag represents a Bukkit plugin on the server.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__plugins"
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/PluginTag.java#L24

NamePolygonTag
Prefixpolygon@
Base TypeElementTag
ImplementsFlaggableObject, AreaObject
Identity FormatThe identity format for polygons is <world>,<y-min>,<y-max>,<x1>,<z1>,... (the x,z pair repeats for as many points as the polygon has).
DescriptionA PolygonTag represents a polygonal region in the world.

The word 'polygon' means an arbitrary 2D shape.
PolygonTags, in addition to a 2D polygon, contain a minimum and maximum Y coordinate, to allow them to function in 3D.

PolygonTags are NOT polyhedra.

A PolygonTag with 4 points at right angles would cover an area also possible to be defined by a CuboidTag, however all other shapes a PolygonTag can form are unique.

Compared to CuboidTags, PolygonTags are generally slower to process and more complex to work with, but offer the benefit of supporting more intricate shapes.

Note that forming invalid polygons (duplicate corners, impossible shapes, etc) will not necessarily give any error message, and may cause weird results.

This object type can be noted.

This object type is flaggable when it is noted.
Flags on this object type will be stored in the notables.yml file.
MatchableRefer to ObjectType:areaobject's matchable list.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/PolygonTag.java#L29

NameQuaternionTag
Prefixquaternion@
Base TypeElementTag
Identity FormatThe identity format for quaternions is <x>,<y>,<z>,<w>
For example "0,0,0,1" is the Identity quaternion.
You can input the word "identity" to get an identity quaternion as well.

You can also construct quaternions via tags such as Tag:VectorObject.to_axis_angle_quaternion or Tag:VectorObject.quaternion_between_vectors.
DescriptionA QuaternionTag represents a 3D rotation in an advanced mathematical format.
These are only useful in certain obscure cases, such as Display entities.
They have some useful capabilities, such as preventing 'gimbal lock' (a phenomenon where repeatedly rotating something eventually stops working).
See 🔗https://en.wikipedia.org/wiki/Quaternion for more info about what a quaternion actually is.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/QuaternionTag.java#L16

NameQueueTag
Prefixq@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for queues is simply the queue ID.
DescriptionA QueueTag is a single currently running set of script commands.
This is not to be confused with a script path, which is a single set of script commands that can be run.
There can be one, multiple, or zero queues running at any time for any given path.

This object type is flaggable.
Flags on this object type will be reinterpreted as definitions.
Flags on queues should just not be used. Use definitions directly.
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/QueueTag.java#L21

NameScriptTag
Prefixs@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for scripts is simply the script name.
DescriptionAn ObjectTag that represents a script container. ScriptTags contain all information inside the script,
and can be used in a variety of commands that require script arguments.
For example, run and inject will 'execute' script entries inside of a script container when given a matching ScriptTag object.

ScriptTags also provide a way to access attributes accessed by the replaceable tag system by using the object fetcher or any other entry point to a ScriptTag object.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__scripts"
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/ScriptTag.java#L84

NameSecretTag
Prefixsecret@
Base TypeElementTag
Identity FormatThe identity format for secrets is simply the secret key (as defined by the file 'secrets.secret' in the Denizen folder).
DescriptionA SecretTag represents a value that should never be exposed to logs or tags.
For example: authorization tokens, API keys, etc.

A SecretTag is made of a 'key', and a 'value'.
The key is a simple name, like 'my_bot_token', that is safe to show in logs/etc.
The value is the actual internal data that must be kept secret, often a generated code.

The keys and values must be defined in the 'secrets.secret' file inside the Denizen folder.
The contents of that file would look something like:
!SECRETS_FILE
my_bot_token: abc123.123abc
my_api_key: 1a2b3c4d5e6f

The above example defines SecretTag 'my_bot_token' as 'abc123.123abc',
meaning you could then use '<secret[my_bot_token]>' in the input to a command that parses secrets to have it understand the real value to input should be 'abc123.123abc'
However if you use the same tag in for example a narrate command, it would just narrate 'secret@my_bot_token', keeping your real value safe.
Note that the "!SECRETS_FILE" prefix cannot be removed, but comments can be added/removed/altered freely with a "#" prefix.

Commands that accept SecretTag inputs will document that information in the command meta. For example, see Command:webget.

There is intentionally no tag that can read the value of a secret.

You can reload the secrets file via "/ex reload config"
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/SecretTag.java#L48

NameTimeTag
Prefixtime@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for TimeTags is "yyyy/mm/dd_hh:mm:ss:mill_offset"
So, for example, 'time@2020/05/23_02:20:31:123_-07:00'
DescriptionA TimeTag represents a real world date/time value.

TimeTags can also be constructed from 'yyyy/mm/dd', 'yyyy/mm/dd_hh:mm:ss', or 'yyyy/mm/dd_hh:mm:ss:mill'.
(Meaning: the offset is optional, the milliseconds are optional, and the time-of-day is optional,
but if you exclude an optional part, you must immediately end the input there, without specifying more).

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__time"
Sourcehttps://github.com/DenizenScript/Denizen-Core/blob/master/src/main/java/com/denizenscript/denizencore/objects/core/TimeTag.java#L25

NameTradeTag
Prefixtrade@
Base TypeElementTag
ImplementsPropertyHolderObject
Identity FormatThe identity format for trades is just the text 'trade'. All other data is specified through properties.
DescriptionMerchant trades are the parts of a special merchant inventory that is typically viewed by right clicking
a villager entity. Any number of trades can fit in a single merchant inventory.

Trades are represented by TradeTags.

The properties that can be used to customize a merchant trade are:

result=<item>
inputs=<item>(|<item>)
uses=<number of uses>
max_uses=<maximum number of uses>
has_xp=true/false

For example, the following command opens a virtual merchant inventory with two merchant trades.
The first trade offers a sponge for two emeralds, can be used up to 10 times,
and offers XP upon a successful transaction.
The second trade has zero maximum uses and displays a barrier.

- opentrades trade[max_uses=10;inputs=emerald[quantity=2];result=sponge]|trade[result=barrier]
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/TradeTag.java#L17

NameWorldTag
Prefixw@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for worlds is the name of the world it should be associated with.
For example, to reference the world named 'world1', use simply 'world1'.
World names are case insensitive.
DescriptionA WorldTag represents a world on the server.

This object type is flaggable.
Flags on this object type will be stored in the world folder in a file named 'denizen_flags.dat', like "server/world/denizen_flags.dat".
MatchableWorldTag matchers, sometimes identified as "<world>":
"world" plaintext: always matches.
World name: matches if the world has the given world name, using advanced matchers.
"world_flagged:<flag>": a Flag Matchable for WorldTag flags.
Sourcehttps://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/objects/WorldTag.java#L42



Category: External


NameAreaShopTag
Prefixareashop@
Base TypeElementTag
Identity FormatThe identity format for shops is <shop_name>
For example, 'areashop@my_shop'.
DescriptionAn AreaShopTag represents an AreaShop shop.
RequiresDepenizen, AreaShop
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/areashop/AreaShopTag.java#L19

NameBigDoorsDoorTag
Prefixbigdoor@
Base TypeElementTag
Identity FormatThe identity format for a door is it's Door ID as a number. NOT the name of the door you have set.
For example, 'bigdoor@1'.
DescriptionA BigDoorsDoorTag represents a Big Doors door.
RequiresDepenizen, Big Doors
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/bigdoors/BigDoorsDoorTag.java#L20

NameDiscordBotTag
Prefixdiscord@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord bots is the bot ID (as chosen in Command:discord).
For example: mybot
DescriptionA DiscordBotTag is an object that represents a Discord bot powered by dDiscordBot.

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordBotTag.java#L19

NameDiscordButtonTag
Prefixdiscordbutton@
Base TypeElementTag
Identity FormatThe identity format for Discord button is a map of button data. Do not alter raw button data, use the with.as tag instead.
DescriptionA DiscordButtonTag is an object that represents a Discord button for use with dDiscordBot.
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordButtonTag.java#L22

NameDiscordChannelTag
Prefixdiscordchannel@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord channels is the bot ID (optional), followed by the channel ID (required).
For example: 1234
Or: mybot,1234
DescriptionA DiscordChannelTag is an object that represents a channel (text or voice) on Discord, either as a generic reference,
or as a bot-specific reference (the relevant guild is inherently linked, and does not need to be specified).

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__channels"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordChannelTag.java#L28

NameDiscordCommandTag
Prefixdiscordcommand@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord commands is the bot ID (optional), followed by the guild ID (optional), followed by the command ID (required).
For example: 1234
Or: 12,1234
Or: mybot,12,1234
DescriptionA DiscordCommandTag is an object that represents a created slash command on Discord, as a bot-specific reference.

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__commands"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordCommandTag.java#L25

NameDiscordEmbedTag
Prefixdiscordembed@
Base TypeElementTag
Identity FormatThe identity format for Discord embeds is a map of embed data.
The map matches the key set documented at Tag:DiscordEmbedTag.with.as, along with a "fields" key as a ListTag of MapTags with keys "title", "value", and "inline".
DescriptionA DiscordEmbedTag is an object that represents a Discord embed for use with dDiscordBot.
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordEmbedTag.java#L21

NameDiscordGroupTag
Prefixdiscordgroup@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord groups is the bot ID (optional), followed by the guild ID (required).
For example: 1234
Or: mybot,1234
DescriptionA DiscordGroupTag is an object that represents a group on Discord, either as a generic reference,
or as a bot-specific reference.

Note that the correct name for what we call here a 'group' is inconsistent between different people.
The Discord API calls it a "guild" (for historical reasons, not called that by *people* anymore usually),
messages in the Discord app call it a "server" (which is a convenient name but is factually inaccurate, as they are not servers),
many people will simply say "a Discord" (which is awkward for branding and also would be confusing if used in documentation).
So we're going with "group" (which is still confusing because "group" sometimes refers to DM groups, but... it's good enough).

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__guilds"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordGroupTag.java#L27

NameDiscordInteractionTag
Prefixdiscordinteraction@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord interactions is the bot ID, followed by the interaction ID.
For example: mybot,5678
DescriptionA DiscordInteractionTag is an object that represents an interaction on Discord, either as a generic reference, or as a bot-specific reference.
Interactions are temporary - they only exist for 15 minutes.

This object type is flaggable.
Flags on this object type will be stored in temporary memory.
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordInteractionTag.java#L28

NameDiscordMessageTag
Prefixdiscordmessage@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord messages is the bot ID (optional), followed by the channel ID (optional), followed by the message ID (required).
For example: 1234
Or: 12,1234
Or: mybot,12,1234
DescriptionA DiscordMessageTag is an object that represents a message already sent on Discord, either as a generic reference,
or as a bot-specific reference.
Note that this is not used for messages that *are going to be* sent.
Note that this often does not contain data for messages that have been deleted (unless that data is cached).

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__messages"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordMessageTag.java#L26

NameDiscordReactionTag
Prefixdiscordreaction@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord reactions is the bot ID, followed by the channel ID, followed by the message ID, followed by the reaction ID.
Or: mybot,12,1234,99
The reaction ID for custom reactions is an ID number, and for default emojis is the unicode text format of the emoji.
DescriptionA DiscordReactionTag is an object that represents a reaction to a message already sent on Discord, as a generic reference.

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__reactions"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordReactionTag.java#L27

NameDiscordRoleTag
Prefixdiscordrole@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord roles is the bot ID (optional), followed by the guild ID (optional), followed by the role ID (required).
For example: 4321
Or: 1234,4321
Or: mybot,1234,4321
DescriptionA DiscordRoleTag is an object that represents a role on Discord, either as a generic reference,
or as a guild-specific reference, or as a bot+guild-specific reference.

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__roles"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordRoleTag.java#L26

NameDiscordSelectionTag
Prefixdiscordselection@
Base TypeElementTag
Identity FormatThe identity format for Discord selection menu is a map of menu data. Do not alter raw menu data, use the with.as tag instead.
DescriptionA DiscordSelectionTag is an object that represents a Discord selection menu for use with dDiscordBot.
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordSelectionTag.java#L24

NameDiscordTextInputTag
Prefixdiscordtextinput@
Base TypeElementTag
Identity FormatThe identity format for Discord text input is a map of relevant data. Do not alter raw text input data, use the with.as tag instead.
DescriptionA DiscordTextInputTag is an object that represents a Discord text input for use with dDiscordBot.
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordTextInputTag.java#L21

NameDiscordUserTag
Prefixdiscorduser@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for Discord users is the bot ID (optional), followed by the user ID (required).
For example: 1234
Or: mybot,1234
DescriptionA DiscordUserTag is an object that represents a user (human or bot) on Discord, either as a generic reference,
or as a bot-specific reference.

This object type is flaggable.
Flags on this object type will be stored in: plugins/dDiscordBot/flags/bot_(botname).dat, under special sub-key "__users"
RequiresdDiscordBot
Sourcehttps://github.com/DenizenScript/dDiscordBot/blob/master/src/main/java/com/denizenscript/ddiscordbot/objects/DiscordUserTag.java#L28

NameFactionTag
Prefixfaction@
Base TypeElementTag
Identity FormatThe identity format for factions is <faction_name>
For example, 'faction@my_faction'.
DescriptionA FactionTag represents a Factions faction.
RequiresDepenizen, Factions
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/factions/FactionTag.java#L22

NameGriefPreventionClaimTag
Prefixgpclaim@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for claims is <claim_id>
For example, 'gpclaim@1234'.
DescriptionA GriefPreventionClaimTag represents a GriefPrevention claim.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__depenizen_gp_claims_id"
RequiresDepenizen, GriefPrevention
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/griefprevention/GriefPreventionClaimTag.java#L27

NameJobsJobTag
Prefixjob@
Base TypeElementTag
Identity FormatThe identity format for jobs is the player UUID (optional), followed by the job name
For example: job@460e96b9-7a0e-416d-b2c3-4508164b8b1b,job_name
Or: job@job_name
DescriptionA JobsJobTag represents a Jobs job, with a player's progression if specified.
MatchableJobsJobTag matchers, sometimes identified as "<job>":
"job" plaintext: always matches.
Job name: matches if the job name matches the input, using advanced matchers.
RequiresDepenizen, Jobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/jobs/JobsJobTag.java#L26

NameLibsDisguiseTag
Prefixlibsdisguise@
Base TypeElementTag
Identity FormatThe identity format for disguises is <disguise_name>
For example, 'libsdisguise@zombie'.
DescriptionA LibsDisguiseTag represents a LibsDisguises disguise type.
RequiresDepenizen, LibsDisguises
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/libsdisguises/LibsDisguiseTag.java#L17

NameLuckPermsGroupTag
Prefixluckpermsgroup@
Base TypeElementTag
Identity FormatThe identity format for group is <group_name>
For example, 'luckpermsgroup@my_group'.
DescriptionA LuckPermsGroupTag represents a LuckPerms group.
RequiresDepenizen, LuckPerms
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/luckperms/LuckPermsGroupTag.java#L16

NameLuckPermsTrackTag
Prefixluckpermstrack@
Base TypeElementTag
Identity FormatThe identity format for tracks is <track_name>
For example, 'luckpermstrack@my_track'.
DescriptionA LuckPermsTrackTag represents a LuckPerms track.
RequiresDepenizen, LuckPerms
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/luckperms/LuckPermsTrackTag.java#L24

NameMobArenaArenaTag
Prefixmobarena@
Base TypeElementTag
Identity FormatThe identity format for arenas is <arena_name>
For example, 'mobarena@my_arena'.
DescriptionA MobArenaArenaTag represents a mob arena in the world.
RequiresDepenizen, MobArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/mobarena/MobArenaArenaTag.java#L18

NameMythicMobsMobTag
Prefixmythicmob@
Base TypeElementTag
Identity FormatThe identity format for MythicMobsMobTag is <uuid>
For example, 'mythicmob@1234-1234-1234'.
DescriptionA MythicMobsMobTag represents a Mythic mob entity in the world.
RequiresDepenizen, MythicMobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/mythicmobs/MythicMobsMobTag.java#L31

NameMythicSpawnerTag
Prefixmythicspawner@
Base TypeElementTag
Identity FormatThe identity format for a MythicSpawner is its name.
For example, 'mythicspawner@AngrySludgeSpawner1'.
DescriptionA MythicSpawnerTag represents a MythicMobs spanwer in the world.
RequiresDepenizen, MythicMobs
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/mythicmobs/MythicSpawnerTag.java#L28

NameNationTag
Prefixnation@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for nations is <nation_uuid>
For example, 'nation@123-abc'.
DescriptionA NationTag represents a Towny nation.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__depenizen_towny_nations_uuid"
RequiresDepenizen, Towny
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/towny/NationTag.java#L27

NamePartyTag
Prefixparty@
Base TypeElementTag
Identity FormatThe identity format for parties is <party_name>
For example, 'party@my_party'.
DescriptionA PartyTag represents an McMMO party.
RequiresDepenizen, McMMO
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/mcmmo/PartyTag.java#L20

NamePlotSquaredPlotTag
Prefixplotsquaredplot@
Base TypeElementTag
Identity FormatThe identity format for plots is <x>,<z>,<world>
For example, 'plotsquaredplot@5,10,Hub'.
DescriptionA PlotSquaredPlotTag represents a PlotSquared plot in the world.
RequiresDepenizen, PlotSquared
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/plotsquared/PlotSquaredPlotTag.java#L25

NamePVPArenaArenaTag
Prefixpvparena@
Base TypeElementTag
Identity FormatThe identity format for arenas is <arena_name>
For example, 'pvparena@myarena'.
DescriptionA PVPArenaArenaTag represents a PvP Arena in the world.
RequiresDepenizen, PvPArena
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/pvparena/PVPArenaArenaTag.java#L17

NameResidenceTag
Prefixresidence@
Base TypeElementTag
Identity FormatThe identity format for residences is just the name.
For example, 'residence@myresidence'.
DescriptionA ResidenceTag represents a Residence in the world.
MatchableResidenceTag matchers, sometimes identified as "<residence>":
"residence" plaintext: always matches.
Residence name: matches if the residence is named matches the input, using advanced matchers.
RequiresDepenizen, Residence
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/residence/ResidenceTag.java#L24

NameShopKeeperTag
Prefixshopkeeper@
Base TypeElementTag
Identity FormatThe identity format for shopkeepers is <uuid>
For example, 'shopkeeper@1234-1234-1234'.
DescriptionA ShopKeeperTag represents a ShopKeeper entity in the world.
RequiresDepenizen, Shopkeepers
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/shopkeepers/ShopKeeperTag.java#L26

NameSkillAPIClassTag
Prefixskillapiclass@
Base TypeElementTag
Identity FormatThe identity format for regions is <class_name>
For example, 'skillapiclass@myclass'.
DescriptionA SkillAPIClassTag represents a SkillAPI class.
RequiresDepenizen, SkillAPI
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/skillapi/SkillAPIClassTag.java#L16

NameTownTag
Prefixtown@
Base TypeElementTag
ImplementsFlaggableObject
Identity FormatThe identity format for towns is <town_uuid>
For example, 'town@123-abc'.
DescriptionA TownTag represents a Towny town in the world.

This object type is flaggable.
Flags on this object type will be stored in the server saves file, under special sub-key "__depenizen_towny_towns_uuid"
RequiresDepenizen, Towny
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/towny/TownTag.java#L29

NameViveCraftPlayerTag
Prefixvivecraft@
Base TypeElementTag
Identity FormatThe identity format for ViveCraftPlayerTag is the UUID of the relevant player.
DescriptionA ViveCraftPlayerTag represents a player which is in VR.
RequiresDepenizen, ViveCraft
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/vivecraft/ViveCraftPlayerTag.java#L22

NameWorldGuardRegionTag
Prefixregion@
Base TypeElementTag
Identity FormatThe identity format for regions is <region_name>,<world_name>.
For example, 'region@spawnland,Hub'.
DescriptionA WorldGuardRegionTag represents a WorldGuard region in the world.
RequiresDepenizen, WorldGuard
Sourcehttps://github.com/DenizenScript/Depenizen/blob/master/src/main/java/com/denizenscript/depenizen/bukkit/objects/worldguard/WorldGuardRegionTag.java#L31