Skip to content

Commit b193c5e

Browse files
authored
Document iota embedding and the Shepherd Directrix mishap, plus minor fixes (#862)
2 parents c593067 + 21c14a3 commit b193c5e

File tree

5 files changed

+44
-22
lines changed

5 files changed

+44
-22
lines changed

Common/src/main/resources/assets/hexcasting/lang/en_us.flatten.json5

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -991,7 +991,7 @@
991991
bad_entity: "needs %s but got %s",
992992
bad_brainsweep: "The %s rejected the being's mind",
993993
already_brainswept: "The mind has already been used",
994-
no_spell_circle: "%s requires a spell circle",
994+
no_spell_circle: "requires a spell circle",
995995
others_name: "Tried to invade the privacy of %s's soul",
996996
"others_name.self": "Tried to divulge my Name too recklessly",
997997

@@ -1485,6 +1485,9 @@
14851485

14861486
"no_record.title": "Lack Akashic Record",
14871487
no_record: "Tried to access an $(l:greatwork/akashiclib)$(item)Akashic Record/$ at a location where there isn't one.$(br2)Causes purple sparks, and steals away some of my experience.",
1488+
1489+
"bad_shepherd.title": "Improper Shepherding",
1490+
bad_shepherd: "Tried to activate a $(l:greatwork/directrix)$(item)Shepherd Directrix/$ without a boolean on the top of the stack.$(br2)Causes red and white sparks, and forcibly ejects the Shepherd Directrix from the circle. This doesn't destroy it, thankfully, but I should make sure to go pick it up and replace it where it belongs.",
14881491
},
14891492

14901493

@@ -1651,7 +1654,7 @@
16511654

16521655
empty_directrix: "Firstly, a design for the cradle ... although, perhaps \"substrate\" would be more accurate a word. Without a mind guiding it, the output direction is determined by microscopic fluctuations in the _media wave and surroundings, making it effectively random.",
16531656
directrix_redstone: "A $(l:greatwork/directrix)$(item)Mason Directrix/$ switches output side based on a redstone signal. Without a signal, the exit is the _media-color side; with a signal, the exit is the redstone-color side.",
1654-
directrix_boolean: "A $(l:greatwork/directrix)$(item)Shepherd Directrix/$ switches output side based on a boolean on the stack. A $(thing)True/$ makes the wave exit from the back, a $(thing)False/$ from the front."
1657+
directrix_boolean: "A $(l:greatwork/directrix)$(item)Shepherd Directrix/$ switches output side based on a boolean on the stack. A $(thing)True/$ makes the wave exit from the back, a $(thing)False/$ from the front. Failing to provide a boolean at all will cause a mishap."
16551658
},
16561659

16571660
akashiclib: {
@@ -1723,7 +1726,7 @@
17231726
numvec: "Many mathematical operations function on both numbers and vectors. Such arguments are written as \"num|vec\".",
17241727

17251728
"add.1": "Perform addition.",
1726-
"add.2": "As such:$(li)With two numbers at the top of the stack, combines them into their sum.$(li)With a number and a vector, removes the number from the stack and adds it to each element of the vector.$(li)With two vectors, combines them by summing corresponding components into a new vector (i.e. [1, 2, 3] + [0, 4, -1] = [1, 6, 2]).",
1729+
"add.2": "As such:$(li)With two numbers at the top of the stack, combines them into their sum.$(li)With a number and a vector, removes the number from the stack and adds it to each element of the vector.$(li)With two vectors, combines them by summing corresponding components into a new vector (i.e. (1, 2, 3) + (0, 4, -1) = (1, 6, 2)).",
17271730

17281731
"sub.1": "Perform subtraction.",
17291732
"sub.2": "As such:$(li)With two numbers at the top of the stack, combines them into their difference.$(li)With a number and a vector, removes the number from the stack and subtracts it from each element of the vector.$(li)With two vectors, combines them by subtracting each component.$(br2)In all cases, the top of the stack or its components are subtracted $(italic)from/$ the second-from-the-top.",
@@ -1782,10 +1785,10 @@
17821785
"false": "Adds $(thing)False/$ to the top of the stack.",
17831786

17841787
"vec/": {
1785-
x: "The left-hand counter-clockwise pattern adds [1, 0, 0] to the stack; the right-hand clockwise pattern adds [-1, 0, 0].",
1786-
y: "The left-hand counter-clockwise pattern adds [0, 1, 0] to the stack; the right-hand clockwise pattern adds [0, -1, 0].",
1787-
z: "The left-hand counter-clockwise pattern adds [0, 0, 1]; the right-hand clockwise pattern adds [0, 0, -1].",
1788-
"0": "Adds [0, 0, 0] to the stack.",
1788+
x: "The left-hand counter-clockwise pattern adds (1, 0, 0) to the stack; the right-hand clockwise pattern adds (-1, 0, 0).",
1789+
y: "The left-hand counter-clockwise pattern adds (0, 1, 0) to the stack; the right-hand clockwise pattern adds (0, -1, 0).",
1790+
z: "The left-hand counter-clockwise pattern adds (0, 0, 1); the right-hand clockwise pattern adds (0, 0, -1).",
1791+
"0": "Adds (0, 0, 0) to the stack.",
17891792
},
17901793

17911794
"double/": {
@@ -1893,9 +1896,14 @@
18931896
parens: {
18941897
"1": "Drawing $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)Introspection/$ makes my drawing of patterns act differently, for a time. Until I draw $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)Retrospection/$, the patterns I draw are saved. Then, when I draw $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospection/$, they are added to the stack as a list iota.",
18951898
"2": "If I draw another $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Introspection/$, it'll still be saved to the list, but I'll then have to draw $(italic)two/$ $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospections/$ to get back to normal casting.",
1896-
"3": "Also, I can escape the special behavior of $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)Intro-/$ and $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospection/$ by drawing a $(l:patterns/patterns_as_iotas#hexcasting:escape)$(action)Consideration/$ before them, which will simply add them to the list without affecting which the number of $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospections/$ I need to return to casting.$(br2)If I draw two $(l:patterns/patterns_as_iotas#hexcasting:escape)$(action)Considerations/$ in a row while $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)introspecting/$, it will add a single $(l:patterns/patterns_as_iotas#hexcasting:escape)$(action)Consideration/$ to the list.",
18971899
},
18981900
undo: "Finally, if I make a mistake while drawing patterns inside $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)Intro-/$ and $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospection/$ I can draw $(l:patterns/patterns_as_iotas#hexcasting:undo)$(action)Evanition/$ to remove the last pattern that I drew from the pattern list that is being constructed.",
1901+
further_notes: {
1902+
title: "Further Notes",
1903+
"1": "I can escape the special behavior of $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)Intro-/$ and $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospection/$ by drawing a $(l:patterns/patterns_as_iotas#hexcasting:escape)$(action)Consideration/$ before them, which will simply add them to the list without affecting which the number of $(l:patterns/patterns_as_iotas#hexcasting:close_paren)$(action)Retrospections/$ I need to return to casting.$(br2)If I draw two $(l:patterns/patterns_as_iotas#hexcasting:escape)$(action)Considerations/$ in a row while $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)introspecting/$, it will add a single $(l:patterns/patterns_as_iotas#hexcasting:escape)$(action)Consideration/$ to the list.",
1904+
"2": "If an iota other than a pattern is present in a list to be executed by $(l:patterns/meta#hexcasting:eval)$(action)Hermes' Gambit/$ or any other meta-evaluation pattern, it will normally result in a mishap. However, this can be avoided using the patterns described in this section.$(br2)Just as with pattern iotas, the patterns described here can be used to \"escape\" $(o)any other$() kind of iota, causing it to be pushed to the stack when something tries to evaluate it instead of causing a mishap.",
1905+
"3": "This technique may be useful if I want a _Hex to be able to reference a specific iota, such as a complicated vector or an entity reference, without having to construct or obtain it each time.$(br2)The process of getting such an iota into a list of patterns in the first place may be somewhat involved. The simplest method would be to draw a placeholder pattern when assembling the list, and then make use of $(l:patterns/lists#hexcasting:replace)$(action)Surgeon's Exaltation/$ to replace it with my desired iota.",
1906+
},
18991907
},
19001908

19011909
readwrite: {

Common/src/main/resources/assets/hexcasting/lang/ru_ru.flatten.json5

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1558,7 +1558,7 @@
15581558
numvec: "Многие математические операции выполняются как над числами, так и над векторами. Такие аргументы записываются как \"num|vec\".",
15591559

15601560
"add.1": "Сложение.",
1561-
"add.2": "Как следует:$(li)С двумя числами в верхней части стека объединяет их в их сумму.$(li)С числом и вектором удаляет число из стека и добавляет его к каждому элементу вектора.$(li)С двумя векторами объединяет их, складывая соответствующие компоненты в новый вектор (т.е. [1, 2, 3] + [0, 4, -1] = [1, 6, 2]).",
1561+
"add.2": "Как следует:$(li)С двумя числами в верхней части стека объединяет их в их сумму.$(li)С числом и вектором удаляет число из стека и добавляет его к каждому элементу вектора.$(li)С двумя векторами объединяет их, складывая соответствующие компоненты в новый вектор (т.е. (1, 2, 3) + (0, 4, -1) = (1, 6, 2)).",
15621562

15631563
"sub.1": "Вычитание.",
15641564
"sub.2": "Как следует:$(li)С двумя числами в верхней части стека вычисляет их разность.$(li)С числом и вектором удаляет число из стека и вычитает его из каждого элемента вектора.$(li)С двумя векторами вычисляет их, вычитая каждую компоненту.$(br2)Во всех случаях верхняя часть стека или ее компоненты вычитаются $(italic)из/$ второй сверху.",
@@ -1617,10 +1617,10 @@
16171617
"false": "Добавляет $(thing)Ложь/$ в верхнюю часть стека.",
16181618

16191619
"vec/": {
1620-
x: "Левый противочасовой шаблон добавляет [1, 0, 0] в стек; правый по часовой стрелке шаблон добавляет [-1, 0, 0].",
1621-
y: "Левый противочасовой шаблон добавляет [0, 1, 0] в стек; правый по часовой стрелке шаблон добавляет [0, -1, 0].",
1622-
z: "Левый противочасовой шаблон добавляет [0, 0, 1]; правый по часовой стрелке шаблон добавляет [0, 0, -1].",
1623-
"0": "Добавляет [0, 0, 0] в стек.",
1620+
x: "Левый противочасовой шаблон добавляет (1, 0, 0) в стек; правый по часовой стрелке шаблон добавляет (-1, 0, 0).",
1621+
y: "Левый противочасовой шаблон добавляет (0, 1, 0) в стек; правый по часовой стрелке шаблон добавляет (0, -1, 0).",
1622+
z: "Левый противочасовой шаблон добавляет (0, 0, 1); правый по часовой стрелке шаблон добавляет (0, 0, -1).",
1623+
"0": "Добавляет (0, 0, 0) в стек.",
16241624
},
16251625

16261626
"double/": {

Common/src/main/resources/assets/hexcasting/lang/zh_cn.flatten.json5

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1719,7 +1719,7 @@
17191719
numvec: "许多数学操作对数和向量都有效。这类参数记为“num vec”。",
17201720

17211721
"add.1": "执行加法。",
1722-
"add.2": "操作如下:$(li)若栈顶为两个数,返回其和。$(li)若为一个数和一个向量,移除该数并将向量的每个分量与其相加。$(li)若为两个向量,将对应分量相加(也即 [1, 2, 3] + [0, 4, -1] = [1, 6, 2])。",
1722+
"add.2": "操作如下:$(li)若栈顶为两个数,返回其和。$(li)若为一个数和一个向量,移除该数并将向量的每个分量与其相加。$(li)若为两个向量,将对应分量相加(也即 (1, 2, 3) + (0, 4, -1) = (1, 6, 2))。",
17231723

17241724
"sub.1": "执行减法。",
17251725
"sub.2": "操作如下:$(li)若栈顶为两个数,返回其差。$(li)若为一个数和一个向量,移除该数并将向量的每个分量与其相减。$(li)若为两个向量,将对应分量相减。$(br2)栈顶元素或其分量为减数,栈顶往下第二元素或其分量为被减数。",
@@ -1778,10 +1778,10 @@
17781778
"false": "返回 $(thing)False/$。",
17791779

17801780
"vec/": {
1781-
x: "左图(逆时针绘制)返回 [1, 0, 0];右图(顺时针绘制)返回 [-1, 0, 0]。",
1782-
y: "左图(逆时针绘制)返回 [0, 1, 0];右图(顺时针绘制)返回 [0, -1, 0]。",
1783-
z: "左图(逆时针绘制)返回 [0, 0, 1];右图(顺时针绘制)返回 [0, 0, -1]。",
1784-
"0": "返回 [0, 0, 0]。",
1781+
x: "左图(逆时针绘制)返回 (1, 0, 0);右图(顺时针绘制)返回 (-1, 0, 0)。",
1782+
y: "左图(逆时针绘制)返回 (0, 1, 0);右图(顺时针绘制)返回 (0, -1, 0)。",
1783+
z: "左图(逆时针绘制)返回 (0, 0, 1);右图(顺时针绘制)返回 (0, 0, -1)。",
1784+
"0": "返回 (0, 0, 0)。",
17851785
},
17861786

17871787
"double/": {

Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/casting/mishaps2.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@
2424
"type": "patchouli:text",
2525
"title": "hexcasting.page.mishaps2.no_record.title",
2626
"text": "hexcasting.page.mishaps2.no_record"
27+
},
28+
{
29+
"type": "patchouli:text",
30+
"title": "hexcasting.page.mishaps2.bad_shepherd.title",
31+
"text": "hexcasting.page.mishaps2.bad_shepherd"
2732
}
2833
]
2934
}

Common/src/main/resources/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/patterns/patterns_as_iotas.json

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,6 @@
4848
"signature": "eee"
4949
}
5050
},
51-
{
52-
"type": "patchouli:text",
53-
"text": "hexcasting.page.patterns_as_iotas.parens.3"
54-
},
5551
{
5652
"type": "hexcasting:manual_pattern",
5753
"header": "hexcasting.rawhook.hexcasting:undo",
@@ -61,6 +57,19 @@
6157
"startdir": "EAST",
6258
"signature": "eeedw"
6359
}
60+
},
61+
{
62+
"type": "patchouli:text",
63+
"title": "hexcasting.page.patterns_as_iotas.further_notes.title",
64+
"text": "hexcasting.page.patterns_as_iotas.further_notes.1"
65+
},
66+
{
67+
"type": "patchouli:text",
68+
"text": "hexcasting.page.patterns_as_iotas.further_notes.2"
69+
},
70+
{
71+
"type": "patchouli:text",
72+
"text": "hexcasting.page.patterns_as_iotas.further_notes.3"
6473
}
6574
]
6675
}

0 commit comments

Comments
 (0)