Scoreboards Documentation
Everything you need to create and manage Discord leaderboards
- Tambahin bot-nya — Undang Scoreboards ke server Discord-mu lewat link undangan di beranda.
- Jalanin setup wizard — Pakai
/leaderboard create: satu formulir cepat buat ngasih nama leaderboard, milih tipe, dan kalau mau saluran log — board-nya langsung diposting di saluran itu. Board Point, Highscore, dan Time mulai dengan beberapa entri contoh biar kamu lihat board-nya jalan; contohnya langsung hilang begitu ada skor asli masuk. Habis itu, tekan Opsi lainnya di balasan buat atur urutan, pertandingan tim, atau free-for-all. - Atur role — Buka dashboard buat nentuin role
bot permission(siapa yang boleh ngelola leaderboard) dan rolevalidator(siapa yang boleh menyetujui submission). - Tambah leaderboard lain — Jalanin
/leaderboard createlagi untuk tiap leaderboard. Opsi lainnya di balasan buat atur urutan, pertandingan tim, atau free-for-all; sisanya ada di dashboard. - Tampilin — Pakai
/leaderboard showdi sebuah saluran buat posting leaderboard interaktif lengkap sama tombol submit dan navigasi halaman.
Scoreboards cuma butuh beberapa izin Discord, dan server dengan pengaturan bawaan sudah ngasih semuanya. Yang penting berlaku per saluran — bot bisa boleh di satu saluran dan dikunci di saluran sebelahnya — jadi kalau leaderboard berhenti update, ini tempat pertama buat dicek.
Di saluran leaderboard
- View Channel dan Read Message History — buat nemuin pesan leaderboard-nya sendiri dan ngeditnya. Tanpa ini board cuma refresh kalau ada yang jalanin
/leaderboard show: slash command tetap dijawab walau bot nggak bisa baca, edit nggak. - Send Messages — buat posting leaderboard dan ngasih tahu kalau ada yang salah.
- Embed Links dan Attach Files — leaderboard itu gambar dengan keterangan di bawahnya. Tanpa Attach Files gambarnya hilang; tanpa Embed Links, keterangan dan tabel cadangannya yang hilang.
- Create Public Threads dan Send Messages in Threads — thread match di leaderboard ELO dan League dibuka di sini.
Di saluran log
Set yang sama. Submission diposting di sana buat ditinjau dan bot ngeditnya waktu disetujui atau ditolak; entri gambar berupa lampiran. Kalau saluran leaderboard nggak bisa nampung thread match, thread-nya dibuka di sini. Kalau bot nggak bisa menulis di saluran log, permintaan review diposting di saluran leaderboard, dengan izin yang kurang disebutkan.
Seluruh server
- Manage Roles — buat Tier Roles dan role yang dijual di toko. Role Scoreboards juga harus berada di atas semua role yang dia bagikan, di Server Settings → Roles.
- Change Nickname — cuma kalau kamu ganti nama bot di Branding.
- Manage Channels, Connect, dan Move Members — cuma buat saluran suara matchmaking, dan cuma di kategori tempat saluran log berada.
Tautan Add to Discord minta View Channel, Send Messages, Embed Links, Attach Files, Read Message History, dan Send Messages in Threads. Sisanya datang dari bawaan @everyone server kamu atau dari role yang kamu kasih ke bot — jadi server yang udah ngunci @everyone harus ngasih izin itu ke bot sendiri, per saluran atau di role-nya.
Kalau ada izin yang kurang, bot bakal bilang, bukan diam-diam gagal: pesan di saluran leaderboard buat Embed Links, Attach Files, dan tier role yang nggak bisa dia kasih, dan satu di saluran log kalau dia sama sekali nggak bisa nyampe ke leaderboard.
Waktu bikin leaderboard pakai /leaderboard create, pilih salah satu dari tujuh tipe berikut:
Classic
Menambah atau mengurangi poin dari total berjalan. Paling pas buat penilaian yang terus menumpuk.
Highscore
Cuma nyimpen rekor pribadi terbaik tiap pemain. Skor lama yang lebih rendah otomatis ketimpa.
Time (Speedrun)
Kirim waktu dalam format 00:00:00 (perseratusan) atau 00:00:000 (milidetik) — format tampilannya diatur di dashboard, dan board baru default-nya milidetik. Pakai urutan menaik buat 'tercepat menang' atau menurun buat 'terlama menang'.
ELO - Ranked
Sistem rating ELO kompetitif, 1v1 atau tim 2v2–8v8. Kirim hasil match, dan rating semua peserta langsung ke-update otomatis.
Rating
Kirim gambar buat dikasih bintang sama komunitas (1–10). Semua vote dirata-rata jadi satu skor. Pas banget buat lomba seni dan tantangan kreatif.
League
Ranking berbasis poin per match buat olahraga kayak sepak bola, basket, dan FIFA. Poin per menang/seri/kalah bisa diatur (default 3/1/0), lengkap sama skor match (misal 3-1).
Levels (BETA)
Mengurutkan member berdasarkan XP yang mereka dapat dari ngobrol di chat dan nongkrong di voice channel. Sudah termasuk level, pesan naik level, dan role per level, dan nggak ada yang perlu ngirim apa-apa.
Kelola Leaderboard
| Perintah | Keterangan | Izin |
|---|---|---|
/leaderboard create | Buat leaderboard dalam satu formulir — nama, tipe, dan saluran log opsional — lalu posting di saluran; Opsi lainnya nanti buat atur urutan dan format pertandingan | Admin / Bot Permission |
/leaderboard show | Tampilkan leaderboard di saluran ini beserta tombol-tombol interaktifnya | Admin / Bot Permission |
/leaderboard settings | Buka dashboard buat ngatur scoreboard ini (urutan, visibilitas, header, mode tampilan, konfigurasi ELO, dan lainnya) | Admin / Bot Permission |
/leaderboard delete | Hapus permanen sebuah leaderboard beserta seluruh datanya (butuh konfirmasi) | Admin / Bot Permission |
Kirim Skor & Match
| Perintah | Keterangan | Izin |
|---|---|---|
/score | Atur atau sesuaikan skor, ELO, atau waktu pemain. Pilih leaderboard, lalu pilih Set atau Adjust di formulir yang terbuka. Papan peringkat penilaian gambar tidak termasuk. Komentar opsional menjelaskan kenapa, dan muncul di update skor di saluran log kamu. Pilih role untuk memberi perubahan yang sama ke semua member yang punya role itu. Untuk seluruh server, ketik @everyone di Pemain di luar server. | Admin / Bot Permission |
Konfigurasi
| Perintah | Keterangan | Izin |
|---|---|---|
/help | Buka dokumentasi bantuan interaktif dengan semua topik yang ada | Semua orang |
/feedback | Kirim masukan dengan kata-katamu sendiri: ide, masalah, apa saja | Semua orang |
/delete_my_data | Menghapus permanen leaderboard pribadi dan skormu, serta data mata uangmu di semua server (perlu konfirmasi) | Semua orang |
/uninstall | Hapus bot dari server. Formulir menanyakan kenapa tidak cocok (opsional); lalu semua leaderboard dan skor server dihapus | Admin |
Ekonomi (beta)
Ekonomi tidak punya slash command. Member menekan tombol Shop di bawah leaderboard, atau membuka halaman toko server, untuk melihat saldo, membeli role, emoji leaderboard, dan warna nama, serta membuka tiap pembayaran untuk melihat persis cara menghitungnya. Admin menyiapkannya, mengisi toko, dan memberi atau mengambil mata uang lewat dashboard, di bagian Ekonomi.
Ada dua cara buat kirim skor:
- Di Discord, klik tombol submit di pesan leaderboard yang udah diposting — namanya Submit score di Classic/Highscore/Time, Submit result di ELO sama League, dan Submit image di Rating. Bot bakal buka modal yang sesuai tipe leaderboard-nya — kolom skor, pemilih pemain + pemenang, pemilih pemain + skor, atau kolom nama beserta gambarnya sendiri. Di leaderboard tim, pemilihnya minta kamu nyusun roster penuh buat tiap sisi, bukan cuma satu pemain, dan leaderboard free-for-all punya tombol Report result sebagai gantinya.
- Atau buka leaderboard-nya di website lalu klik Submit buat alur yang sama — cuma di situ kamu bisa masukin nama bebas, buat pemain yang nggak ada di server Discord kamu.
Proses Review
- Submission-nya diposting ke log channel yang udah diatur (kalau ada).
- Validator atau admin mengklik Approve atau Reject. Pada match ELO atau League, pemain yang bertanding juga bisa menyetujui — cukup lawannya yang mengonfirmasi hasilnya, jadi server tidak butuh role validator agar match tetap berjalan. Orang yang melaporkan match tidak bisa menyetujui laporannya sendiri, dan hanya dia yang bisa menolaknya. Kalau leaderboard nggak punya saluran log, kiriman langsung disetujui; atur saluran log kalau mau nge-review dulu.
- Kalau ditolak, pengirimnya dapat DM berisi alasan penolakan.
- Kalau disetujui, leaderboard-nya langsung ke-update.
Auto-Approve
Tiap leaderboard bisa diatur buat menyetujui submission otomatis setelah jeda tertentu: Off, Instant, 1 hour, 3 hours, 24 hours, 3 days, atau 7 days. Default buat leaderboard ELO adalah 24 jam.
Membatalkan Skor
Admin dan validator bisa membatalkan skor yang terlanjur disetujui dengan klik kanan pesan submission-nya lalu pilih "Cancel Review". Perubahan skornya bakal dibalikin, dan alasan pembatalan wajib diisi.
Tipe leaderboard ELO - Ranked pakai sistem rating ELO buat meranking pemain secara kompetitif, baik 1v1 maupun tim sampai delapan orang per sisi.
Cara kerjanya
- Tiap pemain mulai dari ELO awal yang bisa diatur (default: 1200).
- Hasil match bisa menang, kalah, atau seri.
- Rating dihitung pakai K-factor 32.
- Rating semua peserta ke-update bersamaan setelah disetujui.
Match tim (2v2 – 8v8)
Leaderboard ELO dan League bisa dikunci ke ukuran tim tertentu — pilih pas bikin leaderboard-nya, atau ubah belakangan di Match format pada dashboard. Di leaderboard 3v3, tiap match berarti tiga pemain per sisi, dan leaderboard-nya tetap meranking pemain satu per satu.
Buat ELO, hasil yang diharapkan tiap tim dihitung dari rating rata-rata mereka, dan perubahannya diterapkan ke semua anggota tim itu — jadi ngalahin tim yang lebih kuat bikin semua orang di sisi pemenang dapat kenaikan yang sama. Buat League, tiap pemain di tim pemenang dapat poin menang, dan seluruh tim yang kalah dapat poin kalah.
Queue Matchmaking (Beta)
Kalau tombol queue diaktifkan di leaderboard, pemain tinggal klik buat masuk antrean matchmaking. Sistemnya ngelompokin pemain dengan rating ELO yang mirip pakai algoritma jendela melebar. Begitu ketemu lawan, sebuah thread dibikin buat match itu lengkap sama tombol voting komunitas. Kalau nggak ada lawan dalam 5 menit, antreannya kedaluwarsa.
Di leaderboard tim, queue-nya nunggu sampai pemainnya cukup buat ngisi dua sisi — enam orang buat 3v3 — lalu membaginya jadi dua tim dengan rata-rata rating sedekat mungkin, jadi pemain terkuat dan terlemah selalu berseberangan. Semua orang wajib klik Ready; yang nggak klik bakal dikeluarin, dan sisanya balik ke queue tanpa kehilangan antrean.
Tiap tim dapat voice channel sendiri biar bisa bahas strategi tanpa kedengeran lawan — kamu cuma bisa lihat dan masuk ke channel timmu sendiri. Dua-duanya dihapus begitu match selesai. Hasilnya baru dikunci kalau mayoritas tiap tim milih hasil yang sama (dua dari tiga di 3v3), jadi satu tim nggak akan pernah bisa ngaku menang sendiri; kalau hasilnya beda, sengketanya dilempar ke validator.
Queue nggak lagi khusus ELO: papan peringkat League juga bisa mengaktifkannya. Karena poin League itu total berjalan dan bukan ukuran skill, board League mencocokkan berdasarkan poin per match, jadi main lebih banyak saja nggak bikin posisimu di queue naik.
Tim tetap
Leaderboard ELO atau League berbasis tim juga bisa jalan dalam mode fixed teams (di-toggle di dashboard, sebelah Match format). Tim bernama yang permanen mendaftar sekali lewat tombol Team sign-up di leaderboard — pilih nama, lalu susun roster-nya, yang boleh nampung sampai dua cadangan di luar ukuran tim. Leaderboard-nya lalu meranking timnya sendiri: di board ELO tiap tim punya rating sendiri dan ngalahin tim yang lebih kuat lebih gede hasilnya; di board League, tabelnya meranking tim berdasarkan poin, persis liga olahraga beneran. Tim tetap di League nyatet match mereka lewat tombol Submit result di leaderboard.
Begitu ada anggota yang klik Queue, satu tim penuh masuk antrean dan semuanya dapat DM. Pencocokannya mempertemukan tim lawan tim berdasarkan rating tim, dan ready-check-nya sekalian jadi penentu lineup: anggota yang klik Ready paling awal sebanyak ukuran tim yang main, sisanya duduk manis. Hasilnya divoting sama pemain yang ikut main, dengan aturan mayoritas tiap sisi yang sama. Roster tiap tim bisa dilihat di halaman leaderboard di situs: jumlah anggota ada di samping nama tim, arahkan kursor ke situ buat lihat nama-namanya, dan buka timnya buat lihat roster lengkap dengan kaptennya ditandai.
Tipe leaderboard League meranking pemain berdasarkan total poin yang dikumpulin dari banyak match. Ini format yang pas buat olahraga kayak sepak bola, basket, futsal, hoki, dan kompetisi 1v1 atau tim mana pun yang klasemen musimannya jadi patokan utama.
Cara kerjanya
- Kirim match lewat tombol Submit result di leaderboard — bot bakal nanya kedua sisi beserta skor masing-masing (misal 3 dan 1).
- Skor lebih tinggi menang; skor sama berarti seri.
- Sisi yang menang dapat points_win, yang kalah dapat points_loss, dan kalau seri semuanya dapat points_draw. Di liga tim, tiap pemain di satu sisi dapat poin sisi itu.
- Leaderboard-nya meranking pemain berdasarkan total poin; jumlah M/S/K dicatat terpisah.
Poin default
Liga baru default-nya 3 / 1 / 0 (standar FIFA sejak 1994). Ketiga nilainya bisa diatur per leaderboard lewat dashboard. Pakai 2 / 1 / 0 buat hoki, 4 / 2 / 0 buat rugbi, atau skema apa pun yang cocok sama olahragamu.
Mengirim match
Dari website, buka leaderboard-nya lalu klik Submit — isi kedua sisi beserta skor match-nya. Di Discord, tombol Submit result di leaderboard-nya sendiri yang membuka form yang sama. Match dengan pemain yang sama di kedua sisi dan skor negatif langsung ditolak waktu dikirim.
Liga tim
Leaderboard League bisa dikunci ke ukuran tim tertentu, 2v2 sampai 8v8, pas dibikin atau belakangan lewat Match format di dashboard. Tabelnya tetap meranking pemain satu per satu: semua pemain di sisi pemenang dapat poin menang, seluruh sisi yang kalah dapat poin kalah, dan skor match-nya dihitung sebagai gol memasukkan dan kemasukan buat masing-masing.
Pengin tabel liga klasik yang barisnya adalah tim? Nyalain Fixed teams di sebelah Match format: tim bernama yang permanen mendaftar lewat tombol Team sign-up di leaderboard (roster boleh bawa sampai dua cadangan), match dikirim tim lawan tim beserta skornya, dan tabelnya meranking tim berdasarkan poin. Roster tiap tim bisa dilihat di halaman leaderboard di situs: jumlah anggota ada di samping nama tim, arahkan kursor ke situ buat lihat nama-namanya, dan buka timnya buat lihat roster lengkap dengan kaptennya ditandai.
Review & pembatalan
Match League pakai antrean review yang sama kayak match ELO: validator menyetujui atau menolak tiap submission, poinnya masuk begitu disetujui, dan match yang udah disetujui masih bisa dibatalin belakangan (poin yang tadi diberikan bakal dibalikin persis).
Leaderboard ELO dan League nggak harus dua sisi. Di match bebas semua lawan semua, semua yang ikut main sendiri-sendiri — 3 sampai 8 pemain — dan hasilnya adalah posisi finis masing-masing. Nyalain lewat opsi ffa_players waktu bikin leaderboard, atau nanti di Match format di dashboard. Ini menggantikan match tim: leaderboard bebas semua lawan semua nggak bisa sekalian punya ukuran tim atau tim tetap, dan menyalakannya cuma berpengaruh ke match baru, jadi semua yang sudah tercatat tetap persis seperti sekarang.
Jenis hasilnya
| Hasil | ELO | League |
|---|---|---|
| Urutan finis lengkap — dari pertama sampai terakhir | ✓ Ya | ✓ Ya |
| Semua seri | ✓ Ya | ✓ Ya |
| Satu pemenang, sisanya tanpa posisi | — Nggak tersedia | ✓ Ya |
Cuma-pemenang itu mode League. Di sana memang nggak butuh lebih dari itu: pemenang dapat poin menang, sisanya poin kalah. Rating nggak bisa sesantai itu — kalau yang kalah nggak punya posisi, satu-satunya hal jujur yang bisa dibilang soal mereka adalah semuanya seri, dan akhirnya pemain ber-rating rendah malah naik rating dari match yang di catatannya dihitung kalah. Makanya bebas semua lawan semua di ELO minta urutan lengkap, atau seri total yang memang beneran terjadi.
Melaporkan hasil
Leaderboard bebas semua lawan semua punya tombol Report result menggantikan Submit result. Pilih dulu semua yang ikut main — tepat sebanyak ukuran lobby leaderboard-nya, jadi leaderboard 6 pemain menerima 6 dan formulirnya tidak bisa dikirim dengan 5. Formulir yang sama bisa sekaligus membawa hasilnya: tunjuk pemenang dan match langsung terlapor, dan di leaderboard dengan tabel posisi field itu melebar jadi seluruh urutan finis — juara 1 dulu, lalu 2, dan seterusnya. Kosongkan saja kalau mau lewat langkah hasil. Habis itu atur hasilnya: leaderboard League nanya siapa yang menang, dengan Semua seri di menu yang sama dan Atur urutan lengkap kalau kamu lebih suka mengurutkan seluruh peserta; leaderboard ELO langsung minta urutannya, satu posisi tiap ketukan, dengan Batalkan terakhir buat salah pencet dan tombol Semua seri di sebelahnya. Tombol kirim tetap abu-abu sampai hasilnya jadi sesuatu yang bisa dinilai leaderboard. Tombol itu satu-satunya cara melaporkan hasil bebas semua lawan semua di Discord — kalau leaderboard kamu nggak menampilkannya, nyalakan lewat Tampilan Discord → Tombol Submit di dashboard, atau laporkan pertandingannya dari halaman leaderboard di situs web.
Setelah itu, bebas semua lawan semua cuma submission biasa. Masuk antrean review, validator menyetujui atau menolaknya (atau auto-approve yang melakukannya setelah jeda yang diatur), rating dan poin bergerak begitu disetujui, dan membatalkan match yang sudah disetujui mengembalikan tiap pemain persis sebanyak yang tadi diberikan.
Cara kerja rating-nya
Match bebas semua lawan semua di ELO dinilai sebagai semua duel satu-lawan-satunya sekaligus. Tiap pasang pemain dibandingkan — posisi lebih bagus mengalahkan yang lebih jelek, posisi sama berarti seri di antara mereka — dan tiap hasil mini itu dihitung dengan matematika expected-score yang sama seperti 1v1. Jadi finis di atas pemain yang rating-nya jauh di atas kamu jauh lebih berharga daripada finis di atas peserta paling bawah. Setelah itu K-factor dibagi jumlah lawan, dan itulah yang bikin satu match bebas semua lawan semua setara kira-kira satu match, bukan tujuh duel yang secara teknis kamu mainkan.
Semuanya persis nol-jumlah: yang hilang dari peserta adalah yang didapat sisanya, sampai poin terakhir. Enam pemain dengan rating sama di K=32 berakhir +16, +10, +3, −3, −10, −16. Catatan menang-kalah ikut posisi finis — juara satu, termasuk kalau seri di posisi itu, dihitung menang, semua di bawahnya kalah, dan semua-seri dihitung seri buat seluruh peserta.
Poin posisi di leaderboard League
Match bebas semua lawan semua di League bisa membagi poin ke seluruh peserta lewat tabel poin posisi, gaya F1: sekian poin buat juara satu, sekian buat juara dua, dan seterusnya sampai bawah. Kamu ngeditnya di dashboard, di bawah poin menang/seri/kalah, di leaderboard League mana pun yang main bebas semua lawan semua. Pemain yang seri sama-sama dapat poin posisi yang mereka bagi, dan siapa pun yang finis melewati akhir tabel tetap dapat entri terakhirnya.
Tabelnya cuma dipakai kalau semua orang punya posisi. Ada satu saja yang ditinggal tanpa posisi — laporan cuma-pemenang, atau urutan yang kamu berhentiin di tengah — tabelnya nggak dipakai sama sekali: juara satu dapat poin menang milik leaderboard dan sisanya poin kalah. Itu juga yang kamu dapat kalau nggak ada tabel sama sekali, jadi tabelnya opsional. Semua-seri ngasih poin seri ke semua orang, apa pun isi tabelnya.
Bebas semua lawan semua di antrean matchmaking
Dengan tombol antrean nyala, leaderboard bebas semua lawan semua mengantrekan pemain satuan dan jalan begitu jumlahnya tepat seukuran lobby — enam pemain di leaderboard 6 pemain, nggak pernah lima dan nggak pernah tujuh. Nggak ada sisi yang perlu diseimbangkan, jadi lobby-nya ya sekadar kelompok dengan rating paling berdekatan yang bisa dikumpulkan antrean. Semuanya tetap harus mencet Ready, dan match-nya dapat satu voice room bareng: di bebas semua lawan semua nggak ada rekan setim yang perlu disembunyiin.
Hasilnya dilaporin, bukan divoting — tiga tombol vote nggak bisa mengungkap urutan finis delapan pemain. Pemain mana pun di lobby ngatur hasilnya di pesan match dan sisanya mencet Konfirmasi; terkunci begitu mayoritas peserta setuju (dua dari tiga, lima dari delapan), dengan yang melaporin dihitung sebagai yang pertama. Sengketakan nyerahin match ke validator, yang ngatur hasil yang benar lalu mengonfirmasinya sendiri. Match dari antrean beres di thread-nya sendiri, jadi nggak lewat antrean review.
Tipe leaderboard Rating bikin member komunitas bisa kirim gambar dan saling ngasih bintang ke karya satu sama lain.
Cara kerjanya
- Pemain kirim gambar lewat tombol Submit image di leaderboard — formnya minta nama, deskripsi opsional, dan gambarnya sendiri.
- Submission-nya muncul di log channel yang udah diatur, lengkap sama dropdown penilaian.
- Siapa pun bisa kasih 1 sampai 10 bintang. Nilainya dirata-rata jadi satu skor. Beri nilai di bawah tiap entri, atau tekan Rate entries di leaderboard untuk menilai satu per satu semua entri yang belum kamu nilai.
- Vote bisa diubah kapan aja — satu orang cuma punya satu suara per submission.
- Leaderboard-nya meranking submission berdasarkan rata-rata penilaian.
Menilai lewat website
Di website, semua submission muncul di tab Entries. Klik salah satunya buat lihat gambar penuh dan kasih nilai lewat tombol bintang. Vote yang udah kamu kasih tetap diingat lintas sesi.
Leaderboard Levels (BETA) mengurutkan member server kamu berdasarkan XP. Nggak ada yang ngirim apa-apa: member dapat XP dengan ngobrol di chat dan ngomong di voice channel, bot yang ngitung sendiri, dan level tiap member ditentukan dari XP-nya. Satu server cuma punya satu leaderboard Levels (BETA) dalam satu waktu, dan itu selalu leaderboard server — leaderboard pribadi nggak bisa jadi Levels (BETA).
Cara dapat XP
- Pesan — tiap pesan ngasih XP acak antara 15 sampai 25, tapi cuma satu pesan per member tiap 60 detik yang dihitung. Sepuluh pesan cepat berturut-turut hasilnya sama kayak satu.
- Voice — 10 XP untuk tiap menit di voice channel, selama member nggak di-mute atau di-deafen, nggak ada di channel AFK server, dan ada minimal satu orang lain (bukan bot) di channel itu.
- Bot, webhook, dan pesan sistem Discord (member gabung, boost, pin) nggak pernah dapat XP, dan pesan cuma dihitung di channel yang bisa dilihat bot.
Semua angka ini bisa diatur di pengaturan Levels (BETA) leaderboard-nya di dashboard: rentang XP per pesan, jeda antar pesan, dan XP per menit di voice (0 mematikan XP voice).
Dari XP ke level
Level member dihitung dari XP-nya tiap kali ditampilkan, jadi nggak pernah disimpan. Kurva standar adalah yang dipakai kebanyakan bot level di Discord: naik dari level L ke level berikutnya butuh 5L² + 50L + 100 XP. Kurva linear butuh 100L + 75 XP per level, jadi awalnya sedikit lebih berat tapi level tinggi tercapai jauh lebih cepat. Total XP yang dibutuhkan untuk mencapai sebuah level:
| Level | Standar | Linear |
|---|---|---|
| 5 | 1.150 | 1.375 |
| 10 | 4.675 | 5.250 |
| 20 | 23.850 | 20.500 |
| 50 | 268.375 | 126.250 |
| 100 | 1.899.250 | 502.500 |
Ganti kurva nggak mengubah XP siapa pun; yang berubah cuma level hasil hitungannya.
Channel dan role tanpa XP
Pilih channel tempat pesan dan waktu di voice nggak dapat apa-apa — thread dihitung sebagai bagian dari channel-nya — dan role yang member-nya nggak pernah dapat XP, misalnya role untuk member yang di-mute.
Pesan naik level
Waktu member mencapai level baru, bot memposting pesan yang menyebut mereka. Defaultnya, pesan masuk ke channel tempat member barusan ngobrol; kamu bisa kirim ke satu channel tetap, atau mematikannya. Kamu bisa nulis teks sendiri, maksimal 200 karakter, dengan {user}, {level}, dan {board} yang otomatis diisi. Pesannya cuma nge-ping member yang naik level, walaupun teksnya ada @everyone, dan kalau lebih dari tiga member naik level di channel yang sama pada saat yang sama, mereka berbagi satu pesan. Bot butuh izin untuk mengirim pesan di channel itu.
Role per level
Di leaderboard Levels (BETA), tier role punya mode keempat, level: satu role mulai level 5, role lain mulai level 10, dan seterusnya. Kalau Simpan tier role yang lebih rendah aktif, member menyimpan semua role yang sudah mereka capai; kalau dimatikan, mereka cuma menyimpan yang tertinggi. Role berubah nggak lama setelah member mencapai level baru.
Mata uang per level
Kalau server kamu menjalankan ekonomi, kamu bisa bayar mata uang untuk level: jumlah tetap setiap kali member mencapai level baru, dibayar sekali per level. Ini dihitung dalam batas harian yang sama dengan semua pembayaran lain, dan aturan umur akun yang sama berlaku. Pesan dan menit di voice sendiri nggak menghasilkan mata uang.
Season
Waktu season berakhir, leaderboard dibekukan: XP berhenti dihitung dan klasemen tetap seperti waktu selesai. Kalau dicairkan lagi, lanjut dari XP yang sama. Buat mulai dari nol, bikin leaderboard Levels (BETA) baru dan biarkan yang beku jadi arsip — leaderboard beku nggak dihitung dalam batas satu per server.
Impor dan atur XP manual
Pindah dari bot level lain? Impor XP dari file CSV, satu name,xp per baris, lewat Impor dari CSV di dashboard, seperti dijelaskan di Impor & Migrasi. Pakai user id Discord tiap member sebagai nama: dengan begitu barisnya tersambung ke member itu, dan XP yang mereka dapat setelahnya ditambahkan ke situ. Baris dengan nama lain jadi entri kustom yang nggak ketambahan aktivitas siapa pun.
Untuk mengatur XP secara manual, pakai /score di Discord, atau Set XP dan Adjust XP di menu pemain di website. Impor atau perubahan manual nggak memposting pesan naik level dan nggak membayar hadiah level; tier role menyusul waktu leaderboard digambar ulang berikutnya.
Pindah dari MEE6 atau bot level lain
Scoreboards nggak mengimpor dari MEE6 secara otomatis: syarat layanan MEE6 nggak mengizinkan akses otomatis ke layanan mereka, jadi bot nggak pernah membaca leaderboard bot lain untuk kamu. Sebagai gantinya, kamu bisa memindahkan XP member kamu sendiri — itu data server kamu sendiri — dengan satu file CSV:
- Salin total XP tiap member dari leaderboard server kamu di MEE6 atau bot lain itu. Salin XP-nya, bukan level-nya: level ditentukan dari XP. Kalau MEE6 menampilkan angka yang dibulatkan seperti 12.5k, tulis angka lengkapnya (12500); XP-nya bisa jadi sedikit meleset.
- Salin user id Discord tiap member: nyalakan Developer Mode di Discord (Settings → Advanced), lalu klik kanan member itu dan pilih Copy User ID.
- Tulis satu
name,xpper baris, dengan user id sebagai nama dan XP dalam angka saja:12500, bukan12,500atau12.500. Baris yang ditulis begitu dilewati dan ditampilkan dengan nomor barisnya, jadi kamu bisa memperbaikinya lalu mengimpor lagi. - Di dashboard, buka leaderboard Levels (BETA) dan pakai Impor dari CSV. Tiap baris menggantikan XP member, bukan menambahkannya, jadi impor sebelum member dapat banyak XP di sini. File yang sudah diperbaiki bisa diimpor ulang kapan saja, dan satu file muat sampai 500 baris.
name,xp 123456789012345678,4675 234567890123456789,23850
Cuma user id yang menyambungkan sebuah baris ke seorang member: nama berisi 17 sampai 20 digit dibaca sebagai user id Discord, dan XP yang didapat member itu setelahnya ditambahkan ke situ. Username atau nama lain apa pun nggak dicocokkan ke siapa pun; barisnya jadi entri kustom yang nggak ketambahan aktivitas siapa pun.
Kurva standar sama dengan yang dipakai MEE6, jadi XP yang sama menghasilkan level yang sama: 4.675 XP adalah level 10 di keduanya. Impor nggak memposting pesan naik level dan nggak membayar hadiah level. Hadiah role nggak ikut pindah: atur lagi sebagai tier role dengan mode level, dan member dapat role-nya saat leaderboard digambar ulang berikutnya. Setelah itu, matikan fitur level di bot lain itu supaya member nggak dapat dua pesan naik level.
Seberapa sering leaderboard diperbarui
Pesan leaderboard di Discord digambar ulang waktu ada yang mencapai level baru atau urutan posisi yang ditampilkan berubah — paling sering sekali per menit — dan selain itu kira-kira tiap 15 menit selama member masih dapat XP. Leaderboard yang nggak ada aktivitasnya nggak digambar ulang. Baris Terakhir diperbarui di bawahnya menunjukkan kapan terakhir digambar. Rank-ku dan leaderboard di website menampilkan XP dalam hitungan detik.
Privasi
Bot nggak pernah membaca apa yang ditulis member. Bot nggak memakai intent Message Content dari Discord, dan nggak pernah membaca atau menyimpan teks pesan apa pun. Untuk tiap member yang dapat XP, bot menyimpan ID Discord dan nama tampilan, total XP, berapa banyak pesannya yang dapat XP, berapa menit di voice yang dapat XP, dan kapan terakhir kali dapat XP, plus snapshot peringkatnya tiap malam untuk grafik riwayat peringkat. Nggak ada yang disimpan per pesan. Datanya dihapus bersama leaderboard-nya, dan bersama data server lainnya waktu bot dikeluarkan. Kalau ekonomi server membayar mata uang per level, tiap level yang dicapai juga menambah satu entri di catatan mata uang member, yang disimpan bersama data mata uang lainnya. Detailnya ada di Kebijakan Privasi.
Atur siapa yang boleh lihat leaderboard-mu di website Scoreboards:
Bisa dilihat semua orang di website.
Cuma member server Discord-mu yang bisa lihat (harus login), dan di daftar Leaderboards cuma admin server yang lihat.
Cuma member dengan role Discord tertentu dan admin server yang bisa lihat.
Sama sekali nggak ditampilkan di website.
Kasih role Discord ke pemain secara otomatis berdasarkan peringkat mereka di leaderboard. Misalnya, 3 besar dapat role "Champion", rank 4–10 dapat role "Veteran", dan seterusnya.
- Atur tier lewat dashboard web di pengaturan tiap leaderboard.
- Pilih dasar penentuan tier: lewat rank (rank 1–3), lewat persentil (10% teratas), atau lewat skor (semua yang punya 2000+ poin). Leaderboard Levels (BETA) juga bisa pakai level (semua yang sudah level 10 ke atas). Semua tier di satu leaderboard pakai mode yang sama.
- Pasangkan role Discord yang udah ada ke tiap tier.
- Role dikasih dan dicabut otomatis tiap peringkat berubah.
- Role Scoreboards harus berada di atas semua role yang dia bagikan, di Server Settings → Roles. Discord ngelarang bot ngatur role yang sejajar atau lebih tinggi dari rolenya sendiri, dan bot bakal ngasih peringatan di saluran leaderboard kalau kejadian.
Udah punya kompetisi yang jalan di tempat lain? Satu file CSV bisa ngisi seluruh leaderboard sekaligus, jadi kamu nggak perlu ngetik ulang apa-apa.
Buka dashboard, pilih leaderboard, terus pakai Impor dari CSV. Jalannya sama buat leaderboard server maupun leaderboard pribadi, yang emang nggak punya server Discord. Formatnya sama aja — satu name,score per baris:
name,score Alex,120 "Cooney, EM",95 Sam,88
- Baris judul kedeteksi dan dilewati otomatis.
- Koma, titik koma, dan tab sama-sama jalan sebagai pemisah — apa pun yang dikeluarin spreadsheet-mu.
- Nama yang mengandung koma tetap jalan kalau dikasih tanda kutip, kayak
"Cooney, EM". - Kalau namanya berupa user id Discord, entri itu disambungkan ke member terkait dan tampil pakai display name mereka. Selain itu jadi entri kustom.
- Nama yang muncul dua kali dipakai nilai terakhirnya, jadi kamu bisa impor ulang file yang udah dibenerin.
- Baris yang nggak kebaca dilewati dan dilaporkan lengkap sama nomor barisnya — sisanya tetap masuk, jadi kamu tinggal benerin satu-dua baris lalu impor lagi.
Waktu nerima mm:ss, hh:mm:ss, plus pecahan detik yang opsional: 1:30, 1:12:44.081. Angka polos dibaca sebagai milidetik. Ingat, tiga angka yang dipisah titik dua berarti jam:menit:detik, jadi tulis presisi di bawah satu detik setelah tanda titik.
Leaderboard Levels (BETA) pakai name,xp dengan user ID Discord tiap member sebagai nama — username jadi entri terpisah yang nggak pernah dapat XP. Angkanya adalah total XP member, dan menggantikan XP yang mereka punya sebelumnya. Impor nggak memposting pesan naik level dan nggak membayar hadiah level.
Batasnya: 500 baris dan 100 KB per file — pecah dulu ekspor yang lebih gede lalu impor bertahap. Leaderboard Image Rating nggak bisa diimpor, karena isinya gambar yang diunggah, bukan skor.
Musim bikin kamu bisa menutup kompetisi tanpa kehilangan apa pun. Atur waktu berakhir (atau akhiri dari dashboard) dan board membeku: podium diposting dan klasemen tetap persis seperti saat berakhir.
- Nggak ada yang di-reset atau dihapus — board yang beku adalah arsip permanen musimnya, kelihatan buat semua orang.
- Board yang beku nggak nerima kiriman, match, atau vote baru; admin bisa mencairkannya kapan aja.
- Semua tipe board bisa punya musim — termasuk Image Rating, di mana membekukan board blind voting juga mengungkap hasilnya.
- Mau musim baru? Bikin board baru dan biarkan board beku jadi arsipnya.
Rekap mingguan ngirim ringkasan singkat ke saluran leaderboard tiap Senin: tiga besar, kenaikan rank terbesar minggu itu, dan seberapa ramai aktivitasnya. Cuma board yang punya minimal tiga skor dalam seminggu terakhir yang dapat, jadi leaderboard yang lagi sepi ya tetap adem. Rekap bisa dimatiin per leaderboard lewat dashboard di website.
Ekonomi mengubah hasil pertandingan jadi mata uang yang dibelanjakan member di toko server. Fitur ini masih beta, dan tetap mati sampai admin menyiapkan dan meluncurkannya dari dashboard di bagian Ekonomi — setelah itu, setiap hasil yang disetujui server akan membayar pemainnya. Satu pembayaran terdiri dari dasar yang tetap plus sebagian pool variabel: sebagian pool mengikuti hasilnya dan sebagian lagi mengikuti faktor kejutan, jadi menang lawan orang yang rating-nya jauh di atasmu lebih berharga daripada menang lawan yang di bawahmu. Di board Classic, Highscore, atau Time tidak ada lawan, jadi posisimu di board yang mengambil peran itu. Saldonya satu per member untuk seluruh server, dipakai bareng semua leaderboard di dalamnya.
- Menang beruntun nambah 2% tiap kemenangan, sampai batas yang kamu tentuin.
- Melawan lawan yang sama berulang kali bayarannya makin kecil dalam rentang seminggu: dua pertandingan pertama dibayar penuh, dan setiap pertandingan setelahnya dibayar lebih sedikit, sampai tinggal sepersepuluh.
- Batas harian membatasi berapa banyak yang bisa dibawa pulang satu member dalam sehari, dan secara default akun Discord harus berumur 7 hari sebelum bisa mendapat apa pun.
- Kalau hasil dibatalin, diedit, atau dihapus, bayarannya ditarik lagi, persis sebesar yang dulu dibayar — kalau uangnya udah kepakai, saldo bisa minus. Tiap barisnya kelihatan di halaman shop server.
- Board Image Rating nggak bayar apa-apa — nggak ada hasil yang bisa dihargain.
- Leaderboard Levels (BETA) justru bayar per level: jumlah tetap setiap kali member mencapai level baru, diatur di pengaturan Levels (BETA) leaderboard-nya dan dihitung dalam batas harian.
Member membelanjakannya di halaman toko server. Halaman ini khusus untuk member server: mereka login dengan Discord untuk melihat saldo, membeli, memilih apa yang dipakai, dan membuka tiap pembayaran untuk melihat persis cara menghitungnya. Tombol Shop di bawah leaderboard di Discord membawa mereka langsung ke sana. Saat meluncurkan ekonomi, tombol itu bisa dipasang di bawah semua leaderboard sekaligus, dan tiap leaderboard punya pengaturannya sendiri di Discord → Branding & personalisasi.
Halaman itu ada di scoreboards.dev/shop/server-kamu, satu untuk tiap server, dan halaman leaderboard server juga menautkannya. Toko ini menjual tiga jenis produk. Role Discord langsung diberikan begitu member membeli, untuk selamanya atau, kalau sewa aktif, untuk jangka waktu tertentu; setelah itu role dilepas dan member bisa membelinya lagi. Scoreboards harus ada di atas setiap role yang dijualnya di Server Settings → Roles, dan dashboard membuat abu-abu role yang tidak bisa diberikannya sambil menjelaskan alasannya. Emoji leaderboard tampil di samping nama pembeli di leaderboard server, di website maupun di Discord. Emoji yang dibeli menggantikan medali, termasuk di 3 besar, dan kalau medali sebuah board dimatikan, emoji itu tetap tampil selama ekonomi menyala. Nama sendiri dibersihkan dari emoji di board, jadi emoji yang dibeli tidak bisa dipalsukan dengan ganti nama. Warna nama mewarnai nama pembeli di website dan di leaderboard gambar di Discord, tapi tidak di board yang diposting sebagai embed teks. Begitu seseorang membeli atau memasang sesuatu, leaderboard Discord tempat dia berada langsung digambar ulang untuk menampilkannya.
Server bisa menjalankan season mata uang, terpisah dari season leaderboard-nya. Saat satu berakhir — sesuai panjang yang diatur di dashboard, atau saat admin mengakhirinya di sana — berikutnya langsung dimulai, dan kalau pembagian dua aktif, setiap saldo 2 ke atas dibagi dua dulu. Role dan item yang dibeli tetap dimiliki. Member bisa melihat tanggal berakhirnya lebih dulu di halaman toko, dan akhir season diposting di log channel.
Kalau prestise aktif, member yang saldonya mencapai batas yang diatur admin bisa membakar semuanya di halaman toko untuk level prestise berikutnya. Level prestise tampil sebagai bintang dan angka di samping namanya di leaderboard website dan kartu Discord, bertahan melewati setiap akhir season, dan diumumkan di log channel.
Kalau stok bergilir aktif, setiap item toko bisa punya tanggal mulai dan berakhir, yang diatur saat kamu menambah atau mengubah produknya. Sebelum mulai, halaman toko menampilkannya sebagai segera hadir; saat berakhir, item keluar dari rak dan tidak bisa dibeli lagi.
Kalau lelang aktif, admin melelang role atau kosmetik dari dashboard dan member menawar di halaman toko. Tawaran ditarik saat diajukan dan dikembalikan begitu ada yang menawar lebih tinggi, dan tawaran di lima menit terakhir memundurkan waktu tutup. Saat ditutup, tawaran pemenang dimusnahkan, hadiahnya diberikan, dan hasilnya diposting di log channel.
Menyiapkannya cuma empat langkah di dashboard, di bagian Ekonomi, dalam mode Sederhana: beri nama mata uang; pilih cara member mendapat mata uang dari tiga tempo, masing-masing menunjukkan kira-kira berapa yang didapat member aktif dalam seminggu; isi toko, dengan paket awal sekali klik berisi enam warna nama dan enam emoji leaderboard yang harganya pas untuk tempo itu (langkah ini bisa dilewati); lalu luncurkan, dengan kotak beta yang harus dicentang dan tombol Shop di bawah setiap leaderboard yang sudah tercentang secara default. Produk ditambah dan diubah di Ekonomi → Toko, lewat panel singkat tiga langkah dengan saran harga dan pratinjau. Mode Lanjutan menambahkan angka pembayaran, siapa yang dapat, log channel, season, sewa, prestise, stok bergilir, dan lelang. Admin memberi dan mengambil mata uang lewat website — dari menu konteks pemain di leaderboard, atau di Ekonomi → Member untuk member yang tidak ada di board mana pun; keduanya diposting ke log channel yang kamu pilih, jadi tidak ada yang perlu percaya omongan moderator begitu saja. Mata uangnya bukan uang sungguhan: tidak punya nilai tukar, tidak bisa dibawa keluar dari server tempat mendapatkannya, dan bisa direset kapan saja.