Wake of Gods Forum | Форум Во Имя Богов

Full Version: ERM-Справочник v2.9+
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
перезалил справочник (без ERA контента)
https://yadi.sk/d/IBjU0hh5AvUzdQ
upd: заменил ссылку
Эмм.. Не могу скачать, требует авторизацию.
хз, я ничего не менял, как там доступ у Я.диска для гостей работает не знаю.
https://yadi.sk/d/yZ7hVLnM0rYDqA
Спасибо!
Новые команды !!SN (era 2.9.13)
https://yadi.sk/d/G0NjpUBolvAp4A

отдаю на обзор/комментарии/правки/дополнения
P.S.инфа в SN:T ни по описанию, ни по json-формату не переведена, реально не получается удобоваримо перевести (общий смысл читаю, но утопаю в понятном изложнии перевода, потому просто вставил англ.текст как есть из changelog_era) Sorry если кто именно с этим поможет, только скажу спасибо.
(06.06.2020 06:20)Bes Wrote: [ -> ]если кто именно с этим поможет, только скажу спасибо.

Там вроде как обычное получение текста. Например пишем в каком-нибудь json текст: "Ключ: Блаблабла @параметр1@, ещё и @параметр2@, и @параметр3@..."

Затем в ERM: !!SN:TКлюч/?z1/параметр1/100/параметр2/666/параметр3/999;

В z1 появится следующий текст: "Блаблабла 100, ещё и 666, и 999..."

PS: Лично мне более привычнее стандартное геройское преобразование текста без наименований параметров, т.к. я не знаю, зачем???
(06.06.2020 13:43)XEPOMAHT Wrote: [ -> ]PS: Лично мне более привычнее стандартное геройское преобразование текста без наименований параметров, т.к. я не знаю, зачем???
Просто удобно и наглядно. Я уже несколько раз использовал.
(06.06.2020 06:20)Bes Wrote: [ -> ]Новые команды !!SN (era 2.9.13)
https://yadi.sk/d/I0Z3mXqovzcbNg

Будтье добры и на Гугл выложите. Yes
XEPOMAHT,
1) изменение конкретных переменных в коде никак не должно отражаться на файлах переводов.
%Y3 плохо. @damage@ — хорошо.

2) Переводчик по возможности должен быть в состоянии не заглядывать в код вообще для понимания смысла параметров.
%Y7 %Z1 — плохо.

@damage@ @param_damage@ — хорошо, можно форматировать текст вида «30 Урон» в «Урон: 30»:
@param_damage@: {~red}@damage@{/}
Quote: [имя_метки] – наименование перехода (латиница, кириллица и др.)
    [:имя_метки] – локальное место назначения
[имя_метки] - использование метки, будет заменено номером ресивера для которого метка объявлена
[:имя_метки] - объявление метки, текущий номер ресевера запоминается и связывается с именем метки.
Использовать метки можно как до, так и после их объявления.

Quote: Возвращает ранее установленное через SN:H значение.
Противоречит предыдущему предложению. Удалить.

Quote:Если используется несколько вариантов установки подсказок для одного объекта, то приоритет установки подсказки таков:
Приоритет поиска подсказки таков.

Quote:Нам надо увидеть, какие значения каждая переменная содержит на данный момент.
Для этого мы используем следующее: Теперь z3 содержит всю информацию из z2, включая все значения интерполированных переменных.
Следущее?

Quote:SN:O?X/?Y/?L
Получить координаты входа объекта на карте.
Пример:
Давайте узнаем координаты входа объекта, кликнув на другой части объекта…
Команде передаются три числовые переменные с координатами объекта, куда же и будут помещены координаты входа объекта.

Quote:Если ресурс используется в Окне Героя, выполняйте подмену перед тем, как откроется это Окно (т.е. до кэширования ресурсов).
Можно «окно» с маленькой.

Quote:SN:T^имя^/?z#/#1/?$1/#2/?$2...
Command is used to translate strings by key
Позволяет получать переводы строк по ключам. В json-файлах хранятся пары вида ключ (ghjbpdjkmsyq уникальный строковjй идентификатор) и значение (текст перевода с опциональными параметрами).

Quote:SN:X
Доступ к параметрам новых событий

X до 16 параметров …

Новые события ERA и добавляемые модулями события нуждаются в возможности обмениваться данными со скриптами. Эту возможность обеспечивает команда X, выступающая в качестве хранилища значений. Тип значений определяется способом работы с ними. Так, можно установить в слот 0 значение 5, а потом получить его в вещественную e-переменную. Поскольку работа происходит на машинном уровне, то в e окажется вовсе не 5, а неопределённый мусор. В случае получения строки, команда трактует значение в слоте как адрес.
Поэтому, !!SN:X0; !!SN:X?z1; приведёт к вылету, т.к. по адресу 0 нет никакой строки.
Указать, что команда устарела. Параметры событий можно читать/писать, обращаясь напрямую к x1..x16.

Если нужна будет помощь, чтобы разобраться с SN:T, переведём.
Berserker, спасибо за корректировку 132

Berserker Wrote:
Bes Wrote:Нам надо увидеть, какие значения каждая переменная содержит на данный момент.
Для этого мы используем следующее: Теперь z3 содержит всю информацию из z2, включая все значения интерполированных переменных.
Следущее?
там стоит пример
у тебя браузер примеры на этом куске справки вообще отображает?

Quote:Если нужна будет помощь, чтобы разобраться с SN:T, переведём
мне бы весь тот английский текст по j-son и SN:T руссифицировать, а я уже переварю и добавлю в описание. спасибо.

Quote:Параметры событий можно читать/писать, обращаясь напрямую к x1..x16.
приведи небольшой пример, на своё усмотрение
Bes, нет, примеры не видны. Только я открыл страницу голую с файлами из архива.

Quote:приведи небольшой пример, на своё усмотрение
SN:X777 = !!VRx1:S777
SN:X?y4 = !!VRy4:Sx1;
SN:X?t/?y4 = !!VRy4:Sx2;

Позже постараюсь перевести.
2.9.11: Добавлена %T(ключ_переводимой_строки_из_json) интерполяция в ^...^ строках. Теперь переводы без параметров можно вставлять напрямую.

2.8.4: Все языковые файлы Lang/*.json загружаются и из папки карт (например, Maps/Arrogance/Lang/arrogance.json), а также записываются в сохранения и подгружаются при загрузке игры. Таким образом можно выпускать карты с поддержкой перевода.

2.8.3: Улучшен синтаксис json-файлов (Mod\Lang\*.json, UTF-8 encoding). Поддерживаются вложенные объекты. В json объекты — множества вида ключ - значение между фигурными скобками.


    {
    "wogrev": {
    "no_gold_message": "Нет больше золота, @name@!",
    "no_mercy": "Пощады не будет!"
    }
    }


    Выше приведённый документ аналогичен следующему:

    {
    "wogrev.no_gold_message": "Нет больше золота, @name@!",
    "wogrev.no_mercy": "Пощады не будет!"
    }

    Но вместо постоянного повтора с префиксом имени ввода используются вложенные ключи.


2.6.2: Добавлена поддержка локализации ЕРМ скриптов. Все Lang\*.json файлы грузятся и объединяются в один словарь типа ключ => значение, в котором хранятся строки с переводом.
Json файлы должны сохраняться в кодировке UTF-8, предпочтительно с Unix маркерами концов строк (#10 = 0x0A в качестве разделителя строк). Формат файлов следующий:

    {
    "уникальный глобальный ключ-ID строки": "перевод строки",
    "другой ключ": "перевод другой строки"
    }

Во время загрузки текст автоматически конвертируется из кодировки UTF-8 (Юникод, например китайской и польский тексты) в локальную кодировку ANSI, используемую операционной системой игрока. Для русскоязычного сегмента пользователей это чаще всего Windows-1251 (Кириллица, она же CP-1251).
Таким образом вы имеете возможность поставлять перевод, который другие люди могут открыть и редактировать без потери данных или превращения строк в нечитаемый текст. Символы, которые не могут быть представлены в кодировке ОС пользователя, в игре будут заменены на '?'.

Реальный пример:
    {
    "eqs.this_day_savegame_name": "@day@_@player@",
    "eqs.end_turn_autosave_name": "@day@_@player@_End",
    "eqs.quicksave_name": "@day@_@player@_Quick",
    "eqs.saved_msg": "Сохранено!",
    "eqs.quicksaved_msg": "Быстрое сохранение!"
    }

Рекомендуется давать префикс каждому ключу в виде аббревиатуры моды или имени автора, например "pm." для Феникс-Мода.

Переводы могут также содержать подставляемые параметры в виде "@имя параметра@". Такие параметры заменяются на конкретные значения во время перевода.
Новая ЕРМ команда !!SN:T служит для получения перевода по ключу.
!!SN:T(ключ)/?(z-переменная, куда записать перевод)/(имя параметра 1)/(значение параметра 1)/(имя параметра 2)/(значение параметра 2)...;

test.json:


    {
    "test.gold_amount_report": "У Вас осталось @gold@ золота. Не плохо!"
    }

!!SN:T^test.gold_amount_report^/?z2/^gold^/2000; z2 = "У Вас осталось 2000 золота. Не плохо!"

------------------------------------------------

2.47.0: Добавлена возможность глобального перенаправления ресурсов через JSON файлы.
Data\Redirections\*.json

Format:


    {
    "старое имя ресурса": "новое имя ресурса",
    "старое имя ресурса": "новое имя ресурса"...
    }


Папка "Data\Redirections\Missing\*.json" работает схожим образом, но перенаправления применяются только к отсутствующим ресурсам.
Например, можно удалять часть картинок вроде zpic1005.pcx и перенаправить их на другие, всё ещё присутствующие в lod/pac файлах.
Вы можете прописать такие перенаправления, если ваш мод зависит от другого графического мода, но вы хотите дать пользователям возможность
использовать его и в отдельности.
справка по ресиверам ERA: !!PA, !!QU, !!SN, !!RD, !!re-br-co
48kb (архив rar)
Я.диск
googl-drive
на время, пока я начну готовить События ERA и изменения в целом по ERA

P.S. эта неделя без особых свершений, смена рабочая не позволит, а через недельку начну
, но замечания/дополнения буду принимать обязательно

P.P.S. материал по json потом вынесу отдельно в статьи справочника, Berserker, с интеграцией по SN:T описанию
Огромное спасибо за работу, почитаю Ab
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
Reference URL's