Меню сайта |
|
|
Календарь новостей |
« Декабрь 2021 » | Пн | Вт | Ср | Чт | Пт | Сб | Вс | | | 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 |
|
|
|
Главная » 2021 » Декабрь » 10 » Новый тестовый билд и потерянная овца.
Новый тестовый билд и потерянная овца. | 12:18:19 |
(новость от 9 октября 2021 г) Вышла версия порта hexen2-r6297 на Хексенворлде: https://hexenworld.org/downloads/hexen2/uhexen2-shanjaq/testing/ Одной из основных особенностей является возможность для мапперов настраивать внутриигровые сообщения новыми творческими и причудливыми способами: Интересные элементы в приведенном выше примере - это переключатели цвета и встроенное изображение. Но как это возможно…?
Чтобы понять это, сначала давайте посмотрим, как обрабатываются символы в ванильном Hexen II ...
Внутриигровые сообщения (Будь то сообщения во время игры по центру, табличка с текстом, сообщения в консоле и пр.) не используют фактический шрифт. Фактически, каждый символ представляет собой изображение размером 8 x 8 пикселей, представляющее символ. Все разрешенные символы определены в игровом файле conchars.lmp, который выглядит так: Как вы можете видеть, в основном существует 2 набора символов: первые 256 слотов (8 строк по 32 символа в каждой) - это бежевая кодировка, используемая в основном для печати в консоле, а последние 256 слотов - красная кодировка, используемая для большинства внутриигровых сообщений. Каждый набор символов виртуально разделен на 2 подмножества по 128 символов по 4 строки в каждом. 4 первые строки действительно используются Hexen II, но последние 4 строки совершенно бесполезны: они соответствуют символам не ASCII, которые движок даже не может правильно прочитать в файле strings.txt, где хранятся строки игры. Итак, допустим, вы хотите использовать причудливую «Æ», «Ñ» или «Ç» или что-то еще… Неудача! Вы все еще можете поместить их в strings.txt, но они не будут отображаться должным образом в игре.
В конце концов, это большая потеря, поскольку половина слотов не может быть использована ... Новая функция не только позволяет использовать их со временем, но также позволяет переключать кодировку прямо в середине сообщения. Но как…?
Во-первых, произошли серьезные изменения в мышлении: вместо того, чтобы считать, что conchars.lmp - это 2 кодировки по 256 символов в каждой, давайте рассмотрим 4 кодировки по 128 символов в каждой. Хорошо то, что теперь каждая меньшая кодировка может быть выражена в пределах диапазона ASCII. Каждая кодировка пронумерована от 1 до 4. Наборы символов №1 и №3 - это традиционные бежевые и красные символы. Наборы символов №2 и №4 - это ранее недоступные диапазоны, которые теперь можно использовать по желанию. А так как раньше они не использовались, не нанося никакого вреда уже существующему, вы можете поместить туда новые причудливые символы, символы, цвета и даже картинки! В конце концов, это не обычный шрифт, а просто слоты размером 8 x 8 пикселей. Вы даже можете поставить несколько квадратов 8 × 8 бок о бок, чтобы нарисовать более крупные объекты.
Так обстоит дело в приведенном выше примере, поэтому давайте подробнее рассмотрим, как он построен, и взглянем на измененные символы за кулисами: В кодировке № 2 теперь используются зеленые символы вместо акцентированных букв в ванильных символах. Они стратегически занимают те же относительные позиции, что и в ванильных кодировках №1 и №3. Таким образом, сообщение может быть записано в strings.txt обычным образом, и это просто вопрос переключения кодировки благодаря новой escape-последовательности \x (где x означает от 1 до 4). Итак, строка в strings.txt выглядит так \2Little Bo-Peep\3 has lost her sheeps
\2 запускает кодировку # 2, которая используется для печати символов зеленым цветом до тех пор, пока не встретится \3, чтобы вернуться к обычной красной кодировке # 3, используемой табличками.
В кодировке №4 изображения, которые должны представлять символы от «A» до «H» и от «a» до «h», вместо этого являются битами более крупного изображения. Чтобы нарисовать картину, нам просто нужно записать эти символы A-H,a-h в strings.txt с активной кодировкой # 4, и они будут отображаться как изображение art_polymorph. Вот полная строка в strings.txt для причудливой таблички: \2Little Bo-Peep\3 has lost her sheeps but may retrieve them if I’m able to find her \1shepherd’s \1crook\3 which is theoretically looking like this:@@\4ABCD@\4abcd@\4EFGH@\4efgh@@The shape curiously reminds me something…@-Tyranith
Расчет возврата строки автоматически вычисляется игровым движком, чтобы соответствовать размерам таблички, и, к сожалению, сбрасывает кодировку на кодировку по умолчанию # 3 на каждой новой строке. Вот почему \1 необходимо уточнить как перед словами «shepherd’s», так и перед словами «crook», в отличие от «Little Bo Peep», которое находится в одной строке текста. Также обратите внимание, что можно принудительно вернуть строку благодаря специальному символу «@», чтобы иметь больше контроля (что, очевидно, необходимо для правильного отображения изображения кривизны).
Эти новые возможности форматирования, представленные в последней сборке, касаются не только табличек, но и всего следующего:
* Сообщения центрированных табличек * Сообщения нижних табличек * Регулярные сообщения по центру * Информационные таблички сообщения (цели) * Тексты эпизодов интермиссий
Другие исправления / функции, также включенные в сборку:
* Скайбоксы теперь работают * переменная max_fps cvar Всякие фиксы
PS: Примерный перевод с помощью гугла |
Просмотров: 2256 |
Добавил: Reiko
|
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
|
|
Форма входа |
|
|
Поиск |
|
|
Друзья сайта |
|
|
|