Не могу подключиться к своему серверу minecraft?
Не могу никак понять, почему, если ip белый статический, порт открыт и направлен правильно (так говорит PortForward), а сервер не запускается. В брандмауэре порты тоже настроил. При подключении в самой игре использую глобальный статический ip адрес и порт, который открыл в маршрутизаторе.
#Minecraft server properties #Fri Dec 03 01:32:05 MSK 2021 broadcast-rcon-to-ops=true view-distance=10 enable-jmx-monitoring=false server-ip= resource-pack-prompt= rcon.port=25575 gamemode=survival server-port=25565 allow-nether=true enable-command-block=false enable-rcon=false sync-chunk-writes=true enable-query=false op-permission-level=4 prevent-proxy-connections=false resource-pack= entity-broadcast-range-percentage=100 level-name=world rcon.password= player-idle-timeout=0 motd=Dzhigit Minecraft Server query.port=25565 force-gamemode=false rate-limit=0 hardcore=false white-list=true broadcast-console-to-ops=true pvp=true spawn-npcs=true spawn-animals=true snooper-enabled=true difficulty=easy function-permission-level=2 network-compression-threshold=256 text-filtering-config= require-resource-pack=false spawn-monsters=true max-tick-time=60000 enforce-whitelist=false use-native-transport=true max-players=20 resource-pack-sha1= spawn-protection=16 online-mode=false enable-status=true allow-flight=false max-world-size=29999984
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Thu Dec 02 23:24:51 MSK 2021 eula=true
start_server.bat
java -Xmx1024M -Xms1024M -jar server.jar nogui


Итог 1 и тот же:
Буду очень благодарен, если поможете.
- Вопрос задан более двух лет назад
- 950 просмотров
server.properties
![]()
Файл server.properties по умолчанию для Java Edition.
server.properties — это файл, в котором хранятся все настройки для многопользовательского ( Minecraft или Minecraft Classic) сервера.
При редактировании server.properties важно, чтобы использовалась та же структура, что и в оригинале, хотя порядок строк произвольный. Текст перед знаком равенства — это ключ, который нельзя изменять. Текст после знака равенства — это значение свойства, которое можно редактировать. Строки, начинающиеся с # , являются комментариями — изменение или удаление этих строк не влияет на игру.
После внесения изменений на сервер .properties , необходимо перезапустить сервер, чтобы они вступили в силу. Другой вариант — использовать команду /reload в консоли сервера или в игре, что также позволит перезагрузить изменения.
Если server.properties не перечисляет все свойства (например, если новая версия сервера добавляет новые свойства или файл не существует), то при запуске сервер перезаписывает файл server.properties с новыми перечисленными свойствами и установите для них значения по умолчанию.
Файл server.properties представляет собой обычный текстовый файл с кодировкой UTF-8, несмотря на то, что он расширение, и поэтому его можно редактировать с помощью любого текстового редактора, такого как Блокнот для Windows, TextEdit для Mac или nano и vim для Linux.
Расположение файла
Java Edition
Этот файл автоматически создается при первом запуске сервера (если он не существует).
| OS | Местоположение файла | Примечания |
|---|---|---|
| Windows | Тот же каталог, что и serve r.jar | |
| Linux |
Если проигрыватель запускает его из своего домашнего каталога ( /home/name ) файлы сервера создаются в/home/name. Следуйте этим рекомендациям, чтобы убедиться, что файлы сервера генерируются там, где их ожидал игрок.
- Выделите весь каталог для всех файлов сервера. ( Все может запутаться, если игрок этого не сделает ).
- Здесь нужно разместить server.jar игрока.
- Он должен быть в исполняемом файле проигрывателя $PATH
- Не забудьте добавить разрешение на выполнение в сценарий запуска (chmod + x имя_файла или используйте диспетчер папок)
- minecraft_server.sh
Bedrock Edition
Этот файл загружается с помощью bedrock_server.exe
OS Местоположение файла Windows Тот же каталог, что и bedrock_server.exe Linux Тот же каталог, что и bedrock_server server.properties
Это настройки по умолчанию для недавно установленного Minecraft server:
Java Edition
# Свойства сервера Minecraft # (отметка времени последней загрузки) enable-jmx-monitoring = falsercon.port = 25575level-seed = gamemode = Survivalenable- command-block = falseenable-query = falsegenerator-settings = level-name = worldmotd = Сервер Minecraftquery.port = 25565pvp = truegenerate-str uctures = truedifficulty = easynetwork-compress-threshold = 256max-tick-time = 60000max-Players = 20use-native-transport = trueonline-mode = trueenable-status = trueallow-flight = falsebroadcast-rcon-to-ops = trueview-distance = 10max-build-height = 256server-ip = allow-nether = trueserver-port = 25565 enable-rcon = falsesync-chunk-write = trueop-permission-level = 4prevent-proxy-connections = falseresource-pack = entity-broadcast-range- процент = 100rcon.password = player-idle-timeout = 0force-gamemode = falserate-limit = 0hardcore = falsewhite-list = falsebroadcast-console-to-ops = truespawn-npcs = truespawn-animals = truesnooper-enabled = truefunction-permission- level = 2level-type = defaultspawn-monsters = trueenforce-whitelist = falseresource-pack-sha1 = spawn-protection = 16max-world-size = 29999984
По умолчанию с 20w28a.
Bedrock Edition
server-name = Dedicated Server # Используется как имя сервера # Допустимые значения: Any stringgamemode = Survival # Устанавливает игровой режим для новых игроков. # Допустимые значения: "survival "," творческий "или" адвен " ture "сложно = легко # Устанавливает сложность мира. # Допустимые значения:" мирный "," легкий "," нормальный "или" жесткий "allow-cheats = false # Если true, то можно использовать читы, такие как команды. # Допустимые значения: "true" или "false" max-Players = 10 # Максимальное количество игроков, которые могут играть на сервере. # Допустимые значения: любое положительное целое число online-mode = true # Если true, то все подключенные игроки должны быть аутентифицированы Xbox Live. # Клиенты, подключающиеся к удаленным (не LAN) серверам, всегда будут требовать аутентификацию Xbox Live независимо от этого параметра. # Если сервер принимает подключения из Интернета, настоятельно рекомендуется включить онлайн-режим. # Допустимые значения: " true "или" false "white-list = false # Если true, то все подключенные игроки должны быть перечислены в отдельном файле whitelist.json. # Допустимые значения:" true "или" false "server-port = 19132 # Какой IPv4 порт сервер должен слушать. # Допустимые значения: целые числа в диапазоне [1, 65535] server-portv6 = 19133 # порт IPv6, который сервер должен слушать. # Допустимые значения: целые числа в диапазоне [1, 65535] view-distance = 32 # Максимально разрешенный просмотреть расстояние в количестве блоков. # Допустимые значения: Любое положительное целое число. tick-distance = 4 # Мир будет отмечен галочкой на таком расстоянии от любого игрока. # Допустимые значения: Целые числа в диапазоне [4, 12] player-idle -timeout = 30 # После того, как игрок простаивает в течение такого количества минут, он будет исключен. Если установлено значение 0, игроки могут бездействовать бесконечно. # Допустимые значения: любое неотрицательное целое число. Max-thread = 8 # Максимальное количество потоков, которые сервер будет пытаться использовать. Если установлено значение 0 или удалено, то он будет использовать как можно больше. # Допустимые значения: любое положительное целое число. Level-name = Bedrock level # Допустимые значения: Any stringlevel-seed = # Использовать для рандомизации мира # Допустимые значения: Любые строковые значения по умолчанию -player-permission-level = member # Уровень разрешений для новых игроков, присоединяющихся впервые. # Допустимые значения: "visitor", "member", "operator" texturepack-required = false # Заставить клиентов использовать пакеты текстур в текущем world # Допустимые значения: "true" или "false" content-log-file-enabled = false # Включает запись ошибок содержимого в файл # Допустимые значения: "true" или "false" Compression-threshold = 1 # Определяет наименьший размер необработанной сетевой полезной нагрузки для сжатия # Допустимые значения: 0-65535server-authoritative-motion = server-auth # Допустимые значения: "client-auth", "server-auth" # Включает принудительное перемещение сервера. Если "server-auth", сервер воспроизведет ввод локального пользователя на # сервере и отправит исправления, если позиция клиента не совпадает с позицией сервера. # Исправления будут происходить только в том случае, если для параметра "right-player-motion" установлено значение true.player -movement-score-threshold = 20 # Количество неконгруэнтных временных интервалов, необходимых для сообщения о ненормальном поведении. # Отключено server-authoritative-motion.player-motion-distance-threshold = 0.3 # Разница между позициями сервера и клиента, которая требует должно быть превышено до того, как будет обнаружено ненормальное поведение. # Отключено server-authoritative-motion.player-motion-duration-threshold-in-ms = 500 # Продолжительность времени, в течение которого позиции сервера и клиента могут быть не синхронизированы (как определено player-motion-distance-threshold) # до того, как увеличится счет аномального движения. Это значение определяется в миллисекундах. # Отключено server-authoritative-moving.correct-player-motion = false # Если true, позиция клиента будет скорректирована относительно позиции сервера, если оценка движения превысит порог.
По умолчанию с 1.16.100.04.
Minecraft свойства сервера
Java Edition
Ключ Тип Значение по умолчанию Описание allow-flight boolean false Позволяет пользователям используйте полет на сервере в режиме выживания, если у них установлен мод, обеспечивающий полет. При включенном разрешении полета гриферы могут стать более распространенными, потому что это облегчает их работу. В творческом режиме это не действует.
Если указан прежний номер сложности, он автоматически преобразуется в название сложности.
Чтобы включить JMX в среде выполнения Java, вам также необходимо добавить пару флагов JVM в запуск, как описано здесь.
Если установлено значение false, ответы от клиентов будут подавляться. Это означает, что он будет отображаться как офлайн, но по-прежнему будет принимать соединения.
Подробнее о 4 уровнях см. # Op-permission-level.
Если указан устаревший номер игрового режима, он автоматически преобразуется в название игрового режима.
Примечание. Подземелья все равно генерируются, если для этого параметра установлено значение false.
- Установка max-world-size на 1000 позволяет Игрок должен иметь границу мира 2000 × 2000.
- Установка max-world-size на 4000 дает игроку границу мира 8000 × 8000.
- MOTD поддерживает коды цвета и форматирования.
- MOTD поддерживает специальные символы, такие как «♥». Однако такие символы должны быть преобразованы в экранированную форму Unicode. Онлайн-конвертер можно найти здесь.
- Если MOTD превышает 59 символов, список серверов может сообщить об ошибке связи..
Примечание: Спецификация Ethernet требует, чтобы пакеты размером менее 64 байтов дополнялись до 64 байтов. Таким образом, установка значения ниже 64 может оказаться невыгодной. Также не рекомендуется превышать MTU, обычно 1500 байт.
- Нажмите «Окно»
- Enchant Item
- Обновить знак
- Копание игрока
- Блок игрока Размещение
- Изменение удерживаемого элемента
- Анимация (поворотный рычаг)
- Действие объекта
- Статус клиента
- Сообщение чата
- Использовать объект
Примечание: Непрямые источники урона, создаваемые игроками (такие как лава, огонь, тротил и в некоторой степени вода, песок и гравий), все еще наносят ущерб другим игрокам.
Обратите внимание, что (в некоторых версиях до 1.15.2) символы «:» и «=» необходимо экранировать обратной косой чертой (), например http ://somedomain.com/somepack.zip? someparam = somevalue
Размер файла пакета ресурсов не может превышать 100 МБ (до версии 1.15: 50 МБ (≈ 50,4 МБ) ). Обратите внимание, что успех или сбой загрузки регистрируется клиентом, а не сервером.
Примечание. Если пакет ресурсов отличается, при запуске сервера в консоли появляется желтое сообщение «Недопустимый sha1 для пакета ресурсов-sha1». Из-за природы хэш-функций вероятность возникновения ошибок мала, поэтому это последствия не имеют никакого эффекта.
Если у игрока большая задержка, рекомендуется выключить/установить значение false.
Этот параметр не действует, если сложность = 0 (мирный). Если сложность не = 0, монстр все еще может появиться из источника.
Если у игрока большая задержка, рекомендуется отключить это значение или установить значение false.
10 по умолчанию/рекомендуется. Если у плеера большая задержка, рекомендуется уменьшить это значение.
Если белый список включен, пользователи не в белом списке не могу подключиться. Предназначен для частных серверов, например, для реальных друзей или незнакомцев, тщательно выбранных в процессе подачи заявки.
false — Белый список не используется. true — файл whitelist.json используется для создания белого списка.
Примечание. Операции автоматически заносятся в белый список, и нет необходимости добавлять их в белый список.
Когда эта опция включена, пользователи, которые не присутствуют в белом списке (если он включен), удаляются с сервера после сервера перезагружает файл белого списка.
Bedrock Edition
Имя параметра Возможные значения Значение по умолчанию Когда оно используется Использовать Примечания имя-сервера Любая строка Выделенный сервер Всегда Используется как имя сервера Это имя сервера, отображаемое в списке серверов в игре. режим игры выживание, творчество, приключения выживание Всегда Устанавливает игровой режим для новых игроков. Применяется во время первого присоединения игрока к серверу. Изменение этого параметра не изменит режим игры для существующих игроков.. Значения соотносятся с целочисленными режимами игры следующим образом:
Разворачиваем проект серверов Minecraft

Minecraft – нечто большее, чем игра. До сих пор думаешь, что это очередная игра для детей? Вынужден опровергнуть твоё мнение. Эту игру используют, как в школах для развития детей, так и для воссоздания архитектурных объектов, улучшения безопасности на реальных улицах, изучения основ программирования, и, в конечном итоге, для простой релаксации. (Как и зачем Minecraft применяют в образовании).
Не очень люблю воду в текстах, поэтому буду краток. Название статьи: «Разворачиваем проект серверов Minecraft». Что будем делать? Запускать проект серверов Minecraft. Для чего? Для практики, для отвлечения, и, в конечном итоге, для небольшого (а может и большого) практически пассивного источника дохода.
- Начальные вложения: 65 150 рублей.
- Точка безубыточности: 130 шт.
- Срок окупаемости: 7 месяцев.
- Чистая прибыль: 9 600 руб./мес.
Внимание! Я не экономист! Прости, если я в чём-то буду ошибаться, ты всегда можешь меня поправить, я буду только рад
Начну, пожалуй, с основы. Нет, это не поиск хоста или же разработка самих сборок проекта. Это – оформление ИП. Естественно, если всё делать чисто, то все цифры, представленные в статье, смело можешь делить на 2.
На чём будет зарабатывать наш проект? На добровольных пожертвованиях. К сожалению, такой источник доходов придётся оформлять. Если рассмотреть наш небольшой «стартап», то по видам деятельности, в соответствии с классификатором ОКВЭД, он включает в себя:
- 63.12 – Деятельность web-порталов
- 62.09 — Деятельность, связанная с использованием вычислительной техники и информационных технологий, прочая
(если я не прав, то подправьте меня, пожалуйста)
Отлично. После того, как мы «оформили ИП», приступаем к шагам разработки.
Часть 1. Концепция проекта
На этом этапе мы должны полностью продумать «соль» нашего проекта. Безусловно, чтобы наш проект был конкурентоспособным, мысли о «выживании с донатом» нам придётся сразу выкинуть из головы. Ведь таких серверов слишком много. Слишком. Много. (рис. 1)

Проанализировав небольшое количество серверов в мониторингах, выводы получаются не совсем однозначные. Вот некоторые ключевые методы, которыми привлекают новых игроков (целевая аудитория которых в основном составляет 11-13 лет — по данным из опроса проекта «TeslaCraft») – таблица 1.
Таблица 1 – Выборка из топ-100 серверов РФ мониторингов (ключевые триггеры)
Средний онлайн (общий онлайн/кол-во серверов)

Давай попробуем разобрать каждый ключевой триггер.
1) «Бесплатный донат» — данная концепция подразумевает собой то, что потенциальный игрок, заходя на сервер, прописывает команду (самыми распространёнными из которых являются — /free, /hack) и взамен получает с определенным шансом бесплатную привилегию, возможности которой заранее предопределены настройками прав.
- лидирующее место по переходам и онлайну на серверах; (+7)
- провоцирование на покупку платных привилегий (под сомнениями). (+7)
- снижение мотивации у игроков на покупку привилегий; (-6)
- концепция сервера переходит в то, кому выпала привилегия круче, а не у кого больше алмазов в сундуке; (-4)
- большая «текучка» игроков. Переходов много, стабильности игроков – мало. (-4)
- основной контингент данных проектов – неплатежеспособная целевая аудитория (да, большинство комьюнити игроков и так не особо платежеспособная. Но в данном случае игроки заходят с целью получить платное – бесплатно.) (-6)
Общая оценка: solve(7+7-6-4-4-6) = -6
Краткий вывод: проекты с данной концепцией, в основном, долго не живут. 5-6 месяцев, край – год, и проект закрывается руководителем. (Далее открывает идентичным с похожим названием и той же концепцией). Основная цель данной концепции – получение прибыли. Но мы то здесь собрались с целью открытия конкурентноспособного проекта с хорошей репутацией, верно? Исключаем данный метод.
2) «Мини игры» — эта формулировка означает, что на сервере присутствуют дополнительные (иногда авторские) режимы. К примеру: BedWars, SkyWars, AmongUs и т.п (Все известные виды мини-игр, сборник ссылок, ведущих на платные/бесплатные ресурсы — http://rubukkit.org/threads/spisok-mini-igr-dostupnye-vsem.109473/)
- Большой (средне-стабильный) онлайн игроков; (+7)
- Лёгкая монетизация (продажа ресурсов, если это SkyBlock; продажа «бустов» — динамичные мини-игры) (+8)
- свобода разнообразия; (+6)
- удачное распределение серверных ресурсов (+2)
- Сложность настройки (если не брать во внимание разработку собственных плагинов для мини-игр — требуется хороших знаний в области разработки на языке Java) (-3)
- Сложность управления. К примеру, если поставить даже 3 мини-игры с несложной механикой, то в одиночку контролирование стабильности из «раз-два-и-готово» превратится в бесконечную беготню по скринам (под скрином имеется в виду – эффективное администрирование систем GNU/Linux, используя утилиту «screen») (-5)
- Дополнительная нагрузка на CPU за счёт развёртки нескольких отдельных серверов, каждый из которых будет запускать своё ядро (ядро — файл API сервера Майнкрафт, имеющее разрешение «.jar». В обычном представлении – файл, размером не менее 19Мб) (-4)
Общая оценка: solve(7+8+6+2-3-5-4)=11
Краткий вывод: очень надёжный способ раскрутки проекта Minecraft. Взять во внимание зарубежный проект «Hypixel», занимающее лидирующее место среди всех серверов (рис. 3). Но необходимо брать во внимание тот факт, что для уникальности проекта придётся изучать язык программирования. Частичку от этой концепции возьмём «для галочки».

1) «Моды». Можно считать, что данная концепция является отдельной ветвью. Как минимум, разработка лаунчера, панель, полноценного сайта-форума, сборок, многочисленных фиксов займёт очень много времени.
- уникальность (+8)
- лёгкость монетизации + удержание человека (+7)
- стабильность (+9)
- Сложность разработки – легче производство машин организовать (-9)
- Сложность привлечения ЦА. Нужно учитывать тот факт, что «клиенту» придётся как минимум зарегистрироваться на сайте, скачать отдельный набор файлов (в среднем вес каждой сборки для клиента начинается от 200Мб) (-4)
Общая оценка: solve(8+7+9-9-4)=11
В данном случае мы не можем рассматривать данную концепцию, так как нам в одиночку попросту физически не потянуть такое.
2) «Скайблок» – является одним из вариантов мини-игр. Грубо говоря – «10 чанков/человек».
- Лёгкость настройки (+5)
- Лёгкое удержание (+5)
- Режим не требователен к ресурсам (+6)
- Большое «поле» для монетизации (+5)
- У данной концепции ну слишком много конкурентов (-6)
- Снижение заинтересованности. Очень старый режим (-3)
Общая оценка: solve(5+5+6+5-6-3)=13
Концепция интересная, но брать мы её не будем.
3) «Большой онлайн» — вообще сомнительный метод привлечения. Иногда очень помогает начинающим проектам. Разбивать на плюсы/минусы не вижу смысла, так как в принципе не является какой-либо концепцией. Скорее фактор.
Советую использовать данный метод на начальном этапе, используя некоторые плагины, позволяющие добавить фантомных игроков на сервер (визуальный буст в MOTD)
4) «БедВарс» — принцип тот же, что и во втором пункте. Если глубоко «порыться» в интернете, то можно узнать, что именно этот режим (за исключением HungerGames) стал родоначальником всех остальных известных мини-игр.
Так как данный режим уже заезжен, то вместо него предлагаю взять мини-игру под названием «EggWars». Принцип абсолютно тот же, но вместо кровати как точка реинкарнации игрока, будет использоваться Яйцо Дракона. Берём.
5) «Оружие». Прошу прощения, но я категорически против таких методов привлечения. Да и в принципе данная концепция (добавление «пулялок») меня раздражает. Может кому-то и интересно такое будет – стрелять в игроков перерисованными текстурами обычных предметов под оружия, но нет. Данная концепция появилась ещё в далёком 2015 году с появлением версии Minecraft 1.5.2 (всеми известный «CrackShot.jar»). Да и сейчас данная характеристика сервера имеет наименьший средний онлайн из разобранных нами ранее.
Разобрали! Таким образом, берём мини-игру «SkyWars», добавляем туда щепотку доната, комбинируем с ванильным выживанием без правил (в простонародье – «Гриферский сервер»), и на сладкое режим – «Анархия» (что-то в роде концепции популярного сервера 2b2t).
Часть 2. Считаем затраты
Сразу развею миф о том, что «накатить плагины и всё готово» является рабочей схемой. Для игры с друзьями может быть. Для полноценного проекта готовьтесь умножать данную фразу в десятки, а то и в сотни раз.
Итак, считаем то, сколько же нам потребуется вложить средств. Сразу предупрежу, что будет всегда браться среднее значение, т.е (max-min)/2, окей?
1) Разработка сборки –6 650,00 руб.
1.1) Разработка некоторых уникальных плагинов, добавляющие несколько «изюминок» к нашему серверу. Так как мои знания в Java останавливаются на выводе информации о входе игрока в игру, то ищем кодеров в сфере Minecraft. Выделим порядка 3 650,00 руб.
1.2) Строители. Конечно, можно всегда скачать готовые карты для сервера (в основном – точки для появления игроков, хабы, карты для мини-игр), но такой подход несерьёзный. Выделим 3 000,00 руб.
1.3) Основную настройку сборки будем производить сами (ниже будет небольшой мануал), — 0 руб.
2) Разработка сайта – 0 руб. Так как существует немалое количество сервисов автодоната Minecraft, являющие условно бесплатной, то его разработкой особо заниматься мы не будем. Единственный минус – в качестве поощрения, сервис авто-доната будет забирать порядка 5-7% от каждой покупки. Безусловно, можно всё сделать самому, в интернете лежит достаточно исходников сайтов авто-доната, но мы должны помнить, что мы не кодеры. Если заказывать отдельный сайт, то это обойдётся порядка 3 500,00 – 5 000,00 руб.
3) Дизайн. И опять же, мы не художники и не дизайнеры. Но даже для крупного проекта нам не нужно иметь 100-балльный дизайн, мы не на выставке. Я взял нашёл художника на просторе «VK», 1 000,00 руб. и небольшой арт как главный виртуальный герой нашего проекта готов. (рис. 4)

Накидать небольшие баннеры и оформить страницу в VK не составит особого труда, поэтому нанимать дизайнера нам пока что не требуется (рис. 5.1, 5.2).


4) Хостинг. Гигантские дедики нам не нужны, поэтому вполне хватит порядка 5 000,00 руб. (за искл. VAT) на начальном этапе (рис. 6)

Возьмём сразу на 3 месяца вперёд, итого: 15 000, 00 руб.
5) Реклама. Всё. А тут мы встречаемся с первой и, наверное, самой большой трудностью. Раскрутка сервера – хоть и не тяжелая, но очень затратная в финансовом плане часть.
Самым эффективным способом привлечь трафик – рекламировать свой сервер в лаунчерах. 500 рублей? 3 тысячи? 10? А 120 не хотите?

Реклама в мониторинге тоже не такая уж и дешёвая. Чтобы оказаться на первом месте в одном из популярных мониторингов на месяц стоит порядка 69 000,00 рублей. Сервер на первом месте потратил 68 000,00 рублей, чтобы оказаться на первой позиции на месяц (рис. 8)

Конечно, никуда не делась и обычные методы рекламы – в VK, YouTube, спам. Насчёт первого Вам придётся немножко потрудиться, чтобы обойти правила биржи VK или же закупать напрямую у групп с подходящей целевой аудиторией (рис. 9)

Остаётся только YouTube и спам. Первый вариант затратный, но принесёт Вам стабильный трафик на протяжении всего времени. Спамом Вы привлечёте только аудиторию, заинтересованную в поиске «уязвимостей» сервера.
- По поводу мониторингов: прежде чем закупать рекламу в них, прочтите отзывы в интернете, они Вас крайне удивят (в плохом смысле).
Итого: затраты на рекламу составят около 42 500,00 руб. (YouTube, немножко мониторинга и 7-е место у менее известного мониторинга)
Часть 3. Разработка сборки.
Окей, у нас есть хостинг с полным root-доступом. В самом начале устанавливаем все необходимые пакеты:
- sudo apt-get install screen – обязательно, для удобного переключения между серверами
- sudo apt-get install openjdk-8-jre – обязательно, установка java
- sudo apt-get install htop – по желанию, отслеживание потребления ресурсов
- sudo apt-get install nano – по желанию, удобное редактирование файлов прямо в SSH.
Далее устанавливаем любой удобный для Вас FTP-клиент. Готово? Переходим к основной части – разработка сборки
Для начала определяемся с версиями Minecraft. Напомню, что мы выбрали 3 сервера: анархия, гриферство, и EggWars. Пусть анархия будет на 1.16.5+ (больше функционала), гриферство и EggWars на 1.12+ (более оптимизированные версии)
Всего понадобится 5 отдельных серверов:
- Velocity – прокси (аля BungeeCord, только более новая версия) для связки серверов между собой
- Hub – сервер-посредник, выполняющий роль перенаправления игроков на выбранный ими сервер
- Greif – основной сервер 1/3
- Anarchy – основной сервер 2/3
- MiniGames – основной сервер 3/3
Ругайте меня сколько хотите, но я начну по порядку. Velocity.
Velocity — это прокси-сервер Minecraft нового поколения, ориентированный на масштабируемость и гибкость. Быстрый вход в систему, быстрое переключение серверов, оптимизация для получения максимальной отдачи от аппаратного обеспечения Вашего сервера, устойчивость к атакам и защита от доступа злоумышленников к Вашим внутренним серверам — вот основные достоинства представляемого продукта. Velocity поддерживает некоторые из крупнейших в мире сетей Minecraft, но с не меньшим успехом работает и со множеством небольших сетей. Он может поддерживать до нескольких тысяч игроков на один прокси-сервер. Velocity работает с Paper, Sponge, Forge, Fabric и всеми версиями Minecraft от 1.7.2 до 1.17
Скачиваем ядро с официального сайта (рис. 10)

Запускаем его у себя на локальном компьютере (Да, у меня Windows). Создаём bat файл, содержащий следующий набор команд и флагов:
java -Xmx512M -Xms512M -Dfile.encoding=UTF-8 -jar Velocity.jar
Вот, что у нас получается после первого запуска:

Переходим к его настройке.
Специально для вас я перевел данный файл. Ознакомиться со всеми его значениями можете ниже:
# Версия конфига. Не трогайте данное значение config-version = "1.0" # Какой порт должен быть у прокси сервера? По умолчанию прокси работает на порту 25577. bind = "0.0.0.0:25577" # Какой должен быть MOTD? Это видят игроки, которые добавляют сервер в # свой список серверов. Устаревшие цветовые кода и новые поддерживаются. motd = " add3A Velocity Server" # Скролько должно отображаться максимально игроков? (У велосити нет лимита # на колличество игроков онлайн.) show-max-players = 500 # Нужно ли авторизовывать игроков по системе Mojang? По умолчанию отключено. online-mode = true # Запрет на использование Proxy. По умолчанию отключено prevent-client-proxy-connections = false # Должны ли мы пересылать IP-адреса и другие данные на внутренние серверы? # Доступные опции: # - "none": Пересылки не будет. Все игроки будут подключаться # через прокси-сервер и будут иметь не-лицензионные UUID. # - "legacy": Перенаправлять IP-адреса и UUID игроков в формате, совместимом с BungeeCord. # Используйте, если вы имеете сервер на версии 1.12 или ниже. # - "bungeeguard": Перенаправлять IP-адреса и UUID игроков в формате, поддерживаемом плагином # BungeeGuard Используйте это, если вы запускаете серверы, использующие Minecraft 1.12 # или ниже, и не можете закрыть порты. # - "modern": Перенаправляйте IP-адреса и UUID игроков как часть процесса входа в систему, # используя встроенную переадресацию Velocity. Применимо только для Minecraft 1.13 и выше. player-info-forwarding-mode = "NONE" # Если вы используете переадресацию IP-адресов modern или BungeeGuard, настройте здесь уникальный ключ. forwarding-secret = "DrzxR4N31gfB" # Сообщите, поддерживает ли ваш сервер Forge или нет. Если вы используете модифицированный # сервер, мы предлогаем включить это. # # Если в вашей сети постоянно запускается один пакет модов, рассмотрите возможность использования ping-passsthrough = "mods" # вместо этого для более удобного отображения в списке серверов. announce-forge = false # Если включено (по умолчанию значение false) и прокси-сервер находится в онлайн-режиме, Velocity удалит # любого существующего игрока, который находится в Сети, если будет предпринята повторная попытка подключения. kick-existing-players = false # Должен ли Velocity передавать запросы ping-запроса на серверный сервер? (перевод выполняля машина, претензии к ней) # Доступные опции: # - "disabled": Никакого прохода не будет сделано. Velocity.toml и server-icon.png будут # определять первоначальный ответ на запрос списка серверов. # - "mods": Передает в ответ только список модов с вашего внутреннего сервера. # Будет использоваться первый сервер в вашем списке попыток (или принудительный хост) # со списком модов. Если связаться с внутренними серверами невозможно, # Velocity не будет отображать никакой информации о модах. # - "description" Использует описание и список модов с внутреннего сервера. Первый сервер в # списке попыток (или принудительный хост), который отвечает, # используется для описания и списка модов. # - "all": Использует ответ внутреннего сервера в качестве ответа прокси-сервера. # Конфигурация Velocity используется, если не удалось связаться ни с одним сервером. ping-passthrough = "DISABLED" # Если не включено (значение по умолчанию равно true), IP-адреса игроков будут заменены на в логах enable-player-address-logging = true [servers] # Настройте свои серверы здесь. Каждый ключ представляет имя сервера, # а значение представляет IP-адрес сервера, к которому необходимо подключиться. lobby = "127.0.0.1:30066" factions = "127.0.0.1:30067" minigames = "127.0.0.1:30068" # В каком порядке мы должны пробовать серверы, когда игрок входит на сервер или его кикнули с сервера. try = ["lobby"] [forced-hosts] # Настройте свои принудительные хосты здесь. "lobby.example.com" = ["lobby"] "factions.example.com" = ["factions"] "minigames.example.com" = ["minigames"] [advanced] # Насколько большим должен быть пакет Minecraft, прежде чем мы его сожмем. Установка этого значения на ноль приведет к # сжатию всех пакетов, а установка значения -1 полностью отключит сжатие. compression-threshold = 256 # Какая степень сжатия должна быть выполнена (от 0 до 9). Значение по умолчанию равно -1, при котором используется # значение по умолчанию равно 6. compression-level = -1 # Как быстро (в миллисекундах) клиентам разрешается подключаться после последнего подключения? # По умолчанию это составляет три секунды. Отключите это, установив значение 0. login-ratelimit = 3000 # Укажите здесь настраиваемый тайм-аут для тайм-аутов подключения. Значение по умолчанию - пять секунд. connection-timeout = 5000 # Укажите здесь тайм-аут чтения для подключений. Значение по умолчанию равно 30 секундам. read-timeout = 30000 # Обеспечивает совместимость с ПРОКСИ-протоколом HAProxy. # Если вы не знаете, для чего это нужно, то не включайте его. haproxy-protocol = false # Включает поддержку быстрого открытия TCP на прокси-сервере. Требуется, чтобы прокси-сервер работал в Linux. tcp-fast-open = false # Включает поддержку канала обмена сообщениями плагина BungeeCord на Velocity. bungee-plugin-message-channel = true # Показывает запросы ping к прокси-серверу от клиентов. show-ping-requests = false # По умолчанию Velocity попытается корректно обрабатывать ситуации, когда пользователь # неожиданно теряет соединение с сервером без явного сообщения об отключении, пытаясь # вернуть пользователя обратно, за исключением случаев тайм-аутов чтения. Вместо этого # BungeeCord отключит пользователя. Вы можете отключить этот параметр, чтобы использовать # поведение BungeeCord. failover-on-unexpected-server-disconnect = true # Объявляет команды прокси для клиентов 1.13+. announce-proxy-commands = true # Позволяет вести лог команд log-command-executions = false [query] # Следует ли включать ответы на запросы GameSpy 4 или нет. enabled = false # Если запрос включен, на каком порту должен прослушиваться протокол запроса? port = 25577 # Это имя карты, которое сообщается службам запросов. map = "Velocity" show-plugins = falseТеперь перейдем непосредственно к настройке.
В первую очередь давайте определимся с типом «пересылки IP адресов» (как это перевел переводчик)
Собственно тут я готов дать вам совет. Если вы держите сервер на версиях 1.18+ — то как и указано, используйте режим player-info-forwarding-mode = «modern». Если же вы держите сервер на версиях 1.17.1 и ниже — вам НАСТОЯТЕЛЬНО рекомендуется использовать режим player-info-forwarding-mode = «bungeeguard».
Указываем данное значение соответственно тому, что для вас подходит. Далее нам нужно придумать ключ и указать его в поле forwarding-secret =
Если вы используете версии 1.18+, то данный ключ нужно будет выставить в paper.yml, найдя поле velocity-support, после чего активировав его, поставив enabled: true, после чего найти поле secret:, в нем поле default: » и вставить в кавычки придуманный вами ключ.
Если используете версии 1.17.1 и ниже — вам необходимо будет скачать плагин BungeeGuard и вставить придуманный вами код в его конфиг в поле allowed-tokens:
В файле spigot.yml есть строка bungeecord: false
Если вы настроили player-info-forwarding-mode = «modern» и в paper.yml включили поддержку велосити — данное поле должно оставаться false. Если же вы имеете значение bungeeguard — оно должно стоять на true!
Далее нам нужно настроить сервера. Тут всё до боли просто. В разделе servers у вас уже есть примеры настроенных серверов. Вам лишь нужно подставить свои значения и при необходимости переименовать сервера на свой вкус. Просто укажите имя сервера = «IP сервера:порт сервера» (порт сервера находится в server.properties и его можно менять).
После того как добавили все нужные вам сервера — укажите сервер, на который будет подключать игрока сразу после захода в графе try =
Теперь разберемся с некоторыми настройками, которые вам стоило бы изменить.
tcp-fast-open = false — поставьте на true, если вы запускаете сервер на Lunix-е, тоесть на VDS/VPS сервере.
announce-proxy-commands = true — поставьте на false, если не хотите, чтобы автокомплит выдавал игрокам команды вашего прокси.
ping-passthrough = «description» — поставьте значение на DISABLED, если хотите увидеть зеленую галочку совместимости с модами на клиенте. Я не знаю как это точно работает, но у меня работает именно так.
⦁ Пункт 3 — Команды Velocity.
По умолчанию Velocity имеет 5 команд:
/velocity (version|plugins|reload|dump) — показывает версию велосити|показывает плагины велосити|перезагружает прокси|выгружает дамп с информацией о прокси соответственно
/end — отключает прокси
/shutdown — то же, что и end
/glist — показывает, сколько игроков находится на прокси. /glist all — показывает, сколько игроков где находятся
/server — позволяет перемещаться между серверами (НЕ ДОЛЖНО БЫТЬ У ОБЫЧНЫХ ИГРОКОВ! см. пункт 4 раздел 2)
Права можете посмотреть тут — https://docs.velocitypowered.com/en/latest/users/commands.html
⦁ Пункт 4 — Полезные утилиты:
Тут я хочу рассказать о том какие утилиты вам практически необходимы при работе с Velocity и зачем они вам нужны.
1) Наверное самой важной частью является защита от ботов. Данную функцию выполняют два следующих плагина: LimboFilter+LimboApi. Собственно после их установки всё зависит от вас. Вы можете полностью кастомизировать анти-бот проверки. Какого-то определенного режима работы плагина я вам советовать не буду, ведь это индивидуально.
2) Весьма важно задуматься об ограничении игроков в использовании команд прокси сервера, т.к. если вы будете невнимательны — ваша авторизация будет пройдена а вы взломаны!
Всем без исключения игрокам на Velocity доступна команда /server. Заблокировать её так просто не получится, по этому вам нужно будет снять права с игроков на её использование. С этим справляется плагин LuckPermsVelocity. Как только установите его на прокси сервер — Пропишите /lpv group default permission set velocity.command.server false. Эта команда выдаст отрицательное право на использование команды /server всем игрокам по умолчанию и тем самым запретит её использование.
3) На велосити, как можно было увидеть, нет тех команд, которые есть в банже, по типу /send, /find и т.п. Для того чтобы их добавить — используйте плагин VelocityTools. Помимо данных команд он включает в себя полезнцые функции, по типу команды /lobby, возможность ограничить подключения на прямую с цифренного IP и прочее.
4) Также стоит задуматься о блокировке команд. Если вам необходимо ограничить прочие команды на прокси сервере — вам рекомендуется использовать плагин CommandWhitelist. По названию я думаю уже ясно, что он делает.
⦁ Пункт 5 — Полезные ссылки.
https://velocitypowered.com/wiki/ — вики велосити
https://docs.velocitypowered.com/en/latest/ — доки по велосити
https://docs.papermc.io/velocity — оф.страница велосити на сайте пейпера
Думаю теперь вам стало понятно, как настроить велосити и про то как с ним работать. Если вы решаете, что лучше выбрать — Bungee или Velocity — я без сомнения отвечу — Velocity. Именно он имеет большой потенциал и будет поддерживаться в будущем, когда Bungee уже давно не развивается и поддерживается лишь ремесленниками-энтузиастами, способными сделать конфеты из *кхм-кхм*.
Настройка Hub
Считаю, что это самая лёгкая настройка, которая у нас будет. Скачиваем ядро (советую PaperSpigot), поддерживающий версии 1.12+. Тоже запускаем, после чего соглашаемся с eula, затем снова запускаем и закрываем командой stop (or Ctrl+C->”Y”), появляется немалое количество файлов (рис. 12).

* Внимание! Ваша структура может отличаться. Например, у себя Вы найдёте папки “world_nether”, “world_the_end”, “logs” и так далее. Настраиваем файлы paper.yml, server.properties, spigot.yml в соответствии с документацией и здравым смыслом
В папку plugins добавляем плагины, которые, по Вашему мнению, будут подходящими и необходимыми (рис. 13)
Внимание! Все плагины искать строго на официальных ресурсах! (spigotmc, bukkit), иначе Вы рискуете подцепить backdoor.

1) BungeeGuard* – нужен, если хотите получить небольшую дополнительную защиту (за исключением закрытия портов) от игроков, которые с помощью подменой UUID и обхода авторизации проникают на игровые сервера под чужими никами.
2) Citizens* – является платным плагином, устанавливает модельки игроков, которые можно кастомизировать.
3) CommandNPC* – тоже платный, дополнение к Citizens.
4) DeluxeMenus* – настройка GUI-меню для большей интерактивности
5) eZProtector – защита от известных взломов и крашей (можно поискать замену), требует плагина ProtocolLib.
6) FiguresFix* – тоже небольшого вида защита от всех известных крашей, не конфликтует с №5. Требует плагина ProtocolLib.
7) HideStream – скрытие информации о входе/выходе игроков, есть хорошие альтернативы.
8) HolographicDisplays – плагин на голограммы, можно добавить информацию о серверах, к примеру.
9) HolographicExtension – необходимый плагин для работы №8.
10) Images* — плагин на вставки своих изображений
11) Lobby* – система лобби, которая включает в себя все необходимые функции – переадресация игроков, скрытие чата, смена игрового режима и т.п (является самописным), в интернете полно альтернатив.
12) PlaceholderAPI – это плагин для серверов Spigot, который позволяет владельцам серверов отображать информацию из различных плагинов в едином формате.
13) ProtocolLib* — Необходимая библиотека.
14) ViaVersion – плагин, с помощью которого игроки версиями выше 1.12 могли зайти на сервер.
Как Вы поняли – почти все плагины на Ваше усмотрение. Главный функционал hub-сервера – переадресация игроков на другие. Не забывайте, что игрок не должен иметь доступ к повреждениям карты (WorldGuard or gamemode adventure).
Настройка Grief
Ядро используем то же, что и в Hub. Настраиваем его, учитывая, что это будет игровой сервер, который будет «кушать» ресурсы в 10, а то и в 50 раз больше, чем hub.
Ищем необходимые плагины, учитывая, что главной особенностью сервера является обычное выживание, за исключением того, что особых правил нет. Это то место, где можно выплеснуть свои эмоции, пододвинув чужой сундук поршнем, украв из него все вещи.
Долго останавливаться на нём не буду, ведь по сути – это самое обыкновенное выживание.
Настройка Anarchy
Тут мы уже договорились, что используем более новую версию, а в следствии – другое ядро. Советую использовать более новые форки, к примеру PupperFish. (Очень хорошая статья, в которой описывается то, какой форк лучше выбрать — https://spigotmc.ru/resources/sovremennaja-optimizacija-sovremennyx-serverov.613/ , там же Вы найдёте советы по настройке и оптимизации сервера).
Набор плагинов будет немного отличаться. Основной особенностью является то, что приват регионов происходит не с помощью WorldGuard (/rg claim), а дополнительным плагином ProtectionStones (специальный блок для привата). В регионах работает PVP, динамит, взрывы, поршни и тому подобное. Советую почитать по поводу концепции 2b2t, а затем искать необходимые плагины для затачивания идеи.
На самом деле, в планах было описать ну очень подробно все этапы, но понял, что уместится всё это в немалого объёма книжке. Поэтому тонкости в настройке каждого плагина указывать не буду. За миллион рублей буду. Настройка сервера EggWars немного специфичная, поэтому посчитал, что описывать его настройку здесь не совсем уместно. В интернете много статей по поводу этого. К тому же, настройка зависит от плагина, который Вы используете. Обычно к плагину идёт подробный мануал по настройке.
Установка на хостинг
С помощью FTP-клиента переносим папки с серверами на хостинг.
После этого нам необходимо создать небольшие скрипты для запуска серверов. Вот небольшой шаблон, который включает бесконечный цикл, который обеспечивает запуск сервера, если вдруг он по какой-либо причине выключится. Также некоторые Aikar’s флаги:
#!/bin/bash while true do < ~/prometheus/jre1.8.0_331/bin/java -jar -Xms16G -Xmx16G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:G1NewSizePercent=40 -XX:G1MaxNewSizePercent=50 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=15 -XX:InitiatingHeapOccupancyPercent=20 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar -Duser.timezone=Europe/Moscow PaperSpigot.jar nogui echo "To stopping the server, press the key combination Ctrl + C!" echo "Reboot:" for i in 5 4 3 2 1 do echo "$i. " sleep 1 done echo "Reboot complete!" >done· PaperSpigot.jar – название Вашего файла ядра.
· -Xms16G -Xmx16G – количество памяти, которое Вы хотите выделить для сервера.
Далее запускаем их.
Таким образом мы запустим сервер hub. Повторяем данные действия ещё 4 раза, чтобы запустить все сервера. Обращу внимание на то, что запускать сервера желательно по степени значимости – от меньшего к большему. Anarchy-Grief-Hub-Velocity.
Настройка сайта
Отлично, теперь игроки могут заходить и играть. Остался сайт. Мы сошлись на том, что будем использовать сервис автодоната. Советовать какой-либо сервис не буду, так как на вкус и цвет фломастеры разные. В них присутствует удобная панель управления, настройки и кастомизации сайта. (рис. 14)

В принципе всё. Сервер запущен, реклама закуплена, сайт готов. В дополнение можем занять интересный домен и переадресовать его на сайт автодоната. Также можно создать поддомен для того, чтобы присвоить IP нашего сервера буквенное значение.
Выводы
В заключение могу сказать, что лучше не надо этим заниматься. Много времени занимает, много затрат, большая конкуренция, нет гарантированного дохода. Лучше вложить деньги во что-то другое.
- minecraft
- minecraft server
- minecraft сервер
Как настроить конфигурацию server.properties на сервере Майнкрафт
◌ generator-settings= — устанавливает шаблон генерации супер плоского мира.
◌ op-permission-level=число — изменяет права операторов.
1 — Операторы могут ломать / ставить блоки внутри радиуса защиты территории спавна.
2 — Операторы могут использовать команды /clear, , , , , , , и могут изменять командные блоки.
3 — Операторы могут использовать команды /ban, , , и .
4 — Операторы могут использовать команду /stop.
Оператор — это игрок имеющий группу оператор. Выдать оператора игроку можно командой /op ник игрока.
◌ allow-nether=true или false — включает/отключает нижний мир.
◌ level-name=название папки с миром — задаёт название папки с миром.
◌ enable-query=true или false — включает/отключает query для сервера. Если вы хотите, чтобы с интернета мониторинг определял стабильно онлайн вашего сервера ставьте true.
◌ allow-flight=true или false — разрешает/запрещает полёт на сервере в режиме Survival. На творческий режим это никак не влияет.
◌ prevent-proxy-connections=true или false — разрешает/запрещает заходить на сервер с помощью VPN.
◌ server-port=число — устанавливает порт сервера с помощью которого можно будет зайти на сервер. Рекомендуется ставить значение 25565.
◌ max-world-size=число — устанавливает границы мира.
◌ level-type=DEFAULT или FLAT или LARGEBIOMES или AMPLIFIED — определяет тип мира.
◌ enable-rcon=true или false — включает/отключает удаленную консоль сервера. Если вы не используете удаленную консоль сервера или не знаете что это такое — рекомендуем отключить.
◌ level-seed=число — устанавливается seed для мира. Если вы хотите случайный мир, оставьте значение пустым.
◌ force-gamemode=true или false — устанавливается стандартный тип режима (gamemode) при входе на сервер. Настроить тип режима можно в строчке gamemode.
◌ server-ip=ip адрес — устанавливает IP адрес сервера. Рекомендуется оставить значение пустым.
◌ network-compression-threshold=число — устанавливает скорость передачи пакетов. Если у вас старый одно ядерный сервер рекомендуем ставить значение 128. Для мощных серверов рекомендуется ставить значение 64.
◌ max-build-height=число — ставит ограничение высоты мира. Диапозон: от 64 до 256. Рекомендуется ставить значение 256. Если же вы хотите сократить высоту, то старайтесь придерживаться, чтобы число было кратно 16.
◌ spawn-npcs=true или false — разрешает/запрещает появление жителей (NPC) в деревне.
◌ white-list=true или false — включает/отключает white-list список. Если список включен, и вы хотите чтобы определенный игрок, смог зайти на сервер. Его нужно будет добавить в файле whitelist.json
◌ spawn-animals=true или false — разрешает/запрещает спавн мирных животных.
◌ hardcore=true или false — включает/отключает режим игры хардкор.
◌ snooper-enabled=true или false — разрешает/запрещает серверу отправлять некоторую статистику и данные разработчикам MineCraft.
◌ resource-pack-sha1=строка — позволяет настроить надежность отправки пакетов ресурс пака. Не является обязательным.
◌ online-mode=true или false — разрешает заходить на сервер игрокам без лицензии. Рекомендуется ставить false.
◌ resource-pack=путь к файлу — устанавливает путь к файлу с ресурс паком. При входе на сервер, игроку предложит установить ресурс пак, который вы указали.
◌ pvp=true или false — включает/отключает систему PvP на сервере.
◌ difficulty=число — Устанавливает уровень сложности на сервере.