максимальное количество игроков в майнкрафт

«Мамонт»: как устроен сервер Minecraft, рассчитанный на тысячи игроков

Если вовремя добавлять железо, тут может играть более-менее любое число людей.

Серверная часть Minecraft устроена не особо оптимально: она однопоточная и обсчитывается единственным ядром CPU. Если на сервере собирается больше пары сотен игроков, ему становится плохо — все лагает, чанки едва грузятся.

Словом, возникает куча проблем. В начале 2020 года, когда пандемия только начиналась, разработчик Джексон Робертс решил воспользоваться карантином и попытаться привести сервер Minecraft в чувство. Спустя почти полтора года у него есть более-менее рабочее решение: Джексон назвал его Mammoth.

На самом деле, рассказывает Робертс, найти правильный подход удалось далеко не сразу. Сперва Джексон решил разбить мир на сегменты по 1024 блока, каждый из которых будет обсчитываться одним сервером. Казалось, все будет работать нормально — надо лишь синхронизировать области на границах серверов.

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

Когда сервер падал, область мира, за которую он отвечал, просто становилась недоступной. Кроме того, не удалось обойти основное ограничение Minecraft: такой подход не позволял большому числу игроков собраться в одной локации.

Поразмыслив, Робертс сформулировал ряд принципов, которым должен соответствовать его идеальный сервер:

Идея была следующей. Нужно создать две вещи: центральную базу данных, где будет храниться состояние игрового мира, и систему, которая будет контролировать сервера Minecraft, снабжая их данными для синхронизации передвижения игроков и изменения состояния мира.

Существующие решения не подошли, и Робертс создал собственную систему, WorldQL. Она выполняет одновременно несколько задач: хранит данные обо всем мире и балансирует нагрузку между серверами Minecraft. Кроме того, у WorldQL есть поддержка скриптов.

Для игрока все выглядит прозрачно: он подключается к любому доступному серверу и попадает в общий мир. Тем временем WorldQL незаметно синхронизирует данные: вне зависимости от того, на каком сервере находится игрок, он будет видеть всех остальных игроков и сможет взаимодействовать с ними.

Чтобы синхронизация работала, сервера Minecraft постоянно сообщают серверу WorldQL о том, где находятся игроки. Сам WorldQL пересылает серверам данные об игроках, которых они должны обсчитывать.

Вот так выглядит взаимодействие двух игроков, находящихся на разных серверах.

Данные обо всем игровом мире хранятся только в WorldQL. У серверов этой информации нет, это позволяет снизить нагрузку на них.

Когда серверу Minecraft нужно обсчитать какой-то чанк, о котором он ничего не знает, он запрашивает данные у WorldQL, а потом отдает их подключенному клиенту. Такой подход обеспечивает синхронизацию всех блоков и объектов в игровом мире, от надписей на знаках до порталов.

Подключение к системе нового сервера Minecraft устроено просто: он точно так же запрашивает у WorldQL данные об игровом мире. Обычно синхронизация происходит автоматически, вот так она выглядит в ручном режиме.

В результате с помощью Mammoth и WorldQL можно устраивать эвенты, в которых задействовано огромное количество игроков.

Во время одного из тестов Джексон имитировал подключение тысячи игроков; сервер не упал, его TPS — количество обсчитываемых тиков в секунду — не падал ниже 20. При этом вся серверная часть работала не на каком-то особенно мощном железе, а на обычном ноутбуке разработчика.

Читайте также:  Что можно испечь со сгущенкой

Для сравнения: в 2011 году Minecraft попала в Книгу рекордов Гиннесса, когда на одном сервере собралось 2622 игрока. С такой нагрузкой сервер работал очень условно, в лучшем случае игроки могли поговорить в чате.

У WorldQL, отмечает разработчик, есть еще один плюс: благодаря встроенному JavaScript можно добавлять в Minecraft мини-игры, не создавая отдельные серверные плагины. Это позволяет менять логику, не перезапуская сервер.

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

Поближе познакомиться с WorldQL и Mammoth можно здесь и здесь.

Источник

Максимальное количество игроков в майнкрафт

По-настоящему популярным Minecraft стал в 2021 году. Производство всегда привлекало большое количество игроков, но очевидно, что мода на MC вернулась в последние месяцы.

Насколько популярен Minecraft

Генеральный директор Microsoft Сатья Наделла сообщил в недавнем финансовом отчете компании, что к 2020 году количество игроков, которых она найдет, увеличилось. Оказывается, в период с января по март количество людей, активно играющих в постановку Mojang, достигло 140 миллионов.

Это означает, что общий рост составил около 30% по сравнению с аналогичным периодом прошлого года. Это определенно большой успех, который включает в себя популярных ютуберов, стримеров, постоянно расширяющиеся серверы сообщества, обновления, которые делают игровой процесс свежим, и, конечно же, ситуацию в мире, которая заставляет вас сидеть дома.

Minecraft сейчас огромен

Рост интереса можно увидеть не только на Youtube, но и на Twitch. Игра заняла 5-е место по популярности за последние 3 месяца.

Fortnite был близок к обгону, но нам удалось перепрыгнуть даже CS: GO, Warzone или Valorant. Все это также привело к увеличению доходов Microsoft. В целом прибыль составила 41,7 миллиарда долларов, что на 19% больше, чем в предыдущем году.

Популярность Minecraft

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

Информация предоставлена компанией

Источник

Minecraft Wiki

Из-за новой политики Microsoft в отношении сторонних ресурсов, Minecraft Wiki больше не является официальной. В связи с этим были внесены некоторые изменения, в том числе и обновлён логотип вики-проекта. Подробности на нашем Discord-сервере.

Система счёта игровых событий

См. Scoreboard на английском языке.

Скриншот с системой счёта игровых событий на боковой панели.

Система счёта игровых событий (ССИС, англ. scoreboard) — сложная система игровой механики, позволяющая отслеживать статистику игроков. В основном предназначена для разработчиков карт и операторов серверов.

Содержание

Задачи [ ]

Задачи состоят из трёх основных параметров: название, тип и отображаемое название. Счёт в задаче — целое число от -2 147 483 648 до 2 147 483 647.

Название используется внутри команд в качестве ссылки. Должно быть уникальным и содержать только определённые символы.
Отображаемое название используется при отображении на экране. Может быть не уникальным и состоять из различных символов.
Тип определяет, что отслеживает задача.

Счёт может быть изменён с помощью команд, если указанная задача не является задачей только для чтения. При изменении счёта задачи, отслеживающей статистику, отслеживаемая статистика не изменится — счёт задачи изменится при обновлении статистики.

Читайте также:  Что можно мазать ацикловиром

Параметр селектора scores=<задача=диапазон> позволяет произвести поиск сущностей с счётом определённого диапазона в указанной задаче.

Список составных типов:

В других случаях счёт игрока не увеличивается.

broken: Идентификатор предмета, имеющего прочность.
Доступные идентификаторы
bow, carrot_on_a_stick, chainmail_boots, chainmail_chestplate, chainmail_helmet, chainmail_leggings, diamond_axe, diamond_boots, diamond_chestplate, diamond_helmet, diamond_hoe, diamond_leggings, diamond_pickaxe, diamond_shovel, diamond_sword, elytra, fishing_rod, flint_and_steel, golden_axe, golden_boots, golden_chestplate, golden_helmet, golden_hoe, golden_leggings, golden_pickaxe, golden_shovel, golden_sword, iron_axe, iron_boots, iron_chestplate, iron_helmet, iron_hoe, iron_leggings, iron_pickaxe, iron_shovel, iron_sword, leather_boots, leather_chestplate, leather_helmet, leather_leggings, shears, shield, stone_axe, stone_hoe, stone_pickaxe, stone_shovel, stone_sword, wooden_axe, wooden_hoe, wooden_pickaxe, wooden_shovel и wooden_sword
Счёт игрока увеличивается с поломкой предмета. mined: Идентификатор блока. Большинство идентификаторов доступны, за исключением идентификаторов нерушимых или технических блоков.
Доступные идентификаторы
acacia_fence, acacia_fence_gate, acacia_stairs, activator_rail, anvil, beacon, birch_fence, birch_fence_gate, birch_stairs, black_glazed_terracotta, black_shulker_box, blue_glazed_terracotta, blue_shulker_box, bone_block, bookshelf, brick_block, brick_stairs, brown_glazed_terracotta, brown_mushroom, brown_mushroom_block, brown_shulker_box, cactus, carpet, chain_command_block, chest, chorus_flower, chorus_plant, clay, coal_block, coal_ore, cobblestone, cobblestone_wall, command_block, concrete, concrete_powder, crafting_table, cyan_glazed_terracotta, cyan_shulker_box, dark_oak_fence, dark_oak_fence_gate, dark_oak_stairs, daylight_detector, deadbush, detector_rail, diamond_block, diamond_ore, dirt, dispenser, double_plant, dragon_egg, dropper, emerald_block, emerald_ore, enchanting_table, end_bricks, end_portal_frame, end_rod, end_stone, ender_chest, farmland, fence, fence_gate, furnace, glass, glass_pane, glowstone, gold_block, gold_ore, golden_rail, grass, gravel, gray_glazed_terracotta, gray_shulker_box, green_glazed_terracotta, green_shulker_box, hardened_clay, hay_block, heavy_weighted_pressure_plate, hopper, ice, iron_bars, iron_block, iron_ore, jukebox, jungle_fence, jungle_fence_gate, jungle_stairs, ladder, lapis_block, lapis_ore, leaves, leaves2, lever, light_blue_glazed_terracotta, light_blue_shulker_box, light_weighted_pressure_plate, lime_glazed_terracotta, lime_shulker_box, lit_pumpkin, log, log2, magenta_glazed_terracotta, magenta_shulker_box, magma, melon_block, monster_egg, mossy_cobblestone, mycelium, nether_brick, nether_brick_fence, nether_brick_stairs, nether_wart_block, netherrack, noteblock, oak_stairs, observer, obsidian, orange_glazed_terracotta, orange_shulker_box, packed_ice, pink_glazed_terracotta, pink_shulker_box, piston, planks, prismarine, pumpkin, purple_glazed_terracotta, purple_shulker_box, purpur_block, purpur_pillar, purpur_slab, purpur_stairs, quartz_block, quartz_ore, quartz_stairs, rail, red_flower, red_glazed_terracotta, red_mushroom, red_mushroom_block, red_nether_brick, red_sandstone, red_sandstone_stairs, red_shulker_box, redstone_block, redstone_lamp, redstone_ore, redstone_torch, repeating_command_block, sand, sandstone, sandstone_stairs, sapling, sea_lantern, silver_glazed_terracotta, silver_shulker_box, slime, snow, snow_layer, soul_sand, sponge, spruce_fence, spruce_fence_gate, spruce_stairs, stained_glass, stained_glass_pane, stained_hardened_clay, sticky_piston, stone, stone_brick_stairs, stone_button, stone_pressure_plate, stone_slab, stone_slab2, stone_stairs, stonebrick, structure_block, structure_void, tallgrass, tnt, torch, trapped_chest, tripwire_hook, vine, waterlily, web, white_glazed_terracotta, white_shulker_box, wooden_button, wooden_pressure_plate, wooden_slab, wool, yellow_flower, yellow_glazed_terracotta и yellow_shulker_box
Счёт игрока увеличивается с разрушением указанного блока. Если игрок в творческом режиме, счёт не увеличивается. killed: Идентификатор сущности. Счёт игрока увеличивается с убийством указанной сущности. picked_up: Идентификатор блока/предмета. Счёт игрока увеличивается с подбиранием указанного предмета/блока. dropped: Идентификатор блока/предмета. Счёт игрока увеличивается с выбрасыванием указанного предмета/блока. killed_by: Идентификатор сущности. Счёт игрока увеличивается, когда его убивает указанная сущность. teamkill. Цвет команды. Список доступных цветов см. в этой таблице. Счёт игрока увеличивается с убийством участника команды указанного цвета. killedByTeam. Цвет команды. Список доступных цветов см. в этой таблице. Счёт игрока увеличивается, когда его убивает участник команды указанного цвета.

Слоты отображения [ ]

Различное отображение задач: задача, отслеживающая здоровье, установлена в слоте отображения «list»; задача «Преодолено пешком» — в слоте отображения «sidebar»; задача «смертей» — в «belowName».

Формат NBT [ ]

История [ ]

Проблемы [ ]

Отчёты об ошибках, связанных с «Система счёта игровых событий», поддерживаются в системе отслеживания ошибок Mojira. Сообщайте о найденных ошибках там (на английском языке).

Источник

Minecraft Wiki

Из-за новой политики Microsoft в отношении сторонних ресурсов, Minecraft Wiki больше не является официальной. В связи с этим были внесены некоторые изменения, в том числе и обновлён логотип вики-проекта. Подробности на нашем Discord-сервере.

Читайте также:  Уральские пельмени распродажа мясников михалкова

Статистика

Статистика — это функция игры, позволяющая игрокам отслеживать, сколько раз они выполнили определённые задачи. Статистика была добавлена в игру в обновлении Beta 1.5. Нотч рассказал про игровую статистику в одном из своих сообщений в блоге за 18 марта 2011 года. [1]

Статистика содержит в себе 3 раздела:

Содержание

Основная статистика [ ]

Хранение [ ]

Все поля в файле остаются пустыми до первого их обновления. Например, если вы ещё ни разу не прыгали, число прыжком не будет записано в файл. Расстояние хранится в сантиметрах (1/100 блока), а время в тактах (1/20 секунды). Например, количество выходов из игры вместе с количеством убитых овец записывается так:

Проблемы [ ]

Отчёты об ошибках, связанных с «Статистика», поддерживаются в системе отслеживания ошибок Mojira. Сообщайте о найденных ошибках там (на английском языке).

Мелочи [ ]

Интересное [ ]

Если вы хоть раз за игру создавали часы и/или компас, то в окне созданных вами предметов, они будут показывать текущее время и направление на респаун.

Источник

Сколько человек может быть на сервере в игре?

Я бы хотел узнать сколько человек может быть на одном сервере. Я понимаю что это зависит от самого сервера,насколько он мощьный. Но я бы хотел узнать примерно.
Я хочу сделать игру по типу Blackwake и ее подобной. Но с открытым миров типо как в GTA. Сам в Sea of Thieves, Blackwake не играл.
Хотелось чтобы игра была от 1 лица. На среднестатистическом корабле 50 человек, есть идея типо нанимать ботов который будут выполнять узконаправленные задачи типо стрельба из пушек и тд. Графика реалистичная. Хотелось бы сделать систему разрушений.
В GTA например же играет кучу народа и всеравно все норм.

В общем, если какието сведения еще нужны, скажу.
Заранее спасибо за ответ!

Простой 2 комментария

На средне статистическом корабле примерно 50 человек.

Зависит от игры, её архитектуры, её механик (насколько много они кушают ресурсов), сетевой оптимизации и выбранных технологий.

Например, в популярных ММО сервера тянут обычно порядка 5000 человек, плюс-минус. Там применяется хитрая технология распределения по зонам, когда каждую зону обслуживает отдельный сервер. То есть если в теории все игроки соберутся в одном городе, то начнутся проблемы (лаги, фризы). Хотя есть решения, которые и это предусматривают, определяя границы новых зон «на лету». Но это как бы не совсем «сервер», потому что за названием конкретного сервера, где игроки могут пересекаться и взаимодействовать, скрывается несколько серверов.

В EVE применяется решение, при котором время игры замедляется, если сервера не справляются. То есть в теории ограничений нет для этой игры.

Условно можно считать, что 1 сервер простенькой игрульки тянет около 1000 человек. Но повторюсь, зависит от игры. И если у вас там супер умные NPC с продвинутым ИИ, который кушает много ресурсов, или если у вас там супер реалистичный обсчёт физики (на сервере), то лимит может быть и в 4-5 игроков, например.

Сколько человек может поместиться в средство передвижения?
Я хочу сделать транспорт, что-то на подобии машины, чтобы один рулил, другой рассказывал как ехать? В той же машине в среднем по 4 человека, а вот в поезд помещается уже намного больше?

Вопрос вообще не очем. есть 100 причин, от языка, оптимизации, самого сервера.

Источник

Автомобильный справочник "Автовестник"