Membuat dan menyiapkan server Minecraft

Membuat dan menyiapkan server Minecraft

Minecraft adalah salah satu game online terpopuler saat ini. Dalam waktu kurang dari tiga tahun (rilis resmi pertama terjadi pada musim gugur 2011), ia telah mendapatkan jutaan penggemar di seluruh dunia.

Pengembang game sengaja berfokus pada contoh terbaik dua puluh tahun yang lalu, ketika banyak game menurut standar saat ini primitif dalam hal grafis dan tidak sempurna dalam hal kegunaan, tetapi pada saat yang sama game tersebut sangat mengasyikkan.

Seperti semua game kotak pasir, Minecraft memberi pengguna peluang besar untuk kreativitas - ini sebenarnya adalah rahasia utama popularitasnya.

Pengaturan server untuk bermain dalam mode multipemain dilakukan oleh pemain itu sendiri dan komunitasnya. Saat ini, puluhan ribu server game beroperasi di Internet (lihat, misalnya, daftarnya di sini).

Ada banyak penggemar game ini di antara klien kami, dan mereka menyewa peralatan untuk proyek game di pusat data kami. Pada artikel ini kita akan berbicara tentang poin teknis apa yang perlu Anda perhatikan saat memilih server
Minecraft.

Pilih platform

Gim Minecraft mencakup elemen arsitektur berikut:

  1. server - program yang digunakan pemain untuk berinteraksi satu sama lain melalui jaringan;
  2. klien - program untuk menghubungkan ke server, diinstal di komputer pemain;
  3. plugin - tambahan ke server yang menambah fitur baru atau memperluas yang lama;
  4. mod - penambahan dunia game (blok baru, item, fitur).

Ada banyak platform server untuk Minecraft. Yang paling umum dan populer adalah Vanilla dan Bukkit.

Vanila Ini adalah platform resmi dari pengembang game. Didistribusikan dalam versi grafis dan konsol. Versi baru Vanilla selalu keluar bersamaan dengan Minecraft versi baru.

Kelemahan Vanilla adalah konsumsi memori yang berlebihan (sekitar 50 MB per pemain). Kelemahan signifikan lainnya adalah kurangnya plugin.

bukkit dibuat oleh sekelompok penggemar yang berusaha meningkatkan server resmi Minecraft. Upaya tersebut ternyata cukup berhasil: dalam hal fungsionalitas, Bukkit jauh lebih luas daripada Vanilla - terutama karena dukungan untuk berbagai mod dan plugin. Pada saat yang sama, ini menghabiskan lebih sedikit memori per pemain - sekitar 5-10 MB.

Kontra Bukkit adalah memakan terlalu banyak RAM saat dinyalakan. Selain itu, semakin lama server berjalan, semakin banyak memori yang dibutuhkan (walaupun pemainnya sedikit). Saat memilih Bukkit sebagai server, perlu diingat bahwa versi barunya biasanya berisi kesalahan; versi stabil biasanya muncul sekitar 2-3 minggu setelah rilis versi resmi Minecraft.

Selain itu, platform lain baru-baru ini mendapatkan popularitas (misalnya, Spout, MCPC, dan MCPC +), tetapi berbeda dalam kompatibilitas terbatas dengan Vanilla dan Bukkit dan dukungan mod yang sangat terbatas (misalnya, Anda hanya dapat menulis mod untuk Spout dari awal ). Jika digunakan, maka hanya untuk percobaan.

Untuk mengatur server game, kami sarankan menggunakan platform Bukkit, karena ini yang paling fleksibel; selain itu, di bawahnya terdapat banyak mod dan plugin yang berbeda. Pengoperasian server Minecraft yang stabil sangat bergantung pada pilihan platform perangkat keras yang tepat. Mari pertimbangkan pertanyaan ini lebih detail.

Persyaratan Perangkat Keras

Server dan klien Minecraft sangat menuntut sumber daya sistem.
Saat memilih platform perangkat keras, perlu diingat bahwa prosesor multi-inti tidak akan memberikan keuntungan besar: inti server Minecraft hanya dapat menggunakan satu utas komputasi. Namun, inti kedua akan berguna: beberapa plugin dijalankan di utas terpisah, dan Java juga menghabiskan banyak sumber daya ...

Oleh karena itu, untuk server Minecraft, lebih baik memilih prosesor yang memiliki performa inti tunggal lebih tinggi. Prosesor dual-core yang lebih bertenaga akan lebih disukai daripada prosesor multi-core yang kurang bertenaga. Di forum khusus, disarankan untuk menggunakan prosesor dengan kecepatan clock minimal 3 GHz.

Sejumlah besar RAM diperlukan untuk fungsi normal server Minecraft. Bukkit membutuhkan sekitar 1GB RAM; selain itu, untuk setiap pemain, seperti yang disebutkan di atas, dialokasikan dari 5 hingga 10 MB. Plugin dan mod juga memakan banyak memori. Untuk server dengan 30 - 50 pemain, Anda membutuhkan setidaknya 4 GB RAM.

Di Minecraft, banyak hal (misalnya, memuat plugin yang sama) bergantung pada kecepatan sistem file. Oleh karena itu, lebih baik memilih server dengan drive SSD. Spindle drive sepertinya tidak cocok karena rendahnya kecepatan pembacaan acak.

Kecepatan koneksi internet juga sangat penting. Untuk permainan 40-50 orang, saluran 10 Mb / s sudah cukup. Namun, bagi mereka yang merencanakan proyek minecraft yang lebih besar, termasuk situs web, forum, dan peta dinamis, sangat diinginkan untuk memiliki saluran dengan bandwidth yang lebih tinggi.

Konfigurasi spesifik apa yang terbaik untuk dipilih? Dari konfigurasi yang kami tawarkan Kami menyarankan Anda memperhatikan hal-hal berikut:

  • Intel Core 2 Duo E8400 3GHz, RAM 6GB, SATA 2x500GB, 3000 gosok/bulan;
  • Intel Core 2 Quad Q8300 2.5GHz, RAM 6GB, SATA 2Γ—500GB, 3500 gosok/bulan - kami menggunakan konfigurasi ini untuk server pengujian MineCraft kami, yang dapat Anda mainkan sekarang (cara melakukannya dijelaskan di bawah);
  • Intel Core i3-2120 3.3GHz, RAM 8GB, SATA 2x500GB, 3500 gosok/bulan

Konfigurasi ini cukup cocok untuk membuat server Minecraft untuk 30-40 pemain. Beberapa kerugiannya adalah kurangnya drive SSD, tetapi kami memberikan keuntungan penting lainnya: saluran 100 Mb / s yang dijamin tanpa batasan dan rasio apa pun. Saat memesan semua konfigurasi yang tercantum di atas, biaya pemasangan tidak dikenakan biaya.

Kami juga memiliki server yang lebih produktif, tetapi pada saat yang sama, tentu saja, server yang lebih mahal (saat memesan konfigurasi ini, pembayaran penyiapan juga tidak dikenakan biaya):

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

Kami juga merekomendasikan untuk memperhatikan model anggaran baru dengan drive SSD berdasarkan prosesor Intel Atom C2758: Intel Atom C2758 2.4 GHz, RAM 16 GB, SSD 2 Γ— 240 GB, 4000 rubel / bulan, pembayaran pemasangan - 3000 rubel.

Menginstal dan menjalankan server Bukkit di Ubuntu OC

Sebelum menginstal server, mari buat pengguna baru dan tambahkan ke grup sudo:

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

Selanjutnya, atur kata sandi di mana pengguna yang dibuat akan terhubung ke server:

$ sudo passwd <nama pengguna>

Sambungkan kembali ke server dengan akun baru dan lanjutkan penginstalan.
Minecraft ditulis di Java, jadi Java Runtime Environment harus diinstal di server.

Perbarui daftar paket yang tersedia:

$ sudo apt-get update

Kemudian jalankan perintah berikut:

$ sudoapt-get install default-jdk

Untuk menginstal dan menjalankan Bukkit, juga diinginkan untuk menginstal multiplexer terminal - misalnya, layar (multiplexer terminal lain dapat digunakan - lihat kami meninjau):

$ sudo apt-get installscreen

Layar akan dibutuhkan jika kita terhubung ke server game melalui ssh. Dengan itu, dimungkinkan untuk meluncurkan server Minecraft di jendela terminal terpisah, dan bahkan setelah menutup klien ssh, server akan berfungsi.

Mari buat direktori tempat file server akan disimpan:

$ mkdir bukkit $ cd bukkit

Setelah itu, mari kita pergi ke Halaman unduhan situs web resmi Bukkit. Di bagian kanan atas halaman, Anda dapat melihat tautan ke server build terbaru yang direkomendasikan untuk digunakan (recommended build). Kami sarankan mengunduhnya:

$ wget <tautan ke versi yang direkomendasikan>

Sekarang mari kita jalankan layar:

layar $sudo

dan jalankan perintah berikut:

$ Java -Xmx1024M -jar craftbukkit.jar -o salah

Mari kita jelaskan apa arti parameter yang digunakan:

  • Xmx1024M - jumlah maksimum RAM per server;
  • jar craftbukkit.jar - kunci ke server;
  • o false - memungkinkan akses ke server dari klien bajakan.

Server akan dimulai.
Anda dapat menghentikan server dengan mengetikkan perintah stop di konsol.

Menyiapkan dan mengkonfigurasi server

Pengaturan server disimpan dalam file konfigurasi server.properties. Ini berisi opsi berikut:

  • generator-settings - mengatur template untuk menghasilkan dunia super datar;
  • allow-nether - menentukan kemungkinan transisi ke Nether. Secara default, parameter ini disetel ke true. Jika disetel ke false, maka semua pemain dari Nether akan dipindahkan ke normal;
  • level-name adalah nama map file map yang akan digunakan selama permainan berlangsung. Folder tersebut terletak di direktori yang sama dengan file server. Jika tidak ada direktori seperti itu, server secara otomatis membuat dunia baru dan menempatkannya di direktori dengan nama yang sama;
  • aktifkan-kueri - jika disetel ke benar, aktifkan protokol GameSpy4 untuk mendengarkan server;
  • allow-flight - Mengizinkan penerbangan di dunia Minecraft. Nilai defaultnya adalah false (tidak ada penerbangan);
  • server-port - menentukan port yang akan digunakan oleh server game. Port default untuk Minecraft adalah 25565. Kami tidak menyarankan untuk mengubah pengaturan ini;
  • level-type - mendefinisikan tipe dunia (DEFAUT/FLAT/LARGEBIOMES);
  • aktifkan-rcon - membuka akses jarak jauh ke konsol server. Ini dinonaktifkan (salah) secara default;
  • level-seed - input untuk generator level. Untuk dapat membuat dunia acak, bidang ini harus dikosongkan;
  • force-gamemode - mengatur pemain yang terhubung ke server ke mode permainan standar;
  • server-ip - menentukan alamat IP yang akan digunakan oleh pemain untuk terhubung ke server;
  • max-build-height - menentukan ketinggian maksimum bangunan di server. Nilainya harus kelipatan 16 (64, 96, 256, dst.);
  • spawn-npcs - Mengizinkan (jika disetel ke true) atau menonaktifkan (jika disetel ke false) NPC untuk bertelur di desa.
  • daftar putih - mengaktifkan dan menonaktifkan penggunaan daftar putih pemain di server. Jika disetel ke true, maka administrator akan dapat membuat daftar putih dengan menambahkan nama panggilan pemain ke dalamnya secara manual. Jika disetel ke false, maka setiap pengguna yang mengetahui alamat IP dan portnya dapat mengakses server;
  • spawn-animals - Mengizinkan gerombolan ramah untuk muncul secara otomatis jika disetel ke true)
  • diaktifkan pengintai - memungkinkan server mengirim statistik dan data ke pengembang;
  • hardcore - mengaktifkan mode Hardcore di server;
  • texture-pac adalah file tekstur yang akan digunakan saat pemain terhubung ke server. Nilai parameter ini adalah nama arsip zip dengan tekstur, yang disimpan di direktori yang sama dengan server;
  • mode online - memungkinkan pemeriksaan akun premium pengguna yang terhubung ke server. Jika parameter ini disetel ke true, hanya pemegang akun premium yang dapat mengakses server. Jika verifikasi akun dinonaktifkan (disetel ke salah), maka setiap pengguna (termasuk, misalnya, pemain yang memalsukan nama panggilan) dapat mengakses server, yang menimbulkan risiko keamanan tambahan. Dengan verifikasi dinonaktifkan, Anda dapat memainkan Minecraft melalui jaringan lokal, tanpa akses ke Internet;
  • pvp - mengizinkan atau melarang pemain untuk bertarung satu sama lain. Jika parameter ini disetel ke true, maka pemain dapat saling menghancurkan. Jika disetel ke false, maka pemain tidak dapat memberikan damage langsung satu sama lain;
  • kesulitan - mengatur tingkat kesulitan permainan. Dapat mengambil nilai dari 0 (paling mudah) hingga 3 (paling sulit);
  • gamemode - menentukan mode permainan mana yang akan diatur untuk pemain yang bergabung dengan server. Dapat mengambil nilai berikut: 0 - Survival, 1-Creative, 2-Adventure;
  • player-idle-timeout - waktu idle (dalam menit), setelah itu pemain secara otomatis terputus dari server;
  • max-players - jumlah maksimum pemain yang diizinkan di server (dari 0 hingga 999);
  • spawn-monster - memungkinkan (jika disetel ke true) pemijahan gerombolan yang bermusuhan;
  • hasilkan struktur - mengaktifkan (benar) / menonaktifkan (salah) pembuatan struktur (perbendaharaan, benteng, desa);
  • view-distance - menyesuaikan radius potongan yang diperbarui untuk dikirim ke pemain; dapat mengambil nilai dari 3 hingga 15.

Log server Minecraft ditulis ke file server.log. Itu disimpan dalam folder yang sama dengan file server. Ukuran log terus bertambah, menghabiskan lebih banyak ruang disk. Anda dapat merampingkan pengoperasian mekanisme logging menggunakan apa yang disebut rotasi log. Untuk rotasi, utilitas khusus digunakan - logrotate. Ini membatasi jumlah entri dalam log ke batas tertentu.

Anda dapat mengatur rotasi log sehingga semua entri akan dihapus segera setelah file log mencapai ukuran tertentu. Anda juga dapat mengatur periode setelah semua entri lama dianggap tidak relevan dan dihapus.

Pengaturan rotasi utama ada di file /etc/logrotate.conf; selain itu, pengaturan individual dapat dibuat untuk setiap aplikasi. File dengan pengaturan individual disimpan di direktori /etc/logrotate.d.

Buat file teks /etc/logrotate.d/craftbukkit dan masukkan parameter berikut ke dalamnya:

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

Mari pertimbangkan artinya secara lebih rinci:

  • parameter putar menentukan jumlah putaran sebelum menghapus file;
  • mingguan menunjukkan bahwa rotasi akan dilakukan setiap minggu (parameter lain dapat diatur: bulanan - bulanan dan harian - harian);
  • kompres menentukan bahwa log yang diarsipkan harus dikompresi (opsi nocompress);
  • missingok menentukan bahwa dengan tidak adanya file log, pekerjaan harus dilanjutkan dan tidak ada pesan kesalahan yang ditampilkan;
  • notifempty menentukan untuk tidak menggeser file log jika kosong.

Anda dapat membaca lebih lanjut tentang pengaturan rotasi log. di sini.

Kiat Pengoptimalan

Segera lakukan reservasi bahwa bagian ini akan memberikan tips hanya terkait optimalisasi server game. Masalah menyempurnakan dan mengoptimalkan server tempat Minecraft diinstal adalah topik terpisah yang berada di luar cakupan artikel ini; pembaca yang tertarik dapat dengan mudah menemukan informasi yang mereka butuhkan di Internet.

Salah satu masalah paling umum yang muncul saat memainkan Minecraft adalah apa yang disebut kelambatan - situasi saat program tidak merespons input pengguna tepat waktu. Mereka dapat disebabkan oleh masalah baik di sisi klien maupun di sisi server. Di bawah ini kami akan memberikan rekomendasi yang akan membantu mengurangi kemungkinan masalah di sisi server.

Pantau konsumsi memori server dan plugin secara teratur

Konsumsi memori dapat dilacak menggunakan plugin administratif khusus - misalnya, Pengukur Lag.

Nantikan pembaruan plugin

Biasanya, pengembang plugin baru dengan setiap versi baru berusaha untuk mengurangi beban.

Cobalah untuk tidak menggunakan banyak plugin dengan fungsi serupa

Plugin besar (mis. Essentials, AdminCMD, CommandBook) sangat sering menyertakan fungsionalitas dari banyak plugin yang lebih kecil. Misalnya, Essential yang sama berisi fungsi plugin iConomy, uHome, OpenInv, VanishNoPacket, Kit. Plug-in kecil, yang fungsinya sepenuhnya dicakup oleh fungsionalitas satu yang besar, dalam banyak kasus dapat dihapus agar tidak membebani server.

Batasi peta dan unduh sendiri

Jika Anda tidak membatasi peta, beban di server akan meningkat secara signifikan. Anda dapat membatasi peta menggunakan plugin Perbatasan Dunia. Untuk melakukan ini, Anda perlu menjalankan plugin ini dan menjalankan perintah /wb 200, lalu menggambar peta menggunakan perintah /wb fill.

Menggambar, tentu saja, akan memakan banyak waktu, tetapi lebih baik melakukannya sekali, menutup server untuk pekerjaan teknis. Jika setiap pemain menggambar peta, server akan bekerja dengan lambat.

Ganti plugin kelas berat dengan yang lebih cepat dan lebih sedikit sumber daya intensif

Tidak semua plugin Minecraft dapat disebut berhasil: sering kali mengandung banyak fungsi yang tidak perlu dan tidak perlu, dan terkadang juga menghabiskan banyak memori. Plugin yang tidak berhasil sebaiknya diganti dengan yang alternatif (ada beberapa di antaranya). Misalnya, plugin LWC dapat diganti dengan Wgfix+MachineGuard, dan plugin DynMap dengan Minecraft Overviewer.

Selalu bersihkan drop atau instal plugin untuk menghapus drop secara otomatis

Drop dalam game adalah item yang keluar saat massa mati atau beberapa blok dihancurkan. Menyimpan dan memproses tetes menghabiskan banyak sumber daya sistem.

Untuk membuat server berjalan lebih cepat, disarankan untuk menghapus drop tersebut. Ini paling baik dilakukan dengan menggunakan plugin khusus - misalnya, NoLagg atau McClean.

Jangan gunakan anti cheat

Apa yang disebut anti-cheat sering dipasang di server game - program yang memblokir upaya untuk memengaruhi game dengan cara yang tidak jujur.

Ada juga anti-cheat untuk Minecraft. Setiap anti-cheat selalu menjadi beban tambahan di server. Lebih baik memasang perlindungan untuk peluncur (yang, bagaimanapun, tidak memberikan jaminan keamanan mutlak dan mudah rusak - tetapi ini adalah topik untuk diskusi terpisah) dan untuk klien.

Alih-alih sebuah kesimpulan

Instruksi dan rekomendasi apa pun jauh lebih efektif jika didukung oleh contoh konkret. Berdasarkan petunjuk penginstalan di atas, kami membuat server MineCraft kami sendiri dan meletakkan sesuatu yang menarik di peta.

Inilah yang kami dapatkan:

  • Server Bukkit - versi stabil yang direkomendasikan 1.6.4;
  • Plugin statistik - untuk mengumpulkan statistik tentang pemain;
  • Plugin WorldBorder - untuk menggambar dan membatasi peta;
  • Plugin WorldGuard (+WorldEdit sebagai ketergantungan) - untuk melindungi beberapa area.

Kami mengundang semua orang untuk memainkannya: untuk terhubung, tambahkan server baru dan tentukan alamatnya mncrft.slc.tl.

Kami akan senang jika di komentar Anda membagikan pengalaman Anda sendiri dalam menginstal, mengonfigurasi, dan mengoptimalkan server MineCraft dan memberi tahu kami mod dan plugin mana yang Anda minati dan mengapa.

Berita keren: Mulai 1 Agustus, biaya penyiapan untuk server khusus konfigurasi tetap telah dikurangi sebesar 50%. Sekarang pembayaran instalasi satu kali hanya 3000 rubel.

Pembaca yang tidak dapat meninggalkan komentar di sini dipersilakan untuk bergabung dengan kami di blog.

Sumber: www.habr.com

Tambah komentar