Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions projects/1.20-fabric/assets/hexthings/hexthings/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[见主文档](/projects/1.20/assets/hexthings/hexthings)
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
{
hexthings: {
book: {
patterns: {
utils: {
"": "Utilities",
noop: "Does nothing, but the tail can be any shape. Useful as \
a placeholder to be replaced later",
insert: "Similar to $(l:patterns/lists#hexcasting:replace)$(action)Surgeon's Exaltation/$, but replaces the \
element of the first list instead with the $(o)contents/$ of the second list, rather than with the list itself.",
unquote: "This pattern can be used to place raw iota directly into an \
Introspection-Restrospection pair. After drawing this pattern, all \
subsequent patterns are \"unescaped\", allowing them to be executed as \
normal until a $(l:patterns/hexutils#hexthings:requote)$(action)Retrojection/$ is \
encountered.",
requote: "When used after an \
$(l:patterns/hexutils#hexthings:unquote)$(action)Introjection/$, \
This pattern puts all iota on the stack into the escaped list, with the \
previous state of the stack being restored.",
isgreatersent: "Pushes if my current sentinel is a \
$(l:patterns/great_spells/greater_sentinel)$(action)Greater Sentinel/$, \
or $(l:patterns/consts#hexcasting:const/null)$(thing)Null/$ if I \
have no sentinel at all."
},
dict: {
"": "Dictionary Manipulation",
empty_dict: "Creates an empty Dictionary iota.",
abs: "Pushes the number of entries in the Dictionary",
replace: "Places the iota in the Dictionary at the specified key. Not every \
iota type is allowed to be used as a key, with notable the exceptions being \
$(l:casting/influences)$(thing)Garbage/$ and $(l:patterns/meta#hexcasting:\
eval/cc)$(thing)Jump/$ iota. Attempting to set the value of a key to \
$(l:patterns/consts#hexcasting:const/null)$(thing)Null/$ will remove the \
key the same way using $(l:patterns/dict#hexcasting:remove_from)$(action)\
Excisor's Distillation/$ would.",
remove_from: "Removes the key-value pair from the Dictionary, pushing the \
previous value, or $(l:patterns/consts#hexcasting:const/null)$(thing)Null/$ \
if no value was present.",
index_of: "Pushes the value present at the provided key, or $(l:patterns/consts\
#hexcasting:const/null)$(thing)Null/$ if no value was present.",
dict_keys: "Pushes a list of the keys present in the Dictionary.",
dict_vals: "Pushes a list of the values present in the Dictionary.",
dict_ents: "Pushes a list of the key-value pairs in this Dictionary, each being \
a 2 element list."
},
uiua: {
"": "Advanced List Operators",
uiua_take: "Keeps elements of the list based on the second argument. If it's a \
number and positive, it keeps the first $(o)n/$ elements of the list, if \
negative; the last $(o)n/$. If given a list, then its elements are treated as \
indices to keep.",
uiua_drop: "The exact inverse of $(l:patterns/uiua#hexthings:uiua_take)$(action)\
Retention Distillation/$, dropping the specified elements instead of dropping the \
rest.",
uiua_rotate: "Shifts the contents of the list by the specified amount, wrapping elements \
that go \"outside\" the list.",
uiua_where: "Pushes a list containing the indices of values that are \
$(l:patterns/logic#hexcasting:bool_coerce)considered true by Nature/$.",
div: "Pushes a list containing pairs of values corresponding to the values at that \
index in each list.",
mul: "Pushes a list containing every combination of elements between the two lists."
}
},
info: {
iota_embedding: {
"title": "Iota Embedding",
"text": {
"1": "In my studies, I've discovered a way to... \"embed\" iota within \
a hex itself, allowing me to avoid the need to reconstruct them with \
every cast. This becomes especially useful when combined with \
$(l:items/hexcasting)$(item)casting items/$, allowing for much faster \
casts, or simply making the process of using the hex within them easier.",
"2": "Typically, this process involves starting an Introspection-\
Retrospection pair, using a placeholder pattern, modifying the list \
after the fact using $(l:patterns/lists#hexcasting:index_of)$(action)\
Locator's Distillation/$ and $(l:patterns/lists#hexcasting:replace)\
$(action)Surgeon's Exaltation/$, and placing a $(l:patterns/lists\
#hexcasting:splat)$(action)Flock's Disintegration/$ afterwards to \
access the iota — a very annoying and time-consuming process, certainly. \
It does seem my forays into this art are viewed favorably by Nature, \
as I've recently found two patterns for simplifying the process."
}
}
},
noop_examples: {
"header": "Patience Patterns",
"text": "Some examples of Patience patterns that can be used."
}
}
},

hexcasting: {
action: {
"hexthings:": {
noop: "Patience",
insert: "Flattening Exaltation",
unquote: "Introjection",
requote: "Retrojection",
isgreatersent: "Shard Reflection",
empty_dict: "Impasse Reflection",
dict_keys: "Accessor's Purification",
dict_vals: "Accessed's Purification",
dict_ents: "Entry Purification",
uiua_take: "Retention Distillation",
uiua_drop: "Rejection Distillation",
uiua_rotate: "Ferris Distillation",
uiua_where: "Deduction Purification"
},

// use this to add shortened versions of pattern names if the full name won't fit in the ingame book
// you don't need to add an entry for every pattern - the above value will be used as a default
book: {
"hexthings:": {
},
},
},
special: {
"hexthings:": {
noop: "Patience"
}
},
mishap: {
"invalid_unquote": "Did not first cast Introjection.",
"invalid_key_type": "An iota of type %s is not allowed as a key.",
invalid_value: {
class: {
int_list: "a list of numbers"
}
}
}
},

text: {
"autoconfig.hexthings": {
title: "HexThings Config",

category: {
client: "Client",
server: "Server",
},

option: {
client: {
dummyClientConfigOption: {
"": "Dummy Client Config Option",
"@Tooltip": "This is an example of a client-side config option that accepts a boolean.",
},
},

server: {
dummyServerConfigOption: {
"": "Dummy Server Config Option",
"@Tooltip": "This is an example of a server-side config option that accepts an integer.",
},
},
},
},
},
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[
{
"type": "indirect",
"source": "projects/1.20/assets/hexthings/hexthings"
}
]
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
[见主文档](/projects/1.20/assets/modrinth-hexxyplanes/hexxyplanes)
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
{
hexxyplanes: {
book: {
interop: {
oneironaut: {
"": "Oneironaut",
patterns: {
spells: {
exit_deconstruct: "Puts the dimension and the coordinates of my hexplane exit onto the stack."
}
}
}
},
patterns: {
spells: {
hexplane: {
"": "Hexplanes",
get_plane: "Retrieves an iota representing my hexplane.",
exit_reveal: "Displays my hexplane exit to me.",
enter_plane: {
"1": "Sends the target to the provided hexplane. Costs 2 \
charged amethyst if the target is not already in a hexplane, \
and 5 dust otherwise.",
"2": "Upon entering a plane, the two blocks on the spawn point are \
broken, as if by a player, and any fragile blocks $(l)are not \
dropped./$ The spawn point is signified by a purple tinted version \
of the blocks that make up the walls."
},
plane_pos: "Gets the spawn position within this plane as a vector.",
plane_banish: {
"1": "Forces the target out of the hexplane, costing 5 shards \
if used on something other than myself, and being free otherwise. \
Mishaps if not currently in a hexplane.",
"2": "If the target is a player, they are sent to their hexplane exit. \
If the target is any other entity, they are sent to my hexplane exit. \
The exit can be set using $(l:patterns/spells/hexplane#hexxyplanes:plane_exit)\
$(action)Planar Marking/$."
},
plane_exit: {
"1": "Marks the target location as my exit for the hexplane, \
or resets it to be my spawn location if passed null, \
causing me to be sent there upon using $(l:patterns/spells/hexplane\
#hexxyplanes:plane_banish)$(action)Planar Expulsion/$ on myself.",
"2": "Non-player entities will be sent here when using \
$(l:patterns/spells/hexplane#hexxyplanes:plane_banish)$(action)Planar \
Expulsion/$. Mishaps if the exit is within a hexplane."
}
}
}
},
info: {
"hexplane": {
"": "Hexplanes",
"text": {
"1": "Since pushing past the barrier and seeing a realm of thought, \
I wondered what else may be accessible by simply... applying some \
more pressure. After doing so I saw a reality of cubes upon cubes \
upon cubes, containers of pure white waiting for someone to inhabit \
them. I managed to devise some patterns to force my way into this \
plane, and upon following through I found myself inside one of these \
cubes.",
"2": "I felt my media expand to fill the space, but it curiously \
refused to go any further than the walls that surround me. I feel as \
though I can safely assume that this area is entirely my own, although \
it doesn't seem to take kindly to remodeling, as punching the walls \
resulted in me being shunted back to reality (maybe being more careful \
would prevent this next time?). The block at the position I enter this \
plane at is oddly discoloured, convenient for keeping my heading I suppose."
}
}
}
},
tooltip: {
"hexplane": "Hexplane"
},
error: {
bad_respawn: "Your respawn point is within the hexplane. Sending to world spawn..."
}
},

hexcasting: {
action: {
"hexxyplanes:": {
get_plane: "Planar Reflection",
enter_plane: "Planar Intrusion",
plane_pos: "Planar Purification",
plane_banish: "Planar Expulsion",
plane_exit: "Planar Marking",
exit_reveal: "Reveal Mark",
exit_deconstruct: "Marker's Gambit"
},

// use this to add shortened versions of pattern names if the full name won't fit in the ingame book
// you don't need to add an entry for every pattern - the above value will be used as a default
book: {
},
},
mishap: {
not_in_hexplane: "Must be in a hexplane to cast this pattern.",
invalid_value: {
class: {
plane: "a Hexplane"
},
vecnull: "a vector or null"
}
}
},

text: {
hexxyplanes: {
},

"autoconfig.hexxyplanes": {
title: "Hexxyplanes Config",

category: {
client: "Client",
server: "Server",
},

option: {
client: {
dummyClientConfigOption: {
"": "Dummy Client Config Option",
"@Tooltip": "This is an example of a client-side config option that accepts a boolean.",
},
},

server: {
dummyServerConfigOption: {
"": "Dummy Server Config Option",
"@Tooltip": "This is an example of a server-side config option that accepts an integer.",
},
},
},
},
},
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[
{
"type": "indirect",
"source": "projects/1.20/assets/modrinth-hexxyplanes/hexxyplanes"
}
]
16 changes: 16 additions & 0 deletions projects/1.20/assets/hexthings/hexthings/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
### 总概

```mermaid
flowchart LR
1.20.1 -->|indirect| 1.20.1-fabric
```

```
1.20.1
└── 1.20.1-fabric
```

### 链接区域

- [1.20.1](/projects/1.20/assets/hexthings/hexthings)
- [1.20.1-fabric](/projects/1.20-fabric/assets/hexthings/hexthings)
16 changes: 16 additions & 0 deletions projects/1.20/assets/modrinth-hexxyplanes/hexxyplanes/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
### 总概

```mermaid
flowchart LR
1.20.1 -->|indirect| 1.20.1-fabric
```

```
1.20.1
└── 1.20.1-fabric
```

### 链接区域

- [1.20.1](/projects/1.20/assets/modrinth-hexxyplanes/hexxyplanes)
- [1.20.1-fabric](/projects/1.20-fabric/assets/modrinth-hexxyplanes/hexxyplanes)
Loading
Loading