space2pacman, а есть в планах переделать файлы на *.ts и добавить типы данных в проект? С типизацией наверное будет попроще разрабатывать, ошибки по типам будут подсвечиваться в IDE. А использовать tsc не обязательно, там в Node 23.6.0+ завезли Type Stripping (удаление типов при запуске). В будущем конечно можно было бы и добавить сборку через tsc, но сейчас для разработки это будет не обязательно, но добавит удобства и плюшек от TypeScript
По поводу модулей кстати возможно. Потому что уже многие пакеты не тянут легаси в виде requirespace2pacman, понятно, жаль, думал завезёшь хотя бы типы и перейдёшь на module, а то require уже похож на какой-то legacy
А вообще в планах делать как подобие эмулятора l2j (весь GS в одном проекте) или разрабатывать какую-то свою архитектуру в виде микросервисов?
В чем преимущество npc сервера? Я на для критики, а узнать как такой сервер (или же микросервис) использовать.По архитектуре - микросервисы.
Как минимум отдельно npc сервер
* Перезагружать NPC без выключение сервераВ чем преимущество npc сервера? Я на для критики, а узнать как такой сервер (или же микросервис) использовать.
Что такой NPC сервер будет делать? И почему нагрузка?* Перезагружать NPC без выключение сервера
* Управлять нагрузкой (NPC может быть на другом сервере в той же сети)
В рамках текущего проекта это пока смотрится микросервис ради микросервисов)
Мне интересно что такой NPC сервер должен делать что действительно нужно отслаивать все от главного игрового сервера. В моем проэкте я использую worker_threads (потоки CPU) где просчитывается движение всех персонажей (npc и игроки), или при генерации артифактов. В будущем будет больше потоков которые просчитывают путь (pathfinding, интеграция происходит сейчас) а также обнаружение целей для ИИ. Но я о чем? Мне интересно что люди думают о таких сервисах.MrThirtyOddSix, как минимум NPC сервер желательно вынести в отдельный сервис для того чтобы в системе это был отдельный процесс, под который система выделит отдельные ресурсы. Особенно учитывая тот фактор, что Node.js однопоточная, хотя можно запускать отдельные потоки в рамках процесса. Как максимум этот сервис можно запусти на отдельном сервере от других сервисов/микросервисов. Сборке мусора будет попроще работать, так как вся работа сервера и его сервисов не свалена в одну программу. Так же можно написать сервис под кластер, но думаю в рамках этой задачи "овчинка выделки не стоит"
Что такой NPC сервер будет делать? И почему нагрузка?
Мне интересно что такой NPC сервер должен делать что действительно нужно отслаивать все от главного игрового сервера. В моем проэкте я использую worker_threads (потоки CPU) где просчитывается движение всех персонажей (npc и игроки), или при генерации артифактов. В будущем будет больше потоков которые просчитывают путь (pathfinding, интеграция происходит сейчас) а также обнаружение целей для ИИ. Но я о чем? Мне интересно что люди думают о таких сервисах.
Наконец-то переделал и доделал правильную систему передвижения.
Будут) и коммиты и гайды как все развернутьА коммиты в Git будут? А то смотрю последние коммиты были в январе
Хотелось бы видеть, что там произошло в коде с этими обновлениями
если будешь гайды по атаке писать скидывай в гит почитать на досугеБудут) и коммиты и гайды как все развернуть
Как не хватает в клиенте ц1 такого функционала рисования линий)) столько идея для модов появляется)
А какая тут задача? поиск пути?
Проверяю что скорость мобов и скорость на сервере одинаковая. Если моб не дойдет до точки линия не пропадет оставлю так на пару часов и посмотрю чего будет.... Ну и вообще визуализировать чего происходит:_)А какая тут задача? поиск пути?
Она постоянная. Например Elder Keltir (Проверяю что скорость мобов и скорость на сервере одинаковая. Если моб не дойдет до точки линия не пропадет оставлю так на пару часов и посмотрю чего будет.... Ну и вообще визуализировать чего происходит:_)
Что такое FSM ?Наконец-то переделал и доделал правильную систему передвижения.
То, что было до этого - не масштабировалось. Event loop в node.js сходил с ума от количества таймеров для каждого действия. Когда разница между тиками 1000мс evenloop'у норм но когда меньше 100мс уже появляются расхождения.
Теперь не только передвижение стало точнее (монетка падает чаще а значит перемещение на сервере точнее) но и FSM работает как надо. Раньше FSM был привязан к таймеру. Теперь он работает паралельно с таймером что позволило его масштабировать и увеличить производительность.
Теперь когда задача с передвижением и FSM решена можно идти дальше. Spawn зоны, формулы атаки, заселить Талкинг NPC продавцами и т.д.
Finite State Machine.Что такое FSM ?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?