// ==UserScript== // @name Universal Fast Shortlink Bypasser (Precision v15) // @namespace https://violentmonkey.top/ // @version 15.0 // @description Fixed "Green Box" issue. Won't highlight huge elements (movie posters). Adaptive speed for GPLinks/PowerGam. // @author Pawan's Assistant // @match *://*/* // @run-at document-start // @grant none // @downloadURL none // ==/UserScript== (function() { 'use strict'; const HOST = window.location.hostname; const IS_GPLINKS = HOST.includes('gplinks'); // ========================================================================= // 🧠 ADAPTIVE ENGINE (Smart Speed) // ========================================================================= // 1. Time Bender: ONLY enable for non-GPLinks sites (like PowerGam/OlaMovies) // This makes the timer 100x faster, but stays OFF for GPLinks to avoid bans. if (!IS_GPLINKS) { const TIME_ACCELERATION = 100; const originalDateNow = Date.now; let startTimestamp = originalDateNow(); Date.now = function() { const realElapsed = originalDateNow() - startTimestamp; return startTimestamp + (realElapsed * TIME_ACCELERATION); }; const originalPerformanceNow = performance.now.bind(performance); performance.now = function() { return originalPerformanceNow() * TIME_ACCELERATION; }; } // 2. Timer Pusher (Standard hack for all sites) const originalTimeout = window.setTimeout; window.setTimeout = function(func, delay) { if (delay > 50) return originalTimeout(func, 50); return originalTimeout(func, delay); }; const originalInterval = window.setInterval; window.setInterval = function(func, delay) { if (delay > 50) return originalInterval(func, 50); return originalInterval(func, delay); }; // ========================================================================= // 🕵️ CONFIGURATION // ========================================================================= const CONFIG = { scanInterval: 1000, // Safety Delay: 6s for GPLinks, 2s for others safetyDelay: IS_GPLINKS ? 6000 : 2000, targets: [ 'skip', 'continue', 'next', 'go to link', 'get link', 'proceder', 'continuar', 'click here', 'verify', 'i am not a robot', 'get url', 'link download' ], blacklist: [ 'google', 'youtube', 'facebook', 'instagram', 'netflix', 'amazon', 'bank', 'sbi', 'rrb', 'ibps', 'ssc', 'upsc', 'irctc', 'wikipedia', 'reddit' ] }; if (CONFIG.blacklist.some(d => HOST.includes(d))) return; // ========================================================================= // 🕵️ SCANNER (The Fix for Green Boxes) // ========================================================================= const MEMORY = new Set(); function scan() { const elements = document.querySelectorAll('button, a, input[type="submit"], div[role="button"], span.btn'); for (let el of elements) { if (MEMORY.has(el)) continue; if (el.offsetParent === null) continue; // 🛑 FIX 1: SIZE FILTER (The "Green Box" Killer) // If element is too big (like a movie poster), ignore it. const rect = el.getBoundingClientRect(); if (rect.width > 300 || rect.height > 100) continue; // 🛑 FIX 2: TEXT LIMIT // Don't click paragraphs. Only short button text. let text = (el.innerText || el.value || "").toLowerCase().trim(); if (text.length > 30 || text.length < 2) continue; if (CONFIG.targets.some(key => text.includes(key))) { // 🛑 FIX 3: STRICT "NEXT" // Only click "Next" if it's NOT a blog pagination if (text === 'next') { const body = document.body.innerText.toLowerCase(); if (body.includes('previous') || body.includes('prev page')) continue; } // Ad Protection if (el.tagName === 'A' && el.href && (el.href.includes('googleads') || el.href.includes('doubleclick'))) continue; // --- EXECUTE --- console.log(`[Precision v15] Target: "${text}"`); // Visuals el.style.border = "3px solid #00ff00"; el.style.position = "relative"; // Label const label = document.createElement('span'); label.innerText = `⏳ ${CONFIG.safetyDelay/1000}s`; label.style.cssText = "position:absolute; top:-20px; left:0; background:black; color:white; padding:2px; font-size:10px; z-index:9999;"; if(el.parentNode) el.parentNode.insertBefore(label, el); MEMORY.add(el); // Wait & Click setTimeout(() => { label.style.background = "green"; label.innerText = "GO"; el.click(); }, CONFIG.safetyDelay); break; } } } window.addEventListener('load', () => { setInterval(scan, CONFIG.scanInterval); }); })();