Перейти к содержимому

  • Войти / Регистрация

Фото

[Skyrim] Руководство по адаптации шрифтов под русскую версию.

skyrim fonts шрифты скайрим адаптация

  • Чтобы отвечать, сперва войдите на форум
8 ответов в теме

#1 AlexGor

Опубликовано 29 Май 2016 - 19:58  

AlexGor

    Продвинутый активист

  • Завсегдатай
  • ФишкаФишкаФишка
  • 243
  • Сообщений: 1 243
  • Откуда:Вологда

 Руководство по адаптации шрифтов под русскую версию Скайрима.

 

Написать это руководство меня подтолкнуло полное отсутствие каких-либо аналогичных гайдов, как на русском, так и на английском языке. Сразу оговорюсь, здесь не будет рассмотрен процесс кириллизации шрифта, то есть добавления кириллических символов (русских букв) в шрифт, который изначально их не содержит, ибо подобных руководств много в свободном доступе в интернете. Здесь будет рассмотрен лишь процесс адаптации уже готового шрифта к игре.
 
Поначалу отмечу, что процесс этот не так прост, как может показаться на первый взгляд. Все дело в том, что creation engine обрабатывает внутриигровые тексты на русском языке используя, как кодировку windows 1251, так и 1200 UTF-16LE. И если с первой проблем не возникает, так как все тексты, затрагиваемые ей вынесены в отдельный файл Translate_RUSSIAN.txt и подхватываются без проблем, то со второй, которая затрагивает все диалоги и описания возникают проблемы. Поэтому при подключении готового шрифта в игре получается, что только малая часть текстов на русском, а все остальное служебными символами.
 
Для работы нам потребуются:

  1. Файл с шрифтами содержащий кириллические символы в формате ttf.
  2. Программа FontCreator Professional Edition для работы со шрифтом.

Запустите программу FontCreator, закройте все лишние мелкие окна и откройте в ней шрифт, который мы будем адаптировать для скайрима. Я использовал русскую версию программы, поэтому все описания пунктов будут на русском языке.
 
Найдите в открытом списке символов шрифта русскую заглавную букву А, кликните на нее правой кнопкой мышки, наведите мышь на пункт «Заголовки» и в выпадающем списке кликните на пункт «Кодовые точки».
 

XkTOo0C.jpg?1

Рис.1

 

Над буквами появятся соответствующие им кодовые точки, например, для А это $0410. Ваша задача сопоставить эти точки с кодовыми точками тех символов юникода, которые появляются как так называемые крякозябры в игре. Для этого нажмите F-5 в FontCreator появится окно со всеми доступными символами, которые содержит шрифт.

 

H3C56Ei.jpg?1
Рис. 2

Как видите, тут только символы и английский алфавит. Наша задача, чтобы в этом окне вместо выделенных красным символов появился русский алфавит, без букв Ё и ё. Поясню как сделать это на примере все той же заглавной буквы А. Кликните на А правой кнопкой мыши, выберите пункт «Свойства» и в открывшемся окошке в графе «кодовые точки», допишите через запятую и пробел к текущей кодовой точке, кодовую точку первого из символов юникода выделенных на рис. 2, этой точкой для заглавной буквы А будет точка $C0 (см. рис. 3). И нажмите кнопку «Применить». Закройте окошко и приступайте к следующей букве.

 

hI5cFKk.jpg?1

Рис. 3

 

Остальные буквы русского алфавита сделайте по аналогии в соответствии с таблицей ниже.

 

7t5o5K3.jpg?1

M0jQkDb.jpg?1

В процессе работы периодически сохраняйте проект. После того, как самая сложная часть будет закончена, нажмите F-5 и у вас должно появится нечто подобное:


I6fvy6s.jpg?1
Рис. 4

Если у вас все также, значит большая часть работы завершена. Сейчас нажмите на рабочей панели FontCreator меню «Файл», затем «Экспортировать шрифт, как…» и выберите TrueType. Сохраните готовый шрифт туда, куда вам будет удобнее.

 

После этого, перейдите по ссылке http://www.cms-guide...-font-creator/. Это онлайн преобразователь шрифтов в формате ttf в формат swf. Именно с этим форматом работает движок игры. Нажмите Add Font выберите ваш отредактированный в FontCreater шрифт и нажмите кнопку Create fonts. Сейчас у вас есть готовый к подключению в игру файл в формате swf.

 

Сейчас покажу как подключить готовый шрифт к игре. Создайте в любом месте папку Interface положите в нее созданный файл swf и создайте тут же текстовый файл в формате txt с названием fontconfig.txt. И наполните этот файл следующим содержимым:

fontlib "Interface\fonts_ru.swf"
fontlib "Interface\fonts_console.swf"
fontlib "Interface\fonts_ru.swf"
fontlib "Interface\fonts_console.swf"
fontlib "Interface\название вашего файла шрифтов в папке interface с расширением.swf"
map "$ListFont" = "название вашего шрифта в строке Имя шрифта вашего ttf файла шрифта" Normal
map "$ConsoleFont" = "ArialFixed" Normal
map "$StartMenuFont" = "название вашего шрифта в строке Имя шрифта вашего ttf файла шрифта" Normal
map "$DialogueFont" = "название вашего шрифта в строке Имя шрифта вашего ttf файла шрифта" Normal
map "$EverywhereFont" = "название вашего шрифта в строке Имя шрифта вашего ttf файла шрифта" Normal
map "$EverywhereBoldFont" = "название вашего шрифта в строке Имя шрифта вашего ttf файла шрифта" Normal
map "$EverywhereMediumFont" = "название вашего шрифта в строке Имя шрифта вашего ttf файла шрифта" Normal
map "$DragonFont" = "Dragon_script" Normal
map "$SkyrimBooks" = "SkyrimBooks_Gaelic" Normal
map "$HandwrittenFont" = "SkyrimBooks_Handwritten_Bold" Normal
map "$HandwrittenBold" = "SkyrimBooks_Handwritten_Bold" Normal
map "$FalmerFont" = "Falmer" Normal
map "$DwemerFont" = "Dwemer" Normal
map "$DaedricFont" = "Daedric" Normal
map "$MageScriptFont" = "Mage Script" Normal
map "$SkyrimSymbolsFont" = "SkyrimSymbols" Normal
map "$SkyrimBooks_UnreadableFont" = "SkyrimBooks_Unreadable" Normal
validNameChars "`1234567890-=~!@#$%^&*():_+QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,./qwertyuiop{}\\asdfghjkl;'zxcvbnm<>?|ЎўЈ¤Ґ¦§Ё©Є«®Ї°Ііґ¶·ё№є»јЅѕїДАБВГЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэю я абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"

Обратите внимание, что в строке fontlib должно быть написано название файла шрифтов, который лежит в папке interface, а в строках map имя самого шрифта, которое вы сможете увидеть при открытии ttf файла. Строка map "$ListFont" нужна только при наличии SkyUI. Строки map "$FalmerFont", map "$DwemerFont", map "$DaedricFont", map "$MageScriptFont", map "$SkyrimSymbolsFont", map "$SkyrimBooks_UnreadableFont" править нельзя.
После всех правок, сохраните файл fontconfig.txt и упакуйте папку interface в архив и устанавливайте, как любой мод.

 

На этом все, если возникнуть вопросы, спрашивайте.


  • 3

#2 DJ_Kovrik

Опубликовано 30 Май 2016 - 08:50  

DJ_Kovrik

    The Companions

  • Модератор
  • 3 099
  • Сообщений: 4 705
  • Откуда:Moscow

В Fontlab Studio все проще - копируется вся группа уже имеющейся кириллицы от заглавной А до маленькой я и вставляется в нужное место второй кодовой страницы  :) Тогда не придется отдельно каждую букву править.


Изменено: DJ_Kovrik, 30 Май 2016 - 08:54

  • 1

#3 AlexGor

Опубликовано 30 Май 2016 - 18:39  

AlexGor

    Продвинутый активист

  • Завсегдатай
  • ФишкаФишкаФишка
  • 243
  • Сообщений: 1 243
  • Откуда:Вологда

В Fontlab Studio все проще - копируется вся группа уже имеющейся кириллицы от заглавной А до маленькой я и вставляется в нужное место второй кодовой страницы :) Тогда не придется отдельно каждую букву править.

Нет, так не получится. Я пробовал работать в этой проге, если просто выделить все символы и поставить их на место символов юникода, тогда теряется кириллическая кодировка и все записи из файла Translate_RUSSIAN.txt в игре будут квадратиками. :(


  • 0

#4 DJ_Kovrik

Опубликовано 31 Май 2016 - 09:51  

DJ_Kovrik

    The Companions

  • Модератор
  • 3 099
  • Сообщений: 4 705
  • Откуда:Moscow

Нет, так не получится. Я пробовал работать в этой проге, если просто выделить все символы и поставить их на место символов юникода, тогда теряется кириллическая кодировка и все записи из файла Translate_RUSSIAN.txt в игре будут квадратиками.

 

Проверено неоднократно, экспериментировал со шрифтами много и ничего не терялось :) Вот сюда вставляем (с перезаписью символов), насколько я помню, это как раз 0410 позиция.


Изменено: DJ_Kovrik, 31 Май 2016 - 09:52

  • 0

#5 Fozar

Опубликовано 31 Май 2016 - 10:13  

Fozar

    Почетный посетитель

  • Завсегдатай
  • ФишкаФишка
  • 162
  • Сообщений: 302
  • Откуда:Новосибирск

Так все просто, оказывается)


  • 0

#6 AlexGor

Опубликовано 31 Май 2016 - 17:48  

AlexGor

    Продвинутый активист

  • Завсегдатай
  • ФишкаФишкаФишка
  • 243
  • Сообщений: 1 243
  • Откуда:Вологда

Проверено неоднократно, экспериментировал со шрифтами много и ничего не терялось :) Вот сюда вставляем (с перезаписью символов), насколько я помню, это как раз 0410 позиция.

Странно, у меня не получается, то что на скрине это начальная позиция кодовой точки С0, если символы просто поставить на эти позиции, то у меня слетает вторая кодировка, та что начинается с позиции 0410. :huh:  Но раз у тебя получается, значит видимо я что-то не так заменяю. :)


  • 0

#7 DJ_Kovrik

Опубликовано 31 Май 2016 - 18:51  

DJ_Kovrik

    The Companions

  • Модератор
  • 3 099
  • Сообщений: 4 705
  • Откуда:Moscow


Странно, у меня не получается, то что на скрине это начальная позиция кодовой точки С0, если символы просто поставить на эти позиции, то у меня слетает вторая кодировка, та что начинается с позиции 0410.   Но раз у тебя получается, значит видимо я что-то не так заменяю

Во время вставки надо всю группу символов выделить (которая будет заменена), чтобы они перезаписывались, а не сдвигались, может в этом дело :)


  • 1

#8 Fozar

Опубликовано 31 Май 2016 - 18:52  

Fozar

    Почетный посетитель

  • Завсегдатай
  • ФишкаФишка
  • 162
  • Сообщений: 302
  • Откуда:Новосибирск

Во время вставки надо всю группу символов выделить (которая будет заменена), чтобы они перезаписывались, а не сдвигались, может в этом дело :)

Именно!)


  • 1

#9 AlexGor

Опубликовано 31 Май 2016 - 19:50  

AlexGor

    Продвинутый активист

  • Завсегдатай
  • ФишкаФишкаФишка
  • 243
  • Сообщений: 1 243
  • Откуда:Вологда

Во время вставки надо всю группу символов выделить (которая будет заменена), чтобы они перезаписывались, а не сдвигались, может в этом дело :)

Все понял, спасибо и тебе и Фозару, я просто привык уже как в винде работать, так и тут делал, а в итоге просто вырезал символы, а не копировал. :blush:


  • 0





Также с меткой «skyrim, fonts, шрифты, скайрим, адаптация»

Привет!

Насколько мы поняли, вы используете блокировщик рекламы в вашем браузере. Скорее всего, это AdBlock или AdBlock Plus.

Учитывая, сколько агрессивной рекламы можно встретить на различных сайтах, это, возможно, и оправданно.

Однако Riot Pixels — пока ещё небольшой сайт, мы существуем в основном на деньги, получаемые от различных рекламодателей. Пользователей же с установленным AB/ABP на Riot Pixels сейчас — более 30%. Это очень много.

У блокировщиков рекламы есть еще одно плохое свойство — у вас может «поехать» дизайн или перестанут показываться скриншоты.

Мы не хотим предпринимать активных действий в отношении блокировщиков рекламы (например, закрывать контент) — это не по-человечески. Однако и безучастно смотреть никак не можем. Поэтому у нас к вам большая просьба — пожалуйста, внесите Riot Pixels в «белый список» вашего блокировщика. Это поможет нам и дальше жить и развиваться, а вам ничего не будет стоить.

Спасибо!
Команда Riot Pixels.