Programmer Spells: The Two-Ton Punch

I’ve spoken a bit about how spells would work in my world, but for a long time I’ve struggled to figure out the details of the nuts-and-bolts mechanics. I’ve drawn inspiration for my spells from computer coding, but I don’t know how to code or the syntax of any programming languages. So with that in mind, I decided to do some research on Python this weekend and see if I could use some of the basic elements of programming to write a rudimentary spell, as I imagined it.

The spell I decided to write out is a draw-redirect spell, one of the first spells I ever came up with. It was originally inspired by Soto’s magical abacus in Terry Pratchett’s Thief of Time, which allowed the monk to move around kinetic force stored in falling bodies (namely, the protagonist Lobsang Ludd). I liked the idea of a spell that could absorb force and redirect it, and after researching martial arts like Aikido and Judo, I thought it’d be a great technique for a martial artist-mage.

The character I had in mind was the Dyer, a mage who had little to no muscle mass, but could topple much stronger foes by absorbing the kinetic force of their blows and redirecting it into his strikes. Here’s what I came up with for a sketch of the spell:

The Dyer’s Basic Draw-Redirect Strike Technique

Part 1: Intercept and absorb kinetic force (Draw)

[IF] [CASTER BODY] [ENCOUNTERS] [KINETIC FORCE] [GREATER THAN] [1 PSI] [THEN] [ABSORB] [QUANTITY: 100%][OF][KINETIC FORCE][AND][STORE][Previously absorbed force][IN][SEA OF DIRAC]

Part 2: Store kinetic force (Draw)

[SEA OF DIRAC]
[DEFINE tolerances: 0 PSI to 120,000 PSI]
[DEFINE shape: bound to caster’s physical dimensions, 1-inch radius around skin surface]
[DEFINE internal structure: triangular tessellation]

Part 3: Release kinetic force on a trigger (Redirect)

[WHEN][1 OF FOLLOWING CONDITIONS=TRUE][Execute respective functions]:

[CONDITION 1: TRIGGER 1 or 2=TRUE]
[EXECUTE][REDIRECT][100% OF STORED KINETIC ENERGY][INTO][RIGHT ARM FORCE INERTIA]

[TRIGGER 1= Caster says the word “release”]
[TRIGGER 2= Caster’s right palm takes designated form MANTIS HAND and makes contact with non-caster living entity]

[CONDITION 2: Sea reaches maximum capacity]
[EXECUTE: dissipate amount of stored energy equal to most recently absorbed energy amount]

The desired outcome of this spell, as it’s structured here, would be to absorb the full force of a punch or strike and dump that force into a magical space I termed a “Sea of DIrac”, which is an actual scientific phenomenon, but pretty much unrelated to the concept of kinetic energy. I first heard the term in Neon Genesis Evangelion, when Shinji encounters an Angel that can suck objects into its shadow, which is actually a Sea of Dirac. I just wanted a shorthand term for a space that existed outside of the material dimension, where energy could be stored indefinitely.

Once the kinetic energy is stored in the caster’s sea, that energy can be released again in conjunction with a strike, depending on one of two triggers: when the Dyer says a trigger keyword, or when the Dyer’s hand conforms to a predetermined shape (in this case, a mantis strike) and meets an opponent’s body. Activating one of these triggers will dump all of the kinetic energy the Dyer has stored into the inertia of his right arm, which, if he times it correctly, means that his relatively weak strikes could become incredibly powerful.

According to this article, the amount of force some elite boxers can put into their punches can range from 776 pounds to 1,300. After receiving only five punches at 800 PSI, the Dyer would be able to redirect roughly 4000 PSI into one strike (if I’ve done my math right). That comes out to about 2 tons.

The next step with this spell is translating it into its own symbols and notation–a magical language. That’s going to be much more difficult, because it means creating a whole set of symbols that correspond not only to programming tokens (like “and”, “or,” or “true”), but to nouns and concepts, like kinetic energy and the Sea of Dirac. Then again, it might be fun to start creating a pictographic language like Chinese or Japanese, especially for small projects.

Programmer Spells: The Two-Ton Punch