[Brick-Kill] Clan Botter

Bots a clan by joining it several times.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// discord.gg/JjszyaD63A

// ==UserScript==
// @name         [Brick-Kill] Clan Botter
// @version      3.1
// @description  Bots a clan by joining it several times.
// @match        *://www.brick-hill.com/*
// @run-at       document-idle
// @icon         https://www.brick-hill.com/favicon.ico
// @license      MIT
// @namespace    bhclanbotter
// @grant        GM_setValue
// @grant        GM_getValue
// ==/UserScript==

(function() {
    'use strict';

    /*-    SETTINGS    -*/

    const clanId = 8434 // The id of the clan you want to target.

    const Mode = "Ambush" // Ambush or Repeat.

    // 'Ambush' will join a clan several times at once when you join. Can join 5-10 times at random. If you can't set a clan to "Join pending", use this.
    const Ambush_amount = 11 // Number of times to send joinClan in Ambush mode.

    // 'Repeat' will join a clan once repeatedly over time. Has no limit compared to Ambush. Recommended for a clan that has "Join pending", and you can accept the invites.
    const Repeat_interval = 500 // Number of times to send joinClan in Ambush mode. Recommended to at most 300ms so you don't get rate limited.

    /*-                -*/




    const token = document.querySelector('input[name="_token"]').value;
    const params = new URLSearchParams();
    params.append('clan_id', clanId + 0.25);
    params.append('_token', token);

    const headers = {
        "Content-Type": "application/x-www-form-urlencoded"
    };

    function joinClan() {
        return fetch("https://www.brick-hill.com/clan/join", {
            method: "POST",
            headers: headers,
            body: params.toString()
        })
            .then(response => {
            if (!response.ok) {
                throw new Error('Network response was not ok');
            }
            return response.text();
        })
            .catch(error => {
            throw new Error('Error joining clan:', error);
        });
    }

    if (Mode === "Ambush") {
        Promise.all(Array.from({ length: Ambush_amount }, joinClan))
            .catch(error => {
            throw new Error('One or more requests failed:', error);
        });
    } else if (Mode === "Repeat") {
        setInterval(joinClan, Repeat_interval);
    }
})();