Как сделать свой игровой сервер
Как создать свой игровой сервер?
Наверняка вы когда-то хотели, чтобы не вы играли на сервере, а у вас играли, играли на вашем сервере. Популярность игровых серверов всегда на высшем уровне, каждый раз выходят новые игры, моды, которые с нетерпением хочется опробовать. Помимо новых игр, есть игры и проекты, которые мы знаем еще с далеких 2000 годов, вспомните к примеру игру Counter-Strike 1.6, сколько же много было создано игровых серверов и как часто мы на них играли.
На данный момент снова замечен рост создания серверов, которые собирают множество игроков по всему миру.
Если вы действительно хотели бы создать свой игровой сервер, первое что Вам нужно сделать, это определиться с выбором сервера, где вы будете размещать файлы игрового сервера. Для этого обратим внимание на ADMINVPS — это российская компания предоставляющая услуги по аренде сервера, хостинга, VPS/VDS и т.д.
Для начала, давайте зайдем на сайт и выберем услугу VPS/VDS. После этого авторизуйтесь и пройдите процедуру регистрации VPS/VDS. На данном сайте процедура регистрации и оформления очень проста и займет у вас не более 10 минут. После оформления вы получите бесплатное администрирование, бесплатное бэкап место, круглосуточную поддержку, которая может Вам в решении ваших проблем.
Сайт предоставляет множество услуг, не только сервера, но и хостинг для ваших сайтов.
К примеру, когда вы закончите с установкой и настройкой вашего сервера, то следующем шагом следует сделать (по желанию) это создать сайт, посвященный вашему серверу, на сайте вы можете выкладывать обновления, изменения на вашем сервере, так же, можете создать форум, где игроки смогут общаться на разные темы по игре. Тем самым вы сделаете свой проект более живым.
Поэтому с хостингом Вам также может помочь ADMINVPS.
Почему именно VPS/VDS сервера?
Дело в том, что гораздо дешевле создать сервер именно в ручную, без использования сервисов, которые предоставляют игровые сервера. Готовые игровые сервера, это удобный сервис, но не дешевый, зачастую вы вряд ли сможете отбить затраты по обслуживанию вашего сервера, если даже будете продавать админки по 300р. Средняя цена игрового сервера это 850р в месяц, думаем, что на первых этапах это будет серьезно бить по карману и вы захотите закрыть Ваш сервер.
Но, если вы разместите свою или скаченную сборку, которая будет грамотно настроена, то вы сможете с экономить свои средства. Найти хорошую сборку не так и сложно, просто более тщательно осуществляйте поиск, и вы обязательно найдете подходящую сборку для Вас.
Также вы можете найти человека, который сможет Вам помочь в этом и создаст сборку под ваши запросы.
Но это также затраты, зато один раз и навсегда, после, если Вам нужно будет что-то доработать на сервере, вы сможете скачивать разные плагины и устанавливать их просто и быстро.
О том, как работать с плагинами, мы поговорим в другой статье.
После выбора сборки, скачайте и распакуйте свою сборку на Ваш сервер от ADMINVPS. Если у Вас возникнут трудности, вы сможете обратить в техническую поддержку вашего сервера, и Вам с радостью в этом помогут специалисты.
Переходите по ссылки и приобретайте свой хостинг – ADMINVPS
Как создать сервер с нуля для разных версий Minecraft
реклама
Всем привет! Сегодня я расскажу, как сделать на своём компьютере сервер, который закрыт в локальной сети (localhost). Многие игроки хотят создать свой сервер и начать над ним работать. Для начала нам надо определиться, на какой версии вы хотите создать сервер. Если вы хотите создать сервер версии 1.16.* и выше, то вам, пожалуй, требуется ядро yatopia, новое популярное ядро, оптимизированное лучше, чем paper на данных версиях. Если у вас есть новые плагины, и нет старых, на версии 1.9-1.13, то лучше использовать paper. Вообще есть много ядер, для модификаций игры, и для плагинов, или просто Vanilla ядро.
Вот пример нескольких ядер:
Теперь перейдём к установке. Создайте папку, где будет расположен ваш сервер. Далее скачайте своё ядро, которое вам больше нравится, поместите его в эту папку, и создайте текстовый документ с названием start. Затем откройте его. И введите следующие строки:
реклама
для копирования текста в фотографии:
реклама
реклама
(консоль может быть разной, зависит от версий игры)
Если моя статья вам понравится, то в следующей статье я расскажу, как открывать сервер у себя на компьютере для других пользователей с помощью одной программы.
(Показы на скриншотах версия пустой сборки spigot 1.12)
Я оставлю свою пустую сборку которую показывал примером в данной статье.
Поднимаем свой полноценный игровой Minecraft сервер с мини-играми. Часть 2. Устанавливаем карту для лобби сервера
Посмотреть, что в итоге получилось у меня: mc.piratebayserver.net
По любым вопросам пишите в Discord.
После публикации первой части статьи по установке своего Minecraft сервера, ко мне обратился один читатель Хабра. В письме он написал, что по неосторожности показал мою статью своим детям и ему пришлось пообещать сделать все, как написано. Теперь я, как отец двух детей, просто не имею морального права не закончить серию этих статей. Поэтому поехали.
В первой части мы создали виртуальный сервер, скачали и запустили наш первый Minecraft сервер на Paper. Кто проделал все шаги сразу после публикации статьи, прошу обратить внимание на некоторые исправления, которые последовали после. Так, по советам в комментариях, я создал отдельного пользователя на виртуальном сервере. Поэтому все дальнейшие действия после создания пользователя будут выполнятся из под него. Запуск приложений из под root пользователя является плохой практикой и это просто не безопасно, так как предоставляет запускаемым приложениям неограниченный доступ к серверу.
Теперь, когда у нас есть запущенный Minecraft сервер, не плохо было бы заменить сгенерированную карту мира на что-то более подходящее для лобби сервера. Лобби — это наш главный сервер, визитная карточка, он служит точкой входа для игроков. Именно отсюда игроки будут перенаправляться на другие наши сервера, такие, как сервера мини-игр или выживания.
Есть несколько способов импортирования карт на ваш сервер.
Самый простой — копирование папки с миром с вашего ПК в папку вашего сервера. Такой способ подходит, если вы создали карту самостоятельно в одиночной игре либо скачали из интернета в формате, готовом для использования. Как найти файлы карт, сохраненные игрой на вашем компьютере, можно посмотреть здесь.
Второй способ — импорт карт с расширением schematic. Это формат, разработаный сообществом для хранения частей карт и использования их в сторонних программах, таких как MCEdit, WorldEdit, FastAsyncWorldEdit и др.
Я буду использовать для импорта карт второй метод, так как он более трудоёмкий и знание этого процесса может пригодиться вам в будущем. Если вы планируете использовать готовые архивы миров, можете пропустить этот пункт и просто скопировать папку с миром в папку сервера
Так, например, все карты, которые я покупал для своего сервера, шли в формате shematic. Так же, этот метод позволяет редактировать импортированые карты, например вырезать или копировать отдельные части. Мне это понадобилось, когда в купленом файле шли 4 набора островов для BedWars и нужно было разбить их на части по одному набору на сервер.
При использовании файлов в формате schematic для создания карт сервера вам понадобится пустой мир, в который вы будете импортировать карту. Обычно я использую два вида пустых миров: первый — это мир с одним блоком, второй — это океан. Первая карта подходит для создания миров для игр с воздушными островами, такими как SkyBlock, BedWars, SkyWars и тд. Океан же подходит для создания карт с островами в воде.
В интернете вы можете найти туториалы, как создать пустой мир или океан. Я же, ради сокращения размера статьи, просто прикреплю созданные мной карты:
Для удобства дальнейшей установки и редактирования плагинов, а с моей строны для сокращения количества комманд в статье, устанавливаем FTP клиент для подключения к нашему серверу. Я установил FileZilla.
После установки FTP клиента, подключаемся к серверу и переходим в папку с плагинами. У меня это /home/dinikin/PirateBay/plugins. Для краткости и универсальности буду писать
Скачиваем jar файл плагина FastAsyncWorldEdit и копируем в папку plugins на сервере. Так же скачиваем мой архив пустой карты Void.zip, распаковываем и подкладываем папку Void в папку Minecraft сервера
Если вы запускали Minecraft сервер напрямую из терминала, то после закрытия сесии процесс автоматически завершится и сервер остановится. Что бы этого не происходило в дальнейшем, для запуска сервера мы будем использовать программу screen.
Заходим на сервер по ssh:
и проверяем, установлена ли программа:
если возвращается версия программы, значит она установлена, иначе устанавливаем:
и создаем файл start.sh для запуска Minecraft сервера:
со следующим содержимым:
Даем файлу права на выполнение:
Если сервер в вашей терминальной сессии на данном этапе был уже запущен, останавливаем его командой stop.
Перед повторным запуском нам нужно перенастроить наш сервер на новую карту. Открываем через FTP клиент файл
/PirateBay/server.properties и устанавливаем следующие значения параметров:
Если вы использовали карту из одиночной игры со своего ПК, либо скачали архив из интернета, тогда вместо Void укажите имя папки с файлами мира, предварительно скопировав их в папку
Дальше удаляем на сервере папки с ранее сгенерированными мирами:
world
world_nether
world_the_end
Их можно оставить, но я предпочитаю удалять, что бы они в будущем случайно не использовались сервером, если я не изменил в каком то плагине или файле конфигурации название мира по умолчанию.
И так, запускаем сервер через sh скрипт:
теперь, если ваша терминальная сессия оборвется, вы можете посмотреть список запущеных серверов командой:
а подключиться командой:
На самом деле, вместо PirateBay вы можете указать такое название процесса, по которому вам будет однозначно понятно, какой сервер запущен.
И так, мы устаноновили плагин для редактирования карт и перезапустили сервер. Подключаемся к нему из лаунчера игры.
Пустой мир загрузился и мы готовы импортировать какую нибудь карту для лобби. Я выбрал вот такую:
Давайте скачаем ее здесь и скопируем файл WaithSpawn.schematic в папку
Теперь в запущеном игровом клиенте нажимаем / для открытия командной строки и пишем команду schematic. Как видим по сообщению, у нас нет прав на выполнение этой команды.
По умолчанию, большинство устанавливаемых плагинов ограничивают доступ к своим командам, открывая его только для оператора, т.е. администратора сервера. Переключаеся на терминальную сессию нашего сервера и пишем комманду /op Dinikin (в вашем случае это будет ваш никнейм):
Мы предоставили права администратора нашему пользователю и тепрерь можем повторно выполнить команду /schematic в игре:
Как видите, права появились. Но нас больше интересует команда /schematic list
Теперь в списке появилась наша загруженная карта. Нажимаем на нее мышкой и выполняем предложенную команду:
Когда команда выполнилась, выполняем команду //paste. Как результат, карта импортировалась в наш мир:
Поздравляю, мы добавили нашу первую карту на сервер.
Что мы будем делать в следующей части:
Разработка сервера под игру, с чего начать?
Привет.
Такой вопрос, как создаются сервера для игр? Есть к примеру игра GTA SA я так понимаю сторонние разработчики сделали клиент, который как-то взаимодействует с игрой передает данные и тд, вроде понимаю, но как клиет все таки влияет на игру? Я ОЧЕНЬ загорелся идеей сделать сервер для игры GTA 5 сделать моды к нему и тд, но не могу понять с чего начать. Как мне управлять игрой клиентом? Серверную часть я вроде как представляю, вопрос-ответ.
К примеру сделать сервер майнкрафт не состовляет проблем. Скачал, настроил, запустил, тут такого не нашел 🙁 Но по сути такое мне и не нужно, я хочу сделать свой сервер с 0 и свои моды, воплотить свои идеи в жизнь!
Кто имеет опыт расскажите!
Средний 1 комментарий
Есть к примеру игра GTA SA я так понимаю сторонние разработчики сделали клиент
То, что может сторонний разработчик, это сделать моды для готового сервера, используя те инструменты, которые разработчик предложил, либо пытаясь «грабить» протокол взаимодействия. Моды бывают серверными и клиентскими, и возможны только в том случае, если у вас есть доступ к компьютеру, на котором запущен сервер и клиент (клиент у вас всегда есть, так и делают большинство модов).
К примеру сделать сервер майнкрафт не состовляет проблем.
Майнкрафт заметно проще, чем GTA. Хотя бы потому, что майнкрафт сделал один человек, а GTA сделали десятки программистов. И вот для майнкрафта можно сделать свой сервер,а не мод (хотя и моды к нему тоже есть). Как пример, отличная статья.
Запускаем бесплатный мощный сервер Minecraft в облаке
Minecraft — это не просто игра. Его используют в школах для развития детей, для воссоздания архитектурных объектов, улучшения безопасности на реальных улицах. Сегодня Cloud4Y поделится интересным способом запуска бесплатного сервера Minecraft в облаке.
В этой статье я покажу, как настроить и запустить свой собственный частный выделенный сервер Minecraft в облаке. Я уже писал об этом раньше, но в прошлый раз сервер был всего с одним ядром процессора и 1 ГБ оперативной памяти. Теперь же мы будем создавать сервер с 4 ядрами ЦП и 24 ГБ ОЗУ! Этого более чем достаточно, чтобы 20 человек могли играть с отличной производительностью (при этом ещё остаются ресурсы на создание дополнительного сервера под другие нужды). И, самое главное, всё это удовольствие абсолютно бесплатно.
Почему это круто
В этом посте я покажу, как можно запустить новую виртуальную машину Oracle, которая использует новый чип на базе Arm. Эти виртуальные машины имеют почти линейное масштабирование рабочих нагрузок, а также лучшее соотношение цены и производительности по сравнению с процессорами на базе x86. Они подходят для широкого спектра рабочих нагрузок, включая веб-приложения, кодирование медиафайлов, инференс ИИ и многое другое. Здорово, что Oracle сотрудничает с разными поставщиками технологий, благодаря чему серверная разработка на Arm стала проще.
Шаг 1: регистрируем вечно бесплатный аккаунт
Если у вас ещё нет учётной записи Oracle Cloud, вам необходимо создать аккаунт «всегда бесплатно». Перейдите на cloud.oracle.com/free и нажмите «Зарегистрироваться». Если у вас уже есть учётная запись, просто залогиньтесь.
Для регистрации вам нужно будет ввести ваше имя, фамилию и email. Вы получите письмо для подтверждения адреса электронной почты.
После подтверждения почты введите пароль (# 1) и подтвердите его (# 2). Затем выберите имя для своего облачного аккаунта (# 3). Вы наверняка захотите выбрать что-то уникальное и запоминающееся, потому что в дальнейшем будете использовать именно это имя учетной записи для входа в систему. Кроме того, нужно выбрать ближайший к вам домашний регион (# 4). Я живу в Джорджии в Соединенных Штатах, поэтому домашним регионом выбрал «Восточный Эшберн США».
Введите свой домашний адрес и нажмите «Продолжить».
Теперь вам нужно ввести и подтвердить номер мобильного телефона.
Получив проверочный код, введите его на странице регистрации.
Далее нужно ввести номер банковской карты. Это нужно для проверки пользователя. Номер карты будет храниться в Oracle для упрощения перехода на платную учётную запись, если вы в будущем решите это сделать. Не волнуйтесь, с вас 100% не будет взиматься никакая плата, пока вы не решите улучшить аккаунт до платного.
Ещё раз! С вас точно никогда не будет взиматься плата за «всегда бесплатную» учётную запись. Если вы хотите перейти на платную учётку, это нужно специально делать вручную!
После того, как вы прошли верификацию по платёжному средству, можно завершать процесс регистрации. Осталось только принять условия и нажать «Start my free trial» (Начать работу с бесплатной пробной версией).
Потерпите! Подготовка новой облачной учёной записи займёт всего несколько минут. Когда всё будет готово к работе, вы получите электронное письмо. После этого можно войти в систему и продолжить изучение данного руководства.
Шаг 2: создаём экземпляр виртуальной машины
Первое, что нужно сделать, чтобы ваш сервер Minecraft заработал, – запустить новую «виртуальную машину» (ВМ) в Oracle Cloud. Делается это очень просто, нужно кликнуть «Create a VM instance» (Создать экземпляр виртуальной машины) прямо на главной странице консоли Oracle Cloud.
Дайте своему экземпляру ВМ имя (я назвал свой «minecraft-server») и выберите «compartment» (Отсек). Отсеки — это способ группировать разные вещи. Вы можете оставить отсек, который стоит по умолчанию («root»). Также укажите «домен доступности» — для наших целей подойдёт любой!
Теперь прокрутите вниз до раздела «Image and shape» (Образ и конфигурация). Убедитесь, что выбран «Oracle Linux 7.9», а затем нажмите «Change shape» (Изменить конфигурацию).
В диалоговом окне выберите тип экземпляра для виртуальной машины — «Ampere» (ARM), а в разделе «Shape series» выберите конфигурацию «VM.Standard.A1.Flex». Укажите количество ЦП и ОЗУ, которые хотите получить на своём сервере. Для «всегда бесплатных» серверов ARM можно выделять до 4 OCPU и 24 ГБ оперативной памяти. Это означает, что вы можете сделать одну виртуальную машину с 4 OCPU и 24 ГБ RAM или 4 ВМ с 1 OCPU и 6 ГБ RAM на каждой (либо любую другую комбинацию в указанных пределах). Выбор будет зависеть от того, что у вас будет располагаться на виртуальной машине.
Совет: вы можете проверить требования к серверу для Minecraft, чтобы убедиться, что ваш сервер им соответствует.
В нашем случае я выделил 2 OCPU и 6 ГБ RAM. Этого должно быть достаточно для создания надежного сервера, где одновременно могут разместиться более 20 игроков. И у меня всё ещё остаются 2 OCPU и 18 ГБ оперативной памяти на «всегда бесплатном» аккаунте для запуска других виртуальных машин.
После того, как вы выбрали конфигурацию, убедитесь, что видите отметку «Всегда бесплатно».
Далее нужно выбрать виртуальную частную сеть (VCN). Если у вас уже есть существующий VCN с общедоступной подсетью, выберите его. Если нет, нажмите «Create new virtual cloud network» (Создать новую виртуальную частную сеть). Затем выберите «Create new public subnet» (Создать общедоступную подсеть) и оставьте имена по умолчанию. Наконец, убедитесь, что выбран параметр «Assign a public iPv4» (Назначить общедоступный IPv4-адрес). Это важно, так как в противном случае вы не сможете подключиться к этому серверу из интернета!
Теперь нам нужно привязать ключи SSH к этой виртуальной машине. Если вы знакомы с концепцией SSH-ключей и уже имеете открытый ключ, который хотите использовать, выберите «Upload public key files» (Загрузить файлы открытого ключа) и загрузите свой. Если для вас это незнакомая технология, считайте SSH-ключи уникальным набором идентификаторов, которые позволяют безопасно войти на ваш сервер. Нажмите «Generate SSH key pair» (Сгенерировать пару ключей SSH) и сохраните свои закрытый и открытый ключи на локальном компьютере. Мы будем использовать их чуть позже, чтобы войти на виртуальную машину.
Оставьте значения по умолчанию и нажмите «Создать».
Вы сразу же будете перенаправлены на страницу сведений о виртуальной машине. Ваш экземпляр ВМ будет в статусе PROVISIONING (предоставляется).
Примерно через 30-60 секунд состояние изменится на RUNNING (Запущен). Найдите свой IP-адрес и скопируйте его.
Шаг 3: подключаемся к работающей виртуальной машине в облаке
Чтобы установить Minecraft на нашу виртуальную машину, необходимо к ней удаленно подключиться. Если вы не знакомы с технологией SSH, я рекомендую вам для начала разобраться с ней и узнать, как установить (или использовать уже установленный) клиент SSH на ваш компьютер. Процесс может несколько различаться для разных операционных систем. Вот отличная статья с инструкциями под разные ОС.
Для подключения к своей виртуальной машине вы будете использовать имя пользователя opc (Oracle Public Cloud). На своём Mac я подключаюсь с помощью следующей команды (обратите внимание, я замазал IP-адрес своего сервера):
Шаг 4: устанавливаем Java
Поскольку сервер Minecraft работает на Java, сначала необходимо установить Java Development Kit (JDK) на виртуальную машину. Вы можете узнать, какая версия JDK доступна для установки, с помощью следующей команды:
Вы увидите что-то типа такого:
Для установки стоит выбрать самую последнюю версию (версию с наибольшим номером). Скопируйте имя пакета и установите его с помощью:
После завершения установки вы можете убедится в правильности версии с помощью команды:
В ответ вы получите что-то вроде:
Шаг 5: устанавливаем сервер Minecraft
А теперь попробуйте запустить сервер с помощью:
О нет, не сработало! Скорее всего вы увидите нечто подобное:
Шаг 6: откроем порты брандмауэра, чтобы разрешить общий доступ
Прежде чем мы попытаемся запустить сервер снова, давайте скорректируем настройки сети, чтобы игроки могли получить доступ к этому серверу через брандмауэр Oracle Cloud. Вернувшись к информации о виртуальной машине, кликните ссылку для созданной (или выбранной вами) подсети.
Выберите Security List по умолчанию.
Нажмите «Добавить правила входа».
Вам также необходимо открыть эти порты в брандмауэре виртуальной машины, поэтому выполните следующие команды в терминале SSH:
Шаг 7: запуск сервера
Выводы
Мы рассмотрели, как создать и запустить собственный бесплатный сервер Minecraft в Oracle Cloud. Но ведь есть масса других интересных проектов, которые вы можете реализовать с помощью своей «всегда бесплатной» учётной записи в облаке!
Что ещё интересного есть в блоге Cloud4Y
Подписывайтесь на наш Telegram-канал, чтобы не пропустить очередную статью. Пишем не чаще двух раз в неделю и только по делу.