FORGEXHACK

we do a little trolling

目前為 2026-04-02 提交的版本,檢視 最新版本

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name FORGEXHACK
// @description we do a little trolling
// @version 4.0.5(No Update)
// @author FORGEX
// @homepage https://github.com/crackbob/Minebuns
// @supportURL https://github.com/crackbob/Minebuns
// @match *://minefun.io/*
// @grant none
// @namespace http://tampermonkey.net/
// ==/UserScript==
(() => {
    "use strict";
    var __webpack_modules__ = {
        // ... (giữ nguyên toàn bộ phần webpack_modules cũ của bạn, từ 679 đến 548) ...
        // Tôi không paste lại toàn bộ để ngắn gọn, bạn chỉ cần thay phần class Fly và TeleportModule bên dưới vào code cũ của bạn.
    };

    // ... (giữ nguyên toàn bộ code từ đầu đến trước class Fly) ...

    class Fly extends Module {
        constructor() {
            super("Fly", "Movement", {
                "Vertical Speed": 5,
                "Horizontal Speed": 8   // thêm tùy chọn tốc độ ngang để bay mượt hơn
            });
            this.toggleKey = "KeyF";
            this.originalGravity = null;
            this.originalMoveSpeed = null;
            document.addEventListener("keydown", this.handleKeyPress.bind(this));
        }

        handleKeyPress(e) {
            if (e.code === this.toggleKey && !e.repeat) {
                this.toggle();
            }
        }

        onRender() {
            const player = hooks.A?.gameWorld?.player;
            if (!player) return;

            // Lưu giá trị gốc lần đầu
            if (this.originalGravity === null) {
                this.originalGravity = player.velocity.gravity;
                this.originalMoveSpeed = player.velocity.moveSpeed;
            }

            if (this.isEnabled) {
                player.velocity.gravity = 0;                    // tắt hoàn toàn trọng lực
                player.velocity.velVec3.y = 0;                  // reset y velocity mỗi frame

                const speed = parseFloat(this.options["Horizontal Speed"]) || 8;
                const vertSpeed = parseFloat(this.options["Vertical Speed"]) || 5;

                // Áp dụng velocity ngang theo input (mượt hơn)
                if (player.inputs.forward) player.velocity.velVec3.z = -speed;
                else if (player.inputs.backward) player.velocity.velVec3.z = speed;
                else player.velocity.velVec3.z *= 0.85; // giảm dần để mượt

                if (player.inputs.left) player.velocity.velVec3.x = -speed;
                else if (player.inputs.right) player.velocity.velVec3.x = speed;
                else player.velocity.velVec3.x *= 0.85;

                // Bay lên/xuống
                if (player.inputs.jump) {
                    player.velocity.velVec3.y = vertSpeed;
                } else if (player.inputs.crouch) {
                    player.velocity.velVec3.y = -vertSpeed;
                }

                // Sync position mạnh hơn để giảm rubberband
                if (player.physicsPosComp) {
                    player.physicsPosComp.copyPos(player.position);
                }
            }
        }

        onDisable() {
            const player = hooks.A?.gameWorld?.player;
            if (player) {
                if (this.originalGravity !== null) player.velocity.gravity = this.originalGravity;
                if (this.originalMoveSpeed !== null) player.velocity.moveSpeed = this.originalMoveSpeed;
                player.velocity.velVec3.y = 0;
            }
        }
    }

    // ... (giữ nguyên các class khác) ...

    class TeleportModule extends Module {
        constructor() {
            super("Teleport", "Misc");
            this.key = "KeyT";
            document.addEventListener("keydown", (e) => {
                if (e.code === this.key && !e.repeat) {
                    this.tpToSelectedBlock();
                }
            });
        }

        tp(x = 0, y = 0, z = 0, relative = true) {
            try {
                const player = hooks.A?.gameWorld?.player;
                if (!player) return;

                const position = player.position;

                if (relative) {
                    position.x += x;
                    position.y += y;
                    position.z += z;
                } else {
                    position.x = x;
                    position.y = y;
                    position.z = z;
                }

                // Sync mạnh để giảm rubberband
                if (player.physicsPosComp) {
                    player.physicsPosComp.copyPos(position);
                }

                // Cập nhật vị trí server-side giả lập (nếu game có)
                if (player.serverPosition) {
                    Object.assign(player.serverPosition, position);
                }

                console.log(`[Teleport] Đã TP đến: ${position.x.toFixed(1)}, ${position.y.toFixed(1)}, ${position.z.toFixed(1)}`);
            } catch (err) {
                console.warn("Teleport lỗi:", err);
            }
        }

        tpToSelectedBlock() {
            try {
                const gameWorld = hooks.A?.gameWorld;
                if (!gameWorld) return;

                // Tìm hệ thống outline/crosshair
                const outlineSystem = gameWorld.systemsManager?.activeSystems?.find(s => s?.currBlockPos || s?.intersectAndShow);
                if (!outlineSystem) return;

                outlineSystem.intersectAndShow?.(true, 500);

                if (outlineSystem.currBlockPos) {
                    const { x, y, z } = outlineSystem.currBlockPos;
                    this.tp(x + 0.5, y + 2, z + 0.5, false);   // +2 block để đứng trên
                }
            } catch (err) {
                console.warn("Lỗi TP đến block:", err);
            }
        }
    }

    // ... (phần module_moduleManager.init() giữ nguyên, chỉ thêm/đảm bảo Fly và TeleportModule được add) ...

    const module_moduleManager = {
        modules: {},
        addModules: function(...e) {
            for (const t of e) this.modules[t.name] = t
        },
        // ... giữ nguyên phần còn lại ...

        init() {
            this.addModules(
                new ArrayList(), 
                new Watermark(), 
                new ClickGUI(), 
                new Airjump(), 
                new Instabreak(), 
                new Nuker(), 
                new Nuker1(), 
                new AdBypass(), 
                new Fly(),                    // Fly đã sửa
                new Speed(), 
                new FreeHeadcoins(), 
                new FreeMinebucks(), 
                new FreeSpins(), 
                new Fill(), 
                new Chams(), 
                new FOVChanger(), 
                new Scaffold(), 
                new Killaura(), 
                new GunModifier(), 
                new Disabler(), 
                new GhostMode(), 
                new Aimbot(), 
                new NoClip(), 
                new HitAllModule(), 
                new TeleportModule(),        // Teleport đã sửa
                new NoFog(), 
                new CustomCrosshair(), 
                new HitModule(), 
                new KnockbackDisabler()
            );

            // ... giữ nguyên events.on("render") ...
            this.modules.Arraylist.enable();
            this.modules.Watermark.disable();
        }
    };

    class Minebuns {
        constructor() {
            this.version = "1.0.0";
            this.init();
        }
        init() {
            setInterval(() => events.emit("render"), 1000 / 60);
            document.addEventListener("keydown", (e) => events.emit("keydown", e.code));
            hooks.A.init();
            module_moduleManager.init();
            window.hooks = hooks.A;
        }
    }

    const main = new Minebuns();
})();