Skip to content

User Guide

Kevin Lim edited this page Oct 3, 2023 · 11 revisions

Config

This is the default config file created in $HOME/.xivcrafter.json whenever you launch XIVCrafter for the first time.

You can follow the on-screen prompts to fill out the config or you can manually edit the file in a text editor.

{
  "start_pause": "",
  "stop": "",
  "confirm": "",
  "cancel": "",
  "recipes": [
    {
      "name": "",
      "food": "",
      "food_duration": 30,
      "potion": "",
      "macro1": "",
      "macro1_duration": 1,
      "macro2": "",
      "macro2_duration": 1,
      "macro3": "",
      "macro3_duration": 1
    }
  ]
}

XIVCrafter Settings:

  • start_pause: XIVCrafter hotkey to start or pause the program
  • stop: XIVCrafter hotkey to stop the program
  • confirm: FFXIV hotkey for the confirm action
  • cancel: FFXIV hotkey for the cancel action

Recipes:

  • recipes: JSON array of settings representing a crafting recipe in FFXIV
    • name: Name of the crafting recipe
    • food: OPTIONAL FFXIV hotkey for the food item to use
      • Leave as "" if no food is needed
    • food_duration: How long the food will last (minutes)
      • Default: 30 minutes
    • potion: OPTIONAL FFXIV hotkey for the potion item to use
      • Leave as "" if no potion is needed
      • The default length of the potion is 15 minutes
    • macro1: FFXIV hotkey for the first crafting macro
      • This field must have a value for the recipe to be valid
    • macro1_duration: Duration the first crafting macro (seconds)
    • macro2: OPTIONAL FFXIV hotkey for the second crafting macro
      • Leave as "" if no second crafting macro is needed
    • macro2_duration: Duration the second crafting macro (seconds)
    • macro3: OPTIONAL FFXIV hotkey for the third crafting macro
      • Leave as "" if no third crafting macro is needed
    • macro3_duration: Duration the third crafting macro (seconds)

Validating Config

  • start_pause, stop, confirm, cancel and all the hotkeys in a recipe must be unique
    • Recipes can share hotkeys with each other
  • food and potion can be left as "" if there is no need for a food or potion buff for the recipe
  • food_duration must be either 30, 40, or 45 depending on whether food buffs are used
  • macro1 must be filled for the recipe to be valid
    • macro2 and macro3 can be left as "" if there is no need for a second or third crafting macro
  • The duration for the recipe macros must be greater than 0
    • Can leave as 1 if the macro isn't being used

Accepted Keys

NOTE: Any key with ** is not detected by the gohook package. Avoid using these keys as the start_pause and stop hotkeys.

NOTE: "" is valid and indicates an unused hotkey. Only fields marked with OPTIONAL in the Recipes section will accept "".

Alphanumerical Keys

  • a to z
  • 0 to 9

Function Keys

  • f1 to f12

Special Keys

  • backspace**
  • delete
  • enter
  • tab
  • escape
  • space
  • up
  • down
  • right
  • left
  • home**
  • end**
  • pageup**
  • pagedown**

Modifier Keys

  • left_shift
  • right_shift
  • left_ctrl
  • right_ctrl**
  • left_alt
  • right_alt
  • left_super
  • right_super

Number Pad Keys

  • pad0 to pad9
  • pad*
  • pad+
  • padenter
  • pad.
  • pad-
  • pad/

XIVCrafter Settings

start_pause and stop are hotkeys that the user will press to tell XIVCrafter to start/pause the crafter or to stop the crafter.

confirm and cancel is found in System > Keybind > System.

keybinds

In the above example:

  • confirm would be pad0 or pagedown.
  • cancel would be pad. or pageup.

Therefore, if we set the start_pause hotkey to t and stop to s, the config file would be:

{
  "start_pause": "t",
  "stop": "s",
  "confirm": "pad0",
  "cancel": "pad.",
}

NOTE: Ensure every hotkey is unique.

Recipes

Let's say this is your hotbar for your culinarian.

hotbar

As you can see, we have the food on the 1 key, the potion on the 2 key and the two crafting macros on 3 and 4.

If the first crafting macro has a duration of 37 seconds and the second crafting macro has a duration of 35 seconds, the config file would be:

{
  "recipes": [
    {
      "name": "my amazing craft",
      "food": "1",
      "food_duration": 30, // can be 30, 40 or 45 depending on food buffs
      "potion": "2",
      "macro1": "3",
      "macro1_duration": 35,
      "macro2": "4",
      "macro2_duration": 37,
      "macro3": "", // leave blank if not needed
      "macro3_duration": 1
    }
  ]
}

Since the recipes key is a JSON array, you can add additional recipes:

{
  "recipes": [
    {
      "name": "my amazing craft",
      "food": "1",
      "food_duration": 30, // can be 30, 40 or 45 depending on food buffs
      "potion": "2",
      "macro1": "3",
      "macro1_duration": 35,
      "macro2": "4",
      "macro2_duration": 37,
      "macro3": "", // leave blank if not needed
      "macro3_duration": 1
    },
    {
      "name": "my impressive craft",
      "food": "", // leave blank if not needed
      "food_duration": 40, // can be 30, 40 or 45 depending on food buffs
      "potion": "", // leave blank if not needed
      "macro1": "1",
      "macro1_duration": 35,
      "macro2": "2",
      "macro2_duration": 37,
      "macro3": "3",
      "macro3_duration": 9
    }
  ]
}

NOTE: Ensure every hotkey is unique per recipe.

Putting it all together

Using the above examples, this would be the contents of $HOME/.xivcrafter.json:

{
  "start_pause": "t",
  "stop": "s",
  "confirm": "pad0",
  "cancel": "pad.",
  "recipes": [
    {
      "name": "my amazing craft",
      "food": "1",
      "food_duration": 30,
      "potion": "2",
      "macro1": "3",
      "macro1_duration": 35,
      "macro2": "4",
      "macro2_duration": 37,
      "macro3": "",
      "macro3_duration": 1
    },
    {
      "name": "my impressive craft",
      "food": "",
      "food_duration": 40,
      "potion": "",
      "macro1": "1",
      "macro1_duration": 35,
      "macro2": "2",
      "macro2_duration": 37,
      "macro3": "3",
      "macro3_duration": 9
    }
  ]
}

Prepping FFXIV

In order for XIVCrafter to work properly:

  1. Make sure you are not near anything that can be interacted with.
    • This is important to make sure you don't accidentally target something else and thus being unable to craft.
  2. Open the Crafting Log and select the item you want to craft with XIVCrafter.
  3. To ensure your character is in the correct state, start and then cancel the craft without any additional inputs.
    • Press the Synthesize button in the Crafting Log window. When the Synthesize window appears, press the Quit button.

Once that is done, press the Start/Pause XIVCrafter hotkey to start XIVCrafter.