Как выделить память для сервера майнкрафт
Перейти к содержимому

Как выделить память для сервера майнкрафт

  • автор:

(оффтоп) Как решить проблему с выделением памяти для сервера Minecraft или почему не принимается eula?

Здравствуйте, и заранее прошу прощения за вопрос, не касающийся программирования на языке Java.
Однако, я столкнулся с проблемой, решения которой я не смог найти самостоятельно. Буду очень благодарен любой помощи.
При создании сервера для игры Minecraft столкнулся с проблемой нехватки оперативной памяти. Машина, на которой стоит сервер обладает двухъядерным процессором и семью гигабайтами ОЗУ, но, к сожалению, 32х разрядной операционной системой Windows. При запуске файла «server.jar» сервер функционирует (три игрока свободно проиграли на нем несколько часов), но затем начались вылеты в связи с нехваткой памяти. Посему я попробовал запустить этот файл из консоли, прописав в параметрах объем выделяемой памяти, используя следующую команду «java -Xmx1536M -Xms1536M -jar C:\server\server.jar». И вот тут я наткнулся на непреодолимое препятствие в виде ошибки, которая указывает мне на то, что я не принял лицензионное соглашение, несмотря на то, что соглашение принято (скриншоты прилагаются), а именно в файле eula.txt есть строчка «eula=true».
Если вы дочитали до конца, и у вас возникло желание помочь, подскажите, пожалуйста, как мне выделить серверу побольше памяти или каким образом решить проблему с соглашением.
0972f332814d4e36b192b3de832509f2.png 4003173bfab0402a8230bba02c24b238.png

  • Вопрос задан более трёх лет назад
  • 16339 просмотров

Комментировать
Решения вопроса 1

Кто же держит сервер mc на Windows? На линуксе держать надо.
java -Xmx1536M -Xms1536M -jar C:\server\server.jar
Xmx максимум памяти
Xms минимум памяти
Вместо M можно указать G, -Xmx7G -Xms1G
По поводу eula, вначале выключаешь сервер, потом сохраняешь изменения и снова врубаешь.

Ответ написан более трёх лет назад
Нравится 1 5 комментариев
Дмитрий Лаврик @yukuCrow Автор вопроса

Если у вас есть время ответить, подскажите, пожалуйста, сильно ли установка сервера на линукс отличается от того же действа на винду? Для винды все что я сделал — это установил пакет джавы на чистую систему, установил сервер, установил на него фордж и сунул моды.
И выделит ли линукс столько памяти, сколько я захочу? (32х винда не выделяет больше 1526М, несмотря на, грубо говоря, 5G лишних)

Дмитрий Лаврик: windows вообще больше годен для офисных пастелушек. В линуксе всё точно так же как на винде, только там не start.bat, а start.sh, можно просто прописать java -Xmx1536M -Xms1536M -jar C:\server\server.jar и сервер запустится. И памяти можно сколько угодно поставить, в пределах допустимого. И если Вы хотите сервер для всех, то Вам нужен cauldron, а если с другом поиграть, то и так сойдёт.

Как выделить память для сервера майнкрафт

Ваш браузер устарел, и поэтому некоторые важные функции этого сайта могут не работать. Пожалуйста, обновитесь то более современного браузера. 🙁

Выделение памяти на сервер.

DarwinMix

Звание: Где-то рядом с нами

Добрый день! Подскажите новичку в создании серверов, как и сколько памяти рекомендуется сервер Minecraft 1.12.2. Создаю сборку без плагинов, только моды(62 штуки, включая моды на оптимизацию). Арендовали виртуальный сервер на 10ГБ оперативной памяти и 4 процессора. При запуске сервер ограничил на 8ГБ.
Столкнулись с проблемами: «. moved too quickly», «waiting for server. », «server is overloaded».
Неужели при таком количестве модификаций, 10ГБ оперативки — мало?
Ищу решение проблемы, могу скинуть полные характеристики Хоста/ сборку Minecraft

#1 | 4 мая 2020 — 11:09

Chartako

@echo off
java -Xmx4G -jar paperspigot-1.14.4.jar
pause

где начиная с джавы название ядра, а перед ним количество память (-Xmx10G -jar названия ядра полностью)

это напиши в батнике start.bat

Сообщение отредактировал Chartako 4 мая 2020 — 11:16

#2 | 4 мая 2020 — 11:16

DarwinMix

Звание: Где-то рядом с нами

Chartako,
Это мне известно. Запускаю не через батник, через консоль на Ubuntu. Там ограничено на 8ГБ, как написал выше. Проблема не в этом, я все описал выше

#3 | 4 мая 2020 — 12:19

Caman86

Caman86

ТруЪ Олдфаги-с

Звание: Чоткий паря

Есть моды, вызывающие каскадную генерацию, такой случай и у тебя. Проблема в модах, не в процессоре/ОЗУ/сервере. Каскадная генерация лагает всегда, но на сервере у тебя стоит ограничение на скорость (встроенный античит ядра), а сервер в этот момент грузит чанки, и, конечно же, сервер думает что ты двигаешь слишком быстро, так как ты должен стоять. Так что проблема в модах.

#4 | 4 мая 2020 — 13:57

DarwinMix

Звание: Где-то рядом с нами

Caman86,
Если я скину свою папку mods. Укажешь на моды использующую каскадную генерацию, чтобы знать на будущее? Также, не знаешь ли возможностей обхода «античита» сервера или отключения каскадной генерации?
Мы замечали, что во всех измерениях, кроме обычного мира, зависаний не наблюдается. Может ли быть, что какой-либо мод на оптимизацию подключает каскадную генерацию?
Есть ли какие-либо решения, помимо того, чтобы удалять все моды(думаю, что их может найтись много) ведь существуют же большие сервера с такими же модами.
Заранее спасибо, который раз уже отвечаешь ))

#5 | 4 мая 2020 — 17:19

DarwinMix

Звание: Где-то рядом с нами

Caman86,
Я тут задумался, на обычных серверах карты ограничены и обычно прогружены заранее, в этом ли решение? Стоит ли (и как) ограничить карту сервера и прогрузить ее, чтобы, как я понимаю, каскадная прогрузка чанков не так сильно влияла на это все дело.

#6 | 4 мая 2020 — 18:24

Caman86

Caman86

ТруЪ Олдфаги-с

Звание: Чоткий паря

DarwinMix,
Каскадная генерация также есть и в обычном майне, но это крепости, особняки и т.д. Моды же, из-за своих структур, которые генерируются чаще, сильно выявляют это. Так что это никак не исправить, лишь минимизировать. Прогрузка карты — ты прав. Ограничивать необязательно — это просто уменьшит вес карты, а вот прогрузка сделает меньшую нагрузку на ядро при генерации.

#7 | 5 мая 2020 — 04:09

как выделить больше оперативной памяти на сервер minecraft

у меня 64 бит семёрка, 8гб оперативы, I5, мощнаю видюха, и джаву я качал с оф сайта, захожу в настройки джавы, прописываю -Xmx1024M -Xms4096M, сохраняю, в стартере сервера прописываю 2048 операвки, но он у меня потом не запускается

Лучший ответ

Скажу кратко, для выделении такой памяти нужно скачать Java 64bit без этого не как. Дальше следуем по инструкции.
1.Нажимаем пуск —>Панель управления
2.Меняем объём в правом верхнем углу с Категорий на крупные значки или маленькие
3.Находим Java и нажимаем.
4.В Java в верхней панели ищем вкладку Java тыкаем на неё.
5.Нажимаем Viev
6.Находим Runtime Parameters и меняем на своё значение, Например -Xmx1024M -Xms4096M
7.Нажимаем Ok А потом в низу Apply и можете закрывать.
Вот так! Если кому помог ставим лайк и оставляйте комент! Удачи.

Источник: Опыт
Остальные ответы
Закрой все проги, Удали ненужные.

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

Оптимизация сервера Minecraft

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

Простая концепция мира из «простейших кубиков» постепенно превратилась в среду для общения, создания весьма сложных объектов, копирующих реальный мир. И вот это накладывает некоторые ограничения. Чем детальнее игрок создает элементы, тем выше нагрузка на процессор, оперативную память сервера. Ситуация дополнительно усложнена тем, что на один хост подключается несколько пользователей. Рассмотрим типовые проблемы на примере версии Java Edition.

Виды серверов

Рассмотрим несколько популярных названий серверов Minecraft.

Клиент игры

Простейший вариант Server Minecraft – сервер, встроенный в клиент самой игры. Всего-то нужно выбрать создание нового мира, кликнуть подтверждение, и виртуальная вселенная станет доступной по локальной сети. Правда, поиграть вместе с удаленными пользователями не удастся, придется довольствоваться «домашними». Да и допустимая нагрузка на него минимальная, максимум пара-тройка аккаунтов, из-за чего такой вариант практически никогда не рассматривают.

Vanilla

Одно из популярных названий серверов Minecraft – Vanilla. Это оригинальный модуль, автором которого является компания Mojang Studios. Он имеет простой функционал по созданию сервера с персональным виртуальным миром. Подключиться к нему можно из любой точки планеты, где есть доступ к интернету. Разобраться в настройке довольно легко, новичкам можно ознакомиться с подробной инструкцией (размещена в игровой Wiki).

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

Bukkit

Второй вариант сервера Майнкрафт для ПК – Bukkit. Решение создано энтузиастами, которые не стали изобретать велосипед, а использовали в качестве базы версию Vanilla. Его расширили путем интеграции поддержки модов (модификаций) и плагинов. Пользователей привлекают в Bukkit как менее суровые требования к оперативной памяти, так и возможность добавлять в игровой процесс блоки нового типа.

Первое позволяет арендовать у провайдера timeweb.cloud тарифы подешевле, чем при выборе сервера Minecraft Vanilla. Второе заметно разнообразит игровой процесс. Единственный минус у решения заключается в заброшенном репозитории – никто его не обновляет с 2014 года, потому что разработчики проекта были включены в команду Mojang Studios и теперь работают над развитием официальных сервисов.

SpigotMC

Общий недостаток предыдущих вариантов сервера в Minecraft – это отсутствие автоматизации. Из простенького мира, состоящего из однотипных кубиков, игра превратилась в увлекательную и весьма сложную забаву. Поэтому появление поддержки API в продукте SpigotMC стало своевременным. В качестве базы нового ядра была взята «заброшенная» разработка Bukkit. Ее переработали, внесли массу фишек для повышения производительности и надежности.

Единственный недостаток сервера Майнкрафт на ПК SpigotMC заключается в его официальной блокировке в Git-репозитории. Поэтому скачивать исходники придется при помощи специальной утилиты BuildTools. Она представляет собой инструмент, избавляющий от дистрибуции софта в скомпилированном виде. Благодаря самостоятельному исполнению процедуры, запреты от DMCA становятся бессмысленными.

PaperMC

Еще один действующий проект Servers Minecraft – PaperMC. В нем также основной фишкой стало наличие поддержки API, а это автоматически означает расширенные возможности по созданию или модернизации существующих плагинов. Формально разработка является форком от SpigotMC, но функционально она представляет собой «новый взгляд» на оптимизацию Minecraft . Помогает в развитии решения довольно развитое комьюнити, позволяющее оперативно решать вопросы.

Плагины, разработанные под Spigit в 99%, без доработок начинают работать на PaperMC. Обратная совместимость также возможна, ее желательно проверять на тестовом аккаунте. Отчасти это повлияло на то, что их причисляют к топу серверов Майнкрафт. Пользователи могут экспериментировать с обеими, не переживая, что понравившийся модуль будет недоступен. Но нужно учитывать, что официальной поддержки не будет, она распространяется только на официальные разработки внутри проекта.

Проблемы и решения

При создании нового сервера Майнкрафт нужно понимать, что архитектура приложения имеет ряд особенностей. Например, немалая часть решений, независимо от количества выделенных процессорных мощностей, для работы платформы будет использовать 1 ядро. Остальные останутся незадействованными (фактически простаивающими). Это стоит учитывать при аренде облачных ресурсов; в зависимости от ситуации важнее тактовая частота, а не многоядерность процессора, не влияющая на производительность.

Отдельный вопрос – объем оперативной памяти. Здесь нужно учитывать:

  1. Количество миров, открываемых одновременно.
  2. Размер каждого генерируемого виртуального пространства.
  3. Общее количество игроков, кому будет предоставлен доступ.

Плюс к перечисленному рекомендуется учитывать особенности работы Java-приложений. Они для комфортной работы всегда требуют определенного запаса оперативки. Например, если разработчик рассчитывает на потребление 8 Гбайт ОЗУ, лучше обеспечить программу объемом до 12 Гбайт, не меньше. Приведенные цифры весьма условны, зато хорошо отражают суть вопроса. Тем более, при аренде удаленного сервера тарифы позволяют резервировать ресурсы с приличным запасом.

Чтобы избежать проблем с запуском сервера Minecraft , стоит учитывать ряд правил:

  1. Потребление оперативки рекомендуется контролировать специальными программами вроде LagMeter. Они дают объективную картину в режиме реального времени.
  2. Стоит регулярно проверять наличие обновлений плагинов и устанавливать их. Разработчики работают над ускорением своих продуктов, устранением неполадок.
  3. Желательно все генерируемые карты ограничивать, например, при помощи плагина вроде WorldBorder. Такой подход снижает общую нагрузку на сервер.
  4. Есть смысл экспериментировать с новыми плагинами. И менять тяжеловесные модули на более легкие, с меньшими требованиями к процессору и оперативной памяти.

Приносят пользу и плагины для очистки дропа. Таким термином называют предметы, выпадающие при смерти моба (персонажа) или разрушении блоков. Чем больше скапливается несобранных или «оставленных на потом» дропов, тем больше системных ресурсов программа использует попусту. Для такой оптимизации Minecraft используют плагины NoLagg и McClean. Стоит просматривать статистику до их применения и после, чтобы выбрать оптимальный режим работы сервера.

Генерация карты блоков

Теперь об игровом процессе. При первом подключении к серверу новый персонаж автоматически появится на общей точке сбора (так называемый спаун). Это единственное место, координаты для которого генерируются сервером предварительно. Процедура выполняется на основании настроек в конфигурационных файлах серверной части приложения. Ключевой параметр здесь – дальность прорисовки объекта, измеряемая в чанках.

Один чанк – область карты размером 16х16 и высотой в 256 блоков. Сколько их нужно выделить, зависит от настроек сервера. И отчасти от его владельца, выбирающего параметры по собственному усмотрению. Процесс генерации точки появления игровых персонажей требует от сервера выделения существенных ресурсов, ведь все происходит динамически, с хранением данных в оперативной памяти, постоянным увеличением объема файла, содержащего карту миру.

И чем больше пользователей входит на сервер, тем выше потребность разобраться, как оптимизировать Minecraft . Новички часто отталкиваются от нагрузки при спауне всего одного игрока, максимум пары десятков. Но при входе тысячи пользователей сервер «упадет» без шансов выдержать нагрузку. В лучшем случае на момент массового респауна они будут наблюдать некоторые «тормоза», что тоже напрягает игроков.

Если значение TPS (Ticks per Second, тактов в секунду) упало ниже 20, сервер выкинет персонажей из мира по таймауту. Штатно один TPS равен 50 мс, а 1 секунда реального мира – 20 тактам игрового. Здесь все зависит от владельца сервера. Так, один из старейших ресурсов 2b2t (2builders2tools) спокойно «переваривает» карту с границей мира в 30 млн блоков. Ее объем достиг уже 8 Тбайт, и на этом рост, похоже, не ограничится.

Но не всем доступны столь огромные ресурсы, чтобы потянуть практически бесконечные миры. Решение проблемы одно – ограничить собственный мир конкретными координатами и сгенерировать карту заранее. Такой подход позволяет избежать нагрузки на сервер из-за отсутствия динамической генерации блоков, процессору достаточно считать уже существующий ландшафт. Заодно он дает возможность прогнозировать потребление оперативной памяти.

Оптимальный вариант – это воспользоваться плагином WorldBorder. Новичкам лучше создавать мир в виде окружности с центром на точке спауна. Выполняется это командой:

/wb set spawn

Пересечь условную границу не получится, игровой персонаж будет отброшен на несколько блоков назад, если попытается пройти на «несуществующую территорию». Если встретится упрямый пользователь, который начнет целеустремленно пытаться выйти за грань карты, его автоматически перекинут на точку спауна.

Команда для предварительной генерации мира в соответствии с выбранной формой:

/wb fill

Стоит подтвердить ее выполнение при помощи:

/wb confirm

Процессор Intel Xeon Gold 6240 справляется с генерацией мира радиусом 5000 блоков примерно за 2 часа. Всего можно будет создать примерно 40 млрд блоков. При увеличении радиуса время возрастает соразмерно общему количеству генерируемых элементов. На весь период создания карты на сервере будет резко снижен показатель TPS, это нужно учитывать при наличии на нем активных игроков. Также стоит заранее выделить достаточное количество свободного места.

Так, на карту радиусом 5000 блоков уходит почти 2 Гбайт от объема дискового накопителя. Такие моменты напрямую влияют на выбор тарифа при аренде облачных ресурсов. Версия плагина особо не играет роли, хоть он и разработан для версии Minecraft 1.14. Пока случаев несовместимости не было зарегистрировано, можно экспериментировать без ограничений. Полный список команд для WorldBorder приведен на официальном форуме плагина.

Проблемные блоки

Существует еще один момент, который необходимо предусмотреть при подборе конфигурации под сервер и решении вопроса, как оптимизировать Майнкрафт . Это динамическая генерация блоков уже внутри рабочей карты. Если выпадение предметов особой нагрузки не дает, то на массовые взрывы «виртуальной взрывчатки» (той самой TNT) уходит много ресурсов. Все дело в том, что при ее активации начинает действовать сила гравитации.

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

Если для текущей конфигурации нагрузка чрезмерная, возможно, лучше отказаться от блоков типа TNT. То же относится к кристаллам края. Кристаллы, в отличие от взрывчатки, детонируют сразу по всей площади, и при единовременном взрыве большого количества способны уронить слабый сервер, чего легко избежать, например, при использовании плагина WorldGuard. Он работает в паре с WorldEdit и ставится после него.

Заключение

Вот мы и завершили краткий обзор оптимизации серверов Майнкрафт , их «узких» мест. Особой сложности при оптимизации ресурсов нет, но важно правильно спланировать максимальное количество игроков на один хост. И заранее создать карты, если это укладывается в стратегию продвижения. Отключать популярные блоки TNT лучше не стоит, их отсутствие может повлиять на привлекательность ресурса, особенно молодого.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *