{"id":14270,"url":"\/distributions\/14270\/click?bit=1&hash=a51bb85a950ab21cdf691932d23b81e76bd428323f3fda8d1e62b0843a9e5699","title":"\u041b\u044b\u0436\u0438, \u043c\u0443\u0437\u044b\u043a\u0430 \u0438 \u0410\u043b\u044c\u0444\u0430-\u0411\u0430\u043d\u043a \u2014 \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0433\u043e\u0440\u0435","buttonText":"\u041d\u0430 \u043a\u0430\u043a\u043e\u0439?","imageUuid":"f84aced9-2f9d-5a50-9157-8e37d6ce1060"}

Разработка голосового интерфейса StarCraft II для Alexa

Глава инженерного отдела UpsideLab Рафаль Цимерис — о том, как играть в стратегию с помощью голосового управления.

В магазине навыков Alexa есть множество игр. Но большинство из них либо простые викторины, либо текстовые приключенческие игры из 1970-х годов, перенесённые на голосовой интерфейс.

Мы думали, можно ли сделать что-то ещё.

Недавно мы были на хакатоне Talk to Me, Berlin, где придумали концепт (и работающий прототип), который показывал, как можно внедрить голосовые интерфейсы в видеоигру.

Когда голос работает лучше всего

Голосовой интерфейс подходит приложениям c режимом управления без рук. Так можно одновременно делать несколько задач и выполнять простые действия, не переключая на них внимание полностью.

Когда вы ведёте машину или делаете себе бутерброд, удобнее сказать что-то виртуальному помощнику, чем взять телефон и сделать действие самому.

С точки зрения военнокомандующего

Управление армией есть во всех стратегиях.

Игрок почти всегда смотрит на игру глазами офицера высокого ранга, например, генерала. У вас есть полный контроль над всеми частями войск и зданиями. Только вы решаете, какую стратегию использовать.

Но как ощущать себя генералом, не отдавая приказы? А ещё приходится управлять всеми частями войск самостоятельно, нет возможности выбирать задания своим подчинённым.

Мы решили исправить это, превратив Alexa в «умного» внутриигрового помощника.

Чтобы развить идею дальше, мы выбрали StarCraft II. У нас было на это несколько причин:

  • Игра футуристична, как и виртуальные помощники.
  • Это стратегия со сражениями, поэтому она идеально подходит для того, чтобы отдавать приказы.
  • Здесь требуется многозадачность, а это подходящее условие для внедрения взаимодействий в режиме управления без рук.
  • В игре есть API, с помощью которого можно к ней подключиться.

Выбор команд

Мы сосредоточились на конкретных игровых ситуациях и предложили следующие команды.

  • Тренировка дополнительных войск и отправка их на поле сражения по готовности. Это полезно, если вы понимаете, что отправили в бой слишком маленькую армию. Можно сосредоточиться на битве, потому что вы знаете, что скоро прибудут дополнительные солдаты.
  • Эвакуация рабочих на базу. Когда вы видите, что приближается враг, можно быстро скомандовать наиболее уязвимым частям вернуться в безопасное место. Эта же команда подойдёт, если надо завести флот в убежище, тем самым получить преимущество над вражескими войсками.

Знакомьтесь, Кейт Блэкуотер

Alexa не сочеталась с игровой вселенной. Люди привыкли к тому, что она приветливая и весёлая, а это совсем не подходит военному офицеру.

Чтобы голосовой пользовательский интерфейс лучше соответствовал игре StarCraft, мы разработали альтернативную версию виртуального помощника и назвали её Кейт Блэкуотер.

Кейт — ваш подчинённый, командир, которому можно доверить некоторые задачи. Она находится на базе и следит за тем, что там происходит.

Она немного неприветлива, отвечает кратко и точно: «Вас поняла. Подтверждаю».

Вот примеры команд, которые понимает помощник:

  • Alexa, скажи командиру отправить больше солдат.
  • Alexa, скажи командиру всех эвакуировать.
  • Alexa, узнай у командира о боеготовности.

Также мы воспользовались другими сервисами преобразования текста в речь, потому что голос Alexa слишком мягкий для этой игры. Подготовили ответы, которые больше подходили Кейт, — они были сухими и чёткими.

Живая демонстрация

По ссылке — создание навыков Alexa с помощью Python и AWS Lambda.

0
21 комментарий
Написать комментарий...
Vladislav Grischenko

концепт крутой, но вот если бы всей игрой можно было рулить ТОЛЬКО голосом, было бы вообще огонь. полагаю, пришлось бы автоматизировать ряд задач
(или вести список команд, которые ИИ будет выполнять по порядку) и нумерацию отрядов. хотя, это, конечно, в итоге будет напоминать боевое программирование.

уже вижу бои двух вещающих коммандоров: оба орут на комплюкеры, потому что сами что-то напутали или забыли правильную формулировку приказа

Ответить
Развернуть ветку
Sergey Willnotsayanyway

Чтобы победить, программист еще должен будет научиться говорить скороговорки по 300 слов в минуту

Ответить
Развернуть ветку
Vladislav Grischenko

за что аркадий ни возьмется
все превращается в рэп-баттл

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Sergey Willnotsayanyway

Если бы они показали реальный матч хотя бы с игроком из "золотой лиги", я бы еще мог поверить
А так - простое баловство.

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Sergey Willnotsayanyway

С профи порубиться можно будет только в том случае, если микрить за тебя будет Автоматон9000

Ответить
Развернуть ветку
Sergey Willnotsayanyway

Хотя, даже в этом случае выигрывать получится только чизовыми стратегиями, да и то нечасто.
В макро скорость обработки голосовых команд не позволит играть наравне против мышки с клавиатурой.

Ответить
Развернуть ветку
Дмитрий Сильнов

Только фотонить получится, да и то не всегда.
Для чизовых билдов очень важен хороший apm, который никак не обеспечит голосовое управление

Ответить
Развернуть ветку
Sergey Willnotsayanyway

Для более-менее четкой игры нужно не менее раза в секунду отдавать команды.

Ответить
Развернуть ветку
Truba Shatal

Алекса, всех батраков на минералы, разведка, фаст пуш через 2 харчи зерглингами. GG WP.

Ответить
Развернуть ветку
Sergey Willnotsayanyway

Alexa, show me the money

Ответить
Развернуть ветку
Дмитрий Сильнов

Хотя никогда не стоит забывать про три барака пуш под стимпаком. Командуешь Алексе что-то вроде Ф2-a-t и выходишь в топ серебра.

Ответить
Развернуть ветку
Sergey Willnotsayanyway

Даже если играть без рук, нужно как-то управлять мышкой (например, взглядом)
И если армию еще можно направлять в область а-кликом, то как научиться ставить здания именно в том месте, где надо, я не могу представить.

Ответить
Развернуть ветку
Ростислав Никишин

Мне бы с руками серебро завалить 😂

Ответить
Развернуть ветку
Nikolay

при этом же реальное сложнилово в файте - подойти покоцать, отойти
выманить маринс колосом и пр. не взлетит пока что, согласен с вами коллега. привет из золтой лиги )

Ответить
Развернуть ветку
Shoo

Дота опустеет же.

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Nikolay Kenig

Ну ваш телефон тоже начинался с ..транзистора

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Павел Потапов

Тут надо самому тестить насколько функционален этот помощник. Я как активный игрок в sc2 вижу пару кейсов, но надо тестить

Ответить
Развернуть ветку

Комментарий удален модератором

Развернуть ветку
Влад Ямпольский

Действия описанные тут - это довольно простые макросы. Вместо той же Алексы, можно просто поставить себе Voice Attack и настроить его под себя.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Дмитрий Сильнов

На медиваке

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
18 комментариев
Раскрывать всегда