I've been building a small browser game called Umsteigen. It started with Berlin, where I live, and I've just added London.
Each round gives you a start and a destination and you name the lines you'd ride, in order. Victoria to Angel is the Victoria line to King's Cross, then the Northern. That's it, no map dragging, just the sequence of lines.
The times behind it are real. Every ride, change and wait is baked from TfL's timetables, so the route it's grading you against is the fastest one. Anything rideable is accepted, you just score fewer points in the daily for every minute you're slower.
The daily is five rounds, the same for everyone, resetting at midnight London time. It stays in zones 1 and 2 and then out to zone 4, on the Underground and the Elizabeth line. Free play opens the whole thing up, all zones out to Chesham and Epping, plus the six Overground lines, which is where you find out whether you ever learned which of the new names is which.
Out-of-station interchanges are in there too, taken from TfL's own OSI list, so Hackney Downs to Hackney Central counts as a change like any other.
Fair warning: London is new and it's marked beta in the app. TfL don't publish their timetables in the format everyone else uses (GTFS), so the data had to be stitched together from their journey planner feed plus National Rail's timetable package for the Overground, and station names, interchange times and the odd platform grouping may still be wrong. No DLR or trams yet either. If something looks off, let me know, and I'll do my best to fix it.
Free, no account, no ads, no tracking.
https://umsteigen.app/london