Difference between revisions of "Achievement statistics"
From Geohashing
(update) |
(update) |
||
Line 3: | Line 3: | ||
For a thematically sorted list with brief descriptions of the achievements, see '''[[achievements]]''' instead. For detailed descriptions, see the pages for the individual achievements. | For a thematically sorted list with brief descriptions of the achievements, see '''[[achievements]]''' instead. For detailed descriptions, see the pages for the individual achievements. | ||
− | Last updated: 2024- | + | Last updated: 2024-05-05 |
==Achievements== | ==Achievements== | ||
{|class="wikitable sortable zebra" | {|class="wikitable sortable zebra" | ||
!Achievement!!# of Expeditions!!# of Geohashers | !Achievement!!# of Expeditions!!# of Geohashers | ||
|- | |- | ||
− | |[[Land geohash achievement]]|| | + | |[[Land geohash achievement]]||4707||736 |
|- | |- | ||
− | |[[Bicycle geohash achievement]]|| | + | |[[Bicycle geohash achievement]]||1315||259 |
|- | |- | ||
− | |[[Public transport geohash achievement]]|| | + | |[[Public transport geohash achievement]]||811||192 |
|- | |- | ||
|[[Graticule unlocked achievement]]||794||297 | |[[Graticule unlocked achievement]]||794||297 | ||
|- | |- | ||
− | |[[No trespassing consolation prize]]|| | + | |[[No trespassing consolation prize]]||751||245 |
|- | |- | ||
− | |[[Consecutive geohash achievement]]|| | + | |[[Consecutive geohash achievement]]||740||152 |
|- | |- | ||
− | |[[Minesweeper geohash achievement]]|| | + | |[[Minesweeper geohash achievement]]||593||211 |
|- | |- | ||
− | |[[Drag-along achievement]]|| | + | |[[Drag-along achievement]]||583||295 |
|- | |- | ||
|[[Multihash achievement]]||375||94 | |[[Multihash achievement]]||375||94 | ||
Line 28: | Line 28: | ||
|[[Gratuitous ribbon achievement]]||367||112 | |[[Gratuitous ribbon achievement]]||367||112 | ||
|- | |- | ||
− | |[[Walk geohash achievement]]|| | + | |[[Walk geohash achievement]]||348||172 |
|- | |- | ||
|[[Two to the N achievement]]||321||94 | |[[Two to the N achievement]]||321||94 | ||
Line 38: | Line 38: | ||
|[[Midnight geohash achievement]]||283||92 | |[[Midnight geohash achievement]]||283||92 | ||
|- | |- | ||
− | |[[Last man standing achievement]]|| | + | |[[Last man standing achievement]]||274||76 |
|- | |- | ||
|[[Speed racer achievement]]||257||165 | |[[Speed racer achievement]]||257||165 | ||
Line 46: | Line 46: | ||
|[[No batteries geohash achievement]]||221||136 | |[[No batteries geohash achievement]]||221||136 | ||
|- | |- | ||
− | |[[OpenStreetMap achievement]]|| | + | |[[OpenStreetMap achievement]]||215||28 |
|- | |- | ||
|[[Thumbs up geohash achievement]]||210||9 | |[[Thumbs up geohash achievement]]||210||9 | ||
Line 58: | Line 58: | ||
|[[Geotrash achievement]]||160||100 | |[[Geotrash achievement]]||160||100 | ||
|- | |- | ||
− | |[[Hash collision achievement]]|| | + | |[[Hash collision achievement]]||153||58 |
|- | |- | ||
− | |[[Drowned rat geohash achievement]]|| | + | |[[Drowned rat geohash achievement]]||150||54 |
|- | |- | ||
|[[Déjà vu geohash achievement]]||145||66 | |[[Déjà vu geohash achievement]]||145||66 | ||
|- | |- | ||
− | |[[Border geohash achievement]]|| | + | |[[Border geohash achievement]]||145||63 |
|- | |- | ||
|[[Geohashing Day achievement]]||139||79 | |[[Geohashing Day achievement]]||139||79 | ||
|- | |- | ||
− | |[[Radio Yerevan]]|| | + | |[[Radio Yerevan]]||136||43 |
|- | |- | ||
− | |[[Regional geohashing achievement]]|| | + | |[[Regional geohashing achievement]]||132||35 |
|- | |- | ||
− | |[[xkcd-100 geohash achievement]]|| | + | |[[xkcd-100 geohash achievement]]||122||37 |
|- | |- | ||
|[[Picnic achievement]]||111||102 | |[[Picnic achievement]]||111||102 | ||
Line 88: | Line 88: | ||
|[[Circus geohash achievement]]||73||54 | |[[Circus geohash achievement]]||73||54 | ||
|- | |- | ||
− | |[[ | + | |[[Police geohash achievement]]||67||47 |
|- | |- | ||
− | |[[ | + | |[[Water geohash achievement]]||66||61 |
|- | |- | ||
|[[Puppet master geohash achievement]]||62||43 | |[[Puppet master geohash achievement]]||62||43 | ||
Line 124: | Line 124: | ||
|[[Pub geohash achievement]]||37||43 | |[[Pub geohash achievement]]||37||43 | ||
|- | |- | ||
− | |[[Globetrotters geohash achievement]]|| | + | |[[Globetrotters geohash achievement]]||36||37 |
|- | |- | ||
− | |[[My kingdom for a boat consolation prize]]||35|| | + | |[[My kingdom for a boat consolation prize]]||35||30 |
|- | |- | ||
|[[Juggernaut achievement]]||35||17 | |[[Juggernaut achievement]]||35||17 | ||
Line 132: | Line 132: | ||
|[[Coffin potato achievement]]||35||17 | |[[Coffin potato achievement]]||35||17 | ||
|- | |- | ||
− | |[[Train wreck consolation prize]]|| | + | |[[Train wreck consolation prize]]||33||26 |
|- | |- | ||
|[[Combo achievement]]||32||13 | |[[Combo achievement]]||32||13 | ||
Line 149: | Line 149: | ||
|- | |- | ||
|[[Globalhash achievement]]||21||23 | |[[Globalhash achievement]]||21||23 | ||
+ | |- | ||
+ | |[[Origin geohash achievement]]||20||18 | ||
|- | |- | ||
|[[Geoflashing achievement]]||20||16 | |[[Geoflashing achievement]]||20||16 | ||
Line 155: | Line 157: | ||
|- | |- | ||
|[[Towel Day achievement]]||20||10 | |[[Towel Day achievement]]||20||10 | ||
− | |||
− | |||
|- | |- | ||
|[[Restricted area achievement]]||16||14 | |[[Restricted area achievement]]||16||14 | ||
|- | |- | ||
− | |[[Golf geohash achievement]]||16|| | + | |[[Golf geohash achievement]]||16||12 |
|- | |- | ||
|[[Youngest geohasher achievement]]||15||7 | |[[Youngest geohasher achievement]]||15||7 | ||
Line 183: | Line 183: | ||
|- | |- | ||
|[[Cold geohash achievement]]||9||14 | |[[Cold geohash achievement]]||9||14 | ||
+ | |- | ||
+ | |[[N-in-a-row achievement]]||8||8 | ||
|- | |- | ||
|[[Geohash by proxy achievement]]||8||6 | |[[Geohash by proxy achievement]]||8||6 | ||
Line 215: | Line 217: | ||
|- | |- | ||
|[[Sex geohash achievement]]||4||7 | |[[Sex geohash achievement]]||4||7 | ||
+ | |- | ||
+ | |[[Birds of a Feather achievement]]||4||1 | ||
|- | |- | ||
|[[Migration geohash achievement]]||4||10 | |[[Migration geohash achievement]]||4||10 | ||
Line 231: | Line 235: | ||
|- | |- | ||
|[[East geohash achievement]]||2||3 | |[[East geohash achievement]]||2||3 | ||
+ | |- | ||
+ | |[[Multiple elevations achievement]]||2||2 | ||
|- | |- | ||
|[[Graticule hopper achievement]]||2||2 | |[[Graticule hopper achievement]]||2||2 | ||
Line 243: | Line 249: | ||
|- | |- | ||
|[[Star photographer achievement]]||1||2 | |[[Star photographer achievement]]||1||2 | ||
+ | |- | ||
+ | |[[White Rabbit consolation prize]]||1||1 | ||
|- | |- | ||
|[[Maker achievement]]||1||1 | |[[Maker achievement]]||1||1 | ||
+ | |- | ||
+ | |[[Eclipse achievement]]||1||1 | ||
|- | |- | ||
|[[Couch potato geohash achievement]]||1||1 | |[[Couch potato geohash achievement]]||1||1 | ||
|- | |- | ||
|[[Beast of burden geohash achievement]]||1||1 | |[[Beast of burden geohash achievement]]||1||1 | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|[[MacGyver geohash achievement]]||0||0 | |[[MacGyver geohash achievement]]||0||0 | ||
− | |||
− | |||
|- | |- | ||
|[[Bill Gates achievement]]||0||0 | |[[Bill Gates achievement]]||0||0 | ||
Line 270: | Line 274: | ||
dir="/tmp/gh-achievementstats" | dir="/tmp/gh-achievementstats" | ||
categoryAPI="https://geohashing.site/api.php?format=json&action=query&list=categorymembers&cmprop=title&cmlimit=5000&cmtitle=Category" | categoryAPI="https://geohashing.site/api.php?format=json&action=query&list=categorymembers&cmprop=title&cmlimit=5000&cmtitle=Category" | ||
− | regularAchievements=("Abduction_achievement" "Admit_one_achievement" "Air_geohash_achievement" "Ambassador_achievement" "A_Tale_of_Two_Hashes_achievement" "Beast_of_burden_geohash_achievement" "Bicycle_geohash_achievement" "Birds_of_a_Feather_achievement" "Bill_Gates_achievement" "Birthday_geohash_achievement" "Blinded_by_science_consolation_prize" "Border_geohash_achievement" "Buccaneer_geohash_achievement" "Calendar_girl_achievement" "Camping_geohash_achievement" "Circus_geohash_achievement" "Cliffs_of_despair_consolation_prize" "Coffin_potato_achievement" "Cold_geohash_achievement" "Combo_achievement" "Consecutive_geohash_achievement" "Couch_potato_geohash_achievement" "Cross_that_bridge_achievement" "Cubicle_geohash_achievement" "Curse_of_Unawareness_consolation_prize" "Dark_Ages_achievement" "Déjà_vu_geohash_achievement" "Done_with_Nature_consolation_prize" "Drag-along_achievement" "Drowned_rat_geohash_achievement" "Earliest_geohash_achievement" "East_geohash_achievement" "Easy_geohash" "Endurance_geohashing_achievement" "Fly_a_kite_achievement" "Formal_attire_achievement" "Frozen_geohash_achievement" "Geobrush_achievement" "Geoflashing_achievement" "Geohash_by_proxy_achievement" "Geohashing_Day_achievement" "Geohashing_in_the_media" "Geosquishy_achievement" "Geotrash_achievement" "Globalhash_achievement" "Globetrotters_geohash_achievement" "Going_deep_geohash_achievement" "Golf_geohash_achievement" "Graticule_hopper_achievement" "Graticule_unlocked_achievement" "Gratuitous_ribbon_achievement" "Handshake_achievement" "Hashcard_achievement" "Hashcat_achievement" "Hash_collision_achievement" "Hashiversary_achievement" "High_geohash_achievement" "Hobbit_achievement" "Holy_hash_achievement" "Hot_geohash_achievement" "It's_a_kitty_consolation_prize" "Juggernaut_achievement" "Land_geohash_achievement" "Largest_geohash_achievement" "Last_man_standing_achievement" "Leap_geohash_achievement" "Low_geohash_achievement" "MacGyver_geohash_achievement" "Maker_achievement" "Meet-up_achievement" "Midnight_geohash_achievement" "Migration_geohash_achievement" "Minesweeper_geohash_achievement" "Most_active_graticules_achievement" "Multihash_achievement" "Multiple_elevations_achievement" "Musical_achievement" "My_kingdom_for_a_boat_consolation_prize" "No_batteries_geohash_achievement" "North_geohash_achievement" "No_trespassing_consolation_prize" "Oldest_geohasher_achievement" "One_with_Nature_geohash_achievement" "OpenStreetMap_achievement" "Phonebooth_stuffing_achievement" "Picnic_achievement" "Pie_geohash_achievement" "Police_geohash_achievement" "Posted_achievement" "Prize_poultry_consolation_prize" "Pub_geohash_achievement" "Public_transport_geohash_achievement" "Puppet_master_geohash_achievement" "Radio_Yerevan" "Regional_geohashing_achievement" "Restricted_area_achievement" "Reverse_regional_achievement" "Sex_geohash_achievement" "Snowman_geohash_achievement" "South_geohash_achievement" "Speed_racer_achievement" "Star_photographer_achievement" "Subdivision_geohash_achievement" "Sunrise_geohash_achievement" 'There_might_be_alligators!_consolation_prize' "Thumbs_up_geohash_achievement" "Time-traveller_achievement" "Towel_Day_achievement" "Trail_of_blood_consolation_prize" "Train_wreck_consolation_prize" "Tron_achievement" "Twister_geohash_achievement" "Two_to_the_N_achievement" "Underwater_geohash_achievement" "Velociraptor_geohash_achievement" "Walk_geohash_achievement" "Walking_on_water_geohash_achievement" "Water_geohash_achievement" "West_geohash_achievement" "White_Rabbit_consolation_prize" "xkcd-100_geohash_achievement" "xkcd_centurion_achievement" "Youngest_geohasher_achievement") | + | regularAchievements=("Abduction_achievement" "Admit_one_achievement" "Air_geohash_achievement" "Ambassador_achievement" "A_Tale_of_Two_Hashes_achievement" "Beast_of_burden_geohash_achievement" "Bicycle_geohash_achievement" "Birds_of_a_Feather_achievement" "Bill_Gates_achievement" "Birthday_geohash_achievement" "Blinded_by_science_consolation_prize" "Border_geohash_achievement" "Buccaneer_geohash_achievement" "Calendar_girl_achievement" "Camping_geohash_achievement" "Circus_geohash_achievement" "Cliffs_of_despair_consolation_prize" "Coffin_potato_achievement" "Cold_geohash_achievement" "Combo_achievement" "Consecutive_geohash_achievement" "Couch_potato_geohash_achievement" "Cross_that_bridge_achievement" "Cubicle_geohash_achievement" "Curse_of_Unawareness_consolation_prize" "Dark_Ages_achievement" "Déjà_vu_geohash_achievement" "Done_with_Nature_consolation_prize" "Drag-along_achievement" "Drowned_rat_geohash_achievement" "Earliest_geohash_achievement" "East_geohash_achievement" "Easy_geohash" "Eclipse_achievement" "Endurance_geohashing_achievement" "Fly_a_kite_achievement" "Formal_attire_achievement" "Frozen_geohash_achievement" "Geobrush_achievement" "Geoflashing_achievement" "Geohash_by_proxy_achievement" "Geohashing_Day_achievement" "Geohashing_in_the_media" "Geosquishy_achievement" "Geotrash_achievement" "Globalhash_achievement" "Globetrotters_geohash_achievement" "Going_deep_geohash_achievement" "Golf_geohash_achievement" "Graticule_hopper_achievement" "Graticule_unlocked_achievement" "Gratuitous_ribbon_achievement" "Handshake_achievement" "Hashcard_achievement" "Hashcat_achievement" "Hash_collision_achievement" "Hashiversary_achievement" "High_geohash_achievement" "Hobbit_achievement" "Holy_hash_achievement" "Hot_geohash_achievement" "It's_a_kitty_consolation_prize" "Juggernaut_achievement" "Land_geohash_achievement" "Largest_geohash_achievement" "Last_man_standing_achievement" "Leap_geohash_achievement" "Low_geohash_achievement" "MacGyver_geohash_achievement" "Maker_achievement" "Meet-up_achievement" "Midnight_geohash_achievement" "Migration_geohash_achievement" "Minesweeper_geohash_achievement" "Most_active_graticules_achievement" "Multihash_achievement" "Multiple_elevations_achievement" "Musical_achievement" "My_kingdom_for_a_boat_consolation_prize" "No_batteries_geohash_achievement" "North_geohash_achievement" "N-in-a-row_achievement" "No_trespassing_consolation_prize" "Oldest_geohasher_achievement" "One_with_Nature_geohash_achievement" "OpenStreetMap_achievement" "Phonebooth_stuffing_achievement" "Picnic_achievement" "Pie_geohash_achievement" "Police_geohash_achievement" "Posted_achievement" "Prize_poultry_consolation_prize" "Pub_geohash_achievement" "Public_transport_geohash_achievement" "Puppet_master_geohash_achievement" "Radio_Yerevan" "Regional_geohashing_achievement" "Restricted_area_achievement" "Reverse_regional_achievement" "Sex_geohash_achievement" "Snowman_geohash_achievement" "South_geohash_achievement" "Speed_racer_achievement" "Star_photographer_achievement" "Subdivision_geohash_achievement" "Sunrise_geohash_achievement" 'There_might_be_alligators!_consolation_prize' "Thumbs_up_geohash_achievement" "Time-traveller_achievement" "Towel_Day_achievement" "Trail_of_blood_consolation_prize" "Train_wreck_consolation_prize" "Tron_achievement" "Twister_geohash_achievement" "Two_to_the_N_achievement" "Underwater_geohash_achievement" "Velociraptor_geohash_achievement" "Walk_geohash_achievement" "Walking_on_water_geohash_achievement" "Water_geohash_achievement" "West_geohash_achievement" "White_Rabbit_consolation_prize" "xkcd-100_geohash_achievement" "xkcd_centurion_achievement" "Youngest_geohasher_achievement") |
retroAchievements=("Displaced_origin_geohash_achievement" "Origin_geohash_achievement" "Wedding_anniversary_geohash_achievement") | retroAchievements=("Displaced_origin_geohash_achievement" "Origin_geohash_achievement" "Wedding_anniversary_geohash_achievement") | ||
Line 306: | Line 310: | ||
function toShortNames { | function toShortNames { | ||
− | tr "\n_" ", " | sed -e "s/ geohash achievement]/]/g" -e "s/ achievement]/]/g" -e "s/ consolation prize]/]/g" | head -c -1 | + | tr "\n_" ", " | sed -e "s/ geohash achievement]/]/g" -e "s/ geohashing achievement]/]/g" -e "s/ geohash]/]/g" -e "s/ geohasher achievement]/]/g" -e "s/ achievement]/]/g" -e "s/ consolation prize]/]/g" | head -c -1 |
} | } | ||
Line 315: | Line 319: | ||
echo "$1" | sort -nr | awk '{ if($1>=1000) print " [[" $3 "|" $3 "]]" }' | toShortNames | echo "$1" | sort -nr | awk '{ if($1>=1000) print " [[" $3 "|" $3 "]]" }' | toShortNames | ||
− | echo -en "\n|-\n| | + | echo -en "\n|-\n|500—1000||" |
echo "$1" | sort -nr | awk '{ if($1<1000 && $1>=500) print " [[" $3 "|" $3 "]]" }' | toShortNames | echo "$1" | sort -nr | awk '{ if($1<1000 && $1>=500) print " [[" $3 "|" $3 "]]" }' | toShortNames | ||
− | echo -en "\n|-\n| | + | echo -en "\n|-\n|100—500||" |
echo "$1" | sort -nr | awk '{ if($1<500 && $1>=100) print " [[" $3 "|" $3 "]]" }' | toShortNames | echo "$1" | sort -nr | awk '{ if($1<500 && $1>=100) print " [[" $3 "|" $3 "]]" }' | toShortNames | ||
− | echo -en "\n|-\n| | + | echo -en "\n|-\n|50—100||" |
echo "$1" | sort -nr | awk '{ if($1<100 && $1>=50) print " [[" $3 "|" $3 "]]" }' | toShortNames | echo "$1" | sort -nr | awk '{ if($1<100 && $1>=50) print " [[" $3 "|" $3 "]]" }' | toShortNames | ||
− | echo -en "\n|-\n| | + | echo -en "\n|-\n|10—50||" |
echo "$1" | sort -nr | awk '{ if($1<50 && $1>=10) print " [[" $3 "|" $3 "]]" }' | toShortNames | echo "$1" | sort -nr | awk '{ if($1<50 && $1>=10) print " [[" $3 "|" $3 "]]" }' | toShortNames | ||
− | echo -en "\n|-\n| | + | echo -en "\n|-\n|1—10||" |
echo "$1" | sort -nr | awk '{ if($1<10 && $1>=1) print " [[" $3 "|" $3 "]]" }' | toShortNames | echo "$1" | sort -nr | awk '{ if($1<10 && $1>=1) print " [[" $3 "|" $3 "]]" }' | toShortNames | ||
Line 366: | Line 370: | ||
|1000+|| [[Land geohash achievement|Land]], [[Bicycle geohash achievement|Bicycle]] | |1000+|| [[Land geohash achievement|Land]], [[Bicycle geohash achievement|Bicycle]] | ||
|- | |- | ||
− | | | + | |500—1000|| [[Public transport geohash achievement|Public transport]], [[Graticule unlocked achievement|Graticule unlocked]], [[No trespassing consolation prize|No trespassing]], [[Consecutive geohash achievement|Consecutive]], [[Minesweeper geohash achievement|Minesweeper]], [[Drag-along achievement|Drag-along]] |
|- | |- | ||
− | | | + | |100—500|| [[Multihash achievement|Multihash]], [[Gratuitous ribbon achievement|Gratuitous ribbon]], [[Walk geohash achievement|Walk]], [[Two to the N achievement|Two to the N]], [[Frozen geohash achievement|Frozen]], [[xkcd centurion achievement|xkcd centurion]], [[Midnight geohash achievement|Midnight]], [[Last man standing achievement|Last man standing]], [[Speed racer achievement|Speed racer]], [[Tron achievement|Tron]], [[No batteries geohash achievement|No batteries]], [[OpenStreetMap achievement|OpenStreetMap]], [[Thumbs up geohash achievement|Thumbs up]], [[Ambassador achievement|Ambassador]], [[Meet-up achievement|Meet-up]], [[Easy geohash|Easy]], [[Geotrash achievement|Geotrash]], [[Hash collision achievement|Hash collision]], [[Drowned rat geohash achievement|Drowned rat]], [[Déjà vu geohash achievement|Déjà vu]], [[Border geohash achievement|Border]], [[Geohashing Day achievement|Geohashing Day]], [[Radio Yerevan|Radio Yerevan]], [[Regional geohashing achievement|Regional]], [[xkcd-100 geohash achievement|xkcd-100]], [[Picnic achievement|Picnic]], [[Earliest geohash achievement|Earliest]] |
|- | |- | ||
− | | | + | |50—100|| [[Dark Ages achievement|Dark Ages]], [[Birthday geohash achievement|Birthday]], [[Done with Nature consolation prize|Done with Nature]], [[Velociraptor geohash achievement|Velociraptor]], [[Circus geohash achievement|Circus]], [[Police geohash achievement|Police]], [[Water geohash achievement|Water]], [[Puppet master geohash achievement|Puppet master]], [[A Tale of Two Hashes achievement|A Tale of Two Hashes]], [[Blinded by science consolation prize|Blinded by science]], [[Reverse regional achievement|Reverse regional]], [[Hashiversary achievement|Hashiversary]], [[Prize poultry consolation prize|Prize poultry]], [[One with Nature geohash achievement|One with Nature]], [[Holy hash achievement|Holy hash]], [[Formal attire achievement|Formal attire]] |
|- | |- | ||
− | | | + | |10—50|| [[Snowman geohash achievement|Snowman]], [[Sunrise geohash achievement|Sunrise]], [[Hashcard achievement|Hashcard]], [[Geosquishy achievement|Geosquishy]], [[Admit one achievement|Admit one]], [[Air geohash achievement|Air]], [[Pub geohash achievement|Pub]], [[Globetrotters geohash achievement|Globetrotters]], [[My kingdom for a boat consolation prize|My kingdom for a boat]], [[Juggernaut achievement|Juggernaut]], [[Coffin potato achievement|Coffin potato]], [[Train wreck consolation prize|Train wreck]], [[Combo achievement|Combo]], [[Leap geohash achievement|Leap]], [[Hashcat achievement|Hashcat]], [[Subdivision geohash achievement|Subdivision]], [[Cliffs of despair consolation prize|Cliffs of despair]], [[Hobbit achievement|Hobbit]], [[There might be alligators! consolation prize|There might be alligators!]], [[Globalhash achievement|Globalhash]], [[Origin geohash achievement|Origin]], [[Geoflashing achievement|Geoflashing]], [[Walking on water geohash achievement|Walking on water]], [[Towel Day achievement|Towel Day]], [[Restricted area achievement|Restricted area]], [[Golf geohash achievement|Golf]], [[Youngest geohasher achievement|Youngest]], [[It's a kitty consolation prize|It's a kitty]], [[Camping geohash achievement|Camping]], [[Displaced origin geohash achievement|Displaced origin]], [[Fly a kite achievement|Fly a kite]], [[Pie geohash achievement|Pie]], [[Twister geohash achievement|Twister]], [[Musical achievement|Musical]] |
|- | |- | ||
− | | | + | |1—10|| [[Phonebooth stuffing achievement|Phonebooth stuffing]], [[Largest geohash achievement|Largest]], [[Cold geohash achievement|Cold]], [[N-in-a-row achievement|N-in-a-row]], [[Geohash by proxy achievement|Geohash by proxy]], [[Going deep geohash achievement|Going deep]], [[Geohashing in the media|Geohashing in the media]], [[Oldest geohasher achievement|Oldest]], [[Trail of blood consolation prize|Trail of blood]], [[Cross that bridge achievement|Cross that bridge]], [[Buccaneer geohash achievement|Buccaneer]], [[Handshake achievement|Handshake]], [[Underwater geohash achievement|Underwater]], [[North geohash achievement|North]], [[Wedding anniversary geohash achievement|Wedding anniversary]], [[High geohash achievement|High]], [[Low geohash achievement|Low]], [[Calendar girl achievement|Calendar girl]], [[Abduction achievement|Abduction]], [[Sex geohash achievement|Sex]], [[Birds of a Feather achievement|Birds of a Feather]], [[Migration geohash achievement|Migration]], [[Time-traveller achievement|Time-traveller]], [[West geohash achievement|West]], [[Cubicle geohash achievement|Cubicle]], [[Geobrush achievement|Geobrush]], [[Most active graticules achievement|Most active graticules]], [[Hot geohash achievement|Hot]], [[East geohash achievement|East]], [[Multiple elevations achievement|Multiple elevations]], [[Graticule hopper achievement|Graticule hopper]], [[South geohash achievement|South]], [[Posted achievement|Posted]], [[Endurance geohashing achievement|Endurance]], [[Curse of Unawareness consolation prize|Curse of Unawareness]], [[Star photographer achievement|Star photographer]], [[White Rabbit consolation prize|White Rabbit]], [[Maker achievement|Maker]], [[Eclipse achievement|Eclipse]], [[Couch potato geohash achievement|Couch potato]], [[Beast of burden geohash achievement|Beast of burden]] |
|- | |- | ||
− | |Unclaimed|| | + | |Unclaimed|| [[MacGyver geohash achievement|MacGyver]], [[Bill Gates achievement|Bill Gates]] |
|}</includeonly> | |}</includeonly> |
Revision as of 14:11, 5 May 2024
This page ranks achievements by how common they are, it shows how many geohashers have claimed them and on how many expeditions the achievement was claimed. For some achievements, like the xkcd centurion achievement, this number will not only include geohashers that have the full achievement, but also those who are on their way there.
For a thematically sorted list with brief descriptions of the achievements, see achievements instead. For detailed descriptions, see the pages for the individual achievements.
Last updated: 2024-05-05
Achievements
Source code
The following program generates this page:
#!/bin/bash # Copyright 2023 Fippe # Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: # The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. dir="/tmp/gh-achievementstats" categoryAPI="https://geohashing.site/api.php?format=json&action=query&list=categorymembers&cmprop=title&cmlimit=5000&cmtitle=Category" regularAchievements=("Abduction_achievement" "Admit_one_achievement" "Air_geohash_achievement" "Ambassador_achievement" "A_Tale_of_Two_Hashes_achievement" "Beast_of_burden_geohash_achievement" "Bicycle_geohash_achievement" "Birds_of_a_Feather_achievement" "Bill_Gates_achievement" "Birthday_geohash_achievement" "Blinded_by_science_consolation_prize" "Border_geohash_achievement" "Buccaneer_geohash_achievement" "Calendar_girl_achievement" "Camping_geohash_achievement" "Circus_geohash_achievement" "Cliffs_of_despair_consolation_prize" "Coffin_potato_achievement" "Cold_geohash_achievement" "Combo_achievement" "Consecutive_geohash_achievement" "Couch_potato_geohash_achievement" "Cross_that_bridge_achievement" "Cubicle_geohash_achievement" "Curse_of_Unawareness_consolation_prize" "Dark_Ages_achievement" "Déjà_vu_geohash_achievement" "Done_with_Nature_consolation_prize" "Drag-along_achievement" "Drowned_rat_geohash_achievement" "Earliest_geohash_achievement" "East_geohash_achievement" "Easy_geohash" "Eclipse_achievement" "Endurance_geohashing_achievement" "Fly_a_kite_achievement" "Formal_attire_achievement" "Frozen_geohash_achievement" "Geobrush_achievement" "Geoflashing_achievement" "Geohash_by_proxy_achievement" "Geohashing_Day_achievement" "Geohashing_in_the_media" "Geosquishy_achievement" "Geotrash_achievement" "Globalhash_achievement" "Globetrotters_geohash_achievement" "Going_deep_geohash_achievement" "Golf_geohash_achievement" "Graticule_hopper_achievement" "Graticule_unlocked_achievement" "Gratuitous_ribbon_achievement" "Handshake_achievement" "Hashcard_achievement" "Hashcat_achievement" "Hash_collision_achievement" "Hashiversary_achievement" "High_geohash_achievement" "Hobbit_achievement" "Holy_hash_achievement" "Hot_geohash_achievement" "It's_a_kitty_consolation_prize" "Juggernaut_achievement" "Land_geohash_achievement" "Largest_geohash_achievement" "Last_man_standing_achievement" "Leap_geohash_achievement" "Low_geohash_achievement" "MacGyver_geohash_achievement" "Maker_achievement" "Meet-up_achievement" "Midnight_geohash_achievement" "Migration_geohash_achievement" "Minesweeper_geohash_achievement" "Most_active_graticules_achievement" "Multihash_achievement" "Multiple_elevations_achievement" "Musical_achievement" "My_kingdom_for_a_boat_consolation_prize" "No_batteries_geohash_achievement" "North_geohash_achievement" "N-in-a-row_achievement" "No_trespassing_consolation_prize" "Oldest_geohasher_achievement" "One_with_Nature_geohash_achievement" "OpenStreetMap_achievement" "Phonebooth_stuffing_achievement" "Picnic_achievement" "Pie_geohash_achievement" "Police_geohash_achievement" "Posted_achievement" "Prize_poultry_consolation_prize" "Pub_geohash_achievement" "Public_transport_geohash_achievement" "Puppet_master_geohash_achievement" "Radio_Yerevan" "Regional_geohashing_achievement" "Restricted_area_achievement" "Reverse_regional_achievement" "Sex_geohash_achievement" "Snowman_geohash_achievement" "South_geohash_achievement" "Speed_racer_achievement" "Star_photographer_achievement" "Subdivision_geohash_achievement" "Sunrise_geohash_achievement" 'There_might_be_alligators!_consolation_prize' "Thumbs_up_geohash_achievement" "Time-traveller_achievement" "Towel_Day_achievement" "Trail_of_blood_consolation_prize" "Train_wreck_consolation_prize" "Tron_achievement" "Twister_geohash_achievement" "Two_to_the_N_achievement" "Underwater_geohash_achievement" "Velociraptor_geohash_achievement" "Walk_geohash_achievement" "Walking_on_water_geohash_achievement" "Water_geohash_achievement" "West_geohash_achievement" "White_Rabbit_consolation_prize" "xkcd-100_geohash_achievement" "xkcd_centurion_achievement" "Youngest_geohasher_achievement") retroAchievements=("Displaced_origin_geohash_achievement" "Origin_geohash_achievement" "Wedding_anniversary_geohash_achievement") mkdir -p "$dir" regex="^[0-9]{4}-[0-9]{2}-[0-9]{2} -?[0-9]{1,3} -?[0-9]{1,3}$|^[0-9]{4}-[0-9]{2}-[0-9]{2} global$|^User:" function fetchData { for category in ${regularAchievements[@]} ${retroAchievements[@]} "Expeditions" "Retro_meetup" do echo -n > "$dir/$category" cmcontinue="0" while [ "$cmcontinue" != "null" ] do curl -so "$dir/tmp" "$categoryAPI:$category&cmcontinue=$cmcontinue" cmcontinue=$(cat "$dir/tmp" | jq -r ".continue.cmcontinue") cat "$dir/tmp" | jq -r ".query.categorymembers[].title" | grep -E "$regex" >> "$dir/$category" done rm "$dir/tmp" done } function extractData { for category in ${regularAchievements[@]} do numExpeditions=$(grep -cf "$dir/$category" "$dir/Expeditions" | tr "\n" "\t") test -z "$numExpeditions" && echo -en "0\t" || echo -n "$numExpeditions" grep "^User:" "$dir/$category" | cut -d "/" -f 1 | sort -u | wc -l | tr "\n" "\t" echo "$category" done for category in ${retroAchievements[@]} do numExpeditions=$(grep -cf "$dir/$category" "$dir/Retro_meetup" | tr "\n" "\t") test -z "$numExpeditions" && echo -en "0\t" || echo -n "$numExpeditions" grep "^User:" "$dir/$category" | cut -d "/" -f 1 | sort -u | wc -l | tr "\n" "\t" echo "$category" done } function toShortNames { tr "\n_" ", " | sed -e "s/ geohash achievement]/]/g" -e "s/ geohashing achievement]/]/g" -e "s/ geohash]/]/g" -e "s/ geohasher achievement]/]/g" -e "s/ achievement]/]/g" -e "s/ consolation prize]/]/g" | head -c -1 } function formatBriefTable { echo -en '<includeonly>{|class="wikitable"\n!Times claimed!!Achievements' echo -en "\n|-\n|1000+||" echo "$1" | sort -nr | awk '{ if($1>=1000) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -en "\n|-\n|500—1000||" echo "$1" | sort -nr | awk '{ if($1<1000 && $1>=500) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -en "\n|-\n|100—500||" echo "$1" | sort -nr | awk '{ if($1<500 && $1>=100) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -en "\n|-\n|50—100||" echo "$1" | sort -nr | awk '{ if($1<100 && $1>=50) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -en "\n|-\n|10—50||" echo "$1" | sort -nr | awk '{ if($1<50 && $1>=10) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -en "\n|-\n|1—10||" echo "$1" | sort -nr | awk '{ if($1<10 && $1>=1) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -en "\n|-\n|Unclaimed||" echo "$1" | sort -nr | awk '{ if($1==0) print " [[" $3 "|" $3 "]]" }' | toShortNames echo -e "\n|}</includeonly>" } function formatFullTable { echo "==Achievements==" echo '{|class="wikitable sortable zebra"' echo '!Achievement!!# of Expeditions!!# of Geohashers' echo "$1" | sort -gr | while read -r numExpeditions numUsers achievement do echo "|-" echo "|[[$achievement]]||$numExpeditions||$numUsers" | tr "_" " " done echo "|}" } echo -e "<noinclude>This page ranks achievements by how common they are, it shows how many geohashers have claimed them and on how many [[expedition]]s the achievement was claimed. For some achievements, like the [[xkcd centurion achievement]], this number will not only include geohashers that have the full achievement, but also those who are on their way there.\n\nFor a thematically sorted list with brief descriptions of the achievements, see '''[[achievements]]''' instead. For detailed descriptions, see the pages for the individual achievements.\n" date +"Last updated: %F" fetchData data=$(extractData) formatFullTable "$data" echo "==Source code==" echo "The following program generates this page:<pre"">$(cat "$0")</pre"">[[Category:Achievements]]</noinclude"">" formatBriefTable "$data"