Ребят подскажите кто шарит из опытных игроделов подскажите как лучше

организовать момент создания нового матча для двух игроков в карточной онлайн игре. Вот у нас есть сервер (сами пишем его на ASP NET Core веб апи плюс SignalR скорее всего будет, то есть максимальная гибкость можем впилить что захотим) и есть клиенты игроков. Вот игрок нажимает кнопку "играть" и нужно создать матч из двух таких вот игроков которые прожали кнопку. На данный момент мы думаем реализовать это через два сервиса. Первый - это сервис очереди, когда игрок у себя на клиенте нажимает кнопку старт он отправляет сообщению на сервер, которое передается сервису "Очередь", этот сервис берет айдишник игрока и записывает в список, далее сразу проверяет длину списка, если в нем более одного айдишника то берет первые два и отправляет их сервису "Создание матча" который уже на основе сущности матча подтягивает по этим айдишникам всю нужную инфу из БД и содает матч и отправляет сообщения с айдишником матча обеим игрокам. Это нормальная практика? Просто хз первый раз делаю онлайн игру и хотелось бы сделать нормально, может есть какие то хорошие паттерны для этого момента ?

2 ответов

4 просмотра

Чот вы сильно заморочились для первого раза, имхо

Звучит весьма разумно. Насчет паттернов/гайдов - как-то не нашлось ничего путнего конкретно в таком ключе, но и опыт - первый проект. Делали в связке go - protoc, так же методом проб/ошибок/замеров/идей, только пилили мультиплеер лобби + лока. Есть мысль, что для начального этапа будет достаточно своих мыслей, а уж по ходу дела либо тянуть бэка, либо самим подтягивать бэк

Похожие вопросы

Обсуждают сегодня

Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Чет мне ссыкотно опять Rainlab.User в проект ставить. Кто знает, опять наотъебись все сделали или после обнов пользоваться можно?
Black Cat
10
ребят, привет есть ли возможность мигрировать Policies + Auth Methods из нескольких Vault в один? пытаюсь сократить Vault кластера, немного не удобно что для каждой тестовой ...
azadevlab
2
коллеги привет. уже второй день бьемся об заклад с одной ошибкой, может вы сталкивались с таки странным поведением? есть тестовый сервер, на который паблишим релизную версию W...
Magzhan
11
это группа токсиков или тех кто помогает?
Ибрагим
9
В смысле более затратная? Общая стоимость владения лошадью меньше, чем автомобиля. В среднем.
Sergej R
10
Загрузил на свой сервер, теперь обычные прямые ссылки без query параметров и возможных ограничений, всё равно та же ошибка. Неужели скачивать из VK и перезаливать в TG кажд...
Alexey S
2
Кстати, раз про скачивание файлов разговор зашел) Сделал бота для себя (транскрибирующего и суммаризирующего встречи) но не ожидал что за 2 месяца 10к пользователей набежит😅...
Andrey Obolenskiy
8
Можете помочь с этим, я тут использую Джанго как ОРМ для бота, но бот запускать не хочет, уже всезде перерыл не могу решить, может кто то сталкивался?
Ибрагим
4
Карта сайта