Minecraft серверин түзүү жана орнотуу

Minecraft серверин түзүү жана орнотуу

Minecraft - бүгүнкү күндө эң популярдуу онлайн оюндарынын бири. Үч жылга жетпеген убакытта (биринчи расмий релиз 2011-жылдын күзүндө болгон) ал дүйнө жүзү боюнча миллиондогон күйөрмандарды тапты.

Оюнду иштеп чыгуучулар атайылап жыйырма жыл мурунку эң мыкты үлгүлөргө көңүл бурушат, ал кездеги көптөгөн оюндар, азыркы стандарттар боюнча, графикалык жактан примитивдүү жана колдонууга ыңгайлуулугу жагынан жеткилең эмес, бирок ошол эле учурда алар чындап эле кызыктуу болгон.

Бардык кумдук оюндар сыяктуу эле, Minecraft колдонуучуга чыгармачылык үчүн зор мүмкүнчүлүктөрдү берет - бул, чынында, анын популярдуулугунун негизги сыры.

Көп оюнчу оюндары үчүн серверлер оюнчулардын өздөрү жана алардын жамааттары тарабынан уюштурулат. Бүгүнкү күндө Интернетте иштеп жаткан он миңдеген оюн серверлери бар (мисалы, бул жерде тизмени караңыз).

Биздин кардарлардын арасында бул оюндун көптөгөн күйөрмандары бар жана алар оюн долбоорлору үчүн биздин маалымат борборлорубуздан жабдууларды ижарага алышат. Бул макалада биз серверди тандоодо кандай техникалык жагдайларга көңүл буруу керектиги жөнүндө сүйлөшөбүз
Карты.

Платформаны тандоо

Minecraft төмөнкү архитектуралык элементтерди камтыйт:

  1. сервер - оюнчулар тармак аркылуу бири-бири менен өз ара аракеттенүүчү программа;
  2. кардар - оюнчунун компьютеринде орнотулган серверге туташуу программасы;
  3. плагиндер - серверге жаңы функцияларды кошкон же эскилерин кеңейтүүчү толуктоолор;
  4. mods оюн дүйнөсүнө толуктоолор болуп саналат (жаңы блоктор, буюмдар, өзгөчөлүктөр).

Minecraft үчүн көптөгөн сервердик платформалар бар. Эң таралган жана популярдуу Vanilla жана Bukkit болуп саналат.

Vanilla Бул оюн иштеп чыгуучулардын расмий платформасы. Ал графикалык жана консолдук версияларда таратылат. Ванильдин жаңы версиясы дайыма Minecraftтын жаңы версиясы менен бир убакта чыгат.

Vanilla терс жагы анын ашыкча эс керектөө болуп саналат (бир оюнчу үчүн болжол менен 50 МБ). Дагы бир олуттуу кемчилик - плагиндердин жоктугу.

Буккит расмий Minecraft серверин жакшыртууга аракет кылган энтузиасттар тобу тарабынан түзүлгөн. Аракет абдан ийгиликтүү болду: Bukkit функционалдуулугу боюнча Vanillaга караганда бир топ кеңири, биринчи кезекте ар кандай модаларды жана плагиндерди колдоого байланыштуу. Ошол эле учурда, ар бир оюнчу үчүн эстутум азыраак керектелет - болжол менен 5-10 МБ.

Буккиттин кемчиликтери, ал иштеп жатканда өтө көп RAM ээлейт. Мындан тышкары, сервер канчалык көп иштесе, ошончолук көп эстутумду талап кылат (оюнчулар аз болсо да). Буккитти сервер катары тандап жатканда, анын жаңы версияларында, эреже катары, каталар бар экенин эстен чыгарбоо керек; Туруктуу версия адатта Minecraftтын расмий версиясы чыккандан кийин болжол менен 2-3 жумадан кийин пайда болот.

Кошумчалай кетсек, башка платформалар жакында популярдуулукка ээ болду (мисалы, Spout, MCPC жана MCPC+), бирок алар Vanilla жана Bukkit менен чектелген шайкештикке ээ жана модтарды өтө чектелген колдоого алышат (мисалы, Spout үчүн сиз модтарды нөлдөн баштап гана жаза аласыз). Алар колдонулган болсо, анда эксперименттер үчүн гана.

Оюн серверин уюштуруу үчүн биз Bukkit платформасын колдонууну сунуштайбыз, анткени ал эң ийкемдүү; Мындан тышкары, ал үчүн көптөгөн ар кандай модулдар жана плагиндер бар. Minecraft серверинин туруктуу иштеши көбүнчө аппараттык платформаны туура тандоодон көз каранды. Бул маселени кененирээк карап көрөлү.

Аппараттык талаптар

Minecraft сервери да, кардары да системалык ресурстарды талап кылат.
Аппараттык платформаны тандап жатканда, көп ядролуу процессор көп артыкчылык бербестигин эстен чыгарбоо керек: Minecraft серверинин өзөгү бир гана эсептөө жиптерин колдоно алат. Бирок экинчи өзөк пайдалуу болмок: кээ бир плагиндер өзүнчө жиптерде аткарылат жана Java да көп ресурстарды талап кылат...

Ошондуктан, Minecraft сервери үчүн бир ядролуу өндүрүмдүүлүгү жогору болгон процессорду тандаганыңыз жакшы. Күчтүү эки ядролуу процессор азыраак көп ядролуу процессорго артыкчылык берет. Адистештирилген форумдарда тактык жыштыгы 3 ГГц кем эмес процессорлорду колдонуу сунушталат.

Minecraft серверинин нормалдуу иштеши үчүн чоң көлөмдөгү RAM талап кылынат. Bukkit болжол менен 1 ГБ оперативдүү эстутумду ээлейт; Мындан тышкары, ар бир оюнчу үчүн, жогоруда айтылгандай, 5тен 10 МБга чейин бөлүнгөн. Плагиндер жана моддор да абдан көп эстутумду талап кылат. 30 - 50 оюнчусу бар сервер үчүн сизге кеминде 4 ГБ оперативдик эс керек болот.

Minecraft'та көп нерсе (мисалы, ошол эле плагиндерди жүктөө) файл тутумунун ылдамдыгынан көз каранды. Ошондуктан, SSD диски бар серверди тандоо артык. Шпинделдик дисктер кокустан окуу ылдамдыгы төмөн болгондуктан, ылайыктуу болушу күмөн.

Интернетке туташуу ылдамдыгы да чоң мааниге ээ. 40-50 адамдан турган оюн үчүн 10 Мб/с канал жетиштүү. Бирок, чоңураак minecraft долбоорун, анын ичинде веб-сайтты, форумду жана динамикалык картаны пландап жаткандар үчүн өткөрүү жөндөмдүүлүгү көбүрөөк каналга ээ болууну каалайт.

Кайсы конкреттүү конфигурацияны тандоо эң жакшы? From биз сунуш кылган конфигурациялар Төмөнкүлөргө көңүл бурууну сунуштайбыз:

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

Бул конфигурациялар 30-40 оюнчу үчүн Minecraft серверин түзүү үчүн абдан ылайыктуу. Кээ бир кемчилиги - SSD дисктеринин жоктугу, бирок биз дагы бир маанилүү артыкчылыгыбызды беребиз: эч кандай чектөөсүз же катышы жок кепилденген 100 Мб/с канал. Жогоруда саналган бардык конфигурацияларга буйрутма бергенде, орнотуу акысы жок.

Бизде дагы жемиштүү, бирок ошол эле учурда, албетте, кымбатыраак серверлер бар (бул конфигурацияларга заказ бергенде, орнотуу акысы да алынбайт):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 руб/ай;
  • 2x IntelXeon 5504, 2GHz, 12GB RAM, 3x1TB SATA, 9000 руб/ай.

Ошондой эле Intel Atom C2758 процессоруна негизделген SSD диски бар жаңы бюджеттик моделге көңүл бурууну сунуштайбыз: Intel Atom C2758 2.4 ГГц, 16 ГБ оперативдүү эс тутум, 2x240 ГБ SSD, айына 4000 рубль, орнотуу үчүн төлөм - 3000 рубль.

OC Ubuntu боюнча Bukkit серверин орнотуу жана иштетүү

Серверди орнотуудан мурун жаңы колдонуучуну түзүп, аны sudo тобуна кошолу:

$ sudo useradd -m -s /bin/bash <колдонуучунун аты> $ sudo adduser <колдонуучунун аты> sudo

Андан кийин, биз түзүлгөн колдонуучу серверге кошула турган сырсөздү орнотобуз:

$ sudo passwd <колдонуучунун аты>

Келгиле, серверге жаңы каттоо эсеби менен кайра туташып, орнотууну баштайлы.
Minecraft Java тилинде жазылган, андыктан Java Runtime Environment серверге орнотулушу керек.

Келгиле, жеткиликтүү пакеттердин тизмесин жаңырталы:

$ Sudo ап-Get өзгөртүү

Андан кийин төмөнкү буйрукту аткарыңыз:

$ sudo apt-get орнотуу default-jdk

Bukkitти орнотуу жана иштетүү үчүн, ошондой эле терминалдык мультиплексорду орнотуу сунушталат - мисалы, экран (башка терминалдык мультиплексорлорду да колдонсоңуз болот - биздин жалпы көрүнүш):

$ sudo apt-get орнотуу экраны

Эгер ssh аркылуу оюн серверине туташсак, экран керек болот. Анын жардамы менен сиз Minecraft серверин өзүнчө терминал терезесинде иштете аласыз жана ssh кардарын жапкандан кийин да сервер иштейт.

Келгиле, сервер файлдары сактала турган каталог түзөлү:

$ mkdir bukkit $ cd буккит

Андан кийин баралы Bukkit расмий сайтынын жүктөө баракчасы. Барактын жогорку оң жагында сервердин эң акыркы сунушталган түзүлүшүнө шилтемени көрө аласыз. Аны жүктөп алууну сунуштайбыз:

$ wget <сунушталган версия шилтемеси>

Эми экранды иштетели:

$sudo экраны

жана төмөнкү буйрукту иштетүү:

$ java -Xmx1024M -jar craftbukkit.jar -o жалган

Келгиле, колдонулган параметрлер эмнени билдирерин түшүндүрүп берели:

  • Xmx1024M - бир серверге оперативдүү эстутумдун максималдуу көлөмү;
  • jar craftbukkit.jar - сервердин ачкычы;
  • o false - пираттык кардарлардан серверге кирүүгө мүмкүндүк берет.

Сервер иштей баштайт.
Консолго токтотуу буйругун терүү менен серверди токтотсоңуз болот.

Серверди орнотуу жана конфигурациялоо

Сервер орнотуулары server.properties конфигурация файлында сакталат. Ал төмөнкү параметрлерди камтыйт:

  • генератор орнотуулары — супер жалпак дүйнөнү түзүү үчүн шаблонду орнотот;
  • уруксат-nether - Төмөнкү дүйнөгө көчүү мүмкүнчүлүгүн аныктайт. Демейки боюнча, бул жөндөө "true" деп коюлган. Эгерде "false" деп коюлса, анда Нидердеги бардык оюнчулар кадимки оюнчуга жылдырылат;
  • level-name - оюн учурунда колдонула турган карта файлдары бар папканын аталышы. Папка сервер файлдары жайгашкан каталогдо жайгашкан. Эгерде андай каталог жок болсо, сервер автоматтык түрдө жаңы дүйнөнү түзөт жана аны ошол эле аталыштагы каталогго жайгаштырат;
  • иштетүү-суроо - чындыкка коюлганда, серверди угуу үчүн GameSpy4 протоколун иштетет;
  • уруксат-учуу - Minecraft дүйнө жүзү боюнча учууга мүмкүндүк берет. Демейки маани false (учууга тыюу салынган);
  • server-port - оюн сервери колдоно турган портту көрсөтөт. Minecraft үчүн стандарттык порт 25565. Бул параметрдин маанисин өзгөртүү сунушталбайт;
  • level-type - дүйнөнүн түрүн аныктайт (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon - сервер консолуна алыстан кирүү мүмкүнчүлүгүн берет. Демейки боюнча ал өчүрүлгөн (жалган);
  • level-seed - деңгээл генератору үчүн киргизүү маалыматтар. Кокус дүйнөлөрдү түзө алуу үчүн бул талаа бош калтырылышы керек;
  • force-gamemode - серверге кошулган оюнчулар үчүн стандарттык оюн режимин орнотот;
  • server-ip - серверге туташуу үчүн оюнчулар колдоно турган IP дарегин көрсөтөт;
  • max-build-height - сервердеги имараттын максималдуу бийиктигин көрсөтөт. Анын мааниси 16га эселүү болушу керек (64, 96, 256 ж.б.);
  • spawn-npcs - айылдарда NPCлердин пайда болушуна уруксат берет (эгерде чын болсо) же тыюу салат (эгерде "жалган" болсо);
  • ак тизме - сервердеги оюнчулардын ак тизмесин колдонууну иштетет же өчүрөт. Эгер "true" деп коюлса, администратор ага оюнчунун лакап аттарын кол менен кошуп, ак тизме түзө алат. Эгер маани жалган болсо, анын IP дарегин жана портун билген каалаган колдонуучу серверге кире алат;
  • spawn-animals - эгер "true" деп коюлса, достук топтордун автоматтык түрдө уруктандырууга мүмкүндүк берет);
  • snooper иштетилген - серверге статистиканы жана маалыматтарды иштеп чыгуучуларга жөнөтүүгө мүмкүндүк берет;
  • хардкор - серверде Хардкор режимин иштетет;
  • texture-pac - оюнчу серверге туташканда колдонула турган текстура файлы. Бул параметрдин мааниси сервер менен бир каталогдо сакталган текстуралары бар zip архивинин аталышы;
  • онлайн режими - серверге кошулган колдонуучулардын премиум аккаунттарын текшерүүгө мүмкүндүк берет. Бул параметр "true" деп коюлса, серверге премиум эсеп ээлери гана кире алышат. Эгер эсепти текшерүү өчүрүлгөн болсо (жалган деп коюлган), анда каалаган колдонуучулар серверге кире алышат (анын ичинде, мисалы, лакап атын жасалмалаган оюнчулар), бул кошумча коопсуздук коркунучун жаратат. Текшерүү өчүрүлгөндө, сиз Minecraft оюнун локалдык тармак аркылуу Интернетке кирбестен ойной аласыз;
  • pvp - оюнчуларга бири-бири менен согушууга уруксат берет же тыюу салат. Бул параметр чын болсо, анда оюнчулар бири-бирин жок кыла алат. Эгер "false" деп коюлса, оюнчулар бири-бирине түздөн-түз зыян келтире алышпайт;
  • кыйынчылык - оюндун кыйынчылык деңгээлин белгилейт. 0дөн (эң оңой) 3кө чейин (эң татаал) маанилерди ала алат;
  • gamemode - серверге кирген оюнчулар үчүн кандай оюн режими коюла тургандыгын көрсөтөт. Төмөнкү маанилерди ала алат: 0 - Аман калуу, 1-Чыгармачылык, 2-Укмуштуу окуялар;
  • оюнчу-бос-ток убакыт — аракетсиздик убактысы (мүнөт менен), андан кийин оюнчулар серверден автоматтык түрдө ажыратылат;
  • max-players — сервердеги оюнчулардын максималдуу уруксат берилген саны (0дон 999га чейин);
  • spawn-monsters - (чындыкка коюлган болсо) душман топтордун уюлдук чыгышына мүмкүндүк берет;
  • gener-structures — түзүмдөрдү (казыналарды, чептерди, айылдарды) генерациялоого мүмкүндүк берет (чын)/өчүрүү (жалган);
  • көрүү-дистанция - ойноткучка жөнөтүлө турган жаңыланган бөлүктөрүнүн радиусун тууралайт; 3төн 15ке чейинки маанилерди ала алат.

Minecraft серверинин журналдары server.log файлына жазылат. Ал сервер файлдары менен бир папкада сакталат. Журнал тынымсыз чоңоюп, уламдан-улам диск мейкиндигин ээлеп турат. Сиз журнал айлануу деп аталган ыкманы колдонуу менен каротаж механизминин ишин тартипке келтире аласыз. Айлануу үчүн атайын утилита колдонулат - logrotate. Ал журналдагы жазуулардын санын белгилүү бир чекке чейин чектейт.

Сиз журналдын айлануусун конфигурациялай аласыз, ошентип журнал файлы белгилүү бир өлчөмгө жеткенде бардык жазуулар жок кылынат. Сиз ошондой эле бардык эски жазуулар тиешеси жок деп эсептелип, жок кылынган мөөнөттү орното аласыз.

Негизги айлануу орнотуулары /etc/logrotate.conf файлында жайгашкан; Мындан тышкары, ар бир колдонмо үчүн жеке орнотууларды түзө аласыз. Жеке орнотуулары бар файлдар /etc/logrotate.d каталогунда сакталат.

Келгиле, /etc/logrotate.d/craftbukkit текст файлын түзүп, ага төмөнкү параметрлерди киргизели:

/home/craftbukkit/server.log { 2 жумалык компресс missingok notifemty айлантуу }

Келгиле, алардын маанисин кененирээк карап көрөлү:

  • rotate параметри файлды жок кылуудан мурун айлануулардын санын аныктайт;
  • жума сайын айлануу жума сайын жүргүзүлөрүн көрсөтөт (башка параметрлерди да орното аласыз: ай сайын - ай сайын жана күн сайын - күн сайын);
  • компресс архивделген журналдарды кысылышы керек экенин белгилейт (тескери параметр nocompress);
  • missingok эч кандай журнал файлы жок болсо, ишти улантуу жана ката билдирүүлөрдү көрсөтпөө керек экенин көрсөтүп турат;
  • notifempty журнал файлы бош болсо, аны жылдырбоону белгилейт.

Сиз журналды айлантуу жөндөөлөрү жөнүндө көбүрөөк окуй аласыз бул жерде.

Оптималдаштыруу боюнча кеңештер

Келгиле, бул бөлүмдө оюн серверин оптималдаштырууга байланыштуу кеңештер берилет деп дароо эскертип көрөлү. Minecraft орнотулган серверди тактоо жана оптималдаштыруу маселелери бул макаланын алкагына кирбеген өзүнчө тема; кызыккан окурмандар интернеттен керектүү маалыматты оңой таба алышат.

Minecraft ойноодо пайда болгон эң кеңири таралган көйгөйлөрдүн бири бул артта калуулар - программа колдонуучунун киргизүүсүнө өз убагында жооп бербеген жагдайлар. Алар кардар тарабында да, сервер тарабында да көйгөйлөр себеп болушу мүмкүн. Төмөндө биз сервер тарабында пайда болгон көйгөйлөрдүн ыктымалдыгын азайтууга жардам бере турган сунуштарды беребиз.

Сервердин жана плагиндердин эстутумдун сарпталышын такай көзөмөлдөө

Эстутум керектөө адистештирилген административдик плагиндер аркылуу көзөмөлдөнсө болот - мисалы, LagMeter.

Плагин жаңыртуулары үчүн кабардар болуңуз

Эреже катары, жаңы плагиндерди иштеп чыгуучулар ар бир жаңы версия менен жүктү азайтуу үчүн аракет кылышат.

Окшош функциялары менен көптөгөн плагиндерди колдонбогонго аракет кылыңыз

Чоң плагиндер (мисалы, Essentials, AdminCMD, CommandBook) көбүнчө көптөгөн кичинекей плагиндердин функцияларын камтыйт. Мисалы, ошол эле Essential iConomy, uHome, OpenInv, VanishNoPacket, Kit плагиндеринин функцияларын камтыйт. Функционалдыгы бир чоңунун функционалдуулугу менен толук камтылган чакан плагиндер, көпчүлүк учурларда серверди ашыкча жүктөбөш үчүн алып салынышы мүмкүн.

Картаны чектеп, аны өзүңүз жүктөңүз

Эгерде сиз картаны чектебесеңиз, сервердеги жүктөм бир топ көбөйөт. Сиз плагин аркылуу картаны чектей аласыз WorldBorder. Бул үчүн, сиз бул плагинди иштетип, /wb 200 буйругун иштетишиңиз керек, андан кийин /wb fill буйругун колдонуп картаны сызыңыз.

Тартуу, албетте, көп убакытты талап кылат, бирок аны техникалык иштер үчүн серверди жаап, бир жолу жасаган жакшы. Ар бир оюнчу картаны тартса, сервер жай иштейт.

Оор плагиндерди тезирээк жана аз ресурсту талап кылган плагиндерге алмаштырыңыз

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 рублди түзөт.

Бул жерге комментарий калтыра албаган окурмандар бизге келүүгө чакырабыз блог.

Source: www.habr.com

Комментарий кошуу