![Фотография](https://arma3.ru/forums/public/style_images/GreyRed/profile/default_large.png)
Анимация разговора,движения губ?
![](https://arma3.ru/forums/public/style_images/GreyRed/profile/default_large.png)
Лучший Ответ DarkViper98 , 06 April 2016 - 23:28
Разговоры делаются по-другому, специально для этого - новая возможность от BIS в Arma 3.
В папке с миссией создаешь файл texts.bikb
Туда пишешь вот такими блоками:
class Sentences { class SomeName // Имя любое { text = "SomeText"; // Текст speech[] = {"Folder\Sound.ogg"}; // Папка со звуками и указание на звук actor = "InitName"; // Называешь в инициализации бойца, пишешь сюда такое же имя. Данная строчка указывает на то кто будет произносить речь. variant = ""; variantText = ""; class Arguments {}; }; };
class Arguments{}; class Special{}; startWithVocal[] = {hour}; startWithConsonant[] = {europe, university};
В папку с миссией добавляешь файл init.sqf
Туда пишешь следующее.
InitName KbAddTopic ["conversations","texts.bikb","",""]; // conversations - просто название оно может быть любое. texts.bikb - название файла, в котором наши диалоги написаны. Соответственно должно быть такое название. InitName KbAddTopic ["conversations","texts.bikb","",""]; // InitName - имя твоих действующих лиц, которые будут говорить. Каждому говорящему юниту добавляешь такую команду.
Как добавлять .ogg Надеюсь знаешь. Если у тебя audacity или другая программа, то не забывай переводить дорожку из СТЕРЕО в МОНО. Файлы .ogg кидаешь в папку со звуками. Folder\Sound.ogg Должная соответствовать пути в файле texts.bikb
Теперь добавляем движения губами.
Скачай из Steam инструментов Arma 3 Tools. Заходишь. Видишь Audio, рядом значок папки, заходишь в него. Видишь файл WAVToLIP.exe и на него из папки со звуками перемещаешь свои записи. Появляется в папке со звуком файл .lip. Он должен иметь название такое же как и .ogg
Теперь диалог в игре. Ставишь юнитов, все делаешь. Теперь куда-нибудь пишешь команду, чтобы активировать фразу.
InitName KbTell [InitName2,"conversations","Name"];
InitName - имя юнита в инициализации, который будет говорить речь. InitName2 - услышит эту речь, то есть говорят - ему. Если он будет на большом расстоянии от того, кто сказал, то сообщение будет сказано по рации.
conversations - имя, которое использовали в init.sqf - то есть должно быть одинаково.
Name по-моему название аудиофайла, без .ogg пишется.
![](https://arma3.ru/forums/public/style_images/GreyRed/right_white_10px.png)
#1
OFFLINE
Отправлено 05 April 2016 - 23:19
#2
OFFLINE
Отправлено 05 April 2016 - 23:42
имя бота Васька1
Ничего странным не находите?а в инициализации у бота пишу Петька1
#3
OFFLINE
Отправлено 06 April 2016 - 13:44
имя бота Васька1
Ничего странным не находите?а в инициализации у бота пишу Петька1
Спасибо за внимательность. но причина не в этом. Имя ботам всегда пишу на англ.из пары букв (SA1) или что-то подобное
#4
OFFLINE
Отправлено 06 April 2016 - 13:50
Прошу помощи. или образец миссии.
#5
OFFLINE
Отправлено 06 April 2016 - 23:28 Лучший Ответ
Разговоры делаются по-другому, специально для этого - новая возможность от BIS в Arma 3.
В папке с миссией создаешь файл texts.bikb
Туда пишешь вот такими блоками:
class Sentences { class SomeName // Имя любое { text = "SomeText"; // Текст speech[] = {"Folder\Sound.ogg"}; // Папка со звуками и указание на звук actor = "InitName"; // Называешь в инициализации бойца, пишешь сюда такое же имя. Данная строчка указывает на то кто будет произносить речь. variant = ""; variantText = ""; class Arguments {}; }; };
class Arguments{}; class Special{}; startWithVocal[] = {hour}; startWithConsonant[] = {europe, university};
В папку с миссией добавляешь файл init.sqf
Туда пишешь следующее.
InitName KbAddTopic ["conversations","texts.bikb","",""]; // conversations - просто название оно может быть любое. texts.bikb - название файла, в котором наши диалоги написаны. Соответственно должно быть такое название. InitName KbAddTopic ["conversations","texts.bikb","",""]; // InitName - имя твоих действующих лиц, которые будут говорить. Каждому говорящему юниту добавляешь такую команду.
Как добавлять .ogg Надеюсь знаешь. Если у тебя audacity или другая программа, то не забывай переводить дорожку из СТЕРЕО в МОНО. Файлы .ogg кидаешь в папку со звуками. Folder\Sound.ogg Должная соответствовать пути в файле texts.bikb
Теперь добавляем движения губами.
Скачай из Steam инструментов Arma 3 Tools. Заходишь. Видишь Audio, рядом значок папки, заходишь в него. Видишь файл WAVToLIP.exe и на него из папки со звуками перемещаешь свои записи. Появляется в папке со звуком файл .lip. Он должен иметь название такое же как и .ogg
Теперь диалог в игре. Ставишь юнитов, все делаешь. Теперь куда-нибудь пишешь команду, чтобы активировать фразу.
InitName KbTell [InitName2,"conversations","Name"];
InitName - имя юнита в инициализации, который будет говорить речь. InitName2 - услышит эту речь, то есть говорят - ему. Если он будет на большом расстоянии от того, кто сказал, то сообщение будет сказано по рации.
conversations - имя, которое использовали в init.sqf - то есть должно быть одинаково.
Name по-моему название аудиофайла, без .ogg пишется.
Сообщение отредактировал DarkViper98: 07 April 2016 - 00:21
#6
OFFLINE
Отправлено 27 January 2017 - 22:19
Разговоры делаются по-другому, специально для этого - новая возможность от BIS в Arma 3.
В папке с миссией создаешь файл texts.bikb
Туда пишешь вот такими блоками:
class Sentences { class SomeName // Имя любое { text = "SomeText"; // Текст speech[] = {"Folder\Sound.ogg"}; // Папка со звуками и указание на звук actor = "InitName"; // Называешь в инициализации бойца, пишешь сюда такое же имя. Данная строчка указывает на то кто будет произносить речь. variant = ""; variantText = ""; class Arguments {}; }; };class Arguments{}; class Special{}; startWithVocal[] = {hour}; startWithConsonant[] = {europe, university};Делаешь блоков сколько нужно в зависимости от того сколько реплик. В конец файла обязательно пишешь то, что указано во втором коде ниже первого. Без этого ничего не будет работать.
В папку с миссией добавляешь файл init.sqf
Туда пишешь следующее.
InitName KbAddTopic ["conversations","texts.bikb","",""]; // conversations - просто название оно может быть любое. texts.bikb - название файла, в котором наши диалоги написаны. Соответственно должно быть такое название. InitName KbAddTopic ["conversations","texts.bikb","",""]; // InitName - имя твоих действующих лиц, которые будут говорить. Каждому говорящему юниту добавляешь такую команду.Как добавлять .ogg Надеюсь знаешь. Если у тебя audacity или другая программа, то не забывай переводить дорожку из СТЕРЕО в МОНО. Файлы .ogg кидаешь в папку со звуками. Folder\Sound.ogg Должная соответствовать пути в файле texts.bikb
Теперь добавляем движения губами.
Скачай из Steam инструментов Arma 3 Tools. Заходишь. Видишь Audio, рядом значок папки, заходишь в него. Видишь файл WAVToLIP.exe и на него из папки со звуками перемещаешь свои записи. Появляется в папке со звуком файл .lip. Он должен иметь название такое же как и .ogg
Теперь диалог в игре. Ставишь юнитов, все делаешь. Теперь куда-нибудь пишешь команду, чтобы активировать фразу.
InitName KbTell [InitName2,"conversations","Name"];InitName - имя юнита в инициализации, который будет говорить речь. InitName2 - услышит эту речь, то есть говорят - ему. Если он будет на большом расстоянии от того, кто сказал, то сообщение будет сказано по рации.
conversations - имя, которое использовали в init.sqf - то есть должно быть одинаково.
Name по-моему название аудиофайла, без .ogg пишется.
sleep 3; /// Используешь данную команду для интервала между репликами.Вроде все расписал, должно работать. Если что-то не получилось, пиши мне короче.
Забыл сказать спасибо. Всё работает .Ошибся, сейчас и не вспомнить.Texts.bikb назвал не так. Спасибо
#7
OFFLINE
Отправлено 09 October 2017 - 16:38
Что-то ничего не пойму. Всё сделал так как написано, звук не воспроизводится и анимации нет.
#8
OFFLINE
Отправлено 29 December 2017 - 04:15
Разговоры делаются по-другому, специально для этого - новая возможность от BIS в Arma 3.
В папке с миссией создаешь файл texts.bikb
Туда пишешь вот такими блоками:
class Sentences { class SomeName // Имя любое { text = "SomeText"; // Текст speech[] = {"Folder\Sound.ogg"}; // Папка со звуками и указание на звук actor = "InitName"; // Называешь в инициализации бойца, пишешь сюда такое же имя. Данная строчка указывает на то кто будет произносить речь. variant = ""; variantText = ""; class Arguments {}; }; };class Arguments{}; class Special{}; startWithVocal[] = {hour}; startWithConsonant[] = {europe, university};Делаешь блоков сколько нужно в зависимости от того сколько реплик. В конец файла обязательно пишешь то, что указано во втором коде ниже первого. Без этого ничего не будет работать.
В папку с миссией добавляешь файл init.sqf
Туда пишешь следующее.
InitName KbAddTopic ["conversations","texts.bikb","",""]; // conversations - просто название оно может быть любое. texts.bikb - название файла, в котором наши диалоги написаны. Соответственно должно быть такое название. InitName KbAddTopic ["conversations","texts.bikb","",""]; // InitName - имя твоих действующих лиц, которые будут говорить. Каждому говорящему юниту добавляешь такую команду.Как добавлять .ogg Надеюсь знаешь. Если у тебя audacity или другая программа, то не забывай переводить дорожку из СТЕРЕО в МОНО. Файлы .ogg кидаешь в папку со звуками. Folder\Sound.ogg Должная соответствовать пути в файле texts.bikb
Теперь добавляем движения губами.
Скачай из Steam инструментов Arma 3 Tools. Заходишь. Видишь Audio, рядом значок папки, заходишь в него. Видишь файл WAVToLIP.exe и на него из папки со звуками перемещаешь свои записи. Появляется в папке со звуком файл .lip. Он должен иметь название такое же как и .ogg
Теперь диалог в игре. Ставишь юнитов, все делаешь. Теперь куда-нибудь пишешь команду, чтобы активировать фразу.
InitName KbTell [InitName2,"conversations","Name"];InitName - имя юнита в инициализации, который будет говорить речь. InitName2 - услышит эту речь, то есть говорят - ему. Если он будет на большом расстоянии от того, кто сказал, то сообщение будет сказано по рации.
conversations - имя, которое использовали в init.sqf - то есть должно быть одинаково.
Name по-моему название аудиофайла, без .ogg пишется.
sleep 3; /// Используешь данную команду для интервала между репликами.Вроде все расписал, должно работать. Если что-то не получилось, пиши мне короче.
Ребятушки, подскажите этот способ актуальный? что то не получается заставить бота говорить?
#9
OFFLINE
Отправлено 30 December 2017 - 01:45
Причём некоторые фразы он говорит, но в основном звук глючит, губы не шевелятся и тд
Видимо опять бисы что-то запороли
#10
OFFLINE
Отправлено 22 March 2018 - 18:48
Тоже проблема с KbTell. У меня и фразы работают и губы шевелятся все как надо, но звука нет, хотя через "say" звук есть. Такое чувство, что строчка:
speech[] = {"Folder\Sound.ogg"};
просто-напросто не срабатывает. Тем не менее ошибок никаких нет...
Сообщение отредактировал Scully: 22 March 2018 - 18:52