From 5700d6a8da7fd44c8f4b0e5940411b1072e51567 Mon Sep 17 00:00:00 2001 From: Sam <74768376+JustS-js@users.noreply.github.com> Date: Wed, 22 Jan 2025 22:49:22 +0300 Subject: [PATCH 1/2] Create ru_ru.json --- .../resources/assets/hexal/lang/ru_ru.json | 410 ++++++++++++++++++ 1 file changed, 410 insertions(+) create mode 100644 Common/src/main/resources/assets/hexal/lang/ru_ru.json diff --git a/Common/src/main/resources/assets/hexal/lang/ru_ru.json b/Common/src/main/resources/assets/hexal/lang/ru_ru.json new file mode 100644 index 00000000..819d061b --- /dev/null +++ b/Common/src/main/resources/assets/hexal/lang/ru_ru.json @@ -0,0 +1,410 @@ +{ + "block.hexal.slipway": "Протоки", + "block.hexal.mediafied_storage": "Моут нексус", + "block.hexal.relay": "Реле", + + "entity.hexal.wisp.projectile": "Метательный висп", + "entity.hexal.wisp.ticking": "Цикличный висп", + "entity.hexal.wisp.wandering": "Блуждающий висп", + + + "hexcasting.mishap.non_player": "%s ожидает сотворения игроком.", + "hexcasting.mishap.no_wisp": "%s ожидает сотворения виспом.", + "hexcasting.mishap.others_wisp": "Этот висп принадлежит %s, а не вам.", + "hexcasting.mishap.no_links": "%s не имеет связей.", + "hexcasting.mishap.self_link": "Попытка привязать %s к самому себе.", + "hexcasting.mishap.no_bound_storage": "Отсутствует привязанный Моут Нексус.", + "hexcasting.mishap.storage_unloaded": "Привязанный Моут Нексус непрогружен.", + "hexcasting.mishap.excessive_reproduction": "Висп %s попытался слишком быстро размножиться; ограничение в 1 размножение на такт.", + "hexcasting.mishap.illegal_interworld_iota": "Попытка внести йоту %s в междумирье, йоты этого типа не могут быть добавлены в Книгу Вечности.", + + "hexcasting.mishap.invalid_value.class.linkable": "связываемое", + "hexcasting.mishap.invalid_value.class.wisp": "висп", + "hexcasting.mishap.invalid_value.class.consumable_entity": "поглощаемая сущность", + "hexcasting.mishap.invalid_value.class.wisp.casting": "исполняющий висп", + "hexcasting.mishap.invalid_value.class.type.block": "тип блока", + "hexcasting.mishap.invalid_value.class.type.item": "тип предмета", + "hexcasting.mishap.invalid_value.class.type.entity": "сущность или тип сущности", + "hexcasting.mishap.invalid_value.class.type.block.able": "тип предмета, имеющего форму блока", + "hexcasting.mishap.invalid_value.class.type.list.double": "список чисел", + "hexcasting.mishap.invalid_value.class.gate": "врата", + "hexcasting.mishap.invalid_value.class.mote": "моут", + "hexcasting.mishap.invalid_value.class.moteentity.itemitemframe": "моут, сущность предмета, или рамка", + "hexcasting.mishap.invalid_value.moteitemtype": "моут или тип предмета", + "hexcasting.mishap.invalid_value.motemotelist": "моут или список моутов", + "hexcasting.mishap.invalid_value.motemotelistmotelistlist": "моут, список моутов, или список из списков моутов", + "hexcasting.mishap.invalid_value.veclist": "вектор или список векторов", + "hexcasting.mishap.invalid_value.blockitementityitemframeitem": "блок, сущность предмета, рамка, или моут", + "hexcasting.mishap.invalid_value.entity.itemitemframe": "сущность предмета или рамка", + "hexcasting.mishap.invalid_value.int.strictly_positive": "строго положительное целое число", + "hexcasting.mishap.invalid_value.crafting_recipe": "рабочий рецепт создания", + "hexcasting.mishap.invalid_value.mote_duplicated": "каждый моут должен появляться лишь раз", + "hexcasting.mishap.invalid_value.cant_combine_motes": "два моута, которые можно соединить", + "hexcasting.mishap.invalid_value.mote_not_size_one": "моут без NBT информации или количеством в единицу", + "hexcasting.mishap.invalid_value.gate.offset": "сдвиг максимум на %f (в блоках)", + + + "hexcasting.iota.hexal:iota_type": "Тип йоты", + "hexcasting.iota.hexal:entity_type": "Тип сущности", + "hexcasting.iota.hexal:item_type": "Тип предмета", + "hexcasting.iota.hexal:gate": "Врата", + "hexcasting.iota.hexal:item": "Предмет", + + "hexal.spelldata.entity_type": "Тип", + "hexal.spelldata.gate": "Врата %d", + "hexal.spelldata.mote": "%s x%d", + + "hexcasting.action.hexal:type/iota": "Преображение Классификатора", + "hexcasting.action.hexal:type/entity": "Преображение Физика", + "hexcasting.action.hexal:type/block_item": "Преображение Сортировщика", + "hexcasting.action.hexal:type/item_held": "Отражение Сортировщика", + + "hexcasting.action.hexal:get_entity/type": "Объединение Сущности: Тип", + "hexcasting.action.hexal:zone_entity/type": "Объединение Области: Тип", + "hexcasting.action.hexal:zone_entity/not_type": "Возвышение Области: Не Тип", + + "hexcasting.action.hexal:current_tick": "Отражение Хронометриста", + "hexcasting.action.hexal:breath": "Отражение Водолаза", + "hexcasting.action.hexal:health": "Отражение Медсестры", + "hexcasting.action.hexal:armour": "Отражение Оруженосца", + "hexcasting.action.hexal:toughness": "Отражение Боксёра", + "hexcasting.action.hexal:light_level": "Отражение Фонарщика", + + "hexcasting.action.hexal:factorial": "Факториальное Преображение", + "hexcasting.action.hexal:running/sum": "Преображение Промежуточной Суммы", + "hexcasting.action.hexal:running/mul": "Преображение Промежуточного Произведения", + + "hexcasting.action.hexal:everbook/read": "Гамбит Мнемосины", + "hexcasting.action.hexal:everbook/write": "Гамбит Элизиума", + "hexcasting.action.hexal:everbook/delete": "Гамбит Лета", + "hexcasting.action.hexal:everbook/toggle_macro": "Гамбит Бриггиты", + + "hexcasting.action.hexal:smelt": "Плавка", + "hexcasting.action.hexal:freeze": "Заморозка", + "hexcasting.action.hexal:falling_block": "Падающий Блок", + "hexcasting.action.hexal:place_type": "Поставить Блок II", + "hexcasting.action.hexal:particles": "Частицы", + + "hexcasting.action.hexal:interop/fabric_only/phase_block": "Испарить Блок", + + "hexcasting.action.hexal:wisp/summon/projectile": "Призыв Метательного Виспа", + "hexcasting.action.hexal:wisp/summon/ticking": "Призыв Цикличного Виспа", + "hexcasting.action.hexal:wisp/self": "Отражение Личности", + "hexcasting.action.hexal:wisp/media": "Отражение Резервуара", + "hexcasting.action.hexal:wisp/hex": "Преображение Менеджера", + "hexcasting.action.hexal:wisp/owner": "Объединение Верности", + "hexcasting.action.hexal:wisp/move/target/set": "Гамбит Следопыта", + "hexcasting.action.hexal:wisp/move/target/get": "Отражение Следопыта", + "hexcasting.action.hexal:wisp/move/speed/set": "Ускорение", + "hexcasting.action.hexal:wisp/move/speed/get": "Отражение Спидометра", + "hexcasting.action.hexal:wisp/trigger/tick": "Задержать Виспа", + "hexcasting.action.hexal:wisp/trigger/comm": "Прослушивание", + "hexcasting.action.hexal:wisp/trigger/move": "Скитание", + "hexcasting.action.hexal:wisp/consume": "Поглощение Виспа", + "hexcasting.action.hexal:wisp/seon/set": "Связывание Виспа", + "hexcasting.action.hexal:wisp/seon/get": "Отражение Фамильяра", + "hexcasting.action.hexal:wisp/transfer/allow": "Разрешение Передачи", + "hexcasting.action.hexal:wisp/transfer/disallow": "Запрет Передачи", + "hexcasting.action.hexal:wisp/transfer/others/allow": "Разрешение Передачи Другим", + "hexcasting.action.hexal:wisp/transfer/others/disallow": "Запрет Передачи Другим", + + "hexcasting.action.hexal:get_entity/wisp": "Преображение Сущности: Висп", + "hexcasting.action.hexal:zone_entity/wisp": "Объединение Области: Висп", + "hexcasting.action.hexal:zone_entity/not_wisp": "Объединение Области: Не Висп", + + "hexcasting.action.hexal:link": "Связь", + "hexcasting.action.hexal:link/others": "Связать Других", + "hexcasting.action.hexal:link/unlink": "Отвязать", + "hexcasting.action.hexal:link/unlink/others": "Отвязать Других", + "hexcasting.action.hexal:link/get": "Преображение Справочника", + "hexcasting.action.hexal:link/get_index": "Преображение Распознавания", + "hexcasting.action.hexal:link/num": "Отражение Популярности", + + "hexcasting.action.hexal:link/comm/send": "Отправить Йоту", + "hexcasting.action.hexal:link/comm/read": "Отражение Декламации", + "hexcasting.action.hexal:link/comm/num": "Отражение Почтмейстера", + "hexcasting.action.hexal:link/comm/clear": "Гамбит Прочистки", + "hexcasting.action.hexal:link/comm/open_transmit": "Открыть Канал", + "hexcasting.action.hexal:link/comm/close_transmit": "Закрыть Канал", + + "hexcasting.action.hexal:gate/make": "Отражение Врат", + "hexcasting.action.hexal:gate/mark": "Метка Врат", + "hexcasting.action.hexal:gate/unmark": "Снятие Метки Врат", + "hexcasting.action.hexal:gate/mark/num/get": "Преображение Метки", + "hexcasting.action.hexal:gate/mark/get": "Объединение Метки", + "hexcasting.action.hexal:gate/close": "Закрытие Врат", + + "hexcasting.action.hexal:mote/storage/bind": "Связка с Хранилищем", + "hexcasting.action.hexal:mote/storage/bind/temp": "Связка с Хранилищем - Временная", + "hexcasting.action.hexal:mote/contained_type/get": "Отражение Ивентаризма", + "hexcasting.action.hexal:mote/contained/get": "Преображение Ивентаризма", + "hexcasting.action.hexal:mote/storage/remaining_capacity/get": "Отражение Вместимости", + "hexcasting.action.hexal:mote/storage/contains": "Объединение Сдерживания", + "hexcasting.action.hexal:mote/make": "Переосмыслить Предмет", + "hexcasting.action.hexal:mote/return": "Вернуть Предмет", + "hexcasting.action.hexal:mote/count/get": "Преображение Веса", + "hexcasting.action.hexal:mote/combine": "Преображение Скопления", + "hexcasting.action.hexal:mote/combinable": "Преображение Скопления II", + "hexcasting.action.hexal:mote/split": "Гамбит Расщепления", + "hexcasting.action.hexal:mote/storage/get": "Преображение Депо", + "hexcasting.action.hexal:mote/storage/set": "Гамбит Депо", + "hexcasting.action.hexal:mote/craft": "Создание", + "hexcasting.action.hexal:mote/craft/preview": "Симуляция Создания", + "hexcasting.action.hexal:mote/villager/level/get": "Преображение Старшинства", + "hexcasting.action.hexal:mote/trade/get": "Преображение Предложения", + "hexcasting.action.hexal:mote/trade": "Торговля", + "hexcasting.action.hexal:mote/use_on": "Применить Предмет", + + "hexcasting.action.hexal:tick": "Ускорение", + + + + "hexcasting.action.book.hexal:light_level": "Отражение Фонарщика", + + "hexcasting.action.book.hexal:running/sum": "Преобр. Промеж. Суммы", + "hexcasting.action.book.hexal:running/mul": "Преобр. Промеж. Произ.", + + "hexcasting.action.book.hexal:get_entity/wisp": "Преобр. Сущ.: Висп", + "hexcasting.action.book.hexal:zone_entity/wisp": "Объед. Обл.: Висп", + "hexcasting.action.book.hexal:zone_entity/not_wisp": "Объед. Обл.: Не Висп", + + "hexcasting.action.book.hexal:mote/storage/bind/temp": "Связка с Хранилищем - Врем.", + + + + "hexal.entry.slipways": "Протоки", + "hexal.page.slipways": "Я слышал истории о жеодах, в которых находили сверкающие порталы, прозванные протоками. Эти протоки обычно описываются как источники сверкающих искр, схожих с $(l:patterns/spells/wisps)$(thing)виспами/$, о которых я уже слышал ранее. Возможно в этой схожести и следует искать ответы.", + + "hexal.entry.relay": "Реле", + "hexal.page.relay.0": "Я часто мечтаю о возможности $(l:patterns/spells/links#hexal:link)$(action)связать/$ друг с другом несколько $(l:patterns/spells/wisps)$(thing)виспов/$, чтобы они делились информацией и запасом мысли на больших расстояниях. Однако, создание длинных цепочек из виспов для передачи всего этого - неудобно, и, к тому же, дорого. Для решения этой задачи я создал Реле. Так как это плотный блок, то, в отличие от конструкций из мысли, они способны удерживать связи без дополнительных затрат.", + "hexal.page.relay.1": "Любые реле, связанные друг с другом, формируют сеть, позволяя любому привязанному к этой сети виспу разделять запасы мысли между друг другом, будто бы они связанны напрямую. К тому же, любая йота, отправленная на один из реле в сети, передаётся всем привязанным объектам, не являющимся реле. Реле имеет радиус в 32 блока (два реле могут связаться на расстоянии в 64 блока). Цвет связей в сети может быть изменён нажатием правой кнопкой мыши с раскрашивателем в руке.", + "hexal.page.relay.2": "Реле не имеют владельца, поэтому, если хотите заставить вашего виспа $(l:patterns/spells/wisps#hexal:wisp/transfer/allow)$(action)передать запасы мысли/$ с помощью реле, вам придётся намеренно разрешить ему это.", + + "hexal.entry.hexal_basics": "Простые руны Hexal", + "hexal.page.hexal_basics.current_tick": "Добавляет на стэк число, которое, как мне кажется, представляет собой время с точки зрения Природы; Если я исполню руну прямо сейчас, а потом исполню её вновь ровно через секунду, то число увеличится на 20 единиц.", + "hexal.page.hexal_basics.breath": "Убирает Живую Сущность со стэка и возвращает оставшееся количество воздуха в лёгких (то есть, насколько близка она к утоплению).", + "hexal.page.hexal_basics.health": "Убирает Живую Сущность со стэка и возвращает оставшееся количество жизни (то есть, насколько близка она к смерти).", + "hexal.page.hexal_basics.armour": "Убирает Живую Сущность со стэка и возвращает количество брони.", + "hexal.page.hexal_basics.toughness": "Убирает Живую Сущность со стэка и возвращает количество крепкости (другой параметр брони).", + "hexal.page.hexal_basics.light_level": "Убирает вектор позиции со стэка и возвращает уровень освещения на этой позиции.", + + "hexal.entry.hexal_maths": "Математика Hexal", + "hexal.page.hexal_maths.factorial": "Забирает число со стэка и считает его факториал, например, из 4 получится 4*3*2*1=24.", + "hexal.page.hexal_maths.running/sum": "Забирает список со стэка и считает сумму последовательности чисел, например, из [1,2,5] получится [1,3,8].", + "hexal.page.hexal_maths.running/mul": "Забирает список со стэка и считает произведение последовательности чисел, например, из [1,2,5] получится [1,2,10].", + + "hexal.entry.hexal_spell": "Продвинутые руны Hexal", + "hexal.page.hexal_spell.smelt.0": "Убирает позицию, сущность предмета, или моут со стэка, а после либо переплавляет блок на указанной позиции, либо переплавляет все предметы в сущности или моуте.", + "hexal.page.hexal_spell.smelt.1": "Стоит три четверти $(l:items/amethyst)$(item)Аметистовой Пыли/$ за один переплавленный предмет (то есть, три четверти $(l:items/amethyst)$(item)Аметистовой Пыли/$ за переплавку блока, 6 $(l:items/amethyst)$(item)Аметистовой Пыли/$ на переплавку 8 выброшенных предметов.)", + "hexal.page.hexal_spell.freeze": "Замораживает блок на переданной позиции. Например, вода превратится в лёд, и лёд в плотный лёд. Стоит одну $(l:items/amethyst)$(item)Аметистовую Пыль/$.", + "hexal.page.hexal_spell.falling_block": "Убирает позицию со стэка, и заставляет блок на позиции упасть словно песок или гравий. Стоит полторы $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.hexal_spell.place_type": "Принимает тип предмета или моут с позицией, и пытается поставить блок этого типа на позицию. Если был передан моут, то блок поставится из записи этого моута. Стоит одну восьмую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.hexal_spell.particles": "Принимает позицию или список позиций, и либо создаёт частицу на позиции, либо создаёт линии из частиц между позициями в списке. Стоит две сотые $(l:items/amethyst)$(item)Аметистовой Пыли/$ за позицию.", + + "hexal.entry.fabric_only_hexal": "Продвинутые руны Hexal для Fabric", + "hexal.page.fabric_only_hexal.interop/fabric_only/phase_block": "Принимает позицию и число, и делает блок на позиции неосязаемым на указанное число секунд. Стоит одну десятитысячную $(l:items/amethyst)$(item)Аметистовой пыли/$ за квадрат числа секунд.", + + "hexal.entry.wisps": "Виспы", + "hexal.page.wisps.0": "Я обнаружил способ создания сущностей прямо из самой мысли, видимых остальным людям и способных двигаться и действовать почти что самостоятельно. Они способны исполнять руны вместо меня, работая схоже с $(l:patterns/meta#hexcasting:eval)$(action)Hermes' Gambit/$. Однако им всё ещё требуется моё внимание, и одновременно я могу поддерживать ограниченное число сущностей, оставляя исполнение остальных на следующий такт.", + "hexal.page.wisps.1": "При создании я назначаю им 'резервуар' мысли, к которому они имеют доступ, и который забирается у меня и используется виспом. Виспы тратят часть своего резервуара на собственное существование, и потом исполняют список рун, который себе присвоили. Видимо, все виспы забирают три $(l:items/amethyst)$(item)Аметистовые Пыли/$ на создание, в добавление к запасу мысли, используемом для резервуара.", + "hexal.page.wisps.2": "Природа сильно наказывает виспов, пытающихся удерживать истинное имя других заклинателей, подвергая их 20-ти кратному увеличению затрат на поддержку своей жизни за каждую йоту истинного имени, содержащуюся в их хранилище.", + "hexal.page.wisps.wisp/summon/projectile.0": "Этот висп при создании запускается словно стрела, исполняя свой хекс на всём во что попадает. При попадании на стэке изначально будет находится сущность самого виспа, а потом сущность или позиция попадания.", + "hexal.page.wisps.wisp/summon/projectile.1": "После них уже идёт указанный мной набор рун. Первый принимаемый вектор это изначальная позиция созданного виспа, а второй вектор - направление полёта, и при этом длина вектора явно влияет на скорость. Стоимость призыва увеличивается с квадратом длины вектора скорости. Переданное число задаёт резервуар виспа в $(l:items/amethyst)$(item)Аметистовой Пыли/$. Он теряет примерно 3 десятые $(l:items/amethyst)$(item)Аметистовой Пыли/$ каждую секунду существования, и имеет радиус действия в 4 блока.", + "hexal.page.wisps.wisp/summon/ticking.0": "Эта руна схожа с Призывом Метательного Виспа, но лишь с одним входным вектором в качестве позиции создания. Цикличные виспы неподвижны при создании, и повторно исполняют свой хекс аж до 20 раз в секунду.", + "hexal.page.wisps.wisp/summon/ticking.1": "При первом исполнении стэк стартует с сущностью виспа в начале, и все последующие исполнения стартуют со стэком и разумом ворона, содержащем состояние стэка в конце предыдущего исполнения. Этот висп имеет более слабую форму, из-за чего теряет гораздо больше мысли в секунду, около семи десятых $(l:items/amethyst)$(item)Аметистовой Пыли/$ в секунду после появления. Он имеет радиус действия равный 8 блокам.", + "hexal.page.wisps.wisp/self": "Добавляет сущность самого виспа на стэк. Эта руна должна обязательно исполняться виспом; попытка исполнить руну с помощью посоха провалится, причём довольно эффектно.", + "hexal.page.wisps.wisp/media": "Добавляет количество мысли в резервуаре виспа на стэк. Эта руна должна обязательно исполняться виспом; попытка исполнить руну с помощью посоха провалится, причём довольно эффектно.", + "hexal.page.wisps.wisp/hex": "Убирает сущность виспа со стэка, и заменяет её на хекс, содержащийся внутри виспа. Указанный висп должен принадлежать вам, или иметь $(l:patterns/spells/wisps#hexal:wisp/transfer/allow)$(action)разрешение/$ на передачу с тем, кто исполняет руну.", + "hexal.page.wisps.wisp/owner": "Убирает сущность виспа и другую сущность со стэка, и возвращает истину если другая сущность владеет виспом, иначе ложь.", + "hexal.page.wisps.wisp/move/target/set": "Убирает позицию со стэка; Цикличный Висп, исполнивший эту руну, начнёт движение по прямой к указанной позиции (сталкиваясь с плотными поверхностями на пути) пока не достигнет своей цели.", + "hexal.page.wisps.wisp/move/target/get": "Добавляет на стэк позицию, к которой стремится исполнивший её Цикличный Висп.", + "hexal.page.wisps.wisp/move/speed/set": "Убирает число со стэка, и устанавливает максимальную скорость Цикличного Виспа равной указанному числу.", + "hexal.page.wisps.wisp/move/speed/get": "Добавляет на стэк максимальную скорость исполняющего Цикличного Виспа.", + "hexal.page.wisps.wisp/transfer/allow": "Когда два виспа $(l:patterns/spells/links)$(thing)связаны/$ друг с другом, они передают запасы мысли друг между другом пока не сбалансируются. Обычно это происходит между виспами одного хозяина. Руна принимает индекс, и разрешает виспу передавать запасы мысли с связываемой сущностью по этому индексу.", + "hexal.page.wisps.wisp/transfer/disallow": "Соответственно, принимает индекс и запрещает виспу передавать запасы мысли с связываемой сущностью по этому индексу.", + "hexal.page.wisps.wisp/transfer/others/allow": "Принимает вашего виспа и индекс, разрешая виспу передавать запасы мысли с связываемой сущностью по этому индексу.", + "hexal.page.wisps.wisp/transfer/others/disallow": "Принимает вашего виспа и индекс, запрещая виспу передавать запасы мысли с связываемой сущностью по этому индексу.", + "hexal.page.wisps.get_entity/wisp": "Превращает позицию со стэка в виспа на этой позиции (или $(l:casting/influences)$(thing)Ничто/$ если виспов нет).", + "hexal.page.wisps.zone_entity/wisp": "Принимает позицию и максимальную дистанцию со стэка, и превращает их в список виспов около указанной позиции.", + "hexal.page.wisps.zone_entity/not_wisp": "Принимает позицию и максимальную дистанцию со стэка, и превращает их в список не-виспов около указанной позиции.", + "hexal.page.wisps.wisp/trigger/tick": "Убирает целое число со стэка, и задерживает исполнение виспа минимум на указанное число, умноженное на 1/20 секунды. Эта руна, как и другие триггеры, делит стоимость жизни виспа пока он не исполняет хексы.", + "hexal.page.wisps.wisp/trigger/comm": "Следующее исполнение виспа не осуществиться до тех пор, пока он не получит хотя бы одну $(l:patterns/spells/links#hexal:link/comm/send)$(action)коммуникацию/$.", + "hexal.page.wisps.wisp/trigger/move": "Следующее исполнение виспа не осуществиться до тех пор, пока он не достигнет позиции, к которой $(l:patterns/spells/wisps#hexal:wisp/move/target/set)$(action)перемещается/$.", + + "hexal.entry.links": "Связи", + "hexal.page.links.0": "Эти руны осуществляют систему для коммуникации информации между $(l:patterns/spells/wisps)$(thing)виспами/$, и не только. Существует несколько рун для создания связей, и ещё несколько для отправки и получения йот через осуществлённую связь. У виспа может быть любое количество активных связей, каждая из которых будет тратить небольшое количество мысли каждую одну двадцатую секунды.", + "hexal.page.links.1": "Такие связи у любой связываемой сущности хранятся в виде списка и индексируются в порядке создания. Их индексы используются в множестве рун. \"Связываемые сущности\" не являются отдельным типом, а лишь отсылаются на всё, что может быть связанно (например Entity -> Связываемые сущности, Vec -> Связываемые блоки, ...). Связи могут существовать максимум на расстоянии суммы радиусов двух связанных сущностей. Для связи сущностей на большом расстоянии мне потребуется рассмотреть $(l:items/relay)$(item)Реле/$.", + "hexal.page.links.link": "Связывает исполнителя с сущностью на стэке, которая обязательно должна быть связываемой. Стоит один $(l:items/amethyst)$(item)Осколок Аметиста/$.", + "hexal.page.links.link/others": "Эта руна может быть исполнена любым инструментом. Связывает две сущности, которые являются связываемыми. Стоит один $(l:items/amethyst)$(item)Осколок Аметиста/$.", + "hexal.page.links.link/unlink": "Разрывает связь по индексу в списке исполнителя. Стоит две $(l:items/amethyst)$(item)Аметистовые Пыли/$.", + "hexal.page.links.link/unlink/others": "Принимает две связываемые сущности и разрывает между ними связь. Стоит две $(l:items/amethyst)$(item)Аметистовые Пыли/$.", + "hexal.page.links.link/get": "Убирает индекс со стэка, и возвращает сущность, связанную по указанной индексом связи.", + "hexal.page.links.link/get_index": "Убирает сущность со стэка, и возвращает индекс связи с этой сущностью (или -1, если исполнитель не связан с сущностью).", + "hexal.page.links.link/num": "Добавляет число связей виспа на стэк.", + "hexal.page.links.link/comm/send": "Убирает йоту и индекс со стэка, после чего отсылает йоту по связи с заданным индексом. Стоит одну сотую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.links.link/comm/read": "Когда что-либо получает йоту по связи, она добавляется в очередь на чтение. Эта руна забирает первую йоту из очереди на стэк.", + "hexal.page.links.link/comm/num": "Добавляет на стэк число непрочитанных йот в очереди исполнителя.", + "hexal.page.links.link/comm/clear": "Очищает очередь непрочитанных йот исполнителя.", + "hexal.page.links.link/comm/open_transmit": "Руна, схожая с $(l:patterns/patterns_as_iotas#hexcasting:open_paren)$(action)Интроспекцией/$, отсылает все нарисованные мною руны по связи, указанной индексом на верхушке стэка. Поток останавливается при написании руны $(l:patterns/spells/links#hexal:link/comm/close_transmit)$(action)Закрыть Канал/$.", + "hexal.page.links.link/comm/close_transmit": "При начертании после руны $(l:patterns/spells/links#hexal:link/comm/open_transmit)$(action)Open Transmit/$ я прекращаю посылать нарисованные руны. Если $(l:patterns/spells/links#hexal:link/comm/open_transmit)$(action)Open Transmit/$ или $(l:patterns/spells/links#hexal:link/comm/close_transmit)$(action)Закрыть Канал/$ исполняются промежуточным исполнителем вроде виспа, они вызовут ошибку.", + + "hexal.entry.tick": "Ускорение", + "hexal.page.tick.tick.0": "Заставляет блок на указанной позиции исполнить свою стандартную задачу в момент исполнения руны.", + "hexal.page.tick.tick.1": "Исполнение руны стоит одну сотую $(l:items/amethyst)$(item)Аметистовой Пыли/$, плюс сотая $(l:items/amethyst)$(item)Аметистовой Пыли/$ за каждую предыдущую руну, исполненую на этом блоке в хексе.", + + "hexal.entry.gates": "Врата", + "hexal.page.gates.0": "Врата являются моим последним исследованием в области разрыва пространства для перемещения на огромные расстояния. Врата позволяют мне то, что было недоступно при предыдущих попытках - $(o)эффективно перемещатся$(). Есть три варианта врат, которые я научился создавать. Каждые врата требуют огромного количества мысли, чтобы выжечь их в ткани реальности, но в обмен невероятно дёшевы для использования.", + "hexal.page.gates.1": "Закреплённые Врата Позиции прикреплены к конкретной позиции в мире, и отсылают на эту позицию всё, что через них пройдёт. Закреплённые Врата Сущности прикреплены к живому существу, населяющему ваш мир, и отсылают проходящих в них на позицию сущности (плюс сдвиг, указанный при выжигании врат).", + "hexal.page.gates.2": "Плывущие Врата ни к чему не прикреплены, и могут отправлять сущностей куда угодно, при этом теряя свою эффективность, и отсылая сущностей на позицию в радиусе моего действия. При создании врат я получаю ссылку на них на свой стэк. Имея ссылку ан врата, я могу отметить сущностей этими вратами, а после закрыть врата по ссылке, отправляя всех помеченных сущностей через врата. Стоит обратить внимание, что закрытие врат их не уничтожает; как только я заимею йоту, представляющую врата, я могу бесконечно её использовать - разумно сохранить её куда-нибудь.", + "hexal.page.gates.gate/make": "Добавляет новую йоту врат на стэк. Любая копия этой йоты будет ссылаться на те же врата. Стоит 32 $(l:items/amethyst)$(item)Заряженных осколка аметиста/$. Если передать Ничто, то создаются Плывущие Врата. Если передать вектор, то создадутся Закреплённые Врата Позиции, а если передать вектор и сущность, то появятся Закреплённые Врата Сущности.", + "hexal.page.gates.gate/mark": "Поглощает йоту и сущность. Помечает сущность для телепортации при следующем закрытии врат. Стоит одну двадцатую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.gates.gate/unmark": "Поглощает йоту и сущность. Снимает метку врат с сущности, если она была помечена руной $(l:patterns/spells/gates#hexal:gate/mark)$(action) Gate's Opening/$. Указанная сущность не телепортируется при закрытии врат.", + "hexal.page.gates.gate/mark/num/get": "Поглощает йоту врат, и возвращает количество сущностей, отмеченных этими вратами.", + "hexal.page.gates.gate/mark/get": "Поглощает йоту и сущность, возращает наличие метки у сущности.", + "hexal.page.gates.gate/close": "Поглощает врата, не являющиеся плывущими, или плывущие врата с вектором позиции. Телепортирует все отмеченные вратами сущности на позицию, указанную при создании или начертании, соответственно. Стоит половину $(l:items/amethyst)$(item)Осколка Аметиста/$, плюс $(l:items/amethyst)$(item)Аметистовую Пыль/$ за один метр одной перемещаемой сущности, если врата были плывущими.", + + "hexal.entry.motes": "Моуты", + "hexal.page.motes.explanation.0": "Эта глава расскажет о способе расщепления предметов в мысль, давая возможность ссылаться на них, считать их, принести порядок в них и в меня и в мой разум и-. Йота переосмысленного предмета (называемая моутом), добавленная на стэк, ссылается на конкретную запись моута внутри Моут Нексуса. Иначе и быть не может - что-то должно удерживать поток мыслей, представляющий конкретный предмет, ведь иначе сама мысль растворится в небытие -в небытие, словно остатки моего рассудка-.", + "hexal.page.motes.explanation.1": "Любая копия первой йоты моута, ссылающегося на запись, тоже будет ссылаться на ту же запись, и любые изменения одной копии повлияют на все остальные - это разумно, ведь все они указывают на одну и ту же мысль. Разделяя и сливая и создавая и торгуя я влияю на всё и всех и вся и всё-.", + "hexal.page.motes.explanation.2": "Моут Нексус ограничен в некотором смысле, но лишь частично. Он не может содержать более 1023 записей, но любая запись способна хранить бесчисленное количество предметов. Мне ещё предстоит найти границы, если они существуют, я могу сливать и скреплять и совмещать их бесконечно и записи растут и растут и разрастаются...", + "hexal.page.motes.mediafed_storage_recipe": "Моут Нексус создаётся из разума картографера, вечно отрисовывающего и сопостовляющего содержимое $(item)Ящика Шалкера/$, в который его заточили.", + "hexal.page.motes.mote/storage/bind": "Укажите позицию Моут Нексуса в мире и привяжите себя к нему, что заставит все переосмысленные вами предметы добавляться в указанный нексус. Если указать позицию любого другого блока, то вы отвяжете привязанный к вам нексус. Стоит 32 $(l:items/amethyst)$(item)Аметистовой пыли/$.", + "hexal.page.motes.mote/storage/bind/temp": "Укажите позицию Моут Нексуса в мире и привяжите себя к нему до конца исполнения хекса, временно перезаписывая вашу основную связь. Стоит одну сотую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.motes.mote/contained_type/get": "Эта руна получает все типы моутов содержащиеся в привязанном моут Нексусе.", + "hexal.page.motes.mote/contained/get": "Эта руна получает все типы моутов содержащиеся в привязанном моут Нексусе, совпадающие с переданным типом предмета или способные скомбинироваться с переданным моутом.", + "hexal.page.motes.mote/storage/remaining_capacity/get": "Эта руна получает количество свободных записей привязанного Моут Нексуса.", + "hexal.page.motes.mote/storage/contains": "Возвращает истину если Моут Нексус на переданной позиции содержит моут переданного типа, или моут, способный скомбинироваться с переданным; иначе ложь.", + "hexal.page.motes.mote/make": "Эта руна переосмысляет предмет в мире (сущность предмета или предмет в рамке), превращая его в моут на вашем стэке. Если передать уже существующий моут, то руна добавит предмет к моуту. Переосмысление предмета стоит одну десятую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.motes.mote/return": "Возвращает все предметы из моута в мир на выбранной позиции. Если передать ещё и число, то оно задаст максимум возвращаемых предметов. Стоит одну десятую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.motes.mote/count/get": "Принимает моут и возвращает число предметов в записи, на которую указывает моут.", + "hexal.page.motes.mote/combine": "Совмещает два моута в один, соединяя записи, на которые оба моута ссылались. Любые копии второго моута станут ничем, а копии первого станут указывать на совмещённую запись. Именно это позволяет моутам хранить в разы больше предметов, чем помещается в мои руки!", + "hexal.page.motes.mote/combinable": "Возвращает истину если первый моут может соединиться с предметами, переданными вторым аргументом (с другим моутом, предметом в инвентаре, сущностью предмета или рамкой); иначе ложь.", + "hexal.page.motes.mote/split": "Отделяет переданное число предметов от переданного моута, создавая новый моут, ссылающийся на новую запись нексуса.", + "hexal.page.motes.mote/storage/get": "Получает позицию Моут нексуса, в котором содержится переданный моут.", + "hexal.page.motes.mote/storage/set": "переносит запись, связанную с переданным моутом, в Моут Нексус на указанной позиции. Руна вернёт новый моут, указывающий на новую запись, что, конечно же, уничтожит все предыдущие моуты, связанные с записью.", + "hexal.page.motes.mote/craft.0": "Принимает моут, список моутов, или список списков моутов. Возвращает список, содержащий результаты рецепта создания из переданных преметов. Например, при подаче Камень x128 вернётся [Каменная кнопка x128].", + "hexal.page.motes.mote/craft.1": "Ну а для комплексных рецептов мне нужно вставлять 'ничто' на те места, где потребовалась бы пустота в верстаке. К примеру, алмазная кирка потребует на вход [[Алмаз x2, Алмаз x2, Алмаз x2], [Ничто, Палка x2], [Ничто, Палка x2]] и вернёт [Алмазная кирка x2]. Стоит одну десятую $(l:items/amethyst)$(item)Аметистовой пыли/$.", + "hexal.page.motes.mote/craft/preview": "Вход такой же как и у руны $(l:patterns/spells/motes#hexal:mote/craft)$(action)Craft/$, однако принимаются не только моуты, но и Йоты Предметов. Возвращает список предметов, представляющих из себя результат руны $(l:patterns/spells/motes#hexal:mote/craft)$(action)Craft/$, если бы её применили с моутами в таком же порядке.", + "hexal.page.motes.mote/villager/level/get": "Принимает сущность Жителя и возвращает число, представляющее уровень развития Жителя в его ремесле.", + "hexal.page.motes.mote/trade/get.0": "Принимает сущность Жителя и возвращает все его доступные торги. Результатом будет список списков списков. Каждый торг представляет из себя два списка - ценник и получаемые предметы. Получаемые предметы - список, содержащий тип предметов и их количество.", + "hexal.page.motes.mote/trade/get.1": "Ценник - список из одной или двух пар, состоящих из типа предметов и их количества, которые житель требует для совершения торга. Например, один из торгов мог бы выглядеть как [[[Изумруд, 1]], [Редстоун пыль, 1]].", + "hexal.page.motes.mote/trade.0": "Принимает сущность Жителя, список моутов для торговли, и опциональный индекс предлагаемого торга. (int? сверху означает, что можно передать 2 или 3 аргумента, и 3-ий является опциональным целым числом).", + "hexal.page.motes.mote/trade.1": "Если индекс торга не был указан, руна попытается произвести все торги жителя по порядку, пока не найдёт подходящий под переданные параметры. Если индекс торга был указан, то руна сразу перейдёт к указанному торгу. После того, как руна отыщет подходящий торг, она начнёт исполнять торг до тех пор, пока не истощатся запасы (ваши или жителя). После успешной торговли руна вернёт выкупленные предметы в виде моута к вам на стэк.", + "hexal.page.motes.mote/trade.2": "При всём этом житель примет совершённые торги за ценный опыт, будто вы сами только что с ним торговали. Это повлияет на его развитие и изменит его торги. Исполнение руны стоит одну десятую $(l:items/amethyst)$(item)Аметистовой Пыли/$.", + "hexal.page.motes.mote/use_on": "Принимает моут, и либо сущность, либо позицию блока и вектор нормали. Этаруна использует предмет, записанный в моуте, на переданной цели. Моут обязательно должен либо иметь количество в единицу, либо содержать самые простые предметы (без NBT информации).", + + "hexal.entry.great_wisps": "Сложные руны Виспов", + "hexal.page.great_wisps.wisp/consume.0": "Убирает виспа со стэка, растворяя его. Йоты внутри виспа будут утеряны, но запасы мысли могут быть поглощены другим виспом, если руну использует он.", + "hexal.page.great_wisps.wisp/consume.1": "Стоит либо один $(l:items/amethyst)$(item)Осколок Аметиста/$, если висп принадлежит вам или имеет $(l:patterns/spells/wisps#hexal:wisp/transfer/allow)$(action)разрешение/$ на передачу с исполняющим, или половину запасов мысли поглощаемого виспа, если он не принадлежит вам и не имеет разрешения. Передача мысли не так эффективна. как бы мне этого хотелось, всвязи с чем теряется одна двадцатая запаса мысли поглощаемого виспа.", + "hexal.page.great_wisps.wisp/seon/set": "Эта руна позволит мне сконцентрироваться на ближайшем ко мне виспе; Я могу быть сконцентрирован лишь на одном виспе за раз, но любой такой висп тратит гораздо меньше собственной мысли на существование и имеет увеличенный радиус.", + "hexal.page.great_wisps.wisp/seon/get": "Возвращает сущность виспа, на котором я сконцентрирован. Я смогу сконцентрироваться на новом виспе лишь тогда, когда эта руна вернёт 'ничто'. (Это вовсе не сложная руна, я записал её сюда для своего удобства.)", + + "hexal.entry.types": "Типы", + "hexal.page.types.type/iota": "Убирает йоту со стэка и возвращает тип этой йоты на стэк.", + "hexal.page.types.type/entity": "Убирает сущность со стэка и возвращает на стэк тип этой сущности на переданной позиции.", + "hexal.page.types.type/block_item": "Убирает позицию, $(l:hexal.entry.motes)$(item)моут/$, сущность предмета, или рамку со стэка, и возвращает либо тип блока на указанной позиции, либо тип предмета на стэк (то есть Трава, Камень, Палка, и т.д.).", + "hexal.page.types.type/item_held": "Добавляет на стэк тип предмета из второй руки заклинателя, если она не пуста, иначе тип предмета в основной руке.", + + "hexal.page.types.get_entity/type": "Убирает тип сущности и позицию со стэка, и возвращает сущность этого типа на этой позиции, если она существует.", + "hexal.page.types.zone_entity/type": "Убирает тип сущности, позицию и радиус со стэка, и возвращает список всех сущностей этого типа в радиусе от указанной позиции.", + "hexal.page.types.zone_entity/not_type": "Убирает тип сущности, позицию, и радиус со стэка, и возвращает список всех сущностей, тип которых не совпадает с переданным, в радиусе от указанной позиции.", + + + "hexal.entry.everbook": "Книга Вечности", + "hexal.page.everbook.0": "Ваша Книга Вечности - странное место, к которому ваш сломанный разум имеет доступ. Существует множество Вас, которое, видимо, разделяют эту книгу, миры и миры прогресса, начиная вновь и вновь. Ваша Книга Вечности способна хранить руны в парах с йотами, словно $(l:greatwork/akashiclib)$(item)Akashic Record/$, однако хрупкая натура вашего разума заставляет использовать $(l:greatwork/akashiclib)$(item)Akashic Record/$ для доступа к Книге Вечности. Любой мир, в котором вы достигаете прозрения, откроет вам доступ к записям в Книге, которое вы добавите сейчас.", + "hexal.page.everbook.everbook/read": "Берёт позицию $(l:greatwork/akashiclib)$(item)Akashic Record/$, и Узор в качестве ключа, после чего достаёт йоту по ключу из Книги Вечности, сохраняя её в указанной $(l:greatwork/akashiclib)$(item)Akashic Record/$, если это возможно.", + "hexal.page.everbook.everbook/write": "Берёт позицию $(l:greatwork/akashiclib)$(item)Akashic Record/$, и Узор в качестве ключа, после чего сохраняет йоту из записи по ключу в вашу Книгу Вечности, используя тот же ключ.", + "hexal.page.everbook.everbook/delete": "Берёт узор и удаляет запись с ним из Книги Вечности.", + "hexal.page.everbook.everbook/toggle_macro.0": "Берёт узор и помечает ассоциированную запись в Книге Вечности как Узор, который, при начертании от вашей руки, применится как любая другая природная руна.", + "hexal.page.everbook.everbook/toggle_macro.1": "Когда вы чертите ключ из Книги Вечности, помеченный как Узор, и при этом Узор является списком рун, Природа исполнит каждый элемент списка так же, как сделала бы $(l:patterns/meta#hexcasting:eval)$(action)Hermes' Gambit/$, при этом не тратя вычислений. Попытка пометить Узором несуществующую или бесконечно-рекурсивную запись обернётся провалом.", + + "hexal.entry.everbook_entries": "Записи Книги Вечности", + "hexal.page.everbook_entries.0": "Каждая страница в этой главе отражает ключ одной из ваших записей в $(l:patterns/everbook)$(action)Книге Вечночти/$.", + + "hexal.everbook_pattern_entry.header": "Сохранённая Клавиша: %d", + "hexal.everbook_pattern_entry.macro_header": "Макрос-Клавиша: %d", + + + + "_comment": "Config Entries", + "text.autoconfig.hexal.title": "Hexal Configs", + "text.autoconfig.hexal.category.common": "Common", + "text.autoconfig.hexal.category.client": "Client", + "text.autoconfig.hexal.category.server": "Server", + + "text.autoconfig.hexal.option.server.terrainGeneration": "Terrain Generation", + "text.autoconfig.hexal.option.server.generateSlipwayGeodes": "Should generate Slipway Geodes?", + + "text.autoconfig.hexal.option.server.miscSpells": "Miscellaneous Spells", + "text.autoconfig.hexal.option.server.miscSpells.fallingBlockCost": "Falling Block Cost", + "text.autoconfig.hexal.option.server.miscSpells.freezeCost": "Freeze Cost", + "text.autoconfig.hexal.option.server.miscSpells.particlesCost": "Particles Cost per Vector", + "text.autoconfig.hexal.option.server.miscSpells.placeTypeCost": "Place Type Cost", + "text.autoconfig.hexal.option.server.miscSpells.smeltCost": "Smelt Cost per Item", + + "text.autoconfig.hexal.option.server.wispSpells": "Wisp Spells", + "text.autoconfig.hexal.option.server.wispSpells.moveSpeedSetCost": "Move Speed Set Base Cost", + "text.autoconfig.hexal.option.server.wispSpells.moveSpeedSetCost.@Tooltip[0]": "Cost to increase the movement speed of a wisp by 1.", + "text.autoconfig.hexal.option.server.wispSpells.moveSpeedSetCost.@Tooltip[1]": "This is the base cost, with greater increases being quadratically based on this.", + "text.autoconfig.hexal.option.server.wispSpells.summonTickingWispCost": "Summon Cyclic Wisp Cost", + "text.autoconfig.hexal.option.server.wispSpells.summonProjectileWispCost": "Summon Projectile Wisp Cost per Velocity Squared", + "text.autoconfig.hexal.option.server.wispSpells.summonProjectileWispMinCost": "Summon Cyclic Wisp Minimum Cost", + + "text.autoconfig.hexal.option.server.wispUpkeep": "Wisp Upkeep", + "text.autoconfig.hexal.option.server.wispUpkeep.tickingWispUpkeepPerTick": "Cyclic Wisp Upkeep per Tick", + "text.autoconfig.hexal.option.server.wispUpkeep.projectileWispUpkeepPerTick": "Projectile Wisp Upkeep per Tick", + "text.autoconfig.hexal.option.server.wispUpkeep.untriggeredWispUpkeepDiscount": "Untriggered Wisp Upkeep Discount", + "text.autoconfig.hexal.option.server.wispUpkeep.untriggeredWispUpkeepDiscount.@Tooltip[0]": "The upkeep cost of untriggered cyclic wisps is multiplied by this number.", + "text.autoconfig.hexal.option.server.wispUpkeep.untriggeredWispUpkeepDiscount.@Tooltip[1]": "Bounded from 0.0 to 1.0.", + "text.autoconfig.hexal.option.server.wispUpkeep.linkUpkeepPerTick": "Link Upkeep per Tick", + "text.autoconfig.hexal.option.server.wispUpkeep.seonDiscountFactor": "Bound Wisp Discount Factor", + "text.autoconfig.hexal.option.server.wispUpkeep.seonDiscountFactor.@Tooltip[0]": "The upkeep cost of bound wisps is divided by this number.", + "text.autoconfig.hexal.option.server.wispUpkeep.seonDiscountFactor.@Tooltip[1]": "Bounded from 2.0 to 200.0.", + "text.autoconfig.hexal.option.server.wispUpkeep.storingPlayerCostScaleFactor": "Storing Player Cost Scale Factor", + "text.autoconfig.hexal.option.server.wispUpkeep.storingPlayerCostScaleFactor.@Tooltip[0]": "The multiplicative cost increase of wisps containing an iota of another player.", + "text.autoconfig.hexal.option.server.wispUpkeep.storingPlayerCostScaleFactor.@Tooltip[1]": "Bounded from 1.0 to 200.0.", + + "text.autoconfig.hexal.option.server.linkSpells": "Link Spells", + "text.autoconfig.hexal.option.server.linkSpells.linkCost": "Link Cost", + "text.autoconfig.hexal.option.server.linkSpells.sendIotaCost": "Send Iota Cost", + "text.autoconfig.hexal.option.server.linkSpells.unlinkCost": "Unlink Cost", + + "text.autoconfig.hexal.option.server.gateSpells": "Gate Spells", + "text.autoconfig.hexal.option.server.gateSpells.makeGateCost": "Make Gate Cost", + "text.autoconfig.hexal.option.server.gateSpells.markGateCost": "Mark Gate Cost", + "text.autoconfig.hexal.option.server.gateSpells.closeGateCost": "Close Gate Cost", + + "text.autoconfig.hexal.option.server.itemSpells": "Item Spells", + "text.autoconfig.hexal.option.server.itemSpells.bindStorageCost": "Bind Storage Cost", + "text.autoconfig.hexal.option.server.itemSpells.bindTemporaryStorageCost": "Bind Temporary Storage Cost", + "text.autoconfig.hexal.option.server.itemSpells.makeItemCost": "Make Item Cost", + "text.autoconfig.hexal.option.server.itemSpells.returnItemCost": "Return Item Cost", + "text.autoconfig.hexal.option.server.itemSpells.craftItemCost": "Craft Item Cost", + "text.autoconfig.hexal.option.server.itemSpells.tradeItemCost": "Trade Item Cost", + "text.autoconfig.hexal.option.server.itemSpells.maxItemsReturned": "Maximum Items Returned", + "text.autoconfig.hexal.option.server.itemSpells.maxItemsReturned.@Tooltip[0]": "Maximum number of items that can be returned by Return Item.", + "text.autoconfig.hexal.option.server.itemSpells.maxItemsReturned.@Tooltip[1]": "Bounded from 640 to 64,000.", + "text.autoconfig.hexal.option.server.itemSpells.maxRecordsInMediafiedStorage": "Maximum Num. Records in Mote Nexus", + "text.autoconfig.hexal.option.server.itemSpells.maxRecordsInMediafiedStorage.@Tooltip[0]": "Maximum number of records that can be stored in a Mote Nexus.", + "text.autoconfig.hexal.option.server.itemSpells.maxRecordsInMediafiedStorage.@Tooltip[1]": "Bounded from 128 to 16,384.", + + + "text.autoconfig.hexal.option.server.greatSpells": "Great Spells", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOwnCost": "Consume Own Wisp Cost", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOwnCost.@Tooltip[0]": "Cost to consume a wisp you own,", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOwnCost.@Tooltip[1]": "or that doesn't fight back for some other reason.", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOthersCostPerMedia": "Consume Other's Wisp Cost per Media", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOthersCostPerMedia.@Tooltip[0]": "Cost to consume a wisp that fights back, this number is multiplied by", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOthersCostPerMedia.@Tooltip[1]": "the media possessed by the wisp you are attempting to consume.", + "text.autoconfig.hexal.option.server.greatSpells.consumeWispOthersCostPerMedia.@Tooltip[2]": "Bounded from 1.0 to 20.0.", + "text.autoconfig.hexal.option.server.greatSpells.seonWispSetCost": "Bind Wisp Cost", + "text.autoconfig.hexal.option.server.greatSpells.tickConstantCost": "Tick Constant Cost", + "text.autoconfig.hexal.option.server.greatSpells.tickConstantCost.@Tooltip": "Constant cost to tick a block. Always applies.", + "text.autoconfig.hexal.option.server.greatSpells.tickCostPerTicked": "Tick Cost per Time Ticked", + "text.autoconfig.hexal.option.server.greatSpells.tickCostPerTicked.@Tooltip[0]": "Cost to tick a block per time that block has already been ticked.", + "text.autoconfig.hexal.option.server.greatSpells.tickCostPerTicked.@Tooltip[1]": "Added to the constant cost above.", + "text.autoconfig.hexal.option.server.greatSpells.tickRandomTickIProb": "Tick Inverse Probability of Random Ticking", + "text.autoconfig.hexal.option.server.greatSpells.tickRandomTickIProb.@Tooltip[0]": "The inverse probability of tick randomly ticking a block.", + "text.autoconfig.hexal.option.server.greatSpells.tickRandomTickIProb.@Tooltip[1]": "Higher numbers make random ticks less likely, lower numbers make them more likely.", + "text.autoconfig.hexal.option.server.greatSpells.tickRandomTickIProb.@Tooltip[2]": "Bound from 600 to 2100." +} From 2899a6d6476caed163a00b2695633dfc9c803180 Mon Sep 17 00:00:00 2001 From: Sam <74768376+JustS-js@users.noreply.github.com> Date: Wed, 22 Jan 2025 22:56:26 +0300 Subject: [PATCH 2/2] Update ru_ru.json --- Common/src/main/resources/assets/hexal/lang/ru_ru.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Common/src/main/resources/assets/hexal/lang/ru_ru.json b/Common/src/main/resources/assets/hexal/lang/ru_ru.json index 819d061b..bbc743d0 100644 --- a/Common/src/main/resources/assets/hexal/lang/ru_ru.json +++ b/Common/src/main/resources/assets/hexal/lang/ru_ru.json @@ -59,11 +59,13 @@ "hexcasting.action.hexal:type/block_item": "Преображение Сортировщика", "hexcasting.action.hexal:type/item_held": "Отражение Сортировщика", + "hexcasting.spell.hexal:raycast/entity/type": "Возвышение Скаута", "hexcasting.action.hexal:get_entity/type": "Объединение Сущности: Тип", "hexcasting.action.hexal:zone_entity/type": "Объединение Области: Тип", "hexcasting.action.hexal:zone_entity/not_type": "Возвышение Области: Не Тип", "hexcasting.action.hexal:current_tick": "Отражение Хронометриста", + "hexcasting.spell.hexal:remaining_evals": "Отражение Танатоса", "hexcasting.action.hexal:breath": "Отражение Водолаза", "hexcasting.action.hexal:health": "Отражение Медсестры", "hexcasting.action.hexal:armour": "Отражение Оруженосца", @@ -305,6 +307,7 @@ "hexal.page.types.type/block_item": "Убирает позицию, $(l:hexal.entry.motes)$(item)моут/$, сущность предмета, или рамку со стэка, и возвращает либо тип блока на указанной позиции, либо тип предмета на стэк (то есть Трава, Камень, Палка, и т.д.).", "hexal.page.types.type/item_held": "Добавляет на стэк тип предмета из второй руки заклинателя, если она не пуста, иначе тип предмета в основной руке.", + "hexal.page.types.raycast/entity/type": "Убирает тип сущности или тип предмета, позицию и направление со стэка, возвращает сущность указанного типа на заданной позиции, если такая есть.", "hexal.page.types.get_entity/type": "Убирает тип сущности и позицию со стэка, и возвращает сущность этого типа на этой позиции, если она существует.", "hexal.page.types.zone_entity/type": "Убирает тип сущности, позицию и радиус со стэка, и возвращает список всех сущностей этого типа в радиусе от указанной позиции.", "hexal.page.types.zone_entity/not_type": "Убирает тип сущности, позицию, и радиус со стэка, и возвращает список всех сущностей, тип которых не совпадает с переданным, в радиусе от указанной позиции.",