Lỗi Steam tồn tại suốt 10 năm
(blog.freudenjmp.com)Vấn đề Steam 10 năm tuổi của Valve, có phải ai cũng nhanh hơn Valve?
- Valve đôi khi có vẻ không phản hồi các phản hồi từ cộng đồng và báo cáo lỗi.
- Câu chuyện về một lỗi đã tồn tại suốt 10 năm.
tl;dr
- Một số cách khắc phục phổ biến nhằm xử lý vấn đề
No user logontrong Counter-Strike, đã kéo dài hơn 10 năm, thực tế không giải quyết được nguyên nhân gốc rễ. - Nếu bạn tìm thấy bài viết này qua Google, đừng thử các cách sau:
- Cài đặt lại game
- Xác minh tệp game
- Khởi động lại Steam
- Khởi động lại máy tính
- Tắt WiFi
Introduction
- Counter-Strike là một trò chơi nổi tiếng do Valve phát triển.
- Gần đây, Counter-Strike 2 (CS2) đã được phát hành để thay thế Counter-Strike: Global Offensive (CS:GO).
- CS2 chứa nhiều lỗi, khiến trải nghiệm chơi game không tốt.
- Valve không đưa CS2 vào chương trình săn lỗi HackerOne, nên không trả thưởng cho các báo cáo lỗi liên quan đến CS2.
No user logon
- Những lỗi mà cộng đồng đã báo cáo suốt nhiều năm vẫn chưa được sửa và vẫn tồn tại trong CS2.
- Lỗi
No user logonxảy ra ngẫu nhiên trong lúc chơi. - Vấn đề này đã được báo cáo nhiều lần trên nhiều diễn đàn và cả diễn đàn hỗ trợ chính thức của Valve.
- Các cách khắc phục được đề xuất thực tế không xử lý được vấn đề.
Esportal specific
- Esportal cũng đã gặp vấn đề này suốt nhiều năm, và trên thực tế chỉ giảm được tần suất xảy ra chứ không giải quyết được tận gốc.
- Trong CS2, ban đầu có vẻ như vấn đề đã được khắc phục, nhưng đến tuần đầu tiên của tháng 1 năm 2024 thì số lượng báo cáo lại tăng lên.
The symptoms
- Lỗi
No user logonxuất hiện sau 2-3 phút kể từ khi người chơi kết nối vào game. - Có thể nó liên quan đến hiện tượng skin chỉ xuất hiện vài phút sau khi trận đấu bắt đầu.
Validation of the hypothesis
- Nhiều khả năng đây là vấn đề liên quan đến xác thực Steam.
- Thời gian để
STEAM USERID validatedhoàn tất thành công trước ngày 3 tháng 1 là 2-3 giây, nhưng sau đó tăng lên khoảng 1 phút 20 giây.
NETWORK_DISCONNECT_STEAM_LOGON
- Có vẻ đây là lỗi liên quan đến xác thực Steam.
- Đã phát hiện log
STEAMAUTH: Client Bob received failure code 8.
Steam3 validation
- Máy chủ Steam3 chịu trách nhiệm xác thực người dùng.
- Máy chủ game sẽ yêu cầu máy chủ Steam3 xác minh tính hợp lệ của Steam ID.
- Trong lúc máy chủ Steam3 đang xác minh, người chơi vẫn có thể tiếp tục chơi nhưng skin sẽ chưa được gán.
Making it trustable
- Cần có một quá trình kiểm tra xem
CS2.execó đáng tin cậy hay không. Steam.exebiết tài khoản hiện đang đăng nhập và kiểm tra xem nó có khớp với Steam ID được gửi từCS2.exehay không.
NETWORK_DISCONNECT_LOOPSHUTDOWN
- Có một lý do ngắt kết nối khác là
NETWORK_DISCONNECT_LOOPSHUTDOWN. - Điều này có nghĩa là chính trò chơi tự động gây ra việc thử kết nối lại.
Loops in the Source engine
- Engine Source có các vòng lặp chạy cho đến khi đạt được một mục tiêu nhất định.
CS2.exechạy nhiều vòng lặp, và cuối cùng vòng lặpgamesẽ được thực thi.
The disconnection
- Khi vòng lặp kết thúc, kết nối có thể bị ngắt do
NETWORK_DISCONNECT_LOOPSHUTDOWN.
CS2 startup procedure
- Khi
CS2.exekhởi động, nó chạy nhiều vòng lặp, và vòng lặplevelloadbắt đầu việc xác minh Steam ID trước khi chuyển sang vòng lặpgame.
Ý kiến của GN⁺:
- Bài viết này cung cấp một phân tích chuyên sâu về lỗi
No user logonđã tồn tại rất lâu trong dòng game Counter-Strike của Valve. Điều này giúp hiểu rõ hơn những khó khăn trong phát triển và bảo trì game. - Việc Valve không phản hồi phù hợp với phản hồi cộng đồng và báo cáo lỗi nhấn mạnh tầm quan trọng của giao tiếp giữa nhà phát triển game và người dùng.
- Bài viết cho thấy rõ tính phức tạp của kỹ nghệ phần mềm cùng những thách thức trong quá trình theo dõi và xử lý lỗi. Điều này nhấn mạnh nhu cầu về một cách tiếp cận có hệ thống để giải quyết bug.
1 bình luận
Ý kiến trên Hacker News
Bình luận đầu tiên giải thích hệ thống session ticket của Steam, cho biết game client sẽ yêu cầu session ticket từ máy chủ Steam rồi cung cấp nó cho game server để chứng minh Steam ID. Game server phải xác thực ticket này thông qua web API của Steam, và nhận xét rằng có vẻ client CS2 không xử lý được trường hợp bị chậm khi lấy session ticket.
Bình luận thứ hai cho rằng kết luận của bài viết chưa rõ ràng, đồng thời đề cập đến vấn đề trong cách khởi động Counter-Strike và khả năng công việc bảo trì tại Washington có thể gây ra sự cố cho người chơi trên toàn thế giới. Ngoài ra, bình luận giải thích rằng việc xác minh Steam ID diễn ra ở bước cuối cùng trước khi vòng lặp game bắt đầu, nên khi máy chủ chậm trong thời gian bảo trì, điều đó có thể cản trở việc khởi động game.
Bình luận thứ ba chỉ ra một lỗi là việc hoàn tất xác thực trước khi bắt đầu game multiplayer không phải là yêu cầu bắt buộc.
Bình luận thứ tư thắc mắc liệu có thể điều tra nguyên nhân game client bị crash ngoài dự kiến theo cùng cách hay không, đồng thời nhắc đến nghiên cứu về việc rút ngắn thời gian tải của GTA V.
Bình luận thứ năm cho rằng văn phong của bài viết quá cường điệu và đề xuất đi nhanh vào nội dung cốt lõi.
Bình luận thứ sáu đề xuất thêm một phần tóm tắt ngắn ở đầu bài viết để phục vụ việc giải thích cách khắc phục vấn đề.
Bình luận thứ bảy đặt câu hỏi liệu
levelloadloopchỉ chạy khi game khởi động hay cũng chạy khi kết nối vào server và tải map.Bình luận thứ tám mong muốn ứng dụng Steam trên macOS được cải thiện hiệu năng.
Bình luận thứ chín chỉ ra các vấn đề bảo mật của Valve và nhắc đến việc CS:GO đã bị loại khỏi phạm vi trong một báo cáo mới.
Bình luận cuối cùng chia sẻ trải nghiệm từng tạo một công cụ hiển thị danh sách server và điểm số của người chơi đang hoạt động, đồng thời nêu khả năng các lỗi cũ vẫn có thể tiếp tục tồn tại.