Trong thế giới công nghệ, game DOOM từ lâu đã trở thành một biểu tượng, nổi tiếng không chỉ bởi lối chơi kinh điển mà còn bởi khả năng “chạy” trên gần như mọi nền tảng có thể tưởng tượng được. Mới đây, một lập trình viên người Hà Lan tên Wojciech Graj đã đẩy giới hạn này đi xa hơn nữa, thành công đưa tựa game DOOM kinh điển vào một tài liệu Microsoft Word độc lập, hoàn chỉnh nhờ sự hỗ trợ của các macro VBA. Dự án độc đáo này một lần nữa khẳng định sự linh hoạt đến kinh ngạc của DOOM và tài năng sáng tạo của giới lập trình.
Cách Thức Hoạt Động và Trải Nghiệm Chơi Game DOOM Trong Word
Wojciech Graj đã chia sẻ mã nguồn của bản “doom generic” này trên GitHub, tiết lộ rằng cảm hứng cho dự án đến từ việc anh từng thấy DOOM chạy bên trong một tài liệu PDF. Bản port này được cung cấp dưới dạng một tài liệu Word duy nhất có dung lượng 6.6MB. Để trải nghiệm, người dùng cần cho phép các macro VBA (Visual Basic for Applications) hoạt động. Mặc dù bản port này không có âm thanh, nhưng về mặt hình ảnh và lối chơi, nó trông và hoạt động cực kỳ giống với tựa game DOOM gốc.
Hình ảnh màn hình khởi động game DOOM được nhúng trực tiếp trong tài liệu Microsoft Word, minh họa dự án VBA macro độc đáo.
Để đảm bảo hiệu suất mượt mà và khả năng phản hồi nhanh, độ phân giải của game được giữ nguyên ở mức 320 x 200 pixel. Cách điều khiển cũng quen thuộc với những ai đã từng chơi DOOM:
- Phím mũi tên: Di chuyển.
- Phím số 1-7: Chọn vũ khí.
- Phím Control: Bắn vũ khí đã chọn.
- Phím Space: Tương tác.
Yêu Cầu Hệ Thống và Những Hạn Chế Cần Lưu Ý
Mặc dù ý tưởng DOOM trong Word rất hấp dẫn, không phải ai cũng có thể trải nghiệm dễ dàng. Theo ghi chú của Wojciech, tài liệu phải được mở trên máy tính Windows với kiến trúc CPU x86 và chạy một phiên bản Microsoft Word hiện đại hoặc bộ Office. Các máy Mac, ngay cả những mẫu dùng chip Intel, cũng không thể chạy bản port này.
Ngoài ra, người dùng Windows có thể gặp phải một số thách thức:
- Microsoft Defender: Có thể ngăn chặn việc giải nén và chạy các tệp DLL từ bên trong tài liệu Word.
- Phiên bản Word cũ: Các phiên bản Word cũ hơn như Word 2007 có thể không chạy được bản port DOOM này.
Về mặt kỹ thuật, tài liệu Word chứa thư viện doomgeneric_docm.dll
và dữ liệu game doom1.wad
được mã hóa dưới dạng base64. Một macro VBA sẽ giải nén và tải các tệp này lên đĩa. Các tệp DLL chịu trách nhiệm hiển thị khung hình dưới dạng ảnh bitmap, trong khi macro VBA xử lý phần còn lại của trò chơi.
Những “Cổng Game” DOOM Độc Đáo Khác của Wojciech Graj
Đây không phải là dự án độc đáo đầu tiên của Wojciech Graj. Trang cá nhân của anh ấy trưng bày nhiều bản port DOOM thú vị khác, thể hiện sự sáng tạo không giới hạn:
- Chạy DOOM ở chế độ ASCII trong terminal.
- Chơi DOOM trong MS Paint, LibreOffice Calc, và Minecraft: Pi Edition.
- Thậm chí có bản port DOOM trong Stardew Valley.
- Đáng kinh ngạc hơn, có cả một bản DOOM có thể chơi qua kết nối âm thanh.
DOOM đã được port lên vô số phần cứng khác nhau, từ máy tính lượng tử cho đến các máy kiosk Redbox. Điều này cho thấy rằng, nếu có một màn hình hoặc một luồng dữ liệu, DOOM dường như có thể “chạy” được.
Kết Luận
Dự án đưa DOOM vào Microsoft Word của Wojciech Graj là một minh chứng ấn tượng cho sự sáng tạo không ngừng nghỉ trong cộng đồng lập trình và khả năng thích ứng phi thường của một tựa game huyền thoại. Nó không chỉ mang lại tiếng cười và sự ngạc nhiên mà còn cho thấy tiềm năng của macro VBA trong những ứng dụng bất ngờ. Hy vọng rằng, những dự án như thế này sẽ tiếp tục truyền cảm hứng cho nhiều ý tưởng táo bạo hơn trong tương lai.
Nguồn tham khảo: GitHub và Tom’s Hardware