Quake được chuyển sang Rust an toàn, chơi trực tiếp trên trình duyệt

Công nghệ09 tháng 10, 2026·3 phút đọc

Một lập trình viên đã chuyển tựa game huyền thoại Quake (1996) của id Software sang ngôn ngữ Rust an toàn (safe Rust) và đưa lên chạy trực tiếp trong trình duyệt web. Trò chơi hoạt động hoàn toàn bằng phần mềm, không cần GPU hay bất kỳ thư viện phụ thuộc nào, thậm chí có thể nạp tệp dữ liệu game gốc từ máy người dùng.

Quake được chuyển sang Rust an toàn, chơi trực tiếp trên trình duyệt

Một dự án mã nguồn mở mang tên quake-srp đã đưa tựa game bắn súng huyền thoại Quake (1996) của id Software lên trình duyệt web bằng ngôn ngữ Rust an toàn (safe Rust). Điều đáng chú ý là trò chơi vận hành hoàn toàn nhờ kết xuất phần mềm, không cần GPU và không phụ thuộc vào bất kỳ thư viện ngoài nào.

Chuyển từ mã nguồn GPL sang Rust

Dự án được chuyển đổi từ chính mã nguồn GPL của Quake do id Software phát hành trước đây. Thay vì dùng C — ngôn ngữ vốn tiềm ẩn nhiều lỗi liên quan đến quản lý bộ nhớ — tác giả đã viết lại toàn bộ bằng safe Rust, nghĩa là tận dụng hệ thống kiểm tra an toàn bộ nhớ của Rust để loại bỏ nhiều lỗi tràn bộ đệm hay con trỏ treo vốn rất phổ biến trong các game thập niên 1990.

Việc chạy game trong trình duyệt được thực hiện nhờ kết xuất phần mềm (software rendering), tức là mọi phép tính đồ họa đều do CPU đảm nhiệm thay vì card đồ họa. Đây là một kỳ công đáng kể khi đưa một tựa game 3D đầy đủ lên nền tảng web mà không cần tăng tốc phần cứng.

Chơi ngay, mang theo bản game của bạn

Bản thử nghiệm trên trang quake-srp.pages.dev đã bao gồm chương shareware gốc của id (tệp quake106.zip, dung lượng 9,1 MB), nên người dùng có thể trải nghiệm ngay mà không cần sở hữu game.

Nếu đã sở hữu bản Quake đầy đủ, bạn có thể nạp thêm dữ liệu của mình:

  • Tệp id1/pak1.pak để mở các chương 2 đến 4
  • Tệp của bản mở rộng nhiệm vụ như hipnotic/pak0.pak hoặc rogue/pak0.pak
  • Nhạc CD gốc như music/track02.ogg… (hoặc hipnotic/music/track02.ogg cho bản riêng của nó)

Người dùng chỉ cần kéo thả các tệp này — hoặc cả thư mục Quake — vào bất kỳ vị trí nào trên trang, hay chọn tệp từ hộp thoại. Điểm đáng chú ý về quyền riêng tư: các tệp này hoàn toàn ở lại trong trình duyệt của bạn, không bị tải lên máy chủ nào.

Phím tắt và trải nghiệm

Trang web cung cấp sẵn một số phím tắt tiện lợi:

  • walk e1m1 — bắt đầu màn chơi đầu tiên quen thuộc
  • play demo1 (e1m3) — phát lại bản demo gắn liền với tuổi thơ của nhiều game thủ

Mã nguồn của dự án được công bố trên GitHub. Cần lưu ý rằng Quake là thương hiệu của id Software, và quake-srp không có liên kết chính thức cũng như không được id Software bảo trợ.

Ý nghĩa với cộng đồng công nghệ Việt Nam

Với các lập trình viên Việt Nam quan tâm đến Rust và phát triển game, đây là một ví dụ thực tế đáng học hỏi: chứng minh rằng có thể hồi sinh những codebase cũ kỹ, đầy rủi ro bằng một ngôn ngữ hiện đại, an toàn hơn. Việc đưa game lên web mà không cần GPU cũng mở ra hướng đi thú vị cho các dự án giáo dục, bảo tàng số hay ứng dụng chơi game nhẹ nhàng trên mọi thiết bị.

Đây là minh chứng cho thấy mã nguồn mở có thể được tái sinh qua nhiều thập kỷ, miễn là cộng đồng còn đủ đam mê và công cụ phù hợp.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗