Ru/Subtitles (Portal 2): Difference between revisions
mNo edit summary |
m (obsolete language category) |
||
(11 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{lang|title=Субтитры (Portal 2)|Subtitles (Portal 2)}} | ||
|title=Субтитры (Portal 2) | В основном {{L|Closed Captions|субтитры}} используются для показа реплик и диалогов персонажей для слабослышащих игроков или при отсутствии звука. В субтитрах также можно отражать простые звуки игрового мира, например, взрывы или открытие дверей. Субтитры являются важной частью модов, так как позволяют расширить их языковую аудиторию. | ||
| | |||
}} | |||
В основном | |||
Субтитры также | Субтитры также могут служить временными заменителями еще не озвученных диалогов, поскольку при создании уровней озвучивание может занимать очень много времени. | ||
В Portal 2 появляются автоматически, когда персонаж начинает говорить (если так определено в специальном файле [[Logic choreographed scene|сцен]]) | В Portal 2 субтитры появляются автоматически, когда персонаж начинает говорить (если так определено в специальном файле {{en}} [[Logic choreographed scene|сцен]]). Вы можете создавать собственные файлы сцен только после перекомпилирования всего файла scenes.image, поэтому здесь необходим обходной путь. | ||
{{Note | {{Note|В данном руководстве подразумевается, что вы уже добавили свои звуки в карту, и указанные далее названия используются только в качестве примеров.}} | ||
== Создание файла субтитров == | == Создание файла субтитров == | ||
В первую очередь создайте текстовый файл с субтитрами в папке ''Steam/steamapps/common/Portal 2/portal2/resource''. Формат субтитров должен быть следующий: | |||
Line 30: | Line 27: | ||
* Сохраните файл .txt в кодировке ''UCS-2 Little Endian'' или ''UTF-16 LE''. Для этого воспользуйтесь Notepad++ или другим продвинутым текстовым редактором. | * Сохраните файл .txt в кодировке ''UCS-2 Little Endian'' или ''UTF-16 LE''. Для этого воспользуйтесь Notepad++ или другим продвинутым текстовым редактором. | ||
* Текст субтитров должен быть заключён в кавычки. | * Текст субтитров должен быть заключён в кавычки. | ||
* Именем субтитра должно быть | * Именем субтитра должно быть имя {{en}} [[soundscript]], а не имя звука. Однако, субтитры работают и без создания soundscript. | ||
* Сохраните файл .txt с префиксом ''closecaption_''в имени. | * Сохраните файл .txt с префиксом ''closecaption_'' в имени. | ||
== Компиляция файла .txt в файл .dat == | == Компиляция файла .txt в файл .dat == | ||
Для того, чтобы субтитры отображались в игре, их нужно скомпилировать в файл .dat. Это можно сделать с помощью компилятора ''captioncompiler'' в папке ''Portal 2/bin''. | |||
Нажмите кнопку '''Пуск''', выберите '''Выполнить''' и введите ''cmd'', чтобы открыть командную строку. Найдите файл captioncompiler.exe и перетащите его в окно командной строки. | |||
Введите -v "closedaption_ИМЯФАЙЛА.txt''", примерно так: | |||
<source> | <source> | ||
"U:/Program Files/Steam/steamapps/common/Portal 2/bin/captioncompiler.exe" -v " | "U:/Program Files/Steam/steamapps/common/Portal 2/bin/captioncompiler.exe" -v "closecaption_ИМЯФАЙЛА.txt" | ||
</source> | </source> | ||
Субтитры будут скомпилированы в файл, к которому будет обращаться игра. Оставьте скомпилированный файл в папке resource. | |||
{{ | {{Note|Если компиляция завершается ошибкой из-за того, что {{L|Game directory}} не настроена на папку portal 2, создайте еще одну строку в файле gameConfig.txt в папке SouceSDK/bin/ep1(orangebox)/bin со значением "GameDir", указывающим на папку ''Portal 2/portal2''. Затем запустите SourceSDK с другими параметрами, чтобы сделать Portal 2 текущим модом.}} | ||
{{ | {{Note|Другой способ: Откройте папку \Steam\SteamApps\common\portal 2\bin, создайте новую папку с именем "resource" и сохраните в нее файл closecaption_ИМЯФАЙЛА.txt. Откройте папку \Steam\SteamApps\common\portal 2\portal2 и скопируйте файл gameinfo.txt в \Steam\SteamApps\common\portal 2\bin. При выполнении captioncompiler.exe скомпилированный файл .dat будет сохранен в \Steam\SteamApps\common\portal 2\bin\resource. Оттуда переместите файлы .txt и .dat в папку \Steam\SteamApps\common\portal 2\portal2\resource.}} | ||
== | == Показ субтитров в игре == | ||
Поскольку создание сцен для субтитров не подойдет, требуется вызывать субтитры вручную с помощью энтитей в Hammer или с помощью {{en}} [[logic_script|скрипта]]. | |||
# | # Создайте или используйте {{en}} [[point_servercommand]]. | ||
# | # Создайте {{en}} [[logic_auto]] и добавьте выход с именем файла субтитров '''без префикса closecaption_''': | ||
{| class=standard-table | {| class=standard-table | ||
!My Output | !My Output | ||
Line 68: | Line 65: | ||
| cc_lang NameOfFile | | cc_lang NameOfFile | ||
|} | |} | ||
3. | 3. Чтобы вызвать звук или субтитр каким душе угодно способом, добавьте такие выходы: | ||
{| class=standard-table | {| class=standard-table | ||
!My Output | !My Output | ||
Line 81: | Line 78: | ||
|} | |} | ||
* | * Не забудьте одновременно воспроизвести звук, к которому относится субтитр. | ||
{{Note | {{Note|Не добавляйте префикс closecaption_ при вызове таких файлов. При использовании команды cc_lang игра автоматически добавит префикс, иначе префикс будет продублирован, и у вас получится closecaption_closecapion_ИМЯФАЙЛА. {{en}} [[Talk:Subtitles (Portal 2) |В обсуждении]] этой страницы можно посмотреть пример.}} | ||
Если вы используете в своей карте оригинальные файлы сцен, но со своими голосовыми репликами, не меняйте cc_lang OnMapSpawn, чтобы у игроков не отображались субтитры оригинальных сцен. Вместо этого воспроизводите свой файл субтитров, когда потребуется. Примерно так: | |||
{| class=standard-table | {| class=standard-table | ||
Line 115: | Line 112: | ||
|} | |} | ||
Если команде cc_lang не указан конечный выход (Output), игра снова будет использовать язык Game_UI, но при этом воспроизведет ваши субтитры, вызванные за 0.1 секунды до этого. | |||
== | == Коды субтитров (Portal 2) == | ||
;<code><sfx></code>: | ;<code><sfx></code>: Строка описания звукового эффекта, которая будет отображаться только при выборе полных субтитров. Если переменная cc_subtitles задана на "1", такие строки отображаться не будут. | ||
;<code><clr:255,255,255></code>: | ;<code><clr:255,255,255></code>: Задает цвет строки в RGB; 0 - без цвета, 255 - полный цвет. Например, красный: ;<code><clr:255,0,0></code>. | ||
;<code><nowiki><b></nowiki></code>: | ;<code><nowiki><b></nowiki></code>: Текст, выделенный этим тегом, станет полужирным. | ||
;<code><nowiki><i></nowiki></code>: | ;<code><nowiki><i></nowiki></code>: Текст, выделенный этим тегом, станет курсивным. | ||
;<code><nowiki><len:#></nowiki></code>: | ;<code><nowiki><len:#></nowiki></code>: Задает продолжительность показа субтитра на экране. | ||
;<code><nowiki><norepeat:#></nowiki></code>: | ;<code><nowiki><norepeat:#></nowiki></code>: Задает интервал ожидания перед повторным показом субтитра. Требуется для часто повторяющихся звуков. | ||
''' | '''Пример использования кода:''' | ||
<source lang=php> | <source lang=php> | ||
lang | lang | ||
{ | { | ||
Language " | Language "Russian" | ||
Tokens | Tokens | ||
{ | { | ||
character.example1 "<clr:255,0,0><b> | character.example1 "<clr:255,0,0><b> Персонаж: Это субтитр-образец." | ||
character.example2 "<clr:255,0,0><len:3> | character.example2 "<clr:255,0,0><len:3> Персонаж: Субтитры должны отображаться на экране." | ||
} | } | ||
} | } | ||
Line 141: | Line 138: | ||
*{{en}} [[Closed Captions|Субтитры]] | *{{en}} [[Closed Captions|Субтитры]] | ||
{{ACategory|Portal 2 Level Design}} | |||
{{ACategory|Portal 2 Tutorials}} |
Latest revision as of 04:06, 22 August 2024
В основном субтитры используются для показа реплик и диалогов персонажей для слабослышащих игроков или при отсутствии звука. В субтитрах также можно отражать простые звуки игрового мира, например, взрывы или открытие дверей. Субтитры являются важной частью модов, так как позволяют расширить их языковую аудиторию.
Субтитры также могут служить временными заменителями еще не озвученных диалогов, поскольку при создании уровней озвучивание может занимать очень много времени.
В Portal 2 субтитры появляются автоматически, когда персонаж начинает говорить (если так определено в специальном файле сцен). Вы можете создавать собственные файлы сцен только после перекомпилирования всего файла scenes.image, поэтому здесь необходим обходной путь.

Создание файла субтитров
В первую очередь создайте текстовый файл с субтитрами в папке Steam/steamapps/common/Portal 2/portal2/resource. Формат субтитров должен быть следующий:
lang
{
Language "Russian"
Tokens
{
character.example1 "Это образец субтитров."
character.example2 "Вы должны видеть надписи на экране."
}
}
- Сохраните файл .txt в кодировке UCS-2 Little Endian или UTF-16 LE. Для этого воспользуйтесь Notepad++ или другим продвинутым текстовым редактором.
- Текст субтитров должен быть заключён в кавычки.
- Именем субтитра должно быть имя
soundscript, а не имя звука. Однако, субтитры работают и без создания soundscript.
- Сохраните файл .txt с префиксом closecaption_ в имени.
Компиляция файла .txt в файл .dat
Для того, чтобы субтитры отображались в игре, их нужно скомпилировать в файл .dat. Это можно сделать с помощью компилятора captioncompiler в папке Portal 2/bin.
Нажмите кнопку Пуск, выберите Выполнить и введите cmd, чтобы открыть командную строку. Найдите файл captioncompiler.exe и перетащите его в окно командной строки. Введите -v "closedaption_ИМЯФАЙЛА.txt", примерно так:
"U:/Program Files/Steam/steamapps/common/Portal 2/bin/captioncompiler.exe" -v "closecaption_ИМЯФАЙЛА.txt"
Субтитры будут скомпилированы в файл, к которому будет обращаться игра. Оставьте скомпилированный файл в папке resource.


Показ субтитров в игре
Поскольку создание сцен для субтитров не подойдет, требуется вызывать субтитры вручную с помощью энтитей в Hammer или с помощью скрипта.
- Создайте или используйте
point_servercommand.
- Создайте
logic_auto и добавьте выход с именем файла субтитров без префикса closecaption_:
My Output | Target | Target Input | Parameter |
---|---|---|---|
OnMapSpawn | @servercommand | Command | cc_lang NameOfFile |
3. Чтобы вызвать звук или субтитр каким душе угодно способом, добавьте такие выходы:
My Output | Target | Target Input | Parameter |
---|---|---|---|
OnAnOutput | @servercommand | Command | cc_emit character.example1 |
- Не забудьте одновременно воспроизвести звук, к которому относится субтитр.


Если вы используете в своей карте оригинальные файлы сцен, но со своими голосовыми репликами, не меняйте cc_lang OnMapSpawn, чтобы у игроков не отображались субтитры оригинальных сцен. Вместо этого воспроизводите свой файл субтитров, когда потребуется. Примерно так:
My Output | Target | Target Input | Parameter | Delay |
---|---|---|---|---|
OnAnOutput | @servercommand | Command | cc_lang NameOfFile | 0.00 |
OnAnOutput | @servercommand | Command | cc_emit character.example1 | 0.10 |
OnAnOutput | @servercommand | Command | cc_lang | 0.20 |
Если команде cc_lang не указан конечный выход (Output), игра снова будет использовать язык Game_UI, но при этом воспроизведет ваши субтитры, вызванные за 0.1 секунды до этого.
Коды субтитров (Portal 2)
<sfx>
- Строка описания звукового эффекта, которая будет отображаться только при выборе полных субтитров. Если переменная cc_subtitles задана на "1", такие строки отображаться не будут.
<clr:255,255,255>
- Задает цвет строки в RGB; 0 - без цвета, 255 - полный цвет. Например, красный: ;
<clr:255,0,0>
. <b>
- Текст, выделенный этим тегом, станет полужирным.
<i>
- Текст, выделенный этим тегом, станет курсивным.
<len:#>
- Задает продолжительность показа субтитра на экране.
<norepeat:#>
- Задает интервал ожидания перед повторным показом субтитра. Требуется для часто повторяющихся звуков.
Пример использования кода:
lang
{
Language "Russian"
Tokens
{
character.example1 "<clr:255,0,0><b> Персонаж: Это субтитр-образец."
character.example2 "<clr:255,0,0><len:3> Персонаж: Субтитры должны отображаться на экране."
}
}