Vytvorenie a nastavenie servera Minecraft

Vytvorenie a nastavenie servera Minecraft

Minecraft je dnes jednou z najpopulárnejších online hier. Za necelé tri roky (prvé oficiálne vydanie prebehlo na jeseň 2011) si získal milióny fanúšikov po celom svete.

Vývojári hier sa zámerne zameriavajú na najlepšie príklady spred dvadsiatich rokov, kedy boli mnohé hry na dnešné pomery primitívnych z hľadiska grafiky a nedokonalých z hľadiska použiteľnosti, no zároveň boli skutočne vzrušujúce.

Rovnako ako všetky sandboxové hry, aj Minecraft poskytuje používateľovi obrovské príležitosti na kreativitu - to je v skutočnosti hlavné tajomstvo jeho popularity.

Servery pre hry pre viacerých hráčov organizujú samotní hráči a ich komunity. Dnes na internete fungujú desaťtisíce herných serverov (pozri napríklad zoznam tu).

Medzi našimi klientmi je veľa fanúšikov tejto hry, ktorí si prenajímajú vybavenie z našich dátových centier na herné projekty. V tomto článku si povieme, na aké technické body si treba dať pozor pri výbere servera
Minecraft.

Výber platformy

Minecraft obsahuje nasledujúce architektonické prvky:

  1. server - program, prostredníctvom ktorého hráči navzájom komunikujú cez sieť;
  2. klient - program na pripojenie k serveru nainštalovaný na počítači hráča;
  3. pluginy - doplnky na server, ktoré pridávajú nové funkcie alebo rozširujú staré;
  4. mody sú doplnky do herného sveta (nové bloky, predmety, funkcie).

Existuje veľa serverových platforiem pre Minecraft. Najbežnejšie a najobľúbenejšie sú Vanilka a Bukkit.

Vanilka Toto je oficiálna platforma od vývojárov hry. Je distribuovaný v grafickej aj konzolovej verzii. Nová verzia Vanilla vychádza vždy v rovnakom čase ako nová verzia Minecraftu.

Negatívom Vanilly je nadmerná spotreba pamäte (približne 50 MB na hráča). Ďalšou významnou nevýhodou je nedostatok pluginov.

Bukkit bol vytvorený skupinou nadšencov, ktorí sa pokúsili vylepšiť oficiálny server Minecraft. Pokus sa ukázal ako celkom úspešný: Bukkit má oveľa širšiu funkčnosť ako Vanilla, predovšetkým vďaka podpore rôznych modov a doplnkov. Zároveň spotrebuje menej pamäte na hráča – približne 5-10 MB.

Nevýhody Bukkitu spočívajú v tom, že pri spustení zaberá príliš veľa pamäte RAM. Navyše, čím dlhšie server beží, tým viac pamäte vyžaduje (aj keď je hráčov málo). Pri výbere Bukkitu ako servera by ste mali mať na pamäti, že jeho nové verzie spravidla obsahujú chyby; Stabilná verzia sa zvyčajne objaví približne 2-3 týždne po vydaní oficiálnej verzie Minecraftu.

Okrem toho si v poslednej dobe získali popularitu aj iné platformy (napríklad Spout, MCPC a MCPC+), ale majú obmedzenú kompatibilitu s Vanilla a Bukkit a extrémne obmedzenú podporu pre mody (napríklad pre Spout môžete písať mody iba od začiatku). Ak sa používajú, tak len na pokusy.

Na usporiadanie herného servera odporúčame použiť platformu Bukkit, pretože je najflexibilnejšia; Okrem toho existuje veľa rôznych modov a pluginov. Stabilná prevádzka servera Minecraft do značnej miery závisí od správneho výberu hardvérovej platformy. Pozrime sa na túto otázku podrobnejšie.

Hardvérové ​​požiadavky

Server aj klient Minecraft sú veľmi náročné na systémové zdroje.
Pri výbere hardvérovej platformy by ste mali mať na pamäti, že viacjadrový procesor neprinesie veľa výhod: jadro servera Minecraft môže používať iba jedno výpočtové vlákno. Druhé jadro by však bolo užitočné: niektoré pluginy sa spúšťajú v samostatných vláknach a Java tiež spotrebuje veľa zdrojov...

Preto je pre server Minecraft lepšie zvoliť procesor s vyšším jednojadrovým výkonom. Výkonnejší dvojjadrový procesor bude vhodnejší ako viacjadrový procesor, ktorý je menej výkonný. Na špecializovaných fórach sa odporúča používať procesory s taktovacou frekvenciou aspoň 3 GHz.

Pre normálne fungovanie servera Minecraft je potrebné veľké množstvo pamäte RAM. Bukkit zaberá približne 1 GB RAM; okrem toho je pre každého hráča, ako je uvedené vyššie, pridelených 5 až 10 MB. Doplnky a mody tiež spotrebúvajú pomerne veľa pamäte. Pre server s 30 - 50 hráčmi teda budete potrebovať aspoň 4 GB RAM.

V Minecrafte veľa (napríklad načítanie rovnakých pluginov) závisí od rýchlosti súborového systému. Preto je vhodnejšie zvoliť server s SSD diskom. Vretenové disky pravdepodobne nebudú vhodné kvôli nízkej rýchlosti náhodného čítania.

Veľmi dôležitá je aj rýchlosť vášho internetového pripojenia. Pre hru 40-50 ľudí stačí 10 Mb/s kanál. Avšak pre tých, ktorí plánujú väčší minecraft projekt, vrátane webovej stránky, fóra a dynamickej mapy, je veľmi žiaduce mať kanál s väčšou šírkou pásma.

Ktorú konkrétnu konfiguráciu je najlepšie zvoliť? Od konfigurácie, ktoré ponúkame Odporúčame vám venovať pozornosť nasledovnému:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 RUR/mesiac;
  • Intel Core 2 Quad Q8300 2.5 GHz, 6 GB RAM, 2 x 500 GB SATA, 3500 XNUMX rub/mesiac. — túto konfiguráciu používame pre náš testovací server MineCraft, na ktorom môžete hrať práve teraz (ako to urobiť je napísané nižšie);
  • Intel Core i3-2120 3.3GHz, 8GB RAM, 2x500GB SATA, 3500 RUR/mesiac.

Tieto konfigurácie sú celkom vhodné na vytvorenie servera Minecraft pre 30-40 hráčov. Určitou nevýhodou je nedostatok SSD diskov, no dávame ďalšiu dôležitú výhodu: garantovaný 100 Mb/s kanál bez akýchkoľvek obmedzení alebo pomerov. Pri objednaní všetkých konfigurácií uvedených vyššie neplatíte žiadny poplatok za nastavenie.

Máme aj produktívnejšie, no zároveň samozrejme drahšie servery (pri objednávke týchto konfigurácií sa tiež neúčtuje inštalačný poplatok):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 rub/mesiac;
  • 2x IntelXeon 5504, 2GHz, 12GB RAM, 3x1TB SATA, 9000 rub/mesiac.

Odporúčame tiež venovať pozornosť novému rozpočtovému modelu s jednotkou SSD založenou na procesore Intel Atom C2758: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2x240 GB SSD, 4000 3000 rubľov / mesiac, platba za inštaláciu - XNUMX XNUMX rubľov.

Inštalácia a spustenie servera Bukkit na OC Ubuntu

Pred inštaláciou servera vytvorte nového používateľa a pridajte ho do skupiny sudo:

$ sudo useradd -m -s /bin/bash <používateľské meno> $ sudo adduser <používateľské meno> sudo

Ďalej nastavíme heslo, pod ktorým sa vytvorený používateľ pripojí k serveru:

$ sudo passwd <používateľské meno>

Znova sa pripojte k serveru pod novým účtom a začnite s inštaláciou.
Minecraft je napísaný v jazyku Java, takže na serveri musí byť nainštalované prostredie Java Runtime Environment.

Poďme aktualizovať zoznam dostupných balíkov:

$ sudo apt-get update

Potom spustite nasledujúci príkaz:

$ sudo apt-get install default-jdk

Pre inštaláciu a spustenie Bukkitu je vhodné nainštalovať aj terminálový multiplexer – napríklad screen (môžete použiť aj iné terminálové multiplexory – viď naše Prehľad):

$ sudo apt-get inštalačná obrazovka

Obrazovka bude potrebná, ak sa pripojíme k hernému serveru cez ssh. S jeho pomocou môžete spustiť server Minecraft v samostatnom okne terminálu a server bude fungovať aj po zatvorení klienta ssh.

Vytvorme adresár, v ktorom budú uložené súbory servera:

$ mkdir bukkit $ cd bukkit

Potom poďme na Stránka na stiahnutie oficiálnej webovej stránky Bukkit. V pravej hornej časti stránky môžete vidieť odkaz na najnovšiu odporúčanú zostavu servera. Odporúčame stiahnuť:

$ wget <odkaz na odporúčanú verziu>

Teraz spustíme obrazovku:

$sudo obrazovka

a spustite nasledujúci príkaz:

$ java -Xmx1024M -jar craftbukkit.jar -o false

Vysvetlime si, čo znamenajú použité parametre:

  • Xmx1024M - maximálne množstvo pamäte RAM na server;
  • jar craftbukkit.jar - kľúč k serveru;
  • o false – umožňuje prístup na server pirátskym klientom.

Server sa spustí.
Server môžete zastaviť zadaním príkazu stop do konzoly.

Nastavenie a konfigurácia servera

Nastavenia servera sú uložené v konfiguračnom súbore server.properties. Obsahuje nasledujúce parametre:

  • generátor-nastavenia — nastaví šablónu pre generovanie superplochého sveta;
  • allow-nether - určuje možnosť presťahovania sa do Dolného sveta. Štandardne je toto nastavenie nastavené na hodnotu true. Ak je nastavené na false, potom budú všetci hráči z Netheru presunutí do normálneho;
  • level-name - názov priečinka s mapovými súbormi, ktorý bude použitý počas hry. Priečinok sa nachádza v rovnakom adresári, kde sú umiestnené súbory servera. Ak takýto adresár neexistuje, server automaticky vytvorí nový svet a umiestni ho do adresára s rovnakým názvom;
  • enable-query - ak je nastavené na true, aktivuje protokol GameSpy4 na počúvanie servera;
  • allow-flight - umožňuje lety po svete Minecraft. Predvolená hodnota je false (lety sú zakázané);
  • server-port - označuje port, ktorý bude používať herný server. Štandardný port pre Minecraft je 25565. Neodporúča sa meniť hodnotu tohto parametra;
  • level-type - určuje typ sveta (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon - umožňuje vzdialený prístup ku konzole servera. Štandardne je vypnutá (false);
  • level-seed - vstupné dáta pre generátor hladiny. Aby ste mohli vytvárať náhodné svety, toto pole musí zostať prázdne;
  • force-gamemode - nastavuje štandardný herný režim pre hráčov, ktorí sa pripájajú k serveru;
  • server-ip - označuje IP adresu, ktorú budú hráči používať na pripojenie k serveru;
  • max-build-height - označuje maximálnu výšku budovy na serveri. Jeho hodnota musí byť násobkom 16 (64, 96, 256 atď.);
  • spawn-npcs – povoľuje (ak je nastavené na true) alebo zakazuje (ak je nastavené na false) výskyt NPC v dedinách;
  • white-list - povolí alebo zakáže používanie bielej listiny hráčov na serveri. Ak je nastavená na hodnotu true, administrátor bude môcť vytvoriť bielu listinu tak, že do nej manuálne pridá prezývky hráčov. Ak je hodnota false, potom každý používateľ, ktorý pozná jeho IP adresu a port, môže pristupovať k serveru;
  • spawn-animals - umožňuje automatické spawnovanie priateľských mobov, ak je nastavené na true);
  • snooper-enabled - umožňuje serveru odosielať štatistiky a údaje vývojárom;
  • hardcore - povolí Hardcore režim na serveri;
  • texture-pac - súbor textúry, ktorý sa použije, keď sa prehrávač pripojí k serveru. Hodnota tohto parametra je názov zip archívu s textúrami, ktorý je uložený v rovnakom adresári ako server;
  • online režim - umožňuje kontrolu prémiových účtov používateľov pripájajúcich sa na server. Ak je tento parameter nastavený na hodnotu true, na server budú mať prístup iba držitelia prémiových účtov. Ak je overenie účtu zakázané (nastavené na hodnotu false), na server môžu pristupovať všetci používatelia (vrátane napríklad hráčov, ktorí sfalšovali svoju prezývku), čo vytvára ďalšie bezpečnostné riziká. Keď je kontrola vypnutá, môžete hrať Minecraft cez lokálnu sieť bez prístupu na internet;
  • pvp - umožňuje alebo zakazuje hráčom vzájomný boj. Ak je tento parameter pravdivý, hráči sa môžu navzájom zničiť. Ak je nastavená na hodnotu false, hráči si nemôžu navzájom spôsobovať priame poškodenie;
  • obtiažnosť – nastavuje úroveň obtiažnosti hry. Môže nadobúdať hodnoty od 0 (najjednoduchšie) do 3 (najťažšie);
  • gamemode - označuje, aký herný režim bude nastavený pre hráčov vstupujúcich na server. Môže nadobudnúť nasledujúce hodnoty: 0 – prežitie, 1 – kreativita, 2 – dobrodružstvo;
  • player-idle-timeout — čas nečinnosti (v minútach), po ktorom sú hráči automaticky odpojení od servera;
  • max-players — maximálny povolený počet hráčov na serveri (od 0 do 999);
  • spawn-monsters - umožňuje (ak je nastavené na true) spawnovanie nepriateľských mobov;
  • generovať štruktúry — umožňuje (pravda)/zakazuje (nepravda) vytváranie štruktúr (pokladnice, pevnosti, dediny);
  • vzdialenosť zobrazenia – upraví polomer aktualizovaných častí, ktoré sa majú odoslať do prehrávača; môže nadobúdať hodnoty od 3 do 15.

Protokoly servera Minecraft sa zapisujú do súboru server.log. Je uložený v rovnakom priečinku ako súbory servera. Veľkosť denníka neustále rastie a zaberá stále viac miesta na disku. Prácu mechanizmu ťažby dreva môžete zefektívniť pomocou takzvanej rotácie guľatiny. Na otáčanie sa používa špeciálny nástroj - logrotate. Obmedzuje počet záznamov v denníku na určitý limit.

Rotáciu denníka môžete nakonfigurovať tak, aby sa všetky záznamy odstránili hneď, ako súbor denníka dosiahne určitú veľkosť. Môžete tiež nastaviť obdobie, po ktorom budú všetky staré záznamy považované za irelevantné a vymazané.

Základné nastavenia rotácie sa nachádzajú v súbore /etc/logrotate.conf; Okrem toho môžete pre každú aplikáciu vytvoriť individuálne nastavenia. Súbory s individuálnymi nastaveniami sú uložené v adresári /etc/logrotate.d.

Vytvorme si textový súbor /etc/logrotate.d/craftbukkit a zadáme doň nasledujúce parametre:

/home/craftbukkit/server.log { striedať 2 týždenné kompresie chýbaok notifempty }

Pozrime sa na ich význam podrobnejšie:

  • parameter otočiť určuje počet otáčok pred odstránením súboru;
  • týždenný označuje, že rotácia sa bude vykonávať týždenne (môžete nastaviť aj ďalšie parametre: mesačne - mesačne a denne - denne);
  • komprimovať určuje, že archivované protokoly by sa mali komprimovať (opačná možnosť je nocompress);
  • missingok znamená, že ak neexistuje súbor denníka, mali by ste pokračovať v práci a nezobrazovať chybové hlásenia;
  • notifempty určuje, že sa nemá posúvať súbor denníka, ak je prázdny.

Môžete si prečítať viac o nastaveniach rotácie denníka tu.

Tipy na optimalizáciu

Okamžite si urobme rezerváciu, že táto časť bude poskytovať tipy týkajúce sa iba optimalizácie herného servera. Problémy s doladením a optimalizáciou servera, na ktorom je nainštalovaný Minecraft, sú samostatnou témou, ktorá presahuje rámec tohto článku; čitatelia, ktorí majú záujem, môžu ľahko nájsť potrebné informácie na internete.

Jedným z najčastejších problémov, ktoré vznikajú pri hraní Minecraftu, sú takzvané lagy – situácie, keď program nereaguje na vstup od používateľa včas. Môžu byť spôsobené problémami na strane klienta aj na strane servera. Nižšie uvádzame odporúčania, ktoré pomôžu znížiť pravdepodobnosť výskytu problémov na strane servera.

Pravidelne monitorujte spotrebu pamäte servera a doplnkov

Spotrebu pamäte je možné sledovať pomocou špecializovaných administračných pluginov – napr. LagMeter.

Zostaňte naladení na aktualizácie doplnkov

Vývojári nových doplnkov sa spravidla snažia znížiť zaťaženie s každou novou verziou.

Snažte sa nepoužívať veľa doplnkov s podobnou funkcionalitou

Veľké pluginy (napr. Essentials, AdminCMD, CommandBook) veľmi často obsahujú funkcionalitu mnohých menších pluginov. Napríklad ten istý Essential obsahuje funkcie doplnkov iConomy, uHome, OpenInv, VanishNoPacket, Kit. Malé pluginy, ktorých funkčnosť je úplne pokrytá funkcionalitou jedného veľkého, je vo väčšine prípadov možné odstrániť, aby nedošlo k preťaženiu servera.

Obmedzte mapu a načítajte si ju sami

Ak neobmedzíte mapu, zaťaženie servera sa výrazne zvýši. Mapu môžete obmedziť pomocou pluginu WorldBorder. Ak to chcete urobiť, musíte spustiť tento doplnok a spustiť príkaz /wb 200 a potom nakresliť mapu pomocou príkazu /wb fill.

Kreslenie, samozrejme, zaberie veľa času, ale je lepšie to urobiť raz a zatvoriť server pre technickú prácu. Ak každý hráč nakreslí mapu, server bude pracovať pomaly.

Vymeňte náročné doplnky za rýchlejšie a menej náročné na zdroje

Nie všetky pluginy pre Minecraft možno nazvať úspešnými: často obsahujú veľa nepotrebných a nepotrebných funkcií a niekedy spotrebúvajú aj veľa pamäte. Nepodarené pluginy je lepšie nahradiť alternatívnymi (je ich pomerne veľa). Napríklad doplnok LWC možno nahradiť Wgfix+MachineGuard a doplnok DynMap Minecraft Overviewer.

Vždy vymažte kvapku alebo nainštalujte doplnok, aby sa kvapka automaticky odstránila

Drops v hrách sú predmety, ktoré vypadnú, keď dav zomrie alebo sú zničené nejaké bloky. Ukladanie a spracovanie kvapiek zaberá veľa systémových prostriedkov.

Ak chcete, aby server pracoval rýchlejšie, odporúča sa vymazať drop. Najlepšie sa to robí pomocou špeciálnych pluginov - napríklad NoLagg alebo McClean.

Nepoužívajte anti-cheaty

Na herné servery sú často inštalované takzvané anti-cheaty - programy, ktoré blokujú pokusy o ovplyvnenie hry nečestným spôsobom.

Existujú aj anti-cheaty pre Minecraft. Akýkoľvek anti-cheat je vždy dodatočným zaťažením servera. Výhodnejšie je nainštalovať ochranu pre spúšťač (ktorý však neposkytuje absolútnu záruku bezpečnosti a ľahko sa prelomí - to je však téma na samostatnú diskusiu) a pre klienta.

namiesto záveru

Akékoľvek pokyny a odporúčania sa ukážu byť oveľa efektívnejšie, ak sú podporené konkrétnymi príkladmi. Na základe vyššie uvedených inštalačných pokynov sme vytvorili vlastný Minecraft server a umiestnili na mapu niekoľko zaujímavých vecí.

Tu je to, čo máme:

  • Bukkit server - stabilná odporúčaná verzia 1.6.4;
  • Štatistika plugin - na zhromažďovanie štatistík o hráčoch;
  • WorldBorder plugin - na kreslenie a obmedzenie mapy;
  • Plugin WorldGuard (+WorldEdit ako závislosť) - na ochranu niektorých oblastí.

Pozývame všetkých, aby si na ňom zahrali: pripojte sa, pridajte nový server a zadajte adresu mncrft.slc.tl.

Budeme radi, ak sa v komentároch podelíte o svoje skúsenosti s inštaláciou, konfiguráciou a optimalizáciou serverov MineCraft a poviete nám, o ktoré mody a pluginy máte záujem a prečo.

Skvelé správy: Od 1. augusta sa inštalačný poplatok za dedikované servery s pevnou konfiguráciou znížil o 50 %. Teraz je jednorazová platba za nastavenie iba 3000 XNUMX rubľov.

Čitatelia, ktorí tu nemôžu zanechať komentár, sú pozvaní, aby nás navštívili na adrese blog.

Zdroj: hab.com

Pridať komentár