This is the online version of the Caduceus 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.

The practitioners of this art would cast their so-called Hexes by drawing strange patterns in the air with a Staff -- or craft powerful magical items to do the casting for them. How might I do the same?

Eye of EnderCaduceus Changes

I have noticed some changes to the behavior of certain meta-evaluation techniques as of late.

Jump iotas are no longer entirely opaque to me - I can now see the components that make them up, although I have not yet managed to isolate one.


Additionally, it seems Too Many Iotas mishaps have become more common when working with Jump iotas. I should take care not to delve too deep.


I've started to understand how the old masters cast their Hexes! It's a bit complicated, but I'm sure I can figure it out. Let's see...

BookA Primer On Jumps

As with vectors for more mundane tasks, it seems I will need a deeper understanding of Jump iotas (also called continuations) if I am to make the most of my new discoveries. I have collected some "light reading material" on the topic.


First, an encyclopedia entry on the concept of "first-class continuations", the abstract concept embodied by Jump iotas. It also discusses the "call/cc" operator, which is roughly equivalent to Iris' Gambit.

Wikipedia


Next, a blog post on "delimited continuations", with some concrete examples that may be feasible to rewrite as Hexes for practice. I may find this useful if I am having trouble understanding Thetis' Gambit and Arke's Gambit.

Blog Post


Finally, if I can overlook a bit of fourth-wall breaking, this document gives an overview of the specific techniques employed by Nature to interpret my Hexes.

How Casting Works


WitherCaduceus Mishaps

This section documents the mishaps that can occur when manipulating Jump iotas and using delimited jumps.


Uncontained Arke

I attempted to draw Arke's Gambit without wrapping it in Thetis' Gambit.


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

Respawn AnchorDelimited Jumps

Thetis' Gambit ([pattern] | pattern → many)

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

Cast a pattern or list of patterns from the stack exactly like Hermes' Gambit, except that anything outside of this cast will not be captured by an Arke's Gambit within it.


Arke's Gambit ([pattern] | pattern → many)

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

Cast a pattern or list of patterns from the stack similarly to Iris' Gambit. Must be drawn within Thetis' Gambit.


All of the patterns that would have been drawn between the end of the pattern list and the end of the enclosing Thetis' Gambit are moved into a Call iota, which is pushed to the stack instead of a Jump iota.

When the Call iota is executed, the captured patterns will be cast as if by Hermes' Gambit. If the Call iota is not executed, the rest of the patterns within the enclosing Thetis' Gambit will be skipped.


Purpur SlabJump Manipulation

Just like my Hexes interact with the stack, Nature uses a stack of its own (made up of "frames") when casting my Hexes. Jump iotas contain a snapshot of this stack at a particular moment in time, and I can use the patterns in this section to deconstruct and rearrange that snapshot.
Unfortunately, despite their similarity to Jump iotas, it seems these patterns do not work on Call iotas.


Additive Distillation (jump, jump → jump)

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

Remove the Jump iota at the top of the stack, then add all its frames to the bottom of the Jump iota at the top of the stack.


Length Purification (jump → num)

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

Remove the Jump iota at the top of the stack, then push the number of frames within it to the stack.


Flock's Disintegration (jump → many)

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

Remove the Jump iota at the top of the stack, then, for each of its frames, push a new Jump iota containing only that frame to the stack.


Speaker's Distillation (jump, jump → jump)

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

Remove the Jump iota at the top of the stack, then add its top frame to the top of the Jump iota at the top of the stack.


Speaker's Decomposition (jump → jump, jump)

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

Remove the top frame from the Jump iota at the top of the stack, then push a new Jump iota containing only that frame to the stack.


Jump Tags

The ravenmind is not the only place that I can store information within a Hex. In fact, I am able to hide iotas within the very concept of evaluation. I call this technique jump tags; some other texts refer to it as "continuation marks".

There is one notable limitation of jump tags, however: they can only hold a single iota at a time. Unlike the ravenmind, even lists are too much.


Ewer's Reflection (→ any)

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

Copy the iota stored in the jump tag of the current evaluation and add it to the stack.


Ewer's Purification (jump → any)

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

Like Ewer's Reflection, but the iota is read out of the jump tag of the top frame in a Jump iota.


Ewer's Gambit (any →)

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

Remove the top iota from the stack, and write it to the jump tag of the current evaluation.
As with Chronicler's Gambit, I cannot write my own Name using this spell.


I should be careful if using Ewer's Reflection or Ewer's Gambit at the very end of an invocation. The tag that it reads or writes may not be the one I expect.