Trong một màn trình diễn kỹ thuật ấn tượng, nhà phát triển Kuber Mehta đã tạo ra The Backdooms, một trò chơi hoàn chỉnh lấy cảm hứng từ DOOM và The Backrooms vừa vặn hoàn toàn trong một mã QR duy nhất. Dự án này đã đẩy giới hạn của việc nén dữ liệu và thể hiện một cách tiếp cận mới đối với việc phân phối trò chơi mà không cần cài đặt hoặc kết nối internet sau lần quét ban đầu.
![]() |
---|
Hình ảnh này hiển thị kho lưu trữ GitHub của "The Backdooms", làm nổi bật các tệp và cấu trúc của dự án, đồng thời thể hiện cách tiếp cận sáng tạo trong việc phân phối trò chơi |
Kỹ thuật nén cực đoan giúp trò chơi QR trở thành hiện thực
Dự án sử dụng quy trình nén tinh vi kết hợp giữa nén Zlib với luồng giải nén Gzip và mã hóa Base64 để đưa một trò chơi hoàn chỉnh vào giới hạn 3KB của mã QR. Dữ liệu được nén trong một trình bao HTML tự giải nén sử dụng DecompressionStream API để tự động giải nén nội dung khi mở trong trình duyệt. Cách tiếp cận này cho phép trò chơi chạy hoàn toàn ngoại tuyến sau khi quét mã QR, vì toàn bộ mã nguồn được chứa trong URI dữ liệu.
Tôi đã tạo ra một trò chơi lấy cảm hứng từ Doom và the backrooms có tên là The Backdooms dưới 2.4kb bằng html đã được thu nhỏ. (để tham khảo, toàn bộ bài đăng này sẽ vào khoảng 1.8kB haha)
Thông số kỹ thuật
- Kích thước: Dưới 2.4KB (HTML đã được thu gọn)
- Dung lượng tối đa của mã QR: Khoảng 3KB
- Phương pháp nén: Nén Zlib với luồng giải nén Gzip + Mã hóa Base64
- Phiên bản mã QR: Kích thước 40 (kích thước tiêu chuẩn tối đa)
- Mức độ sửa lỗi: L (thấp nhất, cho phép dung lượng dữ liệu tối đa)
- Tương thích trình duyệt: Hoạt động tốt nhất trên các trình duyệt dựa trên Chromium ( Edge , Yandex , Opera )
- Hỗ trợ di động: Hạn chế; yêu cầu trình duyệt dựa trên Chromium và các ứng dụng quét mã QR thay thế
Thách thức về tính tương thích đa nền tảng
Mặc dù thành tựu kỹ thuật đáng chú ý, phản hồi từ cộng đồng cho thấy các vấn đề tương thích nền tảng đáng kể. Nhiều người dùng iOS báo cáo rằng các trình quét QR gốc hiển thị không tìm thấy dữ liệu khả dụng khi cố gắng quét mã. Hạn chế này xuất phát từ cách iOS xử lý URL URI dữ liệu hơn là từ kích thước của mã QR. Người dùng Android có kết quả khác nhau, một số báo cáo thành công khi sử dụng trình duyệt dựa trên Chromium trong khi người dùng Firefox trên di động gặp phải lỗi.
Nhà phát triển đã tích cực phản hồi ý kiến từ cộng đồng, gần đây đã thêm điều khiển cảm ứng cho người dùng di động nhờ vào đóng góp tối ưu hóa mã từ cộng đồng. Cải tiến này cho phép trò chơi có thể chơi được trên thiết bị di động sử dụng trình duyệt dựa trên Chromium, mặc dù người dùng vẫn cần sử dụng phương pháp quét QR thay thế có thể xử lý mã lớn hơn và URI dữ liệu.
Ý nghĩa bảo mật của ứng dụng QR độc lập
Dự án đã làm dấy lên cuộc thảo luận về ý nghĩa bảo mật của việc nhúng mã thực thi trong mã QR. Mặc dù The Backdooms là một minh chứng vô hại, các thành viên cộng đồng chỉ ra rằng các kỹ thuật tương tự có thể được sử dụng với mục đích độc hại. Điều này nhắc nhở về những rủi ro liên quan đến việc quét mã QR không xác định, vì chúng có thể chứa hoặc liên kết đến nội dung có hại.
Mặc dù có những lo ngại này, dự án vẫn là một thành tựu kỹ thuật ấn tượng thể hiện khả năng nén mã cực đoan và phương pháp phân phối thay thế. Nhà phát triển đã phát hành dự án dưới Giấy phép MIT, khuyến khích người khác phát triển dựa trên khái niệm này và tạo ra các trò chơi mã QR của riêng họ.
Đối với những người muốn thử The Backdooms mà không phải đối phó với các vấn đề tương thích mã QR, một phiên bản được nén ít hơn có sẵn để chơi trực tiếp trong trình duyệt web tại trang GitHub của nhà phát triển.
Tham khảo: The Backdooms: Running DOOM on a QR Code