Mencipta dan menyediakan pelayan Minecraft

Mencipta dan menyediakan pelayan Minecraft

Minecraft adalah salah satu permainan dalam talian yang paling popular hari ini. Dalam masa kurang daripada tiga tahun (pelepasan rasmi pertama berlaku pada musim luruh 2011), dia memperoleh berjuta-juta peminat di seluruh dunia.

Pembangun permainan sengaja memberi tumpuan kepada contoh terbaik dua puluh tahun yang lalu, apabila banyak permainan, mengikut piawaian hari ini, primitif dari segi grafik dan tidak sempurna dari segi kebolehgunaan, tetapi pada masa yang sama ia benar-benar mengujakan.

Seperti semua permainan kotak pasir, Minecraft menyediakan pengguna dengan peluang besar untuk kreativiti - ini, sebenarnya, adalah rahsia utama popularitinya.

Pelayan untuk permainan berbilang pemain dianjurkan oleh pemain itu sendiri dan komuniti mereka. Hari ini terdapat puluhan ribu pelayan permainan yang beroperasi di Internet (lihat, sebagai contoh, senarai di sini).

Terdapat ramai peminat permainan ini dalam kalangan pelanggan kami, dan mereka menyewa peralatan daripada pusat data kami untuk projek permainan. Dalam artikel ini kita akan bercakap tentang perkara teknikal yang perlu anda perhatikan semasa memilih pelayan
Minecraft.

Memilih platform

Minecraft termasuk elemen seni bina berikut:

  1. pelayan - program di mana pemain berinteraksi antara satu sama lain melalui rangkaian;
  2. klien - program untuk menyambung ke pelayan, dipasang pada komputer pemain;
  3. pemalam - tambahan pada pelayan yang menambah fungsi baharu atau mengembangkan fungsi lama;
  4. mod adalah tambahan kepada dunia permainan (blok, item, ciri baharu).

Terdapat banyak platform pelayan untuk Minecraft. Yang paling biasa dan popular ialah Vanila dan Bukkit.

Vanilla Ini adalah platform rasmi daripada pembangun permainan. Ia diedarkan dalam kedua-dua versi grafik dan konsol. Versi baharu Vanila sentiasa keluar pada masa yang sama dengan versi baharu Minecraft.

Kelemahan Vanilla ialah penggunaan memori yang berlebihan (kira-kira 50 MB setiap pemain). Satu lagi kelemahan penting ialah kekurangan pemalam.

bukkit telah dicipta oleh sekumpulan peminat yang cuba menambah baik pelayan rasmi Minecraft. Percubaan itu ternyata agak berjaya: Bukkit jauh lebih luas dalam fungsi daripada Vanilla, terutamanya disebabkan oleh sokongan pelbagai mod dan pemalam. Pada masa yang sama, ia menggunakan kurang memori bagi setiap pemain - kira-kira 5-10 MB.

Kelemahan Bukkit ialah ia mengambil terlalu banyak RAM semasa berjalan. Di samping itu, lebih lama pelayan berjalan, lebih banyak memori yang diperlukan (walaupun terdapat sedikit pemain). Apabila memilih Bukkit sebagai pelayan, anda harus ingat bahawa versi baharunya, sebagai peraturan, mengandungi ralat; Versi stabil biasanya muncul kira-kira 2-3 minggu selepas versi rasmi Minecraft dikeluarkan.

Selain itu, platform lain baru-baru ini mendapat populariti (contohnya, Spout, MCPC dan MCPC+), tetapi ia mempunyai keserasian terhad dengan Vanila dan Bukkit dan sokongan yang sangat terhad untuk mod (contohnya, untuk Spout anda hanya boleh menulis mod dari awal). Jika ia digunakan, maka hanya untuk eksperimen.

Untuk mengatur pelayan permainan, kami mengesyorkan menggunakan platform Bukkit, kerana ia adalah yang paling fleksibel; Di samping itu, terdapat banyak mod dan pemalam yang berbeza untuknya. Operasi stabil pelayan Minecraft sebahagian besarnya bergantung pada pilihan platform perkakasan yang betul. Mari kita pertimbangkan isu ini dengan lebih terperinci.

Keperluan Perkakasan

Kedua-dua pelayan Minecraft dan pelanggan sangat menuntut sumber sistem.
Apabila memilih platform perkakasan, anda harus ingat bahawa pemproses berbilang teras tidak akan memberikan banyak kelebihan: teras pelayan Minecraft hanya boleh menggunakan satu utas pengiraan. Teras kedua, bagaimanapun, akan berguna: beberapa pemalam dilaksanakan dalam benang berasingan, dan Java juga menggunakan banyak sumber...

Oleh itu, untuk pelayan Minecraft, lebih baik memilih pemproses yang mempunyai prestasi teras tunggal yang lebih tinggi. Pemproses dwi-teras yang lebih berkuasa akan lebih disukai daripada pemproses berbilang teras yang kurang berkuasa. Pada forum khusus, disyorkan untuk menggunakan pemproses dengan kekerapan jam sekurang-kurangnya 3 GHz.

Untuk berfungsi normal pelayan Minecraft, sejumlah besar RAM diperlukan. Bukkit mengambil kira-kira 1GB RAM; sebagai tambahan, untuk setiap pemain, seperti yang dinyatakan di atas, dari 5 hingga 10 MB diperuntukkan. Pemalam dan mod juga menggunakan banyak memori. Untuk pelayan dengan 30 - 50 pemain, oleh itu, anda memerlukan sekurang-kurangnya 4 GB RAM.

Dalam Minecraft, banyak (contohnya, memuatkan pemalam yang sama) bergantung pada kelajuan sistem fail. Oleh itu, adalah lebih baik untuk memilih pelayan dengan cakera SSD. Cakera gelendong mungkin tidak sesuai kerana kelajuan bacaan rawak yang rendah.

Kelajuan sambungan Internet anda juga amat penting. Untuk permainan 40-50 orang, saluran 10 Mb/s sudah memadai. Walau bagaimanapun, bagi mereka yang merancang projek minecraft yang lebih besar, termasuk tapak web, forum dan peta dinamik, adalah sangat diingini untuk mempunyai saluran dengan lebih lebar jalur.

Konfigurasi khusus manakah yang terbaik untuk dipilih? daripada konfigurasi yang kami tawarkan Kami mengesyorkan agar anda memberi perhatian kepada perkara berikut:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 RUR/bulan;
  • Intel Core 2 Quad Q8300 2.5GHz, 6GB RAM, 2x500GB SATA, 3500 gosok/bulan. β€” kami menggunakan konfigurasi ini untuk pelayan ujian MineCraft kami, di mana anda boleh bermain sekarang (cara melakukan ini ditulis di bawah);
  • Intel Core i3-2120 3.3GHz, 8GB RAM, 2x500GB SATA, 3500 RUR/bulan.

Konfigurasi ini agak sesuai untuk mencipta pelayan Minecraft untuk 30-40 pemain. Beberapa kelemahan ialah kekurangan pemacu SSD, tetapi kami memberikan satu lagi kelebihan penting: saluran 100 Mb/s yang dijamin tanpa sebarang sekatan atau nisbah. Apabila memesan semua konfigurasi yang disenaraikan di atas, tiada bayaran persediaan.

Kami juga mempunyai pelayan yang lebih produktif, tetapi pada masa yang sama, secara semula jadi, pelayan yang lebih mahal (apabila memesan konfigurasi ini, yuran pemasangan juga tidak dikenakan):

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

Kami juga mengesyorkan memberi perhatian kepada model bajet baharu dengan pemacu SSD berdasarkan pemproses Intel Atom C2758: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2x240 GB SSD, 4000 rubel/bulan, bayaran pemasangan - 3000 rubel.

Memasang dan menjalankan pelayan Bukkit pada OC Ubuntu

Sebelum memasang pelayan, mari buat pengguna baharu dan tambahkannya pada kumpulan sudo:

$ sudo useradd -m -s /bin/bash <username> $ sudo adduser <username> sudo

Seterusnya, kami akan menetapkan kata laluan di mana pengguna yang dicipta akan menyambung ke pelayan:

$ sudo passwd <nama pengguna>

Mari sambung semula ke pelayan di bawah akaun baharu dan mulakan pemasangan.
Minecraft ditulis dalam Java, jadi Java Runtime Environment mesti dipasang pada pelayan.

Mari kemas kini senarai pakej yang tersedia:

$ sudo apt-get update

Kemudian jalankan arahan berikut:

$ sudo apt-get install default-jdk

Untuk memasang dan menjalankan Bukkit, anda juga dinasihatkan untuk memasang pemultipleks terminal - sebagai contoh, skrin (anda juga boleh menggunakan pemultipleks terminal lain - lihat kami gambaran keseluruhan):

$ sudo apt-get install skrin

Skrin akan diperlukan jika kami menyambung ke pelayan permainan melalui ssh. Dengan bantuannya, anda boleh menjalankan pelayan Minecraft dalam tetingkap terminal yang berasingan, dan walaupun selepas menutup klien ssh, pelayan akan berfungsi.

Mari buat direktori di mana fail pelayan akan disimpan:

$ mkdir bukkit $ cd bukkit

Selepas itu mari kita ke Halaman muat turun laman web rasmi Bukkit. Di bahagian atas sebelah kanan halaman anda boleh melihat pautan ke binaan pelayan yang disyorkan terkini. Kami mengesyorkan memuat turunnya:

$ wget <pautan versi disyorkan>

Sekarang mari jalankan skrin:

skrin $sudo

dan jalankan arahan berikut:

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

Mari kita terangkan maksud parameter yang digunakan:

  • Xmx1024M - jumlah maksimum RAM setiap pelayan;
  • jar craftbukkit.jar - kunci kepada pelayan;
  • o palsu - membenarkan akses kepada pelayan daripada pelanggan cetak rompak.

Pelayan akan dimulakan.
Anda boleh menghentikan pelayan dengan menaip arahan berhenti dalam konsol.

Menyediakan dan mengkonfigurasi pelayan

Tetapan pelayan disimpan dalam fail konfigurasi server.properties. Ia mengandungi parameter berikut:

  • tetapan penjana β€” menetapkan templat untuk menjana dunia superflat;
  • allow-nether - menentukan kemungkinan berpindah ke Dunia Bawah. Secara lalai, tetapan ini ditetapkan kepada benar. Jika ditetapkan kepada palsu, maka semua pemain dari Nether akan dipindahkan ke pemain biasa;
  • level-name - nama folder dengan fail peta yang akan digunakan semasa permainan. Folder itu terletak dalam direktori yang sama di mana fail pelayan berada. Jika tiada direktori sedemikian, pelayan secara automatik mencipta dunia baharu dan meletakkannya dalam direktori dengan nama yang sama;
  • enable-query - apabila ditetapkan kepada benar, mengaktifkan protokol GameSpy4 untuk mendengar pelayan;
  • allow-flight - membenarkan penerbangan di seluruh dunia Minecraft. Nilai lalai adalah palsu (penerbangan adalah dilarang);
  • server-port - menunjukkan port yang akan digunakan oleh pelayan permainan. Port standard untuk Minecraft ialah 25565. Ia tidak disyorkan untuk menukar nilai parameter ini;
  • jenis tahap - menentukan jenis dunia (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon - membenarkan akses jauh ke konsol pelayan. Secara lalai ia dilumpuhkan (palsu);
  • level-seed - data input untuk penjana tahap. Untuk dapat mencipta dunia rawak, medan ini mesti dibiarkan kosong;
  • force-gamemode - menetapkan mod permainan standard untuk pemain yang menyambung ke pelayan;
  • server-ip - menunjukkan alamat IP yang akan digunakan oleh pemain untuk menyambung ke pelayan;
  • max-build-height - menunjukkan ketinggian maksimum bangunan pada pelayan. Nilainya mestilah gandaan 16 (64, 96, 256, dsb.);
  • spawn-npcs - membenarkan (jika ditetapkan kepada benar) atau melarang (jika ditetapkan kepada palsu) kemunculan NPC di kampung;
  • senarai putih - mendayakan atau melumpuhkan penggunaan senarai putih pemain pada pelayan. Jika ditetapkan kepada benar, pentadbir akan dapat membuat senarai putih dengan menambahkan nama panggilan pemain secara manual padanya. Jika nilainya palsu, maka mana-mana pengguna yang mengetahui alamat IP dan portnya boleh mengakses pelayan;
  • spawn-animals - membenarkan pemijahan automatik perusuh mesra jika ditetapkan kepada benar);
  • snooper-enabled - membenarkan pelayan menghantar statistik dan data kepada pembangun;
  • tegar - membolehkan mod Tegar pada pelayan;
  • texture-pac - fail tekstur yang akan digunakan apabila pemain menyambung ke pelayan. Nilai parameter ini ialah nama arkib zip dengan tekstur, yang disimpan dalam direktori yang sama dengan pelayan;
  • mod dalam talian - membolehkan semakan akaun premium pengguna yang menyambung ke pelayan. Jika parameter ini ditetapkan kepada benar, hanya pemegang akaun premium akan dapat mengakses pelayan. Jika pengesahan akaun dilumpuhkan (ditetapkan kepada palsu), maka mana-mana pengguna boleh mengakses pelayan (termasuk, sebagai contoh, pemain yang telah memalsukan nama panggilan mereka), yang mewujudkan risiko keselamatan tambahan. Apabila pemeriksaan dilumpuhkan, anda boleh memainkan Minecraft melalui rangkaian tempatan, tanpa akses kepada Internet;
  • pvp - membenarkan atau melarang pemain daripada berlawan antara satu sama lain. Jika parameter ini benar, maka pemain boleh memusnahkan satu sama lain. Jika ditetapkan kepada palsu, pemain tidak boleh menangani kerosakan langsung antara satu sama lain;
  • kesukaran - menetapkan tahap kesukaran permainan. Boleh mengambil nilai dari 0 (paling mudah) hingga 3 (paling sukar);
  • mod permainan - menunjukkan mod permainan yang akan ditetapkan untuk pemain yang memasuki pelayan. Boleh mengambil nilai berikut: 0 - Survival, 1-Kreatif, 2-Pengembaraan;
  • player-idle-timeout β€” masa tidak aktif (dalam minit), selepas itu pemain diputuskan secara automatik daripada pelayan;
  • max-players β€” bilangan pemain maksimum yang dibenarkan pada pelayan (dari 0 hingga 999);
  • spawn-monsters - membenarkan (jika ditetapkan kepada benar) pemijahan perusuh yang bermusuhan;
  • jana-struktur β€” membolehkan (benar)/lumpuhkan (palsu) penjanaan struktur (khazanah, kubu, kampung);
  • jarak pandang - melaraskan jejari ketulan yang dikemas kini untuk dihantar kepada pemain; boleh mengambil nilai dari 3 hingga 15.

Log pelayan Minecraft ditulis pada fail server.log. Ia disimpan dalam folder yang sama dengan fail pelayan. Log sentiasa berkembang dalam saiz, mengambil lebih banyak ruang cakera. Anda boleh menyelaraskan kerja mekanisme pembalakan menggunakan putaran log yang dipanggil. Untuk putaran, utiliti khas digunakan - logrotate. Ia mengehadkan bilangan entri dalam log kepada had tertentu.

Anda boleh mengkonfigurasi putaran log supaya semua entri dipadamkan sebaik sahaja fail log mencapai saiz tertentu. Anda juga boleh menetapkan tempoh selepas itu semua entri lama akan dianggap tidak relevan dan dipadamkan.

Tetapan putaran asas terletak dalam fail /etc/logrotate.conf; Di samping itu, anda boleh membuat tetapan individu untuk setiap aplikasi. Fail dengan tetapan individu disimpan dalam direktori /etc/logrotate.d.

Mari buat fail teks /etc/logrotate.d/craftbukkit dan masukkan parameter berikut ke dalamnya:

/home/craftbukkit/server.log { putar 2 mingguan kompres missingok notifempty }

Mari kita lihat makna mereka dengan lebih terperinci:

  • parameter putar menentukan bilangan putaran sebelum memadamkan fail;
  • mingguan menunjukkan bahawa putaran akan dilakukan setiap minggu (anda juga boleh menetapkan parameter lain: bulanan - bulanan dan harian - harian);
  • compress menyatakan bahawa log yang diarkibkan harus dimampatkan (pilihan sebaliknya ialah nocompress);
  • missingok menunjukkan bahawa jika tiada fail log, anda harus terus bekerja dan tidak memaparkan mesej ralat;
  • notifempty menentukan untuk tidak mengalihkan fail log jika ia kosong.

Anda boleh membaca lebih lanjut mengenai tetapan putaran log di sini.

Petua Pengoptimuman

Mari segera membuat tempahan bahawa bahagian ini akan memberikan petua yang berkaitan hanya dengan mengoptimumkan pelayan permainan. Isu penalaan halus dan mengoptimumkan pelayan di mana Minecraft dipasang adalah topik berasingan yang berada di luar skop artikel ini; pembaca yang berminat boleh mencari maklumat yang mereka perlukan dengan mudah di Internet.

Salah satu masalah paling biasa yang timbul semasa bermain Minecraft adalah apa yang dipanggil ketinggalan - situasi apabila program tidak bertindak balas kepada input pengguna tepat pada masanya. Mereka boleh disebabkan oleh masalah pada kedua-dua bahagian klien dan bahagian pelayan. Di bawah ini kami akan memberikan cadangan yang akan membantu mengurangkan kemungkinan masalah berlaku pada bahagian pelayan.

Pantau penggunaan memori pelayan dan pemalam secara kerap

Penggunaan memori boleh dipantau menggunakan pemalam pentadbiran khusus - contohnya, LagMeter.

Nantikan kemas kini pemalam

Sebagai peraturan, pembangun pemalam baharu berusaha untuk mengurangkan beban dengan setiap versi baharu.

Cuba untuk tidak menggunakan banyak pemalam dengan fungsi yang serupa

Pemalam besar (cth. Essentials, AdminCMD, CommandBook) selalunya menyertakan kefungsian banyak pemalam yang lebih kecil. Contohnya, Essential yang sama mengandungi fungsi pemalam iConomy, uHome, OpenInv, VanishNoPacket, Kit. Pemalam kecil, fungsi yang dilindungi sepenuhnya oleh fungsi satu besar, dalam kebanyakan kes boleh dialih keluar supaya tidak membebankan pelayan.

Hadkan peta dan muatkan sendiri

Jika anda tidak mengehadkan peta, beban pada pelayan akan meningkat dengan ketara. Anda boleh mengehadkan peta menggunakan pemalam Sempadan Dunia. Untuk melakukan ini, anda perlu menjalankan pemalam ini dan menjalankan arahan /wb 200, dan kemudian lukis peta menggunakan arahan isian /wb.

Lukisan, tentu saja, akan mengambil banyak masa, tetapi lebih baik melakukannya sekali, menutup pelayan untuk kerja teknikal. Jika setiap pemain melukis peta, pelayan akan berfungsi dengan perlahan.

Gantikan pemalam tugas berat dengan pemalam yang lebih pantas dan kurang intensif sumber

Tidak semua pemalam untuk Minecraft boleh dipanggil berjaya: ia sering mengandungi banyak fungsi yang tidak perlu dan tidak perlu, dan kadang-kadang ia juga menggunakan banyak memori. Adalah lebih baik untuk menggantikan pemalam yang tidak berjaya dengan pemalam alternatif (terdapat banyak daripada mereka). Sebagai contoh, pemalam LWC boleh digantikan dengan Wgfix+MachineGuard dan pemalam DynMap dengan Minecraft Overviewer.

Sentiasa kosongkan drop atau pasang pemalam untuk mengalih keluar drop secara automatik

Kejatuhan dalam permainan ialah item yang terjatuh apabila gerombolan mati atau beberapa blok dimusnahkan. Menyimpan dan memproses titisan mengambil banyak sumber sistem.

Untuk membuat pelayan berfungsi dengan lebih pantas, adalah dinasihatkan untuk memadamkan penurunan tersebut. Ini sebaiknya dilakukan menggunakan pemalam khas - contohnya, NoLagg atau McClean.

Jangan gunakan anti-cheat

Apa yang dipanggil anti-penipuan sering dipasang pada pelayan permainan - program yang menghalang percubaan untuk mempengaruhi permainan dengan cara yang tidak jujur.

Terdapat anti-penipuan untuk Minecraft juga. Sebarang anti-penipuan sentiasa menjadi beban tambahan pada pelayan. Adalah lebih baik untuk memasang perlindungan untuk pelancar (yang, bagaimanapun, tidak memberikan jaminan keselamatan mutlak dan mudah rosak - tetapi ini adalah topik untuk perbincangan berasingan) dan untuk pelanggan.

Daripada kesimpulan

Sebarang arahan dan cadangan ternyata lebih berkesan jika ia disokong oleh contoh khusus. Berdasarkan arahan pemasangan di atas, kami mencipta pelayan Minecraft kami sendiri dan meletakkan beberapa perkara menarik pada peta.

Inilah yang kami dapat:

  • Pelayan Bukkit - versi disyorkan stabil 1.6.4;
  • Plugin statistik - untuk mengumpul statistik tentang pemain;
  • Pemalam WorldBorder - untuk melukis dan mengehadkan peta;
  • Pemalam WorldGuard (+WorldEdit sebagai pergantungan) - untuk melindungi sesetengah kawasan.

Kami menjemput semua orang untuk memainkannya: untuk menyambung, menambah pelayan baharu dan masukkan alamat mncrft.slc.tl.

Kami akan gembira jika anda berkongsi pengalaman anda sendiri dalam memasang, mengkonfigurasi dan mengoptimumkan pelayan MineCraft dalam ulasan dan memberitahu kami mod dan pemalam yang anda minati dan sebabnya.

berita menarik: Mulai 1 Ogos, yuran pemasangan untuk pelayan konfigurasi tetap khusus telah dikurangkan sebanyak 50%. Kini bayaran persediaan sekali hanya 3000 rubel.

Pembaca yang tidak dapat meninggalkan komen di sini dijemput melawat kami di blog.

Sumber: www.habr.com

Tambah komen