Как устроен мир майнкрафта
Насколько часто встречаются руды, как устроен генератор мира и откуда взялись «Далёкие земли».
В рубрике «За кадром» редакция и пользователи DTF публикуют и переводят материалы про «закулисье» видеоигр — контент, скрытый от посторонних глаз. Сюда попадают различные геймдизайнерские и художественные приёмы, которые наглядно демонстрируют то, как разрабатываются видеоигры, — а также разного рода баги и пасхалки.
Но выпуск про Minecraft получился немного иным. В отличие от других игр в рубрике, миры в Minecraft генерируются случайным образом. В них не отыскать ни пасхалок, ни «закулисного» контента — лишь баги и интересные закономерности при создании уровней.
Поэтому данный материал вряд ли будет полезен с точки зрения геймдева. Но зато здесь вы сможете прочесть множество любопытных фактов про техническую сторону Minecraft — известных и не очень.
Начнём с главного — с руд, которые нужно добывать. Они скрыты в толще каменных пород, и зачастую игрок вынужден копать вслепую, чтобы наткнуться на нужный металл.
Впрочем, если отключить текстуры камней при помощи читов, станет видно, насколько часто руды встречаются на самом деле. Те, кто хоть раз пробовал использовать моды в духе X-Ray, сразу узнают вид.
В Minecraft чем ниже копать, тем более редкие металлы начнут попадаться. Верхние пласты зачастую занимает уголь с железом, а пониже начинают появляться редстоун, золото, лазурит и настоящая ценность — алмазы с изумрудами. Последние, кстати, спаунятся лишь в горных биомах.
Вот так выглядит примерное распределение руд по всей высоте карты.
График распределения руд по высоте для мира, созданного в версии 1.12.2. По вертикали — частота появления, по горизонтали — уровень высотыМиры в Minecraft поделены на чанки — столбы площадью 16х16, — и, согласно статистике, как минимум три блока алмазной руды приходится на один чанк. Так что если вы за несколько часов не нашли ни один из них, скорее всего, вы просто неправильно копаете.
Популярный совет о том, что если вы нашли лавовое озеро, то где-то рядом должны быть алмазы — это заблуждение. Генерация озёр и алмазной руды никак не взаимосвязаны — просто чаще всего их можно найти на одной высоте.
При помощи того же X-Ray можно увидеть, как выглядит сеть подземных пещер.
Следующие трюки можно провернуть и без читов — достаточно просто зайти в настройки генерации уровня.
Если в опциях создания плоского мира включить заброшенные шахты, но убрать слой камня, уровень будет выглядеть как-то так.
Начинаешь понимать, насколько далеко шахты могут тянуться.Таким же образом можно получить подземные Крепости в чистом виде.
Вот что будет, если создать плоский мир из песка и сломать нижний блок. Когда это происходит, все сторонние блоки считывают, что песок рядом с ними сломался — в итоге срабатывает триггер, и все они устремляются вниз.
Долго это пронаблюдать не получится, так как игра крашится.
Дело в том, что падающие блоки (песок, гравий, активированный динамит) с технической точки зрения — это не блоки, а сущности, то есть мобы. И обрабатывать такое большое количество мобов одновременно становится очень сложноВ основе генерации мира Minecraft лежат шумы Перлина — алгоритм для генерации объёмных ландшафтов.
Генератором создаётся карта шумов — или, грубо говоря, карта высот. Её можно сравнить с топографической картой: там, где светлее — местность выше, там, где темнее — ниже.
Но получившаяся карта далека от идеала — большие значения могут соседствовать рядом с маленькими, из-за чего местность получается неестественно обрывистой. Что-то подобное можно было наблюдать в самой первой версии Minecraft, которая тогда ещё называлась «Cave Game».
Чтобы «сгладить» ландшафт, применяется интерполяция — находятся промежуточные значения. Генерируются горы и низины.
Затем добавляются элементы вроде деревьев, рек, озёр, деревень NPC и так далее. Получается привычный нам мир.
В отличие от игрового уровня, облака в Minecraft не генерируются случайно — наоборот, у них всегда одна и та же текстура, которую можно найти в файлах игры.
А если во время ливня подняться значительно выше облаков (где-то на высоту 460-470 блоков), дождь сменится снегопадом. Это касается не всех биомов — в пустыне осадков вообще никаких нет.
Из-за дальности прорисовки, если подняться на большую высоту, солнце можно увидеть даже ночью, а луну — днём.
Если применить зелье невидимости на пауках, в воздухе останутся видны их глаза. Разработчики смогли это реализовать в том числе благодаря тому, что глаза с технической точки зрения — это отдельная текстура.
С Эндерменами та же история.
Сейчас многие модификации и программы позволяют посмотреть на то, как тот или иной сгенерированный мир выглядит сверху. Ниже — несколько примеров со снимками.
Ярко-зелёный цвет — болота, рыжий — месы, ярко-фиолетовый — грибные островаВот тут показана карта мира со всеми адскими крепостями, на которые можно наткнуться, если активировать портал в Нижний мир. Видно, что они генерируются полосами с юга на север.
То есть, если вы нашли адскую крепость в Нижнем мире, достаточно проследовать на юг или север, чтобы найти ещё однуА на снимке ниже по краям отчётливо видно, что с генератором происходит что-то не то.
Это называется «Далёкие земли» (Far Lands) — искажения в генераторе мира после того, как игрок пересекает координату в 12 550 824 блока от центра. Эффект уже пофиксили в Java Edition на ПК, но на мобильных платформах и консолях он всё ещё существует.
Причина генерации «Далёких земель» следующая. Как уже было сказано ранее, генератор миров использует трёхмерный шум Перлина, чтобы создать мир.
Карта шума покрывает значения в интервале [−2^31, 2^31) — поэтому, грубо говоря, последнее значение, которое учитывается картой, это число, меньшее 2^31 или 2 147 483 648.
При этом на каждый блок отводится 171,103 значений шума. И если разделить 2^31 на это число, получается 12 550 824 — место прохождения границы Далёких земель. На этих координатах с генератором начинают происходить ошибки.
Вот так они выглядят в Эндере.
А вот так — в Java Edition до того, как их пофиксили в версии Beta 1.8. На каждой платформе они смотрятся по-разному.
Кстати, недавно один из стримеров дошёл до «Далёких земель» вручную. На это у него ушло около девяти месяцев. Здесь можно посмотреть на его реакцию, когда он впервые увидел слоистый ландшафт на границе дальности прорисовкиВ Java Edition на ПК для того, чтобы «Далёкие земли» не появлялись в принципе, их сначала «отодвинули» при помощи фикса на расстояние свыше 30 миллионов блоков, а затем ограничили генерацию мира дальше этих значений.
Теперь, как только игрок попытается добраться до туда, на координате 29 999 983 он увидит мерцающую стену — границу мира.
За ней можно увидеть пару чанков, но все они ложные — сквозь них можно провалитьсяНу и напоследок немного типичного контента для рубрики. У снежного голема под тыквенным шлемом скрыто лицо снеговика.
Раньше в игре не было легального способа это увидеть, но недавно в обновлении добавили возможность снять тыкву с помощью ножницЗря они миру четкие границы сделали. Изюминку такую убрали (
Я помню на каком-то серве как раз в дальних землях поселился, ваще каефно было
А администрация не крыла тебя матами за размеры карты или лаги? :D
Если он не дошел, а телепортировался в них, то размер карты почти не увеличится
Туда ведь, вроде, дойти нереально? Слышал парень с ютуба уже несколько лет именно «идет» туда.
В то время нет, ну сказали мол, дело твоё но у тебя будут лаги, а я сказал "Да мне ваще пофиг, я сижу играю и мне ваще пофиг", а на то время у меня был модем :D
У разрабов импотенция. Изменения ради изменений.
Если применить зелье невидимости на пауках, в воздухе останутся видны их глаза. Разработчики смогли это реализовать в том числе благодаря тому, что глаза с технической точки зрения — это отдельная текстура.
Любил, кстати, когда был админом на одном серваке, наказывать гриферов закидывая их в залоченый дом "с приведениями": Все двери замурованы и стоит админский приват территории, дом в таких ебенях что никто не найдёт (если не спалит кардинаты). Дом был из жутких серых блоков, в полутемноте, врубал дождь с молниями, переставлял сетхомы гриферов и точки респауна в дом, кидал им мут, и спавнил ядовитых пауков с перефексом на бесконечное зелье невидимости и кучу хп)
Это надо было видеть)
вообще плагин пунишментал был что-то с чем то - особенно любимая команда "пороная" когда сервак тригерит игроку всякие криповые звуки игры в рандомные моменты. ред.
Месье знает толк.
Да, кажется, что зря убрали далекие земли - это же баг покруче иных фич
То-есть другими словами ты срезаешь лицо ножницами бедному голему? Дизлайк за это тебе!
Комментарий удален по просьбе пользователя
Снежный голем без тыквы не голем а снеговик! Ведь голем это.. невоодушевлённое существо.. из. из какого-то материала. кхм ._.
скорее разрезаешь тыкву, что бы снять её
где темнее — местность выше, там, где светлее — ниже
Насколько знаю, карта высот работает наоборот.
Точно, спасибо! Исправил.
Далёкие земли эпично выглядят
Надеюсь в следующем Майкрафте они улучшат систему генерации ландшафта и количество биомов. А также логику их расположения.
Следующего Майнкрафта не будет. Пусть здесь переделают генерацию.
Есть очень много хороших модов на любой вкус, которые неплохо перерабатывают систему биомов. В стиле ванильных в том числе.
Я знаю что моды хороши, но мне кажется всё таки необходимо сделать качественный технологический скачок, который недоступен модам. Не столь в смысле самого графона, сколько в именно технологиях генерации, АИ и тд.
Ну такое. Не думаю что они сделают совсем другую генерацию мира. Сейчас что-то среднее между генерацией реалистичного ландшафта и фентезийного. То есть фентези на минималках, без кучи летающих островов и всякого такого странного.
Ну и да, при желании это можно модами прикрутить и настроить вообще как угодно.
А если ты про разнообразие ландшафт - я тут за. Просто на добавлять всяких вариантов которые и так существуют в реальном мире. Шестигранные скалы, гейзеры, вулканы, всякие вариации гор - с снежными верхушками, с пустыней наверху, разнообразить реки с перепадами высот, с водопадами, уходом под землю, разные пещеры и т.д. Тут я полностью за. ред.
Про это и речь. Было бы хорошо увидеть каньоны например, правдоподобные пустыни, леса и тд. К томе же, очень не помешало бы сделать получше физику и АИ, возможность создавать разнообразный транспорт без костылей.
В целом концепция Майкрафта имеет ещё огромный задел на развитие.
Например можно создать просто идеальную фэнтезийную песочницу которая может сама генерировать истории игроку на уровне скажем дварф фортресс, если запилить экстенсивный АИ мобам и дать им развиваться (ну разумеется с условностями и ограничениями) и интерактировать между собой.
Появилось ли что-то вменяемо рабочее на тему вертикального размера мира?
Да, есть мод cubic chunks
Не крашается, производительность не дропает? С другими модами ка работает?
По сути, если я правильно понимаю, он использует те самые Дальние Земли для хранения своих чанков (ну, по крайней мере так работает мод Valkyrien Skies, в настоящее положение которого я случайно попал, когда использовал мод Dimension Doors, который на выходе из своего подземелья телепортирует игрока на ту точку, где находится физическая дверь, после чего я увидел, что находился вне границ обычного, для 1.12.2, мира - и, скорее всего, по этой же причине я находил свой летучий корабль на наслоенном сверху чанке из Cubic Chunks).
Нужно представить обычный мир майнкрафта - как поле для шахмат. И вот Cubic Chunks это как если бы бралось второе поле для шахмат, которое изначально расположено по диагонали к обычному, и ставилось поверх первого поля для шахмат. И так бесконечно.
Так что да, на производительность он повлияет. Но не так, чтобы совсем уж сильно. Просто нужно понимать, что чанки это не именно 16x16x128, а 16x16x16 (т.е. да, чанк - это ровный куб по 16 подкубиков в каждую сторону; так он подразделяется при рендеринге, для оптимизации, но для хранения используется высота в 128; кстати, до беты 1.3, если я правильно помню, они хранились тоже по высоте в 16, затем хранились по высоте в 128, которая была максимальной, а после версии 1.2.1 начали храниться в два слоя по 128, потому что максимальная высота стала 256). Поэтому, технически, дистанция прорисовки чанков должна будет работать во все три стороны, при использовании Cubic Chunks, где при значении в 16 должен быть виден один стандартный чанк.
Ну или может быть, что я неправильно всё понял и на самом деле используется многомирная система. Тоже рабочий вариант, но тогда нужно как-то шаманить с порталами, для показа мира ниже или выше игрового. Но ничего невозможного, я думаю.
ну ты и напридумывал, там нет никакой системы миров, ни дальних земель. на оф гитхабе все описано: Normally Minecraft uses Chunk class, which represents a 16x256x16 blocks pieces of terrain, and it has only X and Z coordinates. The idea of Cubic Chunks is to change chunk size to 16x16x16 and add Y coordinate to it.
И с прорисовкой чанков все хорошо
Как устроен мир майнкрафта? | Показываю наглядно.
Мир майнкрафта,или же как я его называю "планета майнкрафта" устроен несколько сложнее чем вы могли подумать.В своих предыдущих статьях я уже частично рассказывал о том,как он может быть устроен.И в этой статьи я намерен окончательно разложить всё по полочкам со строением мира майнкрафта.
Ну а с вами Doctor K,начнём!
Для всего этого нам понадобится вот эта иллюстрация моего авторства.
На ней моя версия мира майнкрафта.Хотя такая модель является одной из двух лидирующих версий.На ней выдвинуто предположение,что все три измерения на самом деле лишь разные локации одного.
- Край - где то высоко.
- Незер - где то глубоко.
- Обычный мир - по середине.
Самым низким известным местом является Незер .Недавно обновлённое измерение,где господствуют грибы и пламя.Залегает глубоко в недрах планеты майнкрафта.
Затем идёт бедроковый слой разделяющий его с обычным миром.
В обычном мире обитают 63 из 75 существующих мобов.(если считать,что чешуйница края может заспавниться при телепорте)
Обычный мир в свою очередь я поделил на несколько ярусов.Модель актуальна на момент последних вышедших снапштовов 1.17.
Первыми идут сланцевые пещеры .В 1.17 все пещеры ниже нулевой высоты преимущественно состоят из сланца.
Следом идут верхние пещеры и океаны .В верхних пещерах кроме каньонов ничего особенного нет.Как правило они в разы меньше сланцевых.Океаны интересное и полезное место,особенно на начальных этапах выживания.Каждый ютубер выживальщик считает своим долгом построить ферму призмарина.
Как генерируется мир в Minecraft
Minecraft люди воспринимают по-разному. Для сообщества это детский сад, для игровой индустрии - феномен, простой и гениальный. Господин Нотч необычайно умен и сотворил технически шедевральную игру, о внутренностях которой я хочу поведать.
В начале я расскажу о некоторых интересностях генерации игрового мира, чем вызваны и как связаны, а потом опишу непосредственно принцип генерации.
Этот псевдо-рандом используется в огромном количестве игр и эту статью можно считать отправной точкой в мир неслучайных случайностей.
Интересности
Начнем пожалуй с того, что количество вариаций игрового мира не бесконечно, всего 281 триллион вариантов, 281 триллион возможных " seed ов", которые можно указать при генерации карты.
Майнкрафт даже спидранят, для этого раннер просто тренирует и отрабатывает стратегию в определенном мире, а на начало рана вводит его "зерно" - буквенное или численное значение.
Ограниченность связана с количеством переменных, что задаются при генерации непосредственно мира, но об этом ниже.
Сам мир тоже не бесконечен, технически. Если вы потратите 2 года реального времени и добежите до координат более 15 миллионов блоков от центра (но все предпочитают телепортироваться), то наткнетесь на так называемые "Далекие земли" :
Связано это с тем, что значение переменной, отвечающей за "границы" игрового мира для генератора, становится больше положенного и старые элементы накладываются поверх новых.
Непосредственно генерация
Начать стоит с того, что мир генерируется не по блоку, существуют так называемые чанки площадью 16 на 16 блоков площади и 256 блоков в высоту, вот как они выглядят :
Прорисовываются и генерируются они на достаточно большой площади от игрока, всё зависит от настройки дальности. Прошу заметить, что блоков в чанке 65 536, такое количество элементов способно содержать в себе 16-битная переменная, отвечающая за свой чанк. Верно полагать каждому блоку полагается координата и его айди, для движка воздух тоже имеет айди, наверно равен он нулю.
Сама геометрия генерируется с помощью шума Перлина . Крайне занятная вещь, которую в майнкрафте применили почти везде. Шум Перлина представляет из себя процедурно-генерируемую псевдо-рандомную черно-белую текстуру :
Похоже на дым, а в шутерах используется для генерации эффектов дыма, но мы сейчас о майнкрафте. Вообще стандартная восьмибитная палитра содержит в себе 255 градиентов, что между белым и черным, однако из шума Перлина обычно берут 100 значений - от 0 до 1.
Можно использовать получившуюся текстуру для генерации высот карты, здесь можно уловить связь - самый черный цвет имеет значение 255 в палитре, напомнить высоту игрового мира? 256! Однако алгоритм оптимизирован и не позволит сгенерированной горе вырасти так высоко.
Из текстуры точечно берутся значения цвета пикселей и соотносятся к блоку на карте, в случае с картой высот - видом сверху. Это пример двухмерного использования шума, но есть трехмерный и даже четырехмерный!
Программисты любят баловаться с шумом Перлина, я говорил о карте высот, взгляньте :
Изначально шум получается уж очень резким и карта может выглядеть вот так :
Однако методами линейной интерполяции, один столб образует вокруг себя гору, а глубочайший блок - озеро, так как значения высоты усредняются в зависимости от соседних блоков.
Можно всё же не усреднять, а объединять. Спавним деревенщину шумом Перлина - многовато в одном месте? Стянуть всех сюда и воткнуть город.
Это будет не сглаживание, а наоборот, группировка или уплотнение.
Так же можно нарастить лес.
Возможности использования шума Перлина и математики в целом воистину безграничны, в дальнейшем я расскажу о алгоритмах
псевдо-рандома и где еще пригодился Перлин и его шум.
46 фактов о Minecraft
Как и в любой игре, в Minecraft есть достаточно много секретов, пасхалок, отсылок и интересных моментов. В данной статье я хочу показать и рассказать вам о них.
Некоторые из представленных фактов вы уже могли видеть, так что прошу не заострять на этом внимание.
1. Изначально Крипер не был мобом - он появился в результате ошибки при создании свиньи. Позже ему изменили текстуру и добавили способность взрываться.
2. У снежного голема есть лицо за маской из тыквы.
3. С шансом в 0.01% в главном меню вместо большой надписи "Minecraft" появится название с ошибкой "Minceraft".
4. Язык Странников Края (Эндермэнов) - английский задом наперед.
5. Верстак в мире Minecraft можно использовать как компас - на северной его части всегда будет текстура с пилой и молотком, независимо от положения игрока в момент установки блока.
6. Все коровы в Minecraft - женского пола, так как все дают молоко.
7. Свинью можно превратить в свинозомби, если по ней ударит молния.
8. А если ударить молнией в Крипера, то он станет заряженным. Сила и радиус взрыва будут увеличены.
9. В Странника Края невозможно попасть стрелой из лука, снежком или яйцом. На него также нельзя уронить наковальню.
10. Однако если выстрелить в него стрелой с эффектом, то, хоть стрела не попадёт в моба, он всё равно получит её эффект.
11. Сундук невозможно поджечь или сдвинуть поршнем.
12. Попавший в паутину Ифрит не может стрелять. Также ему можно нанести урон снежками.
13. Спавн Слизней зависит от фазы луны - больше всего их будет в полнолуние, а в новолуние спавн Слизней приостановлен.
14. Иероглифы в столе зачарования - не спонтанно нарисованные буквы, а настоящий шифр, имеющий смысл.
15. Криперы хоть и не имеют рук, но всё равно спосбны подниматься по лестницам.
16. Есть заблуждение, что обсидиан невозможно сломать рукой. Это не правда - на его уничтожение в таком случае уйдёт 4 минуты и 10 секунд. Однако сломав его, он не выпадет, так как добывать его, соответственно, можно только алмазной киркой.
17. Никогда не спите в Нижнем Мире. При взаимодействии с кроватью, она взорвётся и вы получите урон.
18. В самых ранних версиях игры со скелетов с небольшим шансом мог выпасть колчан. Он позволял стрелять из лука, не тратя стрелы. Данный предмет вскоре удалили, и добавили зачарование "Бесконечность" с тем же эффектом.
19. Кактус в доме можно использовать вместо мусорного ведра - когда выпавший предмет касается его, он пропадает.
20. Переименовав моба с помощью бирки, используя имена "Grumm" или "Dinnerbone", вы перевернёте игровую модель данного моба.
21. Если вы переименуете большого или среднего слизня, то, убив его, более мелкие слизни так же сохранят имя, данное "предку".
22. Самое интересное про бирки: если переименуете овцу в "jeb_", то она станет переливаться радужным цветом. Jeb_ - ник одного из разработчиков игры.
23. Немного о разработчиках: Notch и Jeb_ (Маркус Перссон и Йенс Бергенстен, соответственно) были включены в 100 самых влиятельных людей планеты 2013 года по версии журнала "Time".
24. Концептом для чёрно-белой кошки в Minecraft служила настоящая кошка Йенса - Ньютон.
25. Самые маленькие мобы в игре - детёныш черепахи, чешуйница Края и летучая мышь.
26. Если умереть в битве с Гастом, или быть в его поле зрения во время смерти, то он всё равно будет в вас стрелять, пока вы не возродитесь.
27. Надев на голову тыкву, вы спокойно можете смотреть на Странников Края - они не будут вас атаковать.
28. Обычно с скелетов лук в правой руке, однако с шансом в 5% он может появится в левой.
29. На Хэллоуин (31 октября) зомби и скелеты могут появится с тыквой или светильником Джека на голове.
30. А на 24-25 декабря сундуки приобретают праздничный рождественский вид.
31. Если курица/свинья/корова/овца будут убиты, будучи подожжёными, то мясо, выпавшее с них, будет сразу пожареным.
32. Скелет-наездник заспавнится на пауке с шансом 1%.
33. Любые пауки неуязвимы к зелью отравления.
34. Пещерные пауки появляются только рядом со спавнером.
35. Ведьма не может сгореть в лаве или утонуть в воде.
36. Странник Края получают урон от воды. Более того, им можно нанести урон с помощью пузырька с водой.
37. Изначально зелья должны были вариться в котлах, по позже способ их создания заменили на варочную стойку.
38. Железный голем может подарить жителям или детям цветок. Это отслыка к аниме "Небесный Замок Лапута".
39. Железный голем, наряду с Разорителем, - третий моб в игре по количеству здоровья (100 HP). На первом месте Иссушитель (300 HP), а на втором Дракон Края (200 HP).
40. Снежками можно отталкивать огненные шары Гастов.
41. Зомби-жителя можно вылечить, если кинуть в него зелье слабости и нажать ПКМ золотым яблоком.
42. Если поставить ковёр сверху забора, то вы сможете перепрыгнуть такую конструкцию, а вот мобы — нет.
43. Есть возможность изменить цвет луча маяка. Достаточно поставить блок стекла того цвета, которым вы хотите окрасить луч.
44. Когда вы находите Портал в Край, то некоторые Очи Края уже буду установлены в рамку. Суть: есть шанс один к триллиону, что все рамки будут заполнены и Портал будет сразу же активированным.
45. Держа в руках краситель и нажав ПКМ по табличке, вы сможете изменить цвет надписи.
46. Если песок, гравий или яйцо Дракона упадут на факел, то они выпадут как предмет и их можно будет подобрать.
На этом всё. Если вы знаете факты, которые не были упомянуты в статье, то можете указать их в комментариях.
5. Верстак в мире Minecraft можно использовать как компас - на северной его части всегда будет текстура с пилой и молотком, независимо от положения игрока в момент установки блока.
Не только верстак. Есть ещё ряд блоков, для которых справедлива ассиметрия текстур по сторонам света.
8. А если ударить молнией в Крипера, то он станет заряженным. Сила и радиус взрыва будут увеличены.
Если такого крипера убъёт скелет - выпадет редкая пластинка.
14. Иероглифы в столе зачарования - не спонтанно нарисованные буквы, а настоящий шифр, имеющий смысл.
Это "стандартный галактический алфавит" из серии игр "Commander Keen".
27. Надев на голову тыкву, вы спокойно можете смотреть на Странников Края - они не будут вас атаковать.
Не только тыкву, а также любую голову моба.
40. Снежками можно отталкивать огненные шары Гастов.
Не только снежками, но и оружием.
Читайте также: