Roblox Brainrot Filter

Hides specific games and keywords on Roblox

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

Advertisement:

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

Advertisement:

// ==UserScript==
// @name         Roblox Brainrot Filter
// @namespace    http://tampermonkey.net/
// @version      1.1
// @description  Hides specific games and keywords on Roblox
// @author       You
// @match        *://*.roblox.com/*
// @run-at       document-end
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    const blockSecondWordA = true;

    // Use a Set for faster lookups
    const blockIds = new Set([
        "97598239454123", "79268393072444", "16116270224", "131346454575416",
        "128784467030899", "109983668079237", "103376279822921", "74260430392611",
        "89469502395769", "18923620224", "71132543521245", "109881277752094",
        "83569851223739", "132768306953643", "88480125732253", "139992937215031",
        "86378115369061", "75547400568620", "96645548064314", "91177184562415",
        "11276071411", "125700405216363", "99101926472609", "109578395590751",
        "126884695634066", "95082159892680", "133237691504819", "77597927786054",
        "18799085098", "75568173037446", "85997031767607", "96988868492490",
        "90390610040462", "120450743769548", "78724049937437", "75738770295234",
        "74384050846716", "137233438285284", "111363135577981", "90945967466286",
        "89343390950953", "9397712855", "84133819568736", "85245205758607",
        "133872250800930", "108533757090220", "79657240466394", "107646426076756",
        "83942919686609", "76285745979410", "16154918775", "96151237893653",
        "84681951229584", "80617660156189", "139708186687323", "73189007576537",
        "18803315158", "16288616721", "93265851514769"
    ]);

    const keywords = ["grow a", "brainrot", "sprunki", "capybara", "ai", "find the", "would you rather"];

    const filter = () => {
        const gameLinks = document.querySelectorAll('a[href*="/games/"]');

        for (const link of gameLinks) {
            if (link.style.display === 'none') continue;

            const text = link.textContent.toLowerCase();
            const href = link.href;

            // Check IDs
            let shouldHide = [...blockIds].some(id => href.includes(id));

            // Check Keywords
            if (!shouldHide) {
                shouldHide = keywords.some(k => text.includes(k));
            }

            // Check pattern
            if (!shouldHide && blockSecondWordA) {
                const words = text.trim().split(/\s+/);
                if (words.length >= 2 && words[1] === "a") {
                    shouldHide = true;
                }
            }

            if (shouldHide) {
                const container = link.closest('.game-card, .game-tile, .grid-item, li');
                (container || link).style.display = 'none';
            }
        }
    };

    const observer = new MutationObserver(filter);
    observer.observe(document.body, { childList: true, subtree: true });

    filter();
})();