League of Legends Wiki
League of Legends Wiki

Если возникнет другое название для этого приложения, рассмотрю варианты.

Для заполнения страниц с транскрипциями фраз чемпионов требуется довольно много времени, хотя производимые операции рутинны и однообразны. Для упрощения было написано небольшое приложение - LoL Quotes Wikificator.

Это приложение превращает таблицу фраз с присвоенными им аудиофайлами в викитекст с шаблонами {{фч}}.

Принцип работы[]

На вход программы подается Wikipedia-logo-v2 CSV файл - таблица, разделенная знаками ; (сохраняется из Excel файла). Сама таблица должна содержать следующие столбцы:

  • Раздел - Определяет H1 раздел, в котором будет фраза, например "Атака". Список стандартных разделов можно увидеть в Блог участника:Mortorium/Наполнение страниц типа Чемпион-Фразы
  • Подраздел - Определяет H2 раздел, в которому будет фраза, например, "Нападение на чемпиона".
  • Имя аудиофайла
  • Транскрипция фразы, соответствующей этому аудиофайлу.
  • Образ, в котором произносится эта фраза (подробности ниже)
Пример
Раздел;Подраздел;Файл;Транскрипция;Образ
Начало матча;Нет;0210;МФ: Галактика, красивая девушка, план мести. Отличное начало.;
Начало матча;Нет;0272;Экзо: Приветствую. Ваш смертоносный арсенал активирован.;
...
Передвижение;Нет;0148;МФ: (напевает) И нет нам покоя, гори, но живи!;
Передвижение;Нет;0115;МФ: А кто шальную пулю словит, тот сам виноват!;
Передвижение;Нет;0092;МФ: Больше пуль, больше трупов.;
Передвижение;Нет;0144;МФ: Возмездие на позитиве.;
Передвижение;Нет;0330;МФ: Война научила меня стрелять и всегда попадать в цель.;
Передвижение;Нет;0116;МФ: Вы только посмотрите на эту ходовую.;
...
Убийства и уничтожение объектов;Убийство Катарины;0201;МФ: Ножи? Мы же не в тридцать втором веке.;

Результат преобразования этого файла можно увидеть на странице Мисс Фортуна/Фразы#Гроза галактики

Составление таблицы[]

Для составления списка всех фраз чемпионов можно воспользоваться Excel или подобной ему программой. Он увеличивает скорость записи, а также упрощает дальнейшую сортировку.

Сами фразы можно записывать на слух из вытащенных игровых файлов или воспользоваться составленными подкастами а Youtube, например Soma Cruz или kleiver16. Об извлечении фраз из файлов игры читайте блог Извлечение аудиофайлов League of Legends

Затем каждой фразе нужно назначить название аудиофайла. Вытащенные из игровых файлов аудио всегда называются однообразно "File0001", "File0002", так что их нужно предварительно назвать так, чтобы не вышло пересечения имен. Я делаю просто: с помощью скрипта на Wikipedia-logo-v2 PowerShell массово переименовываю файлы на "Чемпион.ОбразНомер.ogg", например был "File0050.ogg", стал "Мисс Фортуна.Гроза галактики0050.ogg" (Файл:Мисс Фортуна.Гроза галактики0050.ogg).

Скрипт для PowerShell
Dir -Filter |
Rename-Item -NewName {$_.Name -Replace "File", "Мисс Фортуна.Классическая"}

Если вы решите использовать вышеприведенный вариант, то в CSV нужно указывать только номера. Если же вы хотите по-другому называть файлы, например, по ключевым словам фразы (например, Файл:МогуБыстроИОченьБыстро.ogg), то в приложении предусмотрена галочка "Пользовательские имена файлов")

Несколько образов[]

У многих чемпионов фразы в разных образах дублируются - меняется только голосовой фильтр. Если различие состоит только в этом, то в столбце аудиофайлов нужно перечислить все названия файлов, соответствующих одной и той же фразе.

Чтобы приложение поняло, какому образу соответствует какое название, нужно добавить ещё один столбец - "Образ". где через запятую перечислить образы в том же порядке, что и перечислены аудиоайлы

Пример (реплики Вай Вай дублируются в её образе ПРОЕКТ: Вай ПРОЕКТ: Вай Демон Вай Демон Вай)
Передвижение;Нет;0081,0136,0007;Кого побить?;Классическая,Демон,ПРОЕКТ
Передвижение;Нет;0128,0175,0019;Лучший защитник Пилтовера.;Классическая,Демон,ПРОЕКТ
Передвижение;Нет;0088,0167,0023;Они не успеют понять, что это было;Классическая,Демон,ПРОЕКТ
Передвижение;Нет;0126,0142,0036;Я спасу мир - или разрушу.;Классическая,Демон,ПРОЕКТ
Передвижение;Нет;0075,0161,0037;Мои руки все скажут за меня.;Классическая,Демон,ПРОЕКТ

Результат обработки такого файла можно увидеть на странице Вай/Фразы.

Создание CSV[]

Составленный в Excel файл нужно отсортировать по разделам и подразделам, а затем сохранить в формате CSV. Будьте аккуратны, по умолчанию Microsoft сохраняет с кодировкой Windows-1251, она обрабатывается с ошибками, смените на UTF-8.

Работа в приложении[]

В приложении все просто - указать файл, указать имя чемпиона и основной образ. Если используются несколько образов или пользовательский вариант имен файлов - указать пункты в меню и нажать кнопку. По завершении процесса он выдаст, что работа завершена. Созданный файл будет находиться в той же папке, что и сама программа под названием "Wikitext.txt". Результат нужно скопировать на страницу в Вики и исправить ошибки тупой программы наслаждаться результатом.

Технические характеристики[]

  • Язык: Node.js (JavaScript)
  • Фреймворк: Electron.js
  • Разметка: HTML, CSS.