Learning by Doing: The construction of an arcade game machine from the ground up
18 April 2024

In the first of two student authored Thought Leadership pieces for 2024, year 12 student Zachary Garnsworthy shares his experiences and learnings throughout the many stages of a complex collaborative project.

In our exponentially advancing digital age, I strongly believe that hands-on learning is fundamental to fostering a deep understanding of sometimes complex concepts. As a high school student, I’m no engineer, nor scientist, nor project manager, however that doesn’t mean I can’t learn how to build an arcade machine. So, when asked if it could be done, I was prepared to give it a go.  

As with trying anything for the first time, the learning curve was steep. Throughout the various stages of development, an ideology that best reflected how I felt was the Dunning-Kruger effect. (See diagram) 

While I’m no expert in building arcade machines, the process initially seemed simple and in drafting the project, I thought I had covered everything. I was very wrong. 

Taking to the challenge of project planning, I broke down my thinking into three avenues: 1. the design of the machine, 2. the hardware involved and 3. which games would be added to it. Sparing the details, the road to producing the envisioned arcade machine was going to be a marathon, not a sprint. As such, the best plan of action was to make this a collaborative effort.  

To get the development started, consultation and discussion with staff and students resulted in a design competition being held. Since we already had a cabinet to use for the arcade machine, that wasn’t a worry.  

Thanks to the efforts of former student Hailey Cameron (Class of 2023), a very detailed set of templates were created for students to use to aid their design development during the competition.  

When the day of the competition rolled around, everyone attending was eager to become a part of the project. After explaining the design parameters of the machine, the following group discussion focused on how we could take it beyond conventional design to include things like LED lighting and Perspex panels. While it would pose a greater challenge by making the overall project more complex, it ultimately would produce an arcade machine which was elevated beyond the simple box we started with.  

With the project set in motion, it was time to get started with the hardware. I have always had a passion for electronics, but this was one unique opportunity where I had to push my thinking to make sure everything worked as perfectly as possible.  

The most insightful and rewarding discussions that were had during this phase, was deciding what the ‘core’ of the machine would be – running the games and such. After all, there’s seemingly a million ways of building an arcade machine, but which ways would work the best for both the longevity and the accessibility of the machine in this environment? While the easy way out was buying a ‘JAMMA’ board pre-loaded with software and games, the consensus was to use a Raspberry Pi. Having minimal experience with Raspberry Pi’s, I gained plenty of insight from staff who use them for their own home projects. Because of this, the process of making the Pi work as an arcade machine was a piece of cake.  

Now that the hardware was taken care of, the software posed a greater challenge. Theoretically, all we had to do was put the games on the machine. Easier said than done.  

While we just could go online and ‘obtain’ some old arcade games, creating them from scratch was ideal to allow this project to be driven by students who could showcase their programming expertise. However, this was appearing to be quite difficult. With the most common ways to develop games currently being through big game engines such as Unity or Unreal Engine, there looked to be no way to put anything produced with them, on the arcade machine without breaking its ability to run old games. However, our saving grace was discovered by Ryan Weber (Year 12) who took it upon himself to solve this problem. He discovered how Python was supported by the software, and we could use an extension called ‘Pygame’ to create graphical games.  

By this time in the project, we had accumulated a myriad of designs from the ongoing competition. 

Our design team leader, Vivian Li (Year 12), asked contestants to put their efforts towards creating one final design which included contribution from all designers.  

To wrap up the pre-assembly phase of the project, our design print and parts orders were sent off. All that was left was to assemble the machine and playtest before it was ready to be used.  

I am amazed at how well the machine came together. Thinking back to the Dunning-Kruger effect, I believe the whole team and I have come a long way past our initial thoughts of this project. The processes, while sometimes tedious and long, were in many ways invaluable to building our resilience and adaptability, and it afforded us the ability to learn so much more than you would get from sitting in a classroom. There was a level of beauty in how something that seemed so straightforward ended up being more intricate, but ultimately resulting in success.  

In retrospect, I would consider the ‘learning by doing’ process throughout the project to be the reason for its success: involving others and getting hands-on was the key factor.  

Zachary Garnsworthy 12F