Skip to main content

Virtual Racing Simulator

A C# racing simulator inspired by Super Mario Kart, built to explore how simulation can inform race strategy.

Sep 2021 – Oct 2021

As a Bachelor’s student mainly specializing in infrastructure design and security, I wanted to step outside my comfort zone and build a stronger foundation in software development. Armed with only minor prior exposure to HTML, PHP, and Python, I challenged myself to dive deep into a C# university course. The result is a fully modular, object-oriented racing simulator inspired by the classic 1992 Super Nintendo game, Super Mario Kart.

Concept and Motivation

Beyond the nostalgia of retro 16-bit gaming, the project explores a real-world concept: how data and simulation help racing teams predict outcomes, optimize strategies, and efficiently allocate resources. Drawing inspiration from that competitive edge, I set out to build a simulator capable of managing a full racing competition from scratch.

Features and Architecture

To ensure the codebase was clean, scalable, and maintainable, I built the simulator from the ground up using object-oriented programming (OOP) principles, adhering strictly to the MVC (Model-View-Controller) pattern and SOLID design principles.

Some of the standout features include:

  • Custom Track Builder: An intuitive tool designed to easily craft and configure unique race layouts.
  • Live Race Telemetry: Real-time tracking of race timers, standings, lap and full-race times, dynamic points systems, and individual participant metrics (such as speed, performance, quality, and vehicle break-down states).
  • Scale & Limits: Supports up to 12 racers per competition and handles constraints up to the classic 16-bit limit for laps and races.
  • Celebration Screen: A rewarding podium ending sequence highlighting the top three drivers.

Reflection

Tackling C# as a relative newcomer was a significant hurdle, but it turned into an incredibly rewarding project. It allowed me to bridge the gap between infrastructure design and software engineering, resulting in a clean, compelling solution that I am proud to showcase.

References

  1. Julian C. Rill. race-simulator-wafoe - game to learn OOP in C#. (29 October 2021).