Skip to main content
Tomasz's Blog

Motorola Science Cup reviving classic arcade games

The Motorola Science Cup is a competition that ignites the sparks of innovation in tech enthusiasts among high school students. It's a three-phase journey through the realms of problem-solving and technical prowess. As teams, you face 3 stages of challenges: first, a standard A, B, and C test, then, the coding questions, where you need to choose one of 3 tasks:

* Desktop program (Color picker) * Physics simulation (Light ray simulator) * Arcade Games (Chosen by us: Battle Zone, Asteroids, Tempest)

How to do it? #

The choice of these vintage games wasn't merely coincidental. Their simplicity belies the complex mechanics and design intricacies that make them classics. Python stands out as our primary choice, a versatile language that lends itself well to rapid prototyping and flexible iterations. However, the allure of C++ and Go looms large as alternatives, offering performance and efficiency that could allow for more complex implementations and a smaller footprint.

The game Battle Zone, with its pioneering use of 3D vector graphics in the '80s, poses both an exciting challenge and an opportunity to showcase our technical finesse. While Python can accomplish wonders, the potential of leveraging C++ or Go to replicate the game's immersive tank battles isn't lost on us. The journey to decide the ideal language is an exploration in itself, balancing familiarity with the languages against the project's specific needs and the team's learning curve.

Tempest, with its unique tube-based graphical display, presents another dimension of complexity. Transforming this visually striking game into a modern rendition requires not only programming prowess but also an artistic eye. Python's libraries might provide a quick start, but the efficiency of C++ or the simplicity of Go could be the key to capturing the essence of this arcade gem.

And then there are Asteroids, a game of precision and reflexes. Its simplicity belies the intricate collision detection and fluid movement that define its gameplay. That's why we settled on pygame for this project.

Stay tuned as we navigate the realms of programming languages and game development, striving to leave our mark on the canvas of arcade gaming history. The road to February beckons, and the games await their resurrection.