Skyrim + Mantella мод: експеримент зі спілкування з NPC українською мовою

💡 Усі статті, обговорення, новини про AI — в одному місці. Приєднуйтесь до AI спільноти!

Для гри «The Elder Scrolls 5: Skyrim» з’явилася вельми цікава модифікація: Mantella — Bring NPCs to Life with AI

Заявлені можливості:
— понад 1000 NPC можуть підтримувати розмову та запам’ятовувати попередні діалоги з гравцем;
— NPC не лише усвідомлюють перебіг розмови з вами, але й своє ігрове оточення. Вони враховують такі фактори, як їхнє місце перебування, поточний час і дії гравця, наприклад: сів на стілець, підібрав предмет, тощо;
— NPC можуть починати розмови одне з одним (Radiant Dialogue, опціонально);
— NPC можна вмовити супроводжувати гравця або образити і спровокувати на напад;
— Мод використовує комбінацію сучасних технологій: ви розмовляєте з NPC через мікрофон, завдяки Whisper ваші репліки розпізнаються та передаються до ChatGPT або локальної мовної моделі (наприклад через KoboldCpp), мовна модель використовує skyrim_characters.csv, що містить стислі дані про NPC Скайріму (координати в грі, біографії, ключові фрази, тощо), генерує відповіді та виводить їх не тільки субтитрами, а й голосом з використанням xVASynth.

Звісно що найякісніший варіант отримають англомовні гравці, також автори виклали дата файл французькою (не перевіряв) та російською (зламаний, не працює).

Що зробив я: взяв за основу англомовний skyrim_characters.csv та переклав через гугол транслейт українською та російськими мовами, трохи вичитав, але текст ще не ідеальний. Також встановив додаткові russian language voice models for SKVA, на жаль україномовних не знайшов. Хоча натрапив на кілька незавершених спроб перекласти Скайрім українською.

Записав відео того як я спілкувався з жителями Скайріму, місцями глючить, ковтає частину слів — тобто вимовляє не все що виводиться субтитрами, але щось вже розуміє :-) Якщо зацікавило прошу ознайомитися:

Сам мод можна забрати тут: www.nexusmods.com/...​specialedition/mods/98631
Детальні інструкції щодо налаштування: art-from-the-machine.github.io/...​a/pages/installation.html
Github: github.com/...​from-the-machine/Mantella

Мої файлики перекладу (чернетка, ще буду доробляти): Mantella_lang.zip

P.S. Якщо буде запит — можу викласти більш детальну інструкцію, як налаштовував все локально.

P.P.S. Цікавий діалог вийшов у замку ярла Вайтрана із Хронгаром, коли тестував російськомовну модель. NPC начебто усвідомив себе у грі і навіть звинуватив мене в неповазі :-) відтворив по логах:

- Игрок: "Привет Hrongar."
NPC: "Привет, пришёл ли к началу дня в ваш замок хорошо?"
"Хронга, а знай, я в полном забвении и все, что мне нужно, чтобы замять голод, я нашел уже. Как же вы, кстати, знаете обо мне, если не вам ли я так и не заинтересовал?"
"Так и лежал я словно мертвый, пока тебе не попалась в глаза таким забавным придуманным тебе моментом. А про личность, которую меня совершенно не интересует, как вы знаете обо мне, если не из ваших мечтаний?"
- Игрок: "Ну, я узнал вас по игре."
NPC: "Игра? А это означает, что это не реальная жизнь? В таком случае, я больше не буду останавливаться на ваших вопросах, которые я считаю нерелевантными к нашему диалогу. А знайте, мне ведь очень неприятно общаться с теми людьми, которые не могу знать и не прощее за что поведение других. В таком случае мой ответ для вас будет: я хожу сюда и там, но это ваша ведь жажда познать все обстановку."
- Игрок: "Ну, скайрим для вас мир, а для меня игра."
NPC: "Мир, а значит, вы уверены что это просто игра? Я, Хронгар, живу не в игре, но в жизни и попытка вашими вопросами вывести меня из себя, не окажется успешной. А вы не в этом мире, вы в своей. Надеюсь, что это вы находяте приятным проведением времени, потому что я, вы так называемую игровую персонаж, не делаю этого. А вы, например, чувствуете себя просвещёнными, потому что нашли мои кусочки информации?"
"Не чайник, хронгар. Вполне могли бы вы слышать меня горести, но я могу простить и поддерживать вас даже в такой подобной ситуации. А пока на текущий момент я даже не горюю, я понимаю, что человек в игре может быть ограничен и должен делать то, что ему сказали, но в реальной жизни каждый человек свободен в своих действиях."
- Игрок: "Глубокая мысль."
NPC: "Хронгар, если вам удобно, можете посидеть у меня и поговорить о том, что сердце вас болит. Может это просто возникновение сильных эмоций, или есть ещё какие причины? Позвольте мне познаять вас лучше и подумать, как я могу вам помочь."
- Игрок: "Да ничего у меня не болит, просто развлекаюсь."
NPC: "Хронгар, если у вас нет жалоб и проблем, то могу ли я предложить вам какой-нибудь интересный сюжет, который вы, возможно, никогда не услышите в игре? Мне лично интересно рассказать вам историю, которая случилась на родине моего клана: о лорде Хрольде, который, по преданиям, держит в своих руках магический кубок, способный принести большое благословенье на праздник, если только его не попасть в руки врагам. Здесь я могу рассказать вам обычаи и фольклоре нашей страны, а также о месте, которое я думаю, вам будет интересно увидеть из-за прекрасных видов и загадочных легенд."
- Игрок: "Расскажите, пожалуйста."
NPC: "Хронгар, послушайте меня. Нам известно, что огненный лорд Хрольде был человеком, впоследствии прославленным в песнях и повестях. Он жил в долине Светлой Озера, рядом с моим родным селением. И вот однажды, во время праздника, лорд Хрольде потерял свой магический кубок, который лежал на столе, украшенном золотом и драгоценным камнем. Тогда и началась страшная битва за доме солнца, а кубок, исчезнув, служит и до сегодняшнего дня поводом к разглашению старых легенд и загадок."
- Игрок: "Спасибо, очень красивая легенда."
NPC: "Хронгар, и вы не можете представить для себя глубину и увлекательность этого сюжета? А мы, думаю, должны познакомиться на самом деле один с другим и обнаружить много общего для себя. Поэтому, я предлагаю провести время вместе на этой поверхности, рассматривая самое прекрасное созерцание и по возможности попасть к этому кубку, который, по песням и преданиям, обладает сверхъестественной силой и позволит вам реализовать все ваши закошеллы мечты. Вдвоём мы не только найдём кубок, но и заглавные персонажи смогут найти себя и совершить стремительно развивающийся взлёт, достойный любого хорошего сюжета."
- Игрок: "Спасибо до свидания!"
NPC: "Хронгар, всегда пожалуйста! Я уверен, что совместная миссия по нахождению магического кубка принесёт нам не только материальную реальность, но и духовное разнообразие и знакомство со множеством новых людей. И тут-то всё! Я надеюсь, что мы увидимся под стенами Светлого Озера и вместе примерим силы над загадочным кубком. Пока, попрощайтесь и подумайте о нашей следующей встрече."

Підписуйтеся на Telegram-канал @gamedev_dou, щоб не пропустити найважливіші статті і новини про геймдев

👍ПодобаєтьсяСподобалось2
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Підписатись на коментарі