This is the online version of the HexDebug documentation.

Entries which are blurred are spoilers. Click to reveal them, but be aware that they may spoil endgame progression. Alternatively, click here to get a version with all spoilers showing.

I devote this section to the magical and mysterious items I might encounter in my studies.

DebuggerDebugging Items

I have read vague descriptions of a strange object used by the ancients to help discover issues in complex Hexes. I believe I have managed to reproduce this item; I call it the Debugger.

It seems to work in a similar way to Artifacts. However, I can also use it to cast a Hex right from an item (like a Focus) in my off-hand.

Unfortunately, the Debugger is not very useful on its own; to get the most out of it, I will need to set up some sort of external tool.


Click to show recipes Click to hide recipes
Debugger
Crafting Table
Charged Amethyst
Charged Amethyst
Artifact
Charged Amethyst
Gold Ingot
Debugger

Thwack!

I can also switch between different "step modes" of the Debugger by sneak-scrolling (like with a Spellbook or Abacus).


Complementing the Debugger, I've also created a new type of staff: the Evaluator.

While debugging a Hex, patterns drawn with this staff will be cast using the current stack and ravenmind of the Debugger.

Clearing the grid seems to reset the Debugger to just before the first pattern was drawn with the Evaluator. It will not, of course, undo any effects performed by spells on the world.


Click to show recipes Click to hide recipes
Evaluator
Crafting Table
Charged Amethyst
Charged Amethyst
Block of Slate
Charged Amethyst
Block of Slate
Evaluator

Thwonk!


Splicing TableSplicing Table

As my Hexes become more complex, I find myself spending more and more time fixing my own mistakes. Patterns such as Evanition and Surgeon's Exaltation can suffice for simple substitutions, but I think I can do better.

The Splicing Table is my solution to these woes: a full-fledged workstation for viewing and editing Hexes.


To begin, I must place an item containing a list iota (eg. a Focus) in the centre of the table. This reveals the first nine iotas in the list. The small arrows at the ends can be used to move my view of the list; I can also hold Sneak to move by a full page, or Sprint to move all the way to the start or end.

If I wish to share my Hexes with others, I can use the large button on the right side to copy the contents of the list to my "clipboard".


I can select iotas (or the space between them) by clicking on them. Holding Sneak and clicking again allows me to select a range of iotas.

Additionally, there are dedicated buttons to select the entire list (Select All) and to clear my selection (Select None).

Selecting iotas allows me to unlock the true power of the Splicing Table: editing Hexes.


With sufficient media, I can perform the following actions:

Nudge Left: Move the selected iota(s) one space to the left.

Nudge Right: Move the selected iota(s) one space to the right.

Delete: Remove the selected iota(s) from the list.

Duplicate: Create a copy of the selected iota(s).

Undo: Revert the last action performed.

Redo: Re-perform actions previously reverted with Undo.


For more advanced operations, some extra storage is required. I can place an iota-holding item in the slot to the left to unlock the following actions:

Copy: Write the selected iota(s) to a new list in the secondary item.

Cut: Same as Copy, but also delete the selected iota(s).

Paste: Replace the selected iota(s) with the iota in the secondary item. If the iota is a list, its contents are pasted instead; I can override this by holding Sneak.


Finally, I can insert a Staff into the lower left slot to reveal a miniature casting grid. Patterns drawn on this grid are inserted directly into the list, overwriting any selected iotas.

There are also six general-purpose inventory slots on the right side. These have no special functionality; they're just a convenient place to store a few extra items.


Unfortunately, all of this incredible versatility comes at a cost. In order to modify the contents of items, media is required - about a tenth of one Amethyst Dust per action performed.

I can supply media to the Splicing Table by putting it in the lower right slot. The table will consume up to ten Amethyst Dust at once; any surplus is ignored until it can be consumed without wasting media.


Click to show recipes Click to hide recipes
Splicing Table
Crafting Table
Edified Planks
Charged Amethyst
Edified Planks
Amethyst Shard
Focus
Amethyst Shard
Block of Slate
Gold Ingot
Block of Slate
Splicing Table

She plugged in strings one after the other, the tiny metal cubes flying in and out as her fingers danced over the tray with blinding speed.


A list of all the patterns I've discovered, as well as what they do.

DebuggerDebugging

Debugger's Reflection (→ bool)

Your browser does not support visualizing patterns. Pattern code: qqqqqewaa

Adds True to the top of the stack if executed by a Debugger or Evaluator, or False otherwise.


Debug Locator's Rfln. (→ int or null)

Your browser does not support visualizing patterns. Pattern code: dedqdeqwaa

Adds the index of the next iota to be evaluated if executed by a Debugger or Evaluator, or Null otherwise.


Cognitohazard Rfln. (→ cognitohazard)

Your browser does not support visualizing patterns. Pattern code: wdeaqqdqeedqadqeedqaeadeaqqeadeaqqdqdeaqqeaeedqaw

Adds a Cognitohazard to the top of the stack.


It seems certain debugging tools may pose a security risk for some high-level techniques. To help combat this, I have created this pattern.

When a Cognitohazard iota is executed normally, nothing happens. However, if one is present in a Hex executed by a Debugger, it will cause the Hex to terminate immediately - even before the Cognitohazard is actually executed.


Set Breakpoint Before

Your browser does not support visualizing patterns. Pattern code: awqdeew

Pauses the Debugger before executing this pattern.


Set Breakpoint After

Your browser does not support visualizing patterns. Pattern code: wqqaewd

Pauses the Debugger after executing this pattern (ie. before executing the next pattern).


Craft Debugger (entity, [pattern] →)

Your browser does not support visualizing patterns. Pattern code: aaewwwwwaqwawqwadawqwwwawwwqwwwaw

Creates a Debugger that casts a Hex, similar to certain other patterns I've used in the past.

Costs about ten Charged Amethyst.