Skip to content

/craft

Script-provided

Registered by craft. Start it with /lua run craft <args> — the launch argument you give it selects which of two unrelated modes you get. See Launch modes before starting it.

Syntax

/craft start|stop|status|abilities|class|reload

Description

One-shot tradeskill crafting automation for a single recipe: fires reaction arts each round until the requested count is combined. Launched with watch instead of a recipe, it becomes a recipe-ID capture tool with no crafting logic at all.

Launch modes

/lua run craft reads its launch argument once, at load time, and wires up one of two completely separate command handlers under the same name — they are mutually exclusive per run:

  • Crafting mode (default) — /lua run craft <recipe_id_or_name> [count] [class]. Crafts the given recipe count times (default 1), using the reaction-art slots configured for class (default default) in config/crafting.lua. This is the mode with the start|stop|status|abilities|class|reload subcommands below.
  • Watch mode/lua run craft watch. No crafting happens; it just prints the recipe ID of whatever you craft manually, so you can feed it back in as the crafting-mode argument. Its /craft handler understands exactly one subcommand, stop.

Requires a crafting station targeted and the Tradeskills window open — you still have to click Begin yourself in this script (compare /autocraft, which clicks it for you).

Recipe argument

<recipe_id_or_name> is either a numeric recipe ID, or a name that gets resolved against the recipe cache (eq2.recipe_cached). If the name isn't cached, the script prints an error and refuses to start — cache it first with /lua run debug/recipedump <id>, or use the numeric ID directly.

Subcommands

(crafting mode only)

Subcommand What
start Resume crafting if paused.
stop Pause after the current combine finishes. The script stays loaded; resume with start.
status Print recipe, class, crafted/failed counts, and running/paused state.
abilities Print the reaction-art slots configured for the current class.
class <ClassName> Override the tradeskill class used to pick reaction arts, e.g. Armorer.
reload Reload config/crafting.lua without restarting the script.

Watch mode

Subcommand What
stop Stop watching and unregister the chat/command-queue hooks.
(anything else) Reprint the "watching for recipe IDs" banner.

Detection tiers

Crafting-round detection uses eq2.on_craft_round (event-driven, opcode 0xE5) when the running build exposes it. If it doesn't, the script falls back to parsing crafting chat text on a ~4-second timer — slower and less precise, but functional. /lua run craft prints which tier it's using on startup.

Examples

/lua run craft watch
-- craft something manually...
-- [craft] captured recipe ID: 41823
/lua run craft 41823 5 Armorer
/craft status
/craft class Weaponsmith
/craft stop
/lua stop craft

See also

  • /autocraft — the resident daemon: crafts by recipe name read live from the Recipe Book, clicks Begin for you, and stays loaded across multiple recipes. Prefer it for anything beyond a quick one-off.
  • lib.crafting, lib.recipes — the config, ability-slot, and recipe-cache logic behind this script.