Size
15.8 KB
Version
1.4.4
Created
Apr 1, 2026
Updated
24 days ago
Bypass ad-links using the bypass.vip API and get to your destination without ads!
1// ==UserScript==
2// @name BYPASS.VIP BYPASSER
3// @namespace bypass.vip
4// @version 1.4.4
5// @author bypass.vip
6// @description Bypass ad-links using the bypass.vip API and get to your destination without ads!
7// @match *://mega-guy.com/*
8// @match *://loot-link.com/*
9// @match *://best-links.org/*
10// @match *://loot-links.com/*
11// @match *://megaspremium.com/*
12// @match *://lootdest.com/*
13// @match *://direct-links.net/*
14// @match *://risquemega.com/*
15// @match *://onlyfriends.club/*
16// @match *://onepiecered.co/*
17// @match *://multileaks.com/*
18// @match *://luvsquad-links.com/*
19// @match *://lootdest.org/*
20// @match *://free-leaks.com/*
21// @match *://goldmega.online/*
22// @match *://realiukzemydre.com/*
23// @match *://kmendation.com/*
24// @match *://lootlinks.co/*
25// @match *://onlyshare.info/*
26// @match *://leakplugs.com/*
27// @match *://nswfbox.com/*
28// @match *://eofmukindwo.com/*
29// @match *://op-packs.com/*
30// @match *://thedetective.online/*
31// @match *://forlinkmeg.com/*
32// @match *://thegoatpack.org/*
33// @match *://of-leaks.xyz/*
34// @match *://links.spacebin.in/*
35// @match *://supermeg.com/*
36// @match *://onlyfanessereloaded.com/*
37// @match *://fanzleaks.com/*
38// @match *://cemendemons.com/*
39// @match *://premiummegaz.com/*
40// @match *://thepremium.online/*
41// @match *://pasteebins.com/*
42// @match *://baddiezcentral.com/*
43// @match *://megazone.website/*
44// @match *://leak-pragmatic.com/*
45// @match *://megadumpz.com/*
46// @match *://thhaven.net/*
47// @match *://meg4fans.com/*
48// @match *://depravityweb.co/*
49// @match *://discordlink.cc/*
50// @match *://megashub.co/*
51// @match *://streamergirls.org/*
52// @match *://your-leaks.com/*
53// @match *://onlylinksmegas.xyz/*
54// @match *://pypy.spacebin.in/*
55// @match *://pypy.in/*
56// @match *://luvsquad-links.cmo/*
57// @match *://beast.net.in/*
58// @match *://hook.beast.net.in/*
59// @match *://all-fans.online/*
60// @match *://fansmega.com/*
61// @match *://worldpacks.co/*
62// @match *://night-hub.online/*
63// @match *://dailyofleaks.com/*
64// @match *://pkofs.com/*
65// @match *://offree90.com/*
66// @match *://megadropz.com/*
67// @match *://onlyfunlink.com/*
68// @match *://direct-links.org/*
69// @match *://leaks4you.com/*
70// @match *://onlylinksmegas.com/*
71// @match *://direct-link.net/*
72// @match *://downbadleaks.com/*
73// @match *://onlyfanscloud.com/*
74// @match *://missleakz.com/*
75// @match *://leakszone.online/*
76// @match *://links-loot.com/*
77// @match *://holyfanslinks.com/*
78// @match *://utopianleaks.com/*
79// @match *://megavip.store/*
80// @match *://drlinker.com/*
81// @match *://baddiesheaven.com/*
82// @match *://of4lm-links.com/*
83// @match *://holedonly.store/*
84// @match *://lootlinks.com/*
85// @match *://free-content.pro/*
86// @match *://milky-center.com/*
87// @match *://megaofs.com/*
88// @match *://bleleadersto.com/*
89// @match *://link-target.org/*
90// @match *://daughablelea.com/*
91// @match *://mymegalinks.com/*
92// @match *://heroslut.com/*
93// @match *://tonordersitye.com/*
94// @match *://vip-linknetwork.com/*
95// @match *://birdbiss.com/*
96// @match *://loot-labs.com/*
97// @match *://lootlabs.com/*
98// @match *://link-hub.net/*
99// @match *://locconnect.com/*
100// @match *://premiumstashdrop.com/*
101// @match *://lootdest.info/*
102// @match *://of-area.com/*
103// @match *://link-target.net/*
104// @match *://megalnk.com/*
105// @match *://lootlink.org/*
106// @match *://nsfwcherry.com/*
107// @match *://cherrypacks.online/*
108// @match *://hotstars-leaks.com/*
109// @match *://onlymega.co/*
110// @match *://hanimeturks.com/*
111// @match *://dailyleakz.com/*
112// @match *://content-hub.club/*
113// @match *://dailyadultmegas.com/*
114// @match *://oui-chu.com/*
115// @match *://megalinks.one/*
116// @match *://starleakz.com/*
117// @match *://babeslink.click/*
118// @match *://ofgirls3x.com/*
119// @match *://pnp-drops.me/*
120// @match *://nsfw-paradise.club/*
121// @match *://key-access.co/*
122// @match *://leaksmix.com/*
123// @match *://sensual-leaks.com/*
124// @match *://ofhub-leaks.com/*
125// @match *://onlyforfan.online/*
126// @match *://sweetjuice-mega.com/*
127// @match *://crip-hub.com/*
128// @match *://leaksfreeday.com/*
129// @match *://thotshaven.online/*
130// @match *://mega-leaked.com/*
131// @match *://beautifulgirls.social/*
132// @match *://tavernleaks.com/*
133// @match *://nudeleaksteenz.com/*
134// @match *://slutywet.com/*
135// @match *://leakutopia.site/*
136// @match *://secret-packs.com/*
137// @match *://attiktok22.com/*
138// @match *://pancakes-leaks.com/*
139// @match *://diamond-leaks.com/*
140// @match *://lewd-leaks.com/*
141// @match *://ftbleaks.net/*
142// @match *://thepytheaven.org/*
143// @match *://of-region.online/*
144// @match *://admiregirls-byme.com/*
145// @match *://mzehoney12.com/*
146// @match *://herplace.online/*
147// @match *://megaplugleaks.com/*
148// @match *://of-kingdom.com/*
149// @match *://onlyfansmegafolder.com/*
150// @match *://links.spacebin.in/*
151// @match *://adfoc.us/*
152// @match *://boost.ink/*
153// @match *://cuty.io/*
154// @match *://www.cuty.io/*
155// @match *://cety.app/*
156// @match *://www.cety.app/*
157// @match *://linkvertise.com/*/*
158// @match *://mboost.me/*
159// @match *://bst.gg/*
160// @match *://booo.st/*
161// @match *://mendationforc.info/*
162// @match *://paster.so/*
163// @match *://paster.gg/*
164// @match *://rekonise.com/*
165// @match *://social-unlock.com/*
166// @match *://www.social-unlock.com/*
167// @match *://socialwolvez.com/*
168// @match *://sub2get.com/*
169// @match *://www.sub2get.com/*
170// @match *://sub2unlock.com/*
171// @match *://sub2unlock.io/*
172// @match *://sub2unlock.net/*
173// @match *://sub2unlock.online/*
174// @match *://sub2unlock.top/*
175// @match *://sub4unlock.pro/*
176// @match *://sub4unlock.com/*
177// @match *://sub4unlock.io/*
178// @match *://subfinal.com/*
179// @match *://unlocknow.net/*
180// @match *://v.gd/*
181// @match *://work.ink/*
182// @match *://www.work.ink/*
183// @match *://workink.net/*
184// @match *://r.work.ink/*
185// @match *://workink.one/*
186// @match *://workink.me/*
187// @match *://ytsubme.com/*
188// @match *://www.ytsubme.com/*
189// @match *://esohasl.net/*
190// @match *://rbscripts.net/*
191// @match *://link.rbscripts.net/*
192// @downloadURL https://raw.githubusercontent.com/bypass-vip/userscript/master/bypass-vip.user.js
193// @updateURL https://raw.githubusercontent.com/bypass-vip/userscript/master/bypass-vip.user.js
194// @homepageURL https://bypass.vip
195// @icon https://www.google.com/s2/favicons?domain=bypass.vip&sz=64
196// @run-at document-start
197// ==/UserScript==
198(async () => {
199 'use strict';
200 if (window.top !== window.self) {return;};
201 const config = {
202 time: 10,
203 key: '',
204 safeMode: true
205 };
206
207 function createContainer() {
208 const container = document.createElement('div');
209 container.id = 'userscript-container';
210 container.style.cssText = `
211 position: fixed;
212 top: 0;
213 left: 0;
214 width: 100%;
215 height: 100%;
216 background-color: #121212;
217 color: #e0e0e0;
218 display: flex;
219 flex-direction: column;
220 align-items: center;
221 justify-content: center;
222 text-align: center;
223 padding: 40px;
224 z-index: 2147483647;
225 font-family: 'Arial', sans-serif;
226 overflow: auto;
227 box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.5);
228 pointer-events: auto;
229 `;
230 container.innerHTML = `
231 <h2 style="font-size: 2em; margin-bottom: 15px; color: #ffffff; text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);">BYPASS.VIP USERSCRIPT</h2>
232 <p style="margin-bottom: 30px; font-size: 1.1em; color: #b0b0b0;">Click the button below to proceed to the bypassed link.</p>
233 <div id="countdown" style="font-size: 1.3em; margin-bottom: 30px; padding: 10px; background: #1e1e1e; border-radius: 8px; width: 80%; max-width: 600px;"></div>
234 <button id="nextBtn" type="button" style="
235 padding: 12px 24px;
236 background-color: #1E88E5;
237 color: #ffffff;
238 border: none;
239 border-radius: 8px;
240 cursor: pointer;
241 transition: background-color 0.3s, transform 0.2s;
242 font-size: 1.1em;
243 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
244 position: relative;
245 z-index: 2147483647;
246 pointer-events: auto;
247 ">Next</button>
248 <div id="errorMsg" style="color: #ff4d4d; margin-top: 30px; display: none; font-size: 1.1em; background: #2a2a2a; padding: 10px; border-radius: 8px;"></div>
249 <div id="spinner" style="border: 5px solid #333333; border-top: 5px solid #1E88E5; border-radius: 50%; width: 30px; height: 30px; animation: spin 1s linear infinite; display: none; margin-top: 20px;"></div>
250 <style>
251 @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
252 #nextBtn:hover { background-color: #1565C0; transform: translateY(-2px); }
253 #nextBtn:active { transform: translateY(0); }
254 #nextBtn:disabled {
255 pointer-events: none;
256 opacity: 0.6;
257 cursor: not-allowed;
258 }
259 </style>
260 `;
261 return container;
262 }
263
264 function showError(message) {
265 const errorEl = document.getElementById('errorMsg');
266 if (errorEl) {
267 errorEl.textContent = message;
268 errorEl.style.display = 'block';
269 }
270 console.error(message);
271 }
272
273 function isValidUrl(url) {
274 try {
275 new URL(url);
276 return true;
277 } catch {
278 return false;
279 }
280 }
281
282 try {
283 if (document.readyState === 'loading') {
284 document.addEventListener('DOMContentLoaded', runScript, { once: true });
285 } else {
286 runScript();
287 }
288
289 function runScript() {
290 const urlParams = new URLSearchParams(window.location.search);
291 const rawRedirect = urlParams.get('redirect');
292
293 if (!rawRedirect) {
294 const targetUrl = `https://bypass.vip/userscript.html?url=${encodeURIComponent(location.href)}&time=${config.time}&key=${config.key}`;
295 location.replace(targetUrl);
296 return;
297 }
298
299 let redirectUrl = rawRedirect;
300
301 if (!isValidUrl(redirectUrl)) {
302 try {
303 const decoded = decodeURIComponent(rawRedirect);
304 if (isValidUrl(decoded)) {
305 redirectUrl = decoded;
306 } else {
307 throw new Error('Invalid redirect URL after decoding');
308 }
309 } catch (err) {
310 showError('Error: Invalid or malformed redirect URL. Please try again.');
311 return;
312 }
313 }
314
315 const container = createContainer();
316 if (document.body) {
317 document.body.appendChild(container);
318 } else {
319 document.documentElement.appendChild(container);
320 }
321
322 const countdownEl = container.querySelector('#countdown');
323 const btn = container.querySelector('#nextBtn');
324 const spinner = container.querySelector('#spinner');
325
326 const newBtn = btn; // element is controlled by us; no need to clone
327 const hasHash = (url) => {
328 try {
329 return new URL(url).searchParams.has('hash') || url.includes('hash=');
330 } catch {
331 return url.includes('hash=');
332 }
333 };
334
335 if (hasHash(redirectUrl)) {
336 let time = 8;
337 countdownEl.style.color = '#ff4d4d';
338 countdownEl.style.fontWeight = 'bold';
339 const interval = setInterval(() => {
340 countdownEl.textContent = `YOU HAVE EXACTLY ${time} SECONDS TO CLICK THE BUTTON BEFORE YOUR HASH EXPIRES`;
341 time--;
342 if (time < 0) {
343 clearInterval(interval);
344 countdownEl.textContent = 'HASH EXPIRED. RETRYING...';
345 countdownEl.style.color = '';
346 countdownEl.style.fontWeight = '';
347 newBtn.disabled = true;
348 spinner.style.display = 'block';
349 setTimeout(() => {
350 location.replace(location.href.split('?')[0]);
351 }, 3500);
352 }
353 }, 1000);
354 } else {
355 countdownEl.style.display = 'none';
356 }
357
358 const performRedirect = () => {
359 if (!redirectUrl || newBtn.disabled) return;
360 try {
361 newBtn.disabled = true;
362 spinner.style.display = 'block';
363 setTimeout(() => {
364 try {
365 window.location.assign(redirectUrl);
366 } catch (err) {
367 window.location.href = redirectUrl;
368 }
369 }, 60);
370 } catch (err) {
371 showError('Redirect failed. Please copy and open the link manually: ' + redirectUrl);
372 newBtn.disabled = false;
373 spinner.style.display = 'none';
374 }
375 };
376
377 newBtn.addEventListener('click', (e) => {
378 e.preventDefault();
379 e.stopPropagation();
380 performRedirect();
381 }, { passive: false });
382
383 newBtn.addEventListener('touchend', (e) => {
384 e.preventDefault();
385 e.stopPropagation();
386 performRedirect();
387 }, { passive: false });
388
389 container.addEventListener('click', (e) => {
390 if (e.target && e.target.id === 'nextBtn') return;
391 });
392
393 try {
394 newBtn.setAttribute('aria-label', 'Proceed to link');
395 newBtn.tabIndex = 0;
396 } catch (err) { /* silent */ }
397 }
398 } catch (err) {
399 console.error('Userscript error:', err);
400 if (document.body) {
401 document.body.innerHTML = `<div style="color: #ff4d4d; text-align: center; padding: 40px; background: #121212; height: 100vh; display: flex; align-items: center; justify-content: center; font-size: 1.2em;">Error in bypass script: ${err && err.message ? err.message : err}. Please reload the page.</div>`;
402 }
403 }
404})();
405