Skip to main content

Warp System

Craftify includes a teleport warp system driven by an in-game Warp Tools book. A warp is a pair of points: an entrance pad you walk into and a destination you're teleported to. You build and manage them entirely from clickable buttons in the book — no commands to memorise.

Getting the Warp Book​

Give yourself the Warp Tools book with:

/function craftify:warp/book

This hands you a written book with clickable buttons for every warp action.


How Warps Work​

Each warp uses two invisible marker entities (both tagged craftify) plus a light block that acts as the trigger:

PieceTagRole
Start padwarp_startThe entrance. Stand here (in a light block) to be teleported.
Destinationwarp_pointWhere you arrive. Its coordinates are saved and the chunk is force-loaded.
Light block—Placed on the start pad; stepping into it fires the teleport.

Every warp is identified by a key — one of the 16 dye colours, or a named slot (spawn, shop, community, random). The start pad and destination must share the same key for the teleport to link up.

The teleport trigger: when a player steps into a light block, Craftify's craftify:warp/light function runs. It checks whether a warp_start marker (of any key) is within 2 blocks, and if so teleports the player to the matching warp_point of that key. So a working entrance is always a start marker + a light block in the same spot.

:::note Persistence Creating a destination saves its coordinates to world storage (storage craftify:warp_registry <key>) and force-loads its chunk so the teleport works even when nobody is nearby. On every world load, craftify:load re-applies the force-load for all saved destinations, so warps survive restarts. :::


Setting Up a Warp​

Build the destination first, then the entrance pad.

1. Place the destination​

Stand exactly where you want players to arrive and, in the book, click [T] (Target) for the colour/slot you want — for example White.

This registers the destination (warp_point), saves its coordinates, and force-loads the chunk. If a destination for that key already exists, you'll be told "That warp point already exists" — remove the old one first (see below).

2. Build the entrance pad​

Go to where players will depart and:

  1. Click [S] (Start) for the same colour/slot. This drops the warp_start marker.
  2. Click [LIGHT] to place a light block at your feet, on the start marker.

3. Use it​

Any player who steps into the light block on the start pad is teleported to the matching destination. Decorate the pad however you like (a frame, pressure plate, signs) — only the light block and the start marker matter mechanically.

The underlying functions, if you'd rather script them:

/function craftify:warp/create_target_<key> # run at the destination
/function craftify:warp/create_start_<key> # run at the entrance
/function craftify:warp/place_light # place the trigger light block

Available keys: white, light_gray, gray, black, brown, red, orange, yellow, lime, green, cyan, light_blue, blue, purple, magenta, pink, plus the named slots spawn, shop, community, and random.

:::tip The random warp A random start pad doesn't teleport to a fixed spot — it uses spreadplayers to drop you near a random destination, giving you a "surprise me" warp. :::

:::note Numbered warps The teleport logic also supports numbered keys 1–12 for extra infrastructure warps. These aren't buttons in the book, so set them up with the /function commands above using the number as the key. :::


Quick Navigation (no pad needed)​

The book also has shortcuts that act on destinations directly, wherever you're standing:

Book buttonFunctionWhat it does
Locate Warp Pointscraftify:warp/locateHighlights every destination within 64 blocks with shroomlight particles. Shows "There are no Warp Points close to you" if none are near.
Nearestcraftify:warp/locate_nearestTeleports you straight to the nearest destination.
Randomcraftify:warp/locate_randomTeleports you to a random destination.

Removing a Warp​

  1. Stand within 64 blocks of the warp marker you want gone.
  2. Click Remove Warp Point → you'll get a CONFIRM prompt.
  3. Click CONFIRM to run craftify:warp/remove.

This marks the spot with a barrier particle, removes the force-load on that chunk, and kills the nearest craftify marker. If nothing is within range you'll see "There are no Warp Points close to you."

caution

Remove acts on the nearest craftify marker — that could be a start pad or a destination. Stand close to the specific marker you want removed. You'll usually want to remove both halves (pad and destination) of a retired warp.


Light Blocks​

The [LIGHT] button places a full-brightness light block at your feet:

/function craftify:warp/place_light

It's the trigger for start pads, but it's also handy on its own for lighting a build without visible torches.


Reference: Warp Functions​

FunctionPurpose
craftify:warp/bookGive the Warp Tools book.
craftify:warp/create_start_<key>Place a start-pad marker (the entrance).
craftify:warp/create_target_<key>Register the destination, save its coords, and force-load its chunk.
craftify:warp/place_lightPlace a light block (the teleport trigger) at your feet.
craftify:warp/lightInternal: teleports a player who enters a light block to the matching destination.
craftify:warp/locateHighlight destinations within 64 blocks.
craftify:warp/locate_nearestTeleport to the nearest destination.
craftify:warp/locate_randomTeleport to a random destination.
craftify:warp/removeRemove the nearest warp marker within 64 blocks.
craftify:warp/remove_confirmShow the removal confirmation prompt.
craftify:warp/forceloadInternal: re-applies force-load from saved coordinates on world load.