Panduan
Cara membuat plugin scoreboard Minecraft
Diperbarui 18 Oktober 2026
Sidebar di sisi kanan layar adalah bagian yang paling terlihat di banyak server: nama server, rank pemain, uang, kill, pemain online. Plugin menggambarnya lewat Scoreboard API Bukkit. Bagian tersulitnya adalah memberi setiap pemain baris miliknya sendiri dan memperbaruinya dengan mulus.
Sesuaikan baris-barisnya dengan servermu.
Buat ini dengan CodexeLangkah demi langkah
1.Tulis baris-barisnya
Judul dan setiap baris dari atas ke bawah, dengan nilai yang ditampilkan: "Rank: Admin", "Coins: 1,250", "Online: 34". Sidebar menampilkan paling banyak 15 baris.
2.Beri setiap pemain scoreboard
Baris yang berbeda untuk tiap pemain butuh scoreboard per pemain, dari
Bukkit.getScoreboardManager().getNewScoreboard(), dipasang denganplayer.setScoreboard(...)saat join.3.Buat objective sidebar
Daftarkan objective dummy dan atur display slot-nya ke
DisplaySlot.SIDEBAR. Setiap baris adalah entry dengan skor yang menentukan posisinya.4.Perbarui nilainya
Tugas berulang, misalnya setiap detik, hanya memperbarui baris yang berubah. Gunakan prefix dan suffix team untuk teksnya agar baris tidak berkedip.
5.Tambahkan placeholder
Dengan PlaceholderAPI, baris seperti
%vault_eco_balance%menampilkan nilai dari plugin lain tanpa kode tambahan.6.Build dan lihat di dalam game
Biarkan Codexe mengompilasinya, bergabunglah ke server uji coba dan periksa setiap baris, lalu ubah sebuah nilai dan lihat pembaruannya.
Cara kerja sidebar
- Hanya satu objective yang ditampilkan di sidebar pada satu waktu per scoreboard. Display name-nya menjadi judul.
- Baris diurutkan berdasarkan skornya, dari yang tertinggi, jadi skor hanyalah nomor baris secara terbalik.
- Setiap baris harus berupa entry yang berbeda: dua baris yang identik butuh perbedaan tak terlihat, seperti kode warna yang berbeda.
- Angka merah di sebelah kanan bisa disembunyikan sejak Minecraft 1.20.3, yang menambahkan format angka untuk skor. Versi lama selalu menampilkannya.
- Pemain melihat satu scoreboard: jika plugin lain memasang miliknya sendiri, yang terakhir yang menang. Gunakan satu plugin untuk sidebar, atau sebutkan plugin lain mana yang berbagi scoreboard.
Memperbarui tanpa kedip
Menghapus baris lalu menambah yang baru membuatnya berkedip. Solusi umumnya adalah memberi setiap baris entry tetap yang tak terlihat dan menaruh teks yang terlihat di prefix dan suffix team yang berisi entry itu; memperbarui team mengubah teks di tempat. Tulis "tanpa kedip" di permintaan dan plugin ditulis dengan cara ini.
Plugin, Skript, atau datapack?
| Opsi | Bisa | Batasan |
|---|---|---|
| Plugin | Baris per pemain, nilai apa pun, animasi, placeholder | Butuh Spigot, Paper, atau fork-nya |
| Skript dengan SkBee | Sidebar per pemain dari sebuah skrip | Butuh Skript dan add-on-nya |
| Datapack | Tampilkan satu objective, seperti kematian atau kill, di sidebar | Angka yang sama untuk semua orang, tanpa teks bebas per pemain |
Contoh deskripsi
"Plugin Paper 1.21.4 bernama Board. Sidebar untuk setiap pemain dengan judul berwarna emas, lalu rank (dari LuckPerms), koin (dari Vault), kill, kematian, pemain online, dan alamat server. Diperbarui setiap detik tanpa kedip, angka merah disembunyikan. Baris, judul, dan interval pembaruan di config.yml, dengan placeholder PlaceholderAPI boleh dipakai di baris mana pun. /board toggle menyembunyikannya per pemain dan pilihannya disimpan."
Pertanyaan
Berapa banyak baris yang bisa dimiliki sidebar?
15 baris ditampilkan. Konten yang lebih panjang butuh tempat lain, seperti tab list, action bar, atau boss bar.
Apakah ini berfungsi di 1.8?
Ya, Scoreboard API ada di 1.8, tetapi panjang teks per baris lebih terbatas di sana. Sebutkan versinya agar plugin ditulis untuk versi itu.
Kenapa scoreboard-ku menghilang?
Biasanya plugin lain memasang scoreboard-nya sendiri pada pemain setelah milikmu. Hapus sidebar yang lain, atau buat satu plugin yang menampilkan semuanya.
Buat sidebar-mu
Prompt ini terbuka dan siap dikirim:
“Plugin scoreboard sidebar Paper 1.21.4 bernama Board: sidebar per pemain dengan judul emas, rank dari LuckPerms, koin dari Vault, kill, kematian, pemain online, dan alamat server, diperbarui setiap detik tanpa kedip, angka merah disembunyikan, baris dan interval di config.yml dengan dukungan PlaceholderAPI, /board toggle disimpan per pemain.”
Buat ini dengan Codexe