Avatar nhân vật mới, ở khắp mọi nơi
Giờ đây mỗi người chơi đều có một chân dung nhân vật thân thiện theo phong cách DiceBear v10 «adventurer» — trên hồ sơ, bảng xếp hạng, sảnh chờ và bên trong ván đấu.

Nói đơn giản
Avatar của bạn từng là một họa tiết hình học trừu tượng. Giờ nó là một chân dung nhân vật nhỏ xinh thực thụ — phong cách DiceBear v10 «adventurer» — và xuất hiện ở mọi nơi có tên bạn: hồ sơ của bạn, bảng xếp hạng, danh sách bạn bè, sảnh chờ, và giờ là ngay trong ván đấu — trên thanh người chơi, phòng chờ và màn hình kết quả.
Avatar của bạn được tạo ra từ tài khoản của bạn, nên nó luôn là cùng một hình ảnh trên mọi màn hình — nhận ra ngay trong một trận đấu. Người chơi hiện có đã được chuyển đổi tự động; không cần thiết lập gì cả.
Cho người thích chi tiết kỹ thuật
Mỗi avatar được gieo mầm bằng id người dùng thông qua một hàm hỗ trợ duy nhất, nên cùng một id luôn cho ra cùng một hình ảnh — avatar trong ván giống hệt từng byte với avatar hồ sơ và tái dùng cùng một yêu cầu đã lưu cache.
// apps/web/lib/avatar.ts
export const adventurerUrl = (seed: string) =>
`https://api.dicebear.com/10.x/adventurer/svg?seed=${seed}`;Migration 0042 là bản thay thế nguyên trạng của trigger đăng ký với hai hằng chuỗi avatar_url được nâng từ 8.x/identicon lên 10.x/adventurer, cộng thêm một lần backfill cập nhật mọi avatar DiceBear hiện có (người, bot và khách; avatar tùy chỉnh không bị đụng tới). Đã áp dụng lên prod và kiểm chứng — cả 35 hồ sơ đều chuyển sang v10 và người đăng ký mới nhận v10.
Các bề mặt hình ảnh vốn đã đọc avatar_url (thanh trên cùng, hồ sơ, bảng xếp hạng, bạn bè) chuyển đổi mà không cần đổi mã, nhờ backfill. Các bề mặt trong ván và sảnh chờ vốn đã giữ id người dùng phía client, nên mỗi bề mặt tự tính URL avatar cục bộ — không cần luồn một map qua trạng thái game. Không cần đổi CSP; host DiceBear vốn đã được cho phép.
