Skip to content

Giant Tall Avatar Script Better - Fe

Place this in StarterPlayerScripts as a LocalScript named GiantInput

--[[
    Local Input Handler
    Provides UI buttons or keyboard controls to resize avatar.
]]

local player = game.Players.LocalPlayer local replicatedStorage = game:GetService("ReplicatedStorage") local userInputService = game:GetService("UserInputService")

-- Get remote events local requestEvent = replicatedStorage:WaitForChild("RequestGiantChange") local visualEvent = replicatedStorage:WaitForChild("GiantResizeEvent")

-- Create simple on-screen GUI (buttons) local screenGui = Instance.new("ScreenGui") screenGui.Name = "GiantControls" screenGui.Parent = player:WaitForChild("PlayerGui")

local function createButton(text, position, callback) local button = Instance.new("TextButton") button.Size = UDim2.new(0, 120, 0, 40) button.Position = position button.Text = text button.BackgroundColor3 = Color3.fromRGB(30, 30, 30) button.TextColor3 = Color3.fromRGB(255, 255, 255) button.BorderSizePixel = 0 button.Parent = screenGui

button.MouseButton1Click:Connect(callback)
return button

end

-- Buttons createButton("🌱 GROW", UDim2.new(0, 10, 0, 50), function() requestEvent:FireServer("grow") end)

createButton("🍂 SHRINK", UDim2.new(0, 10, 0, 100), function() requestEvent:FireServer("shrink") end)

createButton("🔄 RESET", UDim2.new(0, 10, 0, 150), function() requestEvent:FireServer("reset") end)

-- Keyboard shortcuts userInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end fe giant tall avatar script better

if input.KeyCode == Enum.KeyCode.Equals or input.KeyCode == Enum.KeyCode.KeypadPlus then
    requestEvent:FireServer("grow")
elseif input.KeyCode == Enum.KeyCode.Minus or input.KeyCode == Enum.KeyCode.KeypadMinus then
    requestEvent:FireServer("shrink")
elseif input.KeyCode == Enum.KeyCode.R then
    requestEvent:FireServer("reset")
end

end)

-- Handle visual sync from server (for other players) visualEvent.OnClientEvent:Connect(function(playerWhoChanged, newScale) -- Only apply visual if it's another player (server already handles local) if playerWhoChanged ~= player then local char = playerWhoChanged.Character if char then -- Apply visual scaling effect (optional: tween) for _, part in ipairs(char:GetDescendants()) do if part:IsA("BasePart") then part.Size = part.Size * newScale end end end end end)


Most "FE Avatar" scripts operate on a specific exploit of Roblox's replication system.

Example (concise, illustrative):

Server Script (in ServerScriptService)

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local RequestScale = Instance.new("RemoteEvent", ReplicatedStorage)
RequestScale.Name = "RequestScale"
local ADMIN_USER_IDS = 12345678 -- fill if needed
local function isAdmin(player)
    for _,id in ipairs(ADMIN_USER_IDS) do if player.UserId == id then return true end end
    return false
end
local function applyScaleToCharacter(character, scale)
    scale = math.clamp(scale, 0.5, 5) -- server-enforced limits
    local humanoid = character:FindFirstChildOfClass("Humanoid")
    if not humanoid then return end
-- Adjust HipHeight proportionally
    humanoid.HipHeight = (humanoid.HipHeight or 2) * scale
-- Scale parts and adjust Motor6D C0/C1
    for _, part in ipairs(character:GetDescendants()) do
        if part:IsA("BasePart") and part.Name ~= "HumanoidRootPart" then
            part.Size = part.Size * scale
            -- Optionally set density/massless for stability
            pcall(function() part.CustomPhysicalProperties = PhysicalProperties.new(0,0,0,0,0) end)
        elseif part:IsA("Motor6D") then
            part.C0 = part.C0 * CFrame.new(0,0,0) * CFrame.new(part.C0.Position * (scale - 1))
            part.C1 = part.C1 * CFrame.new(0,0,0) * CFrame.new(part.C1.Position * (scale - 1))
        end
    end
-- Adjust HumanoidRootPart
    local hrp = character:FindFirstChild("HumanoidRootPart")
    if hrp then
        hrp.Size = hrp.Size * scale
        hrp.CFrame = hrp.CFrame -- keep position; may need offset
    end
end
RequestScale.OnServerEvent:Connect(function(player, mode)
    -- mode could be "giant", "normal", or numeric scale
    if typeof(mode) == "string" then
        if mode == "giant" then
            applyScaleToCharacter(player.Character, 3)
        elseif mode == "normal" then
            applyScaleToCharacter(player.Character, 1)
        end
    elseif typeof(mode) == "number" and isAdmin(player) then
        applyScaleToCharacter(player.Character, mode)
    end
end)

Notes:

Add a ScreenGui with a Frame, TextBox, and Button to change size dynamically.

-- Put this in the same LocalScript after the above code

local screenGui = Instance.new("ScreenGui") screenGui.Parent = LocalPlayer:WaitForChild("PlayerGui") Place this in StarterPlayerScripts as a LocalScript named

local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 200, 0, 100) frame.Position = UDim2.new(0, 10, 0, 10) frame.BackgroundColor3 = Color3.fromRGB(30,30,30) frame.Parent = screenGui

local textBox = Instance.new("TextBox") textBox.Size = UDim2.new(0, 180, 0, 30) textBox.Position = UDim2.new(0, 10, 0, 10) textBox.PlaceholderText = "Height (1-5)" textBox.Text = tostring(TALL_SCALE) textBox.Parent = frame

local button = Instance.new("TextButton") button.Size = UDim2.new(0, 180, 0, 30) button.Position = UDim2.new(0, 10, 0, 50) button.Text = "Apply" button.Parent = frame

button.MouseButton1Click:Connect(function() local newHeight = tonumber(textBox.Text) if newHeight and newHeight >= 1 and newHeight <= 10 then TALL_SCALE = newHeight resetSize(Character) makeTall(Character) else textBox.Text = "1 to 10 only" end end)


Place this in ReplicatedStorage as a ModuleScript named GiantHandler

--[[
    FE Giant Avatar Handler
    Handles safe resizing, collision, and network ownership.
]]
local GiantHandler = {}

-- Settings local CONFIG = DEFAULT_SIZE = 1, MAX_SIZE = 50, -- Max scale (50 = Godzilla) MIN_SIZE = 0.5, STEP_SIZE = 0.25, -- Growth per key press EFFECTS = true -- Enable visual/sound effects

-- Services local Players = game:GetService("Players") local RunService = game:GetService("RunService") local Debris = game:GetService("Debris")

-- Internal local activePlayers = {} -- Track resized characters end -- Buttons createButton("🌱 GROW", UDim2

-- Apply size change to all visible parts local function scaleCharacter(character, scale) local primary = character:FindFirstChild("HumanoidRootPart") if not primary then return end

-- Store original sizes if first time
if not activePlayers[character] then
    activePlayers[character] = {
        originalSizes = {},
        rootOffset = primary.Position.Y - character:GetPivot().Y
    }
    -- Save original sizes for each part
    for _, part in ipairs(character:GetDescendants()) do
        if part:IsA("BasePart") and part ~= primary then
            activePlayers[character].originalSizes[part] = part.Size
        end
    end
end
-- Scale RootPart (handles collisions and physics)
primary.Size = Vector3.new(2, 5, 1) * scale -- Adjust humanoid proportions
primary.CFrame = primary.CFrame * CFrame.new(0, (scale - 1) * 3, 0) -- Lift off ground
-- Scale all other body parts
for part, origSize in pairs(activePlayers[character].originalSizes) do
    if part and part.Parent == character then
        local newSize = origSize * scale
        -- Keep attachments in place
        local oldCF = part.CFrame
        part.Size = newSize
        part.CFrame = oldCF
    end
end
-- Adjust Humanoid settings
local humanoid = character:FindFirstChildWhichIsA("Humanoid")
if humanoid then
    humanoid.WalkSpeed = 16 / scale -- Slower when giant (realism)
    humanoid.JumpPower = 50 * scale -- Bigger jumps
    humanoid.HipHeight = 2 * scale
end

end

-- Public API: Resize a player function GiantHandler.SetSize(player, newScale) local character = player.Character if not character then return false end

local clamped = math.clamp(newScale, CONFIG.MIN_SIZE, CONFIG.MAX_SIZE)
local humanoidRoot = character:FindFirstChild("HumanoidRootPart")
if not humanoidRoot then return false end
-- Network ownership: Let client handle visual, server handle physics
if RunService:IsServer() then
    -- Fire all clients to update visuals
    local resizeEvent = game:GetService("ReplicatedStorage"):FindFirstChild("GiantResizeEvent")
    if resizeEvent then
        resizeEvent:FireAllClients(player, clamped)
    end
-- Server-side collision adjustment
    humanoidRoot.CustomPhysicalProperties = PhysicalProperties.new(
        clamped * 100, -- Density
        0.4,          -- Friction
        0.3           -- Elasticity
    )
scaleCharacter(character, clamped)
-- Effects
    if CONFIG.EFFECTS then
        local sound = Instance.new("Sound")
        sound.SoundId = "rbxassetid://9120386436" -- Growth sound effect
        sound.Volume = math.min(clamped / 10, 1)
        sound.Parent = humanoidRoot
        sound:Play()
        Debris:AddItem(sound, 3)
    end
end
return true

end

-- Cleanup function GiantHandler.Cleanup(player) activePlayers[player.Character] = nil end

return GiantHandler


Let's break down the search query because understanding the terminology is half the battle.

User Prompt: The user might ask, "What can you help me with?"

FE Giant Response: