Что бывает, когда в настольный футбол играют разработчики: проапгрейдили не только игру, но и корпоративную культуру

Теперь голы считаются автоматически, соперника вызывают на бой через телеграм-бота, а система оповещает звуками «Мортал Комбат» Fight! Расскажу, как провели цифровую трансформацию настольного футбола.

Что бывает, когда в настольный футбол играют разработчики: проапгрейдили не только игру, но и корпоративную культуру

Привет, я Иван Григорьев, управляющий партнер LARD. В офисе между рабочими задачами мы с коллегами любим поиграть в настольный футбол. Игра здорово разгружает голову, после нее легче придумывать решения в наших digital-проектах.

Однажды нам пришла мысль модернизировать игру. В коллективе много разработчиков, и мы подумали: почему бы не сделать любимый футбол современнее? Например, автоматизировать процесс подсчета голов и вести статистику игр.

В статье рассказываю, как реализовали эту идею и как автоматизация настольного футбола повлияла на нашу корпоративную культуру.

Что и как автоматизировали в игре

Автоматизацией игры мы занимались в свободное время. Через два месяца была готова MVP-версия с подсчетом голов и визуализацией основных игровых моментов в режиме реального времени, а также с последующим сохранением этих данных для статистики. Затем постепенно дорабатывали и улучшали «умный» настольный футбол.

Вот что появилось в нашей игре в результате:

1. Вызов соперника через телеграм-бота. В боте есть список пользователей, зарегистрированных в системе. Из списка нужно выбрать, с кем хотите поиграть, и «бросить вызов». Выбранный пользователь получает сообщение от бота с приглашением — он может его принять или отклонить.

<p>Один игрок выбирает соперника, а второму приходит приглашение на игру</p>

Один игрок выбирает соперника, а второму приходит приглашение на игру

2. Визуализация данных текущей игры. К мини-компьютеру Raspberry Pi, который также является сервером «умного» футбола, мы подключили сенсорный дисплей. Во время игры на нем отображаются имена игроков, время с начала тайма и текущий счет.

3. Расчет текущего счета игры в режиме реального времени. Чтобы система автоматически определяла, когда мяч попадает в ворота, мы установили датчик прерывания на основе светодиода и датчика ИК-диапазона.

Когда мяч попадает в ворота, возникает препятствие между ИК-датчиком и светодиодом — свет излучателя на доли секунды прерывается. Датчик прерывания регистрирует событие, а затем информацию о нем обрабатывает Raspberry Pi. После анализа данных информация выводится на дисплей, и мы понимаем, кто забил гол. Так мы регистрируем каждое попадание мяча в ворота.

В качестве программного стека используется Laravel и Vue, а для передачи данных в режиме реального времени — WebSocket.

Сначала датчики регистрировали ложные голы, но мы нашли решение.

Ворота технически не идеальны. Ось излучателя двигалась, и луч не всегда попадал в принимающий диод. Были помехи, и система засчитывала нелегитимные голы.

Сначала мы добавили функционал, который сбрасывает такие голы, а затем сконструировали крепления для датчиков и напечатали их на 3D-принтере. Теперь считаем только реальные голы, а заодно избавились от дребезга ворот во время игры.

4. Звуковое сопровождение. Каждое попадание мяча в ворота, будь то гол или два подряд, сопровождается звуковым сигналом. Для вывода звука использовали обычные колонки, которые подключили к «сердцу» системы — Raspberry Pi. Причем для каждого события можно установить разные звуки, например фанфары для победного гола.

5. Персонализация. Мы спроектировали личный кабинет, в котором пользователь может настроить свой профиль: выбрать аватарку, задать звуки для событий, посмотреть историю игр. Бросить вызов можно прямо из личного кабинета, а еще он привязан к телеграм-боту, чтобы данные о вызовах синхронизировались.

6. Статистика на основе истории игр. После каждого состязания система сохраняет данные об игре, из них формируется статистика. В личном кабинете можно посмотреть не только историю своих игр, но и общую турнирную таблицу: сколько всего игр у каждого игрока, сколько из них поражений и побед, какой рейтинг.

Мы придумали свою формулу для расчета рейтинга: кто часто выигрывает — забирает баллы оппонента.

Так выглядит турнирная таблица
Так выглядит турнирная таблица

«Умный» настольный футбол — часть нашей корпоративной культуры

Мы и так любим настольный футбол, а после модернизации интерес к игре у коллектива вырос еще больше.

За игрой мы расслабляемся. Добавили интерактива, и играть стало увлекательнее. В любое время можно отвлечься и пойти поиграть, главное — найти соперника. Подавляющее большинство сотрудников играет, и отдых помогает нам перезагрузиться, легче переключаться на разные темы в рабочих проектах.

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

Общаемся без формальностей. Нередко в компаниях люди общаются сухо и формально на «вы», и за обедом нечего обсудить с коллегой, не считая рабочих вопросов. В таком коллективе скучно и неинтересно работать. У нас всё иначе, и во время футбола мы можем посмеяться, выразить эмоции.

Непринужденная обстановка помогает нам генерировать новые идеи и создавать крутые digital-решения. Это еще сильнее сплачивает наш коллектив.

Придумываем новые идеи

Несмотря на уже немалый функционал, хотим реализовать в игре следующие идеи:

  • Регистрировать больше событий. Например, с помощью датчика силы и шкалы измерений оценивать силу удара, чтобы знать, был ли это обычный или суперудар. А затем сделать разную озвучку для разных по силе ударов.
  • Приглашать не зарегистрированного в системе пользователя. Сейчас телеграм-бот приглашает только зарегистрированных.
  • Увеличить число игроков. Например, чтобы могли играть четыре человека, то есть двое на двое.
  • Запустить турниры. Всё, как в настоящем футболе, согласно турнирной таблице: есть много команд, система распределяет соперников, победители разных команд играют друг с другом.
  • Добавить достижения игрока. Разные ачивки и анимации. Например, забил пять голов подряд — дается медалька, присваивается статус какого-нибудь известного футболиста вроде Месси.

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

Автоматизируем не только настольный футбол, но и многие процессы в различных отраслях бизнеса — медицине, строительстве, ретейле, консалтинге, производстве и других.

Об интересных проектах я рассказываю у себя в телеграм-канале. Поделитесь в комментариях, какая корпоративная культура есть в вашем коллективе. Может, тоже во что-то играете или автоматизируете?

5959
40 комментариев

Крутая идея, крутая реализация! В офисе видимо скучно не бывает)
Осталось дисплей малинки заменить на экран телевизора)
Еще есть предложение, добавить анимацию (также с персонализированной настройкой в личном кабинете) при забитом голе (как в боулинге) ;)

5

Идей сейчас очень много, накидывайте, мы обязательно возьмём на вооружение)

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

Судя по табличке, у вас активно играют три-четыре человека... по сути все сделано для них, а не для коллектива

3

Корректировали формулу расчёта рейтинга и обнуляли статистику. Было бы значительно больше ))
Но да, есть несколько самых активных игроков, а многие собираются и следят за ходом матчей

2