Хеллоу!. Сегодня расскажу вам про создание сервера в майнкрафте,
Извините за неправильный порядок пунктов. Я надеюсь все открыли свои порты для серверов
---
Пару советов для открытия локальных серверов сделайте связку MAC и айпи вашего пк чтоб у вас был постоянный локальный ip
Этот гайд основан для людей уже которые имеют опыт хотябы неделю)
Не бойтесь Linux с помощью его вы получите максимальную производительность. Пример Windows кушает 13% CPU а Linux 1-0% CPU
1. Софт
Если вы хотите поднять сервер у себя на windows(важно) можете использовать radmin vpn
- Radmin VPN
Отключите брандмауэр на крайний случай чтоб у вас всё получилось вот гайд
Создайте сеть и скиньте логин\пароль сети вашим друзьям.
В настройках сервера server.properties находим строчку server-ip напишите ваш айпи который находится пред вашем ником
Должно получиться так server-ip=26.209.219.87 Затем запускайте сервер и скидывайте ваш ip то есть 26.209.219.87:25565 если у вас
- Белый айпи
В настройках сервера server.properties найдите строчку server-ip и введите 0.0.0.0. Это позволит использовать все IP адреса на вашем устройстве. Для проверки типа вашего IP адреса нажмите WIN+R и введите CMD. Затем введите ipconfig и найдите строчку с IPv4 Address. Если адрес начинается с 192.X.X.X.X, 10.X.X.X.X или 172.X.X.X.X, то у вас серый IP. Для того чтобы получить белый IP адрес, вы можете купить его у своего провайдера. Однако это может привести к проблемам с безопасностью, если вы не правильно настроите свой роутер. Например, если роутер не настроен правильно, то по вашему белому IP адресу можно будет получить доступ к настройкам вашего роутера. Все подробности найдете в интернете у нас тема не по настройке роутера.
- Как получить белый айпи
Если у вас есть серый айпи, вы можете использовать VPN, который дает вам специальный IP-адрес, используемый для туннелирования, а не для скрытия вашего IP-адреса. По собственному опыту я рекомендую использовать программу OpenVPN перед использованием. Важно открыть порты 1199 UDP/TCP. Вы также можете найти много бесплатных прокси с белым IP-адресом в Интернете, даже такие, для которых не требуется регистрация. Еще один простой способ - купить белый IP-адрес у вашего провайдера.
2. Хостинг
Вы можете использовать свой старый компьютер как домашний хостинг для игры с друзьями вот вам очень понятный гайд Используйте переводчик от Яндекса он может переводить видео в реальным времени и озвучивать. Если вы всё таки захотели использовать домашний сервер с ubuntu server-ом то вот вам простая CMS для ваших серверов ССЫЛОЧКА если при установке такой программы вы столкнулись с такой проблемой
internal/modules/cjs/loader.js:818
throw err;
^
То вам нужно обновить NodeJS
// Список команд чтобы обновить
sudo apt upgrade
sudo apt update
sudo npm install -g n
sudo npm install npm -g
sudo npm cache clean -f
sudo n stable
// Запускаем прогу
sudo apt install ufw
// перезапустите сервер
sudo ufw allow 25565
sudo ufw allow 3000
// Открываем порт локально чтоб никаких проблем не было
// ls - показывает список файлов
ls
cd {путь до программы}
npm install
sudo node app.js
Продолжим тему с этой панелькой
// Делаем доступ к панели из вне
cd {путь до программы}
sudo nano config.json
// Поменяйте значение lang на ru
// internet-access поменяйте на true. оно разрешит использовать панель в вашей локальной сети
// Нажмите CRTL+O
!! Нечего не меняйте
потом ENTER и затем CRTL+X
//
sudo node app.js
потом заходите в браузер введите ваш ip:3000 и пред вамими откроется панель.
Главный минус Домашних серверов Бесперебойная Работа. Ваш сервер не сможет работать 24/7 там где то интернет или свет отключится и бб вашему серверу и игрокам на пару часов. И банально ваш жесткий диск не для этого сделан он прослужит гораздо меньше чем вы бы использовали как обычный пк. Безопасность ваша локальная сеть легко рухнит при какой нибудь сильной аттакой пингами. Velocity и прочее возможно помогут но не так сильно
Любой хостинг в панели управления вам напишет ваш ip и порт и
3. Сервер Майнкрафт
1.Ядро
Прошу вас не использовать устаревшие или заброшенные ядра, так как они морально устарели и вы не получите для них поддержку. Примеры таких ядер: Craftbukkit/Bukkit/Spigot/Themos и другие. Наиболее популярными ядрами являются Paper, Pufferfish и Purpur. Для старых версий используйте Papermc, а для новых - Pufferfish и Purpur. Флаги для запуска вы можете получить по ссылке.
2. Оптимизация сервера
Начнём с конфига server.properties
// внимание тут будет описание
тут сама функция
// Поставьте на false если у вас сервер с модами где есть ранцы и тому подробное на полет
allow-flight=false
// Java Management Extensions (JMX) - это спецификация, которая позволяет универсальной системе управления мониторить и управлять Java-приложениями. Это позволяет вашей системе управления отслеживать состояние вашего приложения, поднимать уведомления, когда приложение требует внимания, а также изменять состояние приложения для устранения проблем.
// пожеланию
enable-jmx-monitoring=true
// принудительный белый список
enforce-whitelist=false
// Сервер будет отправлять игроку на рендер только те сущности, которые находятся недалеко от него. Чтобы снизить нагрузку на сервер, игрок должен задать минимальное значение расстояния, при котором сервер должен отправлять ему сущности (например, для брони на стойках).
// от 50 до 100
entity-broadcast-range-percentage=100
// Сервер будет автоматически выключен через определенное время (в тиках) при сильном залаге.
max-tick-time=1
// Сервер будет автоматически выключен через определенное время (в тиках) при сильном залаге. рекомендуем ставить 1 это сразу
network-compression-threshold=256
// Установка наибольшего значения позволит сэкономить на трафике, если у вас ограниченный месячный лимит. Однако, это может привести к большей нагрузке на процессор и медленнее игровой опыт для игроков с плохим интернетом.
// Значения 128/256/512
player-idle-timeout=0
// Время, после которого бездействующий игрок будет считаться сервером AFK, исчисляется в минутах.
prevent-proxy-connections=false
// Если ISP/AS, отправленный с сервера, отличается от того, который отправляется с сервера аутентификации Mojang Studios, то игрок будет кикнут.
rate-limit=0
// Устанавливает максимальное количество пакетов, которое пользователь может отправить до того, как будет выгнан. Установка значения 0 отключает эту функцию.
snooper-enabled=true
// Выключает отправку данных в Mojang.
use-native-transport=true
// Включает оптимизированную отправку пакетов.
// Ставьте true только если сервер стоит на Linux.
view-distance=10
// советую ставить от 3 до 8
теперь paper.yml
use-rgb-for-named-text-colors:
// Позволяет отображать цветную консоль сервера.
// по желанию
fix-entity-position-desync
// Баг синхронизации лежащего предмета у игрока и сервера означает, что игрок и сервер имеют разные версии лежащего предмета. Например, игрок может видеть предмет в одном месте, а сервер в другом. Чтобы исправить этот баг, необходимо синхронизировать лежащий предмет между игроком и сервером, чтобы они оба имели одинаковую версию предмета.
use-alternative-luck-formula=true
// использовать альтернативную формулу удачи более быстрее
worker-threads
// Укажите количество доступных вашему серверу ядер процессора
spigot.yml
save-user-cache-on-stop-only: true
bungeecord:
// ставьте на true если у вас связка серверов с Velocity или BungeeCore
netty-threads
// Определяет, сколько потоков процессора сервер будет использовать для обработки трафика.
messages:
whitelist: §8§l| §7На сервере включен белый лист
unknown-command: §8§l| §7Команда не найдена или введена неправильно
server-full: §8§l| §7Ошибка подключения к серверу §cСервер полон
restart: §8§l| §7Перезапуск сервера
merge-radius:
item: 4
exp: 6
// Радиусы в блоках, в которых одинаковые предметы/опыт будут соединяться в едино.
-- Гайд будет дополняться и дорабатываться