• Home
  • Book
  • Games
    • All Games
    • Tabletop Games
    • Video Games
  • Articles
  • Resources
  • About

Fun Mines

Making Games

The World’s Most Boring Excel Spreadsheet

March 16, 2015 by Ethan Leave a Comment

Learning Video Game Design on the Tabletop briefly discusses how Excel’s spreadsheets and VBA
macro language can be used in digital prototyping. By way of example, here’s an Excel file that recreates the action of  The World’s Most Boring Tower Defense Game. This means it can be played as a turn-based strategy game (i.e., the player manually advances the turns by pressing a button) or as a real time strategy game (i.e., the turns advance automatically).

The World's Most Boring Tower Defense GameThe World’s Most Boring Tower Defense Game is a web-based “game” that I use to demonstrate to my students how a video game’s “real time” action actually takes place over a series of discrete turns (what programmers call “ticks”). The game is also a useful example of what a digital prototype might entail.

You will need to enable macros in order to play the game (this mean it is unplayable in the Excel 2008 for Macs—that version of Excel does not allow Macros). If you run into trouble getting it to work, let me know—the code is a bit of a hack and I wouldn’t be surprised if it runs into problems in various versions of Excel.

In particular, the timer events that drive the sprite animation required jumping through some coding hoops. I wanted to use Excel’s VBA macro language’s “OnTime” event to cause the game sprite (the animated character) to move multiple times a second. Unfortunately, OnTime cannot respond faster than once per second in the Mac version of Excel. I got around this by using the Timer function, which returns the number of seconds since midnight. I use this to have the animation occur within a while-loop that pauses a specified number of milliseconds (more-or-less) as measured using Timer during each loop. Oddly, Microsoft’s documentation for Timer states that it will not return fractions of second on a Mac. But on my Mac it does, so I was able to get the animation to work. I’m not sure if the undocumented ability is due to a change in the Mac OS or in Excel itself, but it does work (at least, it does for me).

All that is to say, this Excel spreadsheet is a bit fragile and may not work for you. Caveat emptor!

 Play The World’s Most Boring Tower Defense Game online
Download the Excel version of Boring TD

The World’s Most Boring Tower Defense Game

January 21, 2015 by Ethan Leave a Comment

Play The World’s Most Boring Tower Defense Game

For many years I struggled to teach my students how to make the leap from designing tabletop games to designing video games. In particular, students without a programming backgrounThe World's Most Boring Tower Defense Gamed would consistently have problems defining a video game design as a series of concrete steps that do not leave gaping holes in the game algorithms.

Then one semester I taught my students flowcharting and had them create a flowchart that could play a simple game theory style game that I had designed. As if by magic, these students had no problem creating video game designs. Ever since that semester, I have always introduced students to video game design by starting with flowcharting. It has become my magical “turn you into a game designer” wand.

All this is covered in detail in Learning Video Game Design on the Tabletop , but I wanted to share The World’s Most Boring Tower Defense Game, which is one of the tools I use to demonstrate how a video game’s “real time” action actually takes place over a series of discrete turns (what programmers call “ticks”). The game is also a useful example of what a digital prototype might entail (see The World Most Boring Excel Spreadsheet for a version of the game that runs inside of Excel).

The World’s Most Boring Tower Defense Game can be played as a turn-based strategy game (i.e., the player manually advances the turns by pressing a button) or as a real time strategy game (i.e., the turns advance automatically).

Conway’s Game of Life provides another example of how “real time” is in actuality very a series of very rapidly occurring turns. As with The World’s Most Boring Tower Defense Game, Conway’s Game of Life can have its “generations” (aka turns) advance either manually or automatically (using the “step” and “run” buttons, respectively).

Play The World’s Most Boring Tower Defense Game

ZZT, Town, & Twine

January 6, 2015 by Ethan Leave a Comment

Sweeney’s ZZT

These days, Tim Sweeney and his company Epic Games are best known their Unreal and Gears of War franchises. But in the early 1990s Epic’s flagship game was a quirky ASCII adventure game called ZZT. [Read more…]

Conway’s Game of Life

December 9, 2014 by Ethan Leave a Comment

Generation: | Live cells:

 Adapted from pmav.eu‘s implementation under an MIT license.

How to play

Conway’s Game of Life is a simulation of cells growing and dying in a petri dish. Living cells are represented by a filled in square on the grid above. Click on the squares you want to populate with cells. Alternatively, you can click the “Random” button to start with a random set of populated cells.

gliderClick the “Step” button to have the cells advance to the next generation. A “generation” is a turn in the game. With each new turn, squares are filled and cleared to represent cells being born and dying. Life and death for a cell is determined by four simple rules that evaluates its neighbors (cells in the eight surrounding squares):

  • Birth: An empty square with exactly three neighbors becomes populated with a cell.
  • Survival: A cell with two or three neighbors lives on to the next turn.
  • Death: A cell with fewer than two neighbors die from loneliness.
  • Death: A cell with more than three neighbors dies from overcrowding.

Each turn, all the cells in the grid are updated simultaneously using those four rules.

Click the “Step” button several more times to advance the cells several more generations. Any cells that survive more than one generation will darken with age. Click the “Run” button to have the generations automatically advance. While the generations are automatically running, you can still click on the grid to add more cells.

Complex behaviors can arise despite the simplicity of the game’s rules. For example, there is a five-cell group called a “glider” (see image to the right) that repeats its shape, shifted one square on the diagonal, every fourth generation. This “movement” is what gives gliders their name. The glider shape can be manually setup prior to starting the game and running through its generations. But even when it is not specifically created by the player, glider shapes often arise unexpectedly as the game’s cells grow and die.

Click on “Stop” to pause the generation advancement and click on “Clear” to reset the grid. Manually add a glider to the grid and click on “Run” to watch it move on the screen.

About the game

Conway’s Game of Life is a “sandbox” game. A sandbox games emphasize play that centers on exploratory changes to the game state rather than a dogged pursuit of a victory condition. Conway’s Game of Life does not present the player any set goals, but that does not necessarily mean that it is an aimless pursuit. As you play with it, you may find yourself projecting goals onto it—for example, you might find yourself striving to developing patterns that never die off or become static.

Conway’s Game of Life is a particularly early (dating back to 1970) and influential example of emergence. Emergence grows out of game mechanics that are designed to be as responsive to one another as they are to the actions of the player. Generally speaking, emergent systems have a simple set of rules that interact in complex ways. Any game can have emergent qualities, but sandbox games have them almost by definition.

Vintage Arcade Games in Your Browser

November 4, 2014 by Ethan Leave a Comment

Photo (cropped) by Greg Dunlap, cc-by-2.0.

Photo (cropped) by Greg Dunlap, cc-by-2.0.

The Internet Arcade is a collection of 2,666 (at the time of this writing) coin-activated arcade games from the 1970s and 1980s. The games are playable in your browser thanks to a JavaScript-based emulator, brought to you by Jason Scott. [Read more…]

Get the book


Go to Amazon

Search

Categories

Archives

Tags

2+ Players Abstract Strategy Artificial Intelligence Book Combinatorial Conference Dice DIY Exercise Expansions Game Design Documents Game Studies Game Theory Interactive Fiction Pencil & Paper Print & Play Probability Programming Prototyping Psychology Rulebooks Sandbox Single Player Teaching Tiles Traditional Game Two Player Variant

Copyright © 2025 • Ethan Ham