The recent implementation of DOOM in Google Sheets has ignited a fascinating discussion within the tech community about what constitutes genuine game emulation versus mere display capabilities. While the project demonstrates innovative use of Google Apps Script and JavaScript to render the classic game in spreadsheet cells, it has raised questions about the nature of true game ports.
The Technical Reality Behind the Implementation
The project, rather than running DOOM natively within Google Sheets, utilizes js-dos to emulate the DOS version of the game elsewhere, while using spreadsheet cells as a makeshift display. This revelation has led to significant debate within the technical community about the authenticity of calling it DOOM on Google Sheets. The implementation processes the game at a reduced resolution of 120x80 pixels, with each pixel represented by a colored spreadsheet cell.
Technical Implementation Details:
- Resolution: 120x80 pixels
- Platform: Google Sheets
- Technology Stack:
- Google Apps Script
- JavaScript
- js-dos (for DOS emulation)
- Google Sheets API
The Philosophical Question of Running vs Displaying
A particularly insightful observation from the community highlights a broader pattern in DOOM implementations:
Yet another example of people claiming to run Doom somewhere, but is actually only displaying Doom, while Doom is running somewhere else, on another system.
This distinction has become increasingly relevant as more unusual DOOM ports emerge across various platforms. The community has drawn parallels to other projects, such as digital thermometer implementations, where the distinction between processing and display becomes crucial for technical accuracy.
Technical Limitations and Challenges
The implementation faces several notable challenges, including performance limitations due to cell-by-cell updates in Google Sheets. The color rendering capabilities have also sparked technical discussions, with some community members questioning the statement about Google Sheets' color limitations. This highlights the ongoing challenges in adapting modern display technologies to unconventional platforms.
Known Limitations:
- Slow performance due to cell-by-cell updates
- Manual grid setup required
- Limited color rendering capabilities
- Requires external processing of game logic
The Future of Creative Computing
Despite the technical debates, this project represents a creative approach to pushing the boundaries of what's possible with everyday software tools. It joins a growing collection of unusual implementations, including spreadsheet roller coasters and other creative uses of office software for gaming and entertainment purposes.
The project serves as a reminder that while technical accuracy in describing implementations is important, the creativity and ingenuity behind such projects continue to inspire and challenge our understanding of what's possible with common computing tools.
Reference: DOOM on Google Sheets