Yarn: «Мир» против «Измерения» против «Уровня» и где их использовать?

Созданный на 21 сент. 2016  ·  13Комментарии  ·  Источник: FabricMC/yarn

В настоящее время World предназначен для всего, что касается отдельных экземпляров класса World , что вряд ли изменится. Level используется как термин, используемый для отдельного сохранения, который в игре также называется "Мир" (например, "Создать новый мир"), хотя иногда и "Уровень" в коде (например, "уровень подготовки"... ").

Раньше некоторые из наших классов использовали "Dimension" для описания экземпляра мира (обычно идентификатор - dimensionId ) или его типа (Overworld / Nether / End - DimensionType ), хотя я ' Мы внесли некоторые изменения, чтобы полностью избавиться от упоминания «размерности».

Я не уверен, что это правильный способ. Мы должны сохранить название «Измерение» для чего-то, хотя я не совсем уверен, для чего его использовать.

discussion

Самый полезный комментарий

Я предпочитаю WorldSave + World, при этом WorldSave является коллекцией миров.

"Dimension" afaik просто неверен с точки зрения англоязычной точки зрения, описывая, возможно, какое-то исходное намерение вместо фактического значения / реализации в наши дни. Различные миры не имеют особого размерного значения в математическом смысле и с модами, добавляющими больше «измерений», что даже ближе к простому добавлению большего количества миров.

Уровень обычно используется для описания непрерывного региона / карты, что является эквивалентом мира в Minecraft. Предлагаемое использование ортогонально этому.

Я не стал просто сохранять, так как это довольно неоднозначно, так что WorldSave кажется хорошим вариантом. Выбор Mojang оставляет желать лучшего, его не очень удобно скопировать.

Все 13 Комментарий

У меня сложилось впечатление, что «Уровень» - это имя, которое использовалось в более ранних версиях до того, как были реализованы множественные измерения. Основное место, где я помню, это мигающий текст «Уровень сохранения ...», который был удален в какой-то момент в бета-версии, и это был остаток какой-то ранней альфа-версии, и он появился, несмотря на то, что ничего не делал в SMP. (IIRC, Classic также использовал расширение .mclevel для сохраненных игр.)

Имя по умолчанию для сохраненной игры на сервере - world (и это было уже давно), что, кажется, подразумевает, что Мир является контейнером верхнего уровня. Подкаталоги называются DIM , подразумевая, что Dimension находится на следующем уровне. Это, казалось бы, наиболее "правильные" имена как таковые, и они ближе к именам, к которым люди чаще всего привыкли.

WorldDimension , LevelWorld , последует за этим, но это немного странно.

С другой стороны, 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 .

Теперь я думаю, что это довольно ясно:
Уровень - сохраненная игра (может включать в себя несколько миров, таких как верхний мир, нижний мир, конец, несколько настраиваемых параметров)
Мир - мир (основная единица, за которой наблюдает клиент). Каждый мир взаимно привязан к одному и только одному типу измерения.
Размерность - размерный тип. Он определяется пакетом данных с некоторыми свойствами, такими как сверхтеплый, высота и т. Д.
По крайней мере, так они выглядят сейчас в пряжи.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги