Skip to content

Instantly share code, notes, and snippets.

@SitanHuang
Last active April 1, 2024 05:26
Show Gist options
  • Save SitanHuang/cf30c1a0fded65479decc2e49a4224cf to your computer and use it in GitHub Desktop.
Save SitanHuang/cf30c1a0fded65479decc2e49a4224cf to your computer and use it in GitHub Desktop.
Typeracer 100% hack (Version 2 - Aadaptive Mode - Types at minimum speed required to win)
function triggerKeyboardEvent(el, keyCode, type)
{
var eventObj = document.createEventObject ?
document.createEventObject() : document.createEvent("Events");
if(eventObj.initEvent){
eventObj.initEvent(type, true, true);
}
eventObj.keyCode = keyCode;
eventObj.which = keyCode;
el.dispatchEvent ? el.dispatchEvent(eventObj) : el.fireEvent("onkeydown", eventObj);
}
$=$$
content = $('table > tbody > tr:nth-child(2) > td > table > tbody > tr:nth-child(1) > td > table > tbody > tr:nth-child(1) > td > div > div')[3].textContent.split('');
i = 0;
function a () {
if (i == content.length - 1) return;
input = $('table > tbody > tr:nth-child(2) > td > table > tbody > tr:nth-child(2) > td > input')[0]
input.focus()
input.value += content[i++];
triggerKeyboardEvent(input, input.value.charCodeAt(0), "keydown")
input.click()
triggerKeyboardEvent(input, input.value.charCodeAt(0), "keypress")
triggerKeyboardEvent(input, input.value.charCodeAt(0), "keyup")
setTimeout(a, (Math.max(Math.min(250,60000/Array.from($('.rankPanelWpm')).map(x => parseInt(x.innerText)).sort((a, b)=>b-a)[1]/5), 100)||200)/1.5 | 0)*Math.random()
}
a();
@Subash-dot
Copy link

This code even exceeds over 200 word per minute

function typeTextIntoInput() {
const textSpans = document.querySelectorAll('.inputPanel span[unselectable="on"]');
const inputElement = document.querySelector('.txtInput'); // Input field

if (!textSpans.length || !inputElement) {
console.log('Required elements not found.');
return;
}

let currentCharIndex = 0;

function typeCharacter() {
if (currentCharIndex < textSpans.length) {
const currentSpan = textSpans[currentCharIndex];
const currentChar = currentSpan.textContent;

  inputElement.value += currentChar;
  currentCharIndex++;
} else {
  clearInterval(interval);
}

}

const interval = setInterval(typeCharacter, 10); // Adjust the interval time as needed
}

typeTextIntoInput();

@Ext-NT
Copy link

Ext-NT commented Oct 18, 2023

Nice on, but you can get ur acc permanently banned lol

@oatzs
Copy link

oatzs commented Apr 1, 2024

SAAARRR HOW TO USE HAX!!!!! SAAARRRRRR PLS REDEEM THE CHEAT CODE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment