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

Roblox Lua报Expected identifier错误 如何用玩家名变量设置JumpPower与WalkSpeed

错误根因

你遇到的是两处Lua基础语法错误:

  • 字符串赋值未加引号:local playerName = OykkoIsBack 中OykkoIsBack是字符串值,未加引号时Lua会将其识别为未定义的变量,需要用双引号/单引号包裹。
  • 动态索引语法错误:.操作符后只能跟固定的成员名,如果你要通过变量的值作为索引取表内成员,必须使用方括号[]包裹变量。你写的Players.(playerName)完全不符合Lua语法规则,这就是触发Expected identifier, got '('报错的直接原因。

修正后代码

-- 优先用GetService获取Roblox服务,避免路径变更导致报错
local Players = game:GetService("Players")
-- 字符串用引号包裹
local playerName = "OykkoIsBack"
-- 用[]通过变量索引玩家对象
Players[playerName].Character.Humanoid.JumpPower = 100
-- 同步修改WalkSpeed可新增一行
Players[playerName].Character.Humanoid.WalkSpeed = 20

优化建议

上述基础代码在玩家角色未加载时会抛出空值错误,新增加载判断逻辑运行会更稳定:

local Players = game:GetService("Players")
local playerName = "OykkoIsBack"

local targetPlayer = Players:FindFirstChild(playerName)
if targetPlayer then
    -- 等待角色加载完成
    local character = targetPlayer.Character or targetPlayer.CharacterAdded:Wait()
    -- 等待人形对象加载完成
    local humanoid = character:WaitForChild("Humanoid")
    humanoid.JumpPower = 100
    humanoid.WalkSpeed = 20
end

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 15:54:06