space2pacman, а есть в планах переделать файлы на *.ts и добавить типы данных в проект? С типизацией наверное будет попроще разрабатывать, ошибки по типам будут подсвечиваться в IDE. А использовать tsc не обязательно, там в Node 23.6.0+ завезли Type Stripping (удаление типов при запуске). В будущем конечно можно было бы и добавить сборку через tsc, но сейчас для разработки это будет не обязательно, но добавит удобства и плюшек от TypeScript
space2pacman, а есть в планах переделать файлы на *.ts и добавить типы данных в проект? С типизацией наверное будет попроще разрабатывать, ошибки по типам будут подсвечиваться в IDE. А использовать tsc не обязательно, там в Node 23.6.0+ завезли Type Stripping (удаление типов при запуске). В будущем конечно можно было бы и добавить сборку через tsc, но сейчас для разработки это будет не обязательно, но добавит удобства и плюшек от TypeScript
MrThirtyOddSix, как минимум NPC сервер желательно вынести в отдельный сервис для того чтобы в системе это был отдельный процесс, под который система выделит отдельные ресурсы. Особенно учитывая тот фактор, что Node.js однопоточная, хотя можно запускать отдельные потоки в рамках процесса. Как максимум этот сервис можно запусти на отдельном сервере от других сервисов/микросервисов. Сборке мусора будет попроще работать, так как вся работа сервера и его сервисов не свалена в одну программу. Так же можно написать сервис под кластер, но думаю в рамках этой задачи "овчинка выделки не стоит"
MrThirtyOddSix, как минимум NPC сервер желательно вынести в отдельный сервис для того чтобы в системе это был отдельный процесс, под который система выделит отдельные ресурсы. Особенно учитывая тот фактор, что Node.js однопоточная, хотя можно запускать отдельные потоки в рамках процесса. Как максимум этот сервис можно запусти на отдельном сервере от других сервисов/микросервисов. Сборке мусора будет попроще работать, так как вся работа сервера и его сервисов не свалена в одну программу. Так же можно написать сервис под кластер, но думаю в рамках этой задачи "овчинка выделки не стоит"
Мне интересно что такой NPC сервер должен делать что действительно нужно отслаивать все от главного игрового сервера. В моем проэкте я использую worker_threads (потоки CPU) где просчитывается движение всех персонажей (npc и игроки), или при генерации артифактов. В будущем будет больше потоков которые просчитывают путь (pathfinding, интеграция происходит сейчас) а также обнаружение целей для ИИ. Но я о чем? Мне интересно что люди думают о таких сервисах.
Что такой NPC сервер будет делать? И почему нагрузка?
Мне интересно что такой NPC сервер должен делать что действительно нужно отслаивать все от главного игрового сервера. В моем проэкте я использую worker_threads (потоки CPU) где просчитывается движение всех персонажей (npc и игроки), или при генерации артифактов. В будущем будет больше потоков которые просчитывают путь (pathfinding, интеграция происходит сейчас) а также обнаружение целей для ИИ. Но я о чем? Мне интересно что люди думают о таких сервисах.