CustomMove.xml

Additional slash-command teleports layered on top of Move.txt. Define up to 20 commands like /pvp1 or /arena1 with per-command coordinate targets and access gates (level, reset, master reset, VIP, PK).

File Location#

Data/Plugins/World/CustomMove.xml

Loaded once at GameServer startup. Supports hot reload via plugin admin command.

Schema#

<CustomMoves>
    <Move Index="..." Name="..."
          Map="..." X="..." Y="..."
          MinLevel="..." MaxLevel="..."
          MinReset="..." MaxReset="..."
          MinMReset="..." MaxMReset="..."
          AccountLevel="..." PkMove="..." />
</CustomMoves>

Attributes#

AttributeTypeEffect
IndexintUnique slot ID. Duplicate indices: only the first entry loaded wins, later duplicates are silently dropped. Compiled cap is 20 entries per server
NamestringCommand name including leading /. Matched case-insensitively against the first whitespace-separated token of the chat line. Max 31 characters
MapintTarget map number
X, YintDestination tile coordinates on that map
MinLevel / MaxLevelint or -1Character level range. -1 = no limit on that side
MinReset / MaxResetint or -1Reset count range. -1 = no limit on that side
MinMReset / MaxMResetint or -1Master reset range. -1 = no limit on that side
AccountLevelintMinimum VIP tier required. Compared against the player's stored AccountLevel with a simple >= check. Default 0 (everyone allowed). Use 0-3 for the standard Free/Bronze/Silver/Gold tiers
PkMove0 or 11 (default) allows PK characters through. 0 blocks any character with PKLevel >= 5

Relationship to Move.txt#

Move.txt handles the vanilla /move <name> command with gate-referencing teleports. CustomMove introduces new command strings (e.g. /pvp1) with direct coordinate targets and richer access gates including master reset and PK tolerance.

Coordinates go to (Map, X, Y) directly; the warp does not pass through Gate.txt.

Hardcoded Map Restrictions#

In addition to the gates you define, the engine enforces a few hardcoded rules on specific maps:

  • Atlans - blocks if the player has Uniria or Dinorant equipped in the pet slot
  • Icarus / Kanturu 3 - requires wings in the wings slot, or Dinorant or Fenrir equipped in the pet slot
  • Gens battle maps - requires Gens faction membership (Season 5+ builds)

Players are also blocked if a UI is open, they are already teleporting, they are in the death-respawn state, or a personal shop is open.

Cross-File Dependencies#

AttributeRelated in
MapMapManager.xml
Coordinates must land on walkable tileTerrain for that map
PK tolerance + AccountLevelCommon.dat
Summon whitelistMoveSummon.txt (CustomMove warps bypass this; listed for admin awareness)

Common Issues#

  • Command does nothing - Name missing leading /, or a different plugin/command handler intercepts first
  • Warp drops player in a wall - coordinates invalid; use a walkable tile
  • PK characters rejected for a PK-friendly destination - PkMove="0"; flip to 1 on PVP arenas
  • Map-specific restriction rejects valid player - hardcoded rule (Atlans mount check, Icarus flight check); no XML override
  • Only /command1 works, /command2 ignored - duplicate Index value; only the first entry loads

Last updated April 21, 2026