Jump to content

Search the Community

Showing results for tags 'java'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Main information
    • News
    • Rules
  • Aion
    • Услуги
    • Articles
    • Guide
    • AionCMS
    • Client
    • Server Builds
    • Soft
    • Sandbox
    • Help
  • Linage
    • Server Builds
  • ArcheAge
    • Articles
  • DevOps practice
    • Articles
    • Ready practices
    • Useful files
  • Others
    • Questions

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

Found 3 results

  1. Тема для размышлений. То есть тут публикуется какая-то идея, частично и полностью реализована в моих работах. Ни чего из ниже описано не будет выпущено в открытый доступ. Геобирдер на текущий момент: Работает в автоматическом режиме. Парсит только нужные меши Выборку мешей производит на основе cryEngine движка и твердых физических тел. Парсит двери и добавляет в гео Лавы, костры и другое так же добавляются в гео файл. Одна локация, один файл. Геобилдер не создает .geo файлы. Это выдуманное гавно от начальных криворуких разработчиков. Данный геобилдер создает файлы .j3o поддерживаемые jmonkey движком. В ГС полностью меняется загрузка файлов, на основе официальной поддержки .j3o файлов. Поддерживает просмотр файлов в 3d редакторе. Геобирдер доступен только для приватной разработки.
  2. Тема для размышлений. То есть тут публикуется какая-то идея, частично и полностью реализована в моих работах. Ни чего из ниже описано не будет выпущено в открытый доступ. Спешу поделится замечательной новостью. Нам удалось написать ИИ, который парсит клиент, интернет и сборки серверов в поисках квестов на основе версии. В итоге мы получаем замечательный json 😃 Как видно из файла, мы получаем ID квеста, шаг, и что на этом шаге нужно сделать. В текущий момент переписываем весь квест движок, и избавляемся от хард-кодинга квестов в классах. Дата релиза и тестов скоро. (релиза не будет, частная разработка) Updated: Квестовый движок переехал в отдельный микросервис, по технологии микросерсвисов java.
  3. Тема для размышлений. То есть тут публикуется какая-то идея, частично и полностью реализована в моих работах. Ни чего из ниже описано не будет выпущено в открытый доступ. Новое сетевое ядро основано на фреймворке Netty последней версии. Пример на логин сервере. Под капотом netty конечно же nio, но всю обработку он берет на себя. Код становится лаконичнее и приятнее. Обо всех преимуществах netty вы можете почитать на просторах гугла), но из особенностей можно выделить полный контроль на сетью, и дополнительные плюшки при запуске сервера на linux машинках. Пример код: public class NettyServer { private static NettyServer INSTANCE; private NettyServer() throws Exception { runServer(MainConfig.LOGIN_BIND_ADDRESS, MainConfig.LOGIN_PORT); } public static NettyServer getInstance() throws Exception { if (INSTANCE == null) { INSTANCE = new NettyServer(); } return INSTANCE; } private static final EventLoopGroup bossGroup = new NioEventLoopGroup(); private static final EventLoopGroup workerGroup = new NioEventLoopGroup(); private static ChannelFuture runServer(String ip, int port) throws Exception { ServerBootstrap b = new ServerBootstrap(); b.group(bossGroup, workerGroup).channel(NioServerSocketChannel.class) .childHandler(new ChannelInitializer<SocketChannel>() { @Override protected void initChannel(SocketChannel ch) { ch.pipeline().addLast(new ClientChannelHandler()); } }); ChannelFuture f = b.bind(ip, port).sync(); return f; } } Все обработки происходят в классе ClientChannelHandler, и всё. То есть читаете пакет и по op коду уже отправляете в нужное русло. Никаких вспомогательных классов, такие как Dispatcher и т.д. не нужно. То есть вот это всё уже просто удаляется, не считая того, что в самом Логин сервере. Тесты производительности будут позже, как только откроется сервер на основе этого ядра. Но пока можно ощутить стабильность пинга при большой сетевой активности. Пример когда вокруг много мобов, и тебя бьют порядка 10 мобов. В этот момент происходит огромный спам пактов SM_MOVE, SM_ATACK, SM_SPELL и так далее. Пример когда вокруг нет никого, и сетевые пакеты почти не активны.
×
×
  • Create New...