Unreal Tournament: Game of the Year Edition Guide

Если новый ВойсПак не работает в сетевой игре. for Unreal Tournament: Game of the Year Edition

Если новый ВойсПак не работает в сетевой игре.

Overview

Если вы сделали/скачали новый ВойсПак, ставите его на свой сервер, а он не работает, то вам сюда.

1. Описание проблемы

Привет коммьюнити!
В свое время потратил кучу времени на эту ерунду, поэтому делюсь с вами!

Итак, у вас есть новый нестандартный ВойсПак.
Казалось бы устанавливаете его к себе самым стандартным образом.
А именно:
1. Копируете в System файлы NewVoicePack.u и NewVoicePack.int
2. Добавляете в unrealtournament.ini строчку ServerPackages=NewVoicePack.
3. Далее запускаете УТ и с довольным видом гоняете с новым ВойсПаком с ботами, убеждаетесь что всё работает как надо.

Примечание

Кто-то может воскликнуть: “Постой, ты забыл о файле NewVoicePack.uax, его ведь тоже нужно кинуть в Sounds. Признаюсь, этот момент мне не до конца понятен. Если пилишь ВойсПак самостоятельно, то файл со звуками создавать приходится. Но впоследствии все звуки сохраняются в U-файле, а UAX-файл больше не требуется. Его можно просто удалить. При этом естественно U-файл “раздувается” в размере и становится ориентировочно равным по размеру UAX-файлу.
Однако мне попадались ВойсПаки, где размер U-файла всего несколько килобайт, а в комплекте шел UAX-файл. То есть походу как-то можно это регулировать.

4. Затем вы создаете свой сервер, рассчитываете удивить друзей новым голосом, а не тут то было. Файл попросту игнорируется клиентом и соответственно не скачивается.
В результате, вы зайдя к себе же на сервер, увидите либо Голосовое Меню с пустыми строками, либо строки будут заполнены и звуки воспроизводиться, но слышать это будете только вы.
Если вы откроете Server.log в папке System то увидите примерно следующее:

DevNet: TcpNetDriver on port 7777
Log: Server Package: SoldierSkins
Log: Server Package: CommandoSkins
Log: Server Package: FCommandoSkins
Log: Server Package: SGirlSkins
Log: Server Package: BossSkins
Log: Server Package: Botpack

Log: Server Package: NewVoicePack
Log: (server-side only)

Log: Server Package: NoInvisibility
Log: Server Package: NoUDamage

Вот этот “server-side only” и портит нам всю малину. Этот флаг (атрибут) по умолчанию ставится в новый package, нужно его удалить.

2. Решение проблемы

1. Идём в папку System, находим приложение UCC.exe.
Ставим совместимость с Windows XP (пакет обновления 3) и галочку на “Выполнять эту программу от имени администратора”. Сохраняем.
2. Пуск >>> Стандартные >>> ПКМ по “Командная строка” >>> Запуск от имени администратора.
3. В моем случае игра лежит на диске D, поэтому вводим команду D:.
4. Далее нужно перейти в папку System игры, для этого вводим команду
CD D:GamesUTUnreal TournamentSystem, адрес у вас будет естественно свой.

Примечание:

Для того вставить текст в командную строку комбинация Ctrl+V не работает. Используйте ПКМ >>> Вставить.
– Не рекомендуется использовать русские символы и лишние пробелы в адресе. Пробел в слове Unreal Tournament почему-то не в счёт.

5. Далее вернемся в папку System, найдем наш многострадальный NewVoicePack.u и переименуем его в TempName.u.
6. Убеждаемся в наличии атрибута ServerSideOnly, для этого вводим в командную строку команду:
ucc packageflag TempName.u
Видим следующее:

7. Ну и самое важное, удаление ненавистного атрибута:
ucc packageflag TempName.u NewVoicePack.u -ServerSideOnly
То есть команда присваивает файлу нужное нам имя и попутно удаляет флаг (атрибут) ServerSideOnly.


8. Файл TempName.u можно удалить за ненадобностью и делаем контрольную проверку в соответствии с п.6


Поздравляю, теперь всё будет работать как надо! 🙂

Примечание:

Команда ucc help выдаст вам перечень всех доступных команд. В числе прочих имеется команды по сжатию и декомпрессии UZ-файлов. Вещь нужная для Redirect’а.

Вот и всё! Делитесь своими ВойсПаками, особенно если они на русском языке! =)

SteamSolo.com