Content generated with AI — it may contain mistakes.

Insights

Integrations

The CUSTOM keys other Exylia plugins fire, NPC clicks from ExyliaDisplays and any plugin, firing your own keys, PlaceholderAPI and player settings.

CUSTOM keys from other Exylia plugins

Other Exylia plugins announce what their players do, and ExyliaJourney turns each of those events into a CUSTOM key a step or a trigger can wait for. Nothing needs setting up: when the other plugin is installed its keys start firing; when it is not, they never do.

A key names the plugin, what happened and, where there is one, what it happened to. A step or trigger asking for a key also counts every more specific key under it: exylia:mines:break counts a block broken in any mine, exylia:mines:break:gold only in the mine gold.

KeyFired forWhen
exylia:mines:break:<mine>The playerA block broken in an ExyliaMines mine.
exylia:crates:open:<crate>The playerA crate opened in ExyliaCrates.
exylia:clans:createThe playerA clan created.
exylia:clans:joinThe playerA clan joined.
exylia:classes:equip:<class>The playerAn ExyliaClasses class equipped.
exylia:classes:ability:<class>The playerA class ability used.
exylia:ffa:join:<arena>The playerAn FFA arena joined to play (not to spectate).
exylia:ffa:kill:<arena>The killerA kill in an FFA arena.
exylia:events:join:<event>The playerAn ExyliaEvents game joined.
exylia:events:win:<event>Each winnerAn ExyliaEvents game won.
exylia:practice:queue:<ranked|unranked>:<kit>The playerA Practice queue joined.
exylia:practice:matchEvery player of the matchA Practice match finished.
exylia:practice:winEach winnerA Practice match won.
exylia:survival:kit:<kit>The playerA SurvivalCore kit claimed.
exylia:survival:rankup:<rank>The playerRanked up to that rank.
exylia:survival:sethomeThe playerA home set.
exylia:survival:warp:<warp>The playerA warp used.
exylia:survival:bountyThe killerA bounty claimed.
exylia:market:buy:<source>The buyerSomething bought on ExyliaMarket.
exylia:market:sell:<source>The sellerSomething sold on ExyliaMarket.
exylia:sandbox:joinThe playerA sandbox world joined.
exylia:specials:use:<item>The playerAn ExyliaSpecials item used.
exylia:specials:duel-winThe winnerA 1v1 won.
exylia:totems:saveThe playerA totem saved the player.
exylia:tabletop:winThe winnerA tabletop match won.
exylia:capture:zoneThe capturing playerA zone captured in ExyliaCapture.

A cancelled event fires nothing.

Examples

# a step: open three crates of any kind
objective:
  type: CUSTOM
  key: exylia:crates:open
  amount: 3
 
# a journey that starts the first time a player joins a clan
triggers:
  - type: CUSTOM
    key: exylia:clans:join

Your own keys

Any plugin can fire its own keys through the Exylia API:

ExyliaAPI.get(JourneyService.class).ifPresent(journeys -> journeys.trigger(player, "shop:opened", 1));

and an admin, the console or any plugin that runs console commands, with:

/journeyadmin trigger <player> <key> [amount]

Keys are matched without regard to case. See API.

NPC clicks

Every NPC placed through ExyliaLib counts for INTERACT_NPC objectives and NPC_CLICK triggers, with no setup:

NPCHow to name it
This plugin's own (npcs: in config.yml; the demo writes one)Its bare id: guide.
ExyliaDisplays' NPCsTheir bare id: blacksmith.
Any other plugin's placed NPC<plugin>:<id>.

The editor's NPC field lists every NPC placed on the server to pick from. The NPC a step points at glows for that player alone, and the beacon stands over it.

The older click line [ACTION] exyliajourney:npc %npc% on an ExyliaDisplays NPC still works and is no longer needed; a click it repeats is counted once. /journeyadmin trigger <player> npc:<id> counts as clicking that NPC.

The plugin's own NPCs

npcs: in config.yml places NPCs for journeys to point at, without any other plugin:

npcs:
  guide:
    location: world,0,64,0,90   # world,x,y,z[,yaw[,pitch]]
    skin: Notch                 # a player name, or '' for the default
    glow: '#8A51C4'             # an outline for everybody, or '' for none

They need PacketEvents.

PlaceholderAPI

With PlaceholderAPI the %journey_...% placeholders work in every other plugin, and any PlaceholderAPI placeholder can be used in requirements.condition and in PLACEHOLDER objectives.

Player settings

The four guidance switches are registered with ExyliaLib's /settings under Journey guidance, next to the switches in /journey. See Guidance.

Something missing on this page? Tell us on Discord