TML KRAKÓW
Мир виртуальной реальности, лазеров и магии

История с развлекательным центром началась с решения внутренних задач. Бухгалтерия и расчет зарплат ведутся в таблицах Google Sheets, и этого формата долгое время было достаточно. Однако по мере роста плотности данных интерфейс таблиц начинает работать с ощутимыми задержками.
Проблема медленных рабочих инструментов заключается в накапливающемся трении. Потеря пары секунд на каждом малом действии складывается в минуты и часы, а на дистанции в годы превращается в безвозвратно потерянные дни времени сотрудников. Усталость от такого инструмента имеет накопительный эффект.
Мы разработали алгоритмы двунаправленной синхронизации между Google Sheets и базой данных Supabase. Сверху этой базы мы спроектировали и внедрили интерфейс внутренней операционной платформы, адаптированной под специфику центра. Сотрудники сохранили возможность работать в привычном формате таблиц, при этом вся информация стала мгновенно структурироваться в защищенном хранилище. Ожидания загрузки исчезли.
Эмоции подросткам сервис взрослым
Фокус нашей работы сместился с внутренних инструментов на создание продуктов для посетителей. Мы перешли к реализации маркетингового сайта и системы онлайн-резервации билетов. Мы исходили из того, что решение о посещении центра, как правило, принимают подростки, а процесс бронирования и оплаты осуществляют их родители. Поэтому проект совмещает две визуальные концепции. Динамичные, вовлекающие блоки были спроектированы для восприятия молодой аудитории, а строгий, интуитивно понятный процесс выбора и оплаты билетов — для комфорта взрослых.
Общий тон интерфейса передает динамику виртуальной реальности. Визуальный язык сайта построен на глубоких темных тонах и неоновых свечениях в эстетике киберпанка. Техническим вызовом стала реализация бесконечной 3D-карусели аттракционов для широких экранов. Каждый следующий элемент в ней визуально уходит вглубь, создавая эффект взгляда между двумя зеркалами. Это стало прямой отсылкой к одному из главных аттракционов центра — «Залу Бесконечности».
Помимо прямых продаж, маркетинговый сайт решает задачу стабильного привлечения новой аудитории. Для этого мы добавили мультиязычный блог. Для работы с публикациями мы встроили полноценный текстовый редактор прямо во внутреннюю панель.
Алгоритм распределения гостей
Самой объемной частью этого этапа стала архитектура системы онлайн-резервации. Центр располагает 9 аттракционами на площади 300 квадратных метров. Для посетителей доступно два формата: аренда зала под групповые мероприятия (например, дни рождения) и продажа билетов на индивидуальные сеансы. Система должна учитывать оба формата. Если забронирован групповой пакет с фиксированным временем, зал закрывается для других клиентов. В остальное время алгоритм распределяет поток индивидуальных посетителей между 9 игровыми зонами так, чтобы исключить очереди.
Чтобы пользователь мог просто выбрать время и оплатить билет, мы написали независимый расчет доступности. Внутри система делит рабочий день на 15-минутные интервалы. Когда большая группа резервирует время, программа автоматически разносит старты игр на небольшие смежные отрезки. Это позволяет гостям начинать сеансы плавно и избегать столпотворения.
Параллельно система непрерывно высчитывает загрузку. Она гарантирует наличие как минимум трех свободных аттракционов в любой момент времени, предоставляя каждому новому посетителю выбор. Обычное нажатие кнопки «Забронировать» на экране пользователя запускает детальный алгоритм равномерного распределения гостей в пространстве зала.
Автономная архитектура
Сегодня ключевые этапы обслуживания в этом развлекательном центре автоматизированы, и большинство из них функционируют полностью автономно.
Оплата мгновенно проходит через Stripe сразу после завершения резервации. Данные фиксируются в единой базе, клиент получает письмо-подтверждение через сервис Brevo, а во внутреннем календаре сразу создается карточка события. Администраторы на смене получают уведомление о новом госте в телеграм-бот. Для обработки оплат на месте мы внедрили кассовый модуль, позволяющий вести учет всех локальных финансовых операций.
Разработанная архитектура взяла на себя рутину вычислений и уведомлений. Мы сделали взаимодействие с системой простым и предсказуемым, освободив людям время для самого главного — для их профильной работы.