We used to play a game like this at my last company using a 4'x6' foamboard map that someone had pulled out of the trash. We would stand far enough back that you couldn't read the text on the map, use a generator to select a random country, then throw darts. Closest dart wins the point. It worked surprisingly well since even if you really knew your geography you still had the challenge of actually getting the dart there.
I really like it - a couple of opinions though - the time could be extended just a bit, maybe its my pre-coffee state but I sometimes needed a couple more seconds just to think about the name. Also consider changing the scoring to be relative - getting on the right continent would be worth something - for some of these you could guess close enough that if you went and looked at a map for that guess you would be close enough to find the city - but it was still technically too far to count. Agree with someone else that your total score should be shown somewhere.
I wish it worked on mobile! I'll check it out on my desktop though.
Edit: just played it. Awesome. A few suggestions:
- show me my total score! Unless I'm on the leaderboard, I don't know what it is
- it's unclear whether the "you are #x of Y players" is referring to my standing on just that turn, or the last 20, or what
- more cities, as others have said. Or at least shuffle it better so it's not as obvious when I've gone back to the beginning
Also, a recommendation on making the mechanics work on mobile: make it a race to zoom into the city the fastest. So you have to "pull" the map as fast as you can until the correct location is on the center of the screen. You can zoom as high resolution as you want for more points. This would eliminate the problem of imprecise tapping on mobile, and make it a fun finger motion to practice.
This is a lot of fun but I'd also recommend allowing zoom for greater precision then resetting after each question. Pretty simple JS commands for Leaflet to handle and would make a HUGE difference - not sure how folks are getting so precise on such a small map :)
Someone has probably already written some JS that plays the game automatically.
The way I'd do it is 1) track the current turn, 2) look up the city's coordinates using a reverse geocoder like OSM's Nominatim[1], and 3) draw a marker at the location using Leaflet.
If I know precisely the location of a city (like Kyiv, Istanbul in my case) I was able to pin it with 20 to 45km precision. I think it's close enough on a world scale.
The map determines the move gesture as a click, placing your guess for Wellington as being in the Tasman ocean. But then, at least it's not asking for Tonga.
Really fun game! Reminds me of https://geoguessr.com which drops you in a random location (in Street View mode) and your task is to pinpoint the location on a map.
The worldmap seems to not include new zealand, because it takes the browser's zoom level (which i have set to high), and scales it badly to clip out the sides.
Addictive and fun. The timing on the turns is just right. If you're looking for feedback, I'd suggest putting the leaderboard up and to the right on bigger screens. I had to keep scrolling down in between turns to see how I was doing.
Also, several times it didn't register my clicks and I have to try a few times before it worked.
Fun. Quite tricky when it comes to remembering where each of the Guineas (Equatorial Guinea, Guinea-Bissau, Papua New Guinea) is.
One issue: the cursor seemed to be inaccurate for me most of the time, even when I knew exactly where the location was. For me, the click registered at the top of the crosshairs (instead of the middle). Further, I might change the cursor to be a map pin, and use the pin's point as the accepted answer.
A few thoughts
-Did you have any trouble with the sockets library?
-I saw you explicitly mentioned "plane_distance", so are you planning on adding Haversine distance or something else?
-Maybe make the map take up the entire screen? Status and first few on the leaderboard could go in the ocean.
It might be useful to allow changing one's guess. It's pretty annoying when you misclick in the middle of the map and cannot pick the correct location.
There is already apps working on the same principle. iirc I played a game like this 1 or 2 years ago, but it was a turn based game.
Very fun to play.
Also, this game is very nice to learn web socket, the code and flow is easy to understand.
Love it, played for like 30 minutes. There used to be a great Facebook game called GeoChallenge similar to this, for some reason got terminated and I never played another Facebook game after.
As somebody that consistently does good in these geography games (even competing with other HNrs), I wonder if is there a way to capitalize/use this skill?
Sometimes click does not register. Very irretating with this small amount of time givet to click. Also map is way too small on high resolution screens. Other than that very cool idea!
I loved it!! Would it even better if we have a certain level of zooming to improve the location accuracy. I missed out on some European cities. I think it was Copenhagen.
Also, I'd love to have a few seconds when the solution is given to learn from my mistakes. Right now it's going too fast...
(I guess that would be a "training mode")