💸 PlayToEarn Legit Play-to-Earn na Website (w/ GCash Withdrawal Proof)

Auto Solve Math Equation for Keycash mga ssob, vibecoded lang to pero it works, very ud

Done


Code:
// ==UserScript==
// @name         C0dedlegacy - KeyCash Ultimate Solver
// @match        https://keycash.pro/*
// @grant        none
// @run-at       document-start
// ==/UserScript==

(function() {
    'use strict';

    console.log("[Auto-Solver] Script initialized.");

    // Create HUD for tracking
    const hud = document.createElement('div');
    hud.style = "position:fixed;top:10px;left:10px;padding:10px;background:rgba(0,0,0,0.8);color:#0f0;z-index:9999;font-family:monospace;border:1px solid #0f0;pointer-events:none;";
    document.documentElement.appendChild(hud);

    function solve(res) {
        if (!res.success) return;

        // Update HUD if solve data exists
        if (res.total !== undefined) {
            hud.innerHTML = `TOTAL: ${res.total}<br>SOLVES: ${res.math_solves}`;
            // Look for "Next" buttons after a win
            setTimeout(() => {
                const nextBtn = Array.from(document.querySelectorAll('button, a, .btn')).find(el =>
                    /next|continue|play/i.test(el.innerText)
                );
                if (nextBtn) nextBtn.click();
            }, 1000);
            return;
        }

        // Arithmetic Solver
        if (res.a !== undefined && res.b !== undefined) {
            const a = parseFloat(res.a);
            const b = parseFloat(res.b);
            let ans;

            switch (res.op) {
                case '-': ans = a - b; break;
                case 'x': case '×': case '\u00d7': ans = a * b; break;
                case '/': case '÷': case '\u00f7': ans = a / b; break;
                default: ans = a + b;
            }

            console.log(`[Auto-Solver] ${a} ${res.op} ${b} = ${ans}`);

            setTimeout(() => {
                const buttons = Array.from(document.querySelectorAll('button, .option, .choice'));
                const target = buttons.find(btn => btn.innerText.trim() == ans);
                if (target) target.click();
            }, 400);
        }
    }

    // Intercept XHR
    const oldOpen = XMLHttpRequest.prototype.open;
    XMLHttpRequest.prototype.open = function() {
        this.addEventListener('load', () => {
            try { solve(JSON.parse(this.responseText)); } catch (e) {}
        });
        return oldOpen.apply(this, arguments);
    };

    // Intercept Fetch
    const oldFetch = window.fetch;
    window.fetch = async (...args) => {
        const response = await oldFetch(...args);
        const clone = response.clone();
        clone.text().then(text => {
            try { solve(JSON.parse(text)); } catch (e) {}
        });
        return response;
    };
})();
Thanks dito matsalab
 
Sa mga may problem sa tampermonkey script. Fixed na po yan dito sa script nato.

Features:
✅
Invalid Session game error fixed
✅Merged/Combined both scripts for Math and Typing into one script
✅Each solver only runs in their own game so you don't have to turn off anything.
✅Auto Start and Auto Play again the game for Typing Game


Code:
// ==UserScript==
// @name         C0dedlegacy - KeyCash Dual Solver
// @namespace    https://keycash.pro/
// @version      1.2.5
// @description  KeyCash typing and math solvers with variable per-character typing delay
// @match        https://keycash.pro/*
// @grant        none
// @run-at       document-start
// ==/UserScript==

(function () {
    'use strict';

    // =========================================================
    // URL ROUTER
    // =========================================================

    var mode = new URLSearchParams(window.location.search).get('c');

    // =========================================================
    // TYPING SOLVER
    // ONLY runs on ?c=typing
    // =========================================================

    function startTypingSolver() {

        console.log('[Typing-Bot] Initialized (Per-Character Human Delay).');

        var typingInProgress = false;
        var lastWord = '';

        // -----------------------------------------------------
        // Auto-type current word (Character-by-character fluid delay)
        // -----------------------------------------------------

        function simulateTyping() {

            if (typingInProgress) {
                return;
            }

            var wordDisplay = document.querySelector('#word-display span');
            var wordInput = document.querySelector('#word-input');

            if (!wordDisplay || !wordInput || wordInput.disabled) {
                return;
            }

            var targetWord = wordDisplay.innerText.trim();

            if (!targetWord) {
                return;
            }

            if (wordInput.value === targetWord) {
                return;
            }

            // Prevent repeatedly processing the same word.
            if (targetWord === lastWord && wordInput.value.length > 0) {
                return;
            }

            lastWord = targetWord;
            typingInProgress = true;

            console.log('[Typing-Bot] Typing: ' + targetWord);

            wordInput.value = '';

            var i = 0;

            // Recursive function to type each character with randomized human delay
            function typeNextChar() {

                if (!document.body.contains(wordInput) || wordInput.disabled) {
                    typingInProgress = false;
                    return;
                }

                if (i < targetWord.length) {

                    wordInput.value += targetWord[i];

                    wordInput.dispatchEvent(
                        new Event('input', {
                            bubbles: true
                        })
                    );

                    i++;

                    // Random keypress delay between 220ms and 380ms per character
                    var randomDelay = 220 + Math.random() * 160;
                    setTimeout(typeNextChar, randomDelay);

                } else {

                    wordInput.dispatchEvent(
                        new Event('change', {
                            bubbles: true
                        })
                    );

                    console.log(
                        '[Typing-Bot] Word "' +
                        targetWord +
                        '" finished.'
                    );

                    // Instantly ready for next word once the last keypress finishes
                    typingInProgress = false;
                    lastWord = '';
                }
            }

            // Start typing first character
            typeNextChar();
        }

        setInterval(simulateTyping, 200);


        // -----------------------------------------------------
        // Start button detection & auto-click
        // -----------------------------------------------------

        function checkStartButton() {

            var startBtn = document.getElementById('start-btn');

            if (!startBtn || startBtn.disabled) {
                return;
            }

            var startOverlay = document.getElementById('start-overlay');

            if (startOverlay) {

                var hidden =
                    startOverlay.classList.contains(
                        'pointer-events-none'
                    ) ||
                    startOverlay.classList.contains(
                        'opacity-0'
                    );

                if (hidden) {
                    return;
                }
            }

            console.log(
                '[Typing-Bot] Start Game available — clicking.'
            );

            startBtn.click();
        }


        // -----------------------------------------------------
        // Result / warning modal detection & auto-click
        // -----------------------------------------------------

        function checkResultModal() {

            var modalIds = [
                'result-modal',
                'warning-modal'
            ];

            modalIds.forEach(function (id) {

                var modal = document.getElementById(id);

                if (!modal) {
                    return;
                }

                var isVisible =
                    !modal.classList.contains('hidden') &&
                    modal.classList.contains('flex');

                if (!isVisible) {
                    return;
                }

                var playAgainBtn =
                    modal.querySelector(
                        'a[href*="start-game=typing"]'
                    );

                if (playAgainBtn) {

                    console.log(
                        '[Typing-Bot] Play Again available — clicking.'
                    );

                    playAgainBtn.click();
                }

            });
        }


        // -----------------------------------------------------
        // Periodic UI checks
        // -----------------------------------------------------

        setInterval(checkStartButton, 500);
        setInterval(checkResultModal, 500);
    }


    // =========================================================
    // MATH SOLVER
    // ONLY runs on ?c=math
    // =========================================================

    function startMathSolver() {

        console.log(
            '[Auto-Solver] Math solver initialized.'
        );

        var hud = document.createElement('div');

        hud.style =
            'position:fixed;' +
            'top:10px;' +
            'left:10px;' +
            'padding:10px;' +
            'background:rgba(0,0,0,0.8);' +
            'color:#0f0;' +
            'z-index:9999;' +
            'font-family:monospace;' +
            'border:1px solid #0f0;' +
            'pointer-events:none;';

        document.documentElement.appendChild(hud);


        function solve(res) {

            if (!res || !res.success) {
                return;
            }


            // -------------------------------------------------
            // Total/result response
            // -------------------------------------------------

            if (res.total !== undefined) {

                hud.innerHTML =
                    'TOTAL: ' +
                    res.total +
                    '<br>SOLVES: ' +
                    res.math_solves;

                return;
            }


            // -------------------------------------------------
            // Math question
            // -------------------------------------------------

            if (
                res.a !== undefined &&
                res.b !== undefined
            ) {

                var a = parseFloat(res.a);
                var b = parseFloat(res.b);
                var ans;


                switch (res.op) {

                    case '-':
                        ans = a - b;
                        break;

                    case 'x':
                    case '×':
                        ans = a * b;
                        break;

                    case '/':
                    case '÷':
                        ans = a / b;
                        break;

                    default:
                        ans = a + b;
                        break;
                }


                console.log(
                    '[Auto-Solver] ' +
                    a +
                    ' ' +
                    res.op +
                    ' ' +
                    b +
                    ' = ' +
                    ans
                );


                setTimeout(function () {

                    var buttons =
                        document.querySelectorAll(
                            'button, .option, .choice'
                        );

                    var target = null;

                    for (
                        var i = 0;
                        i < buttons.length;
                        i++
                    ) {

                        if (
                            buttons[i].innerText.trim() ===
                            String(ans)
                        ) {

                            target = buttons[i];
                            break;
                        }
                    }


                    if (target) {

                        target.click();

                        console.log(
                            '[Auto-Solver] Answer found: ' +
                            ans
                        );
                    }

                }, 400);
            }
        }


        // -----------------------------------------------------
        // XMLHttpRequest monitoring
        // -----------------------------------------------------

        var oldOpen = XMLHttpRequest.prototype.open;

        XMLHttpRequest.prototype.open =
            function () {

                this.addEventListener(
                    'load',
                    function () {

                        try {

                            var data =
                                JSON.parse(
                                    this.responseText
                                );

                            solve(data);

                        } catch (e) {
                            // Not JSON — ignore.
                        }

                    }
                );

                return oldOpen.apply(
                    this,
                    arguments
                );
            };


        // -----------------------------------------------------
        // Fetch monitoring
        // -----------------------------------------------------

        var oldFetch = window.fetch;

        window.fetch = function () {

            return oldFetch.apply(
                this,
                arguments
            ).then(function (response) {

                var clone = response.clone();

                clone.text().then(
                    function (text) {

                        try {

                            var data =
                                JSON.parse(text);

                            solve(data);

                        } catch (e) {
                            // Not JSON — ignore.
                        }

                    }
                );

                return response;
            });
        };
    }


    // =========================================================
    // START CORRECT MODE
    // =========================================================

    if (mode === 'typing') {

        console.log(
            '[KeyCash] Typing mode detected.'
        );

        if (document.readyState === 'loading') {

            document.addEventListener(
                'DOMContentLoaded',
                startTypingSolver,
                { once: true }
            );

        } else {

            startTypingSolver();
        }


    } else if (mode === 'math') {

        console.log(
            '[KeyCash] Math mode detected.'
        );

        startMathSolver();


    } else {

        console.log(
            '[KeyCash] No supported mode detected.'
        );

        console.log(
            '[KeyCash] Use ?c=typing or ?c=math'
        );
    }

})();

Math & Typing game working pero sa typing naman hindi umuulit pag tapos na
 
Sa mga may problem sa tampermonkey script. Fixed na po yan dito sa script nato.

Features:
✅
Invalid Session game error fixed
✅Merged/Combined both scripts for Math and Typing into one script
✅Each solver only runs in their own game so you don't have to turn off anything.
✅Auto Start and Auto Play again the game for Typing Game


Code:
// ==UserScript==
// @name         C0dedlegacy - KeyCash Dual Solver
// @namespace    https://keycash.pro/
// @version      1.2.5
// @description  KeyCash typing and math solvers with variable per-character typing delay
// @match        https://keycash.pro/*
// @grant        none
// @run-at       document-start
// ==/UserScript==

(function () {
    'use strict';

    // =========================================================
    // URL ROUTER
    // =========================================================

    var mode = new URLSearchParams(window.location.search).get('c');

    // =========================================================
    // TYPING SOLVER
    // ONLY runs on ?c=typing
    // =========================================================

    function startTypingSolver() {

        console.log('[Typing-Bot] Initialized (Per-Character Human Delay).');

        var typingInProgress = false;
        var lastWord = '';

        // -----------------------------------------------------
        // Auto-type current word (Character-by-character fluid delay)
        // -----------------------------------------------------

        function simulateTyping() {

            if (typingInProgress) {
                return;
            }

            var wordDisplay = document.querySelector('#word-display span');
            var wordInput = document.querySelector('#word-input');

            if (!wordDisplay || !wordInput || wordInput.disabled) {
                return;
            }

            var targetWord = wordDisplay.innerText.trim();

            if (!targetWord) {
                return;
            }

            if (wordInput.value === targetWord) {
                return;
            }

            // Prevent repeatedly processing the same word.
            if (targetWord === lastWord && wordInput.value.length > 0) {
                return;
            }

            lastWord = targetWord;
            typingInProgress = true;

            console.log('[Typing-Bot] Typing: ' + targetWord);

            wordInput.value = '';

            var i = 0;

            // Recursive function to type each character with randomized human delay
            function typeNextChar() {

                if (!document.body.contains(wordInput) || wordInput.disabled) {
                    typingInProgress = false;
                    return;
                }

                if (i < targetWord.length) {

                    wordInput.value += targetWord[i];

                    wordInput.dispatchEvent(
                        new Event('input', {
                            bubbles: true
                        })
                    );

                    i++;

                    // Random keypress delay between 220ms and 380ms per character
                    var randomDelay = 220 + Math.random() * 160;
                    setTimeout(typeNextChar, randomDelay);

                } else {

                    wordInput.dispatchEvent(
                        new Event('change', {
                            bubbles: true
                        })
                    );

                    console.log(
                        '[Typing-Bot] Word "' +
                        targetWord +
                        '" finished.'
                    );

                    // Instantly ready for next word once the last keypress finishes
                    typingInProgress = false;
                    lastWord = '';
                }
            }

            // Start typing first character
            typeNextChar();
        }

        setInterval(simulateTyping, 200);


        // -----------------------------------------------------
        // Start button detection & auto-click
        // -----------------------------------------------------

        function checkStartButton() {

            var startBtn = document.getElementById('start-btn');

            if (!startBtn || startBtn.disabled) {
                return;
            }

            var startOverlay = document.getElementById('start-overlay');

            if (startOverlay) {

                var hidden =
                    startOverlay.classList.contains(
                        'pointer-events-none'
                    ) ||
                    startOverlay.classList.contains(
                        'opacity-0'
                    );

                if (hidden) {
                    return;
                }
            }

            console.log(
                '[Typing-Bot] Start Game available — clicking.'
            );

            startBtn.click();
        }


        // -----------------------------------------------------
        // Result / warning modal detection & auto-click
        // -----------------------------------------------------

        function checkResultModal() {

            var modalIds = [
                'result-modal',
                'warning-modal'
            ];

            modalIds.forEach(function (id) {

                var modal = document.getElementById(id);

                if (!modal) {
                    return;
                }

                var isVisible =
                    !modal.classList.contains('hidden') &&
                    modal.classList.contains('flex');

                if (!isVisible) {
                    return;
                }

                var playAgainBtn =
                    modal.querySelector(
                        'a[href*="start-game=typing"]'
                    );

                if (playAgainBtn) {

                    console.log(
                        '[Typing-Bot] Play Again available — clicking.'
                    );

                    playAgainBtn.click();
                }

            });
        }


        // -----------------------------------------------------
        // Periodic UI checks
        // -----------------------------------------------------

        setInterval(checkStartButton, 500);
        setInterval(checkResultModal, 500);
    }


    // =========================================================
    // MATH SOLVER
    // ONLY runs on ?c=math
    // =========================================================

    function startMathSolver() {

        console.log(
            '[Auto-Solver] Math solver initialized.'
        );

        var hud = document.createElement('div');

        hud.style =
            'position:fixed;' +
            'top:10px;' +
            'left:10px;' +
            'padding:10px;' +
            'background:rgba(0,0,0,0.8);' +
            'color:#0f0;' +
            'z-index:9999;' +
            'font-family:monospace;' +
            'border:1px solid #0f0;' +
            'pointer-events:none;';

        document.documentElement.appendChild(hud);


        function solve(res) {

            if (!res || !res.success) {
                return;
            }


            // -------------------------------------------------
            // Total/result response
            // -------------------------------------------------

            if (res.total !== undefined) {

                hud.innerHTML =
                    'TOTAL: ' +
                    res.total +
                    '<br>SOLVES: ' +
                    res.math_solves;

                return;
            }


            // -------------------------------------------------
            // Math question
            // -------------------------------------------------

            if (
                res.a !== undefined &&
                res.b !== undefined
            ) {

                var a = parseFloat(res.a);
                var b = parseFloat(res.b);
                var ans;


                switch (res.op) {

                    case '-':
                        ans = a - b;
                        break;

                    case 'x':
                    case '×':
                        ans = a * b;
                        break;

                    case '/':
                    case '÷':
                        ans = a / b;
                        break;

                    default:
                        ans = a + b;
                        break;
                }


                console.log(
                    '[Auto-Solver] ' +
                    a +
                    ' ' +
                    res.op +
                    ' ' +
                    b +
                    ' = ' +
                    ans
                );


                setTimeout(function () {

                    var buttons =
                        document.querySelectorAll(
                            'button, .option, .choice'
                        );

                    var target = null;

                    for (
                        var i = 0;
                        i < buttons.length;
                        i++
                    ) {

                        if (
                            buttons[i].innerText.trim() ===
                            String(ans)
                        ) {

                            target = buttons[i];
                            break;
                        }
                    }


                    if (target) {

                        target.click();

                        console.log(
                            '[Auto-Solver] Answer found: ' +
                            ans
                        );
                    }

                }, 400);
            }
        }


        // -----------------------------------------------------
        // XMLHttpRequest monitoring
        // -----------------------------------------------------

        var oldOpen = XMLHttpRequest.prototype.open;

        XMLHttpRequest.prototype.open =
            function () {

                this.addEventListener(
                    'load',
                    function () {

                        try {

                            var data =
                                JSON.parse(
                                    this.responseText
                                );

                            solve(data);

                        } catch (e) {
                            // Not JSON — ignore.
                        }

                    }
                );

                return oldOpen.apply(
                    this,
                    arguments
                );
            };


        // -----------------------------------------------------
        // Fetch monitoring
        // -----------------------------------------------------

        var oldFetch = window.fetch;

        window.fetch = function () {

            return oldFetch.apply(
                this,
                arguments
            ).then(function (response) {

                var clone = response.clone();

                clone.text().then(
                    function (text) {

                        try {

                            var data =
                                JSON.parse(text);

                            solve(data);

                        } catch (e) {
                            // Not JSON — ignore.
                        }

                    }
                );

                return response;
            });
        };
    }


    // =========================================================
    // START CORRECT MODE
    // =========================================================

    if (mode === 'typing') {

        console.log(
            '[KeyCash] Typing mode detected.'
        );

        if (document.readyState === 'loading') {

            document.addEventListener(
                'DOMContentLoaded',
                startTypingSolver,
                { once: true }
            );

        } else {

            startTypingSolver();
        }


    } else if (mode === 'math') {

        console.log(
            '[KeyCash] Math mode detected.'
        );

        startMathSolver();


    } else {

        console.log(
            '[KeyCash] No supported mode detected.'
        );

        console.log(
            '[KeyCash] Use ?c=typing or ?c=math'
        );
    }

})();
eto gaiz gamitin nyo, binded na yung dalawang feature na auto math + auto type, working + very ud (undetected)
 
Buseeeng baka may script ka nong emoji game pabulong naman

tryying pa boss haha, medjo mahirap kasi di exposed sa network request yung emoji selection (emoji tsaka choices), ket dom based emoji detection mahirap di gawin kasi need ng list emoji + name para ma compare tas answer, tho client sided naman yung scoring kaso may sanity checks e
 

About this Thread

  • 67
    Replies
  • 5K
    Views
  • 47
    Participants
Last reply from:
C0dedlegacy

Online now

Members online
1,275
Guests online
9,541
Total visitors
10,816

Forum statistics

Threads
2,336,247
Posts
29,289,514
Members
1,130,560
Latest member
matthews_different_
Back
Top