 |
Цитата: |
 |
|
|
|
|
|
|
Такс. Не знаю из-за порта звука или нет, так как под корень удалил версию без озвучки, но в обучении обнаружил не срабатывание скриптов и анимаций в диалогах некоторых и такое часто. Решил играть в PS2 версию.
|
|
 |
|
 |
|
Понятно. Спасибо за баг-репорт. Оправдались худшие опасения) Нужно дорабатывать эти косяки. Почему так происходит? Дело в том, что все звуковые файлы в игре подвязаны под сэмпллист, где прописаны значения гц и количества сэмплов. И если значение количества сэмплов сильно ниже чем допустимые нормы, то на этой фразе идет зависание. Диалог можно пропустить нажатием кнопки, но понятно, что это не выход, ведь такого быть не должно.
Началось всё с того, что нужно было собрать pod архив с озвучкой. Но собрав архив обычным pod архиватором, никакие звуки не работают в игре. Потому что их расположение не соответствует нужным позициям. И никак не собрать произвольно pod архив, чтобы всё соответствовало нужным позициям и звучало в игре. И тут единственным вариантом был bms скрипт. Но bms скрипт не соберёт, если хоть один файл больше размером хоть на байт. И лучшего решения было не придумать как... уменьшение гц каждого файла озвучки до 11025 при конвертации. Несколько десятков файлов всё равно не помещались и пришлось убрать там пустоту в аудиоредакторе. И вот, казалось бы всё ништяк. Но нет. Есть еще такая зараза как сэмпллист. А в нём прописаны 22050 гц и сэмплы оригинальных файлов. И озвучка звучит как в быстрой перемотке. А значит решая одну проблему-ты создаёшь вторую. Переписав в сэмпллисте значения гц для озвучки казалось всё решило. Но не тут то было. Оказалось, что значения количества сэмплов предыдущих файлов создают большие паузы между фразами. А значит пришлось с помощью утилиты узнавать все значения количества сэмплов новых файлов и переписывать их. И казалось проблема решена. Но решая вторую проблему-ты создаёшь третью. Оказалось игра порой не все новые значения сэмплов желает считывать. И если значение сильно низкое (меньше 10000, когда в оригинале примерно 15000), то может зависнуть диалог на какой-то фразе. Его можно пропустить, но теряется момент общения. Единственным лечением является возвращение оригинальных значений сэмплов. Я попытался вычислить все такие значения меньше 10000 сэмплов и вернуть оригинальные, но бывало, что и ровно 10000 зависало. Я протестил игру только до появления немецких солдат и надеялся, что удалось в сэмпллисте вычислить все возможные моменты зависаний. Но тренировку не тестировал вообще. По фразе в субтитрах можно вычислить файл, значения которого в сэмпллисте привели к зависанию и потом вернуть туда значения оригинального файла. Но возвращать всем файлам оригинальное значение не вариант, ведь будут сильно большие паузы между фразами. Помощь в тестировании игры бы очень помогла в доведении всего до полной работоспособности.