Lotoroute

In May, we took road trips to Halsou, a small village in Basque country and to San Sebastián, just on the other side of the Spanish border. It was a fair amount of driving and to pass time, we kept track of the number of license plates (registry plates, plaques d’immatriculation) with various French Department codes or European country code. For instance, we live in Gironde, which is département 33 and part of the Nouvelle Acquitaine région with country code “F” for France. A truck passing us might be from Spain with a country code “E” (not ES – these aren’t ISO 3166 codes). A car from England might be either GB or UK, depending on whether their plate was from back when Britain was great or after (2021).

As I understand it, this is a pretty common activity for family car trips — the French are particularly attached to their department numbers (although strictly speaking, the number of your plate no longer strictly reflects where you live). So, I was suprised when I did a quick search that there weren’t apps for some form of road bingo (or loto, in French). So, I wrote one. It’s at https://dhakajack.itch.io/lotoroute and is free to play online.

After Hangperson, I had some experience with React/Vite, so this game also lives in the browser, although I wrote it as a progressive web app, so it can also be installed to a desktop or home screen. It will work offline, but may not show all the pictures since I didn’t want to make the initial download heavy with assets. If you do lose data, there is no problem to continue a game or even start a new one, so signal coming and going as you drive through the Pyrénées is not a problem.

Basic game play is intuitive. When you see a code that is displayed, tap it and the grid square will turn green. If you get five of them in row, whether vertically, horizontally or diagonally, you win.

You could play solo or everyone in a car could have this going on their phone. There is no synching between phones and no interaction with a centrl server. All that matters in game terms is who finished their card first, so if you complete a row, shout it out before someone else does.

However, there is a sneaky educational element here as well. When you press a code, the corresponding name of the départemente or country displays at the top of the screen. If you long-press the code on your bingo card, it will bring up additional information, the chief city of a département or the capital of a country, its population and a graphic of either the région logo or the country flag. The logo is particularly helpful, because it also appears on French license plates, so you can generally tell the région even if you are too far away to read the number. Département numbers are used extensively for administrative matters in France and every French kid learns them in school, so I hope this app will be particularly helpful for both school kids and expats to learn their département numbers.

Clicking the gear on the main screen opns a page of options, including:

  • Fill the card with only French département codes, only European country codes, or both
  • Difficulty: cake walk (balade), average (normal), and insane (dément)
  • Your current location (entered manually or optionally determined by GPS)
  • Language: English or French
  • Vibration on/off: haptic feedback
  • Buttons to clear all marks on the card or to create a new one
  • Credits

As in hangperson, figuring out the difficulty setting required the most thought. The basic assumption is that an “easy” license code is one that you will see often as you drive along the highway. Of course, the distribution of codes you will see in Bordeaux is nothing like the distribution you will see in Strasbourg. There will be a lot of Spanish cars on the highways in Bordeaux and German in Strasbourg because Bordeaux (Gironde 33) borders Spain and Strasbourg (Bas-Rhin 67) borders Germany. This is why the game has a place for you to enter your starting location and the option to determine it based on GPS.

So, the difficulty calculation takes into consideration whether the starting location directly borders another code. It also takes into consideration the shortest connecting route, e.g., Corrèze 19 is two hops from Gironde 33, because Dordogne 24 is between them. This mapping gets a little hairy for islands, so I also took into consideration the Chunnel and main ferry routes. Finally, there is some weighting according to the population of each code area since some départments are larger than some countries like Andorra. French DOM/TOMs are not included because they are so distant, although I occasionally do see cars from la Réunion (974) in my area.

A player can choose a difficulty level, which alters the distribution of codes that can be “drawn” for each card at creation time. It is possible that some rare country code like Vatican City will come up at easy or average level, but it is very unlikely. On the other hand, it is very likely that most of the card will be codes from nearby départments and bordering countries.

Project code can be found at: https://github.com/dhakajack/lotoroute

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.