CHUAN2 DEV ENGINE
996 正版授权研发中心 · 360 授权合作教学中心 · 抖音传奇直播合作授权 · 快手推广运营商授权
OFFICIAL LICENSED ACADEMY 查验官方授权证书 →
// 威海旷世互娱教学基地 · 技术文章
Lua实战个人变量类型转换

个人变量与 tostring/tonumber:跟着玩家走的数据

2026-10-20 23:27 作者:吴大圣老师 Lua实战个人变量类型转换

系统变量全服一份;个人变量一人一份,存在角色库,下线也在。

一、何时用个人变量

  • 签到次数、个人首杀、VIP 等级、任务进度
  • 需要「每个角色自己的」状态

接口形式因端而异,常见 SetPlayVar / GetPlayVar 或对象变量 API,以新三端说明书为准。

二、类型转换

lua
local a = "123"
print(type(a))            --> string
local b = tonumber(a)
print(type(b))            --> number

local c = tostring(100)
print(type(c))            --> string
print(tonumber("你好"))   --> nil  (不是数字串)

字符串「数字」相加,Lua 可能自动转;但空字符串会炸:

lua
local s = GetSysStr("x")  -- ""
-- s + 1  -- 危险
local n = tonumber(s) or 0
print(n + 1)

三、初始化口诀

lua
local raw = GetXxx("key")
local v = (raw == nil or raw == "") and 0 or tonumber(raw) or 0

或短路:local t = raw and JsonToTable(raw) or {}。

四、和个人变量一起用

  • 个人:登录次数、今日步数
  • 系统:全服总步数、排行榜底表

单线程下写库要短;高频用 int,大表才 JSON。

今日练习:用个人变量做「今日登录 +1」;用系统变量做「全服登录总数」,观察二者差别。


作者履历与出处

本文由 996 技术组基于 996 引擎官方知识库与浮生梦老师课程体系整理。团队长期从事传奇类引擎 Lua 后端逻辑、客户端界面与商业版本交付,内容以官方知识库与真实项目为出处,按版本持续修订。

← 返回文章地图返回研学路径

幂尔框架 · 实战干货 · 接口调用

LATEST ARTICLES

全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →

Lua实战个人变量

个人变量与 tostring/tonumber:跟着玩家走的数据

系统变量全服一份; 个人变量 一人一份,存在角色库,下线也在。 一、何时用个人变量 - 签到次数、个人首杀、VIP 等级、任…

2026-10-20 23:27 吴大圣老师
Lua实战系统变量

系统变量:存在服务器上的共享数字与字符串

局部变量跑完就没; 系统变量 写进服务器数据库,全服共享、重启还在。 一、四种变量先分清 变量 写法 / 归属 存哪 谁能用…

2026-10-20 23:26 吴大圣老师
Lua基础内存

堆栈与作用域:局部变量为什么要多用

写代码少打 local 很爽,内存会哭。这节把 栈/堆 和 作用域 一次讲清。 一、栈和堆 栈 堆 -- ---- ----…

2026-10-19 22:25 996 技术组
Lua基础迭代器

迭代器:ipairs 与 pairs,以及为什么顺序会乱

循环除了 for i=1, t ,还有 迭代器 。数组用 ipairs ,字典用 pairs 。 一、回顾 for 循环 二…

2026-10-19 22:25 996 技术组
Lua基础模块

模块与封装:把 QF 拆成工具箱

模块就是 工具箱 。后端命令八百多个,记不住很正常——把自己常用的封装起来,按名字调用。 一、include 与 requi…

2026-10-19 22:25 996 技术组
Lua实战NPC

NPC 界面与 GM 小工具:say / button / link 传参

会判断了,就能做会回话的 NPC。今天拼一个简易 GM 工具界面。 一、用 say 吐出界面 客户端编辑器 Ctrl + F…

2026-10-18 01:01 996 技术组