Sword Phighting Morph
Key RequiredUniversal

Sword Phighting Morph

Universal Scriptimdisplayimdisplay 3.5K views 701 executesUpdated Oct 17, 2025
2.5/ 5(2 votes)
1150% Positive
Lua Script•141 lines (4258 chars)
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer

-- configs
local Variant = "Sword"
local UseAlternateOutfit = false
local EnableShirtGraphic = true
local ShirtGraphicID = "rbxassetid://11941626720"

local MainFaces = {
    "rbxassetid://18271950515",
    "rbxassetid://18271950368",
    "rbxassetid://18271950214"
}

local HatMeshID = "rbxassetid://18296801214"
local HatTextureID = "rbxassetid://18296801232"
local BackMeshID = "rbxassetid://18296479766"
local BackTextureID = "rbxassetid://18296479791"

local Variants = {
    ["Sword"] = {
        Shirt = "rbxassetid://100870637153399",
        Pants = "rbxassetid://94021457725186",
        AltShirt = "rbxassetid://124426852530129",
        AltPants = "rbxassetid://118613073734644",
        BodyColor = BrickColor.new("Ghost grey"),
        FaceColor = Color3.fromRGB(0, 0, 0)
    }
}

local function createMeshPart(name, meshId, textureId, scale)
    local part = Instance.new("Part")
    part.Name = name
    part.Size = Vector3.new(1, 1, 1)
    part.CanCollide = false
    part.Anchored = false
    part.Transparency = 0
    part.Parent = nil

    local mesh = Instance.new("SpecialMesh")
    mesh.MeshType = Enum.MeshType.FileMesh
    mesh.MeshId = meshId
    mesh.TextureId = textureId
    mesh.Scale = scale or Vector3.new(1, 1, 1)
    mesh.Parent = part

    return part
end

local function MorphPlayer()
    local character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local variantData = Variants[Variant]
    if not variantData then return end

    for _, item in ipairs(character:GetChildren()) do
        if item:IsA("Accessory") or item:IsA("Hat") or item:IsA("Shirt") or item:IsA("Pants") or item:IsA("ShirtGraphic") then
            item:Destroy()
        end
    end

    local head = character:FindFirstChild("Head")
    if head then
        for _, d in ipairs(head:GetChildren()) do
            if d:IsA("Decal") then d:Destroy() end
        end
    end

    for _, part in ipairs(character:GetChildren()) do
        if part:IsA("BasePart") then
            part.BrickColor = variantData.BodyColor
        end
    end

    local shirt = Instance.new("Shirt")
    shirt.Name = "GraceShirt"
    shirt.ShirtTemplate = UseAlternateOutfit and (variantData.AltShirt or variantData.Shirt) or variantData.Shirt
    shirt.Parent = character

    local pants = Instance.new("Pants")
    pants.Name = "GracePants"
    pants.PantsTemplate = UseAlternateOutfit and (variantData.AltPants or variantData.Pants) or variantData.Pants
    pants.Parent = character

    if EnableShirtGraphic and ShirtGraphicID ~= "" then
        local sg = Instance.new("ShirtGraphic")
        sg.Name = "GraceNeckGraphic"
        sg.Graphic = ShirtGraphicID
        sg.Parent = character
    end

    if head then
        local mainFace = Instance.new("Decal")
        mainFace.Name = "mainFace"
        mainFace.Face = Enum.NormalId.Front
        mainFace.Color3 = variantData.FaceColor or Color3.new(1, 1, 1)
        mainFace.Parent = head

        task.spawn(function()
            while character and character.Parent do
                for _, faceId in ipairs(MainFaces) do
                    mainFace.Texture = faceId
                    task.wait(0.4)
                end
            end
        end)
    end

    if head then
        local hat = createMeshPart("GraceHat", HatMeshID, HatTextureID, Vector3.new(1.0, 1.0, 1.0))
        hat.Parent = character

        local weld = Instance.new("Weld")
        weld.Part0 = head
        weld.Part1 = hat
        weld.C0 = CFrame.new(0.0, 0.72, 0.10)
        weld.Parent = hat
    end

    local torso = character:FindFirstChild("Torso") or character:FindFirstChild("UpperTorso")
    if torso then
        local back = createMeshPart("GraceBack", BackMeshID, BackTextureID, Vector3.new(1.0, 1.0, 1.0))
        back.Parent = character

        local weld = Instance.new("Weld")
        weld.Part0 = torso
        weld.Part1 = back
        weld.C0 = CFrame.new(0.0, -0.1, 0.0) * CFrame.Angles(math.rad(8), 0, 0)
        weld.Parent = torso
    end
end

LocalPlayer.CharacterAdded:Connect(function()
    task.wait(1)
    MorphPlayer()
end)

if LocalPlayer.Character then
    task.wait(1)
    MorphPlayer()
end

Features & Information

"Prepare yourself..! for this script" -john phighting awesome morph play phighting https://www.roblox.com/games/7138009149/SHOP-PHIGHTING You can now play as Sword 'John' Phighting (redesign ver) from the hit game 'Phighting!' best used in (ph)fighting games client sided, only you can see the morph. also has a switching face thing. "stfu and make an aimbot script" -satisfied customer boy2710
#sword#phighting#morph#face

Community Comments (5)

imdisplayimdisplayOct 17, 2025(edited)

bald sword in the thumbnail not included (or you could just remove the hat mesh from the script)

Replying to @imdisplay
*boy2710*boy2710Oct 18, 2025

@imdisplayfrfr stfu and make an aimbot script

Replying to @*boy2710
imdisplayimdisplayOct 19, 2025(edited)

nuh uh make your own or just find one because there's like, SO MANY UNIVERSAL AIMBOT SCRIPTS in scriptblox.

Replying to @imdisplay
PuffysPuffysJul 8, 2026

@imdisplay aimbot scripts don't aork

Replying to @Puffys
PuffysPuffysJul 11, 2026(edited)

Oh hey you... Liked my comment?

More Scripts for Universal Scripts