CHUAN2 DEV ENGINE
996 正版授权研发中心 · 360 授权合作教学中心 · 抖音传奇直播合作授权 · 快手推广运营商授权
OFFICIAL LICENSED ACADEMY 查验官方授权证书 →
// 威海旷世互娱教学基地 · 技术文章
入门夯实996引擎triggerchat指令参数

【入门夯实】带参指令:triggerchat的消息参数化解析

2026-09-24 12:16 作者:996 技术组 0 阅读 996引擎Lua教程传奇脚本入门夯实996引擎Luatriggerchat指令参数

学员常见误区

聊天指令带参数:@寄售 裁决之杖 8000,学员用 string.sub 按固定字节位截取命令与参数——命令长短一变就截错位,多一个空格全盘错乱。参数化解析的正解是模式匹配:命令与参数按空白分隔,各取所需,参数个数自适应。错误写法:

lua
local function onChatBad(actor, msg)
    local cmd = string.sub(msg, 1, 6)
    local arg = string.sub(msg, 8, 20)
    sendmsg(actor, 1, cmd .. "/" .. arg)
end

"@寄售 蓝装" 能用,"@寄售 裁决之杖" 就被截成两截。

正确姿势

模式匹配拆命令与参数:^(%S+)%s+(.*)$ 把首词当命令、余下整段当参数,参数内再按业务二次拆分。示例代码如下:

lua
local function onChat(actor, msg)
    actor = getplayerbyname(actor)
    local cmd, args = string.match(msg, "^@(%S+)%s+(.+)$")
    if cmd == "寄售" then
        local itemName, price = string.match(args or "", "^(%S+)%s+(%d+)$")
        if itemName == nil then
            sendmsg(actor, 1, "格式:@寄售 物品名 价格。")
            return
        end
        sendmsg(actor, 1, "寄售[" .. itemName .. "]定价 " .. price .. " 金币,已挂单。")
    end
end

本篇的新技术点是"两层解析":第一层模式拆命令与原始参数,第二层按命令自己的格式校验参数——不同命令的参数格式互不干扰。

引擎验证

三步验证:@寄售 裁决之杖 8000 正确解析出物品与价格;@寄售 后缺参数返回格式提示;@未知命令 走 cmd 不匹配的静默路径(本入口只处理寄售)。

举一反三

可变个数参数(@转账 对象 金额 附言可省)用可选尾参解析:附言用两段 match 的择一写法。示例代码如下:

lua
local function parseTransfer(args)
    local to, gold, memo = string.match(args, "^(%S+)%s+(%d+)%s+(.*)$")
    if memo == nil then
        to, gold = string.match(args, "^(%S+)%s+(%d+)$")
    end
    return to, gold, memo
end
作者履历与出处

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

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

最新技术文章 · 实战干货

LATEST ARTICLES

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

策划架构996引擎

【策划架构】军功爵位:战场武勋的晋级设计

设计初衷 战场激励只有掉落与经验:打赢分东西、打输白来——牺牲与战功没有独立的记账,败仗连参与感都不剩。军功爵位设计:把战场…

2026-09-25 15:16 996 技术组 · 0 阅读
策划架构996引擎

【策划架构】游戏书阁:可阅读书籍的碎片收集设计

设计初衷 传奇世界有地图、怪物与装备,唯独没有"可读的东西":背景故事躺在官网停更的设定集里,玩家与世界的情感联结缺一条文化…

2026-09-25 15:16 996 技术组 · 0 阅读
高级技巧996引擎

【高级技巧】模拟退火:配装方案的近似最优搜索

底层原理 装备搭配的最优组合是组合爆炸:20 件挑 6 件约 3.8 万种组合,叠加多约束后枚举不可行。模拟退火借冶金退火的…

2026-09-25 15:16 996 技术组 · 0 阅读
高级技巧996引擎

【高级技巧】最小生成树:地图路网的最低成本连接

底层原理 把 n 个据点用最短的线路连成一张连通网(地图路网、节点布线),最小生成树给出总长最短的方案:每次从"已连接区"向…

2026-09-25 15:16 996 技术组 · 0 阅读
策划架构996引擎

【策划架构】江湖诨名:玩家外号的授予与净化设计

设计初衷 玩家 ID 千篇一律的符号前缀,江湖人物没有江湖味;外号全靠玩家互喊,叫开了却没有名分,恶意起外号也没有约束。江湖…

2026-09-25 15:16 996 技术组 · 0 阅读
进阶实战996引擎

【进阶实战】帮会分舵:分盟的分级管理与汇总封装

业务场景 帮会人数封顶 200 后管理半径失控:总舵集合没人应、帮频刷屏、烈火剑法心得与广告混在一起没人理。帮会分舵封装:帮…

2026-09-25 15:16 996 技术组 · 0 阅读