Greasy Fork

Greasy Fork is available in English.

Inferno Star! Freebitco.in VOID Pro! AutoRecaptcha included to run with fresh accounts!

Prepare for the amageddon!!

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         Inferno Star! Freebitco.in VOID Pro! AutoRecaptcha included to run with fresh accounts!
// @namespace    http://greasyfork.icu/de/users/444902-dauersendung
// @version      1.4
// @description  Prepare for the amageddon!!
// @description  This script clicks the recaptcha checkbox and checks if captcha has been solved and Freeroll
// @description  It redeems Xtra Rewardpoints and Xtra FreeBonus. You can deactivate by BTC_Bonus//Free_Points
// @description  It checks if VPN is connected before entering freebitco.in - set startpage to example.com
// @description  Works only with my ReSolver
// @description  Buy the whole script with ReSolver and setupguide for 100 accounts / houre for 25 $ in btc !!!
// @description  Twitch to see the script running with recaptcha solver --- https://www.twitch.tv/omegaman447
// @description  Buy here the whole bundle: https://satoshidisk.com/pay/C9DpKd
// @author       Dauersendung
// @match        http://example.com
// @match        https://www.google.com/recaptcha/api2*
// @include      /^https?://www\.google\.com/recaptcha/api2/anchor.*$/
// @require      http://code.jquery.com/jquery-latest.js
// @match        https://freebitco.in/*
// @grant        GM.xmlHttpRequest
// @grant        GM.getValue
// @grant        GM.setValue
// @grant        window.close
// @grant        unsafeWindow
// ==/UserScript==

(function() {
    'use strict';
    /*
    Multiple IPs example:
    var IPS = ["127.0.0.", "127.0.0.", "127.0.0."];
    Single IP example:
    var IPS = ["127.0.0."]
    */
    var IPS = [""];
    var VPN_RETRIES = 2; // How many times should it retry before closing?
    var VPN_WAIT_SECONDS = 15; // How many seconds should it wait between each retry?
    var DISCORD_WEBHOOK = "https://discordapp.com/api/webhooks/696860156247539753/EuzFtaa0u3HNe_VSddinah4eVPzzBAyiJIiifqMxrZL0s6ejp6vXaqrkUxrvzTqxC7v4";

    var Free_Points = "disabled", // Options enabled/disabled Toggles free points on and off
    Points_100 =  1, // use 0 to disable each points level
    Points_50 =   1,
    Points_25 =   1,
    Points_10 =   1,
    BTC_Bonus =   "disabled", // Optins enabled/disabled Toggles BTC bonus on and off
    BTC_1000 =    1, // use 0 to disable each BTC level
    BTC_500 =     1,
    BTC_100 =     1,
    Captcha =     "disabled";  /* options enabled/disabled If "disabled" the script will use RP and click the play_without_captcha button. "enabled" causes the script to loop until the captcha is solved which can take a long time. */

    var reward = {};
       reward.select = function() {
        reward.points = parseInt(unsafeWindow.$('.user_reward_points').text().replace(',',""));
        reward.bonustime = {};
        if (unsafeWindow.$("#bonus_container_free_points").length != 0) {
            reward.bonustime.text = unsafeWindow.$('#bonus_span_free_points').text();
            reward.bonustime.hour = parseInt(reward.bonustime.text.split(":")[0]);
            reward.bonustime.min = parseInt(reward.bonustime.text.split(":")[1]);
            reward.bonustime.sec = parseInt(reward.bonustime.text.split(":")[2]);
            reward.bonustime.current = reward.bonustime.hour * 3600 + reward.bonustime.min * 60 + reward.bonustime.sec;
        } else {
            reward.bonustime.current = 0;
        }
        console.log(reward.bonustime.current);
        if (reward.bonustime.current !== 0) {
            console.log(reward.bonustime.current);
        } else if (Free_Points === "enabled"){
            if (reward.points < 120) {
                console.log("waiting for 120 points");
            }
            else {
                if (Points_100 !== 0){
                unsafeWindow.RedeemRPProduct('free_points_100');}
                if (Points_50 !== 0){
                unsafeWindow.RedeemRPProduct('free_points_50');}
                if (Points_25 !== 0){
                unsafeWindow.RedeemRPProduct('free_points_25');}
                if (Points_10 !== 0){
                unsafeWindow.RedeemRPProduct('free_points_10');}
            }
        }

        if (unsafeWindow.$("#bonus_container_fp_bonus").length != 0) {
            reward.bonustime.text = unsafeWindow.$('#bonus_span_fp_bonus').text();
            reward.bonustime.hour = parseInt(reward.bonustime.text.split(":")[0]);
            reward.bonustime.min = parseInt(reward.bonustime.text.split(":")[1]);
            reward.bonustime.sec = parseInt(reward.bonustime.text.split(":")[2]);
            reward.bonustime.current = reward.bonustime.hour * 3600 + reward.bonustime.min * 60 + reward.bonustime.sec;
        } else {
            reward.bonustime.current = 0;
        }
        console.log(reward.bonustime.current);
        if (reward.bonustime.current !== 0) {
            console.log(reward.bonustime.current);
        } else if (BTC_Bonus === "enabled"){
            if (reward.points < 3200) {
                console.log("waiting for 320 points");
            }
            else {
                if (BTC_1000 !== 0){
                unsafeWindow.RedeemRPProduct('fp_bonus_1000');}
                if (BTC_500 !== 0){
                unsafeWindow.RedeemRPProduct('fp_bonus_500');}
                if (BTC_100 !== 0 ){
                unsafeWindow.RedeemRPProduct('fp_bonus_100');}
            }
        }

        unsafeWindow.$('.close-reveal-modal')[0].click();
        };
    function rand(min, max){
      return Math.floor(Math.random() * (max - min + 1) + min);
    }

    function sendToDiscord(close_it){
        console.log("sending to Discord");
        GM.getValue("profileName", "NoProfileName").then(profileName => {
            console.log("got profile name " + profileName);
            GM.xmlHttpRequest({
                method: "POST",
                url: DISCORD_WEBHOOK + "?wait=false",
                headers: {"Content-Type": "application/json"},
                data: JSON.stringify({"content": "Ship " + profileName + " has sunk"}),
            });
            if(close_it){
                setTimeout(function(){
                    var win = window.open('', '_self', '');
                    window.close();
                }, 2000);
            }
        });
    }

    function vpnCheck() {
        var btnSet = document.createElement("button");
        btnSet.textContent = "Set profile name";
        btnSet.style.position = "absolute";
        btnSet.style.left = "0";
        btnSet.style.top = "0";
        btnSet.style.zIndex = "999";
        btnSet.addEventListener("click", function(){
            var p = prompt("Profile name?");
            GM.setValue("profileName", p);
        });
        document.body.appendChild(btnSet);

        var vpnCount = VPN_RETRIES;
        var vpnInterval = setInterval(function(){
            if(vpnCount === 0){
                sendToDiscord(true);
            }

            GM.xmlHttpRequest({
              method: "GET",
              url: "https://ipecho.net/plain",
              onload: function(response) {
                var ip = response.responseText;
                var ok = false;

                for(var i=0; i<IPS.length; ++i){
                    if (ip.startsWith(IPS[i])){
                        ok = true;
                        break;
                    }
                }
                if (ok){
                    window.location = "https://freebitco.in";
                    clearInterval(vpnInterval);
                    vpnCount = VPN_RETRIES;
                    console.log("VPN is active");
                } else vpnCount--;
              }
            });
        }, VPN_WAIT_SECONDS * 1000);
    }

   (function() {
    'use strict';
    setTimeout(function(){
        console.log("step1");
        $("#rc-anchor-container").click();
 }, 3000);
 })();

    function recaptchaClicker() {
        var z = setInterval(function() {
            var ele = unsafeWindow.$(".recaptcha-checkbox-border");
            if (ele.length > 0) return;

            setTimeout(function() { ele.click(); }, rand(1000, 3000));
            clearInterval(z);
        }, 1000);
    }

    function freebitco() {
        var btnSet = document.createElement("button");
        btnSet.textContent = "Set profile name";
        btnSet.style.position = "absolute";
        btnSet.style.left = "0";
        btnSet.style.top = "0";
        btnSet.style.zIndex = "999";
        btnSet.addEventListener("click", function(){
            var p = prompt("Profile name?");
            GM.setValue("profileName", p);
        });
        document.body.appendChild(btnSet);

        var blocked_recaptcha = 100;
        var rollInterval = setInterval(function(){
            if(unsafeWindow.grecaptcha == undefined) return;
            if (unsafeWindow.$('#free_play_form_button').is(':visible') == false) return;
            if (blocked_recaptcha == 0){
                var withoutCaptcha = unsafeWindow.$('#play_without_captchas_button');
                if(withoutCaptcha.is(':visible')) {
                    withoutCaptcha.click();
                     $('#free_play_form_button').click();
                }
                blocked_recaptcha = 100;
            }
            var resp = unsafeWindow.grecaptcha.getResponse();
            if(resp.length > 0){
                setTimeout(function() {unsafeWindow.$("#free_play_form_button").click();}, rand(1000, 3000));
                blocked_recaptcha = 100;
                clearInterval(rollInterval);
                return;
            }else{
                blocked_recaptcha--;
            }
        }, 1000);
        var rewardInterval = setInterval(function(){
            if(unsafeWindow.RedeemRPProduct == undefined) return;
            reward.select();
        }, 5000);
        var closeModalInterval = setInterval(function(){
            var ele = unsafeWindow.$('.close-reveal-modal');
            if(ele.length > 0) {
                ele.click();
            }
        }, 1000);

        var vpnCount = VPN_RETRIES;

        var checkVpnInterval = setInterval(function(){
            if(vpnCount === 0){
                sendToDiscord(true);
            }

            GM.xmlHttpRequest({
              method: "GET",
              url: "https://ipecho.net/plain",
              onload: function(response) {
                var ip = response.responseText;
                var ok = false;
                for(var i=0; i<IPS.length; ++i){
                    if (ip.startsWith(IPS[i])){
                        ok = true;
                        break;
                    }
                }
                if (ok){
                    vpnCount = VPN_RETRIES;
                } else vpnCount--;
              }
            });
        }, VPN_WAIT_SECONDS * 1000);
    }

    var loc = location.toString();
    if(loc.indexOf("example.com") !== -1) vpnCheck();
    else if(loc.indexOf("google.com/recaptcha/api2") !== -1) recaptchaClicker();
    else if(loc.indexOf("freebitco.in") !== -1) freebitco();

})();