Greasy Fork is available in English.

Starlavinia Auto (ON)

(NOT SAFE) but if you get ban you can sign up with new email and WD to old FaucetPay (read desc)

// ==UserScript==
// @name         Starlavinia Auto (ON)
// @namespace    https://example.com/starlavinia-autofaucet
// @version      1.4
// @description  (NOT SAFE) but if you get ban you can sign up with new email and WD to old FaucetPay (read desc)
// @author       👽
// @match        https://starlavinia.name.tr/faucet
// @grant        none
// @license      MIT
// @run-at       document-idle
// ==/UserScript==

(function () {
    'use strict';

    var stopped = false;
    var refreshed = false;

    // Prevent event bubbling & default
    function stopEvent(e) {
        e.stopPropagation();
        e.preventDefault();
    }

    // ===== Blocking Overlay =====
    function blockPage(message) {
        if (document.getElementById('autoBlockerOverlay')) return; // Already blocked

        var overlay = document.createElement('div');
        overlay.id = 'autoBlockerOverlay';
        overlay.style.position = 'fixed';
        overlay.style.top = '0';
        overlay.style.left = '0';
        overlay.style.right = '0';
        overlay.style.bottom = '0';
        overlay.style.background = 'rgba(0, 0, 0, 0.85)';
        overlay.style.color = 'white';
        overlay.style.fontSize = '24px';
        overlay.style.zIndex = '9999999';
        overlay.style.display = 'flex';
        overlay.style.alignItems = 'center';
        overlay.style.justifyContent = 'center';
        overlay.style.flexDirection = 'column';
        overlay.style.userSelect = 'none';

        overlay.innerHTML = '<div>🔒 ' + message + '</div><div style="font-size:16px; margin-top:10px;">Please wait...</div>';

        document.body.appendChild(overlay);

        // Prevent scrolling
        document.body.style.overflow = 'hidden';

        // Prevent clicks and keyboard events bubbling through
        overlay.addEventListener('click', stopEvent, true);
        window.addEventListener('keydown', stopEvent, true);
        window.addEventListener('mousedown', stopEvent, true);
    }

    // Stop script and refresh after delay with UI blocked
    function stopAndRefresh(delayMs, message) {
        stopped = true;
        refreshed = true;
        blockPage(message);
        setTimeout(function () {
            location.reload();
        }, delayMs);
    }

    // ===== Error and Lock Detection =====
    var errorObserver = new MutationObserver(function () {
        if (refreshed || stopped) return;

        // Detect "Failed! Please reload the page." inside badge or any div with emoji
        var failBadge = Array.prototype.slice.call(document.querySelectorAll('div.mb-2.badge.bg-danger'))
            .find(function (el) { return el.textContent.trim() === "Failed! Please reload the page."; });

        var failDiv = Array.prototype.slice.call(document.querySelectorAll('div'))
            .find(function (el) { return el.textContent.trim() === "🔒 Failed! Please reload the page."; });

        // Detect "You've been locked for 10 minutes."
        var lockBadge = Array.prototype.slice.call(document.querySelectorAll('div.mb-2.badge.bg-danger'))
            .find(function (el) { return el.textContent.indexOf("You've been locked for 10 minutes.") !== -1; });

        if ((failBadge || failDiv) && !refreshed) {
            console.warn('🛑 Failed detected, blocking UI and refreshing in 15 seconds...');
            stopAndRefresh(15000, 'Failed! Please reload the page.');
        }

        if (lockBadge && !refreshed) {
            console.warn('🔒 Locked for 10 minutes, blocking UI and refreshing in 10 minutes...');
            stopAndRefresh(600000, "You've been locked for 10 minutes.");
        }
    });
    errorObserver.observe(document.body, { childList: true, subtree: true });

    // ===== Click OK Button with 2s delay =====
    var okObserver = new MutationObserver(function () {
        if (stopped) return;
        var okBtn = document.querySelector('button.swal2-confirm.swal2-styled');
        if (okBtn && okBtn.offsetParent !== null && !okBtn.dataset.clicked) {
            okBtn.dataset.clicked = 'true';
            console.log('🕒 OK button detected — clicking in 2 seconds...');
            setTimeout(function () {
                if (!stopped && okBtn.offsetParent !== null) {
                    console.log('✅ Clicking OK button');
                    okBtn.click();
                }
            }, 2000);
        }
    });
    okObserver.observe(document.body, { childList: true, subtree: true });

    // ===== Wait for Verified badge, click Claim after 7s =====
    var verifiedObserver = new MutationObserver(function () {
        if (stopped) return;
        var verifiedBadge = document.querySelector('div.mb-2.badge.bg-success');
        if (verifiedBadge) {
            console.log('✔ Verified badge found, clicking Claim in 7 seconds...');
            setTimeout(function () {
                if (stopped) return;
                var claimBtn = document.querySelector('button.btn.mt-4.h-10.w-full.bg-primary');
                if (claimBtn) {
                    console.log('🔘 Clicking Claim button');
                    claimBtn.click();
                }
            }, 7000);
            verifiedObserver.disconnect(); // run only once
        }
    });
    verifiedObserver.observe(document.body, { childList: true, subtree: true });

})();