
Комментарии 8
Хоть убейте, но зачем тут вэбсокеты? Вполне можно собирать батчи из кликов и отправлять уже их. А на фронте использовать optimistic ui концепцию. При отправке батча получать реальное состояние и синхронить его с состоянием на клиенте.
Деление на сервисы с описанными вами областями ответственности тоже вызывает вопросы, но я не бэкенд разработчик, поэтому не мне судить.
Приветствую! Спасибо за фидбек
Я выбрал сокеты не только ради передачи кликов, а чтобы сервер мог сам толкать события клиенту: апдейты баланса, энергии, бустеры, награды и прочее. С батчами это тоже можно сделать, но тогда появились бы задержки, пришлось бы городить и пушить события от сервера было бы гораздо сложнее.
Сокеты тут даёт простой двусторонний канал: клиент шлёт клики, сервер сразу отвечает актуальным состоянием или событиями без лишних запросов и задержек.
По разделению на сервисы согласен... всегда можно спорить, был бы рад советам как сделать по уму. Я сделал так, чтобы их можно было проще масштабировать и развивать независимо (очереди, обработка событий, хранение в Redis итд)
классно если действие дало опыта, игры в телеграмме достаточно специфичное удовольствие всегда интересно запускать саму игру, и тут как бы не пришлось учиться по новой ради какого-то кликера, в тот же момент если бы можно было пойти по альтернативному пути, то можно было бы обойти телеграм в угоду своей программки с кликером (building-an-android-app-with-rust-and-sdl2/)
я себе так пазл делал на телефон(но на С++) иногда посматриваю на телефоне, но там порт с ПК, на самом деле ничего сложного, есть библиотеки которые перегоняют код на андроид
Пытаться въехать на Хабр с рекламы крипто кликера это смело
На самом деле работает очень плавно и быстро, не ощущается как поделка на коленке
Но в игре совершенно нечего делать, кроме как тапать раз в 10 секунд и смотреть рекламу. Судя по тому, что в ней сейчас 19 человек - разработка ещё скорее в начале пути?
Как я сделал MoonTap — космическую кликер-игру в Telegram