Pull to refresh

Comments 8

Ох, новые движки всегда хорошая новость для сообщества игроков

Стало интересно, какой у вас план

Насколько мне известно, основными недостатками текущих решений является не столько затраты ОЗУ, сколько сложность масштабирования. Сервера не умеют в многоядерность, не распараллеливают задачи и непременно проседают по тикам, сколько бы вы памяти не вложили в инстанс.

Поддержка модов, - второй момент. Мало того, что почти все кастомные ядра их не поддерживают, те, что способны еще дальше проседают по производительности и не предлагают решений.

Ну и конечно плагины. Сервера не просто так разбрасываются памятью, плагины, единственный способ как раз оптимизировать потребление ресурсов, а без механизмов типа packet interception становится сложно бороться с хакерами.

Что вы запланировали для своего ядра?

Привет)

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

На счёт плагинов - такая часть тоже должна быть, но как скоро не знаю, возможно будут на WASM, возможно на Lua/JS... А так всё-таки планов на развитие ещё много и надо бы реализовать

Если говорить об оптмизации в мультипотоке для тпс - в Go гораздо меньше нагрузки может быть чем в той же яве, но так-же в любом случае мне придётся делать мультипоточную работу миров так-как мне кажеться не получиться идеально обрабатывать всего и вся в одном потоке, а вот как уже реализовано будет... надеюсь хорошо

При всем уважении, это не основа, это HelloWorld на 25565'ом порту. Об основе для сервера можно будет говорить когда будет реализована генерация хотя-бы плоского мира, физика твердых/сыпучих/жидких тел, работа с чанками и т.д. Пока ваша идея выглядит слишком амбициозно. Но я готов поддержать и помочь, если увижу основу, где можно сломать и поставить блок, с адекватной архитектурой кода.

Согласен, что это пока HelloWorld и для полноценной оновы требуется работа с миром и другим функционалом, конечно это не получится сделать в самой первой часте выложить и поэтому надо ещё много сделать частей о плагинах, входе в мир, физике и тд.

Будет круто, если будет возможность писать плагины для ядра. Интересно как это реализуют

Ну наверное сервер без возможности написания плагинов это как телефон без приложений)

Поэтому когда-то завезу такой функционал в ядро, возможно он будет на WASM, а если на нём не получится, то выбор падёт на вариант, который точно заработает - Lua/JS

Как по мне хороший вариант будет тот - который будет максимально удобен для быстрой и чистой разработки.

Можно сделать чтобы ядро сервера подгружало плагины (как обычное ядро на Java), написанные на том же Go и скомпиленные как библиотека.

Хоть этот вариант возможно и усложнит разработку плагинов, однако не будет особого оверхеда для поддержки тех же Lua/JS

Мне кажеться лучше бы поддержу WASM так-как он очень удобен, особенно в таком случае имеется большой выбор языков на которых можно писать и быстро компилировать и подгружать в ядре тот самый плагин, вот например написать пл на TS/Rust/Go/.. с использованием библиотеки от ядра, которые смогут использовать АПИ для связи с ядром и допустим создавать конфиги или слушать событии и тд. Если же компилить тот же Go в нативные файлы библиотек, то тут будет проблема с поддержкой систем, поэтому выбор и падает на WASM/JS/Lua.

Sign up to leave a comment.

Articles