Infrastructure, Maps
December 13, 2023

Maps metadata organization project finished!

I can finally declare that the maps metadata project has reached 1.0! Now, when a new map is created, it takes only minutes and a single approval to push a new map to all players instead of days or weeks of the previous error-prone process.

author
[T0]Marek
Last updated:
December 14, 2023

Maps metadata organization project finished!

At the beginning of the year, the process of adding a new map to the game was very error-prone and undocumented. Once the map was created and file uploaded, the process involved:

  • Add it to some Google Sheet
  • Create a PR to the Chobby repository with
    • a line from that above sheet
    • manually type out startboxes coordinates
    • properly resize map thumbnail in two different formats, with correctly named files.
  • Create a PR to the SPADs configuration repository (which often took weeks to merge) with
    • startboxes like in Chobby
    • additions to !nextmap configuration (nobody did it)
  • Ask somebody with permission to upload map to Google Drive folder
  • Wait multiple hours for the map file to distribute to servers
  • Ask somebody to manually copy the map file via FTP to the replays server
  • Maybe fill in some form to add map to the website (almost nobody did it)

Now the process is:

  • Add map details to our Rowy instance (spreadsheet/Airtable like thingy): https://rowy.beyondallreason.dev
  • Once someone reviews and approves the change, it gets automatically distributed everywhere within minutes

But that’s not all: I’ve also implemented automatic testing of different map properties, and the steps along the way are monitored. If something goes wrong, I’m automatically notified.

All the metadata about the maps is now available in a single, machine-readable place. This is a very important point as in the past it was spread across many places in custom data formats. Having a single machine-readable source of truth and automation around it allowed us recently to launch https://www.beyondallreason.info/maps. This will also enable us to easily add information about maps to the new lobby.

I hope this streamlined process will allow mappers to focus on what they love: creating maps. For players, this means fewer issues caused by errors in map distribution.

More Images

More microblogs