15 Октября 2024
18

Фреймворк для онлайн игр

Всем привет! Запушил на гитхаб свой пет-проект. Это фреймворк для онлайн игр и приложений написанный на Node.js и Typescript, клиентская часть на Unity и C#.

Для чего это всё?

Можно делать многопользовательские онлайн игры и билдить под Android, iOS и WebGL, бесплатно, без регистрации и смс. Сейчас расскажу подробнее.

Давным-давно был такой проект на гитхабе Pomelo. По меркам интернета – реально древний, ему больше 10 лет. Он и сейчас там есть, но уже заархивирован и не поддерживается, но форки вроде пилятся. Кто первый раз слышит, это фреймворк для создания игровых серверов на JavaScript и Node.js. Проект довольно большой, куча модулей, клиенты под разные платформы, хорошая дока. Наткнулся я на него несколько лет назад и начал ковырять, запускать, что-то пробовать. В итоге, многие вещи в нём мне понравились, но показалось всё как-то замудрёно что ли. Наверно потому что китайцы писали, а может я в ноду не сильно мог 😅 В общем, оттуда я потягал какие-то скрипты, интересные решения, потом переписал, упростил и, получился у меня такой лайтовый сервер из нескольких файлов, на котором я тестил всякие свои проекты, изучал Node.js, JavaScript и TypeScript позднее.

Когда что-то стало получаться, переписал всю серверную часть на TypeScript и всё это дело стало обретать какой-то полезный вид. И вот, в результате n-ой итерации, архитектура устоялась, протестировалась и получился Shardy.

Shardy – это фреймворк для онлайн игр и приложений на Node.js. Он даёт базовую функциональность для построения микросервисных решений: мобильных, социальных, веб, многопользовательских игр, приложений реального времени, чатов, middleware сервисов и т.п. Есть клиент на TS встроенный в фреймворк, а также пакет для Unity, который поддерживает сборки под iOS, Android и WebGL.

Основные фичи:

- микросервисная парадигма
- простой API: RPC, команды, подписки и т.п.
- транспорт данных через сокеты и вебсокеты
- легкость и быстрота: Node.js и TypeScript
- поддержка пользовательской сериализации
- поддержка пользовательской валидации рукопожатий (handshake)
- продвинутый логгер: теги, фильтры, области
- справочные материалы: документация, сниппеты, примеры
- почти нулевая конфигурация

Есть демка с примерами работы API и простенькая онлайн игра "Крестики-Нолики": как серверная часть, так и клиентская. Всё можно посмотреть, поковырять, запустить у себя и попробовать поиграть. Весь код старался комментировать, иногда даже излишне. Также есть документация с описанием всех компонентов и методов. Это всё в процессе наполнения и улучшения.

Ниже, пример WebGL билда с игрой "Крестики-Нолики".

В примере реализовано:

  • старт/остановка поиска свободных игр

  • простой матчмейкинг

  • отправка команды хода игрока

  • отправка команды выхода из игры

  • обнаружение ничьей и конца раунда

  • сохранение текущего счёта

Основная цель Shardy – предоставить простое бесплатное решение для создания многопользовательских онлайн игр. Вот так вот громко 😅 На это будет обращено основное внимание при дальнейшей разработке новых функций, сервисов и туторов (было бы время...).

Да, пока это голый фреймворк без полезной нагрузки в виде готовых каких-то решений, модулей, примеров игр и т.п. И да, входной порог есть, нужно уметь в Node.js и Typescript, чтобы делать серверную часть. Поэтому буду добавлять полезности по мере возможностей.

Приглашаю всех заинтересованных инди и не только, посмотреть, покрутить, примерить, потестить на своих каких-то задачах, играх, проектах, прототипах. Если будут вопросы, отвечу тут в комментах или на почту mail@mopsicus.ru.

Shardy

Shardy for Unity

Shardy Tic-Tac-Toe server

Docs

Показать полностью 1
1

4/4 акций закрыли в

Подписывайтесь, обсуждаем идеи вместе !😇

Утро началось с небольшого лося по $IRAO, но быстро перевернувшись в шорт получилось отбить и выйти в +%

Дальше индекс начал показывать рост, и мы решили взять $RENI, правда акция долго топталась на месте, в связи с чем полностью закрыли позицию в +0.18%

Параллельно мы начали набирать $NMTP

Предположили, что будет пробой и удачно прокатились вверх (Показал на скрине), забрали +1.1%

Ну и конечно же мы брали в шорт $TRMK

Получили +0.88%, хотя можно было все +2% забрать )

Всем хорошего вечера ❤️

Показать полностью 2
1235

Ответ на пост «Крутая инициатива»2

Пишу от имени анонима дабы не обидеть кого, вдруг кто узнает себя. Находимся на территории промзоны одного комбината. Куда производств и офисов. Была столовая но она закрылась. Люди разбирались кто как мог. Кто то с собой носил, кто то ходил за пирожками у магазин, кто то заказывал. Я тоже намучившись решил раз место позволяет сделать себе полноценную кухню. Холодильник стол табуретки плитку и т.д.

Пока все делал люди заходили. Видели. Говорят наконец можно нормально сесть покушать а не на коленке. Да и готовить можно. Продукты возьмём и будем готовить.

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

Через 3 дня после открытия мне пришлось уехать на 2 недели. По приезду холодильник пустой. Реально пустой. Все друг на друга смотрят. Чашка из под сахара со следами засохшего чая. Яблоко которое я надкусил и забыл в холодильнике уже покрылось плесенью и потекло.

Я отмыл все. Сходил за продуктами, макароны, гречка, кофе, чай, сахар. Через 30 минут когда меня не было на месте уже пришли готовят. Радостные такие сидят смеются. Вот щас макароны дойдут. И курица уже дожарится. И улыбаются сидят. Вилки в руки взяли, облизываются.

Я говорю - ребят, кто из вас завтра купит то что сейчас взяли из холодильника? Все молчат, друг на друга смотрят. - Если никто не покупает, встали ушли отсюда.

Знаете что я скажу. Пока законом не карается, по некоторые поступки и беззаконными назвать нельзя. А второе, что есть категория людей как эти которые сидят теперь втроём пальцем показывают на других ребят с которыми сложились взаимовыгодные отношения которые приходят готовят убирают покупают. И говорят, вот ебать, заманил чашкой чая и кусочком хлеба. На задних лапках вокруг меня прыгают.

1

Колыванское озеро - снимаю виды и купаюсь. Село Саввушка - баскетбол и две совы. Алтайский край, лето 2024

Перекличка двух сов на одной ветке ночью ВИДЕО:

Перекличка двух сов на одной ветке ночью ВИДЕО

Показать полностью 1
17

Роспись в стиле аниме, Genshin Impact, Сегун Райдер

Всем привет 🙋‍♀️🖖Представляю Вашему вниманию Кастом чехла на модель телефона 📲, Huawei 12se, чехол прозрачный, с темными бортами.
На чехле изображена героиня популярной игры : Genshin Impact,
Сегун Райдер🦄🧚‍♀️

👸Сегун Райдэн🧚‍♀️🗡️⚡️- это 💫💫💫пятизвездочный персонаж поддержки, который может увеличивать мощь взрыва стихии отряда💥.Она владеет навыками Электро элемента и использует древковое оружие. После взрыва стихии Сегун Райдэн некоторое время атакует мечом, а также восстанавливает энергию своего отряда.⚡️⚡️⚡️💜

Цитаты героини:
«Нет ничего ближе к небу, чем вечность».

«Движение вперёд не только приносит потери, но и дарует новые встречи».

Если заинтересовала работа🧐, делюсь своим тг каналом с другими работами 🌈:
@KerikehkaCustom
https://t.me/KerikehkaCustom

💖Буду Рада Вам видеть на своем канале 🥳🎉❣️
Спасибо за внимание :) успеха Вам во все🎊💝

Показать полностью 3
Мои подписки
Подписывайтесь на интересные вам теги, сообщества, авторов, волны постов — и читайте свои любимые темы в этой ленте.
Чтобы добавить подписку, нужно авторизоваться.

Отличная работа, все прочитано! Выберите