// ==UserScript== // @name Ultimate Geoguessr Cheat 6.0 // @namespace http://tampermonkey.net/ // @version 6.0 // @description Features: Automatically score 5000 Points | Score randomly between 4500 to 5000 points // @author 0X69ED75 // @match https://www.geoguessr.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=geoguessr.com // @grant none // @downloadURL none // ==/UserScript== alert(` Thanks for using geoGuessr Resolver by 0x978. ============================================ => Please use the safer guess Option to avoid bans in competitive. <= ============================================ Controls (UPDATED!): '1': Place marker on a "safe" guess (4500 - 5000) '2': Place marker on a "perfect" guess (5000) '3': Auto Guess A "safe" Answer (4500 - 5000). '4': Auto Guess "perfect" Answer (5000) ---------------------------------------------------------- If auto guess fails, press the key again. ----------------------------------------------------------`) let vb=async(vl, o)=>{ let vce = await fetch(`https://nominatim.openstreetmap.org/reverse?lat=${vl}&lon=${o}&format=json`) let eer = await vce.json() return eer; } let lo=(e, bea)=>{ if(document.getElementsByClassName("guess-map__canvas-container")[0] === undefined){ mkj(bea) return; } let b = emk() if(e){ b[0] += (Math.random() / 2); b[1] += (Math.random() / 2); } let ecec = document.getElementsByClassName("guess-map__canvas-container")[0] let cxz = Object.keys(ecec) let ertu = cxz.find(key => key.startsWith("__reactFiber$")) let sfo = ecec[ertu].return.memoizedProps.onMarkerLocationChanged sfo({lat:b[0],lng:b[1]}) if(bea){ setTimeout(function() { vcx() }, 1000); } } let mkj=(qw)=>{ let vcw = emk() let yhg = "" let po = document.getElementsByClassName("region-map_map__7jxcD")[0] let lk = Object.keys(po) let mkf = lk.find(key => key.startsWith("__reactFiber$")) let vc = po[mkf].return.memoizedProps.onRegionSelected vb(vcw[0],vcw[1]).then(data => { yhg = data.address.country_code vc(yhg) }) if(qw){ setTimeout(function() { vcx() }, 2000); } } let emk=()=>{ let ft; let fe; let ef; let fr; if(document.getElementsByClassName("game-panorama_panorama__rdhFg").length > 0){ ft = document.getElementsByClassName("game-panorama_panorama__rdhFg")[0] fe = Object.keys(ft) ef = fe.find(key => key.startsWith("__reactFiber$")) fr = ft[ef].return.memoizedProps.panorama } else{ ft = document.querySelectorAll('[data-qa="panorama"]')[0] fe = Object.keys(ft) ef = fe.find(key => key.startsWith("__reactFiber$")) fr = ft[ef].return.memoizedProps } return([fr.lat,fr.lng]) } let vcx=()=>{ let vk = document.getElementsByClassName("button_button__CnARx button_variantPrimary__xc8Hp")[0] let vl = Object.keys(vk).find(key => key.startsWith("__reactFiber$")) let vj = vk[vl] let jv = vj.child.return.memoizedProps.onClick jv(); } let xc = (e) => { if(e.keyCode === 49){lo(true,false)} // 1 if(e.keyCode === 50){lo(false,false)} // 2 if(e.keyCode === 51){lo(true,true)} // 3 if(e.keyCode === 67){lo(false,true)} // 4 } document.addEventListener("keydown", xc);