Креирање и поставување на сервер за Minecraft

Креирање и поставување на сервер за Minecraft

Minecraft е една од најпопуларните онлајн игри денес. За помалку од три години (првото официјално издание се случи во есента 2011 година), тој доби милиони обожаватели ширум светот.

Развивачите на игри намерно се фокусираат на најдобрите примери од пред дваесет години, кога многу игри беа, според денешните стандарди, примитивни во поглед на графика и несовршени во однос на употребливоста, но во исто време беа навистина возбудливи.

Како и сите игри со песок, Minecraft му дава на корисникот огромни можности за креативност - ова, всушност, е главната тајна на неговата популарност.

Серверите за игри со повеќе играчи се организирани од самите играчи и нивните заедници. Денес постојат десетици илјади сервери за игри кои работат на Интернет (видете, на пример, списокот овде).

Има многу обожаватели на оваа игра меѓу нашите клиенти, а тие изнајмуваат опрема од нашите центри за податоци за гејмерски проекти. Во оваа статија ќе разговараме за тоа на кои технички точки треба да обрнете внимание при изборот на сервер
Minecraft.

Избор на платформа

Minecraft ги вклучува следните архитектонски елементи:

  1. сервер - програма преку која играчите комуницираат едни со други преку мрежата;
  2. клиент - програма за поврзување со серверот, инсталирана на компјутерот на играчот;
  3. приклучоци - додатоци на серверот кои додаваат нови функции или ги прошируваат старите;
  4. модовите се додатоци во светот на играта (нови блокови, ставки, карактеристики).

Постојат многу серверски платформи за Minecraft. Најчести и популарни се Ванила и Букит.

Ванила Ова е официјалната платформа од развивачите на игри. Дистрибуиран е и во графичка и во конзолна верзија. Новата верзија на Vanilla секогаш излегува во исто време со новата верзија на Minecraft.

Лошата страна на Vanilla е нејзината прекумерна потрошувачка на меморија (приближно 50 MB по играч). Друг значаен недостаток е недостатокот на приклучоци.

Букит беше создаден од група ентузијасти кои се обидоа да го подобрат официјалниот сервер на Minecraft. Обидот се покажа доста успешен: Bukkit е многу поширок по функционалност од Vanilla, првенствено поради поддршката на различни модови и додатоци. Во исто време, троши помалку меморија по играч - приближно 5-10 MB.

Недостатоците на Bukkit се тоа што зафаќа премногу RAM меморија кога работи. Покрај тоа, колку подолго работи серверот, толку повеќе меморија бара (дури и ако има малку играчи). При изборот на Bukkit како сервер, треба да имате на ум дека неговите нови верзии, по правило, содржат грешки; Стабилната верзија обично се појавува приближно 2-3 недели по објавувањето на официјалната верзија на Minecraft.

Покрај тоа, другите платформи неодамна добија популарност (на пример, Spout, MCPC и MCPC+), но тие имаат ограничена компатибилност со Vanilla и Bukkit и исклучително ограничена поддршка за модови (на пример, за Spout можете да пишувате модови само од нула). Ако се користат, тогаш само за експерименти.

За да организирате сервер за игри, препорачуваме да ја користите платформата Bukkit, бидејќи има најголема флексибилност; Покрај тоа, постојат многу различни модови и приклучоци за тоа. Стабилното функционирање на серверот Minecraft во голема мера зависи од правилниот избор на хардверска платформа. Ајде да го разгледаме ова прашање подетално.

Хардверски барања

И серверот и клиентот на Minecraft се многу барани за системските ресурси.
При изборот на хардверска платформа, треба да имате на ум дека процесорот со повеќе јадра нема да обезбеди голема предност: јадрото на серверот Minecraft може да користи само една нишка за пресметување. Второто јадро, сепак, би било корисно: некои приклучоци се извршуваат во посебни нишки, а Java исто така троши многу ресурси...

Затоа, за серверот Minecraft, подобро е да изберете процесор кој има повисоки перформанси со едно јадро. Помоќен двојадрен процесор ќе се претпочита од повеќејадрен процесор кој е помалку моќен. На специјализирани форуми, се препорачува да се користат процесори со часовна фреквенција од најмалку 3 GHz.

За нормално функционирање на серверот Minecraft, потребна е голема количина RAM меморија. Bukkit зафаќа приближно 1 GB RAM; дополнително, за секој играч, како што е споменато погоре, се доделуваат од 5 до 10 MB. Приклучоците и модовите исто така трошат доста меморија. Затоа, за сервер со 30 - 50 играчи, ќе ви требаат најмалку 4 GB RAM меморија.

Во Minecraft, многу (на пример, вчитување на истите приклучоци) зависи од брзината на датотечниот систем. Затоа, подобро е да изберете сервер со SSD-диск. Малку е веројатно дека дисковите со вретено ќе бидат соодветни поради малата брзина на читање по случаен избор.

Брзината на вашата интернет конекција е исто така од големо значење. За игра од 40-50 луѓе, доволен е канал од 10 Mb/s. Сепак, за оние кои планираат поголем проект за Minecraft, вклучувајќи веб-локација, форум и динамична мапа, многу е пожелно да имаат канал со поголем пропусен опсег.

Која специфична конфигурација е најдобро да се избере? Од конфигурации што ги нудиме Ви препорачуваме да обрнете внимание на следново:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 RUR/месец;
  • Intel Core 2 Quad Q8300 2.5 GHz, 6GB RAM, 2x500GB SATA, 3500 рубли/месец. — ја користиме оваа конфигурација за нашиот тест сервер MineCraft, на кој можете да играте токму сега (како да го направите ова е напишано подолу);
  • Intel Core i3-2120 3.3GHz, 8GB RAM, 2x500GB SATA, 3500 RUR/месец.

Овие конфигурации се сосема погодни за создавање сервер за Minecraft за 30-40 играчи. Недостаток е недостатокот на SSD-дискови, но даваме уште една важна предност: гарантиран канал од 100 Mb/s без никакви ограничувања или соодноси. Кога ги нарачувате сите конфигурации наведени погоре, нема такса за поставување.

Имаме и попродуктивни, но во исто време, природно, поскапи сервери (при нарачување на овие конфигурации, таксата за инсталација исто така не се наплаќа):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 руб/месец;
  • 2x IntelXeon 5504, 2GHz, 12GB RAM, 3x1TB SATA, 9000 рубли/месец.

Исто така, препорачуваме да обрнете внимание на новиот буџетски модел со SSD-уред заснован на процесорот Intel Atom C2758: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2x240 GB SSD, 4000 рубли / месец, плаќање за инсталација - 3000 рубли.

Инсталирање и водење на серверот Bukkit на OC Ubuntu

Пред да го инсталирате серверот, ајде да создадеме нов корисник и да го додадеме во групата sudo:

$ sudo useradd -m -s /bin/bash <корисничко име> $ sudo adduser <корисничко име> sudo

Следно, ќе ја поставиме лозинката под која креираниот корисник ќе се поврзе со серверот:

$ sudo passwd <корисничко име>

Ајде повторно да се поврземе со серверот со нова сметка и да ја започнеме инсталацијата.
Minecraft е напишан во Java, така што Java Runtime Environment мора да биде инсталирана на серверот.

Ајде да ја ажурираме листата на достапни пакети:

$ sudo apt-добие ажурирање

Потоа извршете ја следнава команда:

$ sudo apt-get install default-jdk

За да го инсталирате и стартувате Bukkit, исто така е препорачливо да инсталирате терминален мултиплексер - на пример, екран (исто така можете да користите други терминални мултиплексери - видете ја нашата Преглед):

$ sudo apt-get екран за инсталирање

Екранот ќе биде потребен ако се поврземе со серверот на играта преку ssh. Со негова помош, можете да го стартувате серверот Minecraft во посебен терминален прозорец, па дури и по затворањето на клиентот ssh, серверот ќе работи.

Ајде да создадеме директориум во кој ќе се складираат датотеките на серверот:

$ mkdir bukkit $ cd bukkit

После тоа да одиме на Страница за преземање на официјалната веб-страница на Bukkit. Во горниот десен дел од страницата можете да видите врска до најновата препорачана верзија на серверот. Препорачуваме да го преземете:

$ wget <врска за препорачана верзија>

Сега да го извршиме екранот:

$sudo екран

и извршете ја следнава команда:

$ java -Xmx1024M -jar craftbukkit.jar -o неточно

Да објасниме што значат користените параметри:

  • Xmx1024M - максимална количина на RAM меморија по сервер;
  • jar craftbukkit.jar - клуч на серверот;
  • o неточно - овозможува пристап до серверот од пиратски клиенти.

Серверот ќе се стартува.
Може да го запрете серверот со внесување на командата стоп во конзолата.

Поставување и конфигурирање на серверот

Поставките на серверот се зачувани во конфигурациската датотека server.properties. Ги содржи следните параметри:

  • генератор-поставки — го поставува шаблонот за генерирање суперрамен свет;
  • дозволи-ниту - ја одредува можноста за преселба во Долниот свет. Стандардно, оваа поставка е поставена на точно. Ако е поставено на неточно, тогаш сите играчи од Холандија ќе бидат преместени во нормалниот;
  • ниво-име - името на папката со датотеки со мапи што ќе се користат за време на играта. Папката се наоѓа во истиот директориум каде што се наоѓаат датотеките на серверот. Ако не постои таков директориум, серверот автоматски создава нов свет и го става во директориум со исто име;
  • enable-query - кога е поставено на точно, го активира протоколот GameSpy4 за слушање на серверот;
  • дозволи-лет - дозволува летови низ светот на Minecraft. Стандардната вредност е лажна (летовите се забранети);
  • сервер-порта - ја означува портата што ќе ја користи серверот на играта. Стандардна порта за Minecraft е 25565. Не се препорачува промена на вредноста на овој параметар;
  • ниво-тип - го одредува типот на светот (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon - овозможува далечински пристап до конзолата на серверот. Стандардно е оневозможено (неточно);
  • level-seed - влезни податоци за генератор на ниво. За да може да се креираат случајни светови, ова поле мора да се остави празно;
  • force-gamemode - го поставува стандардниот режим на игра за играчите што се поврзуваат со серверот;
  • server-ip - ја означува IP адресата што ќе ја користат играчите за поврзување со серверот;
  • max-build-height - ја означува максималната висина на зградата на серверот. Неговата вредност мора да биде множител на 16 (64, 96, 256, итн.);
  • spawn-npcs - дозволува (ако е поставено на точно) или забранува (ако е поставено на неточно) појавување на NPC во селата;
  • бела листа - овозможува или оневозможува користење на бела листа на играчи на серверот. Ако е поставено на точно, администраторот ќе може да креира бела листа со рачно додавање на прекари на играчите во неа. Ако е поставено на неточно, тогаш секој корисник кој ја знае неговата IP адреса и порта може да пристапи до серверот;
  • spawn-animals - овозможува автоматско мрестење на пријателски толпи ако е поставено на точно);
  • овозможено snooper - му овозможува на серверот да испраќа статистики и податоци до програмерите;
  • хардкор - овозможува Хардкор режим на серверот;
  • texture-pac - датотека со текстура што ќе се користи кога плеерот ќе се поврзе со серверот. Вредноста на овој параметар е името на зип архивата со текстури, која се чува во истиот директориум како и серверот;
  • онлајн режим - овозможува проверка на премиум сметките на корисниците кои се поврзуваат со серверот. Ако овој параметар е поставен на точно, само сопствениците на премиум сметки ќе можат да пристапат до серверот. Ако проверката на сметката е оневозможена (поставена на неточно), тогаш секој корисник може да пристапи до серверот (вклучувајќи, на пример, играчи кои го лажирале својот прекар), што создава дополнителни безбедносни ризици. Кога проверката е оневозможена, можете да играте Minecraft преку локална мрежа, без пристап до Интернет;
  • pvp - дозволува или забранува играчите да се борат меѓу себе. Ако овој параметар е точен, тогаш играчите можат да се уништат едни со други. Ако е поставено на неточно, играчите не можат да си нанесат директна штета еден на друг;
  • тежина - го поставува нивото на тежина на играта. Може да земе вредности од 0 (најлесно) до 3 (најтешко);
  • Gamemode - покажува каков режим на игра ќе биде поставен за играчите кои влегуваат на серверот. Може да ги земе следните вредности: 0 - Опстанок, 1-Креативен, 2-Авантура;
  • player-idle-timeout — време на неактивност (во минути), по што играчите автоматски се исклучуваат од серверот;
  • max-players — максималниот дозволен број на играчи на серверот (од 0 до 999);
  • spawn-monsters - овозможува (ако е поставено на точно) мрестење на непријателски толпи;
  • генерира-структури — овозможува (точно)/оневозможува (неточно) генерирање на структури (ризници, тврдини, села);
  • поглед-растојание - го прилагодува радиусот на ажурираните делови што треба да се испратат до плеерот; може да земе вредности од 3 до 15.

Дневниците на серверот на Minecraft се запишуваат во датотеката server.log. Се чува во истата папка како и датотеките на серверот. Дневникот постојано расте во големина, зафаќајќи се повеќе и повеќе простор на дискот. Можете да ја рационализирате работата на механизмот за логирање користејќи ја таканаречената ротација на дневникот. За ротација, се користи специјална алатка - логротат. Го ограничува бројот на записи во дневникот на одредена граница.

Можете да ја конфигурирате ротацијата на дневникот така што сите записи ќе се избришат веднаш штом датотеката за евиденција достигне одредена големина. Можете исто така да поставите период по кој сите стари записи ќе се сметаат за ирелевантни и избришани.

Основните поставки за ротација се наоѓаат во датотеката /etc/logrotate.conf; Покрај тоа, можете да креирате индивидуални поставки за секоја апликација. Датотеките со поединечни поставки се зачувани во директориумот /etc/logrotate.d.

Ајде да создадеме текстуална датотека /etc/logrotate.d/craftbukkit и да ги внесеме следните параметри во неа:

/home/craftbukkit/server.log { ротирајте 2 неделни компресирања missingok notifempty }

Да ги погледнеме нивните значења подетално:

  • параметарот rotate го одредува бројот на ротации пред да ја избришете датотеката;
  • неделно покажува дека ротацијата ќе се врши неделно (исто така можете да поставите други параметри: месечно - месечно и дневно - дневно);
  • compress одредува дека архивираните дневници треба да бидат компресирани (обратна опција е nocompress);
  • missingok покажува дека ако нема датотека за евиденција, треба да продолжите да работите и да не прикажувате пораки за грешка;
  • notifempty одредува да не се префрла лог-датотеката ако е празна.

Можете да прочитате повеќе за поставките за ротација на дневникот тука.

Совети за оптимизација

Веднаш да направиме резервација дека овој дел ќе обезбеди совети поврзани само со оптимизирање на серверот за игри. Прашањата за дотерување и оптимизирање на серверот на кој е инсталиран Minecraft се посебна тема што е надвор од опсегот на овој напис; заинтересираните читатели можат лесно да ги најдат информациите што им се потребни на Интернет.

Еден од најчестите проблеми што се јавуваат при играње на Minecraft се таканаречените заостанувања - ситуации кога програмата не реагира навремено на внесувањето на корисникот. Тие можат да бидат предизвикани од проблеми и на страната на клиентот и на страната на серверот. Подолу ќе дадеме препораки кои ќе помогнат да се намали веројатноста за појава на проблеми на страната на серверот.

Редовно следете ја потрошувачката на меморија на серверот и приклучоците

Потрошувачката на меморија може да се следи со помош на специјализирани административни додатоци - на пример, LagMeter.

Останете во тек за ажурирања на приклучоците

Како по правило, развивачите на нови приклучоци се стремат да го намалат оптоварувањето со секоја нова верзија.

Обидете се да не користите многу приклучоци со слична функционалност

Големите додатоци (на пр. Essentials, AdminCMD, CommandBook) многу често ја вклучуваат функционалноста на многу помали приклучоци. На пример, истиот Essential ги содржи функциите на приклучоците iConomy, uHome, OpenInv, VanishNoPacket, Kit. Мали приклучоци, чија функционалност е целосно покриена со функционалноста на еден голем, во повеќето случаи може да се отстранат за да не се преоптоварува серверот.

Ограничете ја картата и вчитајте ја сами

Ако не ја ограничите мапата, оптоварувањето на серверот значително ќе се зголеми. Можете да ја ограничите картата користејќи приклучок Светска граница. За да го направите ова, треба да го извршите овој приклучок и да ја извршите командата /wb 200, а потоа да ја нацртате картата со помош на командата за полнење /wb.

Цртежот, се разбира, ќе потрае многу време, но подобро е да се направи еднаш, затворајќи го серверот за техничка работа. Ако секој играч ја нацрта мапата, серверот ќе работи бавно.

Заменете ги тешките приклучоци со побрзи и помалку интензивни ресурси

Не сите додатоци за Minecraft може да се наречат успешни: тие често содржат многу непотребни и непотребни функции, а понекогаш и трошат многу меморија. Подобро е да се заменат неуспешните приклучоци со алтернативни (има доста од нив). На пример, приклучокот LWC може да се замени со Wgfix+MachineGuard, а приклучокот DynMap со Minecraft Overviewer.

Секогаш бришете го падот или инсталирајте приклучок за автоматско отстранување на капката

Капките во игрите се ставки што паѓаат кога толпа ќе умре или некои блокови се уништени. Складирањето и обработката на капките заземаат многу системски ресурси.

За да го направите серверот да работи побрзо, препорачливо е да го избришете падот. Ова најдобро се прави со помош на специјални приклучоци - на пример, NoLagg или McClean.

Не користете анти-измамници

На серверите за игри често се инсталираат таканаречени анти-измамници - програми кои ги блокираат обидите да се влијае на играта на нечесни начини.

Има анти-измамници и за Minecraft. Секој анти-измамник е секогаш дополнително оптоварување на серверот. Пожелно е да се инсталира заштита за фрлачот (кој, сепак, не обезбедува апсолутна гаранција за безбедност и лесно се крши - но ова е тема за посебна дискусија) и за клиентот.

Наместо заклучок

Сите инструкции и препораки се многу поефикасни доколку се поткрепени со конкретни примери. Врз основа на упатствата за инсталација погоре, создадовме сопствен сервер за Minecraft и ставивме некои интересни работи на мапата.

Еве што добивме:

  • Сервер Bukkit - стабилна препорачана верзија 1.6.4;
  • Приклучок за статистика - за собирање статистики за играчите;
  • Приклучок WorldBorder - за цртање и ограничување на картата;
  • Приклучок WorldGuard (+WorldEdit како зависност) - за заштита на некои области.

Ги покануваме сите да играат на него: да се поврзете, да додадете нов сервер и да ја внесете адресата mncrft.slc.tl.

Ќе ни биде мило ако го споделите вашето сопствено искуство за инсталирање, конфигурирање и оптимизирање на серверите на MineCraft во коментарите и кажете ни за кои модови и приклучоци ве интересираат и зошто.

Убави вести: Од 1 август, надоместокот за инсталација за посветени сервери со фиксна конфигурација е намален за 50%. Сега еднократната исплата за поставување е само 3000 рубли.

Читателите кои не можат да остават коментари овде се поканети да не посетат на блог.

Извор: www.habr.com

Додадете коментар