Всем привет, сегодня вы сделаете настоящий NotCoin Шаг 1 Заходим в https://web.telegram.org/a/ Открываем чат с ботом и нажимаем играть После появления Нажимает ctrl + shift + i Заходим в элементы И ctrl + F (и вводим iframe) Нам нужно найти строку с ссылкой Скопировать её и перейти по ней. Сохраните её куда нибудь будете всегда через нее заходить Шаг 2 Скачиваете архив: https://www.mediafire.com/file/irmcvaqtt4k1mne/cliker.zip/file VirusTotal (0/52) Распакуйте куда вам удобно (лучше рабочий стол) Шаг 3 Заходите на сайт: https://clicker.joincommunity.xyz/clicker Нажимаете Ctrl + Shift + i Шаг 4 Заходите в Источники И ищем все файлы которые называются как в папке И нажимаем на каждый ПКМ и выбираем Потом сверху выбираем папку которую мы распаковали И нажимаем F5 Не закрывайте консоль разработчика! Шаг 5 Открываем консоль И вставляем туда нужный вам скрипт: Медленный let intervalId; let clicksCount = 0; const delay = (time) => new Promise(r => setTimeout(r, time)); const getEvent = () => ({ touches: [{clientX: Math.random() * 250 + 52, clientY: Math.random() * 582 + 512}] }) const getReactProps = (component) => component ? Object.entries(component).find(([key]) => key.startsWith("__reactProps$"))[1] : null; const getIdleTime = () => Math.floor(Math.random() * 182 + 121); const getRandomClickTime = () => Math.floor(Math.random() * 1412 + 112); const MIN_SCORE = 100; const MAX_CLICKS_PER_ITERATION = 1000; const coinClick = async () => { const coin = document.querySelector('div[class^="_notcoin"]'); const scoreElement = document.querySelector('div[class^="_scoreCurrent"]'); const score = scoreElement ? parseInt(scoreElement.textContent) : 0; // Rocket click const rocket = document.querySelector('img[class^="_root"]'); const rocketProps = getReactProps(rocket); if (rocketProps) rocketProps.onClick(); if (intervalId === null) return; // Coin click if (score > MIN_SCORE && clicksCount < MAX_CLICKS_PER_ITERATION && coin) { clicksCount++; const {onTouchStart, onTouchEnd} = getReactProps(coin); onTouchStart(getEvent()); await delay(50); onTouchEnd(); } else { clearInterval(intervalId) clicksCount = 0; console.info('%c INFO: idle time', 'color: #64b5f6'); await delay(getIdleTime()); console.info('%c INFO: trying again', 'color: #64b5f6'); start(); } } const start = () => { intervalId = setInterval(coinClick, getRandomClickTime()); }; const end = () => { clearInterval(intervalId); intervalId = null; }; start(); JS let intervalId; let clicksCount = 0; const delay = (time) => new Promise(r => setTimeout(r, time)); const getEvent = () => ({ touches: [{clientX: Math.random() * 250 + 52, clientY: Math.random() * 582 + 512}] }) const getReactProps = (component) => component ? Object.entries(component).find(([key]) => key.startsWith("__reactProps$"))[1] : null; const getIdleTime = () => Math.floor(Math.random() * 182 + 121); const getRandomClickTime = () => Math.floor(Math.random() * 1412 + 112); const MIN_SCORE = 100; const MAX_CLICKS_PER_ITERATION = 1000; const coinClick = async () => { const coin = document.querySelector('div[class^="_notcoin"]'); const scoreElement = document.querySelector('div[class^="_scoreCurrent"]'); const score = scoreElement ? parseInt(scoreElement.textContent) : 0; // Rocket click const rocket = document.querySelector('img[class^="_root"]'); const rocketProps = getReactProps(rocket); if (rocketProps) rocketProps.onClick(); if (intervalId === null) return; // Coin click if (score > MIN_SCORE && clicksCount < MAX_CLICKS_PER_ITERATION && coin) { clicksCount++; const {onTouchStart, onTouchEnd} = getReactProps(coin); onTouchStart(getEvent()); await delay(50); onTouchEnd(); } else { clearInterval(intervalId) clicksCount = 0; console.info('%c INFO: idle time', 'color: #64b5f6'); await delay(getIdleTime()); console.info('%c INFO: trying again', 'color: #64b5f6'); start(); } } const start = () => { intervalId = setInterval(coinClick, getRandomClickTime()); }; const end = () => { clearInterval(intervalId); intervalId = null; }; start(); Средний let intervalId; let clicksCount = 0; const delay = (time) => new Promise(r => setTimeout(r, time)); const getEvent = () => ({ touches: [{clientX: Math.random() * 250 + 52, clientY: Math.random() * 582 + 512}] }) const getReactProps = (component) => component ? Object.entries(component).find(([key]) => key.startsWith("__reactProps$"))[1] : null; const getIdleTime = () => Math.floor(Math.random() * 182 + 121); const getRandomClickTime = () => Math.floor(Math.random() * 1412 + 112); const MIN_SCORE = 100; const MAX_CLICKS_PER_ITERATION = 100; const coinClick = async () => { const coin = document.querySelector('div[class^="_notcoin"]'); const scoreElement = document.querySelector('div[class^="_scoreCurrent"]'); const score = scoreElement ? parseInt(scoreElement.textContent) : 0; // Rocket click const rocket = document.querySelector('img[class^="_root"]'); const rocketProps = getReactProps(rocket); if (rocketProps) rocketProps.onClick(); if (intervalId === null) return; // Coin click if (score > MIN_SCORE && clicksCount < MAX_CLICKS_PER_ITERATION && coin) { clicksCount++; const {onTouchStart, onTouchEnd} = getReactProps(coin); onTouchStart(getEvent()); await delay(50); onTouchEnd(); } else { clearInterval(intervalId) clicksCount = 0; console.info('%c INFO: idle time', 'color: #64b5f6'); await delay(getIdleTime()); console.info('%c INFO: trying again', 'color: #64b5f6'); start(); } } const start = () => { intervalId = setInterval(coinClick, getRandomClickTime()); }; const end = () => { clearInterval(intervalId); intervalId = null; }; start(); JS let intervalId; let clicksCount = 0; const delay = (time) => new Promise(r => setTimeout(r, time)); const getEvent = () => ({ touches: [{clientX: Math.random() * 250 + 52, clientY: Math.random() * 582 + 512}] }) const getReactProps = (component) => component ? Object.entries(component).find(([key]) => key.startsWith("__reactProps$"))[1] : null; const getIdleTime = () => Math.floor(Math.random() * 182 + 121); const getRandomClickTime = () => Math.floor(Math.random() * 1412 + 112); const MIN_SCORE = 100; const MAX_CLICKS_PER_ITERATION = 100; const coinClick = async () => { const coin = document.querySelector('div[class^="_notcoin"]'); const scoreElement = document.querySelector('div[class^="_scoreCurrent"]'); const score = scoreElement ? parseInt(scoreElement.textContent) : 0; // Rocket click const rocket = document.querySelector('img[class^="_root"]'); const rocketProps = getReactProps(rocket); if (rocketProps) rocketProps.onClick(); if (intervalId === null) return; // Coin click if (score > MIN_SCORE && clicksCount < MAX_CLICKS_PER_ITERATION && coin) { clicksCount++; const {onTouchStart, onTouchEnd} = getReactProps(coin); onTouchStart(getEvent()); await delay(50); onTouchEnd(); } else { clearInterval(intervalId) clicksCount = 0; console.info('%c INFO: idle time', 'color: #64b5f6'); await delay(getIdleTime()); console.info('%c INFO: trying again', 'color: #64b5f6'); start(); } } const start = () => { intervalId = setInterval(coinClick, getRandomClickTime()); }; const end = () => { clearInterval(intervalId); intervalId = null; }; start(); Быстрый let intervalId; let clicksCount = 0; const delay = (time) => new Promise(r => setTimeout(r, time)); const getEvent = () => ({ touches: [{clientX: Math.random() * 250 + 52, clientY: Math.random() * 582 + 512}] }) const getReactProps = (component) => component ? Object.entries(component).find(([key]) => key.startsWith("__reactProps$"))[1] : null; const getIdleTime = () => Math.floor(Math.random() * 182 + 121); const getRandomClickTime = () => Math.floor(Math.random() * 1412 + 112); const MIN_SCORE = 100; const MAX_CLICKS_PER_ITERATION = 10; const coinClick = async () => { const coin = document.querySelector('div[class^="_notcoin"]'); const scoreElement = document.querySelector('div[class^="_scoreCurrent"]'); const score = scoreElement ? parseInt(scoreElement.textContent) : 0; // Rocket click const rocket = document.querySelector('img[class^="_root"]'); const rocketProps = getReactProps(rocket); if (rocketProps) rocketProps.onClick(); if (intervalId === null) return; // Coin click if (score > MIN_SCORE && clicksCount < MAX_CLICKS_PER_ITERATION && coin) { clicksCount++; const {onTouchStart, onTouchEnd} = getReactProps(coin); onTouchStart(getEvent()); await delay(50); onTouchEnd(); } else { clearInterval(intervalId) clicksCount = 0; console.info('%c INFO: idle time', 'color: #64b5f6'); await delay(getIdleTime()); console.info('%c INFO: trying again', 'color: #64b5f6'); start(); } } const start = () => { intervalId = setInterval(coinClick, getRandomClickTime()); }; const end = () => { clearInterval(intervalId); intervalId = null; }; start(); JS let intervalId; let clicksCount = 0; const delay = (time) => new Promise(r => setTimeout(r, time)); const getEvent = () => ({ touches: [{clientX: Math.random() * 250 + 52, clientY: Math.random() * 582 + 512}] }) const getReactProps = (component) => component ? Object.entries(component).find(([key]) => key.startsWith("__reactProps$"))[1] : null; const getIdleTime = () => Math.floor(Math.random() * 182 + 121); const getRandomClickTime = () => Math.floor(Math.random() * 1412 + 112); const MIN_SCORE = 100; const MAX_CLICKS_PER_ITERATION = 10; const coinClick = async () => { const coin = document.querySelector('div[class^="_notcoin"]'); const scoreElement = document.querySelector('div[class^="_scoreCurrent"]'); const score = scoreElement ? parseInt(scoreElement.textContent) : 0; // Rocket click const rocket = document.querySelector('img[class^="_root"]'); const rocketProps = getReactProps(rocket); if (rocketProps) rocketProps.onClick(); if (intervalId === null) return; // Coin click if (score > MIN_SCORE && clicksCount < MAX_CLICKS_PER_ITERATION && coin) { clicksCount++; const {onTouchStart, onTouchEnd} = getReactProps(coin); onTouchStart(getEvent()); await delay(50); onTouchEnd(); } else { clearInterval(intervalId) clicksCount = 0; console.info('%c INFO: idle time', 'color: #64b5f6'); await delay(getIdleTime()); console.info('%c INFO: trying again', 'color: #64b5f6'); start(); } } const start = () => { intervalId = setInterval(coinClick, getRandomClickTime()); }; const end = () => { clearInterval(intervalId); intervalId = null; }; start(); Скрипты не мои! https://zelenka.guru/threads/6430908/ Как поменять фон и т.д В папке которая разархивирована, просто заменять на свои картинки ( но лучше открывать в фотошопе и подгонять) Если есть вопросы пишите под хайд Готово! Спасибо за прочтение надеюсь будет полезно. Теперь фармить сколько хотите) Аккуратно!!!
diayuokaro, То есть в файлах этой игры, находится скрипт на страницу MateMask (крипто-кошель). И кажется они сделают обмен или что то другое