Raccolta di articoli, eventi e approfondimenti su tecnologia, programmazione e gaming, pensata per chi ama condividere conoscenze e restare aggiornato nel mondo tech

A collection of articles, events, and insights on technology, programming, and gaming, designed for those who love sharing knowledge and staying up-to-date in the tech world

Language:
Horse racing
, ,

Horse Racing: The Management Game I Built with .NET

Some time ago I felt the need to start a new personal project using .NET. It had been a while since I had worked with this technology and I wanted to refresh my knowledge and explore the new features of the framework.

The problem was simple: I had no idea what to build.

For a few days I kept thinking about possible ideas but nothing really inspired me. Then something unexpected happened.


A Childhood Memory That Sparked the Idea

About three years ago, while reorganizing some old childhood games, I started digging through small surprise boxes from Mulino Bianco snacks.

Among those forgotten objects, I found a small horse figurine and a dice that I used when I was a kid to simulate races on a small improvised track with other toy horses.

At that moment, an idea clicked.

I decided to combine my passion for programming with my love for horse racing, and build a horse racing management game.

That’s how Horse Racing was born.


The Development Stack: .NET 8, C# and JavaScript

The game was developed using the following technologies:

  • .NET 8
  • C#
  • JavaScript
  • SQL Server as the data source

At the time, AI tools were not as widespread as they are today, so the entire development process was done the old-fashioned way: designing systems, experimenting with algorithms and gradually building the gameplay.

And honestly, it was a lot of fun.


The First Game Features

I started with the core elements typical of any management simulation game.

Buying Your First Horse

The game begins with purchasing your first horse, which represents the starting point for building your own racing stable.

From there, everything grows: training, race preparation and improving performance.

Race Preparation

Before each race, the player can:

  • prepare the horse
  • analyze the competitors
  • place bets on potential winners
  • choose the best jockey

All of this adds tension and strategy before the race begins.


The Race Simulation

When the starter signals the beginning of the race, the action starts.

I always imagine the scene as if it were a real race:

  • horses galloping at full speed
  • jockeys fighting for position
  • dust rising from the track
  • sudden overtakes
  • side camera views
  • exciting photo finishes

Winning races rewards players with virtual credits, which can then be used to improve stables and buy better horses.

It’s important to note that there are no real money bets or winnings. All credits are purely virtual, just like in a classic management simulation game.


Designing an Algorithm for Unpredictable Races

One of the most interesting challenges was designing an algorithm capable of making races unpredictable.

I wanted to avoid races that always ended the same way and create a system that felt more realistic and dynamic.

To achieve this, several variables influence the race outcome, such as:

  • horse skill level
  • jockey ranking
  • race conditions
  • random unexpected events

This ensures that each race can produce different results, even with the same competitors.


Features Added Over Time

While developing the game, I kept adding new mechanics to make it deeper and more engaging.

Stable Management

Players can:

  • buy multiple horses
  • sell horses
  • increase horse skills and market value
  • train horses to improve performance

Competitions and Championships

The game includes different types of races:

  • single races
  • league championships
  • knockout tournaments

Statistics and Records

To add depth and longevity, the game tracks:

  • race record times
  • individual horse statistics
  • performance trends over time

Virtual Betting System

Before each race, players can place bets on potential winners, always using virtual credits.


Additional Game Features

As development progressed, the project grew with many additional features:

  • race zoom during gameplay
  • full race replay system
  • fast simulation for less important races
  • time progression system
  • scheduled race events
  • customizable jockey uniforms
  • jockey rankings that influence race performance
  • injuries during races

Step by step, the project evolved into a complete horse racing management game.


What Is Still Missing

Despite all the work done so far, the game is not completely finished yet.

For example, 3D animations are still missing. Unfortunately, I haven’t learned how to create them yet.

Maybe AI will help me with that someday.


Future Ideas for Horse Racing

I’m already thinking about several new features that could make the game even more interesting:

  • online multiplayer mode
  • horse breeding mechanics
  • foal and stallion development
  • improved race simulation
  • additional management features

At the moment Horse Racing is not yet publicly available online, but the goal is to finish it and release it to players.


A Project Built for Passion

This project started simply because I wanted to:

  • return to developing with .NET
  • build something fun
  • transform a childhood memory into a real game

And honestly, I had a great time building it.

Now I can’t wait to finish the game and publish it, so I can receive feedback, ideas and suggestions from players and developers.

The journey of Horse Racing is not over yet.
In many ways, it has only just begun.