A Minecraft napjaink egyik legnépszerűbb online játéka. Kevesebb, mint három év alatt (az első hivatalos megjelenésre 2011 őszén került sor) rajongók millióit szerzett szerte a világon.
A játékfejlesztők szándékosan a húsz évvel ezelőtti legjobb példákra koncentrálnak, amikor is sok játék a mai mércével mérve primitív volt a grafikát tekintve, és tökéletlen a használhatóság tekintetében, ugyanakkor igazán izgalmas volt.
Mint minden homokozójáték, a Minecraft is óriási lehetőségeket kínál a felhasználó számára a kreativitásra - valójában ez a népszerűségének fő titka.
A többszereplős játékok szervereit maguk a játékosok és közösségeik szervezik. Ma több tízezer játékszerver működik az interneten (lásd például a listát itt).
Ügyfeleink között sok rajongója van ennek a játéknak, és ők bérelnek felszerelést adatközpontjainkból játékprojektekhez. Ebben a cikkben arról fogunk beszélni, hogy milyen technikai szempontokra kell figyelni a szerver kiválasztásakor
Minecraft.
A platform kiválasztása
A Minecraft a következő építészeti elemeket tartalmazza:
- szerver - olyan program, amelyen keresztül a játékosok kölcsönhatásba lépnek egymással a hálózaton keresztül;
- kliens - egy program a szerverhez való csatlakozáshoz, telepítve a játékos számítógépére;
- bővítmények - a szerver kiegészítései, amelyek új funkciókat adnak hozzá, vagy bővítik a régieket;
- A modok a játékvilág kiegészítései (új blokkok, elemek, funkciók).
Számos szerverplatform létezik a Minecraft számára. A leggyakoribb és legnépszerűbb a vanília és a bukkit.
A Vanilla hátránya a túlzott memóriafogyasztás (kb. 50 MB lejátszónként). Egy másik jelentős hátrány a bővítmények hiánya.
A Bukkit hátránya, hogy túl sok RAM-ot foglal el futás közben. Ráadásul minél tovább fut a szerver, annál több memóriát igényel (még akkor is, ha kevés a játékos). Amikor a Bukkit szerverként választja, ne feledje, hogy az új verziói általában hibákat tartalmaznak; A stabil verzió általában körülbelül 2-3 héttel a Minecraft hivatalos verziójának megjelenése után jelenik meg.
Ráadásul az utóbbi időben más platformok is népszerűségre tettek szert (például Spout, MCPC és MCPC+), de ezek a Vanilla és a Bukkit kompatibilitása korlátozott, a modok támogatása pedig rendkívül korlátozott (például a Spouthoz csak a semmiből lehet modokat írni). Ha használják, akkor csak kísérletekre.
A játékszerver megszervezéséhez a Bukkit platform használatát javasoljuk, mivel ez a legrugalmasabb; Ezen kívül sok különböző mod és plugin létezik hozzá. A Minecraft szerver stabil működése nagyban függ a hardverplatform helyes megválasztásától. Tekintsük ezt a kérdést részletesebben.
Hardverkövetelmények
Mind a Minecraft szerver, mind a kliens nagyon igényes a rendszererőforrásokra.
A hardverplatform kiválasztásakor szem előtt kell tartani, hogy a többmagos processzor nem nyújt sok előnyt: a Minecraft szervermag csak egy számítási szálat tud használni. A második mag viszont jól jönne: egyes pluginok külön szálban futnak le, és a Java is rengeteg erőforrást fogyaszt...
Ezért a Minecraft szerverhez jobb olyan processzort választani, amely nagyobb egymagos teljesítményt nyújt. Az erősebb, kétmagos processzort előnyben kell részesíteni, mint a kevésbé erős többmagos processzort. Speciális fórumokon legalább 3 GHz-es órajelű processzorok használata javasolt.
A Minecraft szerver normál működéséhez nagy mennyiségű RAM szükséges. A Bukkit körülbelül 1 GB RAM-ot foglal el; ezen felül minden játékos számára, amint fentebb említettük, 5-10 MB van kiosztva. A pluginek és a modok is elég sok memóriát fogyasztanak. Egy 30-50 játékost tartalmazó szerverhez tehát legalább 4 GB RAM-ra lesz szüksége.
A Minecraftban sok (például ugyanazon bővítmények betöltése) függ a fájlrendszer sebességétől. Ezért célszerű SSD lemezzel rendelkező szervert választani. Az orsólemezek valószínűleg nem megfelelőek az alacsony véletlenszerű olvasási sebesség miatt.
Az internetkapcsolat sebessége is nagyon fontos. 40-50 fős játékhoz elég egy 10 Mb/s-os csatorna. Azonban azok számára, akik nagyobb minecraft projektet terveznek, beleértve egy weboldalt, fórumot és dinamikus térképet, nagyon kívánatos egy nagyobb sávszélességű csatorna.
Melyik konkrét konfigurációt érdemes választani? Tól től
- Intel Core 2 Duo E8400 3 GHz, 6 GB RAM, 2x500 GB SATA, 3000 RUR/hó;
- Intel Core 2 Quad Q8300 2.5 GHz, 6 GB RAM, 2x500 GB SATA, 3500 dörzsölés/hó. — ezt a konfigurációt használjuk a MineCraft tesztszerverünkhöz, amelyen már most is játszhat (ennek leírása alább olvasható);
- Intel Core i3-2120 3.3 GHz, 8 GB RAM, 2x500 GB SATA, 3500 RUR/hó.
Ezek a konfigurációk meglehetősen alkalmasak Minecraft szerver létrehozására 30-40 játékos számára. Hátránya az SSD meghajtók hiánya, de adunk még egy fontos előnyt: a garantált 100 Mb/s-os csatorna minden korlátozás és arány nélkül. A fent felsorolt összes konfiguráció megrendelésekor nincs beállítási díj.
Vannak termelékenyebb, de ugyanakkor természetesen drágább szervereink is (ezek a konfigurációk megrendelésekor a telepítési díj sem kerül felszámításra):
- 2x Intel Xeon 5130, 2 GHz, 8 GB RAM, 4x160 GB SATA, 5000 dörzsölés/hó;
- 2x IntelXeon 5504, 2 GHz, 12 GB RAM, 3x1 TB SATA, 9000 dörzsölés/hó.
Azt is javasoljuk, hogy figyeljen az új költségvetési modellre, amely az Intel Atom C2758 processzoron alapuló SSD-meghajtóval rendelkezik: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2x240 GB SSD, 4000 rubel/hó, telepítési díj - 3000 rubel.
A Bukkit szerver telepítése és futtatása OC Ubuntu rendszeren
A szerver telepítése előtt hozzunk létre egy új felhasználót, és adjuk hozzá a sudo csoporthoz:
$ sudo useradd -m -s /bin/bash <felhasználónév> $ sudo adduser <felhasználónév> sudo
Ezután beállítjuk azt a jelszót, amellyel a létrehozott felhasználó csatlakozni fog a szerverhez:
$ sudo passwd <felhasználónév>
Csatlakozzunk újra a szerverhez egy új fiókkal, és kezdjük el a telepítést.
A Minecraft Java nyelven íródott, ezért a Java Runtime Environment-et telepíteni kell a szerverre.
Frissítsük az elérhető csomagok listáját:
$ sudo apt-get frissítés
Ezután futtassa a következő parancsot:
$ sudo apt-get install default-jdk
A Bukkit telepítéséhez és futtatásához célszerű egy terminál multiplexert is telepíteni - például képernyőt (más terminál multiplexert is használhat - lásd
$ sudo apt-get telepítési képernyő
A képernyőre akkor lesz szükség, ha ssh-n keresztül csatlakozunk a játékszerverhez. Segítségével külön terminálablakban futtathatja a Minecraft szervert, és az ssh kliens bezárása után is működik a szerver.
Hozzunk létre egy könyvtárat, amelyben a szerver fájlok tárolódnak:
$ mkdir bukkit $ cd bukkit
Ezek után menjünk tovább
$ wget <ajánlott verzió hivatkozás>
Most futtassuk a képernyőt:
$sudo képernyő
és futtassa a következő parancsot:
$ java -Xmx1024M -jar craftbukkit.jar -o false
Magyarázzuk meg, mit jelentenek a használt paraméterek:
- Xmx1024M - szerverenkénti RAM maximális mennyisége;
- jar craftbukkit.jar - kulcs a szerverhez;
- o false – hozzáférést tesz lehetővé a szerverhez kalóz kliensektől.
A szerver elindul.
A kiszolgáló leállításához írja be a stop parancsot a konzolba.
A szerver beállítása és konfigurálása
A szerverbeállítások a server.properties konfigurációs fájlban tárolódnak. A következő paramétereket tartalmazza:
- generator-settings — beállítja a sablont egy szuperlapos világ létrehozásához;
- allow-nether - meghatározza az alsó világba való költözés lehetőségét. Alapértelmezés szerint ez a beállítás igaz. Ha hamisra van állítva, akkor az összes holland játékos a normál játékosra kerül;
- szintnév - a játék során használt térképfájlokat tartalmazó mappa neve. A mappa ugyanabban a könyvtárban található, ahol a szerver fájlok találhatók. Ha nincs ilyen könyvtár, a szerver automatikusan létrehoz egy új világot, és elhelyezi egy azonos nevű könyvtárba;
- enable-query – ha igazra van állítva, aktiválja a GameSpy4 protokollt a szerver figyeléséhez;
- engedélyezés-repülés – lehetővé teszi a repülést a Minecraft világában. Az alapértelmezett érték false (repülés tilos);
- szerver-port – a játékszerver által használt portot jelöli. A Minecraft szabványos portja 25565. Nem ajánlott ennek a paraméternek az értékét megváltoztatni;
- level-type - meghatározza a világ típusát (DEFAUT/FLAT/LARGEBIOMS);
- enable-rcon - lehetővé teszi a távoli hozzáférést a kiszolgálókonzolhoz. Alapértelmezés szerint le van tiltva (hamis);
- szint-mag - bemeneti adatok a szintgenerátorhoz. A véletlenszerű világok létrehozásához ezt a mezőt üresen kell hagyni;
- force-gamemode - beállítja a szabványos játékmódot a szerverhez csatlakozó játékosok számára;
- szerver-ip - azt az IP-címet jelzi, amelyet a játékosok a szerverhez való csatlakozáshoz használnak;
- max-build-height – egy épület maximális magasságát jelzi a szerveren. Értékének 16 többszörösének kell lennie (64, 96, 256 stb.);
- spawn-npcs - engedélyezi (ha igazra van állítva) vagy tiltja (ha hamisra van állítva) az NPC-k megjelenését a falvakban;
- white-list – engedélyezi vagy letiltja a játékosok fehérlistájának használatát a szerveren. Ha igazra van állítva, az adminisztrátor létrehozhat egy fehér listát úgy, hogy manuálisan adja hozzá a játékosok beceneveit. Ha az érték hamis, akkor bármely felhasználó hozzáférhet a szerverhez, aki ismeri az IP-címét és portját;
- spawn-animals – lehetővé teszi a barátságos csőcselék automatikus ívását, ha igaz);
- snooper-enabled - lehetővé teszi a szerver számára, hogy statisztikákat és adatokat küldjön a fejlesztőknek;
- hardcore - lehetővé teszi a hardcore módot a szerveren;
- texture-pac – textúrafájl, amelyet akkor használunk, amikor a lejátszó csatlakozik a szerverhez. Ennek a paraméternek az értéke a textúrákkal ellátott zip-archívum neve, amely ugyanabban a könyvtárban van tárolva, mint a szerver;
- online mód - lehetővé teszi a szerverhez csatlakozó felhasználók prémium fiókjainak ellenőrzését. Ha ez a paraméter igazra van állítva, csak a prémium számlatulajdonosok férhetnek hozzá a szerverhez. Ha a fiókellenőrzés le van tiltva (hamisra van állítva), akkor bármely felhasználó hozzáférhet a szerverhez (beleértve például azokat a játékosokat is, akik meghamisították becenevüket), ami további biztonsági kockázatokat jelent. Ha az ellenőrzés le van tiltva, a Minecraftot helyi hálózaton keresztül játszhatja, internet-hozzáférés nélkül;
- pvp - megengedi vagy tiltja a játékosoknak, hogy harcoljanak egymással. Ha ez a paraméter igaz, akkor a játékosok elpusztíthatják egymást. Ha hamisra van állítva, a játékosok nem okozhatnak közvetlen sebzést egymásnak;
- nehézség - beállítja a játék nehézségi szintjét. 0 (legkönnyebb) és 3 (legnehezebb) közötti értékeket vehet fel;
- gamemode – jelzi, hogy milyen játékmód lesz beállítva a szerverre belépő játékosok számára. A következő értékeket veheti fel: 0 - Túlélés, 1-Kreatív, 2-Kaland;
- player-idle-timeout — az inaktivitás ideje (percben), amely után a játékosok automatikusan lekapcsolódnak a szerverről;
- max-players — a játékosok maximális megengedett száma a szerveren (0 és 999 között);
- spawn-monsters – lehetővé teszi (ha igazra van állítva) az ellenséges csőcselék megjelenését;
- struktúrák generálása — lehetővé teszi (igaz)/letiltja (hamis) struktúrák (kincstárak, erődök, falvak) létrehozását;
- view-distance – beállítja a lejátszónak küldendő frissített darabok sugarát; 3 és 15 közötti értékeket vehet fel.
A Minecraft szervernaplók a server.log fájlba íródnak. Ugyanabban a mappában van tárolva, mint a szerverfájlok. A napló mérete folyamatosan növekszik, és egyre több lemezterületet foglal el. A naplózási mechanizmus működését az úgynevezett naplóforgatással ésszerűsítheti. A forgatáshoz egy speciális segédprogramot használnak - logrotate. Egy bizonyos határra korlátozza a bejegyzések számát a naplóban.
Beállíthatja a naplóforgatást úgy, hogy minden bejegyzés törölve legyen, amint a naplófájl elér egy bizonyos méretet. Beállíthat egy időszakot is, amely után minden régi bejegyzés irrelevánsnak minősül, és törlődik.
Az alapvető forgatási beállítások az /etc/logrotate.conf fájlban találhatók; Ezenkívül minden alkalmazáshoz egyedi beállításokat is létrehozhat. Az egyedi beállításokkal rendelkező fájlok az /etc/logrotate.d könyvtárban tárolódnak.
Hozzunk létre egy /etc/logrotate.d/craftbukkit szöveges fájlt, és írjuk be a következő paramétereket:
/home/craftbukkit/server.log { rotate 2 heti tömörítés hiányzik notifemty }
Nézzük meg részletesebben a jelentésüket:
- a rotate paraméter megadja a forgatások számát a fájl törlése előtt;
- heti jelzi, hogy a forgatás hetente történik (más paramétereket is beállíthat: havi - havi és napi - napi);
- A tömörítés megadja, hogy az archivált naplókat tömöríteni kell (a fordított opció a nocompress);
- A hiányok azt jelzi, hogy ha nincs naplófájl, folytassa a munkát, és ne jelenítsen meg hibaüzeneteket;
- A notifempty megadja, hogy ne helyezze át a naplófájlt, ha az üres.
A naplóforgatás beállításairól bővebben olvashat
Optimalizálási tippek
Azonnal tegyünk egy fenntartást, hogy ez a rész csak a játékszerver optimalizálásával kapcsolatos tippeket ad. A Minecraft telepített kiszolgáló finomhangolásával és optimalizálásával kapcsolatos problémák külön témakört képeznek, amely túlmutat e cikk hatókörén; az érdeklődő olvasók könnyen megtalálhatják a számukra szükséges információkat az interneten.
Az egyik leggyakoribb probléma, amely a Minecraft játéka során felmerül, az úgynevezett késések - olyan helyzetek, amikor a program nem reagál időben a felhasználói bevitelre. Mind a kliens oldalon, mind a szerver oldalon problémák okozhatják. Az alábbiakban olyan ajánlásokat adunk, amelyek segítenek csökkenteni a szerveroldali problémák előfordulásának valószínűségét.
Rendszeresen figyelje a szerver és a bővítmények memóriafogyasztását
A memóriafelhasználás nyomon követhető speciális adminisztrációs bővítményekkel – pl.
Maradjon velünk a bővítményfrissítésekről
Általános szabály, hogy az új bővítmények fejlesztői minden új verzióval csökkentik a terhelést.
Lehetőleg ne használjon sok hasonló funkciójú beépülő modult
A nagy beépülő modulok (pl. Essentials, AdminCMD, CommandBook) nagyon gyakran tartalmazzák sok kisebb bővítmény funkcióját. Például ugyanaz az Essential tartalmazza az iConomy, uHome, OpenInv, VanishNoPacket, Kit bővítmények funkcióit. A kis bővítmények, amelyek funkcionalitását teljesen lefedi egy nagy funkcionalitása, a legtöbb esetben eltávolíthatók, hogy ne terheljék túl a szervert.
Korlátozza a térképet, és töltse be saját maga
Ha nem korlátozza a térképet, a szerver terhelése jelentősen megnő. A térképet egy plugin segítségével korlátozhatja
A rajzolás természetesen sok időt vesz igénybe, de jobb, ha egyszer megteszi, bezárva a szervert a technikai munka miatt. Ha minden játékos megrajzolja a térképet, a szerver lassan fog működni.
Cserélje le a nagy teljesítményű bővítményeket gyorsabb és kevésbé erőforrásigényes bővítményekkel
Nem minden Minecraft bővítmény nevezhető sikeresnek: gyakran sok felesleges és felesleges funkciót tartalmaznak, és néha sok memóriát is fogyasztanak. A sikertelen beépülő modulokat jobb alternatívakra cserélni (elég sok van belőlük). Például az LWC beépülő modul helyettesíthető a Wgfix+MachineGuard-dal, a DynMap bővítmény pedig a Minecraft Overviewerrel.
Mindig törölje a cseppet, vagy telepítsen egy bővítményt a csepp automatikus eltávolításához
A játékokban a cseppek olyan tárgyak, amelyek akkor esnek ki, amikor egy maffia meghal, vagy néhány blokk megsemmisül. A cseppek tárolása és feldolgozása sok rendszererőforrást igényel.
A szerver gyorsabb működése érdekében célszerű a dropot törölni. Ezt a legjobb speciális bővítmények segítségével megtenni - például NoLagg vagy McClean.
Ne használj csalás elleni szereket
Az úgynevezett csalásellenes programokat gyakran telepítik a játékszerverekre – olyan programok, amelyek blokkolják a játék tisztességtelen módon történő befolyásolását.
A Minecrafthoz is vannak csalás elleni szerek. Minden csalás elleni védelem mindig további terhelést jelent a szerveren. Előnyösebb védelmet telepíteni az indítóra (ami azonban nem ad abszolút garanciát a biztonságra és könnyen feltörhető - de ez egy külön megbeszélés témája) és a kliens számára.
Ahelyett, hogy egy következtetés
Bármilyen utasítás és ajánlás sokkal hatékonyabbnak bizonyul, ha konkrét példákkal támasztják alá. A fenti telepítési utasítások alapján elkészítettük a saját Minecraft szerverünket, és felraktunk néhány érdekességet a térképre.
Íme, amit kaptunk:
- Bukkit szerver – stabil ajánlott 1.6.4-es verzió;
- Statisztika bővítmény - statisztikák gyűjtéséhez a játékosokról;
- WorldBorder plugin - a térkép rajzolásához és korlátozásához;
- WorldGuard plugin (+WorldEdit, mint függőség) – egyes területek védelmére.
Mindenkit meghívunk, hogy játsszon rajta: csatlakozzon, adjon hozzá új szervert és adja meg a címet mncrft.slc.tl.
Örülünk, ha megosztja saját tapasztalatait a MineCraft szerverek telepítésével, konfigurálásával és optimalizálásával kapcsolatban a megjegyzésekben, és elmondja, mely modok és bővítmények érdeklik és miért.
Jó hír: Augusztus 1-től 50%-kal csökkent a dedikált fix konfigurációs szerverek telepítési díja. Most az egyszeri beállítási fizetés csak 3000 rubel.
Kérjük azokat az olvasókat, akik nem tudnak itt megjegyzést fűzni, látogassanak el hozzánk a címen
Forrás: will.com