Kusto Detective Agency Season 2: Case 8 – Catchy Run


Click for challenges

  • Onboarding: Here
  • Challenge 1: Here
  • Challenge 2: Here
  • Challenge 3: Here
  • Challenge 4: Here
  • Challenge 5: Here
  • Challenge 6: Here
  • Challenge 7: Here
  • Challenge 8: This article
  • Challenge 9: Coming soon
  • Challenge 10: Coming soon

While I did find this challenge to be quite fun there was a minor issue with the answer submission which prevented me from solving the case until much later in the day. Initially you had to get the right location to within 25cm which is a little difficult while running around Barcelona.

General advice

The clues for this case are decent, even with them it can be a little tricky to get started and the “Train me” for this case is very specific as we learned the geo skills in the previous challenge.

Challenge: Case 8

Case 8 challenge text

Hi again, Detective,

First things first, let’s give you a round of applause for your jaw-dropping detective skills on the previous case! You totally nailed it when you pointed to Barcelona as Krypto’s secret hideout. We were blown away by your incredible intuition and deductive prowess. Seriously, you’re like a real-life Sherlock Holmes, but even cooler!

Now, let’s dive into the current situation. We were thiiis close to catching Krypto, but he slipped through our fingers in the bustling city of Barcelona. Our intelligence sources provided a lead indicating that Krypto is a die-hard runner, hitting the pavement 3-4 times a week and running 8-12 kms each time. We managed to obtain fitness data from the past two weeks of all runners in Barcelona, thanks to our National Security Office’s (NSO) extensive reach. However, despite our best efforts, we couldn’t pinpoint where he starts his runs. It’s up to you, detective, to crack this case wide open!

But wait, there’s more. We intercepted a message sent by Krypto to his Kuanda associates. As expected, he encrypted the message using a sophisticated Krypto-code, rendering it unreadable without the key. It appears that the Kuanda possess a tribal knowledge of how to obtain these keys based on specific cities. While our agents have managed to decipher half of the required 16 numbers, we’re still missing the full Barcelona city code.
Good luck, detective, and may your wits guide you through this challenge!

NSO Agent Stas Fistuko

Right lets get tracking

Secret Message Hint

To get started first we need to decode the message, we know in order to do this we need the missing numbers from the grid, and we suspect it may have something to do with the Sagrada Familia, particularly the Nativity and Passion facades, keep those eyes open.

Spoilers below

Secret Message Spoiler

Over the entrance of the Passion facade there is a very well-known magic square, which looks to match our number grid lets decode that message.

The decoded message reads as follows:

Listen up, esteemed members of Kuanda, for we have encountered a slight hiccup in our grand scheme.
I can sense your concern, as rumors of our true intentions have reached the ears of the KDA.
But fear not, my loyal comrades, for we shall not waver from our path! If anything, we shall intensify our efforts until the KDA crumbles beneath our feet.
I cannot share too much at this time, but rest assured, we are running our “smoke tests”, both figuratively and quite literally.
They shall expose the KDA’s weaknesses and herald its epic downfall.

Now, let us address the matter of my well-being. I understand that there is a great deal of curiosity regarding my safety.
Let me assure you, it was all a matter of impeccable timing. No doubt my connecting flight was an experience of a lifetime!
Too bad my luggage failed to join me on this thrilling journey! 🙂

But fear not, my friends, leaving things to chance is not my style. I have assembled a team of loyal bodyguards,
who move with me like elusive phantoms, ensuring my invincibility. At any given time, at least two of them discreetly
shadow my every move, even during my exhilarating runs through the city. Truly, I feel untouchable. And let me tell you,
this city is a hidden gem! It offers an abundance of marvelous spots where one can indulge in a refreshing shake after
conquering a breathtaking 10K run. It is a perfect blend of mischief and rejuvenation, a delightful concoction that fuels my strength.

So, my fellow rogues, let us keep our eyes fixed on the target. I will reveal more details about our plans in due time.
Prepare yourselves to witness the spectacular downfall of the KDA, as we relentlessly drill into its core at full speed!


Now on to finding Krypto!

Query Hint

We have the runner’s data and some information about Kryptos habits. Lets try use the geo_point_to_s2cell and between commands to track him and his bodyguards.

Solution – Spoilers below

We know where each runner starts their run and we know Krypto likes to get a shake at the end and runs tailed by at least two bodyguards. We also know it’s a 10km run so let’s see what we can do.

Query Case 8

//We’re going to determine the runners that are running a 10km, two to three times a week and then see which ones are running with a group of at least 3 and see where they start.

let potentials=
| where Distance between (8 .. 12)
| summarize runs=make_set(Timestamp) by RunnerID, startofweek(Timestamp)
| extend numberofruns=array_length(runs)
| where numberofruns in (3,4)
| distinct RunnerID;
let bodyguards=
| where RunnerID in~ (potentials)
| summarize make_set(RunnerID) by geo_point_to_s2cell(StartLon, StartLat,22), startofday(Timestamp)
| where array_length(set_RunnerID) >= 3
| extend set_RunnerID=tostring(set_RunnerID)
| summarize count() by set_RunnerID
| where count_ > 2
| mv-expand todynamic(set_RunnerID)
| extend RunnerId=tostring(set_RunnerID)
| distinct RunnerId;
| where RunnerID in (bodyguards)
| where Distance between (8 .. 12)
| summarize make_set(RunnerID) by Cell=geo_point_to_s2cell(StartLon, StartLat,22)
| join kind=inner(Runs
| where RunnerID in (bodyguards)
| where Distance between (8 .. 12)
| extend Cell=geo_point_to_s2cell(StartLon, StartLat,22)
) on Cell
| distinct StartLat, StartLon
//| distinct round(StartLat,5), round(StartLon,5) //round for answer

//This gives us some locations which when entered into our VirtualTourLink reveal a pretty cool place to grab a post-run shake!

VirtualTourLink(41.384673980870026, 2.1833562706513296)

Well look at that I think we’ve got him, great job detectives!

This challenge was far less frustrating than the previous one, the clues were interesting, and it was great to get a look around Barcelona as well. Overall not my favorite case but definitely fun.


3 thoughts on “Kusto Detective Agency Season 2: Case 8 – Catchy Run

  1. Pingback: Kusto Detective Agency Season 2: Case 5 - Blast into the past - OpsMan

  2. Pingback: Kusto Detective Agency Season 2: Case 3 - Return Stolen cars! - OpsMan

  3. Pingback: Kusto Detective Agency Season 2: Case 1 - To bill or not to bill? - OpsMan

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.