1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/moonty-Pi

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

#C# игровой серверный фреймворк (на основе socket4net)

####Особенности

  • Простота использования
  • Распределённость
  • Поддержка автоматической генерации кодов
  • Настраиваемость

####Установка Pi Чтобы установить Pi, выполните следующую команду в консоли диспетчера пакетов:

PM > Install-Package Pi

####Фреймворк Pi состоит из 3 частей: Node/ECS/Editor #####Node Ваш кластер серверов может иметь несколько процессов для совместной работы, каждый процесс может работать как сервер или клиент или и то, и другое. В pi мы называем сервер или клиента узлом. Таким образом, один процесс может иметь несколько узлов, они управляются с помощью NodesMgr.

Node может взаимодействовать с другими (удалёнными) через набор интерфейсов Push/RequestAsyn. Node и NodesMgr имеют собственную конфигурацию (стандартный xml), например:

  <!--single node-->
  <node name="Чат-сервер"
    type="Чат"
    guid="{12B3E06E-6CFF-4BC8-8DF9-67F03273C299}"
    ip="127.0.0.1"
    port="6001"
    pwd="">
  </node>
  
  <!--multiple server nodes-->
  <servers>
    <node .../>
    ...
  </servers>
  
  <!--multiple client nodes-->
  <clients>
    <node .../>
    ...
  </clients>

Вы также можете настроить узлы Redis, например:

  <redisnodes>
    <node name="Redis-клиент"
    type="Redis"
    guid="{D49A172A-00DD-4E8D-AB21-490F35A560A2}"
    ip="127.0.0.1"
    port="6379"
    pwd="" />
  </redisnodes>

#####ECS ECS — это реализация Entity/Component/System.

Entity указывает, какие данные есть у объекта. Component указывает, что объект может делать. Entity может иметь несколько Component, и его коды могут быть автоматически сгенерированы с помощью Pi.Editor.exe. Component свободен, вы можете написать логику драйвера игры в этих Components.

#####Editor Его основная цель — визуальное определение Entity, но в текущей разработке это всего лишь инструмент командной строки. Editor генерирует Pi.Gen.dll в конце концов, который содержит игровой протокол, константы и сущности.

######Определение протокола Стандартное сообщение google protobuf.

Определение сущности

Файл Json, например:

{
  "Комментарий": "Определение сущности",
  "Имя": "Корабль",
  "Свойства": [
    "Один",
    "Два",
    "Три"
  ],
  "Компоненты": [
    "Компонент модификатора",
  ]
}

####Вопрос Группа QQ: Нажмите, чтобы присоединиться Электронная почта: lizs4ever@163.com

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Распределённая среда для игровых серверов, основанная на [Socket4Net](https://github.com/lizs/socket4net). Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/moonty-Pi.git
git@api.gitlife.ru:oschina-mirror/moonty-Pi.git
oschina-mirror
moonty-Pi
moonty-Pi
master