В настоящее время World
предназначен для всего, что касается отдельных экземпляров класса World
, что вряд ли изменится. Level
используется как термин, используемый для отдельного сохранения, который в игре также называется "Мир" (например, "Создать новый мир"), хотя иногда и "Уровень" в коде (например, "уровень подготовки"
Раньше некоторые из наших классов использовали "Dimension" для описания экземпляра мира (обычно идентификатор - dimensionId
) или его типа (Overworld / Nether / End - DimensionType
), хотя я ' Мы внесли некоторые изменения, чтобы полностью избавиться от упоминания «размерности».
Я не уверен, что это правильный способ. Мы должны сохранить название «Измерение» для чего-то, хотя я не совсем уверен, для чего его использовать.
У меня сложилось впечатление, что «Уровень» - это имя, которое использовалось в более ранних версиях до того, как были реализованы множественные измерения. Основное место, где я помню, это мигающий текст «Уровень сохранения ...», который был удален в какой-то момент в бета-версии, и это был остаток какой-то ранней альфа-версии, и он появился, несмотря на то, что ничего не делал в SMP. (IIRC, Classic также использовал расширение .mclevel для сохраненных игр.)
Имя по умолчанию для сохраненной игры на сервере - world
(и это было уже давно), что, кажется, подразумевает, что Мир является контейнером верхнего уровня. Подкаталоги называются DIM
, подразумевая, что Dimension находится на следующем уровне. Это, казалось бы, наиболее "правильные" имена как таковые, и они ближе к именам, к которым люди чаще всего привыкли.
World
→ Dimension
, Level
→ World
, последует за этим, но это немного странно.
С другой стороны, net.minecraft.world.Dimension было бы неудобно.
Я предпочитаю WorldSave + World, при этом WorldSave является коллекцией миров.
"Dimension" afaik просто неверен с точки зрения англоязычной точки зрения, описывая, возможно, какое-то исходное намерение вместо фактического значения / реализации в наши дни. Различные миры не имеют особого размерного значения в математическом смысле и с модами, добавляющими больше «измерений», что даже ближе к простому добавлению большего количества миров.
Уровень обычно используется для описания непрерывного региона / карты, что является эквивалентом мира в Minecraft. Предлагаемое использование ортогонально этому.
Я не стал просто сохранять, так как это довольно неоднозначно, так что WorldSave кажется хорошим вариантом. Выбор Mojang оставляет желать лучшего, его не очень удобно скопировать.
WorldSave
Единственная проблема в том, что он конфликтует с WorldSaveHandler
.
являясь сборником миров
WorldCollection? :П
Или переименуйте WorldSaveHandler
- WorldSerializer
? WorldPersistenceManagerEngineFactory
Другие варианты сбора миров: Вселенная, WorldStore
Мне не нравится Universe
но название слабо подразумевает, что это набор миров, но не его функциональность в качестве обработчика хранилища, имеющего дело с сохранением и загрузкой относительно мирового каталога.
Я думаю, что проще всего было бы иметь сохранения, относящиеся к определенному миру, с пометкой Dimension и использовать GameSave для сохранений с участием нескольких миров.
РЕДАКТИРОВАТЬ: форматирование
Сейчас у нас в проекте еще несколько человек, и у старых, возможно, было время подумать. Каково ваше (текущее) мнение?
У меня нет проблем с использованием Dimension. Хотя это слово имеет несколько значений, оно верно и в этом контексте. Наверное, немного правильнее, чем «Вселенная».
Думаю, также стоит упомянуть, что "Dimension" - это имя, которое сообщество использует для различных типов мира / измерений в Vanilla: Minecraft Wiki - Dimensions
Мне очень странно менять все World
на Dimension
. Это не кажется правильным. Я думаю, что это может быть тот случай, когда то, к чему я привык, весит больше, чем то, что ... _Может_ быть лучшей идеей? И на чем мы это основываем? Тот факт, что Minecraft называет папку сохранений «миром» в своем графическом интерфейсе, и сообщество решило использовать «измерение» как способ различать?
Сообщество выбрало «измерение», потому что измерение 0 относится к «миру / региону», а измерение 1 - к «миру / DIM1 / региону».
Я лично за WorldSave
, World
и переименование WorldSaveHandler
на что-то вроде WorldSerializer
.
Теперь я думаю, что это довольно ясно:
Уровень - сохраненная игра (может включать в себя несколько миров, таких как верхний мир, нижний мир, конец, несколько настраиваемых параметров)
Мир - мир (основная единица, за которой наблюдает клиент). Каждый мир взаимно привязан к одному и только одному типу измерения.
Размерность - размерный тип. Он определяется пакетом данных с некоторыми свойствами, такими как сверхтеплый, высота и т. Д.
По крайней мере, так они выглядят сейчас в пряжи.
Самый полезный комментарий
Я предпочитаю WorldSave + World, при этом WorldSave является коллекцией миров.
"Dimension" afaik просто неверен с точки зрения англоязычной точки зрения, описывая, возможно, какое-то исходное намерение вместо фактического значения / реализации в наши дни. Различные миры не имеют особого размерного значения в математическом смысле и с модами, добавляющими больше «измерений», что даже ближе к простому добавлению большего количества миров.
Уровень обычно используется для описания непрерывного региона / карты, что является эквивалентом мира в Minecraft. Предлагаемое использование ортогонально этому.
Я не стал просто сохранять, так как это довольно неоднозначно, так что WorldSave кажется хорошим вариантом. Выбор Mojang оставляет желать лучшего, его не очень удобно скопировать.