You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Roblox游戏中设置所有玩家身高保持一致

Roblox 全玩家统一身高实现方案

Roblox 角色的身高由 Humanoid 实例下的多个缩放数值共同控制,要实现统一身高只需在服务端监听玩家加载事件,统一覆盖对应缩放属性即可。

实现步骤

  • 在「ServerScriptService」中新建服务端脚本,只有服务端修改的属性才能实现全客户端同步,不会出现不同玩家看到的身高不一致问题
  • 将以下代码写入脚本:
-- 自定义统一身高的缩放系数,1为Roblox默认身高,数值越大身高越高
local UNIFORM_HEIGHT_SCALE = 1
-- 头部缩放微调系数,避免统一缩放后头部比例违和,可按需调整
local HEAD_ADJUST_SCALE = 0.9

game:GetService("Players").PlayerAdded:Connect(function(player)
    player.CharacterAdded:Connect(function(character)
        local humanoid = character:WaitForChild("Humanoid", 10)
        if not humanoid then return end
        
        -- 覆盖所有体型缩放值
        humanoid.BodyHeightScale.Value = UNIFORM_HEIGHT_SCALE
        humanoid.HeadScale.Value = UNIFORM_HEIGHT_SCALE * HEAD_ADJUST_SCALE
        humanoid.BodyWidthScale.Value = UNIFORM_HEIGHT_SCALE
        humanoid.BodyDepthScale.Value = UNIFORM_HEIGHT_SCALE

        -- 锁定缩放值,避免后续游戏内效果、道具修改身高
        humanoid.BodyHeightScale.Changed:Connect(function()
            humanoid.BodyHeightScale.Value = UNIFORM_HEIGHT_SCALE
        end)
        humanoid.HeadScale.Changed:Connect(function()
            humanoid.HeadScale.Value = UNIFORM_HEIGHT_SCALE * HEAD_ADJUST_SCALE
        end)
        humanoid.BodyWidthScale.Changed:Connect(function()
            humanoid.BodyWidthScale.Value = UNIFORM_HEIGHT_SCALE
        end)
        humanoid.BodyDepthScale.Changed:Connect(function()
            humanoid.BodyDepthScale.Value = UNIFORM_HEIGHT_SCALE
        end)
    end)
end)
  • 调整脚本开头的UNIFORM_HEIGHT_SCALE参数即可自定义统一身高的数值。

常见适配说明

  • 如果你只需要统一身高、保留玩家的胖瘦、头部大小等自定义设置,只需保留BodyHeightScale的修改和锁定逻辑,删除其余三个缩放属性的相关代码即可
  • 如果你的游戏使用自定义非官方角色模型,可手动在角色的Humanoid下新建对应名称的NumberValue实例,即可适配上述逻辑
  • 不要在客户端LocalScript中执行该修改,否则会出现多端同步异常。

内容的提问来源于stack exchange,提问作者Juris274

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 23:36:04