Nếu thời điểm nhân vật được đăng ký vào lưới tầm nhìn trùng với thời điểm NPC chuyển ô lưới, thông báo xuất hiện của NPC đó có thể bị sót.
Vì sao Việc xử lý vào zone, chuyển kênh, teleport trùng cùng lúc với việc NPC di chuyển → Dẫn đến NPC đó bị sót khi tính “các đối tượng mới lọt vào tầm nhìn” → Trên màn hình Chỉ vài NPC cụ thể không hiển thị, hoặc NPC đã rời đi vẫn còn đó
Khi di chuyển hoặc chuyển bản đồ, Thỉnh thoảng bất chợt
Phụ trách
Phụ trách chính Phát triển server (Đội phát triển game)
Việc cần làm (Đội phát triển game)
Xử lý cập nhật tầm nhìn trên một thread và theo một thứ tự, định kỳ đồng bộ lại toàn bộ “danh sách đang thấy”.
Trên đồ thị
Thỉnh thoảng vọt lên bất chợt · Số chênh lệch giữa danh sách đang thấy trên server và danh sách đối tượng ở client
Chỗ cần xem
Ghi trên server việc đăng ký vào lưới tầm nhìn, việc đối tượng chuyển ô, việc gửi thông báo xuất hiện và rời đi kèm số thứ tự tick, rồi định kỳ so sánh “danh sách đang thấy” của server với danh sách client đang có
Đúng nếu
NPC bị sót đã chuyển ô trong cùng tick với lúc xử lý vào zone hoặc teleport của nhân vật đó, và không có bản ghi gửi thông báo xuất hiện cho NPC đó
Loại trừ nếu
thông báo xuất hiện đã gửi nhưng client không nhận được hoặc đã bỏ → phía truyền tải (mất thông tin xuất hiện dồn tới ngay sau khi vào, bỏ thông báo xuất hiện tới trong lúc loading). Luôn chỉ sót cùng một NPC → xem phasing hoặc khác tùy chọn hiển thị
Cách kiểm tra
Cần log và chỉ số của server, client game
Nguồn
Replication Graph in Unreal EngineEpic Games MMORPG và các game tương tự chia thế giới thành lưới, mỗi ô có danh sách actor, và gửi dữ liệu dựa trên ô mà client đang ở
Actor Relevancy in Unreal EngineEpic Games Tính liên quan được xét theo từng kết nối, actor không còn liên quan sẽ bị xóa ở client