diff --git a/projects/1.19/assets/ephemera/ephemera/README.md b/projects/1.19/assets/ephemera/ephemera/README.md new file mode 100644 index 000000000000..190619b195ab --- /dev/null +++ b/projects/1.19/assets/ephemera/ephemera/README.md @@ -0,0 +1 @@ +[见主文档](/projects/1.20/assets/ephemera/ephemera) \ No newline at end of file diff --git a/projects/1.19/assets/ephemera/ephemera/lang/en_us.json b/projects/1.19/assets/ephemera/ephemera/lang/en_us.json new file mode 100644 index 000000000000..6016108e778c --- /dev/null +++ b/projects/1.19/assets/ephemera/ephemera/lang/en_us.json @@ -0,0 +1,144 @@ +{ + "itemGroup.ephemera.ephemera": "Ephemera", + + "item.ephemera.media_helmet": "Hexformed Helmet", + "item.ephemera.media_chestplate": "Hexformed Chestplate", + "item.ephemera.media_leggings": "Hexformed Leggings", + "item.ephemera.media_boots": "Hexformed Boots", + + "block.ephemera.relay_tp_detector": "Network Gateway Probe", + "block.ephemera.relay_index": "Network Routing Index", + "block.ephemera.sneakyslate": "Rooted Slate", + "block.ephemera.fakeslate": "Inert Slate", + "block.ephemera.sneakyslate.blank": "Blank Rooted Slate", + "block.ephemera.sneakyslate.written": "Patterned Rooted Slate", + + "hexcasting.spell.ephemera:magearmor": "Instant Aegis", + "hexcasting.spell.book.ephemera:magearmor": "Instant Aegis", + "hexcasting.spell.ephemera:networkscan": "Network Distillation", + "hexcasting.spell.book.ephemera:networkscan": "Network Dstln.", + "hexcasting.spell.ephemera:networktp": "Network Gateway", + "hexcasting.spell.book.ephemera:networktp": "Network Gateway", + "hexcasting.spell.ephemera:networkindex": "Routing Distillation", + "hexcasting.spell.book.ephemera:networkindex": "Routing Dstln.", + "hexcasting.spell.ephemera:readframerotation": "Decorator's Purification", + "hexcasting.spell.book.ephemera:readframerotation": "Decorator's Prfn.", + "hexcasting.spell.ephemera:setframerotation": "Decorator's Gambit", + "hexcasting.spell.ephemera:paintconjured": "Externalize Pigment", + "hexcasting.spell.ephemera:particleburst": "Particle Burst", + "hexcasting.spell.ephemera:invisibility": "Hidden Sun's Zenith", + "hexcasting.spell.ephemera:getstatus": "Apothecary's Purification", + "hexcasting.spell.book.ephemera:getstatus": "Apothecary's Prfn.", + "hexcasting.spell.ephemera:getstatuscategory": "Apothecary's Purification II", + "hexcasting.spell.book.ephemera:getstatuscategory": "Apothecary's Prfn. II", + "hexcasting.spell.ephemera:getstatusduration": "Pharmacist's Distillation", + "hexcasting.spell.book.ephemera:getstatusduration": "Pharmacist's Dstln.", + "hexcasting.spell.ephemera:getstatuslevel": "Pharmacist's Dstln. II", + "hexcasting.spell.book.ephemera:getstatuslevel": "Pharmacist's Distillation II", + "hexcasting.spell.ephemera:getbystatus": "Zone Exaltation: Status", + "hexcasting.spell.book.ephemera:getbystatus": "Zone Exltn.: Status", + "hexcasting.spell.ephemera:getbystatusinverse": "Zone Exaltation: Not-Status", + "hexcasting.spell.book.ephemera:getbystatusinverse": "Zone Exltn.: Not-Status", + "hexcasting.spell.ephemera:getbystatussingle": "Entity Distillation: Status", + "hexcasting.spell.ephemera:removestatus": "Cleanse Status", + "hexcasting.spell.ephemera:getabsorption": "Ablation Purification", + "hexcasting.spell.ephemera:filteredentityraycast": "Scout's Exaltation", + "hexcasting.spell.ephemera:gaussianrand": "Entropy Reflection II", + "hexcasting.spell.ephemera:plasmabeam": "Plasma Beam", + "hexcasting.spell.ephemera:hash": "Hashing Purification", + "hexcasting.spell.ephemera:hashbits": "undocumented hash-to-numbers pattern", + "hexcasting.spell.ephemera:revealtoother": "Postman's Gambit", + "hexcasting.spell.ephemera:getrevealcost": "Postage Purification", + "hexcasting.spell.ephemera:clearrevealcost": "Postman's Gambit II", + "hexcasting.spell.ephemera:repair": "Induce Mending", + "hexcasting.spell.ephemera:getdurabilitymainhand": "Menderbug's Reflection", + "hexcasting.spell.book.ephemera:getdurabilitymainhand": "Menderbug's Rfln.", + "hexcasting.spell.ephemera:getdurabilityoffhand": "Menderbug's Reflection II", + "hexcasting.spell.book.ephemera:getdurabilityoffhand": "Menderbug's Rfln. II", + + "hexcasting.mishap.location_ephemera:inputrelaytprange": "Target entity is too far from target node at %s.", + "hexcasting.mishap.location_ephemera:outputrelaytprange": "Could not find connected node within range of %s.", + "hexcasting.mishap.ephemera:nonconjured": "Expected a conjured block at %s, but got %s.", + "hexcasting.mishap.ephemera:missingeffect": "Expected %s to be affected by %s, but they are not.", + "ephemera.mishap.noitemframe": "an item frame", + "ephemera.mishap.entitytypelistplease": "a list of entity types", + "ephemera.mishap.toolongiota": "an iota that displays as less than 256 characters", + "hexcasting.mishap.ephemera:blacklist": "This effect has been blacklisted via tag.", + "hexcasting.mishap.ephemera:instant": "How did you even get that iota?", + + "item.ephemeral.media_armor.tooltip.1": "Bestows %s %s upon the wearer.", + + "ephemera.entry.miscpatterns": "Misc. Ephemera Patterns", + "ephemera.entry.invisibility": "Invisibility", + "ephemera.entry.status_iotas": "Status Iotas", + "ephemera.entry.network": "Link Amenities", + "ephemera.entry.revealtoother": "Messaging", + "ephemera.entry.mending": "Induce Mending", + "ephemera.entry.hashing": "Iota Hashing", + "ephemera.entry.specialslates": "Modified Slates", + + "ephemera.page.paintconjured.1": "Accepts a vector and an itemtype representing a pigment. Costs a negligible amount of media if targeting my own block, or 1 Amethyst Dust if not.", + "ephemera.page.paintconjured.2": "Sets the colors of the conjured block corresponding to the vector to the colorset represented by the passed pigment, or mine if passed a NULL iota.$(br2)Not guaranteed to work with unconventional forms of conjured matter. ", + "ephemera.page.paintconjured.3": "Feels strangely celebratory, as if something similar was once used in grand festivals where teams would splatter their colors all over their opponents' territory in a bid for ideological dominance.", + "ephemera.page.miscpatterns.1": "I've found a couple patterns designed to interact with item frames. Nothing fancy, but they're nice utility for things like controlling my spell circles.$(br2)Additionally, it seems Sorter's Purification works on them just fine, so my attempts to find a dedicated frame-item pattern were pointless.", + "ephemera.page.miscpatterns.2": "Accepts an item frame entity, and returns its rotation, from 0 to 7.", + "ephemera.page.miscpatterns.3": "Accepts an item frame entity and an integer from 0 to 7, and sets its rotation to the number. Costs a negligible amount of media.", + "ephemera.page.miscpatterns.4": "As $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l), but also accepts a list of entity type iotas. Any entity whose type is not present in the list will be ignored. Costs an amount of media slightly less negligible than that of the aforementioned pattern.", + "ephemera.page.miscpatterns.5": "Returns a random number between 0 and 1, with a gaussian distribution.", + "ephemera.page.particleburst.1": "Accepts two vectors and two numbers, and uses them to define a burst of particles. Costs a negligible amount of media.", + "ephemera.page.particleburst.2": "The first vector determines the burst's origin position, and the second vector determines its direction and speed. The first number determines the scale of random numbers added to each position component, and the second does the same for the direction vector.", + "ephemera.page.invisibility.1": "Functions just like the normal $(l:patterns/great_spells/zeniths)Zeniths$(/l), applying Invisibility. Costs one amethyst dust per three seconds.", + "ephemera.page.status_iotas.1": "These patterns work with a type of iota that represents lingering effects on a creature, which can allow me to asses the state of a creature more thoroughly than with only Nurse's Purification.$(br)While my research suggests that status iotas representing instantaneous effects are possible, they would be very difficult to obtain, and I cannot think of any use case for them at the moment.", + "ephemera.page.status_iotas.2": "Accepts a living entity, and returns a list of status iotas representing all effects on the target.", + "ephemera.page.status_iotas.3": "Accepts a status effect type, and returns a number based on whether the effect is likely to be helpful, harmful, or neutral to a creature.", + "ephemera.page.status_iotas.4": "Accepts an entity and a status effect type, and returns the effect on the target's duration in seconds.", + "ephemera.page.status_iotas.5": "Accepts an entity and a status effect type, and returns the effect on the target's potency.", + "ephemera.page.status_iotas.6": "Accepts a status effect type and a vector, and returns an entity at that position which has that effect.", + "ephemera.page.status_iotas.7": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which have that effect.", + "ephemera.page.status_iotas.8": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which do not have that effect.", + "ephemera.page.status_iotas.9": "Accepts a living entity, and returns how much damage it can Absorb before its health is affected.", + "ephemera.page.status_iotas.10": "Accepts an entity and a status effect type, and removes that status effect from the entity. Cost is based on the effect's innate harmfulness, its potency, and its remaining duration.", + "ephemera.page.status_iotas.11": "Costs more if attempting to remove a positive effect from an entity other than myself.$(br2)All of the patterns which deal with a specific status effect on an entity have the side effect that if the entity does not currently have the specified effect, the pattern will fail and inflict nausea upon me.", + "ephemera.page.magearmor.1": "I've discovered a rather interesting spell, capable of producing a defensive media barrier that can match and even exceed the protective abilities of many kinds of conventional armor. It can even apply a wide array of $(l:ephemera:patterns/spells/status_iotas)persistent effects$(/l) to the wearer, allowing for incredible versatility.", + "ephemera.page.magearmor.2": "Accepts a player to grant the armor to, the durability of the armor, the protection value of the armor (max 10), a status effect to apply, and that effect's level. The latter two can be replaced with any non-status iota to ignore them.", + "ephemera.page.magearmor.3": "Of course, this barrier is by no means indestructible, and its durability decays steadily in addition to any damage it takes from hits. The base rate of this decay can be described as one \"point\" per second, plus additional points equal to the squared strength of any effect imbued into it. Additionally, it will disappear instantly if removed from the wearer, so there is no way to repair it, short of recasting the spell to overwrite its current state.", + "ephemera.page.magearmor.4": "The media cost for this spell is a bit complicated: A base of one amethyst dust per 60 durability, multiplied by the armor's protection value raised to the power of 1.5, times the level+1 of any status effect. Thus, producing no-status strength 10 armor with one minute's worth of durability costs ~31.5 dust. Adding Regeneration 2 increases that media cost to ~94.5 dust, and causes it to only last 36 seconds.", + "ephemera.page.magearmor.5": "This explanation assumes I am wearing no other armor, in practice the cost can be reduced to as little as 25%% of that formula's output if all but one of my armor slots is already occupied by more conventional armor.", + "ephemera.page.plasmabeam.1": "One of the more destructive spells I've encountered, this spell converts some of the media making up a wisp into a plasma-like blast of energy that pierces through and damages any creatures (including myself) in the way, and potentially destroys blocks not noted for their durability.", + "ephemera.page.plasmabeam.2": "Fires the blast along the motion vector of the wisp casting the spell, or a random vector if it is not moving. Costs two amethyst dust.", + "ephemera.page.plasmabeam.3": "You know what? I don't like this spell. I'm removing its entry from the book. It will not be present whenever I port the mod to 1.20.1.", + "ephemera.page.network.1": "I've devised a suite of patterns (plus a couple of blocks) to make links a bit more useful for things other than data transmission and media sharing.$(br2)Note that the patterns which fetch information about the network make no promises regarding whether returned linkables are within ambit.", + "ephemera.page.network.2": "Scans the link network connected to the input linkable up to a recursion depth equal to the input number (max 32), and returns a list of all connected linkables. Costs a negligible amount of media.", + "ephemera.page.network.3": "Accepts an entity to teleport, a linkable to use for access to its network, and a destination. If the entity is within 8 blocks of the linkable, and there is a network node within 4 blocks of the destination, the entity will be teleported. Cost varies based on what entity is teleported.", + "ephemera.page.network.4": "Outputs a brief redstone signal when an adjacent relay is used as the output for a casting of Network Gateway.", + "ephemera.page.network.5": "When rclicked with a focus in the main hand, attempts to store its iota in the block. When the focus is in the offhand, writes the stored iota to the focus.", + "ephemera.page.network.6": "Accepts a linkable to use for network access, and any iota. If a relay connected to the network has an adjacent Network Routing Index with the same iota, returns that relay's position. Costs half an amethyst dust.", + + "ephemera.page.revealtoother.1": "Accepts a player and any iota less than 256 characters long, and shows that iota to them as if they had cast Reveal, also telling them who sent the message. Cost is inversely proportional to the length of time since they were last targeted by this spell.", + "ephemera.page.revealtoother.2": "Accepts a player and returns how much amethyst dust it would cost to send them a message via Postman's Gambit, between 1/10 of a dust and 10 dust.", + "ephemera.page.revealtoother.3": "Resets the cost of sending me a message via Postman's Gambit back to 1/10 of a dust. Costs 1/10 of a dust.", + + "ephemera.page.mending.1": "Accepts a raw media item on the ground, and attempts to use it to repair a tool in my other hand.", + "ephemera.page.mending.2": "Generally only works on items enchanted with Mending, which are already damaged. Restores twenty points of damage for each amethyst dust's worth of media.", + "ephemera.page.mending.3": "Returns how many times the item in my other hand can be used without breaking, durability-manipulating effects notwithstanding.", + "ephemera.page.mending.4": "As previous, targeting the item in the hand I'm casting this with. Most useful with delayed casts of one form or another.", + + "ephemera.page.hashing.1": "I've discovered a curious pattern which scrambles an iota into an unreadable mess. However, unlike Garbage iotas, $(o)this$() mess still contains data, and running the same iota through the pattern will always produce the same mess (known as a hash). While it is not possible to recover an iota from a hash, it can be quite useful for comparisons in situations where I cannot save the unaltered iota.", + "ephemera.page.hashing.2": "Accepts any iota, and converts it into its hashed form.", + + "ephemera.page.specialslates.1": "I've designed a couple types of slate to be used in spell circles. While they don't provide any groundbreaking new functionality, they can be nice to have.", + "ephemera.page.specialslates.2": "Works just like a normal slate, but is capable of sending the media wave into the block it is placed on.", + "ephemera.page.specialslates.3": "Crafted with a normal slate and a stonecutter.$(br2)Looks just like a normal slate, but can't direct a media wave at all. Cannot be written to.", + + "ephemera.page.forgewarning.1": "Mod author's note for Forge users: This spell does not work on Forge. I do not know why. I've set the cost on Forge to zero so at least it won't waste media. Sorry.$(br2)I'll try to get it working eventually.", + "ephemera.page.forgewarning.2": "Mod author's note for Forge users: This spell does not produce particles on Forge. I do not know why. The entity damage and block breaking still work fine, at least. Sorry.$(br2)I'll try to get it working eventually (no I won't).", + + "hexcasting.iota.ephemera:potion": "Status Effect", + "hexcasting.iota.ephemera:hash": "Hash", + "ephemera.iota.hashlabel": "Hashed data: %s", + + "text.ephemera.clearHistoryResponse": "Cleared reveal history map.", + "text.ephemera.revealIntroduction": "Transmission from %s: ", + + "enchantment.ephemera.shame": "Curse of Shame" +} \ No newline at end of file diff --git a/projects/1.19/assets/ephemera/ephemera/lang/zh_cn.json b/projects/1.19/assets/ephemera/ephemera/lang/zh_cn.json new file mode 100644 index 000000000000..f3e7631de545 --- /dev/null +++ b/projects/1.19/assets/ephemera/ephemera/lang/zh_cn.json @@ -0,0 +1,144 @@ +{ + "itemGroup.ephemera.ephemera": "Ephemera", + + "item.ephemera.media_helmet": "咒塑头盔", + "item.ephemera.media_chestplate": "咒塑胸甲", + "item.ephemera.media_leggings": "咒塑护腿", + "item.ephemera.media_boots": "咒塑靴子", + + "block.ephemera.relay_tp_detector": "网络门径探测器", + "block.ephemera.relay_index": "网络路由索引", + "block.ephemera.sneakyslate": "根植石板", + "block.ephemera.fakeslate": "惰性石板", + "block.ephemera.sneakyslate.blank": "空白根植石板", + "block.ephemera.sneakyslate.written": "有图案的根植石板", + + "hexcasting.spell.ephemera:magearmor": "瞬时庇护", + "hexcasting.spell.book.ephemera:magearmor": "瞬时庇护", + "hexcasting.spell.ephemera:networkscan": "网络之馏化", + "hexcasting.spell.book.ephemera:networkscan": "网络之馏化", + "hexcasting.spell.ephemera:networktp": "网络门径", + "hexcasting.spell.book.ephemera:networktp": "网络门径", + "hexcasting.spell.ephemera:networkindex": "路由之馏化", + "hexcasting.spell.book.ephemera:networkindex": "路由之馏化", + "hexcasting.spell.ephemera:readframerotation": "装潢师之纯化", + "hexcasting.spell.book.ephemera:readframerotation": "装潢师之纯化", + "hexcasting.spell.ephemera:setframerotation": "装潢师之策略", + "hexcasting.spell.ephemera:paintconjured": "外化染色剂", + "hexcasting.spell.ephemera:particleburst": "粒子迸发", + "hexcasting.spell.ephemera:invisibility": "隐阳当空", + "hexcasting.spell.ephemera:getstatus": "药师之纯化", + "hexcasting.spell.book.ephemera:getstatus": "药师之纯化", + "hexcasting.spell.ephemera:getstatuscategory": "药师之纯化,第二型", + "hexcasting.spell.book.ephemera:getstatuscategory": "药师之纯化,第二型", + "hexcasting.spell.ephemera:getstatusduration": "药剂师之馏化", + "hexcasting.spell.book.ephemera:getstatusduration": "药剂师之馏化", + "hexcasting.spell.ephemera:getstatuslevel": "药剂师之馏化,第二型", + "hexcasting.spell.book.ephemera:getstatuslevel": "药剂师之馏化,第二型", + "hexcasting.spell.ephemera:getbystatus": "区域之提整:状态", + "hexcasting.spell.book.ephemera:getbystatus": "区域之提整:状态", + "hexcasting.spell.ephemera:getbystatusinverse": "区域之提整:非状态", + "hexcasting.spell.book.ephemera:getbystatusinverse": "区域之提整:非状态", + "hexcasting.spell.ephemera:getbystatussingle": "实体之馏化:状态", + "hexcasting.spell.ephemera:removestatus": "清除状态", + "hexcasting.spell.ephemera:getabsorption": "销蚀之纯化", + "hexcasting.spell.ephemera:filteredentityraycast": "侦查员之提整", + "hexcasting.spell.ephemera:gaussianrand": "熵之精思,第二型", + "hexcasting.spell.ephemera:plasmabeam": "等离子束", + "hexcasting.spell.ephemera:hash": "哈希之纯化", + "hexcasting.spell.ephemera:hashbits": "未记录的哈希至数转换图案", + "hexcasting.spell.ephemera:revealtoother": "邮递员之策略", + "hexcasting.spell.ephemera:getrevealcost": "邮递员之纯化", + "hexcasting.spell.ephemera:clearrevealcost": "邮递员之策略,第二型", + "hexcasting.spell.ephemera:repair": "咒感修补", + "hexcasting.spell.ephemera:getdurabilitymainhand": "维修虫之精思", + "hexcasting.spell.book.ephemera:getdurabilitymainhand": "维修虫之精思", + "hexcasting.spell.ephemera:getdurabilityoffhand": "维修虫之精思,第二型", + "hexcasting.spell.book.ephemera:getdurabilityoffhand": "维修虫之精思,第二型", + + "hexcasting.mishap.location_ephemera:inputrelaytprange": "目标实体距%s处的目标节点过远。", + "hexcasting.mishap.location_ephemera:outputrelaytprange": "无法在范围%s内找到已连接的节点。", + "hexcasting.mishap.ephemera:nonconjured": "%s处本应为一个构筑的方块,而实际为%s。", + "hexcasting.mishap.ephemera:missingeffect": "%s本应拥有%s,而实际没有。", + "ephemera.mishap.noitemframe": "一个物品展示框", + "ephemera.mishap.entitytypelistplease": "一个实体类型列表", + "ephemera.mishap.toolongiota": "一个可用少于256个字符显示的iota", + "hexcasting.mishap.ephemera:blacklist": "此效果已被标签禁用。", + "hexcasting.mishap.ephemera:instant": "是如何拿到这个iota的?", + + "item.ephemeral.media_armor.tooltip.1": "给予穿戴者%s %s。", + + "ephemera.entry.miscpatterns": "Ephemera:杂项图案", + "ephemera.entry.invisibility": "隐形", + "ephemera.entry.status_iotas": "状态 Iota", + "ephemera.entry.network": "链接实用图案", + "ephemera.entry.revealtoother": "信息传递", + "ephemera.entry.mending": "咒感修补", + "ephemera.entry.hashing": "Iota 哈希", + "ephemera.entry.specialslates": "变种石板", + + "ephemera.page.paintconjured.1": "接受一个向量与代表染色剂的物品类型。如果目标为我自己的方块,消耗极少量媒质;否则消耗 1 个紫水晶粉。", + "ephemera.page.paintconjured.2": "将所给位置处构筑方块的颜色设置为所给染色剂的颜色;如果传入的是 Null,则将其设置为我意识的颜色。$(br2)不保证对非传统的构筑物质有效。", + "ephemera.page.paintconjured.3": "这种效果有着奇怪的庆典感,就好像它曾用于某个盛大的节庆活动,与会队伍会把自己队的颜色泼洒到对手的领地上,类似于意识层面上的占领。", + "ephemera.page.miscpatterns.1": "我发现了一些专为物品展示框交互设计的图案。它们不是什么高端法术,但确实是控制法术环之类事物的实用手段。$(br2)此外,分拣员之纯化对它们同样有效,因此试图寻找物品展示框专用的物品图案没有意义。", + "ephemera.page.miscpatterns.2": "接受一个物品展示框实体,并返回其中物品的朝向,值必然在 0 到 7 之间。", + "ephemera.page.miscpatterns.3": "接受一个物品展示框实体与一个 0 到 7 的整数,并将物品朝向设置为该数。消耗极少量媒质。", + "ephemera.page.miscpatterns.4": "与$(l:patterns/basics#hexcasting:raycast/entity)侦查员之馏化$(/l)类似,但能够接受一个实体类型 iota 列表。类型不在该列表内的实体会被忽略。消耗的媒质量略多于上文所提图案的“极少量”。", + "ephemera.page.miscpatterns.5": "返回 0 与 1 之间的随机数,服从正态分布。", + "ephemera.page.particleburst.1": "接受两个向量和两个数,并由其触发一束粒子。消耗极少量媒质。", + "ephemera.page.particleburst.2": "第一个向量决定了粒子束的起始位置,第二个向量则决定其方向和速度。第一个数决定各位置向量分量附加多大的随机数,第二个数则以同种方式决定方向向量的随机性。", + "ephemera.page.invisibility.1": "和其他$(l:patterns/great_spells/zeniths)天顶法术$(/l)功能类似,给予隐形,每 3 秒持续时间消耗 1 个紫水晶粉。", + "ephemera.page.status_iotas.1": "这些图案主要操作代表生物身上长时效果的 iota,我可以用这些图案评估生物的状态,比只用护士之纯化更加深入彻底。$(br)虽然我的研究表明,代表瞬时效果的状态 iota 有存在的可能,但它们非常难以获取,而且我目前没想到它们有什么用途。", + "ephemera.page.status_iotas.2": "接受一个生物,并返回目标当前所有效果组成的列表 iota。", + "ephemera.page.status_iotas.3": "接受一个状态效果,并根据该效果对生物产生正面、负面,或中性影响返回一个数。", + "ephemera.page.status_iotas.4": "接受一个实体和一个状态效果,并返回目标身上所给状态效果的持续时间,以秒计。", + "ephemera.page.status_iotas.5": "接受一个实体和一个状态效果,并返回目标身上所给状态效果的强度。", + "ephemera.page.status_iotas.6": "接受一个状态效果和一个向量,并返回该处带有该状态效果的实体。", + "ephemera.page.status_iotas.7": "接受一个状态效果,一个向量和一个数($(o)n$()),返回该位置给定距离范围($(o)n$())内所有带有给定状态效果生物的列表。", + "ephemera.page.status_iotas.8": "接受一个状态效果,一个向量和一个数($(o)n$()),返回该位置给定距离范围($(o)n$())内所有无给定状态效果生物的列表。", + "ephemera.page.status_iotas.9": "接受一个活体实体,并返回其在生命值受影响前能吸收的伤害量。", + "ephemera.page.status_iotas.10": "接受一个实体和一个状态效果,并移除该实体身上的所给状态效果。消耗由效果自身的伤害性、强度、剩余持续时间决定。", + "ephemera.page.status_iotas.11": "若是要移除非自身实体身上的正面效果,则消耗会增加。$(br2)所有需要检测实体身上有无所给状态效果的图案都有副作用。如果该实体当前没有这种效果,则图案会失效,并给予我反胃。", + "ephemera.page.magearmor.1": "我发现了一种比较有趣的法术,它能够产生防御性的媒质屏障,防护力媲美甚至超过许多种传统盔甲。此类屏障甚至还能给予穿戴者许多$(l:ephemera:patterns/spells/status_iotas)持久效果$(/l),堪称泛用。", + "ephemera.page.magearmor.2": "接受作为盔甲接收方的玩家,盔甲的耐久度,盔甲的护甲值(最多为 10),施加的状态效果,状态效果的等级。最后两个参数可用其他类型的 iota 代替,此时这两个参数会被忽略。", + "ephemera.page.magearmor.3": "当然,这种屏障并非无法破坏。除去受击致损外,其耐久度还会持续减少。这种减少效应的基础速率看作每秒 1 “点”,则还需附加上其中效果等级平方个“点”。此外,穿戴者脱下后它们会立刻消失。换言之,除非重新施法覆写其状态,否则没有方法修复它们。", + "ephemera.page.magearmor.4": "此法术的媒质消耗比较复杂:每 60 点耐久度基础消耗 1 个紫水晶粉,乘以护甲值的 1.5 次幂,再乘以任意状态效果的等级 + 1。因此,不提供状态效果、护甲值为 10、耐久度够支持 1 分钟的盔甲需消耗大约 31.5 个紫水晶粉。再令其给予生命恢复 II,消耗就来到了大约 94.5 个紫水晶粉,并且在消失前也只能坚持 36 秒。", + "ephemera.page.magearmor.5": "这一计算结果的前提是我没有穿戴其他盔甲,实际操作中消耗可以缩减到最低 25%%,出现在所有盔甲槽位中只有 1 格空出的情况中。", + "ephemera.page.plasmabeam.1": "在我见过的法术中,此法术算是极具破坏性了。此法术会将构成咒灵的一部分媒质转换成一束类似等离子体的能量,它能够穿透并伤害途径的所有生物(包括我自己),也有可能破坏强度不算高的方块。", + "ephemera.page.plasmabeam.2": "沿施法咒灵的运动向量发射冲击,未在移动则选取随机向量。消耗 2 个紫水晶粉。", + "ephemera.page.plasmabeam.3": "说实话,我不喜欢这个法术。我会删掉手册里的条目。模组更新到 1.20.1 后就不会有这个法术了。", + "ephemera.page.network.1": "我设计了一系列图案和若干方块,旨在赋予链接更多用途,除去已有数据传输和媒质共享之外。$(br2)需要注意,对于从网络中获取信息的图案,其返回的可链接事物不一定处在影响范围之内。", + "ephemera.page.network.2": "递归扫描与输入端可链接事物相连的链接网络,最大深度为所给数(最高为 32),并返回所有可链接事物组成的列表。消耗极少量媒质。", + "ephemera.page.network.3": "接受需传送的实体,用于访问网络的可链接事物,以及目的地。如果实体位于所给可链接事物 8 格之内,且距目的地 4 格之内存在网络节点,则实体会被传送。消耗量由被传送实体的类型决定。", + "ephemera.page.network.4": "如果毗邻的继链器被用作网络门径的输出端,则产生一次短时红石信号。", + "ephemera.page.network.5": "主手持有核心右击时,会尝试将核心中的 iota 存入自身。副手持有核心时,则会将存储的 iota 写入核心。", + "ephemera.page.network.6": "接受用于访问网络的可链接事物,以及任意 iota。如果网络中有继链器毗邻网络路由索引,且索引中存有同一 iota,则返回该继链器的位置。消耗 1/2 个紫水晶粉。", + + "ephemera.page.revealtoother.1": "接受一个玩家和一个长度少于 256 个字符的 iota,并向所给玩家展示该 iota,如同他们来施放揭示一般;同时也告诉他们信息的发送者。消耗与给定玩家上一次作为此法术目标后经过的时间成反比例。", + "ephemera.page.revealtoother.2": "接受一个玩家,返回紫水晶粉的数量,对应通过邮递员之策略向其发送信息的消耗,范围在 1/10 个到 10 个之间。", + "ephemera.page.revealtoother.3": "重置通过邮递员之策略向我发送信息的消耗,也即 1/10 个紫水晶粉。消耗 1/10 个紫水晶粉。", + + "ephemera.page.mending.1": "接受自然包含媒质的物品实体,用其修复我另一只手中的工具。", + "ephemera.page.mending.2": "通常只对拥有经验修补魔咒的受损物品有效。每个紫水晶粉的媒质恢复 20 点耐久度。", + "ephemera.page.mending.3": "返回我另一只手中物品在损毁前还能使用的次数,会影响耐久度使用的效果不计。", + "ephemera.page.mending.4": "和前页图案类似,但它会以施法用手中的物品为目标。最适合配合各种形式的延迟施法使用。", + + "ephemera.page.hashing.1": "我发现了一个神奇的图案,能将 iota 变成一团读不懂的乱麻。但和垃圾 iota 不一样的是,$(o)这种$()乱麻中依然含有数据,并且同样的 iota 必定给出同样的乱麻(又称哈希)。虽然哈希后的乱麻没法还原成 iota,但很适合在无法保存未经修改的 iota 的情况下用来比对。", + "ephemera.page.hashing.2": "接受任意 iota,转换成哈希值。", + + "ephemera.page.specialslates.1": "我设计了若干种可用于法术环的石板。虽然它们没有什么开创性的新功能,但有这些选择也不错。", + "ephemera.page.specialslates.2": "和普通的石板功效一样,但它能够向其所依附的方块传递媒质波。", + "ephemera.page.specialslates.3": "在切石机中加工普通石板而得。$(br2)和普通石板外观一致,但完全无法传导媒质波,且无法写入。", + + "ephemera.page.forgewarning.1": "模组作者给 Forge 用户的留言:此法术在 Forge 上无法运行。我不知道具体的原因。我已将 Forge 端中此法术的消耗设置为 0,避免浪费媒质。抱歉。$(br2)我会尽力让它正常运作。", + "ephemera.page.forgewarning.2": "模组作者给 Forge 用户的留言:此法术在 Forge 上无法产生粒子。我不知道具体的原因。至少伤害实体和破坏方块的功能依然可用。抱歉。$(br2)我会尽力让它正常运作(不我不会的)。", + + "hexcasting.iota.ephemera:potion": "状态效果", + "hexcasting.iota.ephemera:hash": "哈希", + "ephemera.iota.hashlabel": "哈希数据:%s", + + "text.ephemera.clearHistoryResponse": "已清除揭示历史。", + "text.ephemera.revealIntroduction": "来自%s的信息:", + + "enchantment.ephemera.shame": "无耻诅咒" +} \ No newline at end of file diff --git a/projects/1.19/assets/oneironaut/oneironaut/README.md b/projects/1.19/assets/oneironaut/oneironaut/README.md new file mode 100644 index 000000000000..dc96bb82d960 --- /dev/null +++ b/projects/1.19/assets/oneironaut/oneironaut/README.md @@ -0,0 +1 @@ +[见主文档](/projects/1.20/assets/oneironaut/oneironaut) \ No newline at end of file diff --git a/projects/1.19/assets/oneironaut/oneironaut/lang/en_us.json b/projects/1.19/assets/oneironaut/oneironaut/lang/en_us.json new file mode 100644 index 000000000000..67d82f18556b --- /dev/null +++ b/projects/1.19/assets/oneironaut/oneironaut/lang/en_us.json @@ -0,0 +1,355 @@ +{ + "this.is.a.comment.1": "Pattern names--------------------------------------------------------------------------------------------", + "hexcasting.spell.oneironaut:getdim1": "Spatial Reflection", + "hexcasting.spell.oneironaut:getdim2": "Spatial Reflection II", + "hexcasting.spell.oneironaut:getdimoverworld": "Homeland Reflection", + "hexcasting.spell.oneironaut:getdimnether": "Inferno Reflection", + "hexcasting.spell.oneironaut:getdimheight": "Atlas' Decomposition", + "hexcasting.spell.oneironaut:getdimscale": "Ratio Purification", + "hexcasting.spell.oneironaut:dimteleport": "Noetic Gateway", + "hexcasting.spell.oneironaut:infusemedia": "Media Infusion", + "hexcasting.spell.oneironaut:swapspace": "Spatial Interchange", + "hexcasting.spell.oneironaut:paintconjured": "Externalize Pigment", + "hexcasting.spell.oneironaut:craftrod": "Conduct Rod", + "hexcasting.spell.oneironaut:getrodlook": "Baton Reflection", + "hexcasting.spell.oneironaut:getrodpos": "Baton Reflection II", + "hexcasting.spell.oneironaut:getrodstamp": "Metronome Reflection", + "hexcasting.spell.oneironaut:delayrod": "Metronome Gambit", + "hexcasting.spell.oneironaut:haltrod": "Finale", + "hexcasting.spell.oneironaut:resetrod": "Encore", + "hexcasting.spell.oneironaut:readrodram": "Williams' Reflection", + "hexcasting.spell.oneironaut:writerodram": "Williams' Gambit", + "hexcasting.spell.oneironaut:readrodramremote": "Williams' Reflection II", + "hexcasting.spell.oneironaut:writerodramremote": "Williams' Gambit II", + "hexcasting.spell.oneironaut:queryrod": "Conductor's Reflection", + "hexcasting.spell.oneironaut:rodloopactive": "Conductor's Reflection II", + "hexcasting.spell.oneironaut:craftbottomlesstrinket": "Craft Bottomless Trinket", + "hexcasting.spell.oneironaut:readframerotation": "Decorator's Purification", + "hexcasting.spell.oneironaut:setframerotation": "Decorator's Gambit", + "hexcasting.spell.oneironaut:writeidea": "Inscribe Idea", + "hexcasting.spell.oneironaut:readidea": "Retrieve Idea", + "hexcasting.spell.oneironaut:readideatime": "Metadata Purification", + "hexcasting.spell.oneironaut:readideawriter": "Metadata Distillation", + "hexcasting.spell.oneironaut:particleburst": "Particle Burst", + "hexcasting.spell.oneironaut:readsentinel": "Scrutinize Sentinel", + "hexcasting.spell.oneironaut:resistdetection": "Stealth Shroud", + "hexcasting.spell.oneironaut:detectshroud": "Discern Shroud", + "hexcasting.spell.oneironaut:invisibility": "Hidden Sun's Zenith", + "hexcasting.spell.oneironaut:circle": "Circle", + "hexcasting.spell.oneironaut:getstatus": "Apothecary's Prfn.", + "hexcasting.spell.oneironaut:getstatuscategory": "Apothecary's Prfn. II", + "hexcasting.spell.oneironaut:getstatusduration": "Pharmacist's Dstln.", + "hexcasting.spell.oneironaut:getstatuslevel": "Pharmacist's Dstln. II", + "hexcasting.spell.oneironaut:getbystatus": "Zone Exltn.: Status", + "hexcasting.spell.oneironaut:getbystatusinverse": "Zone Exltn.: Not-Status", + "hexcasting.spell.oneironaut:getbystatussingle": "Entity Distillation: Status", + "hexcasting.spell.oneironaut:removestatus": "Cleanse Status", + "hexcasting.spell.oneironaut:applymindrender": "Empower Mind Render", + "hexcasting.spell.oneironaut:reviveflayed": "Instill Psyche", + "hexcasting.spell.oneironaut:advanceautomaton": "Cellular Generation", + "hexcasting.spell.oneironaut:filteredentityraycast": "Scout's Exaltation", + "hexcasting.spell.oneironaut:gaussianrand": "Entropy Reflection II", + "hexcasting.spell.oneironaut:applynotmissing": "Uplifting Resonance", + "hexcasting.spell.oneironaut:getsoulprint": "Soulprint Reflection", + "hexcasting.spell.oneironaut:signitem": "Sign Item", + "hexcasting.spell.oneironaut:checksignature": "Signature Purification", + + "this.is.a.comment.2": "Block/Item names--------------------------------------------------------------------------------------------", + "item.oneironaut.pseudoamethyst_shard": "Pseudoamethyst Shard", + "item.oneironaut.shifting_pseudoamethyst": "Shifting Pseudoamethyst", + "item.oneironaut.thought_slurry_bucket": "Thought Slurry Bucket", + "item.oneironaut.reverberation_rod": "Reverberation Rod", + "item.oneironaut.endless_phial": "Inexhaustible Phial", + "item.oneironaut.bottomless_trinket": "Bottomless Trinket", + "item.oneironaut.echo_staff": "Echo Staff", + "item.oneironaut.beacon_staff": "Magitech Staff", + "item.oneironaut.spoon_staff": "Spoon", + "item.oneironaut.pigment_flame": "Flame Pigment", + "item.oneironaut.pigment_echo": "Echo Pigment", + "item.oneironaut.pigment_noosphere": "Noetic Pigment", + "item.oneironaut.memory_fragment": "Memory Fragment", + "item.oneironaut.memory_fragment.all": "It seems I've consumed all the memories that this crystal can offer me...", + "item.oneironaut.wisp_capture_device": "Wisp Wrangler", + "item.oneironaut.mind_scalpel": "Synaptic Scalpel", + "item.oneironaut.monkfruit": "Monkfruit", + "item.oneironaut.rending_thorns": "Rending Thorns", + + "block.oneironaut.noosphere_gate": "Inscrutable Rift", + "block.oneironaut.pseudoamethyst_block": "Pseudoamethyst Block", + "block.oneironaut.pseudoamethyst_cluster": "Pseudoamethyst Cluster", + "block.oneironaut.pseudoamethyst_bud_small": "Small Pseudoamethyst Bud", + "block.oneironaut.pseudoamethyst_bud_medium": "Medium Pseudoamethyst Bud", + "block.oneironaut.pseudoamethyst_bud_large": "Large Pseudoamethyst Bud", + "block.oneironaut.thought_slurry": "Thought Slurry", + "block.oneironaut.thought_slurry_flowing": "Flowing Thought Slurry", + "block.oneironaut.noosphere_basalt": "Noosphere Basalt", + "block.oneironaut.wisp_lantern": "Wisp Lantern", + "block.oneironaut.wisp_lantern_tinted": "Tinted Wisp Lantern", + "block.oneironaut.super_budding": "Budding Pseudoamethyst", + "block.oneironaut.sentinel_sensor": "Sentinel Sensor", + "block.oneironaut.raycast_blocker": "Anti-Raycast Slate", + "block.oneironaut.raycast_blocker_glass": "Anti-Raycast Glass", + "block.oneironaut.sentinel_trap": "Seer Impetus", + "block.oneironaut.circle": "§0§oCircle", + "block.oneironaut.hex_resistant_block": "Hex-Warded Obsidian", + "block.oneironaut.media_ice": "Sagely Ice", + "block.oneironaut.media_ice_frosted": "Transient Sagely Ice", + "block.oneironaut.media_gel": "Plasmodial Psyche", + "block.oneironaut.cell": "Dissonant Psyche", + "block.oneironaut.wisp_battery": "Wisp Weaver", + "block.oneironaut.decorative_wisp_battery": "Lesser Wisp Weaver", + "block.oneironaut.hover_elevator": "Hexcaster's Hoverlift", + "block.oneironaut.hover_repeater": "Hoverlift Repeater", + "block.oneironaut.monkfruit_bush": "Monkfruit Bush", + + "fluid.oneironaut.thought_slurry": "Thought Slurry", + + "this.is.a.comment.3": "Book entry titles--------------------------------------------------------------------------------------------", + "oneironaut.entry.dim_iotas": "Dimension Iotas", + "oneironaut.entry.status_iotas": "Status Iotas", + "oneironaut.entry.noosphere_main": "A Strange Realm", + "oneironaut.entry.noosphere_materials": "Thoughtful Materials", + "oneironaut.entry.wisp_lanterns": "Wisp Devices", + "oneironaut.entry.slipway_hint": "A Reflection on Slipways", + "oneironaut.entry.miscpatterns": "Misc. Oneironaut Patterns", + "oneironaut.entry.super_budding": "Better Media Farming", + "oneironaut.entry.idea_inscription": "Idea Inscription", + "oneironaut.entry.sentinel_detection": "Sentinel Detection", + "oneironaut.entry.detection_shielding": "Nondetection", + "oneironaut.entry.raycast_assailant": "Anti-Hex Blocks", + "oneironaut.entry.mindrender": "Mind Render", + "oneironaut.entry.soulprints": "Soulprints", + "oneironaut.entry.hover_elevator": "Hoverlifts", + "oneironaut.entry.flayrevival": "Artificial Minds", + + "this.is.a.comment.4": "Book pages--------------------------------------------------------------------------------------------", + "oneironaut.page.spaceswap.1": "Accepts two lists of two vectors, to define two cuboids, and a Spatial Imprint. These cuboids must have the exact same dimensions and rotation.", + "oneironaut.page.spaceswap.2": "I'm not quite sure what this one is supposed to do, it's always yelling at me about special dimensions. Perhaps it needs to use this special dimension as an intermediary?", + "oneironaut.page.spaceswap.3": "Exchanges the blocks within the first cuboid in your current dimension (which must be within ambit) for the blocks within the second cuboid in the dimension corresponding to the Spatial Imprint. $(l:https://www.desmos.com/calculator/ydbg8zhmyp)Cost (in amethyst dust) is logarithmic for the first 1001 blocks, after which it increases linearly$(/l).$(br)Will not exchange any unbreakable blocks.$(br)One or both of the endpoint dimensions must be the noosphere.", + "oneironaut.page.spaceswap.4": "One or both of the endpoint dimensions must be the noosphere.", + "oneironaut.page.paintconjured.1": "Accepts a vector and an itemtype representing a pigment. Costs a negligible amount of media if targeting my own block, or 1 Amethyst Dust if not.", + "oneironaut.page.paintconjured.2": "Sets the colors of the conjured block corresponding to the vector to the colorset represented by the passed pigment, or mine if passed a NULL iota.$(br2)Not guaranteed to work with unconventional forms of conjured matter. ", + "oneironaut.page.paintconjured.3": "Feels strangely celebratory, as if something similar was once used in grand festivals where teams would splatter their colors all over their opponents' territory in a bid for ideological dominance.", + "hexcasting.spell.oneironaut:dimteleport.samedim": "The spell does not do anything, similar to if I told someone to go home, when they were already at home.", + "oneironaut.page.dim_iotas.1": "I've descovered a kind of iota which seems to represent a layer of reality itself. In lieu of better understanding, I've decided to call these Spatial Imprints.", + "oneironaut.page.dim_iotas.2": "Returns a Spatial Imprint representing the dimension I am currently in. Costs a negligible amount of media.", + "oneironaut.page.dim_iotas.3": "Returns a Spatial Imprint representing the dimension my sentinel is currently in. Costs one-tenth of an amethyst dust.", + "oneironaut.page.dim_iotas.4": "Returns a Spatial Imprint representing the overworld. Costs one-tenth of an amethyst dust.", + "oneironaut.page.dim_iotas.5": "Returns a Spatial Imprint representing the nether. Costs one-tenth of an amethyst dust.$(br)There seems to be some resistance when I cast this. Perhaps I'll be able to overcome it with $(#54398a)greater skill$()...", + "oneironaut.page.dim_iotas.6": "Accepts a Spatial Imprint, and returns the lowest and highest altitudes at which blocks can exist in the corresponding dimension.", + "oneironaut.page.dim_iotas.7": "Accepts a Spatial Imprint, and returns how many blocks you'd have to travel in the overworld to travel the equivalent of one block in the input dimension.", + "oneironaut.page.dimteleport.1": "Accepts an entity and a Spatial Imprint and teleports the entity to its position in the proper dimension. Generally costs 20 Charged Amethyst.$(br)Will fail if supplied a player other than myself.", + "oneironaut.page.dimteleport.2": "If I use this to return to a dimension that I previously left within the same instant, the cost drops to five amethyst dust, as the spell can take advantage of a lingering strand of media leading back to my original position. Otherwise, it will attempt to find a safe spot to deposit me, potentially conjuring a block to prevent me from falling to my doom.$(br2)Strangely, I feel an odd sense of acceleration when transporting myself this way, along some incomprehensible axis.", + "oneironaut.page.infusemedia.1": "Accepts a vector and infuses media into the corresponding block in order to transmute it. Cost and exact effect vary depending on target.", + "oneironaut.page.infusemedia.2": "Conceptually, this spell is quite similar to $(l:patterns/spells/blockworks#hexcasting:edify)Edify Sapling$(/l).$(br)However, the media that the target block receives is far more finely-tuned, and can thus achieve far more interesting results.", + "oneironaut.page.wisp_lanterns.1": "I've found that by using materials unique to the Noosphere, I can create a special jar capable of producing and containing a tiny wisp. While this wisp cannot cast anything, it emits quite a bit of light, and will mimic pigments shown to it.$(br)I can also craft a version with tinted glass, in case the wisp's light would disrupt my study's aesthetic.", + "oneironaut.page.wisp_lanterns.2": "Additionally, by feeding this illumination wisp significant amounts of media, I can cause it to undergo mitosis, with the newly-created wisp being seemingly-identical to the wandering wisps produced by slipways.$(br2)The device to split the wisp in this way can be fed media-bearing items via hoppers or similar, and is capable of storing 640 charged amethyst worth of media.", + "oneironaut.page.wisp_lanterns.3": "Simply apply a redstone signal to activate. Produces a wisp every four seconds, and consumes two charged amethyst to do so.$(br)The capacity and fill level of the phial used make no difference.", + "oneironaut.page.wisp_lanterns.4": "Alternatively, I can create a version which does not consume (or accept) any media, but produces wisps which yield only net-zero media when consumed.$(br2)All the sparkly shiny orbs, none of the prohibitive cost!", + "oneironaut.page.wisp_lanterns.5.originaltoolong": "Using similar principles, I've designed a device which can capture (and contain) wisps for their eventual release, though it does not work on wandering wisps due to their instability.$(br)Capturing one of my own wisps always consumes one amethyst shard worth of its (rechargable) 64-charged capacity, and capturing someone else's costs half again as much media as it contains. To capture a wisp, I must simply use the item on a wisp, and it will be sucked into the housing(assuming it has sufficient media and does not already contain a wisp).", + "oneironaut.page.wisp_lanterns.5": "Using similar principles, I've designed a device which captures, stores, and releases wisps, though it does not work on unstable wandering wisps. Capturing one of my own wisps consumes one amethyst shard from its battery. Capturing someone else's wisp costs half again the media it contains. To capture a wisp, I must simply use the device on it, assuming it has enough media and isn't already occupied.", + "oneironaut.page.wisp_lanterns.6": "When releasing a cyclic wisp, it is placed on the side of the block I use the item on. Projectile wisps are launched from my face, retaining their previous speed (but not direction). To discard a contained wisp, I need only use the item while crouching.", + "oneironaut.page.wisp_lanterns.7": "To initalize the device's media battery, I must use it on one of my own wisps, which will irretrievably consume it and set the battery's capacity to the wisp's stored media value, rounded up to the nearest dust. Should I wish to reset this (along with everything else about the device), I can simply place it in a crafting grid on its own.", + + "oneironaut.page.noosphere_materials.1": "A strange fluid which agitates media entering it, preventing amethyst crystal formation. Stimulates my mind in pleasing ways when I immerse myself in it.", + "oneironaut.page.noosphere_materials.2": "A rock which is primarily composed of media, somehow. Can be used to craft spell circle blocks.", + "oneironaut.page.noosphere_materials.3.title": "Pseudoamethyst", + "oneironaut.page.noosphere_materials.3": "A large crystal of media much like amethyst, but not quite the same. Produces a buzzing sensation under my fingers when I touch it, as if its media is stimulating the nerves. Breaking it without special care causes it to shatter into 1-4 pieces.", + "oneironaut.page.noosphere_materials.4": "The shards can be used to fuel spells, and yield slightly more energy than a normal amethyst shard. Can also be used to craft several interesting things.", + "oneironaut.page.noosphere_materials.5": "A solid form of media which is created when Thought Slurry freezes in a media-rich environment, or is caused to freeze by a hex.$(br)Its surface seems to have negative friction, causing anything sliding on it to accelerate indefinitely (albeit slowly).", + "oneironaut.page.noosphere_materials.6": "An extremely viscous mass of media, capable of very basic cognition, analagous to a slime mold. While it is normally quite lethargic, it uses a spell-like ability to attempt to ensnare anything that touches it.", + "oneironaut.page.slipway_hint.1": "The slipways, they must lead $(o)somewhere$(). Wisps do not simply manifest from nothing. No matter what I try, I cannot insert so much as a finger through that chaotic rift.$(br2)I'm going about this wrong. Perhaps rather than attempting to force my way through, I should be attempting to calm the storm.", + "oneironaut.page.slipway_hint.2": "A large amount of harmonious media may just do it...", + "oneironaut.page.slipway_hint.2.title": "Hmm...", + "oneironaut.page.noosphere_main.1": "I've made it.$(br)The realm beyond the slipways. The ambient media is overwhelming. My mind is screaming at me, telling me I shouldn't be here. But I must press on. This is the next step in the journey.", + "oneironaut.page.noosphere_main.2": "Every single thing I've examined here seems to be composed largely of media, similar to conjured matter, but orders of magnitude denser.$(br)$(o)Even the air is media. How am I breathing?$(br2)$(l)How can I even exist here?", + "oneironaut.page.rod.1": "I've discovered that I can craft a peculiar sort of casting item, using the strange shards found in ancient cities.$(br)This item is unusual in that it casts its imbued hex twenty times per second while I concentrate on it, until it either mishaps or I cast Finale or Encore. This initiates a cooldown period, usually about one second.", + "oneironaut.page.rod.2": "The echo shards seem to bear some bizarre form of media, with a tendency to loop back on itself while retaining a bit of the previous cast.", + "oneironaut.page.rod.3": "Acts just like $(l:patterns/spells/hexcasting)the spells used to program conventional casting items$(). Costs 10 Charged Amethyst.", + "oneironaut.page.rod.4": "When cast with a Reverberation Rod, returns my look vector from when I started the current cast loop.", + "oneironaut.page.rod.5": "When cast with a Reverberation Rod, returns my eye position from when I started the current cast loop.", + "oneironaut.page.rod.6": "When cast with a Reverberation Rod, returns the timestamp from when I started the current cast loop.", + "oneironaut.page.rod.7": "Accepts a positive integer. When cast with a Reverberation Rod, delays the current cast loop's next cast until that many twentieths of a second have passed.", + "oneironaut.page.rod.8": "When cast with a Reverberation Rod, forcibly halts the current cast loop.", + "oneironaut.page.rod.9": "Accepts a positive integer. Halts the current cast loop but also reduces the cooldown period from 1 second to ((1/20) * number) seconds. Cooldown due to mishap is unaffected.", + "oneironaut.page.rod.10": "Accepts a non-list iota, and stores it inside the current cast loop. It will be lost when the cast loop ends.", + "oneironaut.page.rod.11": "Returns the iota stored in the current cast loop. Defaults to NULL.", + "oneironaut.page.rod.12": "Returns a boolean corresponding to whether the current cast is making use of a rod.", + "oneironaut.page.rod.13": "As Williams' Gambit, but can be cast from non-rod sources while a rod is in use.", + "oneironaut.page.rod.14": "As Williams' Reflection, but can be cast from non-rod sources while a rod is in use.", + "oneironaut.page.rod.15": "Returns whether the caster is currently using a rod, regardless of the current cast is from that rod.", + "oneironaut.page.rod.16": "Echo shards can also be used in the construction of a staff, though it seems the only special property of such a staff is making sculk sounds.", + "oneironaut.page.miscpatterns.1": "I've found a couple patterns designed to interact with item frames. Nothing fancy, but they're nice utility for things like controlling my spell circles.$(br2)Additionally, it seems Sorter's Purification works on them just fine, so my attempts to find a dedicated frame-item pattern were pointless.", + "oneironaut.page.miscpatterns.2": "Accepts an item frame entity, and returns its rotation, from 0 to 7.", + "oneironaut.page.miscpatterns.3": "Accepts an item frame entity and an integer from 0 to 7, and sets its rotation to the number. Costs a negligible amount of media.", + "oneironaut.page.miscpatterns.4": "As $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l), but also accepts a list of entity type iotas. Any entity whose type is not present in the list will be ignored. Costs an amount of media slightly less negligible than that of the aforementioned pattern.", + "oneironaut.page.miscpatterns.5": "Returns a random number between 0 and 1, with a gaussian distribution.", + "oneironaut.page.miscpatterns.1.formerlink": "$(l:hexal:patterns/types#hexal:type/block_item)", + "oneironaut.page.super_budding.1": "I've found that the amethyst-like material native to the noosphere can be imbued with a villager's mind, much like normal amethyst. What's more, the block that results from this process produces significantly more media than normal Budding Amethyst, and it can be picked up and moved if one takes special care.", + "oneironaut.page.super_budding.2": "Pseudoamethyst requires a stronger mind than normal amethyst, but the cost is well worth it.", + "oneironaut.page.super_budding.3": "Additionally, when cultivated in the Noosphere, budding pseudoamethyst will produce pseudoamethyst clusters rather than conventional amethyst. These clusters will of course yield pseudoamethyst shards, as well as an unstable form of pseudoamethyst containing about four times as much media as the regular shards. Unfortunately, due to this instability, it cannot be directly converted into usable media. However, it can be converted into many other forms of media crystal by simply bringing the two items together.", + "oneironaut.page.super_budding.4": "It seems to react to my gaze, as if endowed with some form of perception.", + "oneironaut.page.super_budding.5": "The media generation rate of budding pseudoamethyst is such that even when immersed in thought slurry to inhibit crystal formation, it will still yield usable amounts of media. While the overall supply is nigh-endless, the amount accessible to any given action is quite small, like an inch-deep ocean a million miles across. However, due to this minimal depth, the media will dissipate rapidly before reaching my staff when accessed from afar, such as when recharging an item.", + "oneironaut.page.super_budding.6": "Constantly provides about a tenth of an amethyst dust worth of media. While I certainly $(o)can$() hold several of these in order to gain access to more easy media, this results in rapidly-diminishing returns.", + "oneironaut.page.super_budding.7": "I can also jam one into a trinket in order to replace its media supply with an inexhaustible phial, giving it access to the endless media within. However, it cannot use any media other than that provided by the phial.", + "oneironaut.page.super_budding.8": "Writes a hex to the bottomless trinket in my other hand. Costs ten charged amethyst.", + "oneironaut.page.idea_inscription.1": "As the noosphere is a realm of thought, it stands to reason that it could be used for information storage. These patterns do just that, inscribing an iota into the noosphere and reading it back (regardless of my current dimension). They can also store iotas inside the minds of other beings, assuming their thoughts are as... $(o)unfettered$() as my own. In the notation for these patterns, \"key\" refers to any vector or compatible entity.", + "oneironaut.page.idea_inscription.2": "While this is quite versatile, the noosphere's ambient media is constantly in motion, and as such any iota stored in it will eventually be lost, similar to if I poured hot water into the ocean. It seems to take about an hour before such information decays into unusable garbage.$(br2)It seems that $(l:greatwork/akashiclib)Akashic Libraries$(/l) work based on similar principles, where the shelves serve as insulation to prevent decay.", + "oneironaut.page.idea_inscription.3": "Accepts a valid key and any iota, and stores it in the corresponding location. Costs a quarter of an amethyst dust.", + "oneironaut.page.idea_inscription.4": "Accepts a valid key, and returns the corresponding iota. Costs one-eigth of an amethyst dust.", + "oneironaut.page.idea_inscription.5": "Accepts a valid key, and returns when the corresponding iota was inscribed, or -1. Costs no media.", + "oneironaut.page.idea_inscription.6": "Accepts a valid key and a player, and returns whether the corresponding iota was inscribed by that player. Costs no media.", + "oneironaut.page.particleburst.1": "Accepts two vectors and two numbers, and uses them to define a burst of particles. Costs a negligible amount of media.", + "oneironaut.page.particleburst.2": "The first vector determines the burst's origin position, and the second vector determines its direction and speed. The first number determines the scale of random numbers added to each position component, and the second does the same for the direction vector.", + "oneironaut.page.sentinel_detection.1": "By combining the noosphere's pseudoamethyst with the organic sensory apparatus native to the deep dark, I've discovered a way to detect fluctuations in ambient media. This new form of sensor detects the presence of $(l:patterns/spells/sentinels)Sentinels$(/l) within approximately 16 meters, and outputs a redstone signal based on its proximity to the closest one. Comparators attached to it will output a signal if the sentinel in question is particularly powerful.", + "oneironaut.page.sentinel_detection.2": "$(o)I'm sure the warden won't mind.$()", + "oneironaut.page.sentinel_detection.3": "Additionally, this sensor can be incorporated into a Cleric Impetus, allowing it to activate when a sentinel is placed in the area (albeit with a lower range than the plain sensor). I've dubbed this contraption a Seer Impetus. Though it no longer responds to redstone, the circle's hex will start with a reference to the owner of the triggering sentinel on the stack.$(br)Due to the media interference produced by the cast, the impetus cannot detect sentinels it places itself.", + "oneironaut.page.sentinel_detection.4": "As the sensor does not care whose sentinel it sees, I should take care to avoid allowing my trap circles to target me.", + "oneironaut.page.sentinel_detection.5": "Accepts a vector and a player, and returns either the distance from the vector to the target player's sentinel or NULL. Costs a negligible amount of media.", + "oneironaut.page.sentinel_detection.6": "Conjures a fleeting sensor at the target coordinates, which \"listens\" to the patterns in the ambient media to seek out the telltale signature of a sentinel.", + "oneironaut.page.detection_shielding.1": "While conventional invisibility potions work just fine for fooling human senses, they are useless against hexes, so I've yet to find any method of making oneself completely undetectable. However, this spell I've discovered allows me to get closer to that goal, scattering media around a creature like chaff, in order to interfere with hex-based detection methods.", + "oneironaut.page.detection_shielding.2": "Accepts a living entity and a number ($(o)n$()), and shields the entity from hex-based detection for $(o)n$() seconds. Costs two amethyst dust per second.", + "oneironaut.page.detection_shielding.3": "Also drains media from the entity at a rate of 1/10 of a dust per second, as the shielding effect collects it to produce the chaff.$(br2)I should be careful with what I apply this to, as creatures with no loose media of their own will have their very minds fractured in order to provide this media.", + "oneironaut.page.detection_shielding.4": "While this is very effective at blocking effects such as $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l) and the various forms of $(l:patterns/entities#hexcasting:zone_entity/animal)Zone Distillation$(/l), it has no effect on $(l:patterns/entities#hexcasting:get_entity)Entity Purification$(/l) variants, as those already have a fairly precise idea of where you are. What's more, the chaff itself produces an energy signautre, which, while dim, is detectable by a specialized pattern.", + "oneironaut.page.detection_shielding.5": "Accepts a vector and a number, and returns a list of unit vectors pointing from the initial vector to shrouded entities within a radius defined by the number.", + "oneironaut.page.detection_shielding.6": "I've also discovered a spell which applies normal Invisibility. Functions just like the normal $(l:patterns/great_spells/zeniths)Zeniths$(/l), and costs one amethyst dust per three seconds.", + "oneironaut.page.raycast_assailant.1": "By \"threading\" pseudoamethyst through a block, I can create something which causes any raycast (including entity raycasts) that hits or passes through it to return null, as if it didn't hit anything.", + "oneironaut.page.raycast_assailant.3": "Strangely, combining pseudoamethyst with obsidian in the same way does not confer anti-raycast properties, instead making it nigh-indestructible to hexes. However, the resultant block loses much of its durability, being no stronger than common stone (though it retains its blast resistance).", + "oneironaut.page.status_iotas.1": "These patterns work with a type of iota that represents lingering effects on a creature, which can allow me to asses the state of a creature more thoroughly than with only Nurse's Purification.$(br)While my research suggests that status iotas representing instantaneous effects are possible, they would be very difficult to obtain, and I cannot think of any use case for them at the moment.", + "oneironaut.page.status_iotas.2": "Accepts a living entity, and returns a list of status iotas representing all effects on the target.", + "oneironaut.page.status_iotas.3": "Accepts a status effect type, and returns a number based on whether the effect is likely to be helpful, harmful, or neutral to a creature.", + "oneironaut.page.status_iotas.4": "Accepts an entity and a status effect type, and returns the effect on the target's duration in seconds.", + "oneironaut.page.status_iotas.5": "Accepts an entity and a status effect type, and returns the effect on the target's potency.", + "oneironaut.page.status_iotas.6": "Accepts a status effect type and a vector, and returns an entity at that position which has that effect.", + "oneironaut.page.status_iotas.7": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which have that effect.", + "oneironaut.page.status_iotas.8": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which do not have that effect.", + "oneironaut.page.status_iotas.9": "Accepts an entity and a status effect type, and removes that status effect from the entity. Cost is based on the effect's innate harmfulness, its potency, and its remaining duration.", + "oneironaut.page.status_iotas.10": "Costs more if attempting to remove a positive effect from an entity other than myself.$(br2)All of the patterns which deal with a specific status effect on an entity have the side effect that if the entity does not currently have the specified effect, the pattern will fail and inflict nausea upon me.", + "oneironaut.page.mindrender.1": "I've read legends of a particularly macabre form of weapon known as a Mind Render. This weapon, sometimes used by ancient hexcasters, is capable of severing a creature's very thoughts, dealing damage that bypasses all known forms of protection. What's more, if this damage leaves the target just on the brink of true death, it will fall into a vegetative state, never to recover. I shudder to think of what the ancients may have used this property for...", + "oneironaut.page.mindrender.2": "Accepts an item or item frame bearing the Sharpness enchantment, and converts it into Mind Render of the same level. Cost is based on enchantment level, and increases by 50%% if the item is a book.", + "oneironaut.page.lore.treatise1.1": "While it is possible to produce most iotas on the fly, there are cases where one finds it impractical, or simply cannot (such as very large and precise numbers, or entity references), and as such must obtain the desired iota in another way. Reading it from a Focus or a similar item works just fine, but in many cases this would require a third hand, which I do not have. Other methods of fetching iotas from external locations have their own limitations as well.", + "oneironaut.page.lore.treatise1.2": "In cases where no external reference method would work well, one must insert the desired iota into the hex itself. This may seem counterintuive to some, what with the conventional wisdom being that a hex is a list of patterns, but one must remember that patterns are just another type of iota, which $(l:patterns/meta#hexcasting:eval)Hermes' Gambit$(/l) (and similar patterns) works particularly well with.", + "oneironaut.page.lore.treatise1.3": "While you can't just shove a number into the list and expect it to be pushed to the stack as if it was a $(l:patterns/numbers)Numerical Reflection$(/l) pattern, there are ways around this.$(br2)The simplest (and least reliable) is the $(l:patterns/patterns_as_iotas#hexcasting:escape)Consideration$(/l) pattern. Similar to its use when casting freehand, anything that comes immediately after it in a list will be escaped and pushed to the stack when it might otherwise be executed, preventing mishaps due to execution of non-patterns.", + "oneironaut.page.lore.treatise1.4": "However, when you're more than one exeuction deep in a hex (such as with nested conditional logic, or loops), the number of Considerations required to properly escape an iota increases exponentially, making it unreliable when used in anything that could conceivably be executed by another hex.", + "oneironaut.page.lore.treatise1.4.link": "relevant xkcd", + "oneironaut.page.lore.treatise1.5": "A far more reliable method of escaping iotas is to use $(l:patterns/patterns_as_iotas#hexcasting:open_paren)Introspection$(/l) and $(l:patterns/patterns_as_iotas#hexcasting:close_paren)Retrospection$(/l). When a pattern list is being evaluated and an Introspection is encountered, everything up to (but not including) its paired Retrospection is escaped and pushed to the stack in a list, regardless of iota type. You can then work with this list as you see fit, such as using $(l:patterns/lists#hexcasting:splat)Flock's Disintegration$(/l) to push all of its contents to the stack on their own.", + "oneironaut.page.lore.treatise1.6": "If the contents of your list looks like this:$(br2)Introspection$(br)Any iota(s)$(br)Retrospection$(br)Flock's Disintegration$(br2)the state of the stack after all that is executed will simply be all the iotas that were contained within Introspection and Retrospection.", + "oneironaut.page.lore.treatise2.1": "When one wishes to impart motion upon something, the standard method is to use $(l:patterns/spells/basic#hexcasting:add_motion)Impulse$(/l). However, this can get prohibitively expensive when one wishes to make something move extremely quickly, as the cost increases exponentially with the length of the vector. This can be mitigated by simply using a magnitude-1 Impulse many times over on a single target, turning the overall cost from n^2 to 2n-1, where n is the magnitude of the vector.", + "oneironaut.page.lore.treatise2.2": "The easiest way to accomplish this is with $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l), by giving it a list containing many instances of the same entity reference. There are other (and often better) methods, of course, but aside from simply drawing the patterns over and over, they generally fall under the broader topic of loops, which is outside the scope of this document.", + "oneironaut.page.lore.treatise3.1": "While $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l) is perfectly-suited for casting something on many targets at once, using to it cast something on one target many times can get awkward, and short of completely halting the hex, it is not possible to add or remove targets once Thoth has begun executing.$(br)To get around these limitations, one simply needs to use a different sort of loop.", + "oneironaut.page.lore.treatise3.2.header": "While Loop", + "oneironaut.page.lore.treatise3.2": "A While loop is a loop that continues executing until some condition is fulfilled, such as an entity's target velocity having been reached. The most common way to accomplish this is creating a pattern list which duplicates and executes the top iota on the stack, duplicating it, then executing it. On its own this simply produces an infinite loop which does nothing but mishap.", + "oneironaut.page.lore.treatise3.3": "However, by adding actual functionality and a bit of boolean logic, you can create a proper while loop. The code for the aforementioned infinite loop is as follows:$(br)Introspection$(br)Gemini Decomposition$(br)Hermes' Gambit$(br)Retrospection$(br)Gemini Decomposition$(br)Hermes' Gambit$(br2)By adding logic that changes whether the inner Hermes' Gambit gets evaluated based on a condition, you can make it stop once that condition is fulfilled.", + "oneironaut.page.lore.treatise3.4.header": "Loop Unrolling", + "oneironaut.page.lore.treatise3.4": "A more complex form of loop is an unrolled loop. Like Thoth's Gambit, it's created with a fixed number of iterations which can't easily be added to, but Charon's Gambit can be used to halt it early if need be. It also has the advantage that when done competently, it only ever produces one or two levels of recursion depth (not counting anything executed in the body of the loop). Loop unrolling is accomplished by creating a pattern list you want to repeat, duplicating it many times, and then combining all those lists into one.", + "oneironaut.page.lore.treatise3.5": "The simplest way to accomplish this is to use $(l:patterns/stackmanip#hexcasting:duplicate)Gemini Decomposition$(/l) and then $(l:patterns/lists#hexcasting:concat)Combination Distillation$(/l), resulting in a doubled pattern list. This method can be repeated to achieve greater powers of 2, and only produces a single level of recursion depth, when the list is executed. A more flexible method is to use $(l:patterns/stackmanip#hexcasting:duplicate_n)Gemini Gambit$(/l) to produce $(o)n$() copies of the list, then gathering $(o)n-1$() instances of the pattern for Combination Distillation into one list and executing it, thus merging all the copies of your original list into one.", + "oneironaut.page.lore.treatise4.1": "Some of my, erm, \"colleagues\" have trouble transcribing long hexes.$(br)\"This is too long!\"$(br)\"The grid doesn't have enough space!\"$(br)$(bold)Skill issue$(), I say. It's not like a hex is immutable once you've drawn the last Retrospection. All you need to do is save the work-in-progress hex to a focus (though you should make sure to conserve enough grid space to actually do this).", + "oneironaut.page.lore.treatise4.2": "Then you just use the $(l:patterns/lists)list manipulation$(/l) patterns to combine it with the other parts once you're done.$(br2)You don't even need to use multiple foci, you can just append one part to the last one as you finish them, and then save that to one focus. The multiple-focus method makes it easier to debug your finished hex, but as far as I know that's its only benefit compared to the one-focus method.", + "oneironaut.page.lore.science1.1": "$(o)\"What is this and how do I get rid of it?\"$()$(br)A question asked by many people upon their first encounter with a slipway. I don't have a good answer for the second part of the question, but I believe I can provide a satisfactory response to the first.$(br)From what I can tell, a slipway is a tiny hole in space, the other side of which is the media realm known as the Noosphere.", + "oneironaut.page.lore.science1.2": "The wisp-like phenomena that emerge from it are formed when the vast ambient media of the Noosphere attempts to rush through the hole (much like gas leaking into a near-vacuum) and gets tangled in a manner similar to how wisp-summoning spells weave the media which they consume.", + "oneironaut.page.lore.science1.3": "Additionally, it seems that slipways have a sort of barrier over the entrance, preventing any matter from passing through. If this barrier could be pierced, and the hole expanded, the slipway would become capable of absorbing matter into the noosphere. It would also cease producing wisps, as the media coming through would do so far more slowly, and thus not be agitated and tangled. If one were to attempt this, they would have to be careful not to widen it too greatly, or they would risk the surrounding area being absorbed into the noosphere.", + + "not.real.translation.key.1": "TODO: Add a structure that is implied to be part of a laboratory that has been ripped from the overworld by an engorged gateway", + + "oneironaut.page.lore.science2.1": "What a strange place. The liquid that comprises the ocean here is not much denser than water, but small islands float in it despite being comprised of a rock similar in density to ordinary basalt. What's more, everything seems strangely ephemeral, like a dream. But how could this be a dream, when I am more lucid than I've ever been before?", + "oneironaut.page.lore.science2.2": "It seems this great lucidity is a product of the ambient media present here, lubricating my thoughts. These media levels even exceed those present at the cores of wisps, reducing their innate decay to infinitesimal levels. Interestingly, this has no effect on wisps which bear an imprint of someone else's soul, preventing me from using wisps as indefinite truename storage.$(br)This ambient media even leaks through sufficiently-large dimensional rifts, preserving wisps on the other side as long as they remain within a certain range of the rift.", + "oneironaut.page.lore.science3.1": "This crystal is quite fascinating. An object formed from pure media, orders of magnitude denser than conventional conjured blocks, or even the condensed media crystals that some of my colleagues at the library have been studying. It doesn't even contain the trace amounts of silicon dioxide found in amethyst of similar media density. And when I leave it unattended for a while, dust collects in fractalline patterns, as if the crystal bears a passive spell-like effect.", + "oneironaut.page.lore.science3.2": "Examining it more thoroughly under a microscope, it seems that these fractals extend beneath the surface of the crystal, and are constantly shifting in a consistent pattern. Could this be a time crystal?", + "oneironaut.page.glow_ambit.1": "Despite diligent research, the source of the special properties of other hexcasters' entity references has eluded me. However, I've discovered a way to bestow one such property upon other beings, at least temporarily (and flashily).$(br)This spell allows casters to affect creatures from great distances just like the infinite-range aspect of a player reference. However, one must still be close to the target in order to perform the initial application.", + "oneironaut.page.glow_ambit.2": "Accepts a living entity, and allows it to be accessed from anywhere for one minute. Has a base cost of one amethyst shard, plus one additional shard per application before allowing it to expire.", + "oneironaut.page.glow_ambit.3": "It seems that this effect functions by causing the target to emit some sort of psionic resonance, strong enough to cause its outline to be \"visible\" through all manner of barriers (perhaps hexcasters naturally produce this same resonance, but much subtler?). However, this glow is distinct from that induced by spectral arrows and similar, so don't bet on things to detect that working for this.", + "oneironaut.page.soulprints.1": "A soulprint is an iota similar to my player reference in that it represents me, but significantly more limited in use. It is impossible for anyone to obtain my soulprint without my involvement, though it is not subject to the same write-restrictions as ordinary player references.$(br2)Interestingly, soulprints are valid keys for $(l:oneironaut:patterns/idea_inscription)Idea Inscription$(/l).", + "oneironaut.page.soulprints.2": "Returns my soulprint, mishapping if cast using anything other than a staff. Costs a negligible amount of media.", + "oneironaut.page.soulprints.3": "Invisibly engraves my soulprint onto the item in my other hand, or erases it if it is already there. Costs 1 amethyst dust.$(br)I should be careful to seal any focuses or similar that I sign, as acquiring an unsealed signed focus may allow someone to impersonate me, and Erase Item gets rid of the signature.", + "oneironaut.page.soulprints.4": "Accepts a soulprint, and checks if the item in my other hand is engraved with it. Returns true if so, false otherwise. Costs a negligible amount of media.", + "oneironaut.page.hover_elevator.1": "By combining materials native to the noosphere with certain ingredients associated with levitation, I can create a device which produces streams of propulsive energy capable of carrying me along them, with minimal risk of falling. To use it, it must be placed facing directly towards another one (which must be facing it in turn). Once I've done this, both ends must be activated with a", + "oneironaut.page.hover_elevator.2": "redstone signal, and the energy stream will form between the paired emitters, assuming they are within range of each other (64 meters horizontally, or 128 vertically). By stepping into the stream, I will be held in place until I look towards either end of the stream, at which point I will be accelerated in that direction until I hit a maximum speed proportional to how closely my vision parallels the stream. Crouching causes the stream to hold me in place regardless of my gaze.", + "oneironaut.page.hover_elevator.3": "$(o)Best to don some long fall boots the first time I try these.", + "oneironaut.page.hover_elevator.meme":"$(o)Bad and naughty hexcasters get sent to the hover cube.", + "oneironaut.page.hover_elevator.4": "Additionally, I can create a repeater capable of extending the range of the emitters when placed between them, such that the stream can continue on as if it had just left the emitter. Of course, such an extension requires more powerful components, and even then the stream can only be extended by three repeaters before it becomes too unstable to form.", + "oneironaut.page.hover_elevator.5": "Fortunately, this device seems to be rather immaterial for some reason, and I can pass straight through it without having to carefully twist around it in the stream.$(br)$(o)No, it does not make the stream pause for a moment before continuing.", + "oneironaut.page.flayrevival.1": "I've long been frustrated with the uselessness of the empty husk you get after flaying a villager (or nearly killing something using $(l:oneironaut:items/mindrender)Mind Render$(/l)). While there $(o)are$() a few tasks for which they can conduct themselves adequately, these are largely things which even simple beasts would be suitable for. Fortunately, I've discovered a spell capable of bestowing some measure of cognition upon these husks.", + "oneironaut.page.flayrevival.2": "Accepts a flayed mob, and creates an artifical pseudo-mind to inhabit its body. Costs 16 charged amethyst when used on a villager, or 10 amethyst shards for anything else.", + "oneironaut.page.flayrevival.3": "While these pseudo-minds are capable of moving their bodies around as if they were their original inhabitants, they are too simple to be called truly sapient, even with the rather loose definition of the term that must be used when applying it to villagers. As such, any villager \"restored\" in this manner loses any professional experience it had before, and cannot gain such experience ever again.", + "oneironaut.page.flayrevival.4": "They do, however, regain their ability to reproduce, with any children they produce being untainted by my craft.$(br2)I'm not sure why the restored villagers suddenly gain an affinity for green clothing, but at least it serves as a good indicator of which villagers will be of little further use.", + "oneironaut.page.monkfruit.1": "I've discovered that using the $(l:patterns/spells/blockworks#hexcasting:edify)Edify Sapling$(/l) spell on a Sweet Berry Bush produces a rather interesting plant. It is much like the shrub it mutates from, however its thorns are imbued with a media field which siphons the minds of pricked creatures into the plant in order to grow. It can grow without this (albeit slowly), though it still requires minds nearby to provide small amounts of media.", + "oneironaut.page.monkfruit.2": "The fruit that this bush produces is quite sweet, and can be processed into sugar. Additionally, eating one seems to release bits of media into the air, which seek out rechargeable items on my person. I should be wary of the thorns while picking the fruit.", + "oneironaut.page.monkfruit.3": "Twigs sheared off of the mature bush remain dangerous, and can be used to craft a rather ominous blade.$(br2)This blade acts much like a sword enchanted with low-level $(l:oneironaut:items/mindrender)Mind Render$(/l), though it is far more precise, able to rend minds while causing minimal collateral damage to the flesh. I can of course use it more like a conventional blade if I like, but this does risk killing the target outright.", + "oneironaut.page.monkfruit.4": "$(o)It's not rocket science.$()", + + "this.is.a.comment.5": "Advancements--------------------------------------------------------------------------------------------", + "oneironaut.advancements.noosphere.enter": "A Realm of Thought and Dream", + "oneironaut.advancements.noosphere.enter.description": "Enter the Noosphere", + "oneironaut.advancements.noosphere.find_tower": "A Timeless Classic", + "oneironaut.advancements.noosphere.find_tower.description": "Discover the tower of an unknown hexcaster", + "oneironaut.advancements.noosphere.find_media_lab": "Crystallized", + "oneironaut.advancements.noosphere.find_media_lab.description": "Discover a grim experiment", + "oneironaut.advancements.noosphere.find_garden": "Stranded", + "oneironaut.advancements.noosphere.find_garden.description": "Discover an unfortunate soul's last reminder of home", + "oneironaut.advancements.lore.root": "Oneironaut Lore", + "oneironaut.advancements.lore.root.description": "Memories lost to time", + "oneironaut.advancements.lore.treatise1": "Hexcaster's Memory #1", + "oneironaut.advancements.lore.treatise1.description": "Reflections on iota embedding", + "oneironaut.advancements.lore.treatise2": "Hexcaster's Memory #2", + "oneironaut.advancements.lore.treatise2.description": "Reflections on efficient use of Impulse", + "oneironaut.advancements.lore.treatise3": "Hexcaster's Memory #3", + "oneironaut.advancements.lore.treatise3.description": "Reflections on repeated patterns", + "oneironaut.advancements.lore.treatise4": "Hexcaster's Memory #4", + "oneironaut.advancements.lore.treatise4.description": "Reflections on long hexes", + "oneironaut.advancements.lore.science1": "Scientist's Memory #1", + "oneironaut.advancements.lore.science1.description": "Research into the nature of slipways", + "oneironaut.advancements.lore.science2": "Scientist's Memory #2", + "oneironaut.advancements.lore.science2.description": "Research into the properties of the Noosphere", + "oneironaut.advancements.lore.science3": "Scientist's Memory #3", + "oneironaut.advancements.lore.science3.description": "Research into the structure of pseudoamethyst", + "oneironaut.advancements.unflay": "Recycling!", + "oneironaut.advancements.unflay.description": "Surely you weren't going to just throw that away!", + "oneironaut.advancements.ouchie": "Ouch!", + "oneironaut.advancements.ouchie.description": "What did you expect?", + + "this.is.a.comment.6": "Mishaps--------------------------------------------------------------------------------------------", + "hexcasting.mishap.oneironaut:badcuboid.mismatch": "Supplied cuboids are dissimilar.", + "hexcasting.mishap.oneironaut:badcuboid.toobig": "Supplied cuboids are too big.", + "hexcasting.mishap.oneironaut:uninfusable": "Expected an infusable block at %s, but got %s.", + "hexcasting.mishap.oneironaut:nonconjured": "Expected a conjured block at %s, but got %s.", + "hexcasting.mishap.oneironaut:nonoosphere": "Expected one end of the transfer to be a special dimension.", + "hexcasting.mishap.oneironaut:norod": "Expected to be cast from a Reverberation Rod.", + "hexcasting.mishap.oneironaut:norodremote": "Expected an active Reverberation Rod in hand.", + "hexcasting.mishap.oneironaut:missingeffect": "Expected %s to be affected by %s, but they are not.", + "hexcasting.mishap.oneironaut:missingenchant": "Expected %s to be enchanted with %s, but it is not.", + "hexcasting.mishap.oneironaut:unhappyslime": "The slime says \"%s\"", + "hexcasting.mishap.oneironaut:norequirediota": "The slime demands %s", + "hexcasting.mishap.oneironaut:requiresdifferententities": "an entity different from the target", + "hexcasting.mishap.oneironaut:nostaff": "%s expected to be cast using a staff.", + "oneironaut.mishap.noitemframe": "an item frame", + "oneironaut.mishap.invalidideakey": "a vector, player, or soulprint", + "oneironaut.mishap.unenlightenedtarget": "an enlightened player", + "oneironaut.mishap.notbrainswept": "a flayed villager", + "oneironaut.mishap.badentitykey": "an enlightened player or a flayed villager", + "oneironaut.mishap.nolistsallowed": "a non-list iota", + "oneironaut.mishap.entitytypelistplease": "a list of entity types", + "oneironaut.mishap.wrongsizelist": "List is improperly sized.", + "oneironaut.mishap.twovectorsplease": "List does not contain two vectors.", + "oneironaut.mishap.requiresflayedmob": "%s expected a flayed mob, but got %s.", + "hexcasting.mishap.invalid_value.class.oneironaut:imprint": "a spatial imprint", + "hexcasting.mishap.invalid_value.class.oneironaut:status": "a status effect", + "hexcasting.mishap.invalid_value.class.oneironaut:visiblestatus": "a detectable status effect", + "hexcasting.mishap.invalid_value.class.oneironaut:soulprint": "a soulprint", + + "this.is.a.comment.7": "Other---------------------------------------------------------------------------------------------", + "hexcasting.iota.oneironaut:dim": "Dimension", + "hexcasting.iota.oneironaut:potion": "Status Effect", + "hexcasting.iota.oneironaut:uuid": "Soulprint", + "hexcasting.iota.oneironaut:uuid.label": "Soulprint of %s", + "biome.oneironaut.noosphere_sea": "Noosphere Sea", + "text.oneironaut.clearIdeasResponse": "Cleared iota storage map.", + "effect.oneironaut.detection_resistance": "Media Shroud", + "effect.oneironaut.not_missing": "Uplifting Resonance", + "effect.oneironaut.missing": "Broken Potion Iota", + "enchantment.oneironaut.overcast_damage": "Mind Render", + "itemGroup.oneironaut.oneironaut": "Oneironaut", + "oneironaut.tooltip.wispcapturedevice.haswisp": "Contains a wisp with %s dust and hex signature %s.", + "oneironaut.tooltip.wispcapturedevice.nowisp": "No wisp.", + "oneironaut.tooltip.wispcapturedevice.uninitialized": "Media reservoir has not been initialized.", + "text.oneironaut.lorem_ipsum": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." +} diff --git a/projects/1.19/assets/oneironaut/oneironaut/lang/zh_cn.json b/projects/1.19/assets/oneironaut/oneironaut/lang/zh_cn.json new file mode 100644 index 000000000000..cd22df7c4cbf --- /dev/null +++ b/projects/1.19/assets/oneironaut/oneironaut/lang/zh_cn.json @@ -0,0 +1,355 @@ +{ + "this.is.a.comment.1": "Pattern names--------------------------------------------------------------------------------------------", + "hexcasting.spell.oneironaut:getdim1": "空间之精思", + "hexcasting.spell.oneironaut:getdim2": "空间之精思,第二型", + "hexcasting.spell.oneironaut:getdimoverworld": "家园之精思", + "hexcasting.spell.oneironaut:getdimnether": "狱界之精思", + "hexcasting.spell.oneironaut:getdimheight": "阿特拉斯之分解", + "hexcasting.spell.oneironaut:getdimscale": "空程之纯化", + "hexcasting.spell.oneironaut:dimteleport": "智识门径", + "hexcasting.spell.oneironaut:infusemedia": "媒质灌注", + "hexcasting.spell.oneironaut:swapspace": "空间互换", + "hexcasting.spell.oneironaut:paintconjured": "外化染色剂", + "hexcasting.spell.oneironaut:craftrod": "指挥法杖", + "hexcasting.spell.oneironaut:getrodlook": "指挥棒之精思", + "hexcasting.spell.oneironaut:getrodpos": "指挥棒之精思,第二型", + "hexcasting.spell.oneironaut:getrodstamp": "节拍器之精思", + "hexcasting.spell.oneironaut:delayrod": "节拍器之策略", + "hexcasting.spell.oneironaut:haltrod": "终曲", + "hexcasting.spell.oneironaut:resetrod": "安可", + "hexcasting.spell.oneironaut:readrodram": "威廉姆斯之精思", + "hexcasting.spell.oneironaut:writerodram": "威廉姆斯之策略", + "hexcasting.spell.oneironaut:readrodramremote": "威廉姆斯之精思,第二型", + "hexcasting.spell.oneironaut:writerodramremote": "威廉姆斯之策略,第二型", + "hexcasting.spell.oneironaut:queryrod": "指挥家之精思", + "hexcasting.spell.oneironaut:rodloopactive": "指挥家之精思,第二型", + "hexcasting.spell.oneironaut:craftbottomlesstrinket": "制作无底缀品", + "hexcasting.spell.oneironaut:readframerotation": "装潢师之纯化", + "hexcasting.spell.oneironaut:setframerotation": "装潢师之策略", + "hexcasting.spell.oneironaut:writeidea": "刻印思绪", + "hexcasting.spell.oneironaut:readidea": "收回思绪", + "hexcasting.spell.oneironaut:readideatime": "元数据之纯化", + "hexcasting.spell.oneironaut:readideawriter": "元数据之馏化", + "hexcasting.spell.oneironaut:particleburst": "粒子迸发", + "hexcasting.spell.oneironaut:readsentinel": "检视哨卫", + "hexcasting.spell.oneironaut:resistdetection": "隐匿遮罩", + "hexcasting.spell.oneironaut:detectshroud": "辨察遮罩", + "hexcasting.spell.oneironaut:invisibility": "隐阳当空", + "hexcasting.spell.oneironaut:circle": "圆", + "hexcasting.spell.oneironaut:getstatus": "药师之纯化", + "hexcasting.spell.oneironaut:getstatuscategory": "药师之纯化,第二型", + "hexcasting.spell.oneironaut:getstatusduration": "药剂师之馏化", + "hexcasting.spell.oneironaut:getstatuslevel": "药剂师之馏化,第二型", + "hexcasting.spell.oneironaut:getbystatus": "区域之提整:状态", + "hexcasting.spell.oneironaut:getbystatusinverse": "区域之提整:非状态", + "hexcasting.spell.oneironaut:getbystatussingle": "实体之馏化:状态", + "hexcasting.spell.oneironaut:removestatus": "清除状态", + "hexcasting.spell.oneironaut:applymindrender": "赋能意识撕裂者", + "hexcasting.spell.oneironaut:reviveflayed": "灌注精神", + "hexcasting.spell.oneironaut:advanceautomaton": "质胞生成", + "hexcasting.spell.oneironaut:filteredentityraycast": "侦查员之提整", + "hexcasting.spell.oneironaut:gaussianrand": "熵之精思,第二型", + "hexcasting.spell.oneironaut:applynotmissing": "扬升共振", + "hexcasting.spell.oneironaut:getsoulprint": "灵魂印记之精思", + "hexcasting.spell.oneironaut:signitem": "签印物品", + "hexcasting.spell.oneironaut:checksignature": "签印之纯化", + + "this.is.a.comment.2": "Block/Item names--------------------------------------------------------------------------------------------", + "item.oneironaut.pseudoamethyst_shard": "伪紫水晶碎片", + "item.oneironaut.shifting_pseudoamethyst": "易形伪紫水晶", + "item.oneironaut.thought_slurry_bucket": "思维浆液桶", + "item.oneironaut.reverberation_rod": "回响之杖", + "item.oneironaut.endless_phial": "无穷媒质之瓶", + "item.oneironaut.bottomless_trinket": "无底缀品", + "item.oneironaut.echo_staff": "回响法杖", + "item.oneironaut.beacon_staff": "科技法杖", + "item.oneironaut.spoon_staff": "勺子", + "item.oneironaut.pigment_flame": "火焰染色剂", + "item.oneironaut.pigment_echo": "回响染色剂", + "item.oneironaut.pigment_noosphere": "智识染色剂", + "item.oneironaut.memory_fragment": "记忆碎片", + "item.oneironaut.memory_fragment.all": "似乎我已经集齐了这些晶体中所有我能找到的记忆……", + "item.oneironaut.wisp_capture_device": "咒灵牧织器", + "item.oneironaut.mind_scalpel": "突触手术刀", + "item.oneironaut.monkfruit": "修道果", + "item.oneironaut.rending_thorns": "裂识荆棘", + + "block.oneironaut.noosphere_gate": "神秘裂口", + "block.oneironaut.pseudoamethyst_block": "伪紫水晶块", + "block.oneironaut.pseudoamethyst_cluster": "伪紫水晶簇", + "block.oneironaut.pseudoamethyst_bud_small": "小型伪紫水晶芽", + "block.oneironaut.pseudoamethyst_bud_medium": "中型伪紫水晶芽", + "block.oneironaut.pseudoamethyst_bud_large": "大型伪紫水晶芽", + "block.oneironaut.thought_slurry": "思维浆液", + "block.oneironaut.thought_slurry_flowing": "流动的思维浆液", + "block.oneironaut.noosphere_basalt": "智识界玄武岩", + "block.oneironaut.wisp_lantern": "咒灵灯笼", + "block.oneironaut.wisp_lantern_tinted": "遮光咒灵灯笼", + "block.oneironaut.super_budding": "伪紫水晶母岩", + "block.oneironaut.sentinel_sensor": "哨卫探测器", + "block.oneironaut.raycast_blocker": "反射线追踪板岩", + "block.oneironaut.raycast_blocker_glass": "反射线追踪玻璃", + "block.oneironaut.sentinel_trap": "探察促动石", + "block.oneironaut.circle": "§0§o圆", + "block.oneironaut.hex_resistant_block": "咒术防护黑曜石", + "block.oneironaut.media_ice": "贤能智冰", + "block.oneironaut.media_ice_frosted": "暂态贤能智冰", + "block.oneironaut.media_gel": "精神原质团", + "block.oneironaut.cell": "失协精神", + "block.oneironaut.wisp_battery": "咒灵编织器", + "block.oneironaut.decorative_wisp_battery": "初等咒灵编织器", + "block.oneironaut.hover_elevator": "咒术师的悬浮桥链", + "block.oneironaut.hover_repeater": "悬浮桥链中继器", + "block.oneironaut.monkfruit_bush": "修道果丛", + + "fluid.oneironaut.thought_slurry": "思维浆液", + + "this.is.a.comment.3": "Book entry titles--------------------------------------------------------------------------------------------", + "oneironaut.entry.dim_iotas": "维度 Iota", + "oneironaut.entry.status_iotas": "状态 Iota", + "oneironaut.entry.noosphere_main": "奇怪的领域", + "oneironaut.entry.noosphere_materials": "富思维材料", + "oneironaut.entry.wisp_lanterns": "咒灵设备", + "oneironaut.entry.slipway_hint": "有关质道的精思", + "oneironaut.entry.miscpatterns": "航梦:杂项图案", + "oneironaut.entry.super_budding": "更好地量产媒质", + "oneironaut.entry.idea_inscription": "思绪刻印", + "oneironaut.entry.sentinel_detection": "哨卫侦测", + "oneironaut.entry.detection_shielding": "侦测回避", + "oneironaut.entry.raycast_assailant": "反咒术方块", + "oneironaut.entry.mindrender": "意识撕裂者", + "oneironaut.entry.soulprints": "灵魂印记", + "oneironaut.entry.hover_elevator": "悬浮桥链", + "oneironaut.entry.flayrevival": "人工意识", + + "this.is.a.comment.4": "Book pages--------------------------------------------------------------------------------------------", + "oneironaut.page.spaceswap.1": "接受均由两个向量组成的两个列表,用于定义两个长方体,以及一个空间印记。所定义的长方体必须保证尺寸与朝向一致。", + "oneironaut.page.spaceswap.2": "我不太清楚这个图案具体能做什么,它总是对我喊着什么“特殊维度”。也许它需要这种特殊维度作为中介?", + "oneironaut.page.spaceswap.3": "将我所处维度中第一个长方体包含的方块(需在影响范围内)与空间印记对应维度中第二个长方体包含的方块互换。$(l:https://www.desmos.com/calculator/ydbg8zhmyp)消耗以紫水晶粉计,前 1001 个方块遵循对数消耗,之后则按照线性关系增加$(/l)。$(br)不会互换不可破坏的方块。$(br)两维度之一或两者均需为智识界。", + "oneironaut.page.spaceswap.4": "两维度之一或两者均需为智识界。", + "oneironaut.page.paintconjured.1": "接受一个向量与代表染色剂的物品类型。如果目标方块属于我,则消耗极少量媒质;否则消耗 1 个紫水晶粉。", + "oneironaut.page.paintconjured.2": "将所给位置处构筑方块的颜色设置为所给染色剂的颜色;如果传入的是 Null,则将其设置为我意识的颜色。$(br2)不保证对非传统构筑物质有效。", + "oneironaut.page.paintconjured.3": "这种效果让人心神愉悦,有点奇怪。就好像它曾用于某个盛大的节庆活动,与会队伍会把自己队的颜色泼洒到对手的领地上,类似于意识层面上的占领。", + "hexcasting.spell.oneironaut:dimteleport.samedim": "这个法术什么都不会做,类似让已经在家的人回家。", + "oneironaut.page.dim_iotas.1": "我发现了一种新 iota,它们似乎象征着现实本身的某一层面。为方便理解,我决定称其为“空间印记”。", + "oneironaut.page.dim_iotas.2": "返回象征着我所处维度的空间印记。消耗极少量媒质。", + "oneironaut.page.dim_iotas.3": "返回象征着我哨卫所处维度的空间印记。消耗 1/10 个紫水晶粉。", + "oneironaut.page.dim_iotas.4": "返回象征着主世界的空间印记。消耗 1/10 个紫水晶粉。", + "oneironaut.page.dim_iotas.5": "返回象征着下界的空间印记。消耗 1/10 个紫水晶粉。$(br)这个法术的施放总有些不够顺畅。也许我需要$(#54398a)再精进我的技术$()……", + "oneironaut.page.dim_iotas.6": "接受一个空间印记,返回对应维度中可存在方块的最低和最高海拔。", + "oneironaut.page.dim_iotas.7": "接受一个空间印记,返回对应维度中1格距离相当于主世界中的几格距离。", + "oneironaut.page.dimteleport.1": "接受一个实体和一个空间印记,将所给实体传送入对应维度的同一位置。消耗 20 个充能紫水晶。$(br2)传入其他玩家时会失效。", + "oneironaut.page.dimteleport.2": "如果在离开原先所处维度的同一时刻,用此法术返回该维度,则消耗会减少到 5 个紫水晶粉:法术会捕捉残存的媒质以将我传送回原来的位置。其他情况下,则会在目的地周围找个安全的位置作为目的地,甚至有可能构筑方块以防止坠落而亡。$(br2)我在用这个法术时总有种奇怪的加速感,但我无法理解加速度到底是朝着哪个轴的。", + "oneironaut.page.infusemedia.1": "接受一个向量,并向该位置方块中注入媒质,以嬗变该方块。消耗量与具体效果随目标变化而变。", + "oneironaut.page.infusemedia.2": "概念上来看,此法术与$(l:patterns/spells/blockworks#hexcasting:edify)启迪树苗$(/l)类似。$(br)然而,这种方法灌注的媒质相较之下经过精细调校,因此能产生更为有意思的效果。", + "oneironaut.page.wisp_lanterns.1": "我发现,若是使用了独属于智识界的材料,便能制造出一种特殊的罐子,它能产生并容纳一只微型咒灵。这种咒灵尽管无法施法,但能发出相当的光,还会模拟它看见的染色剂。$(br)我还能用遮光玻璃制造同类物品,避免咒灵的光亮影响到我书房的美学设计。", + "oneironaut.page.wisp_lanterns.2": "此外,往这些照明用咒灵里注入大量的媒质,就可强令其分裂自身。新产生的咒灵与质道产生的游走咒灵几乎完全一致。$(br2)以此类方式分裂咒灵的设备接受任意存储媒质的物品,可通过漏斗一类的装置送入。它最多能存储相当于 640 个充能紫水晶的媒质。", + "oneironaut.page.wisp_lanterns.3": "给予红石信号即可激活。它每 4 秒产生 1 个咒灵,同时消耗 2 个充能紫水晶。$(br)合成时所用媒质之瓶的容量和媒质量对产物无影响。", + "oneironaut.page.wisp_lanterns.4": "还可制造一类完全不消耗(和接受)媒质的设备,它所生成的咒灵拆解后总媒质量为 0。$(br2)闪亮球珠仍在,不见代价惹忧!", + "oneironaut.page.wisp_lanterns.5.originaltoolong": "参照类似原理,我设计了一种能够捕获(并容纳)咒灵的设备,之后再释放出去。不过游走咒灵太过不稳定,无法捕获。$(br)此设备的媒质容量为 64 个充能紫水晶(可重充能)。捕获我自己的咒灵消耗 1 个紫水晶碎片,捕获他人的咒灵消耗咒灵中媒质量的 1.5 倍。直接对咒灵使用即可捕获它,吸入外壳中(需有足量媒质,且其中未存有咒灵)。", + "oneironaut.page.wisp_lanterns.5": "参照类似原理,我设计了一种能够捕获、存储、释放咒灵的设备,不过它对游走咒灵无效。捕获我自己的咒灵消耗 1 个紫水晶碎片,捕获他人的咒灵消耗相当于 1.5 倍咒灵中媒质量的媒质。直接对咒灵使用即可捕获它,设备自身需有足量媒质,且其中未存有咒灵。", + "oneironaut.page.wisp_lanterns.6": "释放循环型咒灵时,它会出现在所指方块的旁边。弹射式咒灵则会从我的脸前发射出去,保留捕获前速度(方向不保留)。潜行时使用物品,即可丢弃存储的咒灵。", + "oneironaut.page.wisp_lanterns.7": "初始化此装置的媒质储库时,需手持后对我自己的咒灵使用。该咒灵会消散且无法召回,装置的媒质容量会设为与该咒灵一致,按紫水晶粉向上取整。若需重设此数据(以及其他所有数据与配置),将其单独放在合成方格中合成即可。", + + "oneironaut.page.noosphere_materials.1": "一种奇怪的流体,会搅混进入其中的媒质,并阻止紫水晶晶体的形成。浸在其中时,它会以愉悦的方式刺激我的意识。", + "oneironaut.page.noosphere_materials.2": "主要由媒质构成的岩石,原理不明。可合成法术环方块。", + "oneironaut.page.noosphere_materials.3.title": "伪紫水晶", + "oneironaut.page.noosphere_materials.3": "一大块媒质晶体,与紫水晶类似但不完全相同。触摸时会有种嗡鸣感,就好像媒质在刺激神经一般。不加以特殊措施直接破坏会将其破碎为 1 到 4 块碎片。", + "oneironaut.page.noosphere_materials.4": "这些碎片能驱动法术,且比普通紫水晶提供的能量稍多一些。也能用来制造些有趣的物件。", + "oneironaut.page.noosphere_materials.5": "一种固态的媒质,由思维浆液在富媒质环境中冻结而得。这种冻结也可由咒术造成。$(br)其表面的摩擦系数似乎为负,任何在其上滑动的事物会无限加速(虽然较慢)。", + "oneironaut.page.noosphere_materials.6": "一类极其黏稠的媒质,拥有极为基础的认知能力,与黏菌类似。它通常情况下表现出惰性,但会以类似法术的能力试图困住触碰到它的事物。", + "oneironaut.page.slipway_hint.1": "那些质道,它们一定能联通到$(o)某些地方$()。咒灵不会凭空出现。不管我怎么尝试,我最多只能让一根手指穿过那道混沌的裂口。$(br2)我大概是想错了。与其凭蛮力穿过裂口,也许还是尝试平息风暴更为有效。", + "oneironaut.page.slipway_hint.2": "大量的调谐媒质应该就能做到……", + "oneironaut.page.slipway_hint.2.title": "嗯……", + "oneironaut.page.noosphere_main.1": "我成功了。$(br)质道另一端的领域。环境中的媒质多到难以想象。我的意识正朝我尖啸,叫喊着我不应该在这里。但我必须前进。这里就是旅途的下一站。", + "oneironaut.page.noosphere_main.2": "我在此勘测的每一件事物似乎主要都由媒质构成,很像构筑物质,但浓度高出了几个数量级。$(br)$(o)就连空气都是媒质。我是怎么呼吸的?$(br2)$(l)我又是怎么能存在于此的?", + "oneironaut.page.rod.1": "我发现我能用远古城市中找到的奇怪碎片合成一种奇异的施法物品。$(br)这件物品的奇异之处,就在于集中思维时,它能以每秒 20 次的频率施放其中的咒术,直到产生事故或者我施放终曲和安可时才停止。如此会触发一段冷却时间,通常有大约 1 秒。", + "oneironaut.page.rod.2": "回响碎片似乎包含着某种怪异形态的媒质。因此它具有循环自身的倾向,同时会保留一部分上一次施法时的信息。", + "oneironaut.page.rod.3": "和$(l:patterns/spells/hexcasting)用于制造传统施法物品的法术$()类似。消耗 10 个充能紫水晶。", + "oneironaut.page.rod.4": "使用回响之杖施放时,返回当前循环开始时我的视线向量。", + "oneironaut.page.rod.5": "使用回响之杖施放时,返回当前循环开始时我的眼部位置。", + "oneironaut.page.rod.6": "使用回响之杖施放时,返回当前循环开始时的时间戳。", + "oneironaut.page.rod.7": "接受一个正整数。使用回响之杖施放时,将下一次施法延迟所给数个 1/20 秒。", + "oneironaut.page.rod.8": "使用回响之杖施放时,强制停止当前循环。", + "oneironaut.page.rod.9": "接受一个正整数。停止当前循环,并将冷却时间从 1 秒缩短至所给数个 1/20 秒。事故造成的冷却不受影响。", + "oneironaut.page.rod.10": "接受一个非列表 iota,并将其存入当前循环。该 iota 会在循环结束时丢失。", + "oneironaut.page.rod.11": "返回当前循环中存储的 iota。默认为 Null。", + "oneironaut.page.rod.12": "检查当前施法者是否正在使用回响之杖,返回一个布尔值。", + "oneironaut.page.rod.13": "与威廉姆斯之策略类似,但可在回响之杖被占用时,由其他施法方式施放。", + "oneironaut.page.rod.14": "与威廉姆斯之精思类似,但可在回响之杖被占用时,由其他施法方式施放。", + "oneironaut.page.rod.15": "检查施法者是否正在使用回响之杖,不要求是在使用当前杖。", + "oneironaut.page.rod.16": "回响碎片也可用于制造法杖,不过这种法杖唯一的特殊性质便是发出些幽匿的声音。", + "oneironaut.page.miscpatterns.1": "我发现了一些专为物品展示框交互设计的图案。它们不是什么高端法术,但确实是控制法术环之类事物的实用手段。$(br2)此外,分拣员之纯化对它们同样有效,因此试图寻找物品展示框专用的物品图案没有意义。", + "oneironaut.page.miscpatterns.2": "接受一个物品展示框实体,并返回其中物品的朝向,值必然在 0 到 7 之间。", + "oneironaut.page.miscpatterns.3": "接受一个物品展示框实体与一个 0 到 7 的整数,并将物品朝向设置为该数。消耗极少量媒质。", + "oneironaut.page.miscpatterns.4": "与$(l:patterns/basics#hexcasting:raycast/entity)侦查员之馏化$(/l)类似,但能够接受一个实体类型 iota 列表。类型不在该列表内的实体会被忽略。消耗的媒质量略多于上文所提图案的“极少量”。", + "oneironaut.page.miscpatterns.5": "返回 0 与 1 之间的随机数,服从正态分布。", + "oneironaut.page.miscpatterns.1.formerlink": "$(l:hexal:patterns/types#hexal:type/block_item)", + "oneironaut.page.super_budding.1": "我发现智识界出产的一种类紫水晶物质会接受村民的意识,这点和普通的紫水晶一样。不过,接受意识所得方块的媒质产量相当高,远超出普通紫水晶母岩的能力,而且只要足够小心就能捡起它搬走。", + "oneironaut.page.super_budding.2": "比起使用普通紫水晶来说,使用伪紫水晶需要更强大的意识,但得到的回报绝对值得。", + "oneironaut.page.super_budding.3": "此外,在智识界中培育时,伪紫水晶母岩会产生伪紫水晶簇,而不是普通的紫水晶。自然,这些晶簇掉落的是伪紫水晶碎片,但同时也会掉落一种不甚稳定的伪紫水晶,其媒质含量是普通碎片的四倍。正是由于这种不稳定性,此类伪紫水晶无法直接转换为媒质。但把它和其他形态的媒质水晶放在一起,即可令其转变为那种形态。", + "oneironaut.page.super_budding.4": "它似乎对我的凝视有了反应,就好像它有某种感知力一样。", + "oneironaut.page.super_budding.5": "就算让伪紫水晶母岩浸没在思维浆液中,抑制晶体的形成,它的媒质生成率依然足够平常使用。尽管总供给量近乎无穷,但单个操作能使用的媒质量相当少;就像一片几十万几百万千米宽,但只有几厘米深的海洋。而由于其深度极为有限,在远距获取使用(如为物品充能等)时,其中的媒质会在抵达法杖前迅速消散殆尽。", + "oneironaut.page.super_budding.6": "常态提供大约与 1/10 个紫水晶粉相当的媒质。虽然我$(o)可以$()同时持有好多个来轻松获取媒质,但每个媒质瓶带来的增量会快速减少。", + "oneironaut.page.super_budding.7": "还可以往缀品里塞一个,以让无穷媒质之瓶为其供应媒质。但是,如此操作后,缀品便不会再接受其他来源的媒质。", + "oneironaut.page.super_budding.8": "向另一只手中的无底缀品写入咒术。消耗 10 个充能紫水晶。", + "oneironaut.page.idea_inscription.1": "智识界是思维的领域,它能用来存储信息也就顺理成章。这些图案就能把 iota 刻印入智识界,并能读出它们(不论当前身处什么维度)。它们还能把 iota 存储到其他生物的意识中,当然它们的意识也需和我一样……$(o)无拘无束$()。在相关描述中,用于指代向量和有效实体的词是“键”/“key”。", + "oneironaut.page.idea_inscription.2": "这种操作用途不少,但智识界的环境媒质处于常态的运动中,任何存入其中的 iota 终会消解,和往海洋中倒热水没什么区别。似乎这种信息在变为无用的垃圾前能存在一小时。$(br2)$(l:greatwork/akashiclib)阿卡夏图书馆$(/l)的原理貌似与之类似,书架则相当于用来避免消解的阻隔层。", + "oneironaut.page.idea_inscription.3": "接受一个有效键以及任意 iota,并将所给 iota 存入相应位置。消耗大约 1/4 个紫水晶粉。", + "oneironaut.page.idea_inscription.4": "接受一个有效键,并返回相应 iota。消耗大约 1/4 个紫水晶粉。", + "oneironaut.page.idea_inscription.5": "接受一个有效键, 并返回刻印对应 iota 的时间,或是返回 -1。不消耗媒质。", + "oneironaut.page.idea_inscription.6": "接受一个有效键和一个代表玩家的 iota,并检验对应 iota 是否由所给玩家刻印。不消耗媒质。", + "oneironaut.page.particleburst.1": "接受两个向量和两个数,并由其触发一束粒子。消耗极少量媒质。", + "oneironaut.page.particleburst.2": "第一个向量决定了粒子束的起始位置,第二个向量则决定其方向和速度。第一个数决定各位置向量分量附加多大的随机数,第二个数则以同种方式决定方向向量的随机性。", + "oneironaut.page.sentinel_detection.1": "将智识界的伪紫水晶和深暗之域的有机感测体结合起来,就是一种检测环境媒质中扰动的方式。这种新探测器会检测大约 16 米内的$(l:patterns/spells/sentinels)哨卫$(/l),检测到则会根据最近哨卫的距离输出红石信号。如果最近的哨卫格外强大,则相邻的比较器会输出信号。", + "oneironaut.page.sentinel_detection.2": "$(o)我相信监守者不会在意的。$()", + "oneironaut.page.sentinel_detection.3": "除此之外,这种探测器还可整合到牧师促动石中,产物会在区域内存在哨卫时启动(不过探测半径较普通探测器较低)。我叫这种装置“探察促动石”。尽管它不再对红石信号产生反应,但会获取代表触发哨卫的所有者的 iota,并置入法术环咒术的初始栈。$(br)而由于施法时产生的媒质干扰,这种促动石无法侦测到自身放置的哨卫。", + "oneironaut.page.sentinel_detection.4": "这种探测器不论侦测到谁的哨卫都为产生反应,我应当避免让我铺设的陷阱法术环瞄准我自己。", + "oneironaut.page.sentinel_detection.5": "接受一个向量和一个玩家,并返回该位置到所给玩家哨卫的距离,或者返回 Null。消耗极少量媒质。", + "oneironaut.page.sentinel_detection.6": "在所给位置坐标构筑一个短时探测器,它会“监听”环境媒质中的存在形态,以此分辨出最为明显的哨卫标记。", + "oneironaut.page.detection_shielding.1": "传统的隐身药水足以迷惑常人的感官,但面对咒术则毫无作用,让事物完全无法侦测的方法还有待发现。然而,我找到的这个法术应当是向上述目标迈出的第一步。它能让媒质像糠皮一样盖在生物周围,以此干扰咒术的侦测手段。", + "oneironaut.page.detection_shielding.2": "接受一个生物和一个数,并给予该实体持续所给数秒的咒术侦测护盾。每秒持续时间消耗 2 个紫水晶粉。", + "oneironaut.page.detection_shielding.3": "同时每秒会消耗所影响实体 1/10 个紫水晶粉,护盾的构筑需要这些媒质。$(br2)我需要注意我把这种效果给予了什么事物,因为没有携带其他媒质来源的生物会消耗自身的意识来供给护盾。", + "oneironaut.page.detection_shielding.4": "这种护盾在阻挡$(l:patterns/basics#hexcasting:raycast/entity)侦查员之馏化$(/l)和各种$(l:patterns/entities#hexcasting:zone_entity/animal)区域之馏化$(/l)时效果良好,但它对$(l:patterns/entities#hexcasting:get_entity)实体之纯化$(/l)的变种没有作用,那些操作已经包含所处位置的精确概念。而且,这层糠皮自身也有能量特征,尽管暗淡,依然可用特种图案侦测。", + "oneironaut.page.detection_shielding.5": "接受一个向量和一个数,并返回以所给位置为起始,指向范围内带有遮罩的实体的单位向量列表,侦测半径为所给数。", + "oneironaut.page.detection_shielding.6": "我还发现了能给予普通隐身效果的法术。和其他$(l:patterns/great_spells/zeniths)天顶法术$(/l)功能一致,每 3 秒持续时间消耗 1 个紫水晶粉。", + "oneironaut.page.raycast_assailant.1": "往方块中“织入”伪紫水晶,产物便能令抵达或穿过其的射线追踪(对实体的射线追踪也有效)返回 Null,就好像射线追踪没有检测到任何事物一样。", + "oneironaut.page.raycast_assailant.3": "奇怪的是,以同种方式加工伪紫水晶和黑曜石的产物不具备阻碍射线追踪的能力,而是变得近乎无法被咒术摧毁。不过,产物的硬度也因此大幅下降,变得和普通石头没什么两样(爆炸抗性不变)。", + "oneironaut.page.status_iotas.1": "这些图案主要操作代表生物身上长时效果的 iota,我可以用这些图案评估生物的状态,比只用护士之纯化更加深入彻底。$(br)虽然我的研究表明,代表瞬时效果的状态 iota 有存在的可能,但它们非常难以获取,而且我目前没想到它们有什么用途。", + "oneironaut.page.status_iotas.2": "接受一个生物,并返回目标当前所有效果组成的列表 iota。", + "oneironaut.page.status_iotas.3": "接受一个状态效果,并根据该效果对生物产生正面、负面,或中性影响返回一个数。", + "oneironaut.page.status_iotas.4": "接受一个实体和一个状态效果,并返回目标身上所给状态效果的持续时间,以秒计。", + "oneironaut.page.status_iotas.5": "接受一个实体和一个状态效果,并返回目标身上所给状态效果的强度。", + "oneironaut.page.status_iotas.6": "接受一个状态效果和一个向量,并返回该处带有该状态效果的实体。", + "oneironaut.page.status_iotas.7": "接受一个状态效果,一个向量和一个数($(o)n$()),返回该位置给定距离范围($(o)n$())内所有带有给定状态效果生物的列表。", + "oneironaut.page.status_iotas.8": "接受一个状态效果,一个向量和一个数($(o)n$()),返回该位置给定距离范围($(o)n$())内所有无给定状态效果生物的列表。", + "oneironaut.page.status_iotas.9": "接受一个实体和一个状态效果,并移除该实体身上的所给状态效果。消耗由效果自身的伤害性、强度、剩余持续时间决定。", + "oneironaut.page.status_iotas.10": "若是要移除非自身实体身上的正面效果,则消耗会增加。$(br2)所有需要检测实体身上有无所给状态效果的图案都有副作用。如果该实体当前没有这种效果,则图案会失效,并给予我反胃。", + "oneironaut.page.mindrender.1": "我曾读到过一种极其可怖的武器,“意识撕裂者”。古代的咒术师偶尔会用这种武器,它能将生物的思维直接斩断,造成的伤害无视所有已知保护手段。而且,如果造成的伤害令目标离真正的死亡仅一步之遥,则其会进入植物人状态,永远无法恢复如初。想到古代人使用这种物件的原因,我不由得寒透脊骨……", + "oneironaut.page.mindrender.2": "接受带有锋利魔咒的物品,或放有此类物品的物品展示框,并将锋利转换为同等级的意识撕裂。消耗由魔咒等级决定,目标为书时额外消耗 50%%。", + "oneironaut.page.lore.treatise1.1": "虽然施放咒术时能直接产生大多数 iota,但总会有不够便捷的情况,甚至于无法产生(例如庞大而精确的数和实体 iota)而不得不另辟蹊径。从核心之类的物品中读取 iota 也不错,但大多数情况下这么做需要第三只手,我很明显没有。从外部位置获取 iota 的其他方法也各有各的局限性。", + "oneironaut.page.lore.treatise1.2": "而在无外部引用手段可用的情况下,所需的 iota 必须直接插入咒术本身。对部分人而言,这么做会有些不合常理。这是因为传统上的咒术是一个图案列表,但图案自己也是一种 iota,一种与$(l:patterns/meta#hexcasting:eval)赫尔墨斯之策略$(/l)(以及同类图案)协同效果很好的 iota。", + "oneironaut.page.lore.treatise1.3": "尽管你不能直接把数放到列表里面,放入后也不能让它和使用$(l:patterns/numbers)数字之精思$(/l)一样压入栈顶,但其实有方法能做到。$(br2)最简单(也最不可靠)的方法是$(l:patterns/patterns_as_iotas#hexcasting:escape)考察$(/l)。和手动施法时一样,列表中其后方的任意事物会被转义并直接压入栈顶,而非和平时一样运行,如此就可避免运行非图案导致的事故。", + "oneironaut.page.lore.treatise1.4": "然而,当你位于咒术中超过一层运行深度处(比如循环和嵌套的条件逻辑),转义 iota 所需的考察数量会极速增长。在那些能够由另一咒术运行的事物中,这种方法便不再可靠。", + "oneironaut.page.lore.treatise1.4.link": "相关的 xkcd", + "oneironaut.page.lore.treatise1.5": "更为可靠的转义 iota 方法是$(l:patterns/patterns_as_iotas#hexcasting:open_paren)内省$(/l)和$(l:patterns/patterns_as_iotas#hexcasting:close_paren)反思$(/l)。运行图案列表时,内省后方直到相应反思之间(内省和反思不计)的事物会被转义,并以列表形式压入栈顶,不论 iota 的类型如何。然后就可以用合适方式操作此列表,比如用$(l:patterns/lists#hexcasting:splat)群体之拆解$(/l)把列表中各项分别压入栈顶。", + "oneironaut.page.lore.treatise1.6": "如果你的列表的结构与此类似:$(br2)内省$(br)任意 iota(s)$(br)反思$(br)群体之拆解$(br2)运行这些 iota 之后,栈中会压入内省与反思之间的所有 iota。", + "oneironaut.page.lore.treatise2.1": "推动事物的标准做法是$(l:patterns/spells/basic#hexcasting:add_motion)驱动$(/l)。但是,如果想要事物极为迅速地移动,这种方法可能会昂贵到无法使用。这是因为消耗会随向量模长增大而极速增长。对单个目标使用多次模长为 1 的驱动就能减少这种影响,总消耗会从 n^2 降到 2n-1,其中 n 是向量的模长。", + "oneironaut.page.lore.treatise2.2": "这种方法最简单的实现方式需要$(l:patterns/meta#hexcasting:for_each)托特之策略$(/l),传入多个重复的实体 iota 组成的列表即可。当然也有其他(且通常更好的)方法存在。但除去重复绘制图案外,这些方法大多离不开循环这一命题,这就有点超出这篇文档的范畴了。", + "oneironaut.page.lore.treatise3.1": "虽然$(l:patterns/meta#hexcasting:for_each)托特之策略$(/l)极其适合同时对多个目标施放同一法术,但对同一目标施放多次法术就有点麻烦了。它不仅容易导致咒术的停止,运行开始后还无法添加或移除作用目标。$(br)而绕过这些局限也很简单,换用另一种循环即可。", + "oneironaut.page.lore.treatise3.2.header": "While 循环", + "oneironaut.page.lore.treatise3.2": "While 循环是一种在既定条件达成之前一直运行的循环,条件可以是实体的速度达到了给定值等。一个仅会复制自身再运行栈顶 iota 的图案列表就是这种循环最简单的实现方式。如果单独运行它,那么咒术会进入无限循环,除非产生事故不然不会停止。", + "oneironaut.page.lore.treatise3.3": "向其中加入实际功能和一些布尔逻辑,就能创造出有用的 while 循环。前文所提无限循环的代码如下:$(br)内省$(br)双子之分解$(br)赫尔墨斯之策略$(br)反思$(br)双子之分解$(br)赫尔墨斯之策略$(br2)向其中加入根据条件是否运行列表内赫尔墨斯之策略的逻辑,达成相应条件后循环便会终止。", + "oneironaut.page.lore.treatise3.4.header": "循环展开", + "oneironaut.page.lore.treatise3.4": "“已展开循环”/“Unrolled loop”是一种更为复杂的循环。和托特之策略一样,构建时其迭代次数同样固定,难以增加修改。但如有需要,卡戎之策略可以令其提前停止。比较来看,这种循环仅产生一到两层递归深度(循环体运行所致深度不计),是其优势所在。先写定想要重复的图案列表,再多次复制,最后把所有列表合成一体,就实现了循环展开。", + "oneironaut.page.lore.treatise3.5": "这一目标最简单的达成方式是$(l:patterns/stackmanip#hexcasting:duplicate)双子之分解$(/l)接$(l:patterns/lists#hexcasting:concat)组合之馏化$(/l),运行后原列表会重复 2 次。可重复使用此方法以复制原列表 2 的幂次,所得的列表在运行时只会产生一层递归深度。更灵活的做法则是使用$(l:patterns/stackmanip#hexcasting:duplicate_n)双子之策略$(/l)产生 $(o)n$() 个副本,再将 $(o)n-1$() 个组合之馏化放入列表并运行,如此便能把所有原列表副本合为一体。", + "oneironaut.page.lore.treatise4.1": "我的一些呃,“同事”,在抄录长咒术时遇到了麻烦。$(br)“这东西好长!”$(br)“咒术网格都不够用了!”$(br)我认为这是$(bold)能力问题$()。这又不是那些绘制完最后一个反思后没法修改咒术的麻烦。只需把未完成的咒术存到核心中即可。(不过你应该注意为存储操作留出空间。)", + "oneironaut.page.lore.treatise4.2": "完成之后,再用$(l:patterns/lists)列表操作$(/l)图案把各部分合起来就行了。$(br2)甚至都不需要用多个核心,写完一部分后把它接到核心中列表的后方,再把所得列表存入核心即可。多核心会让调试咒术更轻松,但据我目前所知,这也是多核心相对单核心唯一的优势。", + "oneironaut.page.lore.science1.1": "$(o)“这是什么?我该怎么把它弄走?”$()$(br)大多数人在第一次遇见质道时都会产生这些疑问。我对第二个问题暂时没有答案,但回答第一个问题还是可以的。$(br)就我所知,质道是空间中的微小孔洞,其另一侧是称作“智识界”的媒质界。", + "oneironaut.page.lore.science1.2": "质道中逸散的类咒灵现象是智识界中巨量的环境媒质试图迅速通过孔洞的结果(就像是气体扩散入接近真空的空间),这些媒质的纠缠卷绕方式与召唤咒灵法术中编织供咒灵消耗的媒质的方式类似。", + "oneironaut.page.lore.science1.3": "此外,质道的入口处似乎存在某种屏障,任何物质都会被阻挡不得通过。如果这一屏障可被穿透,孔洞可被扩展,质道就可将物质吸收入智识界。这么做后质道不会再产生咒灵,是媒质的通过速度大大降低,不会再受扰动而缠绕的缘故。如果想要尝试,就需小心不要过度扩展,否则周围区域都有被吸收入智识界的危险。", + + "not.real.translation.key.1": "TODO: Add a structure that is implied to be part of a laboratory that has been ripped from the overworld by an engorged gateway", + + "oneironaut.page.lore.science2.1": "真是个奇怪的地方。组成此处海洋的液体不比水致密多少,那些岛屿由密度类似玄武岩的岩石构成,却能浮在其中。而且,此处的所有事物都似乎瞬息万变,如梦似幻。但我比从前任何时候都要清醒,这又怎么会是梦境?", + "oneironaut.page.lore.science2.2": "这种清醒感应当是此处环境媒质的效果,它会润滑我的思维。这里的媒质浓度甚至超过了咒灵的核心,它们的天然消耗也因此缩减到无穷小。有趣的是,那些带有某人灵魂印记的咒灵不会受此效应影响,因此咒灵无法用于长时存储真名。$(br)这些环境媒质甚至会从足够大的维度裂缝中渗漏出去,正是它维持了裂隙另一侧距离足够近的咒灵的形态。", + "oneironaut.page.lore.science3.1": "这种晶体很是有趣。一件仅由媒质构成的物体,浓度超越了传统的构筑方块,甚至超越了我在图书馆中的同事们研究的那些致密媒质晶体。连媒质密度相近的紫水晶中的都有痕量二氧化硅,此晶体中却完全不存在杂质。而令其静置一段时间后,晶体粉末会以分形模式累积,就好像在持续不断地施法。", + "oneironaut.page.lore.science3.2": "我在显微镜下详细检验了这种晶体,可观察到这些分形状结构会向晶体内部延伸,且会以固定模式一直变化。这有无可能是一种时间晶体?", + "oneironaut.page.glow_ambit.1": "尽管经过了长久的研究,代表其他咒术师的 iota 中仍有些特殊性质的由来未能厘清。不过,我找到了一种赋予其他事物同样性质的方法,不敢说持久,但至少能暂时做到。(还很昂贵。)$(br)这种法术允许施法者跨越极远的距离影响生物,就和玩家 iota 的无限影响距离一样。但对目标施放这种法术时,依然需要离目标足够近。", + "oneironaut.page.glow_ambit.2": "接受一个活体,在 1 分钟内即可在世界各处访问所给活体。基础消耗 1 个紫水晶碎片,在效应消退前每施放一次额外消耗 1 个紫水晶碎片。", + "oneironaut.page.glow_ambit.3": "这种效果的原理似乎是让目标散发出某种超自然共振。这种共振相当强大,目标的轮廓隔着各种形式的障碍依然“可见”。(咒术师们也许就在持续产生这种共振,只不过是没有如此效果显著?)但是,这种辉光与光灵箭等造成的辉光不一样,不要指望监测那种辉光的仪器对这种也有效。", + "oneironaut.page.soulprints.1": "灵魂印记和代表我自己的 iota 类似,功能中也有“代表我”这一项,但使用的限制会多出许多。除了通过我本人之外,他人没有方式获得灵魂印记,不过这些灵魂印记不受写入限制,和普通的玩家 iota 不一样。$(br2)有意思的是,灵魂印记也是$(l:oneironaut:patterns/idea_inscription)思绪刻印$(/l)的有效键。", + "oneironaut.page.soulprints.2": "返回我自己的灵魂印记,使用除法杖之外的施法手段时会招致事故。消耗极少量媒质。", + "oneironaut.page.soulprints.3": "将我的灵魂印记隐写到另一只手中的物品上,若已有灵魂印记则清除。消耗 1 个紫水晶粉。$(br)签印物品前要注意先将核心一类的物品密封,经过签印的未密封核心有身份泄露的风险,清除物品会同时去除签印。", + "oneironaut.page.soulprints.4": "接受一个灵魂印记,并检查我另一只手中物品上是否有对应的隐写。若有,返回 True;否则返回 False。消耗极少量媒质。", + "oneironaut.page.hover_elevator.1": "使用原产于智识界的材料,再加上与飘浮有关的原材料,做出的设备能够产生具有推动力的能量流;我站在其中也会被推动,而且很难摔出来。使用时必须令其朝向另外一个此类设备,也即两个此类设备需面对面放置。放置妥当后,两端均需以", + "oneironaut.page.hover_elevator.2": "红石信号激活,若两者在各自范围内(水平方向 64 米,垂直方向 128 米),则其间会产生能量流。走入能量流后我会被固定在原地;往两端中的一端看时,会向该方向加速至最大速度。此最大速度与我的视线与能量流的平行程度成正比。潜行时会强制将我锁定在原地,无论往哪个方向看都是如此。", + "oneironaut.page.hover_elevator.3": "$(o)在真的用这东西之前,我最好还是穿双远距防摔靴当保险。", + "oneironaut.page.hover_elevator.meme":"$(o)淘气的咒术师会被送到飘浮方块里去喔。", + "oneironaut.page.hover_elevator.4": "此外,还可以制造一个中继器,用于延长端设备的范围。经过此中继器的能量流会恢复至其刚离开端设备的状态。如此强大的器具自然需要强大的组件,但就算如此,能量流在经过 3 个中继器后,也会因太过不稳定而无法维持。", + "oneironaut.page.hover_elevator.5": "好在由于某种原因,此设备并没有传统意义上的实体;也即在能量流中移动时可以直接穿过去,而不需要小心翼翼地绕过。$(br)$(o)不会的,它不会在延续能量流之前顿一下的。", + "oneironaut.page.flayrevival.1": "剥离完意识的村民、或是被$(l:oneironaut:items/mindrender)意识撕裂者$(/l)摧残到仅剩最后一丝气息的生物,它们都变成了毫无用途的空壳,我对此相当苦恼。尽管它们$(o)确实$()能自己完成少数几种任务;但除此之外的大多数任务就连无智慧可言的野兽都能做好,它们却无能为力了。好在我发现了一个法术,能让这些空壳具有某种程度的认知能力。", + "oneironaut.page.flayrevival.2": "接受一个已剥离意识的生物,并创造一个人工伪意识融入其中。对村民使用时消耗 16 个充能紫水晶,其余情况消耗 10 个紫水晶碎片。", + "oneironaut.page.flayrevival.3": "这些伪意识确实能驱动躯体,一如身体的原主人,但它们离真正的所谓智慧还差得远,换成适用于村民的宽松定义也是一样。因此,以此方法“恢复正常”的村民会失去先前的职业经验,也无法再获取此类经验了。", + "oneironaut.page.flayrevival.4": "不过,他们依然保留了繁衍的能力。他们的后代不会受到我先前行为的影响。$(br2)我不太确定为什么村民恢复后都喜欢上了绿色的衣物,但这种性质确实方便我辨识哪些村民不堪大用。", + "oneironaut.page.monkfruit.1": "我发现对甜浆果丛使用$(l:patterns/spells/blockworks#hexcasting:edify)启迪树苗$(/l)法术能变出一种相当有趣的植物。它和原来的灌木很像,但它的棘刺中融有媒质场,能吸走其刺中的生物的意识以让自己生长。它不刺人也能生长(虽然很慢),但仍需周围存在具有意识的生物才能结出少量媒质。", + "oneironaut.page.monkfruit.2": "它结出的果实相当甜,且能加工处理成糖。而且,食用一颗似乎能向空气释放出些许媒质,又会进一步为我身上可以重新填充媒质的物品充入媒质。摘果子时务必要小心灌木中的刺。", + "oneironaut.page.monkfruit.3": "成熟植株上剪下的枝条依然具有这些危险的性质,可以用来合成一把不祥的刀。$(br2)这把刀和附有低等级$(l:oneironaut:items/mindrender)意识撕裂$(/l)魔咒的剑类似,但它更为精确:撕裂意识时能把对形体的附带损伤降到最低。如果我有这个想法,当然可以把它用作普通的冷兵器,但确实要承担杀死目标的风险。", + "oneironaut.page.monkfruit.4": "$(o)这又不是什么高端科技。$()", + + "this.is.a.comment.5": "Advancements--------------------------------------------------------------------------------------------", + "oneironaut.advancements.noosphere.enter": "思维与梦的领域", + "oneironaut.advancements.noosphere.enter.description": "进入智识界", + "oneironaut.advancements.noosphere.find_tower": "永存经典", + "oneironaut.advancements.noosphere.find_tower.description": "发现一座属于身份不详的咒术师的高塔", + "oneironaut.advancements.noosphere.find_media_lab": "结晶", + "oneironaut.advancements.noosphere.find_media_lab.description": "发现一次结局惨淡的实验", + "oneironaut.advancements.noosphere.find_garden": "搁浅", + "oneironaut.advancements.noosphere.find_garden.description": "发现一个不幸灵魂最后停留之处的遗迹", + "oneironaut.advancements.lore.root": "航梦故事", + "oneironaut.advancements.lore.root.description": "失落于时间的记忆", + "oneironaut.advancements.lore.treatise1": "咒术师的记忆,#1", + "oneironaut.advancements.lore.treatise1.description": "有关iota嵌入的精思", + "oneironaut.advancements.lore.treatise2": "咒术师的记忆,#2", + "oneironaut.advancements.lore.treatise2.description": "有关有效利用驱动的精思", + "oneironaut.advancements.lore.treatise3": "咒术师的记忆,#3", + "oneironaut.advancements.lore.treatise3.description": "有关重复图案的精思", + "oneironaut.advancements.lore.treatise4": "咒术师的记忆,#4", + "oneironaut.advancements.lore.treatise4.description": "有关长咒术的精思", + "oneironaut.advancements.lore.science1": "科学家的记忆,#1", + "oneironaut.advancements.lore.science1.description": "有关质道本质的研究", + "oneironaut.advancements.lore.science2": "科学家的记忆,#2", + "oneironaut.advancements.lore.science2.description": "有关智识界性质的研究", + "oneironaut.advancements.lore.science3": "科学家的记忆,#3", + "oneironaut.advancements.lore.science3.description": "有关伪紫水晶结构的研究", + "oneironaut.advancements.unflay": "回收!", + "oneironaut.advancements.unflay.description": "你肯定不会直接丢掉的!", + "oneironaut.advancements.ouchie": "好痛!", + "oneironaut.advancements.ouchie.description": "难道觉得不会痛吗?", + + "this.is.a.comment.6": "Mishaps--------------------------------------------------------------------------------------------", + "hexcasting.mishap.oneironaut:badcuboid.mismatch": "提供的长方体尺寸不相同。", + "hexcasting.mishap.oneironaut:badcuboid.toobig": "提供的长方体尺寸过大。", + "hexcasting.mishap.oneironaut:uninfusable": "本应在%s处有一个可灌注方块,而实际为%s。", + "hexcasting.mishap.oneironaut:nonconjured": "本应在%s处有一个构筑的方块,而实际为%s。", + "hexcasting.mishap.oneironaut:nonoosphere": "互换的其中一方需为一个特殊维度。", + "hexcasting.mishap.oneironaut:norod": "需要以回响之杖施放。", + "hexcasting.mishap.oneironaut:norodremote": "需要手持启动的回响之杖。", + "hexcasting.mishap.oneironaut:missingeffect": "%s本应拥有%s,而实际没有。", + "hexcasting.mishap.oneironaut:missingenchant": "%s本应带有%s魔咒,而实际没有。", + "hexcasting.mishap.oneironaut:unhappyslime": "黏液说道:“%s”", + "hexcasting.mishap.oneironaut:norequirediota": "黏液需要%s", + "hexcasting.mishap.oneironaut:requiresdifferententities": "一个与目标不同的实体", + "hexcasting.mishap.oneironaut:nostaff": "%s本应由法杖施放。", + "oneironaut.mishap.noitemframe": "一个物品展示框", + "oneironaut.mishap.invalidideakey": "一个向量、玩家或灵魂印记", + "oneironaut.mishap.unenlightenedtarget": "一个经过启迪的玩家", + "oneironaut.mishap.notbrainswept": "一个剥除意识的村民", + "oneironaut.mishap.badentitykey": "一个经过启迪的玩家或剥除意识的村民", + "oneironaut.mishap.nolistsallowed": "一个非列表iota", + "oneironaut.mishap.entitytypelistplease": "一个实体类型列表", + "oneironaut.mishap.wrongsizelist": "列表长度不合适。", + "oneironaut.mishap.twovectorsplease": "列表未包含两个向量。", + "oneironaut.mishap.requiresflayedmob": "%s本应获取一个已剥离意识的生物,而实际为%s。", + "hexcasting.mishap.invalid_value.class.oneironaut:imprint": "一个空间印记", + "hexcasting.mishap.invalid_value.class.oneironaut:status": "一个状态效果", + "hexcasting.mishap.invalid_value.class.oneironaut:visiblestatus": "一个可检测的状态效果", + "hexcasting.mishap.invalid_value.class.oneironaut:soulprint": "一个灵魂印记", + + "this.is.a.comment.7": "Other---------------------------------------------------------------------------------------------", + "hexcasting.iota.oneironaut:dim": "维度", + "hexcasting.iota.oneironaut:potion": "状态效果", + "hexcasting.iota.oneironaut:uuid": "灵魂印记", + "hexcasting.iota.oneironaut:uuid.label": "%s的灵魂印记", + "biome.oneironaut.noosphere_sea": "智识之海", + "text.oneironaut.clearIdeasResponse": "已清除iota存储映射。", + "effect.oneironaut.detection_resistance": "媒质遮罩", + "effect.oneironaut.not_missing": "扬升共振", + "effect.oneironaut.missing": "损坏的状态效果iota", + "enchantment.oneironaut.overcast_damage": "意识撕裂", + "itemGroup.oneironaut.oneironaut": "航梦", + "oneironaut.tooltip.wispcapturedevice.haswisp": "包含具有%s个紫水晶粉、咒术印识为%s的咒灵。", + "oneironaut.tooltip.wispcapturedevice.nowisp": "没有咒灵。", + "oneironaut.tooltip.wispcapturedevice.uninitialized": "媒质储库未初始化。", + "text.oneironaut.lorem_ipsum": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum." +} diff --git a/projects/1.20-fabric/assets/ephemera/ephemera/README.md b/projects/1.20-fabric/assets/ephemera/ephemera/README.md new file mode 100644 index 000000000000..190619b195ab --- /dev/null +++ b/projects/1.20-fabric/assets/ephemera/ephemera/README.md @@ -0,0 +1 @@ +[见主文档](/projects/1.20/assets/ephemera/ephemera) \ No newline at end of file diff --git a/projects/1.20-fabric/assets/ephemera/ephemera/lang/en_us.json b/projects/1.20-fabric/assets/ephemera/ephemera/lang/en_us.json new file mode 100644 index 000000000000..8fbdf3c934eb --- /dev/null +++ b/projects/1.20-fabric/assets/ephemera/ephemera/lang/en_us.json @@ -0,0 +1,189 @@ +{ + "itemGroup.ephemera.ephemera": "Ephemera", + + "item.ephemera.media_helmet": "Hexformed Helmet", + "item.ephemera.media_chestplate": "Hexformed Chestplate", + "item.ephemera.media_leggings": "Hexformed Leggings", + "item.ephemera.media_boots": "Hexformed Boots", + + "block.ephemera.relay_tp_detector": "Network Gateway Probe", + "block.ephemera.relay_index": "Network Routing Index", + "block.ephemera.fakeslate": "Inert Slate", + + "hexcasting.action.ephemera:magearmor": "Instant Aegis", + "hexcasting.action.book.ephemera:magearmor": "Instant Aegis", + "hexcasting.action.ephemera:networkscan": "Network Distillation", + "hexcasting.action.book.ephemera:networkscan": "Network Dstln.", + "hexcasting.action.ephemera:networktp": "Network Gateway", + "hexcasting.action.book.ephemera:networktp": "Network Gateway", + "hexcasting.action.ephemera:networkindex": "Routing Distillation", + "hexcasting.action.book.ephemera:networkindex": "Routing Dstln.", + "hexcasting.action.ephemera:readframerotation": "Decorator's Purification", + "hexcasting.action.book.ephemera:readframerotation": "Decorator's Prfn.", + "hexcasting.action.ephemera:setframerotation": "Decorator's Gambit", + "hexcasting.action.ephemera:paintconjured": "Externalize Pigment", + "hexcasting.action.ephemera:particleburst": "Particle Burst", + "hexcasting.action.ephemera:invisibility": "Hidden Sun's Zenith", + "hexcasting.action.ephemera:getstatus": "Apothecary's Purification", + "hexcasting.action.book.ephemera:getstatus": "Apothecary's Prfn.", + "hexcasting.action.ephemera:getstatuscategory": "Apothecary's Purification II", + "hexcasting.action.book.ephemera:getstatuscategory": "Apothecary's Prfn. II", + "hexcasting.action.ephemera:getstatusduration": "Pharmacist's Distillation", + "hexcasting.action.book.ephemera:getstatusduration": "Pharmacist's Dstln.", + "hexcasting.action.ephemera:getstatuslevel": "Pharmacist's Dstln. II", + "hexcasting.action.book.ephemera:getstatuslevel": "Pharmacist's Distillation II", + "hexcasting.action.ephemera:getbystatus": "Zone Exaltation: Status", + "hexcasting.action.book.ephemera:getbystatus": "Zone Exltn.: Status", + "hexcasting.action.ephemera:getbystatusinverse": "Zone Exaltation: Not-Status", + "hexcasting.action.book.ephemera:getbystatusinverse": "Zone Exltn.: Not-Status", + "hexcasting.action.ephemera:getbystatussingle": "Entity Distillation: Status", + "hexcasting.action.ephemera:removestatus": "Cleanse Status", + "hexcasting.action.ephemera:getabsorption": "Ablation Purification", + "hexcasting.action.ephemera:filteredentityraycast": "Scout's Exaltation", + "hexcasting.action.ephemera:gaussianrand": "Entropy Reflection II", + "hexcasting.action.ephemera:hash": "Hashing Purification", + "hexcasting.action.ephemera:hashbits": "undocumented hash-to-numbers pattern", + "hexcasting.action.ephemera:revealtoother": "Postman's Gambit", + "hexcasting.action.ephemera:getrevealcost": "Postage Purification", + "hexcasting.action.ephemera:clearrevealcost": "Postman's Gambit II", + "hexcasting.action.ephemera:repair": "Induce Mending", + "hexcasting.action.ephemera:getdurabilitymainhand": "Menderbug's Reflection", + "hexcasting.action.book.ephemera:getdurabilitymainhand": "Menderbug's Rfln.", + "hexcasting.action.ephemera:getdurabilityoffhand": "Menderbug's Reflection II", + "hexcasting.action.book.ephemera:getdurabilityoffhand": "Menderbug's Rfln. II", + "hexcasting.action.ephemera:thothyoink": "Seshat's Gambit", + "hexcasting.action.ephemera:thothcount": "Seshat's Reflection", + "hexcasting.action.book.ephemera:thothcount": "Seshat's Rfln.", + "hexcasting.action.ephemera:collisionprobe": "Clearance Purification", + "hexcasting.action.book.ephemera:collisionprobe": "Clearance Prfn.", + "hexcasting.action.ephemera:getiotasize": "Flock's Purification", + "hexcasting.action.book.ephemera:getiotasize": "Flock's Prfn.", + "hexcasting.action.ephemera:getstacksizedeep": "Flock's Reflection II", + "hexcasting.action.book.ephemera:getstacksizedeep": "Flock's Rfln. II", + "hexcasting.action.ephemera:no": "No", + "hexcasting.action.ephemera:getproperties": "State Purification", + "hexcasting.action.ephemera:getpropertyvalue": "State Distillation", + "hexcasting.action.ephemera:ridewisp": "Ride Wisp", + "hexcasting.action.ephemera:dismount": "Dismount", + "hexcasting.action.ephemera:getrider": "Equestrian Purification", + "hexcasting.action.book.ephemera:getrider": "Equestrian Prfn.", + "hexcasting.action.ephemera:getmount": "Equestrian Purification II", + "hexcasting.action.book.ephemera:getmount": "Equestrian Prfn. II", + "hexcasting.action.ephemera:cancelflight": "Terminate Flight", + "hexcasting.action.ephemera:getflight/type": "Aviator's Purification II", + "hexcasting.action.ephemera:getflight/remaining": "Aviator's Purification III", + + "hexcasting.mishap.location_ephemera:inputrelaytprange": "Target entity is too far from target node at %s.", + "hexcasting.mishap.location_ephemera:outputrelaytprange": "Could not find connected node within range of %s.", + "hexcasting.mishap.ephemera:nonconjured": "Expected a conjured block at %s, but got %s.", + "hexcasting.mishap.ephemera:missingeffect": "Expected %s to be affected by %s, but they are not.", + "hexcasting.mishap.ephemera:nothoth": "Expected to be cast from inside of Thoth's Gambit.", + "ephemera.mishap.noitemframe": "an item frame", + "ephemera.mishap.entitytypelistplease": "a list of entity types", + "ephemera.mishap.toolongiota": "an iota that displays as less than 256 characters", + "hexcasting.mishap.ephemera:blacklist": "This effect has been blacklisted via tag.", + "hexcasting.mishap.ephemera:instant": "How did you even get that iota?", + "hexcasting.mishap.ephemera:no": "no", + + "item.ephemeral.media_armor.tooltip.1": "Bestows %s %s upon the wearer.", + + "ephemera.entry.miscpatterns": "Misc. Ephemera Patterns", + "ephemera.entry.invisibility": "Invisibility", + "ephemera.entry.status_iotas": "Status Iotas", + "ephemera.entry.network": "Link Amenities", + "ephemera.entry.revealtoother": "Messaging", + "ephemera.entry.mending": "Induce Mending", + "ephemera.entry.hashing": "Iota Hashing", + "ephemera.entry.specialslates": "Modified Slates", + "ephemera.entry.metathoth": "Accumulator Manipulation", + "ephemera.entry.flight": "Additional Flight Patterns", + + "ephemera.page.paintconjured.1": "Accepts a vector and an itemtype representing a pigment. Costs a negligible amount of media if targeting my own block, or 1 Amethyst Dust if not.", + "ephemera.page.paintconjured.2": "Sets the colors of the conjured block corresponding to the vector to the colorset represented by the passed pigment, or mine if passed a NULL iota.$(br2)Not guaranteed to work with unconventional forms of conjured matter. ", + "ephemera.page.paintconjured.3": "Feels strangely celebratory, as if something similar was once used in grand festivals where teams would splatter their colors all over their opponents' territory in a bid for ideological dominance.", + + "ephemera.page.miscpatterns.1": "I've found a couple patterns designed to interact with item frames. Nothing fancy, but they're nice utility for things like controlling my spell circles.$(br2)Additionally, it seems Sorter's Purification works on them just fine, so my attempts to find a dedicated frame-item pattern were pointless.", + "ephemera.page.miscpatterns.2": "Accepts an item frame entity, and returns its rotation, from 0 to 7.", + "ephemera.page.miscpatterns.3": "Accepts an item frame entity and an integer from 0 to 7, and sets its rotation to the number. Costs a negligible amount of media.", + "ephemera.page.miscpatterns.4": "As $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l), but also accepts a list of entity type iotas. Any entity whose type is not present in the list will be ignored. Costs an amount of media slightly less negligible than that of the aforementioned pattern.", + "ephemera.page.miscpatterns.5": "Returns a random number with a gaussian distribution, with a mean of zero and a standard deviation of one.", + "ephemera.page.miscpatterns.6": "Accepts a vector, and returns whether that vector is within (or just on the edge of) the block in that space. Seems to involve the boxes I see in my mind's eye.", + "ephemera.page.miscpatterns.7": "Returns the total size of all iotas on my stack, including the contents of lists and similar. If this number ever reaches 1024, my stack shall come crashing down into garbage.", + "ephemera.page.miscpatterns.8": "Accepts any iota, and returns its total size.", + "ephemera.page.miscpatterns.9": "Accepts a vector, and returns a list of strings corresponding to values contained in the state of the block at the corresponding position.", + "ephemera.page.miscpatterns.10": "Accepts a vector and a string, and uses the string as a key to retrieve the value it corresponds to in the target block's state, or null if there is no corresponding value.", + "ephemera.page.miscpatterns.11": "Accepts one of my wisps (or a wandering wisp), and places me atop it, similar to sitting in a minecart. I must be within the wisp's ambit, or four blocks for wandering wisps. Costs one amethyst shard.", + "ephemera.page.miscpatterns.12": "I should take care not to accelerate too quickly when riding a wisp, as unlike with Impulse, the acceleration is not applied evenly across my body, and can thus cause significant harm. The threshold for how quickly I can accelerate safely seems to be about 98 m/s over one second.$(br)I should take care when mounting fast wisps, as the instantaneous velocity involved can contribute to this damage if I am too far from my final seated position.", + "ephemera.page.miscpatterns.13": "Takes me off of whatever entity I may be riding when cast. Costs 1/100 of a dust.", + "ephemera.page.miscpatterns.14": "Accepts an entity, and returns a list of entities seated atop it.", + "ephemera.page.miscpatterns.15": "Accepts an entity, and returns the entity it is seated atop.", + + "ephemera.page.flight.1": "I've often found the preexisting suite of flight-related patterns to be a bit lackluster. They work perfectly well if all you want to do is cast the spell and go, but they are not well-suited to doing anything more complex. These patterns should help with that.", + "ephemera.page.flight.2": "Cancels my current flight ability, at a cost of one tenth of an Amethyst Dust. Casting a new flight spell in the same instant allows me to continue flying, potentially with different parameters.", + "ephemera.page.flight.3": "Returns true if the target is under the effects of Anchorite's Flight, false if Wayfarer's Flight, null if neither.", + "ephemera.page.flight.4": "Returns how close the target is to the end of their flight spell, represented as either their distance to the boundary or how many seconds remain.", + + "ephemera.page.particleburst.1": "Accepts two vectors and two numbers, and uses them to define a burst of particles. Costs a negligible amount of media.", + "ephemera.page.particleburst.2": "The first vector determines the burst's origin position, and the second vector determines its direction and speed. The first number determines the scale of random numbers added to each position component, and the second does the same for the direction vector.", + + "ephemera.page.invisibility.1": "Functions just like the normal $(l:patterns/great_spells/zeniths)Zeniths$(/l), applying Invisibility. Costs one amethyst dust per three seconds.", + + "ephemera.page.status_iotas.1": "These patterns work with a type of iota that represents lingering effects on a creature, which can allow me to asses the state of a creature more thoroughly than with only Nurse's Purification.$(br)While my research suggests that status iotas representing instantaneous effects are possible, they would be very difficult to obtain, and I cannot think of any use case for them at the moment.", + "ephemera.page.status_iotas.2": "Accepts a living entity, and returns a list of status iotas representing all effects on the target.", + "ephemera.page.status_iotas.3": "Accepts a status effect type, and returns a number based on whether the effect is likely to be helpful, harmful, or neutral to a creature.", + "ephemera.page.status_iotas.4": "Accepts an entity and a status effect type, and returns the effect on the target's duration in seconds.", + "ephemera.page.status_iotas.5": "Accepts an entity and a status effect type, and returns the effect on the target's potency.", + "ephemera.page.status_iotas.6": "Accepts a status effect type and a vector, and returns an entity at that position which has that effect.", + "ephemera.page.status_iotas.7": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which have that effect.", + "ephemera.page.status_iotas.8": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which do not have that effect.", + "ephemera.page.status_iotas.9": "Accepts a living entity, and returns how much damage it can Absorb before its health is affected.", + "ephemera.page.status_iotas.10": "Accepts an entity and a status effect type, and removes that status effect from the entity. Cost is based on the effect's innate harmfulness, its potency, and its remaining duration.", + "ephemera.page.status_iotas.11": "Costs more if attempting to remove a positive effect from an entity other than myself.$(br2)All of the patterns which deal with a specific status effect on an entity have the side effect that if the entity does not currently have the specified effect, the pattern will fail and inflict nausea upon me.", + + "ephemera.page.magearmor.1": "I've discovered a rather interesting spell, capable of producing a defensive media barrier that can match and even exceed the protective abilities of many kinds of conventional armor. It can even apply a wide array of $(l:patterns/spells/status_iotas)persistent effects$(/l) to the wearer, allowing for incredible versatility.", + "ephemera.page.magearmor.2": "Accepts a player to grant the armor to, the durability of the armor, the protection value of the armor (max 10), a status effect to apply, and that effect's level. The latter two can be replaced with any non-status iota to ignore them.", + "ephemera.page.magearmor.3": "Of course, this barrier is by no means indestructible, and its durability decays steadily in addition to any damage it takes from hits. The base rate of this decay can be described as one \"point\" per second, plus additional points equal to the squared strength of any effect imbued into it. Additionally, it will disappear instantly if removed from the wearer, so there is no way to repair it, short of recasting the spell to overwrite its current state.", + "ephemera.page.magearmor.4": "The media cost for this spell is a bit complicated: A base of one amethyst dust per 60 durability, multiplied by the armor's protection value raised to the power of 1.5, times the level+1 of any status effect. Thus, producing no-status strength 10 armor with one minute's worth of durability costs ~31.5 dust. Adding Regeneration 2 increases that media cost to ~94.5 dust, and causes it to only last 36 seconds.", + "ephemera.page.magearmor.5": "This explanation assumes I am wearing no other armor, in practice the cost can be reduced to as little as 25%% of that formula's output if all but one of my armor slots is already occupied by more conventional armor.", + + "ephemera.page.network.1": "I've devised a suite of patterns (plus a couple of blocks) to make links a bit more useful for things other than data transmission and media sharing.$(br2)Note that the patterns which fetch information about the network make no promises regarding whether returned linkables are within ambit.", + "ephemera.page.network.2": "Scans the link network connected to the input linkable up to a recursion depth equal to the input number (max 32), and returns a list of all connected linkables. Costs a negligible amount of media.", + "ephemera.page.network.3": "Accepts an entity to teleport, a linkable to use for access to its network, and a destination. If the entity is within 8 blocks of the linkable, and there is a network node within 4 blocks of the destination, the entity will be teleported. Cost varies based on what entity is teleported.", + "ephemera.page.network.4": "Outputs a brief redstone signal when an adjacent relay is used as the output for a casting of Network Gateway.", + "ephemera.page.network.5": "When rclicked with a focus in the main hand, attempts to store its iota in the block. When the focus is in the offhand, writes the stored iota to the focus.", + "ephemera.page.network.6": "Accepts a linkable to use for network access, and any iota. If a relay connected to the network has an adjacent Network Routing Index with the same iota, returns that relay's position. Costs half an amethyst dust.", + + "ephemera.page.revealtoother.1": "Accepts a player and any iota less than 256 characters long, and shows that iota to them as if they had cast Reveal, also telling them who sent the message. Cost is inversely proportional to the length of time since they were last targeted by this spell.", + "ephemera.page.revealtoother.2": "Accepts a player and returns how much amethyst dust it would cost to send them a message via Postman's Gambit, between 1/10 of a dust and 10 dust.", + "ephemera.page.revealtoother.3": "Resets the cost of sending me a message via Postman's Gambit back to 1/10 of a dust. Costs 1/10 of a dust.", + + "ephemera.page.mending.1": "Accepts a raw media item on the ground, and attempts to use it to repair a tool in my other hand.", + "ephemera.page.mending.2": "Generally only works on items enchanted with Mending, which are already damaged. Restores twenty points of damage for each amethyst dust's worth of media.", + "ephemera.page.mending.3": "Returns how many times the item in my other hand can be used without breaking, durability-manipulating effects notwithstanding.", + "ephemera.page.mending.4": "As previous, targeting the item in the hand I'm casting this with. Most useful with delayed casts of one form or another.", + + "ephemera.page.hashing.1": "I've discovered a curious pattern which scrambles an iota into an unreadable mess. However, unlike Garbage iotas, $(o)this$() mess still contains data, and running the same iota through the pattern will always produce the same mess (known as a hash). While it is not possible to recover an iota from a hash, it can be quite useful for comparisons in situations where I cannot save the unaltered iota.", + "ephemera.page.hashing.2": "Accepts any iota, and converts it into its hashed form.", + + "ephemera.page.specialslates.1": "I've designed a couple types of slate to be used in spell circles. While they don't provide any groundbreaking new functionality, they can be nice to have.", + "ephemera.page.specialslates.2": "Works just like a normal slate, but is capable of sending the media wave into the block it is placed on.", + "ephemera.page.specialslates.3": "Crafted with a normal slate and a stonecutter.$(br2)Looks just like a normal slate, but can't direct a media wave at all. Cannot be written to.", + + "ephemera.page.metathoth.1": "It seems that the list which $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l) forms as it iterates over a data set functions as a stack, simply one that is a bit out of the way. As such, I have devised a couple of patterns for interacting with this hidden stack, called the accumulator.", + "ephemera.page.metathoth.2": "Pops an iota from the accumulator and pushes it to the current stack. Mishaps if used outside of Thoth's Gambit.", + "ephemera.page.metathoth.3": "Returns how many iotas are currently accessible via Seshat's Gambit. Returns -1 if used outside of Thoth's Gambit.", + + "ephemera.page.forgewarning.1": "Mod author's note for Forge users: This spell does not work on Forge. I do not know why. I've set the cost on Forge to zero so at least it won't waste media. Sorry.$(br2)I'll try to get it working eventually.", + + "hexcasting.iota.ephemera:potion": "Status Effect", + "hexcasting.iota.ephemera:hash": "Hash", + "ephemera.iota.hashlabel": "Hashed data: %s", + + "text.ephemera.clearHistoryResponse": "Cleared reveal history map.", + "text.ephemera.revealIntroduction": "Transmission from %s: ", + "text.ephemera.nosender": "unknown", + + "enchantment.ephemera.shame": "Curse of Shame", + + "death.attack.ephemera:acceleration": "%s was subjected to lethal acceleration." +} \ No newline at end of file diff --git a/projects/1.20-fabric/assets/ephemera/ephemera/packer-policy.json b/projects/1.20-fabric/assets/ephemera/ephemera/packer-policy.json new file mode 100644 index 000000000000..59e88043ef3a --- /dev/null +++ b/projects/1.20-fabric/assets/ephemera/ephemera/packer-policy.json @@ -0,0 +1,6 @@ +[ + { + "type": "indirect", + "source": "projects/1.20/assets/ephemera/ephemera" + } +] \ No newline at end of file diff --git a/projects/1.20-fabric/assets/oneironaut/oneironaut/README.md b/projects/1.20-fabric/assets/oneironaut/oneironaut/README.md new file mode 100644 index 000000000000..dc96bb82d960 --- /dev/null +++ b/projects/1.20-fabric/assets/oneironaut/oneironaut/README.md @@ -0,0 +1 @@ +[见主文档](/projects/1.20/assets/oneironaut/oneironaut) \ No newline at end of file diff --git a/projects/1.20-fabric/assets/oneironaut/oneironaut/lang/en_us.json b/projects/1.20-fabric/assets/oneironaut/oneironaut/lang/en_us.json new file mode 100644 index 000000000000..1186f51d8d50 --- /dev/null +++ b/projects/1.20-fabric/assets/oneironaut/oneironaut/lang/en_us.json @@ -0,0 +1,370 @@ +{ + "this.is.a.comment.1": "Pattern names--------------------------------------------------------------------------------------------", + "hexcasting.action.oneironaut:getdim1": "Spatial Reflection", + "hexcasting.action.oneironaut:getdim2": "Spatial Reflection II", + "hexcasting.action.oneironaut:getdim/overworld": "Homeland Reflection", + "hexcasting.action.oneironaut:getdim/nether": "Inferno Reflection", + "hexcasting.action.oneironaut:getdimheight": "Atlas' Decomposition", + "hexcasting.action.oneironaut:getdimscale": "Ratio Purification", + "hexcasting.action.oneironaut:dimteleport": "Noetic Gateway", + "hexcasting.action.oneironaut:infusemedia": "Media Infusion", + "hexcasting.action.oneironaut:swapspace": "Spatial Interchange", + "hexcasting.action.oneironaut:craftrod": "Conduct Rod", + "hexcasting.action.oneironaut:getrodlook": "Baton Reflection", + "hexcasting.action.oneironaut:getrodpos": "Baton Reflection II", + "hexcasting.action.oneironaut:getrodstamp": "Metronome Reflection", + "hexcasting.action.oneironaut:delayrod": "Metronome Gambit", + "hexcasting.action.oneironaut:haltrod": "Finale", + "hexcasting.action.oneironaut:resetrod": "Encore", + "hexcasting.action.oneironaut:readrodram": "Williams' Reflection", + "hexcasting.action.oneironaut:writerodram": "Williams' Gambit", + "hexcasting.action.oneironaut:readrodramremote": "Williams' Reflection II", + "hexcasting.action.oneironaut:writerodramremote": "Williams' Gambit II", + "hexcasting.action.oneironaut:queryrod": "Conductor's Reflection", + "hexcasting.action.oneironaut:rodloopactive": "Conductor's Reflection II", + "hexcasting.action.oneironaut:craftbottomlesstrinket": "Craft Bottomless Trinket", + "hexcasting.action.oneironaut:writeidea": "Inscribe Idea", + "hexcasting.action.oneironaut:readidea": "Retrieve Idea", + "hexcasting.action.oneironaut:readideatime": "Metadata Purification", + "hexcasting.action.oneironaut:readideawriter": "Metadata Distillation", + "hexcasting.action.oneironaut:readsentinel": "Scrutinize Sentinel", + "hexcasting.action.oneironaut:resistdetection": "Stealth Shroud", + "hexcasting.action.oneironaut:detectshroud": "Discern Shroud", + "hexcasting.action.oneironaut:circle": "Circle", + "hexcasting.action.oneironaut:applymindrender": "Empower Mind Render", + "hexcasting.action.oneironaut:reviveflayed": "Instill Psyche", + "hexcasting.action.oneironaut:advanceautomaton": "Cellular Generation", + "hexcasting.action.oneironaut:applynotmissing": "Uplifting Resonance", + "hexcasting.action.oneironaut:getsoulprint": "Soulprint Reflection", + "hexcasting.action.oneironaut:signitem": "Sign Item", + "hexcasting.action.oneironaut:checksignature": "Signature Purification", + "hexcasting.action.oneironaut:extradimensionaleval": "Heimdall's Gambit", + "hexcasting.action.oneironaut:shiftsentinel": "Shift Sentinel", + "hexcasting.action.oneironaut:erosionshield": "Stabilize Matter", + + "this.is.a.comment.2": "Block/Item names--------------------------------------------------------------------------------------------", + "item.oneironaut.pseudoamethyst_shard": "Pseudoamethyst Shard", + "item.oneironaut.shifting_pseudoamethyst": "Shifting Pseudoamethyst", + "item.oneironaut.thought_slurry_bucket": "Thought Slurry Bucket", + "item.oneironaut.reverberation_rod": "Reverberation Rod", + "item.oneironaut.endless_phial": "Inexhaustible Phial", + "item.oneironaut.bottomless_trinket": "Bottomless Trinket", + "item.oneironaut.echo_staff": "Echo Staff", + "item.oneironaut.beacon_staff": "Magitech Staff", + "item.oneironaut.spoon_staff": "Spoon", + "item.oneironaut.pigment_flame": "Flame Pigment", + "item.oneironaut.pigment_echo": "Echo Pigment", + "item.oneironaut.pigment_noosphere": "Noetic Pigment", + "item.oneironaut.pigment_frenzyflame": "Frenzy Pigment", + "item.oneironaut.memory_fragment": "Memory Fragment", + "item.oneironaut.memory_fragment.all": "It seems I've consumed all the memories that this crystal can offer me...", + "item.oneironaut.wisp_capture_device": "Wisp Wrangler", + "item.oneironaut.mind_scalpel": "Synaptic Scalpel", + "item.oneironaut.monkfruit": "Monkfruit", + "item.oneironaut.monkfruit_cooked": "Cooked Monkfruit", + "item.oneironaut.hexjam": "Hex Jam", + "item.oneironaut.rending_thorns": "Rending Thorns", + "item.oneironaut.library_card": "Akashic Library Card", + + "block.oneironaut.noosphere_gate": "Inscrutable Rift", + "block.oneironaut.pseudoamethyst_block": "Pseudoamethyst Block", + "block.oneironaut.pseudoamethyst_cluster": "Pseudoamethyst Cluster", + "block.oneironaut.pseudoamethyst_bud_small": "Small Pseudoamethyst Bud", + "block.oneironaut.pseudoamethyst_bud_medium": "Medium Pseudoamethyst Bud", + "block.oneironaut.pseudoamethyst_bud_large": "Large Pseudoamethyst Bud", + "block.oneironaut.thought_slurry": "Thought Slurry", + "block.oneironaut.thought_slurry_flowing": "Flowing Thought Slurry", + "block.oneironaut.noosphere_basalt": "Noosphere Basalt", + "block.oneironaut.wisp_lantern": "Wisp Lantern", + "block.oneironaut.wisp_lantern_tinted": "Tinted Wisp Lantern", + "block.oneironaut.super_budding": "Budding Pseudoamethyst", + "block.oneironaut.sentinel_sensor": "Sentinel Sensor", + "block.oneironaut.raycast_blocker": "Anti-Raycast Slate", + "block.oneironaut.raycast_blocker_glass": "Anti-Raycast Glass", + "block.oneironaut.sentinel_trap": "Seer Impetus", + "block.oneironaut.circle": "§0§oCircle", + "block.oneironaut.hex_resistant_block": "Hex-Warded Obsidian", + "block.oneironaut.media_ice": "Sagely Ice", + "block.oneironaut.media_ice_frosted": "Transient Sagely Ice", + "block.oneironaut.media_gel": "Plasmodial Psyche", + "block.oneironaut.cell": "Dissonant Psyche", + "block.oneironaut.wisp_battery": "Wisp Weaver", + "block.oneironaut.decorative_wisp_battery": "Lesser Wisp Weaver", + "block.oneironaut.hover_elevator": "Hexcaster's Hoverlift", + "block.oneironaut.hover_repeater": "Hoverlift Repeater", + "block.oneironaut.monkfruit_bush": "Monkfruit Bush", + "block.oneironaut.spacebomb": "Slipcharge", + "block.oneironaut.extradimensional_border": "Transdimensional Anchor", + "block.oneironaut.slipwaysuppressor": "Slipway Suppressor", + + "fluid.oneironaut.thought_slurry": "Thought Slurry", + + "this.is.a.comment.3": "Book entry titles--------------------------------------------------------------------------------------------", + "oneironaut.entry.dim_iotas": "Dimension Iotas", + "oneironaut.entry.status_iotas": "Status Iotas", + "oneironaut.entry.noosphere_main": "A Strange Realm", + "oneironaut.entry.noosphere_materials": "Thoughtful Materials", + "oneironaut.entry.wisp_lanterns": "Wisp Devices", + "oneironaut.entry.slipway_hint": "A Reflection on Slipways", + "oneironaut.entry.miscpatterns": "Misc. Oneironaut Patterns", + "oneironaut.entry.super_budding": "Better Media Farming", + "oneironaut.entry.idea_inscription": "Idea Inscription", + "oneironaut.entry.sentinel_detection": "Sentinel Detection", + "oneironaut.entry.detection_shielding": "Nondetection", + "oneironaut.entry.raycast_assailant": "Anti-Hex Blocks", + "oneironaut.entry.mindrender": "Mind Render", + "oneironaut.entry.soulprints": "Soulprints", + "oneironaut.entry.hover_elevator": "Hoverlifts", + "oneironaut.entry.flayrevival": "Artificial Minds", + "oneironaut.entry.heimdall": "Transdimensional Casting", + "oneironaut.entry.slipwaymanipulation": "Slipway Manipulation", + "oneironaut.entry.deep_noosphere_main": "A Hostile Realm", + + "this.is.a.comment.4": "Book pages--------------------------------------------------------------------------------------------", + "oneironaut.page.spaceswap.1": "Accepts two lists of two vectors, to define two cuboids, and a Spatial Imprint. These cuboids must have the exact same dimensions and rotation.", + "oneironaut.page.spaceswap.2": "I'm not quite sure what this one is supposed to do, it's always yelling at me about special dimensions. Perhaps it needs to use this special dimension as an intermediary?", + "oneironaut.page.spaceswap.3": "Exchanges the blocks within the first cuboid in your current dimension (which must be within ambit) for the blocks within the second cuboid in the dimension corresponding to the Spatial Imprint. $(l:https://www.desmos.com/calculator/ydbg8zhmyp)Cost (in amethyst dust) is logarithmic for the first 1001 blocks, after which it increases linearly$(/l).$(br)Will not exchange any unbreakable blocks.$(br)One or both of the endpoint dimensions must be the noosphere.", + "oneironaut.page.spaceswap.4": "One or both of the endpoint dimensions must be the noosphere.", + "hexcasting.spell.oneironaut:dimteleport.samedim": "The spell does not do anything, similar to if I told someone to go home, when they were already at home.", + "oneironaut.page.dim_iotas.1": "I've descovered a kind of iota which seems to represent a layer of reality itself. In lieu of better understanding, I've decided to call these Spatial Imprints.", + "oneironaut.page.dim_iotas.2": "Returns a Spatial Imprint representing the dimension I am currently in. Costs a negligible amount of media.", + "oneironaut.page.dim_iotas.3": "Returns a Spatial Imprint representing the dimension my sentinel is currently in. Costs one-tenth of an amethyst dust.", + "oneironaut.page.dim_iotas.4": "Returns a Spatial Imprint representing the overworld. Costs one-tenth of an amethyst dust.", + "oneironaut.page.dim_iotas.5": "Returns a Spatial Imprint representing the nether. Costs one-tenth of an amethyst dust.$(br)There seems to be some resistance when I cast this. Perhaps I'll be able to overcome it with $(#54398a)greater skill$()...", + "oneironaut.page.dim_iotas.6": "Accepts a Spatial Imprint, and returns the lowest and highest altitudes at which blocks can exist in the corresponding dimension.", + "oneironaut.page.dim_iotas.7": "Accepts a Spatial Imprint, and returns how many blocks you'd have to travel in the overworld to travel the equivalent of one block in the input dimension.", + "oneironaut.page.dimteleport.1": "Accepts an entity and a Spatial Imprint and teleports the entity to its position in the proper dimension. Generally costs 20 Charged Amethyst.$(br)Will fail if supplied a player other than myself.", + "oneironaut.page.dimteleport.2": "If I use this to return to a dimension that I previously left within the same instant, the cost drops to five amethyst dust, as the spell can take advantage of a lingering strand of media leading back to my original position. Otherwise, it will attempt to find a safe spot to deposit me, potentially conjuring a block to prevent me from falling to my doom.$(br2)Strangely, I feel an odd sense of acceleration when transporting myself this way, along some incomprehensible axis.", + "oneironaut.page.infusemedia.1": "Accepts a vector and infuses media into the corresponding block in order to transmute it. Cost and exact effect vary depending on target.", + "oneironaut.page.infusemedia.2": "Conceptually, this spell is quite similar to $(l:patterns/spells/blockworks#hexcasting:edify)Edify Sapling$(/l).$(br)However, the media that the target block receives is far more finely-tuned, and can thus achieve far more interesting results.", + "oneironaut.page.wisp_lanterns.1": "I've found that by using materials unique to the Noosphere, I can create a special jar capable of producing and containing a tiny wisp. While this wisp cannot cast anything, it emits quite a bit of light, and will mimic pigments shown to it.$(br)I can also craft a version with tinted glass, in case the wisp's light would disrupt my study's aesthetic.", + "oneironaut.page.wisp_lanterns.2": "Additionally, by feeding this illumination wisp significant amounts of media, I can cause it to undergo mitosis, with the newly-created wisp being seemingly-identical to the wandering wisps produced by slipways.$(br2)The device to split the wisp in this way can be fed media-bearing items via hoppers or similar, and is capable of storing 640 charged amethyst worth of media.", + "oneironaut.page.wisp_lanterns.3": "Simply apply a redstone signal to activate. Produces a wisp every four seconds, and consumes two charged amethyst to do so.$(br)The capacity and fill level of the phial used make no difference.", + "oneironaut.page.wisp_lanterns.4": "Alternatively, I can create a version which does not consume (or accept) any media, but produces wisps which yield only net-zero media when consumed.$(br2)All the sparkly shiny orbs, none of the prohibitive cost!", + "oneironaut.page.wisp_lanterns.5.originaltoolong": "Using similar principles, I've designed a device which can capture (and contain) wisps for their eventual release, though it does not work on wandering wisps due to their instability.$(br)Capturing one of my own wisps always consumes one amethyst shard worth of its (rechargable) 64-charged capacity, and capturing someone else's costs half again as much media as it contains. To capture a wisp, I must simply use the item on a wisp, and it will be sucked into the housing(assuming it has sufficient media and does not already contain a wisp).", + "oneironaut.page.wisp_lanterns.5": "Using similar principles, I've designed a device which captures, stores, and releases wisps, though it does not work on unstable wandering wisps. Capturing one of my own wisps consumes one amethyst shard from its battery. Capturing someone else's wisp costs half again the media it contains. To capture a wisp, I must simply use the device on it, assuming it has enough media and isn't already occupied.", + "oneironaut.page.wisp_lanterns.6": "When releasing a cyclic wisp, it is placed on the side of the block I use the item on. Projectile wisps are launched from my face, retaining their previous speed (but not direction). To discard a contained wisp, I need only use the item while crouching.", + "oneironaut.page.wisp_lanterns.7": "To initalize the device's media battery, I must use it on one of my own wisps, which will irretrievably consume it and set the battery's capacity to the wisp's stored media value, rounded up to the nearest dust. Should I wish to reset this (along with everything else about the device), I can simply place it in a crafting grid on its own.", + + "oneironaut.page.noosphere_materials.1": "A strange fluid which agitates media entering it, preventing crystal formation. Stimulates my mind in pleasing ways when I immerse myself in it.$(br2)I keep finding scraps of paper floating in it. Maybe if I looked hard enough, I could find something interesting.", + "oneironaut.page.noosphere_materials.2": "A rock which is primarily composed of media, somehow. Can be used to craft spell circle blocks.", + "oneironaut.page.noosphere_materials.3.title": "Pseudoamethyst", + "oneironaut.page.noosphere_materials.3": "A large crystal of media much like amethyst, but not quite the same. Produces a buzzing sensation under my fingers when I touch it, as if its media is stimulating the nerves. Breaking it without special care causes it to shatter into 1-4 pieces.", + "oneironaut.page.noosphere_materials.4": "The shards can be used to fuel spells, and yield slightly more energy than a normal amethyst shard. Can also be used to craft several interesting things.", + "oneironaut.page.noosphere_materials.5": "A solid form of media which is created when Thought Slurry freezes in a media-rich environment, or is caused to freeze by a hex.$(br)Its surface seems to have negative friction, causing anything sliding on it to accelerate indefinitely (albeit slowly).", + "oneironaut.page.noosphere_materials.6": "An extremely viscous mass of media, capable of very basic cognition, analagous to a slime mold. While it is normally quite lethargic, it uses a spell-like ability to attempt to ensnare anything that touches it.", + "oneironaut.page.slipway_hint.1": "The slipways, they must lead $(o)somewhere$(). Wisps do not simply manifest from nothing. No matter what I try, I cannot insert so much as a finger through that chaotic rift.$(br2)I'm going about this wrong. Perhaps rather than attempting to force my way through, I should be attempting to calm the storm.", + "oneironaut.page.slipway_hint.2": "A large amount of harmonious media may just do it...", + "oneironaut.page.slipway_hint.2.title": "Hmm...", + "oneironaut.page.noosphere_main.1": "I've made it.$(br)The realm beyond the slipways. The ambient media is overwhelming. My mind is screaming at me, telling me I shouldn't be here. But I must press on. This is the next step in the journey.", + "oneironaut.page.noosphere_main.2": "Every single thing I've examined here seems to be composed largely of media, similar to conjured matter, but orders of magnitude denser.$(br)$(o)Even the air is media. How am I breathing?$(br2)$(l)How can I even exist here?", + "oneironaut.page.rod.1": "I've discovered that I can craft a peculiar sort of casting item, using the strange shards found in ancient cities.$(br)This item is unusual in that it casts its imbued hex twenty times per second while I concentrate on it, until it either mishaps or I cast Finale or Encore. This initiates a cooldown period, usually about one second.", + "oneironaut.page.rod.2": "The echo shards seem to bear some bizarre form of media, with a tendency to loop back on itself while retaining a bit of the previous cast.", + "oneironaut.page.rod.3": "Acts just like $(l:patterns/spells/hexcasting)the spells used to program conventional casting items$(). Costs 10 Charged Amethyst.", + "oneironaut.page.rod.4": "When cast with a Reverberation Rod, returns my look vector from when I started the current cast loop.", + "oneironaut.page.rod.5": "When cast with a Reverberation Rod, returns my eye position from when I started the current cast loop.", + "oneironaut.page.rod.6": "When cast with a Reverberation Rod, returns the timestamp from when I started the current cast loop.", + "oneironaut.page.rod.7": "Accepts a positive integer. When cast with a Reverberation Rod, delays the current cast loop's next cast until that many twentieths of a second have passed.", + "oneironaut.page.rod.8": "When cast with a Reverberation Rod, forcibly halts the current cast loop.", + "oneironaut.page.rod.9": "Accepts a positive integer. Halts the current cast loop but also reduces the cooldown period from 1 second to ((1/20) * number) seconds. Cooldown due to mishap is unaffected.", + "oneironaut.page.rod.10": "Accepts a non-list iota, and stores it inside the current cast loop. It will be lost when the cast loop ends.", + "oneironaut.page.rod.11": "Returns the iota stored in the current cast loop. Defaults to NULL.", + "oneironaut.page.rod.12": "Returns a boolean corresponding to whether the current cast is making use of a rod.", + "oneironaut.page.rod.13": "As Williams' Gambit, but can be cast from non-rod sources while a rod is in use.", + "oneironaut.page.rod.14": "As Williams' Reflection, but can be cast from non-rod sources while a rod is in use.", + "oneironaut.page.rod.15": "Returns whether the caster is currently using a rod, regardless of the current cast is from that rod.", + "oneironaut.page.rod.16": "Echo shards can also be used in the construction of a staff, though it seems the only special property of such a staff is making sculk sounds.", + "oneironaut.page.miscpatterns.1": "I've found a couple patterns designed to interact with item frames. Nothing fancy, but they're nice utility for things like controlling my spell circles.$(br2)Additionally, it seems Sorter's Purification works on them just fine, so my attempts to find a dedicated frame-item pattern were pointless.", + "oneironaut.page.miscpatterns.2": "Accepts an item frame entity, and returns its rotation, from 0 to 7.", + "oneironaut.page.miscpatterns.3": "Accepts an item frame entity and an integer from 0 to 7, and sets its rotation to the number. Costs a negligible amount of media.", + "oneironaut.page.miscpatterns.4": "As $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l), but also accepts a list of entity type iotas. Any entity whose type is not present in the list will be ignored. Costs an amount of media slightly less negligible than that of the aforementioned pattern.", + "oneironaut.page.miscpatterns.5": "Returns a random number between 0 and 1, with a gaussian distribution.", + "oneironaut.page.miscpatterns.1.formerlink": "$(l:hexal:patterns/types#hexal:type/block_item)", + "oneironaut.page.super_budding.1": "I've found that the amethyst-like material native to the noosphere can be imbued with a villager's mind, much like normal amethyst. What's more, the block that results from this process produces significantly more media than normal Budding Amethyst, and it can be picked up and moved if one takes special care.", + "oneironaut.page.super_budding.2": "Pseudoamethyst requires a stronger mind than normal amethyst, but the cost is well worth it.", + "oneironaut.page.super_budding.3": "Additionally, when cultivated in the Noosphere, budding pseudoamethyst will produce pseudoamethyst clusters rather than conventional amethyst. These clusters will of course yield pseudoamethyst shards, as well as an unstable form of pseudoamethyst containing about four times as much media as the regular shards. Unfortunately, due to this instability, it cannot be directly converted into usable media. However, it can be converted into many other forms of media crystal by simply bringing the two items together.", + "oneironaut.page.super_budding.4": "It seems to react to my gaze, as if endowed with some form of perception.", + "oneironaut.page.super_budding.5": "The media generation rate of budding pseudoamethyst is such that even when immersed in thought slurry to inhibit crystal formation, it will still yield usable amounts of media. While the overall supply is nigh-endless, the amount accessible to any given action is quite small, like an inch-deep ocean a million miles across. However, due to this minimal depth, the media will dissipate rapidly before reaching my staff when accessed from afar, such as when recharging an item.", + "oneironaut.page.super_budding.6": "Constantly provides about a tenth of an amethyst dust worth of media. While I $(o)can$() hold several of these in order to gain access to more media, this results in rapidly-diminishing returns. $(br)I should be careful not to craft with the wrong phial.", + "oneironaut.page.super_budding.7": "I can also jam one into a trinket in order to replace its media supply with an inexhaustible phial, giving it access to the endless media within. However, it cannot use any media other than that provided by the phial.", + "oneironaut.page.super_budding.8": "Writes a hex to the bottomless trinket in my other hand. Costs ten charged amethyst.", + "oneironaut.page.idea_inscription.1": "As the noosphere is a realm of thought, it stands to reason that it could be used for information storage. These patterns do just that, inscribing an iota into the noosphere and reading it back (regardless of my current dimension). They can also store iotas inside the minds of other beings, assuming their thoughts are as... $(o)unfettered$() as my own. In the notation for these patterns, \"key\" refers to any vector or compatible entity.", + "oneironaut.page.idea_inscription.2": "While this is quite versatile, the noosphere's ambient media is constantly in motion, and as such any iota stored in it will eventually be lost, similar to if I poured hot water into the ocean. It seems to take about an hour before such information decays into unusable garbage.$(br2)It seems that $(l:greatwork/akashiclib)Akashic Libraries$(/l) work based on similar principles, where the shelves serve as insulation to prevent decay.", + "oneironaut.page.idea_inscription.3": "Accepts a valid key and any iota, and stores it in the corresponding location. Costs a quarter of an amethyst dust.", + "oneironaut.page.idea_inscription.4": "Accepts a valid key, and returns the corresponding iota. Costs one-eigth of an amethyst dust.", + "oneironaut.page.idea_inscription.5": "Accepts a valid key, and returns when the corresponding iota was inscribed, or -1. Costs no media.", + "oneironaut.page.idea_inscription.6": "Accepts a valid key and a player, and returns whether the corresponding iota was inscribed by that player. Costs no media.", + "oneironaut.page.sentinel_detection.1": "By combining the noosphere's pseudoamethyst with the organic sensory apparatus native to the deep dark, I've discovered a way to detect fluctuations in ambient media. This new form of sensor detects the presence of $(l:patterns/spells/sentinels)Sentinels$(/l) within approximately 16 meters, and outputs a redstone signal based on its proximity to the closest one. Comparators attached to it will output a signal if the sentinel in question is particularly powerful.", + "oneironaut.page.sentinel_detection.2": "$(o)I'm sure the warden won't mind.$()", + "oneironaut.page.sentinel_detection.3": "Additionally, this sensor can be incorporated into a Cleric Impetus, allowing it to activate when a sentinel is placed in the area (albeit with a lower range than the plain sensor). I've dubbed this contraption a Seer Impetus. Though it no longer responds to redstone, the circle's hex will start with a reference to the owner of the triggering sentinel on the stack.$(br)Due to the media interference produced by the cast, the impetus cannot detect sentinels it places itself.", + "oneironaut.page.sentinel_detection.4": "As the sensor does not care whose sentinel it sees, I should take care to avoid allowing my trap circles to target me.", + "oneironaut.page.sentinel_detection.5": "Accepts a vector and a player, and returns either the distance from the vector to the target player's sentinel or NULL. Costs a negligible amount of media.", + "oneironaut.page.sentinel_detection.6": "Conjures a fleeting sensor at the target coordinates, which \"listens\" to the patterns in the ambient media to seek out the telltale signature of a sentinel.", + "oneironaut.page.detection_shielding.1": "While conventional invisibility potions work just fine for fooling human senses, they are useless against hexes, so I've yet to find any method of making oneself completely undetectable. However, this spell I've discovered allows me to get closer to that goal, scattering media around a creature like chaff, in order to interfere with hex-based detection methods.", + "oneironaut.page.detection_shielding.2": "Accepts a living entity and a number ($(o)n$()), and shields the entity from hex-based detection for $(o)n$() seconds. Costs two amethyst dust per second.", + "oneironaut.page.detection_shielding.3": "Also drains media from the entity at a rate of 1/10 of a dust per second, as the shielding effect collects it to produce the chaff.$(br2)I should be careful with what I apply this to, as creatures with no loose media of their own will have their very minds fractured in order to provide this media.", + "oneironaut.page.detection_shielding.4": "While this is very effective at blocking effects such as $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l) and the various forms of $(l:patterns/entities#hexcasting:zone_entity/animal)Zone Distillation$(/l), it has no effect on $(l:patterns/entities#hexcasting:get_entity)Entity Purification$(/l) variants, as those already have a fairly precise idea of where you are. What's more, the chaff itself produces an energy signautre, which, while dim, is detectable by a specialized pattern.", + "oneironaut.page.detection_shielding.5": "Accepts a vector and a number, and returns a list of unit vectors pointing from the initial vector to shrouded entities within a radius defined by the number.", + "oneironaut.page.detection_shielding.6": "I've also discovered a spell which applies normal Invisibility. Functions just like the normal $(l:patterns/great_spells/zeniths)Zeniths$(/l), and costs one amethyst dust per three seconds.", + "oneironaut.page.raycast_assailant.1": "By \"threading\" pseudoamethyst through a block, I can create something which causes any raycast (including entity raycasts) that hits or passes through it to return null, as if it didn't hit anything.", + "oneironaut.page.raycast_assailant.3": "Strangely, combining pseudoamethyst with obsidian in the same way does not confer anti-raycast properties, instead making it nigh-indestructible to hexes. However, the resultant block loses much of its durability, being no stronger than common stone (though it retains its blast resistance).", + "oneironaut.page.mindrender.1": "I've read legends of a particularly macabre form of weapon known as a Mind Render. This weapon, sometimes used by ancient hexcasters, is capable of severing a creature's very thoughts, dealing damage that bypasses all known forms of protection. What's more, if this damage leaves the target just on the brink of true death, it will fall into a vegetative state, never to recover. I shudder to think of what the ancients may have used this property for...", + "oneironaut.page.mindrender.2": "Accepts an item or item frame bearing the Sharpness enchantment, and converts it into Mind Render of the same level. Cost is based on enchantment level, and increases by 50%% if the item is a book.", + "oneironaut.page.lore.treatise1.1": "While it is possible to produce most iotas on the fly, there are cases where one finds it impractical, or simply cannot (such as very large and precise numbers, or entity references), and as such must obtain the desired iota in another way. Reading it from a Focus or a similar item works just fine, but in many cases this would require a third hand, which I do not have. Other methods of fetching iotas from external locations have their own limitations as well.", + "oneironaut.page.lore.treatise1.2": "In cases where no external reference method would work well, one must insert the desired iota into the hex itself. This may seem counterintuive to some, what with the conventional wisdom being that a hex is a list of patterns, but one must remember that patterns are just another type of iota, which $(l:patterns/meta#hexcasting:eval)Hermes' Gambit$(/l) (and similar patterns) works particularly well with.", + "oneironaut.page.lore.treatise1.3": "While you can't just shove a number into the list and expect it to be pushed to the stack as if it was a $(l:patterns/numbers)Numerical Reflection$(/l) pattern, there are ways around this.$(br2)The simplest (and least reliable) is the $(l:patterns/patterns_as_iotas#hexcasting:escape)Consideration$(/l) pattern. Similar to its use when casting freehand, anything that comes immediately after it in a list will be escaped and pushed to the stack when it might otherwise be executed, preventing mishaps due to execution of non-patterns.", + "oneironaut.page.lore.treatise1.4": "However, when you're more than one exeuction deep in a hex (such as with nested conditional logic, or loops), the number of Considerations required to properly escape an iota increases exponentially, making it unreliable when used in anything that could conceivably be executed by another hex.", + "oneironaut.page.lore.treatise1.4.link": "relevant xkcd", + "oneironaut.page.lore.treatise1.5": "A far more reliable method of escaping iotas is to use $(l:patterns/patterns_as_iotas#hexcasting:open_paren)Introspection$(/l) and $(l:patterns/patterns_as_iotas#hexcasting:close_paren)Retrospection$(/l). When a pattern list is being evaluated and an Introspection is encountered, everything up to (but not including) its paired Retrospection is escaped and pushed to the stack in a list, regardless of iota type. You can then work with this list as you see fit, such as using $(l:patterns/lists#hexcasting:splat)Flock's Disintegration$(/l) to push all of its contents to the stack on their own.", + "oneironaut.page.lore.treatise1.6": "If the contents of your list looks like this:$(br2)Introspection$(br)Any iota(s)$(br)Retrospection$(br)Flock's Disintegration$(br2)the state of the stack after all that is executed will simply be all the iotas that were contained within Introspection and Retrospection.", + "oneironaut.page.lore.treatise2.1": "When one wishes to impart motion upon something, the standard method is to use $(l:patterns/spells/basic#hexcasting:add_motion)Impulse$(/l). However, this can get prohibitively expensive when one wishes to make something move extremely quickly, as the cost increases exponentially with the length of the vector. This can be mitigated by simply using a magnitude-1 Impulse many times over on a single target, turning the overall cost from n^2 to 2n-1, where n is the magnitude of the vector.", + "oneironaut.page.lore.treatise2.2": "The easiest way to accomplish this is with $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l), by giving it a list containing many instances of the same entity reference. There are other (and often better) methods, of course, but aside from simply drawing the patterns over and over, they generally fall under the broader topic of loops, which is outside the scope of this document.", + "oneironaut.page.lore.treatise3.1": "While $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l) is perfectly-suited for casting something on many targets at once, using to it cast something on one target many times can get awkward, and short of completely halting the hex, it is not possible to add or remove targets once Thoth has begun executing.$(br)To get around these limitations, one simply needs to use a different sort of loop.", + "oneironaut.page.lore.treatise3.2.header": "While Loop", + "oneironaut.page.lore.treatise3.2": "A While loop is a loop that continues executing until some condition is fulfilled, such as an entity's target velocity having been reached. The most common way to accomplish this is creating a pattern list which duplicates and executes the top iota on the stack, duplicating it, then executing it. On its own this simply produces an infinite loop which does nothing but mishap.", + "oneironaut.page.lore.treatise3.3": "However, by adding actual functionality and a bit of boolean logic, you can create a proper while loop. The code for the aforementioned infinite loop is as follows:$(br)Introspection$(br)Gemini Decomposition$(br)Hermes' Gambit$(br)Retrospection$(br)Gemini Decomposition$(br)Hermes' Gambit$(br2)By adding logic that changes whether the inner Hermes' Gambit gets evaluated based on a condition, you can make it stop once that condition is fulfilled.", + "oneironaut.page.lore.treatise3.4.header": "Loop Unrolling", + "oneironaut.page.lore.treatise3.4": "A more complex form of loop is an unrolled loop. Like Thoth's Gambit, it's created with a fixed number of iterations which can't easily be added to, but Charon's Gambit can be used to halt it early if need be. It also has the advantage that when done competently, it only ever produces one or two levels of recursion depth (not counting anything executed in the body of the loop). Loop unrolling is accomplished by creating a pattern list you want to repeat, duplicating it many times, and then combining all those lists into one.", + "oneironaut.page.lore.treatise3.5": "The simplest way to accomplish this is to use $(l:patterns/stackmanip#hexcasting:duplicate)Gemini Decomposition$(/l) and then $(l:patterns/lists#hexcasting:add)Combination Distillation$(/l), resulting in a doubled pattern list. This method can be repeated to achieve greater powers of 2, and only produces a single level of recursion depth, when the list is executed. A more flexible method is to use $(l:patterns/stackmanip#hexcasting:duplicate_n)Gemini Gambit$(/l) to produce $(o)n$() copies of the list, then gathering $(o)n-1$() instances of the pattern for Combination Distillation into one list and executing it, thus merging all the copies of your original list into one.", + "oneironaut.page.lore.treatise4.1": "Some of my, erm, \"colleagues\" have trouble transcribing long hexes.$(br)\"This is too long!\"$(br)\"The grid doesn't have enough space!\"$(br)$(bold)Skill issue$(), I say. It's not like a hex is immutable once you've drawn the last Retrospection. All you need to do is save the work-in-progress hex to a focus (though you should make sure to conserve enough grid space to actually do this).", + "oneironaut.page.lore.treatise4.2": "Then you just use the $(l:patterns/lists)list manipulation$(/l) patterns to combine it with the other parts once you're done.$(br2)You don't even need to use multiple foci, you can just append one part to the last one as you finish them, and then save that to one focus. The multiple-focus method makes it easier to debug your finished hex, but as far as I know that's its only benefit compared to the one-focus method.", + "oneironaut.page.lore.science1.1": "$(o)\"What is this and how do I get rid of it?\"$()$(br)A question asked by many people upon their first encounter with a slipway. I don't have a good answer for the second part of the question, but I believe I can provide a satisfactory response to the first.$(br)From what I can tell, a slipway is a tiny hole in space, the other side of which is the media realm known as the Noosphere.", + "oneironaut.page.lore.science1.2": "The wisp-like phenomena that emerge from it are formed when the vast ambient media of the Noosphere attempts to rush through the hole (much like gas leaking into a near-vacuum) and gets tangled in a manner similar to how wisp-summoning spells weave the media which they consume.", + "oneironaut.page.lore.science1.3": "Additionally, it seems that slipways have a sort of barrier over the entrance, preventing any matter from passing through. If this barrier could be pierced, and the hole expanded, the slipway would become capable of absorbing matter into the noosphere. It would also cease producing wisps, as the media coming through would do so far more slowly, and thus not be agitated and tangled. If one were to attempt this, they would have to be careful not to widen it too greatly, or they would risk the surrounding area being absorbed into the noosphere.", + + "not.real.translation.key.1": "TODO: Add a structure that is implied to be part of a laboratory that has been ripped from the overworld by an engorged gateway", + + "oneironaut.page.lore.science2.1": "What a strange place. The liquid that comprises the ocean here is not much denser than water, but small islands float in it despite being comprised of a rock similar in density to ordinary basalt. What's more, everything seems strangely ephemeral, like a dream. But how could this be a dream, when I am more lucid than I've ever been before?", + "oneironaut.page.lore.science2.2": "It seems this great lucidity is a product of the ambient media present here, lubricating my thoughts. These media levels even exceed those present at the cores of wisps, reducing their innate decay to infinitesimal levels. Interestingly, this has no effect on wisps which bear an imprint of someone else's soul, preventing me from using wisps as indefinite truename storage.$(br)This ambient media even leaks through sufficiently-large dimensional rifts, preserving wisps on the other side as long as they remain within a certain range of the rift.", + "oneironaut.page.lore.science3.1": "This crystal is quite fascinating. An object formed from pure media, orders of magnitude denser than conventional conjured blocks, or even the condensed media crystals that some of my colleagues at the library have been studying. It doesn't even contain the trace amounts of silicon dioxide found in amethyst of similar media density. And when I leave it unattended for a while, dust collects in fractalline patterns, as if the crystal bears a passive spell-like effect.", + "oneironaut.page.lore.science3.2": "Examining it more thoroughly under a microscope, it seems that these fractals extend beneath the surface of the crystal, and are constantly shifting in a consistent pattern. Could this be a time crystal?", + "oneironaut.page.glow_ambit.1": "Despite diligent research, the source of the special properties of other hexcasters' entity references has eluded me. However, I've discovered a way to bestow one such property upon other beings, at least temporarily (and flashily).$(br)This spell allows casters to affect creatures from great distances just like the infinite-range aspect of a player reference. However, one must still be close to the target in order to perform the initial application.", + "oneironaut.page.glow_ambit.2": "Accepts a living entity, and allows it to be accessed from anywhere for one minute. Has a base cost of one amethyst shard, plus one additional shard per application before allowing it to expire.", + "oneironaut.page.glow_ambit.3": "It seems that this effect functions by causing the target to emit some sort of psionic resonance, strong enough to cause its outline to be \"visible\" through all manner of barriers (perhaps hexcasters naturally produce this same resonance, but much subtler?). However, this glow is distinct from that induced by spectral arrows and similar, so don't bet on things to detect that working for this.", + "oneironaut.page.soulprints.1": "A soulprint is an iota similar to my player reference in that it represents me, but significantly more limited in use. It is impossible for anyone to obtain my soulprint without my involvement, though it is not subject to the same write-restrictions as ordinary player references.$(br2)Interestingly, soulprints are valid keys for $(l:patterns/idea_inscription)Idea Inscription$(/l).", + "oneironaut.page.soulprints.2": "Returns my soulprint, mishapping if cast using anything other than a staff. Costs a negligible amount of media.", + "oneironaut.page.soulprints.3": "Invisibly engraves my soulprint onto the item in my other hand, or erases it if it is already there. Costs 1 amethyst dust.$(br)I should be careful to seal any focuses or similar that I sign, as acquiring an unsealed signed focus may allow someone to impersonate me, and Erase Item gets rid of the signature.", + "oneironaut.page.soulprints.4": "Accepts a soulprint, and checks if the item in my other hand is engraved with it. Returns true if so, false otherwise. Costs a negligible amount of media.", + "oneironaut.page.hover_elevator.1": "By combining materials native to the noosphere with certain ingredients associated with levitation, I can create a device which produces streams of propulsive energy capable of carrying me along them, with minimal risk of falling. To use it, it must be placed facing directly towards another one (which must be facing it in turn). Once I've done this, both ends must be activated with a", + "oneironaut.page.hover_elevator.2": "redstone signal, and the energy stream will form between the paired emitters, assuming they are within range of each other (64 meters horizontally, or 128 vertically). By stepping into the stream, I will be held in place until I look towards either end of the stream, at which point I will be accelerated in that direction until I hit a maximum speed proportional to how closely my vision parallels the stream. Crouching causes the stream to hold me in place regardless of my gaze.", + "oneironaut.page.hover_elevator.3": "$(o)Best to don some long fall boots the first time I try these.", + "oneironaut.page.hover_elevator.meme":"$(o)Bad and naughty hexcasters get sent to the hover cube.", + "oneironaut.page.hover_elevator.4": "Additionally, I can create a repeater capable of extending the range of the emitters when placed between them, such that the stream can continue on as if it had just left the emitter. Of course, such an extension requires more powerful components, and even then the stream can only be extended by three repeaters before it becomes too unstable to form.", + "oneironaut.page.hover_elevator.5": "Fortunately, this device seems to be rather immaterial for some reason, and I can pass straight through it without having to carefully twist around it in the stream.$(br)$(o)No, it does not make the stream pause for a moment before continuing.", + "oneironaut.page.flayrevival.1": "I've long been frustrated with the uselessness of the empty husk you get after flaying a villager (or nearly killing something using $(l:items/mindrender)Mind Render$(/l)). While there $(o)are$() a few tasks for which they can conduct themselves adequately, these are largely things which even simple beasts would be suitable for. Fortunately, I've discovered a spell capable of bestowing some measure of cognition upon these husks.", + "oneironaut.page.flayrevival.2": "Accepts a flayed mob, and creates an artifical pseudo-mind to inhabit its body. Costs 16 charged amethyst when used on a villager or allay, or 10 amethyst shards for anything else.", + "oneironaut.page.flayrevival.3": "While these pseudo-minds are capable of moving their bodies around as if they were their original inhabitants, they are too simple to be called truly sapient, even with the rather loose definition of the term that must be used when applying it to villagers. As such, any villager \"restored\" in this manner loses any professional experience it had before, and cannot gain such experience ever again.", + "oneironaut.page.flayrevival.4": "They do, however, regain their ability to reproduce, with any children they produce being untainted by my craft.$(br2)I'm not sure why the restored villagers suddenly gain an affinity for green clothing, but at least it serves as a good indicator of which villagers will be of little further use.", + "oneironaut.page.monkfruit.1": "I've discovered that using the $(l:patterns/spells/blockworks#hexcasting:edify)Edify Sapling$(/l) spell on a Sweet Berry Bush produces a rather interesting plant. It is much like the shrub it mutates from, however its thorns are imbued with a media field which siphons the minds of pricked creatures into the plant in order to grow. It can grow without this (albeit slowly), though it still requires minds nearby to provide small amounts of media.", + "oneironaut.page.monkfruit.2": "The fruit that this bush produces is quite sweet, and can be processed into sugar. Additionally, it releases bits of media during digestion, which seek out rechargeable items on my person. I should be wary of the thorns while picking the fruit.", + "oneironaut.page.monkfruit.3": "Twigs sheared off of the mature bush remain dangerous, and can be used to craft a rather ominous blade.$(br2)This blade acts much like a sword enchanted with low-level $(l:items/mindrender)Mind Render$(/l), though it is far more precise, able to rend minds while causing minimal collateral damage to the flesh. I can of course use it more like a conventional blade if I like, but this does risk killing the target outright.", + "oneironaut.page.monkfruit.4": "$(o)It's not rocket science.$()", + "oneironaut.page.library_card.1": "In my search for a truly universal data storage method, I have designed a small device which allows me to read from Akashic Records in other dimensions while on my person. I need only write a spatial imprint to the item, and any future akashic read operations will be redirected to the stored dimension.$(br)Unfortunately, it does not allow me to $(o)write to$() them, but this is certainly better than nothing.", + "oneironaut.page.library_card.2": "$(o)It seems to exude some kind of sticky gloop.$()", + "oneironaut.page.heimdall.1": "A strange pattern that appears to be a variant of Hermes' Gambit. Accepts a spatial imprint and an executable iota, and attempts to cast the iota in the corresponding dimension.", + "oneironaut.page.heimdall.2": "While it does allow me to cast across dimensions, it is not the perfect solution that I have been searching for. For one thing, it does not work when cast via more esoteric methods, such as wisps. Additionally, media-consuming patterns cast in this way have their cost increased by 25%%. Finally, since I am not physically present in the target dimension, I need to use my Greater Sentinel (or other ambit-boosting effects) in order to affect anything in there.", + "oneironaut.page.heimdall.3": "While I can simply rely on my sentinel when using it in a spell circle, I have also devised an apparatus that allows a portion of the circle's ambit to extend into the target dimension.", + "oneironaut.page.heimdall.4": "In order to use them, I must place them at all eight corners of a cuboid, and direct the circle's media wave over them. This cuboid defines the circle's ambit in the target dimension, scaled accordingly. Will not function if their positions do not form a perfect cuboid, or if there are not exactly eight of them. In order to use them again, I must direct the media wave over them all again.", + "oneironaut.page.heimdall.5": "Accepts a spatial imprint, and moves my sentinel to its scaled coordinates in the corresponding dimension. Costs one amethyst shard. Mishaps if I do not currently have a sentinel.", + "oneironaut.page.slipwaymanipulation.1": "While slipways are common enough that I do not lack for wisp fuel, they are usually not in places where I feel compelled to settle, and they almost never appear in close proximity to each other. To this end, I have devised a sort of explosive charge capable of piercing spacetime itself, creating a brand-new slipway (or a stable portal, if used in the noosphere).$(br)The explosion is relatively small in this dimension, but it releases a dangerous amount of raw media, capable of piercing through practically any defense not specifically warded against hexes.", + "oneironaut.page.slipwaymanipulation.2": "The charge's physical structure directs the explosion along the hyperdimensional axis necessary to pierce spacetime, but I must still provide the vast amount of energy required. Approximately 200,000 Amethyst Dust worth of media, applied via Media Infusion, should do it. Perhaps I should draw on an existing slipway for this.", + "oneironaut.page.slipwaymanipulation.3": "In case I ever need to deactivate a slipway without removing it altogether, I have created a device that captures and neutralizes the overwhelming majority of media coming through it, preventing the formation of wandering wisps (as well as significantly reducing the visual effects associated with the slipway).", + "oneironaut.page.slipwaymanipulation.4": "To use it, I must simply place it directly under a slipway and apply a redstone signal.", + + "oneironaut.page.deep_noosphere_main.1": "The noosphere is an inhospitable waste, but this place is actively dangerous. The fluid pressure is one thing, but the media is so energetic that it eats straight through most matter, and causes minds to fray like poorly-woven cloth.$(br2)If I am to survive here, I will require novel methods.", + "oneironaut.page.deep_noosphere_main.2": "While this place is extremely dangerous, it does have some useful properties. For one thing, distance is scaled by a factor of sixteen, so traversing one meter in here is equal to sixteen in most other realms.", + + "this.is.a.comment.5": "Advancements--------------------------------------------------------------------------------------------", + "oneironaut.advancements.noosphere.enter": "A Realm of Thought and Dream", + "oneironaut.advancements.noosphere.enter.description": "Enter the Noosphere", + "oneironaut.advancements.noosphere.find_tower": "A Timeless Classic", + "oneironaut.advancements.noosphere.find_tower.description": "Discover the tower of an unknown hexcaster", + "oneironaut.advancements.noosphere.find_media_lab": "Crystallized", + "oneironaut.advancements.noosphere.find_media_lab.description": "Discover a grim experiment", + "oneironaut.advancements.noosphere.find_garden": "Stranded", + "oneironaut.advancements.noosphere.find_garden.description": "Discover an unfortunate soul's last reminder of home", + "oneironaut.advancements.lore.root": "Oneironaut Lore", + "oneironaut.advancements.lore.root.description": "Memories lost to time", + "oneironaut.advancements.lore.treatise1": "Hexcaster's Memory #1", + "oneironaut.advancements.lore.treatise1.description": "Reflections on iota embedding", + "oneironaut.advancements.lore.treatise2": "Hexcaster's Memory #2", + "oneironaut.advancements.lore.treatise2.description": "Reflections on efficient use of Impulse", + "oneironaut.advancements.lore.treatise3": "Hexcaster's Memory #3", + "oneironaut.advancements.lore.treatise3.description": "Reflections on repeated patterns", + "oneironaut.advancements.lore.treatise4": "Hexcaster's Memory #4", + "oneironaut.advancements.lore.treatise4.description": "Reflections on long hexes", + "oneironaut.advancements.lore.science1": "Scientist's Memory #1", + "oneironaut.advancements.lore.science1.description": "Research into the nature of slipways", + "oneironaut.advancements.lore.science2": "Scientist's Memory #2", + "oneironaut.advancements.lore.science2.description": "Research into the properties of the Noosphere", + "oneironaut.advancements.lore.science3": "Scientist's Memory #3", + "oneironaut.advancements.lore.science3.description": "Research into the structure of pseudoamethyst", + "oneironaut.advancements.unflay": "Recycling!", + "oneironaut.advancements.unflay.description": "Surely you weren't going to just throw that away!", + "oneironaut.advancements.ouchie": "Ouch!", + "oneironaut.advancements.ouchie.description": "What did you expect?", + + "this.is.a.comment.6": "Mishaps--------------------------------------------------------------------------------------------", + "hexcasting.mishap.oneironaut:badcuboid.mismatch": "Supplied cuboids are dissimilar.", + "hexcasting.mishap.oneironaut:badcuboid.toobig": "Supplied cuboids are too big.", + "hexcasting.mishap.oneironaut:badcuboid.overlap": "Supplied cuboids overlap in the same dimension.", + "hexcasting.mishap.oneironaut:uninfusable": "Expected an infusable block at %s, but got %s.", + "hexcasting.mishap.oneironaut:nonoosphere": "Expected one end of the transfer to be a special dimension.", + "hexcasting.mishap.oneironaut:norod": "Expected to be cast from a Reverberation Rod.", + "hexcasting.mishap.oneironaut:norodremote": "Expected an active Reverberation Rod in hand.", + "hexcasting.mishap.oneironaut:missingenchant": "Expected %s to be enchanted with %s, but it is not.", + "hexcasting.mishap.oneironaut:unhappyslime": "The slime says \"%s\"", + "hexcasting.mishap.oneironaut:norequirediota": "The slime demands %s", + "hexcasting.mishap.oneironaut:requiresdifferententities": "an entity different from the target", + "hexcasting.mishap.oneironaut:nostaff": "%s expected to be cast using a staff.", + "hexcasting.mishap.oneironaut:nosentinel": "Could not find a sentinel to move.", + "oneironaut.mishap.noitemframe": "an item frame", + "oneironaut.mishap.invalidideakey": "a vector, player, or soulprint", + "oneironaut.mishap.unenlightenedtarget": "an enlightened player", + "oneironaut.mishap.notbrainswept": "a flayed villager", + "oneironaut.mishap.badentitykey": "an enlightened player or a flayed villager", + "oneironaut.mishap.nolistsallowed": "a non-list iota", + "oneironaut.mishap.entitytypelistplease": "a list of entity types", + "oneironaut.mishap.wrongsizelist": "List is improperly sized.", + "oneironaut.mishap.twovectorsplease": "List does not contain two vectors.", + "oneironaut.mishap.requiresflayedmob": "a flayed mob", + "hexcasting.mishap.invalid_value.class.oneironaut:imprint": "a spatial imprint", + "hexcasting.mishap.invalid_value.class.oneironaut:soulprint": "a soulprint", + + "this.is.a.comment.7": "Other---------------------------------------------------------------------------------------------", + "hexcasting.iota.oneironaut:dim": "Dimension", + "hexcasting.iota.oneironaut:uuid": "Soulprint", + "hexcasting.iota.oneironaut:uuid.label": "Soulprint of %s", + "biome.oneironaut.noosphere_sea": "Noosphere Sea", + "biome.oneironaut.deep_noosphere": "§5§kI should not be here.§r", + "text.oneironaut.clearIdeasResponse": "Cleared iota storage map.", + "effect.oneironaut.detection_resistance": "Media Shroud", + "effect.oneironaut.not_missing": "Uplifting Resonance", + "effect.oneironaut.rumination": "Rumination", + "effect.oneironaut.disintegration": "Subsumption", + "effect.oneironaut.disintegration_protection": "Obstinance", + "enchantment.oneironaut.overcast_damage": "Mind Render", + "itemGroup.oneironaut.oneironaut": "Oneironaut", + "oneironaut.tooltip.wispcapturedevice.haswisp": "Contains a wisp with %s dust and hex signature %s.", + "oneironaut.tooltip.wispcapturedevice.nowisp": "No wisp.", + "oneironaut.tooltip.wispcapturedevice.uninitialized": "Media reservoir has not been initialized.", + "text.oneironaut.lorem_ipsum": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + "oneironaut.tooltip.lich_media_amount": "Reservoir contains: %s/%s (%s)", + + "oneironaut.conceptmodifier.falsy": "Player Reference Modifier: Falsy", + "oneironaut.conceptmodifier.ref_comparison": "Player Reference Modifier: Comparison", + "oneironaut.conceptmodifier.gtp_splat": "GTP Drop Reduction", + "oneironaut.conceptmodifier.antierosion": "Erosion Protection", + "oneironaut.conceptmodifier.nobloodcast": "Bloodcast Protection", + "oneironaut.conceptmodifier.keepinv": "KeepInventory", + "oneironaut.conceptmodifier.totem": "Undying", + "oneironaut.conceptmodifier.attribute": "Attribute Modifier", + + "oneironaut.conceptmodifier.attribute.overlay.positive": "Increases %s by %s%%", + "oneironaut.conceptmodifier.attribute.overlay.negative": "Reduces %s by %s%%", + + "oneironaut.conceptmodifier.nocore": "No concept core detected. Modifier will be nonfunctional until broken and replaced on a core.", + "oneironaut.conceptmodifier.nomodifier": "Concept modifier could not be initialized.", + "oneironaut.conceptmodifier.lens.potency": "Potency: %s", + "oneironaut.conceptmodifier.lens.comparison": "Compares as: %s" +} diff --git a/projects/1.20-fabric/assets/oneironaut/oneironaut/packer-policy.json b/projects/1.20-fabric/assets/oneironaut/oneironaut/packer-policy.json new file mode 100644 index 000000000000..8108a20a6cca --- /dev/null +++ b/projects/1.20-fabric/assets/oneironaut/oneironaut/packer-policy.json @@ -0,0 +1,6 @@ +[ + { + "type": "indirect", + "source": "projects/1.20/assets/oneironaut/oneironaut" + } +] \ No newline at end of file diff --git a/projects/1.20/assets/1UNKNOWN/hexpsi/lang/en_us.json b/projects/1.20/assets/1UNKNOWN/hexpsi/lang/en_us.json new file mode 100644 index 000000000000..f4994fa02995 --- /dev/null +++ b/projects/1.20/assets/1UNKNOWN/hexpsi/lang/en_us.json @@ -0,0 +1,80 @@ +{ + "hexpsi.spellpiece.selector_sentinel_pos": "Selector: Sentinel Position", + "hexpsi.spellpiece.selector_sentinel_pos.desc": "Returns your sentinel's position.", + "hexpsi.spellpiece.selector_sentinel_tier": "Selector: Sentinel Tier", + "hexpsi.spellpiece.selector_sentinel_tier.desc": "Returns your sentinel's tier, with a nonexistent or inaccessible sentinel returning 0.", + + "hexpsi.spellpiece.selector_helmet_vec": "Selector: Helmet Vector", + "hexpsi.spellpiece.selector_helmet_vec.desc": "Attempts to read the vector stored in your helmet sensor.", + + "hexpsi.spellpiece.selector_read_vec": "Selector: Held Vector", + "hexpsi.spellpiece.selector_read_vec.desc": "Attempts to read a vector from held iota storage.", + "hexpsi.spellpiece.selector_read_num": "Selector: Held Number", + "hexpsi.spellpiece.selector_read_num.desc": "Attempts to read a number from held iota storage.", + "hexpsi.spellpiece.selector_read_entity": "Selector: Held Entity", + "hexpsi.spellpiece.selector_read_entity.desc": "Attempts to read an entity from held iota storage.", + "hexpsi.spellpiece.selector_read_entities": "Selector: Held Entities", + "hexpsi.spellpiece.selector_read_entities.desc": "Attempts to read a list of entities from held iota storage.", + + "hexpsi.spellpiece.trick_write_helmet_vec": "Trick: Write Helmet Vector", + "hexpsi.spellpiece.trick_write_helmet_vec.desc": "Attempts to write a vector to your helmet sensor. Does not trigger the sensor.", + + "hexpsi.spellpiece.trick_set_sentinel": "Trick: Set Sentinel", + "hexpsi.spellpiece.trick_set_sentinel.desc": "Summons your sentinel at the target position.", + "hexpsi.spellpiece.trick_write_iota_vec": "Trick: Write Vector", + "hexpsi.spellpiece.trick_write_iota_vec.desc": "Attempts to write a vector to held iota storage.", + "hexpsi.spellpiece.trick_write_iota_num": "Trick: Write Number", + "hexpsi.spellpiece.trick_write_iota_num.desc": "Attempts to write a number to held iota storage.", + "hexpsi.spellpiece.trick_write_iota_entity": "Trick: Write Entity", + "hexpsi.spellpiece.trick_write_iota_entity.desc": "Attempts to write an entity to held iota storage.", + "hexpsi.spellpiece.trick_write_iota_entities": "Trick: Write Entity List", + "hexpsi.spellpiece.trick_write_iota_entities.desc": "Attempts to write a list of entities to held iota storage.", + + "hexpsi.spellpiece.fx_suppressor": "Hex Effect Suppressor", + "hexpsi.spellpiece.fx_suppressor.desc": "Disables basic sounds/particles from a hex cast via Trinket Bullet.", + "hexpsi.spellpiece.media_suppressor": "Media Report Suppressor", + "hexpsi.spellpiece.media_suppressor.desc": "Disables the media report after a hex cast via Trinket Bullet.", + + "psi.spellparam.hexpsi:sentineltier": "Tier", + "psi.spellparam.hexpsi:vec": "Vector", + "psi.spellparam.hexpsi:num": "Number", + "psi.spellparam.hexpsi:entity": "Entity", + "psi.spellparam.hexpsi:entities": "List of Entities", + + "hexpsi.spellerror.truename": "ERROR: Attempted to save reference to another player.", + "hexpsi.spellerror.enlightenment": "ERROR: Am I not skilled enough?", + "hexpsi.spellerror.writeable": "ERROR: No writeable item found.", + "hexpsi.spellerror.readable": "ERROR: No readable item found.", + "hexpsi.spellerror.unreadablecontents": "ERROR: Readable item does not contain readable data.", + "hexpsi.spellerror.badtier": "ERROR: Sentinel tier must be an integer between [0,2].", + + "hexpsi.helmetrequires": "Helmet sensor requires ", + "hexpsi.helmetrequires.vector": "a vector.", + "hexpsi.badhelmet.readable": "Helmet does not contain a readable iota.", + + "hexcasting.action.hexpsi:craft_trinket_bullet": "Craft Trinket Bullet", + + "item.hexpsi.exosuit_vector_focus_sensor": "Exosuit Sensor: Vector Write", + "item.hexpsi.psi_core_staff": "Psion's Staff", + "item.hexpsi.spell_bullet_trinket": "Trinket Spell Bullet", + "item.hexpsi.spell_bullet_trinket_active": "Programmed Trinket Spell Bullet", + + "this.is.a.comment.1": "Lore-wise, I think the trinket parts of the bullet act kind of like a coprocessor that the CAD dispatches instructions to.", + + "hexpsi.tooltip.bullet_media": "%s: %s/%s (%s)", + "hexpsi.tooltip.bullet_name_default": "Spell", + + "hexpsi.event.write_helmet_vector": "§bEvent§7: Write Vector Iota", + + "hexpsi.category.psionics": "Enlightened Psionics", + "hexpsi.category.psionics.desc": "I've stumbled across a rather unorthodox method of casting.", + + "hexpsi.entry.introduction": "Introduction", + + "hexpsi.page.introduction.1": "While I have learned of a great many ways to interact with media through my studies, until now I had never heard of one which entirely eschews the use of amethyst. It seems that this form of the art relies on a gadget called a Casting Assistant Device (or CAD for short), which is somehow able to produce powerful effects while only drawing on the waste media generated by the user's thoughts.", + "hexpsi.page.introduction.2": "Unfortunately, it is not possible to adapt this innovation to more conventional casting methods, or to execute free-form hexes directly from a CAD. However, I have designed a few systems to allow me to call upon one method's devices from the other's.", + "hexpsi.page.trinketbullet.1": "For when I need my CAD to be able to trigger a hex, I have created a spell bullet with an integrated trinket. When the CAD executes the bullet's spell without erroring or dying, the trinket will execute its hex.$(br)While this is a good solution to the problem of triggering hexes when casting manually, the trinket goes on cooldown for one second when used from an exosuit socket.", + "hexpsi.page.trinketbullet.2": "I should take care to not accidentally use more important trinkets when crafting this.", + "hexpsi.page.trinketbullet.3": "Accepts raw amethyst items in entity form and a list of patterns, and engraves the patterns into the trinket bullet in my other hand. Costs five Charged Amethyst worth of media.", + "hexpsi.page.trinketbullet.4": "When the bullet is inserted into a psimetal tool, or an exosuit chestplate, the bullet's hex will start with a relevant iota on the stack. This iota will be the block you broke with the pickaxe/axe/shovel, the entity you attacked with the sword, or the entity hitting the chestplate." +} \ No newline at end of file diff --git a/projects/1.20/assets/1UNKNOWN/hexpsi/lang/zh_cn.json b/projects/1.20/assets/1UNKNOWN/hexpsi/lang/zh_cn.json new file mode 100644 index 000000000000..ca0024253a00 --- /dev/null +++ b/projects/1.20/assets/1UNKNOWN/hexpsi/lang/zh_cn.json @@ -0,0 +1,80 @@ +{ + "hexpsi.spellpiece.selector_sentinel_pos": "选择符:哨卫位置", + "hexpsi.spellpiece.selector_sentinel_pos.desc": "返回哨卫的位置", + "hexpsi.spellpiece.selector_sentinel_tier": "选择符:哨卫等级", + "hexpsi.spellpiece.selector_sentinel_tier.desc": "返回哨卫的等级;如果没有哨卫或无法访问哨卫,则返回0", + + "hexpsi.spellpiece.selector_helmet_vec": "选择符:头盔矢量", + "hexpsi.spellpiece.selector_helmet_vec.desc": "试图从头盔传感器中读取一个矢量", + + "hexpsi.spellpiece.selector_read_vec": "选择符:手持矢量", + "hexpsi.spellpiece.selector_read_vec.desc": "试图从手持的iota存储空间中读取一个矢量", + "hexpsi.spellpiece.selector_read_num": "选择符:手持数值", + "hexpsi.spellpiece.selector_read_num.desc": "试图从手持的iota存储空间中读取一个数值", + "hexpsi.spellpiece.selector_read_entity": "选择符:手持实体", + "hexpsi.spellpiece.selector_read_entity.desc": "试图从手持的iota存储空间中读取一个实体", + "hexpsi.spellpiece.selector_read_entities": "选择符:手持实体列表", + "hexpsi.spellpiece.selector_read_entities.desc": "试图从手持的iota存储空间中读取一个实体列表", + + "hexpsi.spellpiece.trick_write_helmet_vec": "启动式:写入头盔矢量", + "hexpsi.spellpiece.trick_write_helmet_vec.desc": "试图向头盔传感器写入一个向量;不会触发传感器", + + "hexpsi.spellpiece.trick_set_sentinel": "启动符:设置哨卫", + "hexpsi.spellpiece.trick_set_sentinel.desc": "在指定位置召唤哨卫", + "hexpsi.spellpiece.trick_write_iota_vec": "启动符:写出矢量", + "hexpsi.spellpiece.trick_write_iota_vec.desc": "试图向手持的iota存储空间写出一个矢量", + "hexpsi.spellpiece.trick_write_iota_num": "启动符:写出数值", + "hexpsi.spellpiece.trick_write_iota_num.desc": "试图向手持的iota存储空间写出一个数值", + "hexpsi.spellpiece.trick_write_iota_entity": "启动符:写出实体", + "hexpsi.spellpiece.trick_write_iota_entity.desc": "试图向手持的iota存储空间写出一个实体", + "hexpsi.spellpiece.trick_write_iota_entities": "启动符:写出实体列表", + "hexpsi.spellpiece.trick_write_iota_entities.desc": "试图向手持的iota存储空间写出一个实体列表", + + "hexpsi.spellpiece.fx_suppressor": "咒术效果消除符", + "hexpsi.spellpiece.fx_suppressor.desc": "禁用缀品型术式子弹施放咒术的基础声音和粒子", + "hexpsi.spellpiece.media_suppressor": "媒质报告消除符", + "hexpsi.spellpiece.media_suppressor.desc": "禁用缀品子弹施放咒术后的媒质报告", + + "psi.spellparam.hexpsi:sentineltier": "等级", + "psi.spellparam.hexpsi:vec": "矢量", + "psi.spellparam.hexpsi:num": "数值", + "psi.spellparam.hexpsi:entity": "实体", + "psi.spellparam.hexpsi:entities": "实体列表", + + "hexpsi.spellerror.truename": "错误:试图存储对其他玩家的引用。", + "hexpsi.spellerror.enlightenment": "错误:也许我还做得不够?", + "hexpsi.spellerror.writeable": "错误:未找到可写出的物品。", + "hexpsi.spellerror.readable": "错误:未找到可读取的物品。", + "hexpsi.spellerror.unreadablecontents": "错误:可读物品中无可读取的数据。", + "hexpsi.spellerror.badtier": "错误:哨卫等级必须为[0,2]中的整数。", + + "hexpsi.helmetrequires": "头盔传感器需要", + "hexpsi.helmetrequires.vector": "一个矢量。", + "hexpsi.badhelmet.readable": "头盔内无可读取的iota。", + + "hexcasting.action.hexpsi:craft_trinket_bullet": "制作缀品型术式子弹", + + "item.hexpsi.exosuit_vector_focus_sensor": "装甲传感器:写入矢量", + "item.hexpsi.psi_core_staff": "Psi子法杖", + "item.hexpsi.spell_bullet_trinket": "缀品型术式子弹", + "item.hexpsi.spell_bullet_trinket_active": "已编程的缀品型术式子弹", + + "this.is.a.comment.1": "Lore-wise, I think the trinket parts of the bullet act kind of like a coprocessor that the CAD dispatches instructions to.", + + "hexpsi.tooltip.bullet_media": "%s:%s/%s(%s)", + "hexpsi.tooltip.bullet_name_default": "法术", + + "hexpsi.event.write_helmet_vector": "§b事件§7:写入向量iota", + + "hexpsi.category.psionics": "Enlightened Psionics", + "hexpsi.category.psionics.desc": "我遇到了一种不太传统的施法方法。", + + "hexpsi.entry.introduction": "介绍", + + "hexpsi.page.introduction.1": "我已通过研究学到了许多种与媒质交互的方法,但从来也没有哪一种能完全绕开紫水晶。直到现在。这种技艺流派似乎依赖于一种叫“术式辅助演算机”(简称“CAD”)的装置。这种装置能产生强大的效果,却只需消耗使用者思维产生的无用媒质;具体的原理仍未解明。", + "hexpsi.page.introduction.2": "可惜的是,这种创新不适配传统的施法方法,我也无法让 CAD 支持任意结构的咒术。不过,我设计了几套系统,可以让两者的施法装置互相呼叫。", + "hexpsi.page.trinketbullet.1": "为让 CAD 施放咒术,我制造了一种术式子弹,其中集成了一枚缀品。CAD 执行子弹术式时如未出现错误且未致我死亡,这枚缀品即会运行咒术。$(br)这种做法确实很适合手动施法,但自动施法就不太行了:缀品在 Psi 金属装甲内触发后会进入 1 秒冷却。", + "hexpsi.page.trinketbullet.2": "制作这件物品时千万小心,不要把重要的缀品用进去了。", + "hexpsi.page.trinketbullet.3": "接受天然紫水晶物品实体和一个图案列表,然后将图案列表刻到另一只手持有的缀品型术式子弹上。消耗相当于 5 个充能紫水晶的媒质。", + "hexpsi.page.trinketbullet.4": "子弹被插入 Psi 金属工具和装甲时,其咒术栈会以与之相关的 iota 起始。在镐、斧、锹中时,以所破坏的方块起始;在剑中时,以所攻击的实体起始;在胸甲中时,以击中你的实体起始。" +} \ No newline at end of file diff --git a/projects/1.20/assets/ephemera/ephemera/README.md b/projects/1.20/assets/ephemera/ephemera/README.md new file mode 100644 index 000000000000..d32436a5b2d5 --- /dev/null +++ b/projects/1.20/assets/ephemera/ephemera/README.md @@ -0,0 +1,19 @@ +### 总概 + +```mermaid +flowchart LR + 1.20.1 -->|indirect| 1.20.1-fabric + 1.19.2 +``` + +``` +1.20.1 + └── 1.20.1-fabric +1.19.2 +``` + +### 链接区域 + +- [1.19.2](/projects/1.19/assets/ephemera/ephemera) +- [1.20.1](/projects/1.20/assets/ephemera/ephemera) +- [1.20.1-fabric](/projects/1.20-fabric/assets/ephemera/ephemera) \ No newline at end of file diff --git a/projects/1.20/assets/ephemera/ephemera/lang/en_us.json b/projects/1.20/assets/ephemera/ephemera/lang/en_us.json new file mode 100644 index 000000000000..8fbdf3c934eb --- /dev/null +++ b/projects/1.20/assets/ephemera/ephemera/lang/en_us.json @@ -0,0 +1,189 @@ +{ + "itemGroup.ephemera.ephemera": "Ephemera", + + "item.ephemera.media_helmet": "Hexformed Helmet", + "item.ephemera.media_chestplate": "Hexformed Chestplate", + "item.ephemera.media_leggings": "Hexformed Leggings", + "item.ephemera.media_boots": "Hexformed Boots", + + "block.ephemera.relay_tp_detector": "Network Gateway Probe", + "block.ephemera.relay_index": "Network Routing Index", + "block.ephemera.fakeslate": "Inert Slate", + + "hexcasting.action.ephemera:magearmor": "Instant Aegis", + "hexcasting.action.book.ephemera:magearmor": "Instant Aegis", + "hexcasting.action.ephemera:networkscan": "Network Distillation", + "hexcasting.action.book.ephemera:networkscan": "Network Dstln.", + "hexcasting.action.ephemera:networktp": "Network Gateway", + "hexcasting.action.book.ephemera:networktp": "Network Gateway", + "hexcasting.action.ephemera:networkindex": "Routing Distillation", + "hexcasting.action.book.ephemera:networkindex": "Routing Dstln.", + "hexcasting.action.ephemera:readframerotation": "Decorator's Purification", + "hexcasting.action.book.ephemera:readframerotation": "Decorator's Prfn.", + "hexcasting.action.ephemera:setframerotation": "Decorator's Gambit", + "hexcasting.action.ephemera:paintconjured": "Externalize Pigment", + "hexcasting.action.ephemera:particleburst": "Particle Burst", + "hexcasting.action.ephemera:invisibility": "Hidden Sun's Zenith", + "hexcasting.action.ephemera:getstatus": "Apothecary's Purification", + "hexcasting.action.book.ephemera:getstatus": "Apothecary's Prfn.", + "hexcasting.action.ephemera:getstatuscategory": "Apothecary's Purification II", + "hexcasting.action.book.ephemera:getstatuscategory": "Apothecary's Prfn. II", + "hexcasting.action.ephemera:getstatusduration": "Pharmacist's Distillation", + "hexcasting.action.book.ephemera:getstatusduration": "Pharmacist's Dstln.", + "hexcasting.action.ephemera:getstatuslevel": "Pharmacist's Dstln. II", + "hexcasting.action.book.ephemera:getstatuslevel": "Pharmacist's Distillation II", + "hexcasting.action.ephemera:getbystatus": "Zone Exaltation: Status", + "hexcasting.action.book.ephemera:getbystatus": "Zone Exltn.: Status", + "hexcasting.action.ephemera:getbystatusinverse": "Zone Exaltation: Not-Status", + "hexcasting.action.book.ephemera:getbystatusinverse": "Zone Exltn.: Not-Status", + "hexcasting.action.ephemera:getbystatussingle": "Entity Distillation: Status", + "hexcasting.action.ephemera:removestatus": "Cleanse Status", + "hexcasting.action.ephemera:getabsorption": "Ablation Purification", + "hexcasting.action.ephemera:filteredentityraycast": "Scout's Exaltation", + "hexcasting.action.ephemera:gaussianrand": "Entropy Reflection II", + "hexcasting.action.ephemera:hash": "Hashing Purification", + "hexcasting.action.ephemera:hashbits": "undocumented hash-to-numbers pattern", + "hexcasting.action.ephemera:revealtoother": "Postman's Gambit", + "hexcasting.action.ephemera:getrevealcost": "Postage Purification", + "hexcasting.action.ephemera:clearrevealcost": "Postman's Gambit II", + "hexcasting.action.ephemera:repair": "Induce Mending", + "hexcasting.action.ephemera:getdurabilitymainhand": "Menderbug's Reflection", + "hexcasting.action.book.ephemera:getdurabilitymainhand": "Menderbug's Rfln.", + "hexcasting.action.ephemera:getdurabilityoffhand": "Menderbug's Reflection II", + "hexcasting.action.book.ephemera:getdurabilityoffhand": "Menderbug's Rfln. II", + "hexcasting.action.ephemera:thothyoink": "Seshat's Gambit", + "hexcasting.action.ephemera:thothcount": "Seshat's Reflection", + "hexcasting.action.book.ephemera:thothcount": "Seshat's Rfln.", + "hexcasting.action.ephemera:collisionprobe": "Clearance Purification", + "hexcasting.action.book.ephemera:collisionprobe": "Clearance Prfn.", + "hexcasting.action.ephemera:getiotasize": "Flock's Purification", + "hexcasting.action.book.ephemera:getiotasize": "Flock's Prfn.", + "hexcasting.action.ephemera:getstacksizedeep": "Flock's Reflection II", + "hexcasting.action.book.ephemera:getstacksizedeep": "Flock's Rfln. II", + "hexcasting.action.ephemera:no": "No", + "hexcasting.action.ephemera:getproperties": "State Purification", + "hexcasting.action.ephemera:getpropertyvalue": "State Distillation", + "hexcasting.action.ephemera:ridewisp": "Ride Wisp", + "hexcasting.action.ephemera:dismount": "Dismount", + "hexcasting.action.ephemera:getrider": "Equestrian Purification", + "hexcasting.action.book.ephemera:getrider": "Equestrian Prfn.", + "hexcasting.action.ephemera:getmount": "Equestrian Purification II", + "hexcasting.action.book.ephemera:getmount": "Equestrian Prfn. II", + "hexcasting.action.ephemera:cancelflight": "Terminate Flight", + "hexcasting.action.ephemera:getflight/type": "Aviator's Purification II", + "hexcasting.action.ephemera:getflight/remaining": "Aviator's Purification III", + + "hexcasting.mishap.location_ephemera:inputrelaytprange": "Target entity is too far from target node at %s.", + "hexcasting.mishap.location_ephemera:outputrelaytprange": "Could not find connected node within range of %s.", + "hexcasting.mishap.ephemera:nonconjured": "Expected a conjured block at %s, but got %s.", + "hexcasting.mishap.ephemera:missingeffect": "Expected %s to be affected by %s, but they are not.", + "hexcasting.mishap.ephemera:nothoth": "Expected to be cast from inside of Thoth's Gambit.", + "ephemera.mishap.noitemframe": "an item frame", + "ephemera.mishap.entitytypelistplease": "a list of entity types", + "ephemera.mishap.toolongiota": "an iota that displays as less than 256 characters", + "hexcasting.mishap.ephemera:blacklist": "This effect has been blacklisted via tag.", + "hexcasting.mishap.ephemera:instant": "How did you even get that iota?", + "hexcasting.mishap.ephemera:no": "no", + + "item.ephemeral.media_armor.tooltip.1": "Bestows %s %s upon the wearer.", + + "ephemera.entry.miscpatterns": "Misc. Ephemera Patterns", + "ephemera.entry.invisibility": "Invisibility", + "ephemera.entry.status_iotas": "Status Iotas", + "ephemera.entry.network": "Link Amenities", + "ephemera.entry.revealtoother": "Messaging", + "ephemera.entry.mending": "Induce Mending", + "ephemera.entry.hashing": "Iota Hashing", + "ephemera.entry.specialslates": "Modified Slates", + "ephemera.entry.metathoth": "Accumulator Manipulation", + "ephemera.entry.flight": "Additional Flight Patterns", + + "ephemera.page.paintconjured.1": "Accepts a vector and an itemtype representing a pigment. Costs a negligible amount of media if targeting my own block, or 1 Amethyst Dust if not.", + "ephemera.page.paintconjured.2": "Sets the colors of the conjured block corresponding to the vector to the colorset represented by the passed pigment, or mine if passed a NULL iota.$(br2)Not guaranteed to work with unconventional forms of conjured matter. ", + "ephemera.page.paintconjured.3": "Feels strangely celebratory, as if something similar was once used in grand festivals where teams would splatter their colors all over their opponents' territory in a bid for ideological dominance.", + + "ephemera.page.miscpatterns.1": "I've found a couple patterns designed to interact with item frames. Nothing fancy, but they're nice utility for things like controlling my spell circles.$(br2)Additionally, it seems Sorter's Purification works on them just fine, so my attempts to find a dedicated frame-item pattern were pointless.", + "ephemera.page.miscpatterns.2": "Accepts an item frame entity, and returns its rotation, from 0 to 7.", + "ephemera.page.miscpatterns.3": "Accepts an item frame entity and an integer from 0 to 7, and sets its rotation to the number. Costs a negligible amount of media.", + "ephemera.page.miscpatterns.4": "As $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l), but also accepts a list of entity type iotas. Any entity whose type is not present in the list will be ignored. Costs an amount of media slightly less negligible than that of the aforementioned pattern.", + "ephemera.page.miscpatterns.5": "Returns a random number with a gaussian distribution, with a mean of zero and a standard deviation of one.", + "ephemera.page.miscpatterns.6": "Accepts a vector, and returns whether that vector is within (or just on the edge of) the block in that space. Seems to involve the boxes I see in my mind's eye.", + "ephemera.page.miscpatterns.7": "Returns the total size of all iotas on my stack, including the contents of lists and similar. If this number ever reaches 1024, my stack shall come crashing down into garbage.", + "ephemera.page.miscpatterns.8": "Accepts any iota, and returns its total size.", + "ephemera.page.miscpatterns.9": "Accepts a vector, and returns a list of strings corresponding to values contained in the state of the block at the corresponding position.", + "ephemera.page.miscpatterns.10": "Accepts a vector and a string, and uses the string as a key to retrieve the value it corresponds to in the target block's state, or null if there is no corresponding value.", + "ephemera.page.miscpatterns.11": "Accepts one of my wisps (or a wandering wisp), and places me atop it, similar to sitting in a minecart. I must be within the wisp's ambit, or four blocks for wandering wisps. Costs one amethyst shard.", + "ephemera.page.miscpatterns.12": "I should take care not to accelerate too quickly when riding a wisp, as unlike with Impulse, the acceleration is not applied evenly across my body, and can thus cause significant harm. The threshold for how quickly I can accelerate safely seems to be about 98 m/s over one second.$(br)I should take care when mounting fast wisps, as the instantaneous velocity involved can contribute to this damage if I am too far from my final seated position.", + "ephemera.page.miscpatterns.13": "Takes me off of whatever entity I may be riding when cast. Costs 1/100 of a dust.", + "ephemera.page.miscpatterns.14": "Accepts an entity, and returns a list of entities seated atop it.", + "ephemera.page.miscpatterns.15": "Accepts an entity, and returns the entity it is seated atop.", + + "ephemera.page.flight.1": "I've often found the preexisting suite of flight-related patterns to be a bit lackluster. They work perfectly well if all you want to do is cast the spell and go, but they are not well-suited to doing anything more complex. These patterns should help with that.", + "ephemera.page.flight.2": "Cancels my current flight ability, at a cost of one tenth of an Amethyst Dust. Casting a new flight spell in the same instant allows me to continue flying, potentially with different parameters.", + "ephemera.page.flight.3": "Returns true if the target is under the effects of Anchorite's Flight, false if Wayfarer's Flight, null if neither.", + "ephemera.page.flight.4": "Returns how close the target is to the end of their flight spell, represented as either their distance to the boundary or how many seconds remain.", + + "ephemera.page.particleburst.1": "Accepts two vectors and two numbers, and uses them to define a burst of particles. Costs a negligible amount of media.", + "ephemera.page.particleburst.2": "The first vector determines the burst's origin position, and the second vector determines its direction and speed. The first number determines the scale of random numbers added to each position component, and the second does the same for the direction vector.", + + "ephemera.page.invisibility.1": "Functions just like the normal $(l:patterns/great_spells/zeniths)Zeniths$(/l), applying Invisibility. Costs one amethyst dust per three seconds.", + + "ephemera.page.status_iotas.1": "These patterns work with a type of iota that represents lingering effects on a creature, which can allow me to asses the state of a creature more thoroughly than with only Nurse's Purification.$(br)While my research suggests that status iotas representing instantaneous effects are possible, they would be very difficult to obtain, and I cannot think of any use case for them at the moment.", + "ephemera.page.status_iotas.2": "Accepts a living entity, and returns a list of status iotas representing all effects on the target.", + "ephemera.page.status_iotas.3": "Accepts a status effect type, and returns a number based on whether the effect is likely to be helpful, harmful, or neutral to a creature.", + "ephemera.page.status_iotas.4": "Accepts an entity and a status effect type, and returns the effect on the target's duration in seconds.", + "ephemera.page.status_iotas.5": "Accepts an entity and a status effect type, and returns the effect on the target's potency.", + "ephemera.page.status_iotas.6": "Accepts a status effect type and a vector, and returns an entity at that position which has that effect.", + "ephemera.page.status_iotas.7": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which have that effect.", + "ephemera.page.status_iotas.8": "Accepts a status effect type, a vector, and a number ($(o)n$()), and returns a list of entities within radius $(o)n$() of the vector which do not have that effect.", + "ephemera.page.status_iotas.9": "Accepts a living entity, and returns how much damage it can Absorb before its health is affected.", + "ephemera.page.status_iotas.10": "Accepts an entity and a status effect type, and removes that status effect from the entity. Cost is based on the effect's innate harmfulness, its potency, and its remaining duration.", + "ephemera.page.status_iotas.11": "Costs more if attempting to remove a positive effect from an entity other than myself.$(br2)All of the patterns which deal with a specific status effect on an entity have the side effect that if the entity does not currently have the specified effect, the pattern will fail and inflict nausea upon me.", + + "ephemera.page.magearmor.1": "I've discovered a rather interesting spell, capable of producing a defensive media barrier that can match and even exceed the protective abilities of many kinds of conventional armor. It can even apply a wide array of $(l:patterns/spells/status_iotas)persistent effects$(/l) to the wearer, allowing for incredible versatility.", + "ephemera.page.magearmor.2": "Accepts a player to grant the armor to, the durability of the armor, the protection value of the armor (max 10), a status effect to apply, and that effect's level. The latter two can be replaced with any non-status iota to ignore them.", + "ephemera.page.magearmor.3": "Of course, this barrier is by no means indestructible, and its durability decays steadily in addition to any damage it takes from hits. The base rate of this decay can be described as one \"point\" per second, plus additional points equal to the squared strength of any effect imbued into it. Additionally, it will disappear instantly if removed from the wearer, so there is no way to repair it, short of recasting the spell to overwrite its current state.", + "ephemera.page.magearmor.4": "The media cost for this spell is a bit complicated: A base of one amethyst dust per 60 durability, multiplied by the armor's protection value raised to the power of 1.5, times the level+1 of any status effect. Thus, producing no-status strength 10 armor with one minute's worth of durability costs ~31.5 dust. Adding Regeneration 2 increases that media cost to ~94.5 dust, and causes it to only last 36 seconds.", + "ephemera.page.magearmor.5": "This explanation assumes I am wearing no other armor, in practice the cost can be reduced to as little as 25%% of that formula's output if all but one of my armor slots is already occupied by more conventional armor.", + + "ephemera.page.network.1": "I've devised a suite of patterns (plus a couple of blocks) to make links a bit more useful for things other than data transmission and media sharing.$(br2)Note that the patterns which fetch information about the network make no promises regarding whether returned linkables are within ambit.", + "ephemera.page.network.2": "Scans the link network connected to the input linkable up to a recursion depth equal to the input number (max 32), and returns a list of all connected linkables. Costs a negligible amount of media.", + "ephemera.page.network.3": "Accepts an entity to teleport, a linkable to use for access to its network, and a destination. If the entity is within 8 blocks of the linkable, and there is a network node within 4 blocks of the destination, the entity will be teleported. Cost varies based on what entity is teleported.", + "ephemera.page.network.4": "Outputs a brief redstone signal when an adjacent relay is used as the output for a casting of Network Gateway.", + "ephemera.page.network.5": "When rclicked with a focus in the main hand, attempts to store its iota in the block. When the focus is in the offhand, writes the stored iota to the focus.", + "ephemera.page.network.6": "Accepts a linkable to use for network access, and any iota. If a relay connected to the network has an adjacent Network Routing Index with the same iota, returns that relay's position. Costs half an amethyst dust.", + + "ephemera.page.revealtoother.1": "Accepts a player and any iota less than 256 characters long, and shows that iota to them as if they had cast Reveal, also telling them who sent the message. Cost is inversely proportional to the length of time since they were last targeted by this spell.", + "ephemera.page.revealtoother.2": "Accepts a player and returns how much amethyst dust it would cost to send them a message via Postman's Gambit, between 1/10 of a dust and 10 dust.", + "ephemera.page.revealtoother.3": "Resets the cost of sending me a message via Postman's Gambit back to 1/10 of a dust. Costs 1/10 of a dust.", + + "ephemera.page.mending.1": "Accepts a raw media item on the ground, and attempts to use it to repair a tool in my other hand.", + "ephemera.page.mending.2": "Generally only works on items enchanted with Mending, which are already damaged. Restores twenty points of damage for each amethyst dust's worth of media.", + "ephemera.page.mending.3": "Returns how many times the item in my other hand can be used without breaking, durability-manipulating effects notwithstanding.", + "ephemera.page.mending.4": "As previous, targeting the item in the hand I'm casting this with. Most useful with delayed casts of one form or another.", + + "ephemera.page.hashing.1": "I've discovered a curious pattern which scrambles an iota into an unreadable mess. However, unlike Garbage iotas, $(o)this$() mess still contains data, and running the same iota through the pattern will always produce the same mess (known as a hash). While it is not possible to recover an iota from a hash, it can be quite useful for comparisons in situations where I cannot save the unaltered iota.", + "ephemera.page.hashing.2": "Accepts any iota, and converts it into its hashed form.", + + "ephemera.page.specialslates.1": "I've designed a couple types of slate to be used in spell circles. While they don't provide any groundbreaking new functionality, they can be nice to have.", + "ephemera.page.specialslates.2": "Works just like a normal slate, but is capable of sending the media wave into the block it is placed on.", + "ephemera.page.specialslates.3": "Crafted with a normal slate and a stonecutter.$(br2)Looks just like a normal slate, but can't direct a media wave at all. Cannot be written to.", + + "ephemera.page.metathoth.1": "It seems that the list which $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l) forms as it iterates over a data set functions as a stack, simply one that is a bit out of the way. As such, I have devised a couple of patterns for interacting with this hidden stack, called the accumulator.", + "ephemera.page.metathoth.2": "Pops an iota from the accumulator and pushes it to the current stack. Mishaps if used outside of Thoth's Gambit.", + "ephemera.page.metathoth.3": "Returns how many iotas are currently accessible via Seshat's Gambit. Returns -1 if used outside of Thoth's Gambit.", + + "ephemera.page.forgewarning.1": "Mod author's note for Forge users: This spell does not work on Forge. I do not know why. I've set the cost on Forge to zero so at least it won't waste media. Sorry.$(br2)I'll try to get it working eventually.", + + "hexcasting.iota.ephemera:potion": "Status Effect", + "hexcasting.iota.ephemera:hash": "Hash", + "ephemera.iota.hashlabel": "Hashed data: %s", + + "text.ephemera.clearHistoryResponse": "Cleared reveal history map.", + "text.ephemera.revealIntroduction": "Transmission from %s: ", + "text.ephemera.nosender": "unknown", + + "enchantment.ephemera.shame": "Curse of Shame", + + "death.attack.ephemera:acceleration": "%s was subjected to lethal acceleration." +} \ No newline at end of file diff --git a/projects/1.20/assets/ephemera/ephemera/lang/zh_cn.json b/projects/1.20/assets/ephemera/ephemera/lang/zh_cn.json new file mode 100644 index 000000000000..9e50d3f88ffc --- /dev/null +++ b/projects/1.20/assets/ephemera/ephemera/lang/zh_cn.json @@ -0,0 +1,189 @@ +{ + "itemGroup.ephemera.ephemera": "Ephemera", + + "item.ephemera.media_helmet": "咒塑头盔", + "item.ephemera.media_chestplate": "咒塑胸甲", + "item.ephemera.media_leggings": "咒塑护腿", + "item.ephemera.media_boots": "咒塑靴子", + + "block.ephemera.relay_tp_detector": "网络门径探测器", + "block.ephemera.relay_index": "网络路由索引", + "block.ephemera.fakeslate": "惰性石板", + + "hexcasting.action.ephemera:magearmor": "瞬时庇护", + "hexcasting.action.book.ephemera:magearmor": "瞬时庇护", + "hexcasting.action.ephemera:networkscan": "网络之馏化", + "hexcasting.action.book.ephemera:networkscan": "网络之馏化", + "hexcasting.action.ephemera:networktp": "网络门径", + "hexcasting.action.book.ephemera:networktp": "网络门径", + "hexcasting.action.ephemera:networkindex": "路由之馏化", + "hexcasting.action.book.ephemera:networkindex": "路由之馏化", + "hexcasting.action.ephemera:readframerotation": "装潢师之纯化", + "hexcasting.action.book.ephemera:readframerotation": "装潢师之纯化", + "hexcasting.action.ephemera:setframerotation": "装潢师之策略", + "hexcasting.action.ephemera:paintconjured": "外化染色剂", + "hexcasting.action.ephemera:particleburst": "粒子迸发", + "hexcasting.action.ephemera:invisibility": "隐阳当空", + "hexcasting.action.ephemera:getstatus": "药师之纯化", + "hexcasting.action.book.ephemera:getstatus": "药师之纯化", + "hexcasting.action.ephemera:getstatuscategory": "药师之纯化,第二型", + "hexcasting.action.book.ephemera:getstatuscategory": "药师之纯化,第二型", + "hexcasting.action.ephemera:getstatusduration": "药剂师之馏化", + "hexcasting.action.book.ephemera:getstatusduration": "药剂师之馏化", + "hexcasting.action.ephemera:getstatuslevel": "药剂师之馏化,第二型", + "hexcasting.action.book.ephemera:getstatuslevel": "药剂师之馏化,第二型", + "hexcasting.action.ephemera:getbystatus": "区域之提整:状态", + "hexcasting.action.book.ephemera:getbystatus": "区域之提整:状态", + "hexcasting.action.ephemera:getbystatusinverse": "区域之提整:非状态", + "hexcasting.action.book.ephemera:getbystatusinverse": "区域之提整:非状态", + "hexcasting.action.ephemera:getbystatussingle": "实体之馏化:状态", + "hexcasting.action.ephemera:removestatus": "清除状态", + "hexcasting.action.ephemera:getabsorption": "销蚀之纯化", + "hexcasting.action.ephemera:filteredentityraycast": "侦查员之提整", + "hexcasting.action.ephemera:gaussianrand": "熵之精思,第二型", + "hexcasting.action.ephemera:hash": "哈希之纯化", + "hexcasting.action.ephemera:hashbits": "未记录的哈希至数转换图案", + "hexcasting.action.ephemera:revealtoother": "邮递员之策略", + "hexcasting.action.ephemera:getrevealcost": "邮递员之纯化", + "hexcasting.action.ephemera:clearrevealcost": "邮递员之策略,第二型", + "hexcasting.action.ephemera:repair": "咒感修补", + "hexcasting.action.ephemera:getdurabilitymainhand": "维修虫之精思", + "hexcasting.action.book.ephemera:getdurabilitymainhand": "维修虫之精思", + "hexcasting.action.ephemera:getdurabilityoffhand": "维修虫之精思,第二型", + "hexcasting.action.book.ephemera:getdurabilityoffhand": "维修虫之精思,第二型", + "hexcasting.action.ephemera:thothyoink": "塞莎特之策略", + "hexcasting.action.ephemera:thothcount": "塞莎特之精思", + "hexcasting.action.book.ephemera:thothcount": "塞莎特之精思", + "hexcasting.action.ephemera:collisionprobe": "空域之纯化", + "hexcasting.action.book.ephemera:collisionprobe": "空域之纯化", + "hexcasting.action.ephemera:getiotasize": "群体之纯化", + "hexcasting.action.book.ephemera:getiotasize": "群体之纯化", + "hexcasting.action.ephemera:getstacksizedeep": "群体之精思,第二型", + "hexcasting.action.book.ephemera:getstacksizedeep": "群体之精思,第二型", + "hexcasting.action.ephemera:no": "不", + "hexcasting.action.ephemera:getproperties": "状态之纯化", + "hexcasting.action.ephemera:getpropertyvalue": "状态之馏化", + "hexcasting.action.ephemera:ridewisp": "骑乘咒灵", + "hexcasting.action.ephemera:dismount": "离座", + "hexcasting.action.ephemera:getrider": "马术师之纯化", + "hexcasting.action.book.ephemera:getrider": "马术师之纯化", + "hexcasting.action.ephemera:getmount": "马术师之纯化,第二型", + "hexcasting.action.book.ephemera:getmount": "马术师之纯化,第二型", + "hexcasting.action.ephemera:cancelflight": "终止飞行", + "hexcasting.action.ephemera:getflight/type": "飞行员之纯化,第二型", + "hexcasting.action.ephemera:getflight/remaining": "飞行员之纯化,第三型", + + "hexcasting.mishap.location_ephemera:inputrelaytprange": "目标实体距%s处的目标节点过远。", + "hexcasting.mishap.location_ephemera:outputrelaytprange": "无法在范围%s内找到已连接的节点。", + "hexcasting.mishap.ephemera:nonconjured": "%s处本应为一个构筑的方块,而实际为%s。", + "hexcasting.mishap.ephemera:missingeffect": "%s本应拥有%s,而实际没有。", + "hexcasting.mishap.ephemera:nothoth": "本应在托特之策略内部施放。", + "ephemera.mishap.noitemframe": "一个物品展示框", + "ephemera.mishap.entitytypelistplease": "一个实体类型列表", + "ephemera.mishap.toolongiota": "一个可用少于256个字符显示的iota", + "hexcasting.mishap.ephemera:blacklist": "此效果已被标签禁用。", + "hexcasting.mishap.ephemera:instant": "是如何拿到这个iota的?", + "hexcasting.mishap.ephemera:no": "不", + + "item.ephemeral.media_armor.tooltip.1": "给予穿戴者%s %s。", + + "ephemera.entry.miscpatterns": "Ephemera:杂项图案", + "ephemera.entry.invisibility": "隐形", + "ephemera.entry.status_iotas": "状态 Iota", + "ephemera.entry.network": "链接实用图案", + "ephemera.entry.revealtoother": "信息传递", + "ephemera.entry.mending": "咒感修补", + "ephemera.entry.hashing": "Iota 哈希", + "ephemera.entry.specialslates": "变种石板", + "ephemera.entry.metathoth": "累积栈操作", + "ephemera.entry.flight": "额外飞行图案", + + "ephemera.page.paintconjured.1": "接受一个向量与代表染色剂的物品类型。如果目标为我自己的方块,消耗极少量媒质;否则消耗 1 个紫水晶粉。", + "ephemera.page.paintconjured.2": "将所给位置处构筑方块的颜色设置为所给染色剂的颜色;如果传入的是 Null,则将其设置为我意识的颜色。$(br2)不保证对非传统的构筑物质有效。", + "ephemera.page.paintconjured.3": "这种效果有着奇怪的庆典感,就好像它曾用于某个盛大的节庆活动,与会队伍会把自己队的颜色泼洒到对手的领地上,类似于意识层面上的占领。", + + "ephemera.page.miscpatterns.1": "我发现了一些专为物品展示框交互设计的图案。它们不是什么高端法术,但确实是控制法术环之类事物的实用手段。$(br2)此外,分拣员之纯化对它们同样有效,因此试图寻找物品展示框专用的物品图案没有意义。", + "ephemera.page.miscpatterns.2": "接受一个物品展示框实体,并返回其中物品的朝向,值必然在 0 到 7 之间。", + "ephemera.page.miscpatterns.3": "接受一个物品展示框实体与一个 0 到 7 的整数,并将物品朝向设置为该数。消耗极少量媒质。", + "ephemera.page.miscpatterns.4": "与$(l:patterns/basics#hexcasting:raycast/entity)侦查员之馏化$(/l)类似,但能够接受一个实体类型 iota 列表。类型不在该列表内的实体会被忽略。消耗的媒质量略多于上文所提图案的“极少量”。", + "ephemera.page.miscpatterns.5": "返回 0 与 1 之间的随机数,服从正态分布,其均值为 0,标准差为 1。", + "ephemera.page.miscpatterns.6": "接受一个向量,并检查该向量是否在该位置方块的内部或边缘。似乎与我在意识中见到的方框有所关联。", + "ephemera.page.miscpatterns.7": "返回我栈中所有 iota 的总大小,类列表 iota 中的各元素会拆出计算。若返回的数达到 1024,那么整个栈都将变为垃圾。", + "ephemera.page.miscpatterns.8": "接受任意 iota,返回其总大小。", + "ephemera.page.miscpatterns.9": "接受一个向量,以字符串列表形式返回该位置处方块各状态值。", + "ephemera.page.miscpatterns.10": "接受一个向量和一个字符串,以该字符串为键返回目标方块的对应状态值;若无对应值则返回 Null。", + "ephemera.page.miscpatterns.11": "接受一个属于我的咒灵或游走咒灵,并像乘坐矿车一样坐到其上。我必须处于咒灵的影响范围内,或距游走咒灵 4 格以内。消耗 1 个紫水晶碎片。", + "ephemera.page.miscpatterns.12": "骑乘咒灵时务必小心,千万不要加速加得太快;咒灵和驱动不同,前者带来的加速不会平均作用于我的全身,也因此可能会导致严重的损伤。安全阈值应该是约 98 m/s 每秒。$(br)落座时也应注意:如果距离目标咒灵过远,落座时的瞬时速度也可能导致伤害。", + "ephemera.page.miscpatterns.13": "让我从施法时骑乘的实体上离开。消耗 1/100 个紫水晶粉。", + "ephemera.page.miscpatterns.14": "接受一个实体,返回在该实体上方落座的实体列表。", + "ephemera.page.miscpatterns.15": "接受一个实体,返回其所骑乘的实体。", + + "ephemera.page.flight.1": "已有的飞行相关图案总是有些平淡。如果只是想施法然后飞,那已有的图案已经足够,但它们没法处理更复杂的需求。本节图案应该帮得上忙。", + "ephemera.page.flight.2": "去除当前的飞行能力,消耗 1/10 个紫水晶粉。在同一刻施放新的飞行法术可继续飞行,可借此更改参数。", + "ephemera.page.flight.3": "如果目标处于隐士之飞行影响下,返回 True;如果处于旅者之飞行影响下,返回 False;两者都不适用返回 Null。", + "ephemera.page.flight.4": "返回目标距其飞行法术结束的量度,返回值的意义可变。可以是距飞行界限的距离,也可以是剩余的飞行秒数。", + + "ephemera.page.particleburst.1": "接受两个向量和两个数,并由其触发一束粒子。消耗极少量媒质。", + "ephemera.page.particleburst.2": "第一个向量决定了粒子束的起始位置,第二个向量则决定其方向和速度。第一个数决定各位置向量分量附加多大的随机数,第二个数则以同种方式决定方向向量的随机性。", + + "ephemera.page.invisibility.1": "和其他$(l:patterns/great_spells/zeniths)天顶法术$(/l)功能类似,给予隐形,每 3 秒持续时间消耗 1 个紫水晶粉。", + + "ephemera.page.status_iotas.1": "这些图案主要操作代表生物身上长时效果的 iota,我可以用这些图案评估生物的状态,比只用护士之纯化更加深入彻底。$(br)虽然我的研究表明,代表瞬时效果的状态 iota 有存在的可能,但它们非常难以获取,而且我目前没想到它们有什么用途。", + "ephemera.page.status_iotas.2": "接受一个生物,并返回目标当前所有效果组成的列表 iota。", + "ephemera.page.status_iotas.3": "接受一个状态效果,并根据该效果对生物产生正面、负面,或中性影响返回一个数。", + "ephemera.page.status_iotas.4": "接受一个实体和一个状态效果,并返回目标身上所给状态效果的持续时间,以秒计。", + "ephemera.page.status_iotas.5": "接受一个实体和一个状态效果,并返回目标身上所给状态效果的强度。", + "ephemera.page.status_iotas.6": "接受一个状态效果和一个向量,并返回该处带有该状态效果的实体。", + "ephemera.page.status_iotas.7": "接受一个状态效果,一个向量和一个数($(o)n$()),返回该位置给定距离范围($(o)n$())内所有带有给定状态效果生物的列表。", + "ephemera.page.status_iotas.8": "接受一个状态效果,一个向量和一个数($(o)n$()),返回该位置给定距离范围($(o)n$())内所有无给定状态效果生物的列表。", + "ephemera.page.status_iotas.9": "接受一个活体实体,并返回其在生命值受影响前能吸收的伤害量。", + "ephemera.page.status_iotas.10": "接受一个实体和一个状态效果,并移除该实体身上的所给状态效果。消耗由效果自身的伤害性、强度、剩余持续时间决定。", + "ephemera.page.status_iotas.11": "若是要移除非自身实体身上的正面效果,则消耗会增加。$(br2)所有需要检测实体身上有无所给状态效果的图案都有副作用。如果该实体当前没有这种效果,则图案会失效,并给予我反胃。", + + "ephemera.page.magearmor.1": "我发现了一种比较有趣的法术,它能够产生防御性的媒质屏障,防护力媲美甚至超过许多种传统盔甲。此类屏障甚至还能给予穿戴者许多$(l:patterns/spells/status_iotas)持久效果$(/l),堪称泛用。", + "ephemera.page.magearmor.2": "接受作为盔甲接收方的玩家,盔甲的耐久度,盔甲的护甲值(最多为 10),施加的状态效果,状态效果的等级。最后两个参数可用其他类型的 iota 代替,此时这两个参数会被忽略。", + "ephemera.page.magearmor.3": "当然,这种屏障并非无法破坏。除去受击致损外,其耐久度还会持续减少。这种减少效应的基础速率看作每秒 1 “点”,则还需附加上其中效果等级平方个“点”。此外,穿戴者脱下后它们会立刻消失。换言之,除非重新施法覆写其状态,否则没有方法修复它们。", + "ephemera.page.magearmor.4": "此法术的媒质消耗比较复杂:每 60 点耐久度基础消耗 1 个紫水晶粉,乘以护甲值的 1.5 次幂,再乘以任意状态效果的等级 + 1。因此,不提供状态效果、护甲值为 10、耐久度够支持 1 分钟的盔甲需消耗大约 31.5 个紫水晶粉。再令其给予生命恢复 II,消耗就来到了大约 94.5 个紫水晶粉,并且在消失前也只能坚持 36 秒。", + "ephemera.page.magearmor.5": "这一计算结果的前提是我没有穿戴其他盔甲,实际操作中消耗可以缩减到最低 25%%,出现在所有盔甲槽位中只有 1 格空出的情况中。", + + "ephemera.page.network.1": "我设计了一系列图案和若干方块,旨在赋予链接更多用途,除去已有数据传输和媒质共享之外。$(br2)需要注意,对于从网络中获取信息的图案,其返回的可链接事物不一定处在影响范围之内。", + "ephemera.page.network.2": "递归扫描与输入端可链接事物相连的链接网络,最大深度为所给数(最高为 32),并返回所有可链接事物组成的列表。消耗极少量媒质。", + "ephemera.page.network.3": "接受需传送的实体,用于访问网络的可链接事物,以及目的地。如果实体位于所给可链接事物 8 格之内,且距目的地 4 格之内存在网络节点,则实体会被传送。消耗量由被传送实体的类型决定。", + "ephemera.page.network.4": "如果毗邻的继链器被用作网络门径的输出端,则产生一次短时红石信号。", + "ephemera.page.network.5": "主手持有核心右击时,会尝试将核心中的 iota 存入自身。副手持有核心时,则会将存储的 iota 写入核心。", + "ephemera.page.network.6": "接受用于访问网络的可链接事物,以及任意 iota。如果网络中有继链器毗邻网络路由索引,且索引中存有同一 iota,则返回该继链器的位置。消耗 1/2 个紫水晶粉。", + + "ephemera.page.revealtoother.1": "接受一个玩家和一个长度少于 256 个字符的 iota,并向所给玩家展示该 iota,如同他们来施放揭示一般;同时也告诉他们信息的发送者。消耗与给定玩家上一次作为此法术目标后经过的时间成反比例。", + "ephemera.page.revealtoother.2": "接受一个玩家,返回紫水晶粉的数量,对应通过邮递员之策略向其发送信息的消耗,范围在 1/10 个到 10 个之间。", + "ephemera.page.revealtoother.3": "重置通过邮递员之策略向我发送信息的消耗,也即 1/10 个紫水晶粉。消耗 1/10 个紫水晶粉。", + + "ephemera.page.mending.1": "接受自然包含媒质的物品实体,用其修复我另一只手中的工具。", + "ephemera.page.mending.2": "通常只对拥有经验修补魔咒的受损物品有效。每个紫水晶粉的媒质恢复 20 点耐久度。", + "ephemera.page.mending.3": "返回我另一只手中物品在损毁前还能使用的次数,会影响耐久度使用的效果不计。", + "ephemera.page.mending.4": "和前页图案类似,但它会以施法用手中的物品为目标。最适合配合各种形式的延迟施法使用。", + + "ephemera.page.hashing.1": "我发现了一个神奇的图案,能将 iota 变成一团读不懂的乱麻。但和垃圾 iota 不一样的是,$(o)这种$()乱麻中依然含有数据,并且同样的 iota 必定给出同样的乱麻(又称哈希)。虽然哈希后的乱麻没法还原成 iota,但很适合在无法保存未经修改的 iota 的情况下用来比对。", + "ephemera.page.hashing.2": "接受任意 iota,转换成哈希值。", + + "ephemera.page.specialslates.1": "我设计了若干种可用于法术环的石板。虽然它们没有什么开创性的新功能,但有这些选择也不错。", + "ephemera.page.specialslates.2": "和普通的石板功效一样,但它能够向其所依附的方块传递媒质波。", + "ephemera.page.specialslates.3": "在切石机中加工普通石板而得。$(br2)和普通石板外观一致,但完全无法传导媒质波,且无法写入。", + + "ephemera.page.metathoth.1": "似乎$(l:patterns/meta#hexcasting:for_each)托特之策略$(/l)在处理数据时形成的列表在功能上与栈一致,只是表现上略有差别罢了。因此,我设计了一系列图案,用以和该隐藏栈——“累积栈”交互。", + "ephemera.page.metathoth.2": "从累积栈中弹出一个 iota 并压入当前栈。在托特之策略外部使用会招致事故。", + "ephemera.page.metathoth.3": "返回塞莎特之策略可访问的 iota 数目。在托特之策略外部使用会返回 -1。", + + "ephemera.page.forgewarning.1": "模组作者给 Forge 用户的留言:此法术在 Forge 上无法运行。我不知道具体的原因。我已将 Forge 端中此法术的消耗设置为 0,避免浪费媒质。抱歉。$(br2)我会尽力让它正常运作。", + + "hexcasting.iota.ephemera:potion": "状态效果", + "hexcasting.iota.ephemera:hash": "哈希", + "ephemera.iota.hashlabel": "哈希数据:%s", + + "text.ephemera.clearHistoryResponse": "已清除揭示历史。", + "text.ephemera.revealIntroduction": "来自%s的信息:", + "text.ephemera.nosender": "未知", + + "enchantment.ephemera.shame": "无耻诅咒", + + "death.attack.ephemera:acceleration": "%s因加速过快而亡" +} \ No newline at end of file diff --git a/projects/1.20/assets/oneironaut/oneironaut/README.md b/projects/1.20/assets/oneironaut/oneironaut/README.md new file mode 100644 index 000000000000..55edaab3fe72 --- /dev/null +++ b/projects/1.20/assets/oneironaut/oneironaut/README.md @@ -0,0 +1,19 @@ +### 总概 + +```mermaid +flowchart LR + 1.20.1 -->|indirect| 1.20.1-fabric + 1.19.2 +``` + +``` +1.20.1 + └── 1.20.1-fabric +1.19.2 +``` + +### 链接区域 + +- [1.19.2](/projects/1.19/assets/oneironaut/oneironaut) +- [1.20.1](/projects/1.20/assets/oneironaut/oneironaut) +- [1.20.1-fabric](/projects/1.20-fabric/assets/oneironaut/oneironaut) \ No newline at end of file diff --git a/projects/1.20/assets/oneironaut/oneironaut/lang/en_us.json b/projects/1.20/assets/oneironaut/oneironaut/lang/en_us.json new file mode 100644 index 000000000000..1186f51d8d50 --- /dev/null +++ b/projects/1.20/assets/oneironaut/oneironaut/lang/en_us.json @@ -0,0 +1,370 @@ +{ + "this.is.a.comment.1": "Pattern names--------------------------------------------------------------------------------------------", + "hexcasting.action.oneironaut:getdim1": "Spatial Reflection", + "hexcasting.action.oneironaut:getdim2": "Spatial Reflection II", + "hexcasting.action.oneironaut:getdim/overworld": "Homeland Reflection", + "hexcasting.action.oneironaut:getdim/nether": "Inferno Reflection", + "hexcasting.action.oneironaut:getdimheight": "Atlas' Decomposition", + "hexcasting.action.oneironaut:getdimscale": "Ratio Purification", + "hexcasting.action.oneironaut:dimteleport": "Noetic Gateway", + "hexcasting.action.oneironaut:infusemedia": "Media Infusion", + "hexcasting.action.oneironaut:swapspace": "Spatial Interchange", + "hexcasting.action.oneironaut:craftrod": "Conduct Rod", + "hexcasting.action.oneironaut:getrodlook": "Baton Reflection", + "hexcasting.action.oneironaut:getrodpos": "Baton Reflection II", + "hexcasting.action.oneironaut:getrodstamp": "Metronome Reflection", + "hexcasting.action.oneironaut:delayrod": "Metronome Gambit", + "hexcasting.action.oneironaut:haltrod": "Finale", + "hexcasting.action.oneironaut:resetrod": "Encore", + "hexcasting.action.oneironaut:readrodram": "Williams' Reflection", + "hexcasting.action.oneironaut:writerodram": "Williams' Gambit", + "hexcasting.action.oneironaut:readrodramremote": "Williams' Reflection II", + "hexcasting.action.oneironaut:writerodramremote": "Williams' Gambit II", + "hexcasting.action.oneironaut:queryrod": "Conductor's Reflection", + "hexcasting.action.oneironaut:rodloopactive": "Conductor's Reflection II", + "hexcasting.action.oneironaut:craftbottomlesstrinket": "Craft Bottomless Trinket", + "hexcasting.action.oneironaut:writeidea": "Inscribe Idea", + "hexcasting.action.oneironaut:readidea": "Retrieve Idea", + "hexcasting.action.oneironaut:readideatime": "Metadata Purification", + "hexcasting.action.oneironaut:readideawriter": "Metadata Distillation", + "hexcasting.action.oneironaut:readsentinel": "Scrutinize Sentinel", + "hexcasting.action.oneironaut:resistdetection": "Stealth Shroud", + "hexcasting.action.oneironaut:detectshroud": "Discern Shroud", + "hexcasting.action.oneironaut:circle": "Circle", + "hexcasting.action.oneironaut:applymindrender": "Empower Mind Render", + "hexcasting.action.oneironaut:reviveflayed": "Instill Psyche", + "hexcasting.action.oneironaut:advanceautomaton": "Cellular Generation", + "hexcasting.action.oneironaut:applynotmissing": "Uplifting Resonance", + "hexcasting.action.oneironaut:getsoulprint": "Soulprint Reflection", + "hexcasting.action.oneironaut:signitem": "Sign Item", + "hexcasting.action.oneironaut:checksignature": "Signature Purification", + "hexcasting.action.oneironaut:extradimensionaleval": "Heimdall's Gambit", + "hexcasting.action.oneironaut:shiftsentinel": "Shift Sentinel", + "hexcasting.action.oneironaut:erosionshield": "Stabilize Matter", + + "this.is.a.comment.2": "Block/Item names--------------------------------------------------------------------------------------------", + "item.oneironaut.pseudoamethyst_shard": "Pseudoamethyst Shard", + "item.oneironaut.shifting_pseudoamethyst": "Shifting Pseudoamethyst", + "item.oneironaut.thought_slurry_bucket": "Thought Slurry Bucket", + "item.oneironaut.reverberation_rod": "Reverberation Rod", + "item.oneironaut.endless_phial": "Inexhaustible Phial", + "item.oneironaut.bottomless_trinket": "Bottomless Trinket", + "item.oneironaut.echo_staff": "Echo Staff", + "item.oneironaut.beacon_staff": "Magitech Staff", + "item.oneironaut.spoon_staff": "Spoon", + "item.oneironaut.pigment_flame": "Flame Pigment", + "item.oneironaut.pigment_echo": "Echo Pigment", + "item.oneironaut.pigment_noosphere": "Noetic Pigment", + "item.oneironaut.pigment_frenzyflame": "Frenzy Pigment", + "item.oneironaut.memory_fragment": "Memory Fragment", + "item.oneironaut.memory_fragment.all": "It seems I've consumed all the memories that this crystal can offer me...", + "item.oneironaut.wisp_capture_device": "Wisp Wrangler", + "item.oneironaut.mind_scalpel": "Synaptic Scalpel", + "item.oneironaut.monkfruit": "Monkfruit", + "item.oneironaut.monkfruit_cooked": "Cooked Monkfruit", + "item.oneironaut.hexjam": "Hex Jam", + "item.oneironaut.rending_thorns": "Rending Thorns", + "item.oneironaut.library_card": "Akashic Library Card", + + "block.oneironaut.noosphere_gate": "Inscrutable Rift", + "block.oneironaut.pseudoamethyst_block": "Pseudoamethyst Block", + "block.oneironaut.pseudoamethyst_cluster": "Pseudoamethyst Cluster", + "block.oneironaut.pseudoamethyst_bud_small": "Small Pseudoamethyst Bud", + "block.oneironaut.pseudoamethyst_bud_medium": "Medium Pseudoamethyst Bud", + "block.oneironaut.pseudoamethyst_bud_large": "Large Pseudoamethyst Bud", + "block.oneironaut.thought_slurry": "Thought Slurry", + "block.oneironaut.thought_slurry_flowing": "Flowing Thought Slurry", + "block.oneironaut.noosphere_basalt": "Noosphere Basalt", + "block.oneironaut.wisp_lantern": "Wisp Lantern", + "block.oneironaut.wisp_lantern_tinted": "Tinted Wisp Lantern", + "block.oneironaut.super_budding": "Budding Pseudoamethyst", + "block.oneironaut.sentinel_sensor": "Sentinel Sensor", + "block.oneironaut.raycast_blocker": "Anti-Raycast Slate", + "block.oneironaut.raycast_blocker_glass": "Anti-Raycast Glass", + "block.oneironaut.sentinel_trap": "Seer Impetus", + "block.oneironaut.circle": "§0§oCircle", + "block.oneironaut.hex_resistant_block": "Hex-Warded Obsidian", + "block.oneironaut.media_ice": "Sagely Ice", + "block.oneironaut.media_ice_frosted": "Transient Sagely Ice", + "block.oneironaut.media_gel": "Plasmodial Psyche", + "block.oneironaut.cell": "Dissonant Psyche", + "block.oneironaut.wisp_battery": "Wisp Weaver", + "block.oneironaut.decorative_wisp_battery": "Lesser Wisp Weaver", + "block.oneironaut.hover_elevator": "Hexcaster's Hoverlift", + "block.oneironaut.hover_repeater": "Hoverlift Repeater", + "block.oneironaut.monkfruit_bush": "Monkfruit Bush", + "block.oneironaut.spacebomb": "Slipcharge", + "block.oneironaut.extradimensional_border": "Transdimensional Anchor", + "block.oneironaut.slipwaysuppressor": "Slipway Suppressor", + + "fluid.oneironaut.thought_slurry": "Thought Slurry", + + "this.is.a.comment.3": "Book entry titles--------------------------------------------------------------------------------------------", + "oneironaut.entry.dim_iotas": "Dimension Iotas", + "oneironaut.entry.status_iotas": "Status Iotas", + "oneironaut.entry.noosphere_main": "A Strange Realm", + "oneironaut.entry.noosphere_materials": "Thoughtful Materials", + "oneironaut.entry.wisp_lanterns": "Wisp Devices", + "oneironaut.entry.slipway_hint": "A Reflection on Slipways", + "oneironaut.entry.miscpatterns": "Misc. Oneironaut Patterns", + "oneironaut.entry.super_budding": "Better Media Farming", + "oneironaut.entry.idea_inscription": "Idea Inscription", + "oneironaut.entry.sentinel_detection": "Sentinel Detection", + "oneironaut.entry.detection_shielding": "Nondetection", + "oneironaut.entry.raycast_assailant": "Anti-Hex Blocks", + "oneironaut.entry.mindrender": "Mind Render", + "oneironaut.entry.soulprints": "Soulprints", + "oneironaut.entry.hover_elevator": "Hoverlifts", + "oneironaut.entry.flayrevival": "Artificial Minds", + "oneironaut.entry.heimdall": "Transdimensional Casting", + "oneironaut.entry.slipwaymanipulation": "Slipway Manipulation", + "oneironaut.entry.deep_noosphere_main": "A Hostile Realm", + + "this.is.a.comment.4": "Book pages--------------------------------------------------------------------------------------------", + "oneironaut.page.spaceswap.1": "Accepts two lists of two vectors, to define two cuboids, and a Spatial Imprint. These cuboids must have the exact same dimensions and rotation.", + "oneironaut.page.spaceswap.2": "I'm not quite sure what this one is supposed to do, it's always yelling at me about special dimensions. Perhaps it needs to use this special dimension as an intermediary?", + "oneironaut.page.spaceswap.3": "Exchanges the blocks within the first cuboid in your current dimension (which must be within ambit) for the blocks within the second cuboid in the dimension corresponding to the Spatial Imprint. $(l:https://www.desmos.com/calculator/ydbg8zhmyp)Cost (in amethyst dust) is logarithmic for the first 1001 blocks, after which it increases linearly$(/l).$(br)Will not exchange any unbreakable blocks.$(br)One or both of the endpoint dimensions must be the noosphere.", + "oneironaut.page.spaceswap.4": "One or both of the endpoint dimensions must be the noosphere.", + "hexcasting.spell.oneironaut:dimteleport.samedim": "The spell does not do anything, similar to if I told someone to go home, when they were already at home.", + "oneironaut.page.dim_iotas.1": "I've descovered a kind of iota which seems to represent a layer of reality itself. In lieu of better understanding, I've decided to call these Spatial Imprints.", + "oneironaut.page.dim_iotas.2": "Returns a Spatial Imprint representing the dimension I am currently in. Costs a negligible amount of media.", + "oneironaut.page.dim_iotas.3": "Returns a Spatial Imprint representing the dimension my sentinel is currently in. Costs one-tenth of an amethyst dust.", + "oneironaut.page.dim_iotas.4": "Returns a Spatial Imprint representing the overworld. Costs one-tenth of an amethyst dust.", + "oneironaut.page.dim_iotas.5": "Returns a Spatial Imprint representing the nether. Costs one-tenth of an amethyst dust.$(br)There seems to be some resistance when I cast this. Perhaps I'll be able to overcome it with $(#54398a)greater skill$()...", + "oneironaut.page.dim_iotas.6": "Accepts a Spatial Imprint, and returns the lowest and highest altitudes at which blocks can exist in the corresponding dimension.", + "oneironaut.page.dim_iotas.7": "Accepts a Spatial Imprint, and returns how many blocks you'd have to travel in the overworld to travel the equivalent of one block in the input dimension.", + "oneironaut.page.dimteleport.1": "Accepts an entity and a Spatial Imprint and teleports the entity to its position in the proper dimension. Generally costs 20 Charged Amethyst.$(br)Will fail if supplied a player other than myself.", + "oneironaut.page.dimteleport.2": "If I use this to return to a dimension that I previously left within the same instant, the cost drops to five amethyst dust, as the spell can take advantage of a lingering strand of media leading back to my original position. Otherwise, it will attempt to find a safe spot to deposit me, potentially conjuring a block to prevent me from falling to my doom.$(br2)Strangely, I feel an odd sense of acceleration when transporting myself this way, along some incomprehensible axis.", + "oneironaut.page.infusemedia.1": "Accepts a vector and infuses media into the corresponding block in order to transmute it. Cost and exact effect vary depending on target.", + "oneironaut.page.infusemedia.2": "Conceptually, this spell is quite similar to $(l:patterns/spells/blockworks#hexcasting:edify)Edify Sapling$(/l).$(br)However, the media that the target block receives is far more finely-tuned, and can thus achieve far more interesting results.", + "oneironaut.page.wisp_lanterns.1": "I've found that by using materials unique to the Noosphere, I can create a special jar capable of producing and containing a tiny wisp. While this wisp cannot cast anything, it emits quite a bit of light, and will mimic pigments shown to it.$(br)I can also craft a version with tinted glass, in case the wisp's light would disrupt my study's aesthetic.", + "oneironaut.page.wisp_lanterns.2": "Additionally, by feeding this illumination wisp significant amounts of media, I can cause it to undergo mitosis, with the newly-created wisp being seemingly-identical to the wandering wisps produced by slipways.$(br2)The device to split the wisp in this way can be fed media-bearing items via hoppers or similar, and is capable of storing 640 charged amethyst worth of media.", + "oneironaut.page.wisp_lanterns.3": "Simply apply a redstone signal to activate. Produces a wisp every four seconds, and consumes two charged amethyst to do so.$(br)The capacity and fill level of the phial used make no difference.", + "oneironaut.page.wisp_lanterns.4": "Alternatively, I can create a version which does not consume (or accept) any media, but produces wisps which yield only net-zero media when consumed.$(br2)All the sparkly shiny orbs, none of the prohibitive cost!", + "oneironaut.page.wisp_lanterns.5.originaltoolong": "Using similar principles, I've designed a device which can capture (and contain) wisps for their eventual release, though it does not work on wandering wisps due to their instability.$(br)Capturing one of my own wisps always consumes one amethyst shard worth of its (rechargable) 64-charged capacity, and capturing someone else's costs half again as much media as it contains. To capture a wisp, I must simply use the item on a wisp, and it will be sucked into the housing(assuming it has sufficient media and does not already contain a wisp).", + "oneironaut.page.wisp_lanterns.5": "Using similar principles, I've designed a device which captures, stores, and releases wisps, though it does not work on unstable wandering wisps. Capturing one of my own wisps consumes one amethyst shard from its battery. Capturing someone else's wisp costs half again the media it contains. To capture a wisp, I must simply use the device on it, assuming it has enough media and isn't already occupied.", + "oneironaut.page.wisp_lanterns.6": "When releasing a cyclic wisp, it is placed on the side of the block I use the item on. Projectile wisps are launched from my face, retaining their previous speed (but not direction). To discard a contained wisp, I need only use the item while crouching.", + "oneironaut.page.wisp_lanterns.7": "To initalize the device's media battery, I must use it on one of my own wisps, which will irretrievably consume it and set the battery's capacity to the wisp's stored media value, rounded up to the nearest dust. Should I wish to reset this (along with everything else about the device), I can simply place it in a crafting grid on its own.", + + "oneironaut.page.noosphere_materials.1": "A strange fluid which agitates media entering it, preventing crystal formation. Stimulates my mind in pleasing ways when I immerse myself in it.$(br2)I keep finding scraps of paper floating in it. Maybe if I looked hard enough, I could find something interesting.", + "oneironaut.page.noosphere_materials.2": "A rock which is primarily composed of media, somehow. Can be used to craft spell circle blocks.", + "oneironaut.page.noosphere_materials.3.title": "Pseudoamethyst", + "oneironaut.page.noosphere_materials.3": "A large crystal of media much like amethyst, but not quite the same. Produces a buzzing sensation under my fingers when I touch it, as if its media is stimulating the nerves. Breaking it without special care causes it to shatter into 1-4 pieces.", + "oneironaut.page.noosphere_materials.4": "The shards can be used to fuel spells, and yield slightly more energy than a normal amethyst shard. Can also be used to craft several interesting things.", + "oneironaut.page.noosphere_materials.5": "A solid form of media which is created when Thought Slurry freezes in a media-rich environment, or is caused to freeze by a hex.$(br)Its surface seems to have negative friction, causing anything sliding on it to accelerate indefinitely (albeit slowly).", + "oneironaut.page.noosphere_materials.6": "An extremely viscous mass of media, capable of very basic cognition, analagous to a slime mold. While it is normally quite lethargic, it uses a spell-like ability to attempt to ensnare anything that touches it.", + "oneironaut.page.slipway_hint.1": "The slipways, they must lead $(o)somewhere$(). Wisps do not simply manifest from nothing. No matter what I try, I cannot insert so much as a finger through that chaotic rift.$(br2)I'm going about this wrong. Perhaps rather than attempting to force my way through, I should be attempting to calm the storm.", + "oneironaut.page.slipway_hint.2": "A large amount of harmonious media may just do it...", + "oneironaut.page.slipway_hint.2.title": "Hmm...", + "oneironaut.page.noosphere_main.1": "I've made it.$(br)The realm beyond the slipways. The ambient media is overwhelming. My mind is screaming at me, telling me I shouldn't be here. But I must press on. This is the next step in the journey.", + "oneironaut.page.noosphere_main.2": "Every single thing I've examined here seems to be composed largely of media, similar to conjured matter, but orders of magnitude denser.$(br)$(o)Even the air is media. How am I breathing?$(br2)$(l)How can I even exist here?", + "oneironaut.page.rod.1": "I've discovered that I can craft a peculiar sort of casting item, using the strange shards found in ancient cities.$(br)This item is unusual in that it casts its imbued hex twenty times per second while I concentrate on it, until it either mishaps or I cast Finale or Encore. This initiates a cooldown period, usually about one second.", + "oneironaut.page.rod.2": "The echo shards seem to bear some bizarre form of media, with a tendency to loop back on itself while retaining a bit of the previous cast.", + "oneironaut.page.rod.3": "Acts just like $(l:patterns/spells/hexcasting)the spells used to program conventional casting items$(). Costs 10 Charged Amethyst.", + "oneironaut.page.rod.4": "When cast with a Reverberation Rod, returns my look vector from when I started the current cast loop.", + "oneironaut.page.rod.5": "When cast with a Reverberation Rod, returns my eye position from when I started the current cast loop.", + "oneironaut.page.rod.6": "When cast with a Reverberation Rod, returns the timestamp from when I started the current cast loop.", + "oneironaut.page.rod.7": "Accepts a positive integer. When cast with a Reverberation Rod, delays the current cast loop's next cast until that many twentieths of a second have passed.", + "oneironaut.page.rod.8": "When cast with a Reverberation Rod, forcibly halts the current cast loop.", + "oneironaut.page.rod.9": "Accepts a positive integer. Halts the current cast loop but also reduces the cooldown period from 1 second to ((1/20) * number) seconds. Cooldown due to mishap is unaffected.", + "oneironaut.page.rod.10": "Accepts a non-list iota, and stores it inside the current cast loop. It will be lost when the cast loop ends.", + "oneironaut.page.rod.11": "Returns the iota stored in the current cast loop. Defaults to NULL.", + "oneironaut.page.rod.12": "Returns a boolean corresponding to whether the current cast is making use of a rod.", + "oneironaut.page.rod.13": "As Williams' Gambit, but can be cast from non-rod sources while a rod is in use.", + "oneironaut.page.rod.14": "As Williams' Reflection, but can be cast from non-rod sources while a rod is in use.", + "oneironaut.page.rod.15": "Returns whether the caster is currently using a rod, regardless of the current cast is from that rod.", + "oneironaut.page.rod.16": "Echo shards can also be used in the construction of a staff, though it seems the only special property of such a staff is making sculk sounds.", + "oneironaut.page.miscpatterns.1": "I've found a couple patterns designed to interact with item frames. Nothing fancy, but they're nice utility for things like controlling my spell circles.$(br2)Additionally, it seems Sorter's Purification works on them just fine, so my attempts to find a dedicated frame-item pattern were pointless.", + "oneironaut.page.miscpatterns.2": "Accepts an item frame entity, and returns its rotation, from 0 to 7.", + "oneironaut.page.miscpatterns.3": "Accepts an item frame entity and an integer from 0 to 7, and sets its rotation to the number. Costs a negligible amount of media.", + "oneironaut.page.miscpatterns.4": "As $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l), but also accepts a list of entity type iotas. Any entity whose type is not present in the list will be ignored. Costs an amount of media slightly less negligible than that of the aforementioned pattern.", + "oneironaut.page.miscpatterns.5": "Returns a random number between 0 and 1, with a gaussian distribution.", + "oneironaut.page.miscpatterns.1.formerlink": "$(l:hexal:patterns/types#hexal:type/block_item)", + "oneironaut.page.super_budding.1": "I've found that the amethyst-like material native to the noosphere can be imbued with a villager's mind, much like normal amethyst. What's more, the block that results from this process produces significantly more media than normal Budding Amethyst, and it can be picked up and moved if one takes special care.", + "oneironaut.page.super_budding.2": "Pseudoamethyst requires a stronger mind than normal amethyst, but the cost is well worth it.", + "oneironaut.page.super_budding.3": "Additionally, when cultivated in the Noosphere, budding pseudoamethyst will produce pseudoamethyst clusters rather than conventional amethyst. These clusters will of course yield pseudoamethyst shards, as well as an unstable form of pseudoamethyst containing about four times as much media as the regular shards. Unfortunately, due to this instability, it cannot be directly converted into usable media. However, it can be converted into many other forms of media crystal by simply bringing the two items together.", + "oneironaut.page.super_budding.4": "It seems to react to my gaze, as if endowed with some form of perception.", + "oneironaut.page.super_budding.5": "The media generation rate of budding pseudoamethyst is such that even when immersed in thought slurry to inhibit crystal formation, it will still yield usable amounts of media. While the overall supply is nigh-endless, the amount accessible to any given action is quite small, like an inch-deep ocean a million miles across. However, due to this minimal depth, the media will dissipate rapidly before reaching my staff when accessed from afar, such as when recharging an item.", + "oneironaut.page.super_budding.6": "Constantly provides about a tenth of an amethyst dust worth of media. While I $(o)can$() hold several of these in order to gain access to more media, this results in rapidly-diminishing returns. $(br)I should be careful not to craft with the wrong phial.", + "oneironaut.page.super_budding.7": "I can also jam one into a trinket in order to replace its media supply with an inexhaustible phial, giving it access to the endless media within. However, it cannot use any media other than that provided by the phial.", + "oneironaut.page.super_budding.8": "Writes a hex to the bottomless trinket in my other hand. Costs ten charged amethyst.", + "oneironaut.page.idea_inscription.1": "As the noosphere is a realm of thought, it stands to reason that it could be used for information storage. These patterns do just that, inscribing an iota into the noosphere and reading it back (regardless of my current dimension). They can also store iotas inside the minds of other beings, assuming their thoughts are as... $(o)unfettered$() as my own. In the notation for these patterns, \"key\" refers to any vector or compatible entity.", + "oneironaut.page.idea_inscription.2": "While this is quite versatile, the noosphere's ambient media is constantly in motion, and as such any iota stored in it will eventually be lost, similar to if I poured hot water into the ocean. It seems to take about an hour before such information decays into unusable garbage.$(br2)It seems that $(l:greatwork/akashiclib)Akashic Libraries$(/l) work based on similar principles, where the shelves serve as insulation to prevent decay.", + "oneironaut.page.idea_inscription.3": "Accepts a valid key and any iota, and stores it in the corresponding location. Costs a quarter of an amethyst dust.", + "oneironaut.page.idea_inscription.4": "Accepts a valid key, and returns the corresponding iota. Costs one-eigth of an amethyst dust.", + "oneironaut.page.idea_inscription.5": "Accepts a valid key, and returns when the corresponding iota was inscribed, or -1. Costs no media.", + "oneironaut.page.idea_inscription.6": "Accepts a valid key and a player, and returns whether the corresponding iota was inscribed by that player. Costs no media.", + "oneironaut.page.sentinel_detection.1": "By combining the noosphere's pseudoamethyst with the organic sensory apparatus native to the deep dark, I've discovered a way to detect fluctuations in ambient media. This new form of sensor detects the presence of $(l:patterns/spells/sentinels)Sentinels$(/l) within approximately 16 meters, and outputs a redstone signal based on its proximity to the closest one. Comparators attached to it will output a signal if the sentinel in question is particularly powerful.", + "oneironaut.page.sentinel_detection.2": "$(o)I'm sure the warden won't mind.$()", + "oneironaut.page.sentinel_detection.3": "Additionally, this sensor can be incorporated into a Cleric Impetus, allowing it to activate when a sentinel is placed in the area (albeit with a lower range than the plain sensor). I've dubbed this contraption a Seer Impetus. Though it no longer responds to redstone, the circle's hex will start with a reference to the owner of the triggering sentinel on the stack.$(br)Due to the media interference produced by the cast, the impetus cannot detect sentinels it places itself.", + "oneironaut.page.sentinel_detection.4": "As the sensor does not care whose sentinel it sees, I should take care to avoid allowing my trap circles to target me.", + "oneironaut.page.sentinel_detection.5": "Accepts a vector and a player, and returns either the distance from the vector to the target player's sentinel or NULL. Costs a negligible amount of media.", + "oneironaut.page.sentinel_detection.6": "Conjures a fleeting sensor at the target coordinates, which \"listens\" to the patterns in the ambient media to seek out the telltale signature of a sentinel.", + "oneironaut.page.detection_shielding.1": "While conventional invisibility potions work just fine for fooling human senses, they are useless against hexes, so I've yet to find any method of making oneself completely undetectable. However, this spell I've discovered allows me to get closer to that goal, scattering media around a creature like chaff, in order to interfere with hex-based detection methods.", + "oneironaut.page.detection_shielding.2": "Accepts a living entity and a number ($(o)n$()), and shields the entity from hex-based detection for $(o)n$() seconds. Costs two amethyst dust per second.", + "oneironaut.page.detection_shielding.3": "Also drains media from the entity at a rate of 1/10 of a dust per second, as the shielding effect collects it to produce the chaff.$(br2)I should be careful with what I apply this to, as creatures with no loose media of their own will have their very minds fractured in order to provide this media.", + "oneironaut.page.detection_shielding.4": "While this is very effective at blocking effects such as $(l:patterns/basics#hexcasting:raycast/entity)Scout's Distillation$(/l) and the various forms of $(l:patterns/entities#hexcasting:zone_entity/animal)Zone Distillation$(/l), it has no effect on $(l:patterns/entities#hexcasting:get_entity)Entity Purification$(/l) variants, as those already have a fairly precise idea of where you are. What's more, the chaff itself produces an energy signautre, which, while dim, is detectable by a specialized pattern.", + "oneironaut.page.detection_shielding.5": "Accepts a vector and a number, and returns a list of unit vectors pointing from the initial vector to shrouded entities within a radius defined by the number.", + "oneironaut.page.detection_shielding.6": "I've also discovered a spell which applies normal Invisibility. Functions just like the normal $(l:patterns/great_spells/zeniths)Zeniths$(/l), and costs one amethyst dust per three seconds.", + "oneironaut.page.raycast_assailant.1": "By \"threading\" pseudoamethyst through a block, I can create something which causes any raycast (including entity raycasts) that hits or passes through it to return null, as if it didn't hit anything.", + "oneironaut.page.raycast_assailant.3": "Strangely, combining pseudoamethyst with obsidian in the same way does not confer anti-raycast properties, instead making it nigh-indestructible to hexes. However, the resultant block loses much of its durability, being no stronger than common stone (though it retains its blast resistance).", + "oneironaut.page.mindrender.1": "I've read legends of a particularly macabre form of weapon known as a Mind Render. This weapon, sometimes used by ancient hexcasters, is capable of severing a creature's very thoughts, dealing damage that bypasses all known forms of protection. What's more, if this damage leaves the target just on the brink of true death, it will fall into a vegetative state, never to recover. I shudder to think of what the ancients may have used this property for...", + "oneironaut.page.mindrender.2": "Accepts an item or item frame bearing the Sharpness enchantment, and converts it into Mind Render of the same level. Cost is based on enchantment level, and increases by 50%% if the item is a book.", + "oneironaut.page.lore.treatise1.1": "While it is possible to produce most iotas on the fly, there are cases where one finds it impractical, or simply cannot (such as very large and precise numbers, or entity references), and as such must obtain the desired iota in another way. Reading it from a Focus or a similar item works just fine, but in many cases this would require a third hand, which I do not have. Other methods of fetching iotas from external locations have their own limitations as well.", + "oneironaut.page.lore.treatise1.2": "In cases where no external reference method would work well, one must insert the desired iota into the hex itself. This may seem counterintuive to some, what with the conventional wisdom being that a hex is a list of patterns, but one must remember that patterns are just another type of iota, which $(l:patterns/meta#hexcasting:eval)Hermes' Gambit$(/l) (and similar patterns) works particularly well with.", + "oneironaut.page.lore.treatise1.3": "While you can't just shove a number into the list and expect it to be pushed to the stack as if it was a $(l:patterns/numbers)Numerical Reflection$(/l) pattern, there are ways around this.$(br2)The simplest (and least reliable) is the $(l:patterns/patterns_as_iotas#hexcasting:escape)Consideration$(/l) pattern. Similar to its use when casting freehand, anything that comes immediately after it in a list will be escaped and pushed to the stack when it might otherwise be executed, preventing mishaps due to execution of non-patterns.", + "oneironaut.page.lore.treatise1.4": "However, when you're more than one exeuction deep in a hex (such as with nested conditional logic, or loops), the number of Considerations required to properly escape an iota increases exponentially, making it unreliable when used in anything that could conceivably be executed by another hex.", + "oneironaut.page.lore.treatise1.4.link": "relevant xkcd", + "oneironaut.page.lore.treatise1.5": "A far more reliable method of escaping iotas is to use $(l:patterns/patterns_as_iotas#hexcasting:open_paren)Introspection$(/l) and $(l:patterns/patterns_as_iotas#hexcasting:close_paren)Retrospection$(/l). When a pattern list is being evaluated and an Introspection is encountered, everything up to (but not including) its paired Retrospection is escaped and pushed to the stack in a list, regardless of iota type. You can then work with this list as you see fit, such as using $(l:patterns/lists#hexcasting:splat)Flock's Disintegration$(/l) to push all of its contents to the stack on their own.", + "oneironaut.page.lore.treatise1.6": "If the contents of your list looks like this:$(br2)Introspection$(br)Any iota(s)$(br)Retrospection$(br)Flock's Disintegration$(br2)the state of the stack after all that is executed will simply be all the iotas that were contained within Introspection and Retrospection.", + "oneironaut.page.lore.treatise2.1": "When one wishes to impart motion upon something, the standard method is to use $(l:patterns/spells/basic#hexcasting:add_motion)Impulse$(/l). However, this can get prohibitively expensive when one wishes to make something move extremely quickly, as the cost increases exponentially with the length of the vector. This can be mitigated by simply using a magnitude-1 Impulse many times over on a single target, turning the overall cost from n^2 to 2n-1, where n is the magnitude of the vector.", + "oneironaut.page.lore.treatise2.2": "The easiest way to accomplish this is with $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l), by giving it a list containing many instances of the same entity reference. There are other (and often better) methods, of course, but aside from simply drawing the patterns over and over, they generally fall under the broader topic of loops, which is outside the scope of this document.", + "oneironaut.page.lore.treatise3.1": "While $(l:patterns/meta#hexcasting:for_each)Thoth's Gambit$(/l) is perfectly-suited for casting something on many targets at once, using to it cast something on one target many times can get awkward, and short of completely halting the hex, it is not possible to add or remove targets once Thoth has begun executing.$(br)To get around these limitations, one simply needs to use a different sort of loop.", + "oneironaut.page.lore.treatise3.2.header": "While Loop", + "oneironaut.page.lore.treatise3.2": "A While loop is a loop that continues executing until some condition is fulfilled, such as an entity's target velocity having been reached. The most common way to accomplish this is creating a pattern list which duplicates and executes the top iota on the stack, duplicating it, then executing it. On its own this simply produces an infinite loop which does nothing but mishap.", + "oneironaut.page.lore.treatise3.3": "However, by adding actual functionality and a bit of boolean logic, you can create a proper while loop. The code for the aforementioned infinite loop is as follows:$(br)Introspection$(br)Gemini Decomposition$(br)Hermes' Gambit$(br)Retrospection$(br)Gemini Decomposition$(br)Hermes' Gambit$(br2)By adding logic that changes whether the inner Hermes' Gambit gets evaluated based on a condition, you can make it stop once that condition is fulfilled.", + "oneironaut.page.lore.treatise3.4.header": "Loop Unrolling", + "oneironaut.page.lore.treatise3.4": "A more complex form of loop is an unrolled loop. Like Thoth's Gambit, it's created with a fixed number of iterations which can't easily be added to, but Charon's Gambit can be used to halt it early if need be. It also has the advantage that when done competently, it only ever produces one or two levels of recursion depth (not counting anything executed in the body of the loop). Loop unrolling is accomplished by creating a pattern list you want to repeat, duplicating it many times, and then combining all those lists into one.", + "oneironaut.page.lore.treatise3.5": "The simplest way to accomplish this is to use $(l:patterns/stackmanip#hexcasting:duplicate)Gemini Decomposition$(/l) and then $(l:patterns/lists#hexcasting:add)Combination Distillation$(/l), resulting in a doubled pattern list. This method can be repeated to achieve greater powers of 2, and only produces a single level of recursion depth, when the list is executed. A more flexible method is to use $(l:patterns/stackmanip#hexcasting:duplicate_n)Gemini Gambit$(/l) to produce $(o)n$() copies of the list, then gathering $(o)n-1$() instances of the pattern for Combination Distillation into one list and executing it, thus merging all the copies of your original list into one.", + "oneironaut.page.lore.treatise4.1": "Some of my, erm, \"colleagues\" have trouble transcribing long hexes.$(br)\"This is too long!\"$(br)\"The grid doesn't have enough space!\"$(br)$(bold)Skill issue$(), I say. It's not like a hex is immutable once you've drawn the last Retrospection. All you need to do is save the work-in-progress hex to a focus (though you should make sure to conserve enough grid space to actually do this).", + "oneironaut.page.lore.treatise4.2": "Then you just use the $(l:patterns/lists)list manipulation$(/l) patterns to combine it with the other parts once you're done.$(br2)You don't even need to use multiple foci, you can just append one part to the last one as you finish them, and then save that to one focus. The multiple-focus method makes it easier to debug your finished hex, but as far as I know that's its only benefit compared to the one-focus method.", + "oneironaut.page.lore.science1.1": "$(o)\"What is this and how do I get rid of it?\"$()$(br)A question asked by many people upon their first encounter with a slipway. I don't have a good answer for the second part of the question, but I believe I can provide a satisfactory response to the first.$(br)From what I can tell, a slipway is a tiny hole in space, the other side of which is the media realm known as the Noosphere.", + "oneironaut.page.lore.science1.2": "The wisp-like phenomena that emerge from it are formed when the vast ambient media of the Noosphere attempts to rush through the hole (much like gas leaking into a near-vacuum) and gets tangled in a manner similar to how wisp-summoning spells weave the media which they consume.", + "oneironaut.page.lore.science1.3": "Additionally, it seems that slipways have a sort of barrier over the entrance, preventing any matter from passing through. If this barrier could be pierced, and the hole expanded, the slipway would become capable of absorbing matter into the noosphere. It would also cease producing wisps, as the media coming through would do so far more slowly, and thus not be agitated and tangled. If one were to attempt this, they would have to be careful not to widen it too greatly, or they would risk the surrounding area being absorbed into the noosphere.", + + "not.real.translation.key.1": "TODO: Add a structure that is implied to be part of a laboratory that has been ripped from the overworld by an engorged gateway", + + "oneironaut.page.lore.science2.1": "What a strange place. The liquid that comprises the ocean here is not much denser than water, but small islands float in it despite being comprised of a rock similar in density to ordinary basalt. What's more, everything seems strangely ephemeral, like a dream. But how could this be a dream, when I am more lucid than I've ever been before?", + "oneironaut.page.lore.science2.2": "It seems this great lucidity is a product of the ambient media present here, lubricating my thoughts. These media levels even exceed those present at the cores of wisps, reducing their innate decay to infinitesimal levels. Interestingly, this has no effect on wisps which bear an imprint of someone else's soul, preventing me from using wisps as indefinite truename storage.$(br)This ambient media even leaks through sufficiently-large dimensional rifts, preserving wisps on the other side as long as they remain within a certain range of the rift.", + "oneironaut.page.lore.science3.1": "This crystal is quite fascinating. An object formed from pure media, orders of magnitude denser than conventional conjured blocks, or even the condensed media crystals that some of my colleagues at the library have been studying. It doesn't even contain the trace amounts of silicon dioxide found in amethyst of similar media density. And when I leave it unattended for a while, dust collects in fractalline patterns, as if the crystal bears a passive spell-like effect.", + "oneironaut.page.lore.science3.2": "Examining it more thoroughly under a microscope, it seems that these fractals extend beneath the surface of the crystal, and are constantly shifting in a consistent pattern. Could this be a time crystal?", + "oneironaut.page.glow_ambit.1": "Despite diligent research, the source of the special properties of other hexcasters' entity references has eluded me. However, I've discovered a way to bestow one such property upon other beings, at least temporarily (and flashily).$(br)This spell allows casters to affect creatures from great distances just like the infinite-range aspect of a player reference. However, one must still be close to the target in order to perform the initial application.", + "oneironaut.page.glow_ambit.2": "Accepts a living entity, and allows it to be accessed from anywhere for one minute. Has a base cost of one amethyst shard, plus one additional shard per application before allowing it to expire.", + "oneironaut.page.glow_ambit.3": "It seems that this effect functions by causing the target to emit some sort of psionic resonance, strong enough to cause its outline to be \"visible\" through all manner of barriers (perhaps hexcasters naturally produce this same resonance, but much subtler?). However, this glow is distinct from that induced by spectral arrows and similar, so don't bet on things to detect that working for this.", + "oneironaut.page.soulprints.1": "A soulprint is an iota similar to my player reference in that it represents me, but significantly more limited in use. It is impossible for anyone to obtain my soulprint without my involvement, though it is not subject to the same write-restrictions as ordinary player references.$(br2)Interestingly, soulprints are valid keys for $(l:patterns/idea_inscription)Idea Inscription$(/l).", + "oneironaut.page.soulprints.2": "Returns my soulprint, mishapping if cast using anything other than a staff. Costs a negligible amount of media.", + "oneironaut.page.soulprints.3": "Invisibly engraves my soulprint onto the item in my other hand, or erases it if it is already there. Costs 1 amethyst dust.$(br)I should be careful to seal any focuses or similar that I sign, as acquiring an unsealed signed focus may allow someone to impersonate me, and Erase Item gets rid of the signature.", + "oneironaut.page.soulprints.4": "Accepts a soulprint, and checks if the item in my other hand is engraved with it. Returns true if so, false otherwise. Costs a negligible amount of media.", + "oneironaut.page.hover_elevator.1": "By combining materials native to the noosphere with certain ingredients associated with levitation, I can create a device which produces streams of propulsive energy capable of carrying me along them, with minimal risk of falling. To use it, it must be placed facing directly towards another one (which must be facing it in turn). Once I've done this, both ends must be activated with a", + "oneironaut.page.hover_elevator.2": "redstone signal, and the energy stream will form between the paired emitters, assuming they are within range of each other (64 meters horizontally, or 128 vertically). By stepping into the stream, I will be held in place until I look towards either end of the stream, at which point I will be accelerated in that direction until I hit a maximum speed proportional to how closely my vision parallels the stream. Crouching causes the stream to hold me in place regardless of my gaze.", + "oneironaut.page.hover_elevator.3": "$(o)Best to don some long fall boots the first time I try these.", + "oneironaut.page.hover_elevator.meme":"$(o)Bad and naughty hexcasters get sent to the hover cube.", + "oneironaut.page.hover_elevator.4": "Additionally, I can create a repeater capable of extending the range of the emitters when placed between them, such that the stream can continue on as if it had just left the emitter. Of course, such an extension requires more powerful components, and even then the stream can only be extended by three repeaters before it becomes too unstable to form.", + "oneironaut.page.hover_elevator.5": "Fortunately, this device seems to be rather immaterial for some reason, and I can pass straight through it without having to carefully twist around it in the stream.$(br)$(o)No, it does not make the stream pause for a moment before continuing.", + "oneironaut.page.flayrevival.1": "I've long been frustrated with the uselessness of the empty husk you get after flaying a villager (or nearly killing something using $(l:items/mindrender)Mind Render$(/l)). While there $(o)are$() a few tasks for which they can conduct themselves adequately, these are largely things which even simple beasts would be suitable for. Fortunately, I've discovered a spell capable of bestowing some measure of cognition upon these husks.", + "oneironaut.page.flayrevival.2": "Accepts a flayed mob, and creates an artifical pseudo-mind to inhabit its body. Costs 16 charged amethyst when used on a villager or allay, or 10 amethyst shards for anything else.", + "oneironaut.page.flayrevival.3": "While these pseudo-minds are capable of moving their bodies around as if they were their original inhabitants, they are too simple to be called truly sapient, even with the rather loose definition of the term that must be used when applying it to villagers. As such, any villager \"restored\" in this manner loses any professional experience it had before, and cannot gain such experience ever again.", + "oneironaut.page.flayrevival.4": "They do, however, regain their ability to reproduce, with any children they produce being untainted by my craft.$(br2)I'm not sure why the restored villagers suddenly gain an affinity for green clothing, but at least it serves as a good indicator of which villagers will be of little further use.", + "oneironaut.page.monkfruit.1": "I've discovered that using the $(l:patterns/spells/blockworks#hexcasting:edify)Edify Sapling$(/l) spell on a Sweet Berry Bush produces a rather interesting plant. It is much like the shrub it mutates from, however its thorns are imbued with a media field which siphons the minds of pricked creatures into the plant in order to grow. It can grow without this (albeit slowly), though it still requires minds nearby to provide small amounts of media.", + "oneironaut.page.monkfruit.2": "The fruit that this bush produces is quite sweet, and can be processed into sugar. Additionally, it releases bits of media during digestion, which seek out rechargeable items on my person. I should be wary of the thorns while picking the fruit.", + "oneironaut.page.monkfruit.3": "Twigs sheared off of the mature bush remain dangerous, and can be used to craft a rather ominous blade.$(br2)This blade acts much like a sword enchanted with low-level $(l:items/mindrender)Mind Render$(/l), though it is far more precise, able to rend minds while causing minimal collateral damage to the flesh. I can of course use it more like a conventional blade if I like, but this does risk killing the target outright.", + "oneironaut.page.monkfruit.4": "$(o)It's not rocket science.$()", + "oneironaut.page.library_card.1": "In my search for a truly universal data storage method, I have designed a small device which allows me to read from Akashic Records in other dimensions while on my person. I need only write a spatial imprint to the item, and any future akashic read operations will be redirected to the stored dimension.$(br)Unfortunately, it does not allow me to $(o)write to$() them, but this is certainly better than nothing.", + "oneironaut.page.library_card.2": "$(o)It seems to exude some kind of sticky gloop.$()", + "oneironaut.page.heimdall.1": "A strange pattern that appears to be a variant of Hermes' Gambit. Accepts a spatial imprint and an executable iota, and attempts to cast the iota in the corresponding dimension.", + "oneironaut.page.heimdall.2": "While it does allow me to cast across dimensions, it is not the perfect solution that I have been searching for. For one thing, it does not work when cast via more esoteric methods, such as wisps. Additionally, media-consuming patterns cast in this way have their cost increased by 25%%. Finally, since I am not physically present in the target dimension, I need to use my Greater Sentinel (or other ambit-boosting effects) in order to affect anything in there.", + "oneironaut.page.heimdall.3": "While I can simply rely on my sentinel when using it in a spell circle, I have also devised an apparatus that allows a portion of the circle's ambit to extend into the target dimension.", + "oneironaut.page.heimdall.4": "In order to use them, I must place them at all eight corners of a cuboid, and direct the circle's media wave over them. This cuboid defines the circle's ambit in the target dimension, scaled accordingly. Will not function if their positions do not form a perfect cuboid, or if there are not exactly eight of them. In order to use them again, I must direct the media wave over them all again.", + "oneironaut.page.heimdall.5": "Accepts a spatial imprint, and moves my sentinel to its scaled coordinates in the corresponding dimension. Costs one amethyst shard. Mishaps if I do not currently have a sentinel.", + "oneironaut.page.slipwaymanipulation.1": "While slipways are common enough that I do not lack for wisp fuel, they are usually not in places where I feel compelled to settle, and they almost never appear in close proximity to each other. To this end, I have devised a sort of explosive charge capable of piercing spacetime itself, creating a brand-new slipway (or a stable portal, if used in the noosphere).$(br)The explosion is relatively small in this dimension, but it releases a dangerous amount of raw media, capable of piercing through practically any defense not specifically warded against hexes.", + "oneironaut.page.slipwaymanipulation.2": "The charge's physical structure directs the explosion along the hyperdimensional axis necessary to pierce spacetime, but I must still provide the vast amount of energy required. Approximately 200,000 Amethyst Dust worth of media, applied via Media Infusion, should do it. Perhaps I should draw on an existing slipway for this.", + "oneironaut.page.slipwaymanipulation.3": "In case I ever need to deactivate a slipway without removing it altogether, I have created a device that captures and neutralizes the overwhelming majority of media coming through it, preventing the formation of wandering wisps (as well as significantly reducing the visual effects associated with the slipway).", + "oneironaut.page.slipwaymanipulation.4": "To use it, I must simply place it directly under a slipway and apply a redstone signal.", + + "oneironaut.page.deep_noosphere_main.1": "The noosphere is an inhospitable waste, but this place is actively dangerous. The fluid pressure is one thing, but the media is so energetic that it eats straight through most matter, and causes minds to fray like poorly-woven cloth.$(br2)If I am to survive here, I will require novel methods.", + "oneironaut.page.deep_noosphere_main.2": "While this place is extremely dangerous, it does have some useful properties. For one thing, distance is scaled by a factor of sixteen, so traversing one meter in here is equal to sixteen in most other realms.", + + "this.is.a.comment.5": "Advancements--------------------------------------------------------------------------------------------", + "oneironaut.advancements.noosphere.enter": "A Realm of Thought and Dream", + "oneironaut.advancements.noosphere.enter.description": "Enter the Noosphere", + "oneironaut.advancements.noosphere.find_tower": "A Timeless Classic", + "oneironaut.advancements.noosphere.find_tower.description": "Discover the tower of an unknown hexcaster", + "oneironaut.advancements.noosphere.find_media_lab": "Crystallized", + "oneironaut.advancements.noosphere.find_media_lab.description": "Discover a grim experiment", + "oneironaut.advancements.noosphere.find_garden": "Stranded", + "oneironaut.advancements.noosphere.find_garden.description": "Discover an unfortunate soul's last reminder of home", + "oneironaut.advancements.lore.root": "Oneironaut Lore", + "oneironaut.advancements.lore.root.description": "Memories lost to time", + "oneironaut.advancements.lore.treatise1": "Hexcaster's Memory #1", + "oneironaut.advancements.lore.treatise1.description": "Reflections on iota embedding", + "oneironaut.advancements.lore.treatise2": "Hexcaster's Memory #2", + "oneironaut.advancements.lore.treatise2.description": "Reflections on efficient use of Impulse", + "oneironaut.advancements.lore.treatise3": "Hexcaster's Memory #3", + "oneironaut.advancements.lore.treatise3.description": "Reflections on repeated patterns", + "oneironaut.advancements.lore.treatise4": "Hexcaster's Memory #4", + "oneironaut.advancements.lore.treatise4.description": "Reflections on long hexes", + "oneironaut.advancements.lore.science1": "Scientist's Memory #1", + "oneironaut.advancements.lore.science1.description": "Research into the nature of slipways", + "oneironaut.advancements.lore.science2": "Scientist's Memory #2", + "oneironaut.advancements.lore.science2.description": "Research into the properties of the Noosphere", + "oneironaut.advancements.lore.science3": "Scientist's Memory #3", + "oneironaut.advancements.lore.science3.description": "Research into the structure of pseudoamethyst", + "oneironaut.advancements.unflay": "Recycling!", + "oneironaut.advancements.unflay.description": "Surely you weren't going to just throw that away!", + "oneironaut.advancements.ouchie": "Ouch!", + "oneironaut.advancements.ouchie.description": "What did you expect?", + + "this.is.a.comment.6": "Mishaps--------------------------------------------------------------------------------------------", + "hexcasting.mishap.oneironaut:badcuboid.mismatch": "Supplied cuboids are dissimilar.", + "hexcasting.mishap.oneironaut:badcuboid.toobig": "Supplied cuboids are too big.", + "hexcasting.mishap.oneironaut:badcuboid.overlap": "Supplied cuboids overlap in the same dimension.", + "hexcasting.mishap.oneironaut:uninfusable": "Expected an infusable block at %s, but got %s.", + "hexcasting.mishap.oneironaut:nonoosphere": "Expected one end of the transfer to be a special dimension.", + "hexcasting.mishap.oneironaut:norod": "Expected to be cast from a Reverberation Rod.", + "hexcasting.mishap.oneironaut:norodremote": "Expected an active Reverberation Rod in hand.", + "hexcasting.mishap.oneironaut:missingenchant": "Expected %s to be enchanted with %s, but it is not.", + "hexcasting.mishap.oneironaut:unhappyslime": "The slime says \"%s\"", + "hexcasting.mishap.oneironaut:norequirediota": "The slime demands %s", + "hexcasting.mishap.oneironaut:requiresdifferententities": "an entity different from the target", + "hexcasting.mishap.oneironaut:nostaff": "%s expected to be cast using a staff.", + "hexcasting.mishap.oneironaut:nosentinel": "Could not find a sentinel to move.", + "oneironaut.mishap.noitemframe": "an item frame", + "oneironaut.mishap.invalidideakey": "a vector, player, or soulprint", + "oneironaut.mishap.unenlightenedtarget": "an enlightened player", + "oneironaut.mishap.notbrainswept": "a flayed villager", + "oneironaut.mishap.badentitykey": "an enlightened player or a flayed villager", + "oneironaut.mishap.nolistsallowed": "a non-list iota", + "oneironaut.mishap.entitytypelistplease": "a list of entity types", + "oneironaut.mishap.wrongsizelist": "List is improperly sized.", + "oneironaut.mishap.twovectorsplease": "List does not contain two vectors.", + "oneironaut.mishap.requiresflayedmob": "a flayed mob", + "hexcasting.mishap.invalid_value.class.oneironaut:imprint": "a spatial imprint", + "hexcasting.mishap.invalid_value.class.oneironaut:soulprint": "a soulprint", + + "this.is.a.comment.7": "Other---------------------------------------------------------------------------------------------", + "hexcasting.iota.oneironaut:dim": "Dimension", + "hexcasting.iota.oneironaut:uuid": "Soulprint", + "hexcasting.iota.oneironaut:uuid.label": "Soulprint of %s", + "biome.oneironaut.noosphere_sea": "Noosphere Sea", + "biome.oneironaut.deep_noosphere": "§5§kI should not be here.§r", + "text.oneironaut.clearIdeasResponse": "Cleared iota storage map.", + "effect.oneironaut.detection_resistance": "Media Shroud", + "effect.oneironaut.not_missing": "Uplifting Resonance", + "effect.oneironaut.rumination": "Rumination", + "effect.oneironaut.disintegration": "Subsumption", + "effect.oneironaut.disintegration_protection": "Obstinance", + "enchantment.oneironaut.overcast_damage": "Mind Render", + "itemGroup.oneironaut.oneironaut": "Oneironaut", + "oneironaut.tooltip.wispcapturedevice.haswisp": "Contains a wisp with %s dust and hex signature %s.", + "oneironaut.tooltip.wispcapturedevice.nowisp": "No wisp.", + "oneironaut.tooltip.wispcapturedevice.uninitialized": "Media reservoir has not been initialized.", + "text.oneironaut.lorem_ipsum": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + "oneironaut.tooltip.lich_media_amount": "Reservoir contains: %s/%s (%s)", + + "oneironaut.conceptmodifier.falsy": "Player Reference Modifier: Falsy", + "oneironaut.conceptmodifier.ref_comparison": "Player Reference Modifier: Comparison", + "oneironaut.conceptmodifier.gtp_splat": "GTP Drop Reduction", + "oneironaut.conceptmodifier.antierosion": "Erosion Protection", + "oneironaut.conceptmodifier.nobloodcast": "Bloodcast Protection", + "oneironaut.conceptmodifier.keepinv": "KeepInventory", + "oneironaut.conceptmodifier.totem": "Undying", + "oneironaut.conceptmodifier.attribute": "Attribute Modifier", + + "oneironaut.conceptmodifier.attribute.overlay.positive": "Increases %s by %s%%", + "oneironaut.conceptmodifier.attribute.overlay.negative": "Reduces %s by %s%%", + + "oneironaut.conceptmodifier.nocore": "No concept core detected. Modifier will be nonfunctional until broken and replaced on a core.", + "oneironaut.conceptmodifier.nomodifier": "Concept modifier could not be initialized.", + "oneironaut.conceptmodifier.lens.potency": "Potency: %s", + "oneironaut.conceptmodifier.lens.comparison": "Compares as: %s" +} diff --git a/projects/1.20/assets/oneironaut/oneironaut/lang/zh_cn.json b/projects/1.20/assets/oneironaut/oneironaut/lang/zh_cn.json new file mode 100644 index 000000000000..bd2271d9d139 --- /dev/null +++ b/projects/1.20/assets/oneironaut/oneironaut/lang/zh_cn.json @@ -0,0 +1,370 @@ +{ + "this.is.a.comment.1": "Pattern names--------------------------------------------------------------------------------------------", + "hexcasting.action.oneironaut:getdim1": "空间之精思", + "hexcasting.action.oneironaut:getdim2": "空间之精思,第二型", + "hexcasting.action.oneironaut:getdim/overworld": "家园之精思", + "hexcasting.action.oneironaut:getdim/nether": "狱界之精思", + "hexcasting.action.oneironaut:getdimheight": "阿特拉斯之分解", + "hexcasting.action.oneironaut:getdimscale": "空程之纯化", + "hexcasting.action.oneironaut:dimteleport": "智识门径", + "hexcasting.action.oneironaut:infusemedia": "媒质灌注", + "hexcasting.action.oneironaut:swapspace": "空间互换", + "hexcasting.action.oneironaut:craftrod": "指挥法杖", + "hexcasting.action.oneironaut:getrodlook": "指挥棒之精思", + "hexcasting.action.oneironaut:getrodpos": "指挥棒之精思,第二型", + "hexcasting.action.oneironaut:getrodstamp": "节拍器之精思", + "hexcasting.action.oneironaut:delayrod": "节拍器之策略", + "hexcasting.action.oneironaut:haltrod": "终曲", + "hexcasting.action.oneironaut:resetrod": "安可", + "hexcasting.action.oneironaut:readrodram": "威廉姆斯之精思", + "hexcasting.action.oneironaut:writerodram": "威廉姆斯之策略", + "hexcasting.action.oneironaut:readrodramremote": "威廉姆斯之精思,第二型", + "hexcasting.action.oneironaut:writerodramremote": "威廉姆斯之策略,第二型", + "hexcasting.action.oneironaut:queryrod": "指挥家之精思", + "hexcasting.action.oneironaut:rodloopactive": "指挥家之精思,第二型", + "hexcasting.action.oneironaut:craftbottomlesstrinket": "制作无底缀品", + "hexcasting.action.oneironaut:writeidea": "刻印思绪", + "hexcasting.action.oneironaut:readidea": "收回思绪", + "hexcasting.action.oneironaut:readideatime": "元数据之纯化", + "hexcasting.action.oneironaut:readideawriter": "元数据之馏化", + "hexcasting.action.oneironaut:readsentinel": "检视哨卫", + "hexcasting.action.oneironaut:resistdetection": "隐匿遮罩", + "hexcasting.action.oneironaut:detectshroud": "辨察遮罩", + "hexcasting.action.oneironaut:circle": "圆", + "hexcasting.action.oneironaut:applymindrender": "赋能意识撕裂者", + "hexcasting.action.oneironaut:reviveflayed": "灌注精神", + "hexcasting.action.oneironaut:advanceautomaton": "质胞生成", + "hexcasting.action.oneironaut:applynotmissing": "扬升共振", + "hexcasting.action.oneironaut:getsoulprint": "灵魂印记之精思", + "hexcasting.action.oneironaut:signitem": "签印物品", + "hexcasting.action.oneironaut:checksignature": "签印之纯化", + "hexcasting.action.oneironaut:extradimensionaleval": "海姆达尔之策略", + "hexcasting.action.oneironaut:shiftsentinel": "挪移哨卫", + "hexcasting.action.oneironaut:erosionshield": "稳定物质", + + "this.is.a.comment.2": "Block/Item names--------------------------------------------------------------------------------------------", + "item.oneironaut.pseudoamethyst_shard": "伪紫水晶碎片", + "item.oneironaut.shifting_pseudoamethyst": "易形伪紫水晶", + "item.oneironaut.thought_slurry_bucket": "思维浆液桶", + "item.oneironaut.reverberation_rod": "回响之杖", + "item.oneironaut.endless_phial": "无穷媒质之瓶", + "item.oneironaut.bottomless_trinket": "无底缀品", + "item.oneironaut.echo_staff": "回响法杖", + "item.oneironaut.beacon_staff": "科技法杖", + "item.oneironaut.spoon_staff": "勺子", + "item.oneironaut.pigment_flame": "火焰染色剂", + "item.oneironaut.pigment_echo": "回响染色剂", + "item.oneironaut.pigment_noosphere": "智识染色剂", + "item.oneironaut.pigment_frenzyflame": "狂热染色剂", + "item.oneironaut.memory_fragment": "记忆碎片", + "item.oneironaut.memory_fragment.all": "似乎我已经集齐了这些晶体中所有我能找到的记忆……", + "item.oneironaut.wisp_capture_device": "咒灵牧织器", + "item.oneironaut.mind_scalpel": "突触手术刀", + "item.oneironaut.monkfruit": "修道果", + "item.oneironaut.monkfruit_cooked": "熟修道果", + "item.oneironaut.hexjam": "咒术果酱", + "item.oneironaut.rending_thorns": "裂识荆棘", + "item.oneironaut.library_card": "阿卡夏借书证", + + "block.oneironaut.noosphere_gate": "神秘裂口", + "block.oneironaut.pseudoamethyst_block": "伪紫水晶块", + "block.oneironaut.pseudoamethyst_cluster": "伪紫水晶簇", + "block.oneironaut.pseudoamethyst_bud_small": "小型伪紫水晶芽", + "block.oneironaut.pseudoamethyst_bud_medium": "中型伪紫水晶芽", + "block.oneironaut.pseudoamethyst_bud_large": "大型伪紫水晶芽", + "block.oneironaut.thought_slurry": "思维浆液", + "block.oneironaut.thought_slurry_flowing": "流动的思维浆液", + "block.oneironaut.noosphere_basalt": "智识界玄武岩", + "block.oneironaut.wisp_lantern": "咒灵灯笼", + "block.oneironaut.wisp_lantern_tinted": "遮光咒灵灯笼", + "block.oneironaut.super_budding": "伪紫水晶母岩", + "block.oneironaut.sentinel_sensor": "哨卫探测器", + "block.oneironaut.raycast_blocker": "反射线追踪板岩", + "block.oneironaut.raycast_blocker_glass": "反射线追踪玻璃", + "block.oneironaut.sentinel_trap": "探察促动石", + "block.oneironaut.circle": "§0§o圆", + "block.oneironaut.hex_resistant_block": "咒术防护黑曜石", + "block.oneironaut.media_ice": "贤能智冰", + "block.oneironaut.media_ice_frosted": "暂态贤能智冰", + "block.oneironaut.media_gel": "精神原质团", + "block.oneironaut.cell": "失协精神", + "block.oneironaut.wisp_battery": "咒灵编织器", + "block.oneironaut.decorative_wisp_battery": "初等咒灵编织器", + "block.oneironaut.hover_elevator": "咒术师的悬浮桥链", + "block.oneironaut.hover_repeater": "悬浮桥链中继器", + "block.oneironaut.monkfruit_bush": "修道果丛", + "block.oneironaut.spacebomb": "质道蓄爆器", + "block.oneironaut.extradimensional_border": "跨维度锚点", + "block.oneironaut.slipwaysuppressor": "质道抑制器", + + "fluid.oneironaut.thought_slurry": "思维浆液", + + "this.is.a.comment.3": "Book entry titles--------------------------------------------------------------------------------------------", + "oneironaut.entry.dim_iotas": "维度 Iota", + "oneironaut.entry.status_iotas": "状态 Iota", + "oneironaut.entry.noosphere_main": "奇怪的领域", + "oneironaut.entry.noosphere_materials": "富思维材料", + "oneironaut.entry.wisp_lanterns": "咒灵设备", + "oneironaut.entry.slipway_hint": "有关质道的精思", + "oneironaut.entry.miscpatterns": "航梦:杂项图案", + "oneironaut.entry.super_budding": "更好地量产媒质", + "oneironaut.entry.idea_inscription": "思绪刻印", + "oneironaut.entry.sentinel_detection": "哨卫侦测", + "oneironaut.entry.detection_shielding": "侦测回避", + "oneironaut.entry.raycast_assailant": "反咒术方块", + "oneironaut.entry.mindrender": "意识撕裂者", + "oneironaut.entry.soulprints": "灵魂印记", + "oneironaut.entry.hover_elevator": "悬浮桥链", + "oneironaut.entry.flayrevival": "人工意识", + "oneironaut.entry.heimdall": "跨维度施法", + "oneironaut.entry.slipwaymanipulation": "质道操纵", + "oneironaut.entry.deep_noosphere_main": "危机四伏的领域", + + "this.is.a.comment.4": "Book pages--------------------------------------------------------------------------------------------", + "oneironaut.page.spaceswap.1": "接受均由两个向量组成的两个列表,用于定义两个长方体,以及一个空间印记。所定义的长方体必须保证尺寸与朝向一致。", + "oneironaut.page.spaceswap.2": "我不太清楚这个图案具体能做什么,它总是对我喊着什么“特殊维度”。也许它需要这种特殊维度作为中介?", + "oneironaut.page.spaceswap.3": "将我所处维度中第一个长方体包含的方块(需在影响范围内)与空间印记对应维度中第二个长方体包含的方块互换。$(l:https://www.desmos.com/calculator/ydbg8zhmyp)消耗以紫水晶粉计,前 1001 个方块遵循对数消耗,之后则按照线性关系增加$(/l)。$(br)不会互换不可破坏的方块。$(br)两维度之一或两者均需为智识界。", + "oneironaut.page.spaceswap.4": "两维度之一或两者均需为智识界。", + "hexcasting.spell.oneironaut:dimteleport.samedim": "这个法术什么都不会做,类似让已经在家的人回家。", + "oneironaut.page.dim_iotas.1": "我发现了一种新 iota,它们似乎象征着现实本身的某一层面。为方便理解,我决定称其为“空间印记”。", + "oneironaut.page.dim_iotas.2": "返回象征着我所处维度的空间印记。消耗极少量媒质。", + "oneironaut.page.dim_iotas.3": "返回象征着我哨卫所处维度的空间印记。消耗 1/10 个紫水晶粉。", + "oneironaut.page.dim_iotas.4": "返回象征着主世界的空间印记。消耗 1/10 个紫水晶粉。", + "oneironaut.page.dim_iotas.5": "返回象征着下界的空间印记。消耗 1/10 个紫水晶粉。$(br)这个法术的施放总有些不够顺畅。也许我需要$(#54398a)再精进我的技术$()……", + "oneironaut.page.dim_iotas.6": "接受一个空间印记,返回对应维度中可存在方块的最低和最高海拔。", + "oneironaut.page.dim_iotas.7": "接受一个空间印记,返回对应维度中1格距离相当于主世界中的几格距离。", + "oneironaut.page.dimteleport.1": "接受一个实体和一个空间印记,将所给实体传送入对应维度的同一位置。消耗 20 个充能紫水晶。$(br2)传入其他玩家时会失效。", + "oneironaut.page.dimteleport.2": "如果在离开原先所处维度的同一时刻,用此法术返回该维度,则消耗会减少到 5 个紫水晶粉:法术会捕捉残存的媒质以将我传送回原来的位置。其他情况下,则会在目的地周围找个安全的位置作为目的地,甚至有可能构筑方块以防止坠落而亡。$(br2)我在用这个法术时总有种奇怪的加速感,但我无法理解加速度到底是朝着哪个轴的。", + "oneironaut.page.infusemedia.1": "接受一个向量,并向该位置方块中注入媒质,以嬗变该方块。消耗量与具体效果随目标变化而变。", + "oneironaut.page.infusemedia.2": "概念上来看,此法术与$(l:patterns/spells/blockworks#hexcasting:edify)启迪树苗$(/l)类似。$(br)然而,这种方法灌注的媒质相较之下经过精细调校,因此能产生更为有意思的效果。", + "oneironaut.page.wisp_lanterns.1": "我发现,若是使用了独属于智识界的材料,便能制造出一种特殊的罐子,它能产生并容纳一只微型咒灵。这种咒灵尽管无法施法,但能发出相当的光,还会模拟它看见的染色剂。$(br)我还能用遮光玻璃制造同类物品,避免咒灵的光亮影响到我书房的美学设计。", + "oneironaut.page.wisp_lanterns.2": "此外,往这些照明用咒灵里注入大量的媒质,就可强令其分裂自身。新产生的咒灵与质道产生的游走咒灵几乎完全一致。$(br2)以此类方式分裂咒灵的设备接受任意存储媒质的物品,可通过漏斗一类的装置送入。它最多能存储相当于 640 个充能紫水晶的媒质。", + "oneironaut.page.wisp_lanterns.3": "给予红石信号即可激活。它每 4 秒产生 1 个咒灵,同时消耗 2 个充能紫水晶。$(br)合成时所用媒质之瓶的容量和媒质量对产物无影响。", + "oneironaut.page.wisp_lanterns.4": "还可制造一类完全不消耗(和接受)媒质的设备,它所生成的咒灵拆解后总媒质量为 0。$(br2)闪亮球珠仍在,不见代价惹忧!", + "oneironaut.page.wisp_lanterns.5.originaltoolong": "参照类似原理,我设计了一种能够捕获(并容纳)咒灵的设备,之后再释放出去。不过游走咒灵太过不稳定,无法捕获。$(br)此设备的媒质容量为 64 个充能紫水晶(可重充能)。捕获我自己的咒灵消耗 1 个紫水晶碎片,捕获他人的咒灵消耗咒灵中媒质量的 1.5 倍。直接对咒灵使用即可捕获它,吸入外壳中(需有足量媒质,且其中未存有咒灵)。", + "oneironaut.page.wisp_lanterns.5": "参照类似原理,我设计了一种能够捕获、存储、释放咒灵的设备,不过它对游走咒灵无效。捕获我自己的咒灵消耗 1 个紫水晶碎片,捕获他人的咒灵消耗相当于 1.5 倍咒灵中媒质量的媒质。直接对咒灵使用即可捕获它,设备自身需有足量媒质,且其中未存有咒灵。", + "oneironaut.page.wisp_lanterns.6": "释放循环型咒灵时,它会出现在所指方块的旁边。弹射式咒灵则会从我的脸前发射出去,保留捕获前速度(方向不保留)。潜行时使用物品,即可丢弃存储的咒灵。", + "oneironaut.page.wisp_lanterns.7": "初始化此装置的媒质储库时,需手持后对我自己的咒灵使用。该咒灵会消散且无法召回,装置的媒质容量会设为与该咒灵一致,按紫水晶粉向上取整。若需重设此数据(以及其他所有数据与配置),将其单独放在合成方格中合成即可。", + + "oneironaut.page.noosphere_materials.1": "一种奇怪的流体,会搅混进入其中的媒质,并阻止晶体的形成。浸在其中时,它会以愉悦的方式刺激我的意识。$(br2)我总能在这种流体中发现四处漂浮的碎纸。也许只要细致研究,就能发现有意思的东西。", + "oneironaut.page.noosphere_materials.2": "主要由媒质构成的岩石,原理不明。可合成法术环方块。", + "oneironaut.page.noosphere_materials.3.title": "伪紫水晶", + "oneironaut.page.noosphere_materials.3": "一大块媒质晶体,与紫水晶类似但不完全相同。触摸时会有种嗡鸣感,就好像媒质在刺激神经一般。不加以特殊措施直接破坏会将其破碎为 1 到 4 块碎片。", + "oneironaut.page.noosphere_materials.4": "这些碎片能驱动法术,且比普通紫水晶提供的能量稍多一些。也能用来制造些有趣的物件。", + "oneironaut.page.noosphere_materials.5": "一种固态的媒质,由思维浆液在富媒质环境中冻结而得。这种冻结也可由咒术造成。$(br)其表面的摩擦系数似乎为负,任何在其上滑动的事物会无限加速(虽然较慢)。", + "oneironaut.page.noosphere_materials.6": "一类极其黏稠的媒质,拥有极为基础的认知能力,与黏菌类似。它通常情况下表现出惰性,但会以类似法术的能力试图困住触碰到它的事物。", + "oneironaut.page.slipway_hint.1": "那些质道,它们一定能联通到$(o)某些地方$()。咒灵不会凭空出现。不管我怎么尝试,我最多只能让一根手指穿过那道混沌的裂口。$(br2)我大概是想错了。与其凭蛮力穿过裂口,也许还是尝试平息风暴更为有效。", + "oneironaut.page.slipway_hint.2": "大量的调谐媒质应该就能做到……", + "oneironaut.page.slipway_hint.2.title": "嗯……", + "oneironaut.page.noosphere_main.1": "我成功了。$(br)质道另一端的领域。环境中的媒质多到难以想象。我的意识正朝我尖啸,叫喊着我不应该在这里。但我必须前进。这里就是旅途的下一站。", + "oneironaut.page.noosphere_main.2": "我在此勘测的每一件事物似乎主要都由媒质构成,很像构筑物质,但浓度高出了几个数量级。$(br)$(o)就连空气都是媒质。我是怎么呼吸的?$(br2)$(l)我又是怎么能存在于此的?", + "oneironaut.page.rod.1": "我发现我能用远古城市中找到的奇怪碎片合成一种奇异的施法物品。$(br)这件物品的奇异之处,就在于集中思维时,它能以每秒 20 次的频率施放其中的咒术,直到产生事故或者我施放终曲和安可时才停止。如此会触发一段冷却时间,通常有大约 1 秒。", + "oneironaut.page.rod.2": "回响碎片似乎包含着某种怪异形态的媒质。因此它具有循环自身的倾向,同时会保留一部分上一次施法时的信息。", + "oneironaut.page.rod.3": "和$(l:patterns/spells/hexcasting)用于制造传统施法物品的法术$()类似。消耗 10 个充能紫水晶。", + "oneironaut.page.rod.4": "使用回响之杖施放时,返回当前循环开始时我的视线向量。", + "oneironaut.page.rod.5": "使用回响之杖施放时,返回当前循环开始时我的眼部位置。", + "oneironaut.page.rod.6": "使用回响之杖施放时,返回当前循环开始时的时间戳。", + "oneironaut.page.rod.7": "接受一个正整数。使用回响之杖施放时,将下一次施法延迟所给数个 1/20 秒。", + "oneironaut.page.rod.8": "使用回响之杖施放时,强制停止当前循环。", + "oneironaut.page.rod.9": "接受一个正整数。停止当前循环,并将冷却时间从 1 秒缩短至所给数个 1/20 秒。事故造成的冷却不受影响。", + "oneironaut.page.rod.10": "接受一个非列表 iota,并将其存入当前循环。该 iota 会在循环结束时丢失。", + "oneironaut.page.rod.11": "返回当前循环中存储的 iota。默认为 Null。", + "oneironaut.page.rod.12": "检查当前施法者是否正在使用回响之杖,返回一个布尔值。", + "oneironaut.page.rod.13": "与威廉姆斯之策略类似,但可在回响之杖被占用时,由其他施法方式施放。", + "oneironaut.page.rod.14": "与威廉姆斯之精思类似,但可在回响之杖被占用时,由其他施法方式施放。", + "oneironaut.page.rod.15": "检查施法者是否正在使用回响之杖,不要求是在使用当前杖。", + "oneironaut.page.rod.16": "回响碎片也可用于制造法杖,不过这种法杖唯一的特殊性质便是发出些幽匿的声音。", + "oneironaut.page.miscpatterns.1": "我发现了一些专为物品展示框交互设计的图案。它们不是什么高端法术,但确实是控制法术环之类事物的实用手段。$(br2)此外,分拣员之纯化对它们同样有效,因此试图寻找物品展示框专用的物品图案没有意义。", + "oneironaut.page.miscpatterns.2": "接受一个物品展示框实体,并返回其中物品的朝向,值必然在 0 到 7 之间。", + "oneironaut.page.miscpatterns.3": "接受一个物品展示框实体与一个 0 到 7 的整数,并将物品朝向设置为该数。消耗极少量媒质。", + "oneironaut.page.miscpatterns.4": "与$(l:patterns/basics#hexcasting:raycast/entity)侦查员之馏化$(/l)类似,但能够接受一个实体类型 iota 列表。类型不在该列表内的实体会被忽略。消耗的媒质量略多于上文所提图案的“极少量”。", + "oneironaut.page.miscpatterns.5": "返回 0 与 1 之间的随机数,服从正态分布。", + "oneironaut.page.miscpatterns.1.formerlink": "$(l:hexal:patterns/types#hexal:type/block_item)", + "oneironaut.page.super_budding.1": "我发现智识界出产的一种类紫水晶物质会接受村民的意识,这点和普通的紫水晶一样。不过,接受意识所得方块的媒质产量相当高,远超出普通紫水晶母岩的能力,而且只要足够小心就能捡起它搬走。", + "oneironaut.page.super_budding.2": "比起使用普通紫水晶来说,使用伪紫水晶需要更强大的意识,但得到的回报绝对值得。", + "oneironaut.page.super_budding.3": "此外,在智识界中培育时,伪紫水晶母岩会产生伪紫水晶簇,而不是普通的紫水晶。自然,这些晶簇掉落的是伪紫水晶碎片,但同时也会掉落一种不甚稳定的伪紫水晶,其媒质含量是普通碎片的四倍。正是由于这种不稳定性,此类伪紫水晶无法直接转换为媒质。但把它和其他形态的媒质水晶放在一起,即可令其转变为那种形态。", + "oneironaut.page.super_budding.4": "它似乎对我的凝视有了反应,就好像它有某种感知力一样。", + "oneironaut.page.super_budding.5": "就算让伪紫水晶母岩浸没在思维浆液中,抑制晶体的形成,它的媒质生成率依然足够平常使用。尽管总供给量近乎无穷,但单个操作能使用的媒质量相当少;就像一片几十万几百万千米宽,但只有几厘米深的海洋。而由于其深度极为有限,在远距获取使用(如为物品充能等)时,其中的媒质会在抵达法杖前迅速消散殆尽。", + "oneironaut.page.super_budding.6": "常态提供大约与 1/10 个紫水晶粉相当的媒质。虽然我$(o)可以$()同时持有好多个来获取媒质,但每个媒质瓶带来的增量会快速减少。$(br)合成时注意别用错试剂瓶了。", + "oneironaut.page.super_budding.7": "还可以往缀品里塞一个,以让无穷媒质之瓶为其供应媒质。但是,如此操作后,缀品便不会再接受其他来源的媒质。", + "oneironaut.page.super_budding.8": "向另一只手中的无底缀品写入咒术。消耗 10 个充能紫水晶。", + "oneironaut.page.idea_inscription.1": "智识界是思维的领域,它能用来存储信息也就顺理成章。这些图案就能把 iota 刻印入智识界,并能读出它们(不论当前身处什么维度)。它们还能把 iota 存储到其他生物的意识中,当然它们的意识也需和我一样……$(o)无拘无束$()。在相关描述中,用于指代向量和有效实体的词是“键”/“key”。", + "oneironaut.page.idea_inscription.2": "这种操作用途不少,但智识界的环境媒质处于常态的运动中,任何存入其中的 iota 终会消解,和往海洋中倒热水没什么区别。似乎这种信息在变为无用的垃圾前能存在一小时。$(br2)$(l:greatwork/akashiclib)阿卡夏图书馆$(/l)的原理貌似与之类似,书架则相当于用来避免消解的阻隔层。", + "oneironaut.page.idea_inscription.3": "接受一个有效键以及任意 iota,并将所给 iota 存入相应位置。消耗大约 1/4 个紫水晶粉。", + "oneironaut.page.idea_inscription.4": "接受一个有效键,并返回相应 iota。消耗大约 1/4 个紫水晶粉。", + "oneironaut.page.idea_inscription.5": "接受一个有效键, 并返回刻印对应 iota 的时间,或是返回 -1。不消耗媒质。", + "oneironaut.page.idea_inscription.6": "接受一个有效键和一个代表玩家的 iota,并检验对应 iota 是否由所给玩家刻印。不消耗媒质。", + "oneironaut.page.sentinel_detection.1": "将智识界的伪紫水晶和深暗之域的有机感测体结合起来,就是一种检测环境媒质中扰动的方式。这种新探测器会检测大约 16 米内的$(l:patterns/spells/sentinels)哨卫$(/l),检测到则会根据最近哨卫的距离输出红石信号。如果最近的哨卫格外强大,则相邻的比较器会输出信号。", + "oneironaut.page.sentinel_detection.2": "$(o)我相信监守者不会在意的。$()", + "oneironaut.page.sentinel_detection.3": "除此之外,这种探测器还可整合到牧师促动石中,产物会在区域内存在哨卫时启动(不过探测半径较普通探测器较低)。我叫这种装置“探察促动石”。尽管它不再对红石信号产生反应,但会获取代表触发哨卫的所有者的 iota,并置入法术环咒术的初始栈。$(br)而由于施法时产生的媒质干扰,这种促动石无法侦测到自身放置的哨卫。", + "oneironaut.page.sentinel_detection.4": "这种探测器不论侦测到谁的哨卫都为产生反应,我应当避免让我铺设的陷阱法术环瞄准我自己。", + "oneironaut.page.sentinel_detection.5": "接受一个向量和一个玩家,并返回该位置到所给玩家哨卫的距离,或者返回 Null。消耗极少量媒质。", + "oneironaut.page.sentinel_detection.6": "在所给位置坐标构筑一个短时探测器,它会“监听”环境媒质中的存在形态,以此分辨出最为明显的哨卫标记。", + "oneironaut.page.detection_shielding.1": "传统的隐身药水足以迷惑常人的感官,但面对咒术则毫无作用,让事物完全无法侦测的方法还有待发现。然而,我找到的这个法术应当是向上述目标迈出的第一步。它能让媒质像糠皮一样盖在生物周围,以此干扰咒术的侦测手段。", + "oneironaut.page.detection_shielding.2": "接受一个生物和一个数,并给予该实体持续所给数秒的咒术侦测护盾。每秒持续时间消耗 2 个紫水晶粉。", + "oneironaut.page.detection_shielding.3": "同时每秒会消耗所影响实体 1/10 个紫水晶粉,护盾的构筑需要这些媒质。$(br2)我需要注意我把这种效果给予了什么事物,因为没有携带其他媒质来源的生物会消耗自身的意识来供给护盾。", + "oneironaut.page.detection_shielding.4": "这种护盾在阻挡$(l:patterns/basics#hexcasting:raycast/entity)侦查员之馏化$(/l)和各种$(l:patterns/entities#hexcasting:zone_entity/animal)区域之馏化$(/l)时效果良好,但它对$(l:patterns/entities#hexcasting:get_entity)实体之纯化$(/l)的变种没有作用,那些操作已经包含所处位置的精确概念。而且,这层糠皮自身也有能量特征,尽管暗淡,依然可用特种图案侦测。", + "oneironaut.page.detection_shielding.5": "接受一个向量和一个数,并返回以所给位置为起始,指向范围内带有遮罩的实体的单位向量列表,侦测半径为所给数。", + "oneironaut.page.detection_shielding.6": "我还发现了能给予普通隐身效果的法术。和其他$(l:patterns/great_spells/zeniths)天顶法术$(/l)功能一致,每 3 秒持续时间消耗 1 个紫水晶粉。", + "oneironaut.page.raycast_assailant.1": "往方块中“织入”伪紫水晶,产物便能令抵达或穿过其的射线追踪(对实体的射线追踪也有效)返回 Null,就好像射线追踪没有检测到任何事物一样。", + "oneironaut.page.raycast_assailant.3": "奇怪的是,以同种方式加工伪紫水晶和黑曜石的产物不具备阻碍射线追踪的能力,而是变得近乎无法被咒术摧毁。不过,产物的硬度也因此大幅下降,变得和普通石头没什么两样(爆炸抗性不变)。", + "oneironaut.page.mindrender.1": "我曾读到过一种极其可怖的武器,“意识撕裂者”。古代的咒术师偶尔会用这种武器,它能将生物的思维直接斩断,造成的伤害无视所有已知保护手段。而且,如果造成的伤害令目标离真正的死亡仅一步之遥,则其会进入植物人状态,永远无法恢复如初。想到古代人使用这种物件的原因,我不由得寒透脊骨……", + "oneironaut.page.mindrender.2": "接受带有锋利魔咒的物品,或放有此类物品的物品展示框,并将锋利转换为同等级的意识撕裂。消耗由魔咒等级决定,目标为书时额外消耗 50%%。", + "oneironaut.page.lore.treatise1.1": "虽然施放咒术时能直接产生大多数 iota,但总会有不够便捷的情况,甚至于无法产生(例如庞大而精确的数和实体 iota)而不得不另辟蹊径。从核心之类的物品中读取 iota 也不错,但大多数情况下这么做需要第三只手,我很明显没有。从外部位置获取 iota 的其他方法也各有各的局限性。", + "oneironaut.page.lore.treatise1.2": "而在无外部引用手段可用的情况下,所需的 iota 必须直接插入咒术本身。对部分人而言,这么做会有些不合常理。这是因为传统上的咒术是一个图案列表,但图案自己也是一种 iota,一种与$(l:patterns/meta#hexcasting:eval)赫尔墨斯之策略$(/l)(以及同类图案)协同效果很好的 iota。", + "oneironaut.page.lore.treatise1.3": "尽管你不能直接把数放到列表里面,放入后也不能让它和使用$(l:patterns/numbers)数字之精思$(/l)一样压入栈顶,但其实有方法能做到。$(br2)最简单(也最不可靠)的方法是$(l:patterns/patterns_as_iotas#hexcasting:escape)考察$(/l)。和手动施法时一样,列表中其后方的任意事物会被转义并直接压入栈顶,而非和平时一样运行,如此就可避免运行非图案导致的事故。", + "oneironaut.page.lore.treatise1.4": "然而,当你位于咒术中超过一层运行深度处(比如循环和嵌套的条件逻辑),转义 iota 所需的考察数量会极速增长。在那些能够由另一咒术运行的事物中,这种方法便不再可靠。", + "oneironaut.page.lore.treatise1.4.link": "相关的 xkcd", + "oneironaut.page.lore.treatise1.5": "更为可靠的转义 iota 方法是$(l:patterns/patterns_as_iotas#hexcasting:open_paren)内省$(/l)和$(l:patterns/patterns_as_iotas#hexcasting:close_paren)反思$(/l)。运行图案列表时,内省后方直到相应反思之间(内省和反思不计)的事物会被转义,并以列表形式压入栈顶,不论 iota 的类型如何。然后就可以用合适方式操作此列表,比如用$(l:patterns/lists#hexcasting:splat)群体之拆解$(/l)把列表中各项分别压入栈顶。", + "oneironaut.page.lore.treatise1.6": "如果你的列表的结构与此类似:$(br2)内省$(br)任意 iota(s)$(br)反思$(br)群体之拆解$(br2)运行这些 iota 之后,栈中会压入内省与反思之间的所有 iota。", + "oneironaut.page.lore.treatise2.1": "推动事物的标准做法是$(l:patterns/spells/basic#hexcasting:add_motion)驱动$(/l)。但是,如果想要事物极为迅速地移动,这种方法可能会昂贵到无法使用。这是因为消耗会随向量模长增大而极速增长。对单个目标使用多次模长为 1 的驱动就能减少这种影响,总消耗会从 n^2 降到 2n-1,其中 n 是向量的模长。", + "oneironaut.page.lore.treatise2.2": "这种方法最简单的实现方式需要$(l:patterns/meta#hexcasting:for_each)托特之策略$(/l),传入多个重复的实体 iota 组成的列表即可。当然也有其他(且通常更好的)方法存在。但除去重复绘制图案外,这些方法大多离不开循环这一命题,这就有点超出这篇文档的范畴了。", + "oneironaut.page.lore.treatise3.1": "虽然$(l:patterns/meta#hexcasting:for_each)托特之策略$(/l)极其适合同时对多个目标施放同一法术,但对同一目标施放多次法术就有点麻烦了。它不仅容易导致咒术的停止,运行开始后还无法添加或移除作用目标。$(br)而绕过这些局限也很简单,换用另一种循环即可。", + "oneironaut.page.lore.treatise3.2.header": "While 循环", + "oneironaut.page.lore.treatise3.2": "While 循环是一种在既定条件达成之前一直运行的循环,条件可以是实体的速度达到了给定值等。一个仅会复制自身再运行栈顶 iota 的图案列表就是这种循环最简单的实现方式。如果单独运行它,那么咒术会进入无限循环,除非产生事故不然不会停止。", + "oneironaut.page.lore.treatise3.3": "向其中加入实际功能和一些布尔逻辑,就能创造出有用的 while 循环。前文所提无限循环的代码如下:$(br)内省$(br)双子之分解$(br)赫尔墨斯之策略$(br)反思$(br)双子之分解$(br)赫尔墨斯之策略$(br2)向其中加入根据条件是否运行列表内赫尔墨斯之策略的逻辑,达成相应条件后循环便会终止。", + "oneironaut.page.lore.treatise3.4.header": "循环展开", + "oneironaut.page.lore.treatise3.4": "“已展开循环”/“Unrolled loop”是一种更为复杂的循环。和托特之策略一样,构建时其迭代次数同样固定,难以增加修改。但如有需要,卡戎之策略可以令其提前停止。比较来看,这种循环仅产生一到两层递归深度(循环体运行所致深度不计),是其优势所在。先写定想要重复的图案列表,再多次复制,最后把所有列表合成一体,就实现了循环展开。", + "oneironaut.page.lore.treatise3.5": "这一目标最简单的达成方式是$(l:patterns/stackmanip#hexcasting:duplicate)双子之分解$(/l)接$(l:patterns/lists#hexcasting:add)组合之馏化$(/l),运行后原列表会重复 2 次。可重复使用此方法以复制原列表 2 的幂次,所得的列表在运行时只会产生一层递归深度。更灵活的做法则是使用$(l:patterns/stackmanip#hexcasting:duplicate_n)双子之策略$(/l)产生 $(o)n$() 个副本,再将 $(o)n-1$() 个组合之馏化放入列表并运行,如此便能把所有原列表副本合为一体。", + "oneironaut.page.lore.treatise4.1": "我的一些呃,“同事”,在抄录长咒术时遇到了麻烦。$(br)“这东西好长!”$(br)“咒术网格都不够用了!”$(br)我认为这是$(bold)能力问题$()。这又不是那些绘制完最后一个反思后没法修改咒术的麻烦。只需把未完成的咒术存到核心中即可。(不过你应该注意为存储操作留出空间。)", + "oneironaut.page.lore.treatise4.2": "完成之后,再用$(l:patterns/lists)列表操作$(/l)图案把各部分合起来就行了。$(br2)甚至都不需要用多个核心,写完一部分后把它接到核心中列表的后方,再把所得列表存入核心即可。多核心会让调试咒术更轻松,但据我目前所知,这也是多核心相对单核心唯一的优势。", + "oneironaut.page.lore.science1.1": "$(o)“这是什么?我该怎么把它弄走?”$()$(br)大多数人在第一次遇见质道时都会产生这些疑问。我对第二个问题暂时没有答案,但回答第一个问题还是可以的。$(br)就我所知,质道是空间中的微小孔洞,其另一侧是称作“智识界”的媒质界。", + "oneironaut.page.lore.science1.2": "质道中逸散的类咒灵现象是智识界中巨量的环境媒质试图迅速通过孔洞的结果(就像是气体扩散入接近真空的空间),这些媒质的纠缠卷绕方式与召唤咒灵法术中编织供咒灵消耗的媒质的方式类似。", + "oneironaut.page.lore.science1.3": "此外,质道的入口处似乎存在某种屏障,任何物质都会被阻挡不得通过。如果这一屏障可被穿透,孔洞可被扩展,质道就可将物质吸收入智识界。这么做后质道不会再产生咒灵,是媒质的通过速度大大降低,不会再受扰动而缠绕的缘故。如果想要尝试,就需小心不要过度扩展,否则周围区域都有被吸收入智识界的危险。", + + "not.real.translation.key.1": "TODO: Add a structure that is implied to be part of a laboratory that has been ripped from the overworld by an engorged gateway", + + "oneironaut.page.lore.science2.1": "真是个奇怪的地方。组成此处海洋的液体不比水致密多少,那些岛屿由密度类似玄武岩的岩石构成,却能浮在其中。而且,此处的所有事物都似乎瞬息万变,如梦似幻。但我比从前任何时候都要清醒,这又怎么会是梦境?", + "oneironaut.page.lore.science2.2": "这种清醒感应当是此处环境媒质的效果,它会润滑我的思维。这里的媒质浓度甚至超过了咒灵的核心,它们的天然消耗也因此缩减到无穷小。有趣的是,那些带有某人灵魂印记的咒灵不会受此效应影响,因此咒灵无法用于长时存储真名。$(br)这些环境媒质甚至会从足够大的维度裂缝中渗漏出去,正是它维持了裂隙另一侧距离足够近的咒灵的形态。", + "oneironaut.page.lore.science3.1": "这种晶体很是有趣。一件仅由媒质构成的物体,浓度超越了传统的构筑方块,甚至超越了我在图书馆中的同事们研究的那些致密媒质晶体。连媒质密度相近的紫水晶中的都有痕量二氧化硅,此晶体中却完全不存在杂质。而令其静置一段时间后,晶体粉末会以分形模式累积,就好像在持续不断地施法。", + "oneironaut.page.lore.science3.2": "我在显微镜下详细检验了这种晶体,可观察到这些分形状结构会向晶体内部延伸,且会以固定模式一直变化。这有无可能是一种时间晶体?", + "oneironaut.page.glow_ambit.1": "尽管经过了长久的研究,代表其他咒术师的 iota 中仍有些特殊性质的由来未能厘清。不过,我找到了一种赋予其他事物同样性质的方法,不敢说持久,但至少能暂时做到。(还很昂贵。)$(br)这种法术允许施法者跨越极远的距离影响生物,就和玩家 iota 的无限影响距离一样。但对目标施放这种法术时,依然需要离目标足够近。", + "oneironaut.page.glow_ambit.2": "接受一个活体,在 1 分钟内即可在世界各处访问所给活体。基础消耗 1 个紫水晶碎片,在效应消退前每施放一次额外消耗 1 个紫水晶碎片。", + "oneironaut.page.glow_ambit.3": "这种效果的原理似乎是让目标散发出某种超自然共振。这种共振相当强大,目标的轮廓隔着各种形式的障碍依然“可见”。(咒术师们也许就在持续产生这种共振,只不过是没有如此效果显著?)但是,这种辉光与光灵箭等造成的辉光不一样,不要指望监测那种辉光的仪器对这种也有效。", + "oneironaut.page.soulprints.1": "灵魂印记和代表我自己的 iota 类似,功能中也有“代表我”这一项,但使用的限制会多出许多。除了通过我本人之外,他人没有方式获得灵魂印记,不过这些灵魂印记不受写入限制,和普通的玩家 iota 不一样。$(br2)有意思的是,灵魂印记也是$(l:patterns/idea_inscription)思绪刻印$(/l)的有效键。", + "oneironaut.page.soulprints.2": "返回我自己的灵魂印记,使用除法杖之外的施法手段时会招致事故。消耗极少量媒质。", + "oneironaut.page.soulprints.3": "将我的灵魂印记隐写到另一只手中的物品上,若已有灵魂印记则清除。消耗 1 个紫水晶粉。$(br)签印物品前要注意先将核心一类的物品密封,经过签印的未密封核心有身份泄露的风险,清除物品会同时去除签印。", + "oneironaut.page.soulprints.4": "接受一个灵魂印记,并检查我另一只手中物品上是否有对应的隐写。若有,返回 True;否则返回 False。消耗极少量媒质。", + "oneironaut.page.hover_elevator.1": "使用原产于智识界的材料,再加上与飘浮有关的原材料,做出的设备能够产生具有推动力的能量流;我站在其中也会被推动,而且很难摔出来。使用时必须令其朝向另外一个此类设备,也即两个此类设备需面对面放置。放置妥当后,两端均需以", + "oneironaut.page.hover_elevator.2": "红石信号激活,若两者在各自范围内(水平方向 64 米,垂直方向 128 米),则其间会产生能量流。走入能量流后我会被固定在原地;往两端中的一端看时,会向该方向加速至最大速度。此最大速度与我的视线与能量流的平行程度成正比。潜行时会强制将我锁定在原地,无论往哪个方向看都是如此。", + "oneironaut.page.hover_elevator.3": "$(o)在真的用这东西之前,我最好还是穿双远距防摔靴当保险。", + "oneironaut.page.hover_elevator.meme":"$(o)淘气的咒术师会被送到飘浮方块里去喔。", + "oneironaut.page.hover_elevator.4": "此外,还可以制造一个中继器,用于延长端设备的范围。经过此中继器的能量流会恢复至其刚离开端设备的状态。如此强大的器具自然需要强大的组件,但就算如此,能量流在经过 3 个中继器后,也会因太过不稳定而无法维持。", + "oneironaut.page.hover_elevator.5": "好在由于某种原因,此设备并没有传统意义上的实体;也即在能量流中移动时可以直接穿过去,而不需要小心翼翼地绕过。$(br)$(o)不会的,它不会在延续能量流之前顿一下的。", + "oneironaut.page.flayrevival.1": "剥离完意识的村民、或是被$(l:items/mindrender)意识撕裂者$(/l)摧残到仅剩最后一丝气息的生物,它们都变成了毫无用途的空壳,我对此相当苦恼。尽管它们$(o)确实$()能自己完成少数几种任务;但除此之外的大多数任务就连无智慧可言的野兽都能做好,它们却无能为力了。好在我发现了一个法术,能让这些空壳具有某种程度的认知能力。", + "oneironaut.page.flayrevival.2": "接受一个已剥离意识的生物,并创造一个人工伪意识融入其中。对村民或悦灵使用时消耗 16 个充能紫水晶,其余情况消耗 10 个紫水晶碎片。", + "oneironaut.page.flayrevival.3": "这些伪意识确实能驱动躯体,一如身体的原主人,但它们离真正的所谓智慧还差得远,换成适用于村民的宽松定义也是一样。因此,以此方法“恢复正常”的村民会失去先前的职业经验,也无法再获取此类经验了。", + "oneironaut.page.flayrevival.4": "不过,他们依然保留了繁衍的能力。他们的后代不会受到我先前行为的影响。$(br2)我不太确定为什么村民恢复后都喜欢上了绿色的衣物,但这种性质确实方便我辨识哪些村民不堪大用。", + "oneironaut.page.monkfruit.1": "我发现对甜浆果丛使用$(l:patterns/spells/blockworks#hexcasting:edify)启迪树苗$(/l)法术能变出一种相当有趣的植物。它和原来的灌木很像,但它的棘刺中融有媒质场,能吸走其刺中的生物的意识以让自己生长。它不刺人也能生长(虽然很慢),但仍需周围存在具有意识的生物才能结出少量媒质。", + "oneironaut.page.monkfruit.2": "它结出的果实相当甜,且能加工处理成糖。而且,这种果实在被消化的时候似乎能释放出些许媒质,又会进一步为我身上可以重新填充媒质的物品充入媒质。摘果子时务必要小心灌木中的刺。", + "oneironaut.page.monkfruit.3": "成熟植株上剪下的枝条依然具有这些危险的性质,可以用来合成一把不祥的刀。$(br2)这把刀和附有低等级$(l:items/mindrender)意识撕裂$(/l)魔咒的剑类似,但它更为精确:撕裂意识时能把对形体的附带损伤降到最低。如果我有这个想法,当然可以把它用作普通的冷兵器,但确实要承担杀死目标的风险。", + "oneironaut.page.monkfruit.4": "$(o)这又不是什么高端科技。$()", + "oneironaut.page.library_card.1": "在研究真正通用的数据存储方式时,我设计出了一个小设备,随身携带即可读取其他维度的阿卡夏记录。只需向该物品写入一个空间印记,便能将未来所有阿卡夏读取操作导向至对应维度。$(br)可惜的是,它不能用来$(o)写入$(),但有总比没有好。", + "oneironaut.page.library_card.2": "$(o)它似乎会渗出某种黏答答的凝浆。$()", + "oneironaut.page.heimdall.1": "奇怪的图案,似乎是赫尔墨斯之策略的变种。接受一个空间印记和一个可执行的 iota,并尝试在所给维度内施放所给 iota。", + "oneironaut.page.heimdall.2": "它确实能帮我跨维度施法,但还不够完美。首先,它似乎只会在我直接施法时起效,咒灵这类奇异的施法方式行不通。其次,有消耗的图案会额外消耗 25%% 的媒质。最后,正因为我没有真的身处目标维度,所以需要借助卓越哨卫(或其他增大影响范围的手段)才能影响那一侧的事物。", + "oneironaut.page.heimdall.3": "在法术环中使用时当然可以直接靠哨卫跨维度施法,但我还设计了一个装置,可让法术环的影响范围扩展到目标维度中。", + "oneironaut.page.heimdall.4": "使用时,必须在某长方体的八个定点处放置,再让法术环的媒质波流过它们。该长方体会将法术环的影响范围扩展到目标维度中,坐标相应缩放。装置数量不足,或无法形成长方体,则无效。如需再次使用,应再次让媒质波流过所有装置。", + "oneironaut.page.heimdall.5": "接受一个空间印记,并将我的哨卫移动到对应维度,坐标相应缩放。消耗 1 个紫水晶碎片。如果我当前没有哨卫则招致事故。", + "oneironaut.page.slipwaymanipulation.1": "质道确实相当常见,我并不因此而缺咒灵需要的能量,但它们的位置不一定合适,而且几乎没有哪两个质道靠得很近。为此,我设计了某种能炸穿时空的爆破弹,从而创造一个质道(在智识界中使用时会创造一个稳定的传送门)。$(br)在此维度内,爆炸本身的力度不大,但它会释放出巨量的媒质,足以穿透几乎所有没对咒术做专门适配的防御手段。", + "oneironaut.page.slipwaymanipulation.2": "爆破弹的物理结构会将爆炸导向穿透时空需用的关键超维度轴,但我仍要供应大量能量。通过媒质灌注送入大约与 200,000 个紫水晶粉相当的媒质应该就可以了。我大概要专门找一个质道用来抽能量。", + "oneironaut.page.slipwaymanipulation.3": "有些时候我可能需要让质道失活,但不想让它直接消失。我为此制造了这个装置;它能捕获并消灭质道中流出的绝大部分媒质,阻止游走咒灵生成(同时也会大幅减少与质道有关的视效)。", + "oneironaut.page.slipwaymanipulation.4": "把它放在质道下方,然后传入红石信号即可。", + + "oneironaut.page.deep_noosphere_main.1": "智识界是片环境恶劣的荒地,但这里更是危机四伏。周围流体的压力已经能算是威胁了,高能态的媒质甚至可以蚀穿大多数物质,意识在这里脆弱得和块破布一样。$(br2)我如果想在这里保全性命,就需要新的手段。", + "oneironaut.page.deep_noosphere_main.2": "尽管这里确实极其危险,也并非完全无用。首先,此处距离经过了十六倍缩放,在此移动一米相当于在其他大多数领域内移动十六米。", + + "this.is.a.comment.5": "Advancements--------------------------------------------------------------------------------------------", + "oneironaut.advancements.noosphere.enter": "思维与梦的领域", + "oneironaut.advancements.noosphere.enter.description": "进入智识界", + "oneironaut.advancements.noosphere.find_tower": "永存经典", + "oneironaut.advancements.noosphere.find_tower.description": "发现一座属于身份不详的咒术师的高塔", + "oneironaut.advancements.noosphere.find_media_lab": "结晶", + "oneironaut.advancements.noosphere.find_media_lab.description": "发现一次结局惨淡的实验", + "oneironaut.advancements.noosphere.find_garden": "搁浅", + "oneironaut.advancements.noosphere.find_garden.description": "发现一个不幸灵魂最后停留之处的遗迹", + "oneironaut.advancements.lore.root": "航梦故事", + "oneironaut.advancements.lore.root.description": "失落于时间的记忆", + "oneironaut.advancements.lore.treatise1": "咒术师的记忆,#1", + "oneironaut.advancements.lore.treatise1.description": "有关iota嵌入的精思", + "oneironaut.advancements.lore.treatise2": "咒术师的记忆,#2", + "oneironaut.advancements.lore.treatise2.description": "有关有效利用驱动的精思", + "oneironaut.advancements.lore.treatise3": "咒术师的记忆,#3", + "oneironaut.advancements.lore.treatise3.description": "有关重复图案的精思", + "oneironaut.advancements.lore.treatise4": "咒术师的记忆,#4", + "oneironaut.advancements.lore.treatise4.description": "有关长咒术的精思", + "oneironaut.advancements.lore.science1": "科学家的记忆,#1", + "oneironaut.advancements.lore.science1.description": "有关质道本质的研究", + "oneironaut.advancements.lore.science2": "科学家的记忆,#2", + "oneironaut.advancements.lore.science2.description": "有关智识界性质的研究", + "oneironaut.advancements.lore.science3": "科学家的记忆,#3", + "oneironaut.advancements.lore.science3.description": "有关伪紫水晶结构的研究", + "oneironaut.advancements.unflay": "回收!", + "oneironaut.advancements.unflay.description": "你肯定不会直接丢掉的!", + "oneironaut.advancements.ouchie": "好痛!", + "oneironaut.advancements.ouchie.description": "难道觉得不会痛吗?", + + "this.is.a.comment.6": "Mishaps--------------------------------------------------------------------------------------------", + "hexcasting.mishap.oneironaut:badcuboid.mismatch": "提供的长方体尺寸不相同。", + "hexcasting.mishap.oneironaut:badcuboid.toobig": "提供的长方体尺寸过大。", + "hexcasting.mishap.oneironaut:badcuboid.overlap": "提供的长方体在同维度内有重叠。", + "hexcasting.mishap.oneironaut:uninfusable": "本应在%s处有一个可灌注方块,而实际为%s。", + "hexcasting.mishap.oneironaut:nonoosphere": "互换的其中一方需为一个特殊维度。", + "hexcasting.mishap.oneironaut:norod": "需要以回响之杖施放。", + "hexcasting.mishap.oneironaut:norodremote": "需要手持启动的回响之杖。", + "hexcasting.mishap.oneironaut:missingenchant": "%s本应带有%s魔咒,而实际没有。", + "hexcasting.mishap.oneironaut:unhappyslime": "黏液说道:“%s”", + "hexcasting.mishap.oneironaut:norequirediota": "黏液需要%s", + "hexcasting.mishap.oneironaut:requiresdifferententities": "一个与目标不同的实体", + "hexcasting.mishap.oneironaut:nostaff": "%s本应由法杖施放。", + "hexcasting.mishap.oneironaut:nosentinel": "无法找到可挪移的哨卫。", + "oneironaut.mishap.noitemframe": "一个物品展示框", + "oneironaut.mishap.invalidideakey": "一个向量、玩家或灵魂印记", + "oneironaut.mishap.unenlightenedtarget": "一个经过启迪的玩家", + "oneironaut.mishap.notbrainswept": "一个剥除意识的村民", + "oneironaut.mishap.badentitykey": "一个经过启迪的玩家或剥除意识的村民", + "oneironaut.mishap.nolistsallowed": "一个非列表iota", + "oneironaut.mishap.entitytypelistplease": "一个实体类型列表", + "oneironaut.mishap.wrongsizelist": "列表长度不合适。", + "oneironaut.mishap.twovectorsplease": "列表未包含两个向量。", + "oneironaut.mishap.requiresflayedmob": "一个已剥离意识的生物", + "hexcasting.mishap.invalid_value.class.oneironaut:imprint": "一个空间印记", + "hexcasting.mishap.invalid_value.class.oneironaut:soulprint": "一个灵魂印记", + + "this.is.a.comment.7": "Other---------------------------------------------------------------------------------------------", + "hexcasting.iota.oneironaut:dim": "维度", + "hexcasting.iota.oneironaut:uuid": "灵魂印记", + "hexcasting.iota.oneironaut:uuid.label": "%s的灵魂印记", + "biome.oneironaut.noosphere_sea": "智识之海", + "biome.oneironaut.deep_noosphere": "§5§k我不该来这里。§r", + "text.oneironaut.clearIdeasResponse": "已清除iota存储映射。", + "effect.oneironaut.detection_resistance": "媒质遮罩", + "effect.oneironaut.not_missing": "扬升共振", + "effect.oneironaut.rumination": "反刍", + "effect.oneironaut.disintegration": "侵解", + "effect.oneironaut.disintegration_protection": "固质", + "enchantment.oneironaut.overcast_damage": "意识撕裂", + "itemGroup.oneironaut.oneironaut": "航梦", + "oneironaut.tooltip.wispcapturedevice.haswisp": "包含具有%s个紫水晶粉、咒术印识为%s的咒灵。", + "oneironaut.tooltip.wispcapturedevice.nowisp": "没有咒灵。", + "oneironaut.tooltip.wispcapturedevice.uninitialized": "媒质储库未初始化。", + "text.oneironaut.lorem_ipsum": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", + "oneironaut.tooltip.lich_media_amount": "储库含有:%s/%s(%s)", + + "oneironaut.conceptmodifier.falsy": "玩家引用修饰:假值", + "oneironaut.conceptmodifier.ref_comparison": "玩家引用修饰:比较", + "oneironaut.conceptmodifier.gtp_splat": "卓越传送物品栏保护", + "oneironaut.conceptmodifier.antierosion": "侵解保护", + "oneironaut.conceptmodifier.nobloodcast": "耗血施法保护", + "oneironaut.conceptmodifier.keepinv": "保留物品栏", + "oneironaut.conceptmodifier.totem": "不死", + "oneironaut.conceptmodifier.attribute": "属性修饰", + + "oneironaut.conceptmodifier.attribute.overlay.positive": "令%s增加%s%%", + "oneironaut.conceptmodifier.attribute.overlay.negative": "令%s降低%s%%", + + "oneironaut.conceptmodifier.nocore": "未检测到概念核心。要让修饰件运作,应破坏修饰件并重新放置在核心旁。", + "oneironaut.conceptmodifier.nomodifier": "概念修饰符无法初始化。", + "oneironaut.conceptmodifier.lens.potency": "强度:%s", + "oneironaut.conceptmodifier.lens.comparison": "比较返回值:%s" +}