Hướng dẫn

Cách làm plugin bảng điểm cho Minecraft

Cập nhật 18 tháng 10, 2026

Thanh bên ở mép phải màn hình là phần dễ thấy nhất của nhiều máy chủ: tên máy chủ, cấp bậc của người chơi, tiền, số mạng hạ, số người online. Plugin vẽ nó qua Scoreboard API của Bukkit. Phần khó là cho mỗi người chơi các dòng riêng và cập nhật chúng thật mượt.

Đổi các dòng cho phù hợp với máy chủ của bạn.

Tạo thứ này với Codexe

Từng bước

  1. 1.Viết các dòng

    Tiêu đề và từng dòng từ trên xuống dưới, với giá trị mà chúng hiển thị: "Rank: Admin", "Coins: 1,250", "Online: 34". Thanh bên hiển thị tối đa 15 dòng.

  2. 2.Cho mỗi người chơi một bảng điểm

    Các dòng khác nhau theo người chơi cần một bảng điểm riêng cho từng người, lấy từ Bukkit.getScoreboardManager().getNewScoreboard() và gán bằng player.setScoreboard(...) khi họ vào.

  3. 3.Tạo objective cho sidebar

    Đăng ký một objective dummy và đặt vị trí hiển thị là DisplaySlot.SIDEBAR. Mỗi dòng là một mục có điểm số quyết định vị trí của nó.

  4. 4.Cập nhật các giá trị

    Một tác vụ lặp lại, ví dụ mỗi giây, chỉ cập nhật những dòng đã thay đổi. Dùng tiền tố và hậu tố của team cho phần chữ để các dòng không bị nháy.

  5. 5.Thêm placeholder

    Với PlaceholderAPI, các dòng như %vault_eco_balance% hiển thị giá trị từ plugin khác mà không cần thêm mã.

  6. 6.Build và xem nó trong game

    Để Codexe biên dịch, vào máy chủ thử nghiệm và kiểm tra từng dòng, rồi thay đổi một giá trị và xem nó cập nhật.

Sidebar hoạt động thế nào

  • Mỗi bảng điểm chỉ hiển thị một objective trên sidebar tại một thời điểm. Tên hiển thị của nó chính là tiêu đề.
  • Các dòng được sắp theo điểm số, cao nhất ở trên, nên điểm số chỉ đơn giản là số thứ tự dòng theo chiều ngược lại.
  • Mỗi dòng phải là một mục khác nhau: hai dòng giống hệt nhau cần một điểm khác biệt vô hình, ví dụ mã màu khác nhau.
  • Các con số màu đỏ bên phải có thể ẩn đi từ Minecraft 1.20.3, phiên bản đã thêm định dạng số cho điểm. Các phiên bản cũ hơn luôn hiển thị chúng.
  • Mỗi người chơi chỉ thấy một bảng điểm: nếu một plugin khác đặt bảng điểm riêng, plugin đặt sau cùng sẽ thắng. Hãy dùng một plugin duy nhất cho sidebar, hoặc ghi rõ những plugin nào khác dùng chung bảng điểm.

Cập nhật không bị nháy

Xóa một dòng rồi thêm dòng mới sẽ khiến nó nhấp nháy. Cách khắc phục thường dùng là cho mỗi dòng một mục cố định, vô hình, và đặt phần chữ hiển thị vào tiền tố và hậu tố của một team chứa mục đó; cập nhật team sẽ đổi chữ ngay tại chỗ. Hãy ghi "không nháy" trong yêu cầu và plugin sẽ được viết theo cách này.

Plugin, Skript hay datapack?

Lựa chọnLàm đượcGiới hạn
PluginDòng riêng cho từng người chơi, mọi giá trị, hiệu ứng động, placeholderCần Spigot, Paper hoặc một bản fork
Skript với SkBeeSidebar riêng cho từng người chơi từ một scriptCần Skript và add-on
DatapackHiển thị một objective, như số lần chết hoặc số mạng hạ, trên sidebarCùng một con số cho mọi người, không có chữ tự do cho từng người chơi

Mô tả ví dụ

"Một plugin Paper 1.21.4 tên Board. Mỗi người chơi một sidebar với tiêu đề màu vàng kim, rồi đến cấp bậc (từ LuckPerms), coin (từ Vault), số mạng hạ, số lần chết, số người online và địa chỉ máy chủ. Cập nhật mỗi giây không bị nháy, ẩn số màu đỏ. Các dòng, tiêu đề và khoảng thời gian cập nhật trong config.yml, cho phép placeholder PlaceholderAPI ở mọi dòng. /board toggle ẩn sidebar theo từng người chơi và lựa chọn được lưu lại."

Câu hỏi

Sidebar có tối đa bao nhiêu dòng?

Hiển thị được 15 dòng. Nội dung dài hơn cần chỗ khác, như danh sách tab, action bar hoặc boss bar.

Nó có chạy trên 1.8 không?

Có, Scoreboard API có trên 1.8, nhưng độ dài chữ mỗi dòng ở đó bị giới hạn hơn. Hãy ghi phiên bản để plugin được viết cho nó.

Vì sao bảng điểm của tôi biến mất?

Thường là do một plugin khác đặt bảng điểm riêng cho người chơi sau plugin của bạn. Hãy gỡ sidebar kia, hoặc để một plugin hiển thị mọi thứ.

Tạo sidebar của bạn

Prompt này mở ra sẵn sàng để gửi:

“Một plugin bảng điểm sidebar Paper 1.21.4 tên Board: sidebar riêng cho từng người chơi với tiêu đề vàng kim, cấp bậc từ LuckPerms, coin từ Vault, số mạng hạ, số lần chết, số người online và địa chỉ máy chủ, cập nhật mỗi giây không bị nháy, ẩn số màu đỏ, các dòng và khoảng thời gian trong config.yml có hỗ trợ PlaceholderAPI, /board toggle được lưu theo từng người chơi.”

Tạo thứ này với Codexe
Cách làm plugin bảng điểm cho Minecraft (sidebar) | Codexe