Bảng xếp hạng

Quy tắc tính điểm & xếp hạng LifeQuest

Cập nhật ngày 01/12/2025

1. Cách chấm XP

Hành động XP Ghi chú
Đăng nhập mỗi ngày +2 XP Chỉ nhận 1 lần/ngày, dựa trên log daily_login.
Hoàn thành bất kỳ hoạt động thói quen/thử thách +3 XP Log daily_activity, ghi nhận sau khi cập nhật tiến độ.
Đăng bình luận trong ngày +1 XP Giới hạn 1 lần/ngày để tránh spam.
Giữ streak thói quen +2 → +32 XP Thưởng tại các mốc 7/14/21/28/35 ngày, tăng gấp đôi mỗi mốc.
Hoàn thành thử thách Công thức XP = ceil((số ngày / 3) * 1.5 + (streak / 7) * 2). Áp dụng thử thách ≥ 3 ngày.
Thử thách nổi bật của người tạo +5 → +20 XP Mốc 20 người tham gia (+5), thử thách dài > 7 ngày (+5), 10 người hoàn thành (+10), 20 người hoàn thành (+20).

2. Cách xếp hạng

  • Bảng xếp hạng lấy tổng XP trong cơ sở dữ liệu, chỉ tính người dùng trạng thái active.
  • Bộ lọc thời gian: tất cả, tuần, tháng, năm. Chúng tôi dùng khoảng thời gian theo múi giờ hệ thống (Asia/Ho_Chi_Minh).
  • Khi nhiều người cùng tổng XP, hệ thống dùng RANK() (SQL window function) để xác định thứ hạng và sắp xếp tên theo alphabet.
  • Widget Leaderboard (sidebar) hiển thị top 20 và vị trí hiện tại của bạn nếu nằm ngoài top.
  • Trang Leaderboard đầy đủ có phân trang 50 người/lần và đồng bộ với widget.

3. Quy tắc công bằng

  • Tài khoản bị tạm khóa hoặc vi phạm chính sách bảo mật sẽ bị loại khỏi bảng xếp hạng.
  • Chúng tôi hạn chế nhận XP trùng lặp bằng cách kiểm tra log theo ngày. Mọi hành vi tự động hóa, spam hoặc gian lận sẽ bị trừ XP và ghi log.
  • Yêu cầu điều chỉnh XP cần gửi qua trang Liên hệ trong vòng 7 ngày kể từ khi phát sinh.

4. Câu hỏi thường gặp

Tôi đổi tên, thứ hạng có bị ảnh hưởng không?
Không. XP dựa trên ID người dùng nên không bị ảnh hưởng bởi thay đổi hồ sơ.
Tôi có thể ẩn XP không?
Bạn có thể bật chế độ hồ sơ riêng tư, khi đó người khác chỉ thấy tên trên bảng xếp hạng nhưng không xem chi tiết.
Thứ hạng cập nhật khi nào?
Leaderboard cập nhật ngay khi có log XP mới, đồng thời chạy đồng bộ định kỳ mỗi 5 phút để đảm bảo tính nhất quán.