- Баллы
- 153
Добрый день!
У меня возникла такая проблема:
требуется хранить дополнительные данные для некоторых мобов. Например, измененную силу атаки или информацию о выпадающем луте. Каким образом это лучше сделать?
Вариант с Metadatable очень хорош, но, к сожалению, не подходит, т.к. метадата хранит данные только пока сервер работает. После перезапуска сервера метадата пуста.
Если все данные писать в базу данных (или любое другое хранилище) - возможно появление "мертвых хвостов". Т.е. моб уже давно не существует, а информация о нем занимает место в базе данных.
Наилучшим образом подходит формат NBT, т.к. он сохраняет все данные прям в карту. Но для того, чтоб позволить сохранить хотя бы один нестандартный тег - нужно править исходники CraftBukkit. (Кстати, ItemStack позволяют сохранять кастомный тег - это их огромное преимущество. Там можно хранить цену предмета, кастомные способности, и т.д.)
Есть идеи?
У меня возникла такая проблема:
требуется хранить дополнительные данные для некоторых мобов. Например, измененную силу атаки или информацию о выпадающем луте. Каким образом это лучше сделать?
Вариант с Metadatable очень хорош, но, к сожалению, не подходит, т.к. метадата хранит данные только пока сервер работает. После перезапуска сервера метадата пуста.
Если все данные писать в базу данных (или любое другое хранилище) - возможно появление "мертвых хвостов". Т.е. моб уже давно не существует, а информация о нем занимает место в базе данных.
Наилучшим образом подходит формат NBT, т.к. он сохраняет все данные прям в карту. Но для того, чтоб позволить сохранить хотя бы один нестандартный тег - нужно править исходники CraftBukkit. (Кстати, ItemStack позволяют сохранять кастомный тег - это их огромное преимущество. Там можно хранить цену предмета, кастомные способности, и т.д.)
Есть идеи?
