Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Menggunakan NMS di Bukkit

Posted on May 5, 2023

Meskipun Minecraft terbuka untuk berbagai plugin (yang dapat Anda gunakan untuk mengubah pengalaman bermain Anda), beberapa elemen permainan terlindung dari manipulasi plugin. Net.Minecraft.Server (NMS) adalah salah satu paket yang dilindungi ini, karena berisi kode server penting untuk game tersebut. Kode ini berasal langsung dari pengembang Minecraft, Mojang, dan seharusnya tidak dapat diakses oleh pemain.

Dengan Bukkit, pemain dapat membuat lapisan abstraksi di sekitar kode NMS. Hal ini memungkinkan mereka mengembangkan plug-in yang berinteraksi dengan kode server tanpa membuat perubahan langsung pada basis kode yang penting untuk bermain game. Anggap saja seperti jendela yang memungkinkan Anda melihat kode yang ingin Anda gunakan di plugin Anda, tetapi juga bertindak sebagai penghalang yang mencegah Anda mengubah kode secara langsung.

Mari jelajahi cara menggunakan Bukkit dengan NMS Minecraft.

Sebelum Anda Mulai – Apa Anda Harus Tahu Tentang Bukkit

Bukkit adalah API yang memungkinkan Anda membuat dan menggunakan plugin yang mengubah cara Anda merasakan aspek multipemain Minecraft. Setidaknya begitu. Versi terakhir Bukkit keluar pada tahun 2016, dan sejak itu dihentikan untuk memberi jalan bagi API yang berbeda, bernama Spigot. Meskipun bekerja mirip dengan Bukkit, ia menawarkan kinerja server yang lebih baik.

Jadi, menggunakan Bukkit untuk plugin mengharuskan Anda memainkan Minecraft versi lama dan menerima kenyataan bahwa Bukkit tidak sebagus API penggantinya. Dengan asumsi Anda senang menerima pengorbanan itu, inilah satu-satunya hal yang Anda butuhkan:
Java Development Kit (JDK) 7 atau lebih tinggi, dengan sebagian besar merekomendasikan JDK 8.
Dengan itu, Anda siap membuat beberapa plugin.

Cara Membuat Bukkit Plugin untuk Minecraft

Sebelum Anda dapat mulai menggunakan Bukkit untuk mengakses NMS Minecraft, Anda perlu menambahkan API sebagai dependensi, menyetel kelas utama yang memungkinkan Bukkit berinteraksi dengan plugin yang Anda buat, dan memberikan Bukkit informasi yang diperlukan untuk memuat plugin Anda ke dalam permainan. Setiap langkah memerlukan pengkodean, dengan contoh berikut berasal dari Tutorial RIP.

Langkah 1 – Tambahkan Bukkit sebagai Ketergantungan

Di masa lalu, Anda dapat menambahkan Bukkit sebagai ketergantungan di Minecraft dengan mengunduh file Bukkit.jar dari Repositori Bukkit dan menambahkannya ke classpath proyek. Opsi itu tidak tersedia lagi karena Repositori tidak lagi dapat diakses.

Untungnya, ada metode alternatif yang menggunakan file pom.xml game Anda. Buka file dan tambahkan baris berikut:

spigot-repo
https://hub.spigotmc.org/nexus/content/repositories/snapshots/

org.bukkit
bukkit
{VERSION}
disediakan

Langkah 2 – Buat Kelas Utama Plugin Anda

Plugin Anda harus dapat membuat satu instance dari kelas utamanya, yang digunakan untuk memperluas “JavaPlugin” sehingga dapat mengenali dan memungkinkan Anda untuk menggunakan plugin saat Anda dalam game. Pikirkan kelas utama ini sebagai pintu yang dapat dilalui Bukkit untuk memuat dan memanipulasi plugin. Sebagian besar memberikan kelas utama plugin mereka dengan nama yang sama dengan plugin itu sendiri, membuatnya lebih mudah untuk merujuk ke kelas utama saat pengkodean. .example.myplugin; //{$TopLevelDomain}.{$Domain}.{$PluginName};
import org.bukkit.plugin.java.JavaPlugin;
kelas akhir publik MyPlugin memperluas JavaPlugin {
@Mengesampingkan
public void onEnable() {
//Dipanggil saat plugin diaktifkan
getLogger().info(“onEnable telah dipanggil!”);
}
@Mengesampingkan
public void onDisable() {
//Dipanggil saat plugin dinonaktifkan
getLogger().info(“onDisable telah dipanggil!”);
}
}

Mengakses Plugin Anda dari Kelas Lain
Anda mungkin ingin mengakses plugin Anda melalui kelas yang berbeda dari kelas utama yang Anda buat untuknya, yang dapat berguna untuk mengakses beberapa plugin dalam satu game Minecraft.

Untuk melakukan itu, Anda harus menyimpan instance terlebih dahulu dari kelas utama yang Anda buat menggunakan Bukkit sehingga kelas lain dapat mengaksesnya. Sekali lagi, kode contoh berikut berasal dari Tutorial RIP dan menggunakan nama kelas “MyPlugin”:
public class MyPlugin extends JavaPlugin {
contoh MyPlugin statis pribadi; // Secara efektif variabel final yang berisi instance plugin Anda
MyPlugin publik(){
if(MyPlugin.instance != null) { //Pemeriksaan tidak perlu tetapi pastikan plugin Anda hanya diinisialisasi sekali.
throw new Error(“Plugin sudah diinisialisasi!”);
}
MyPlugin.instance = ini; // Konstruktor plugin hanya boleh dipanggil sekali
}
public static MyPlugin getInstance(){ //Dapatkan instance plugin Anda
kembali contoh;
}
// kode Anda yang lain…
}

Setelah Anda memiliki instance, Anda dapat mengakses kelas utama Anda (dibuat melalui Bukkit) menggunakan perintah “getInstance()”. Berikut adalah contohnya menggunakan kelas utama “MyPlugin” Tutorial RIP:
public class MyOtherClass {
public void doSomethingWithMainClass(){
MyPlugin.getInstance().getLogger().info(“Kami baru saja menggunakan MyPlugin”);
}
}

Langkah 3 – Buat file plugin.yml Anda

A file plugin.yml berisi informasi penting tentang plugin Anda, artinya berfungsi sebagai file konfigurasi dasar plugin. Tanpa file ini, Bukkit tidak akan memiliki informasi yang dibutuhkan untuk memuat plugin Anda ke Minecraft, yang menyebabkan plugin gagal dimuat dan game kemungkinan macet. diberikan ke plugin Anda (yaitu, “MyPlugin” Tutorial RIP) dan itu akan ditampilkan dalam pesan log dan daftar plugin Anda. Versi – Gunakan bidang ini untuk menunjukkan riwayat versi plugin, dimulai dengan 1.0.0 dan naik saat Anda mengubah atau edit plugin.Main – Berisi nama kelas utama plugin, yang memperluas “JavaPlugin”, memungkinkan Bukkit untuk masuk ke plugin. Dalam contoh Tutorial RIP, nama ini akan menjadi “package com.example.myplugin,” yang dapat Anda lihat di kode kelas utama di atas.Deskripsi – Deskripsi dasar tentang apa yang dilakukan plugin Anda.Author – Anda dapat memiliki satu penulis atau beberapa penulis, dengan yang terakhir dilambangkan dengan tanda kurung siku dan koma sebagai berikut – [Penulis1, Penulis2, Penulis3]. Kontributor – Anda akan menggunakan bagian ini untuk mencatat siapa saja yang berkontribusi pada plugin Anda, dengan pemformatan yang sama seperti untuk Bagian “Penulis”.Situs web – Jika Anda memiliki situs web untuk dihubungkan, atau ingin menautkan orang ke halaman plugin atau repositori GitHub, Anda dapat memasukkan URL di sini.Versi API – Masukkan versi API Bukkit yang Anda gunakan di sini . Jika Anda tidak memasukkan versi API, Minecraft akan menganggap itu memuat plugin lawas. Plugin mungkin masih berfungsi, meskipun Anda akan melihat peringatan bahwa plugin ini adalah versi lawas yang dicetak di konsol Anda saat memuat.
Berikut ini adalah contoh file plugin.yml berdasarkan konvensi penamaan yang digunakan dalam kode Tutorial RIP yang digunakan di artikel ini:
name: MyPlugin
versi: 1.0.0
utama: paket com.example.myplugin
deskripsi: Plugin uji untuk Minecraft
penulis: Tutorial RIP
situs web: https://riptutorial.com/bukkit
api-versi: 1.17

Apakah Bukkit Tepat untuk Mengakses dan Menggunakan NMS?

Dengan itu, Anda telah membuat ketergantungan Bukkit, membangun kelas utama untuk berfungsi sebagai pintu Bukkit ke dalam plugin, dan memiliki file plugin.yml yang dapat digunakan Bukkit untuk melihat apa yang dilakukan plugin . Namun, Anda mungkin tidak ingin melakukannya, karena Bukkit sudah ketinggalan zaman sehingga Anda harus menjalankan Minecraft versi lama untuk menggunakannya secara efektif. Sebagian besar sudah beralih ke Sprigot, yang mencerminkan sebagian besar dari apa yang dilakukan Bukkit sambil menawarkan kinerja yang lebih baik.

Jika Anda masih ingin menggunakan Bukkit untuk mengakses plugin, mengapa Anda memilihnya daripada API yang lebih modern? Jenis plugin apa yang Anda gunakan untuk meningkatkan pengalaman Minecraft Anda? Ceritakan semuanya di bagian komentar di bawah.

Terbaru

  • Apa Itu MJ di FF? Ini Pengertian, Asal-Usul, dan Risiko di Balik Istilah Tersebut
  • Apa Itu Pengertian Penonaktifan SPayLater? Ini Durasi Blokir Akibat Telat Bayar
  • Apa Itu Rasio Gambar Ukuran 1:1 di Canva? Ini Pengertian dan Cara Buatnya
  • Pengiriman Shopee Express Hemat itu Berapa Lama? Ini Pengertian dan Estimasi Sampainya
  • Android 2025: Aplikasi Baru dan Smartphone Impian yang Akan Datang!
  • Apa Itu Google AI Pro Ultra? Ini Pengertian dan Penjelasan Lengkapnya
  • Apa Itu Error Gagal Kirim Nilai RDM 3.1? Ini Pengertian dan Solusi Mengatasinya
  • Facebook Mulai Batasi Link Eksternal Cuma 2 Sebulan! Ini Trik Mengatasinya
  • Cara Nonton Tensura Season 4! Bakal Tayang April 2026 dengan Format 5 Cour
  • Belum Tahu? Inilah Trik Supaya Live TikTok Kalian Aman dan Banjir Cuan
  • Pixel 8 Dapatkan Mode Panorama Baru! Hasil Foto Lebih Luas & Lebih Kreatif
  • Apa Itu AppLocker? Ini Pengertian dan Cara Mengamankan Windows 11 Kalian dari Skrip Jahat
  • Cara Membuat Riwayat Copilot Kamu Tetap Bersih dan Rapi!
  • Game & Aplikasi Android Terbaik Saat Diskon Liburan Natal! Jangan Ketinggalan!
  • Apa Itu Game Prison Escape Journey? Ini Pengertian dan Cara Mainnya untuk Pemula
  • “Listrik Gratis” dari Solar Panel Cuma Mitos?! Ini Sisi Gelap PLTS
  • Samsung Galaxy Z-Fold: Uji Jatuh Bebas yang Mengguncang Keandalan Lipatannya
  • Google One 2026: Apa yang Akan Jadi Fitur Utama dan Harga yang Diharapkan?
  • Apa Itu Error 0x800704f8? Ini Pengertian dan Cara Mengatasinya
  • Android Akhirnya Dapat GPS Darurat di India! Setelah Hampir 10 Tahun
  • Apa Itu GetContact Premium? Ini Pengertian dan Cara Daftarnya
  • Android Maze Figure: Koleksi Baru Google yang Bikin Penggemar Bergairah!
  • Google Update Besar-besaran Desember 2025: Apa yang Akan Memengaruhi Pengalaman Anda?
  • Masih Pusing Hitung Gaji Manual? Waktunya Pakai Aplikasi HR
  • Apa Itu Dustruco? Ini Pengertian dan Cara Pasangnya di HP Kalian
  • Apa Itu Aplikasi Dooie Live? Ini Pengertian dan Cara Pakai Aplikasinya untuk Cari Jodoh
  • Apa Itu Battle Emote Jefri Nichol dan Om Telolet Om di MLBB? Ini Penjelasannya
  • Apa itu Game Luna Mobile dan Bagaimana Cara Menangnya?
  • Apa Itu Kompensasi Sistem Trail Mobile Legends? Ini Penjelasan dan Cara Klaim Hadiahnya
  • Apa Itu Update Google Pixel 2 Desember 2025? Ini Penjelasannya!
  • Apa itu Cosmic Desktop: Pengertian dan Cara Pasangnya di Ubuntu 26.04?
  • Apa Itu Auvidea X242? Pengertian Carrier Board Jetson T5000 dengan Dual 10Gbe
  • Elementary OS 8.1 Resmi Rilis: Kini Pakai Wayland Secara Standar!
  • Apa Itu Raspberry Pi Imager? Pengertian dan Pembaruan Versi 2.0.3 yang Wajib Kalian Tahu
  • Performa Maksimal! Ini Cara Manual Update Ubuntu ke Linux Kernel 6.18 LTS
  • Inilah Cara Kuasai Materi Sulit dalam Hitungan Menit Pakai Google NotebookLM: Tutorial Lengkap
  • Inilah Cara Membuat AI Agent Cerdas dan Memantaunya Menggunakan LangGraph dan LangSmith
  • Ini Alasan China Akan Menang di Dunia AI
  • Apa Itu AI Gateway? Ini Definisi Tulang Punggung Infrastruktur AI Modern
  • Apa Itu Google AI Pro Ultra? Pengertian dan Bedah Fitur Terbarunya
  • Apa Itu Serangan Phishing OAuth di Microsoft 365? Ini Definisi dan Cara Kerjanya
  • Apa Itu Distribusi Malware Via YouTube? Ini Pengertian dan Bahayanya Buat Kalian
  • Apa Itu Undang-Undang NDAA? Ini Pengertian dan Dampaknya Bagi Cyber Command Amerika Serikat
  • Tagihan AWS Sekarang Bisa Dibayar Pakai BNB via BPN, Ini Caranya!
  • Video Botol Teh Pucuk 1 Menit 50 Detik yang Viral di TikTok! Hati-Hati Kejahatan Siber
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2025 emka.web.id | Design: Newspaperly WordPress Theme