称号合成让三个低阶称号合成一个高阶称号:合成链从青铜到王者共五级,每一级的合成需要三个低阶称号加金币。合成链的设计让称号有了复利的价值——低阶称号不再是无用的收藏品,而是高阶称号的原材料。
local TITLE_CHAIN = { bronze = 1, silver = 2, gold = 3, platinum = 4, diamond = 5 }
function TitleCompose.compose(actor, lowRank)
local highRank = lowRank + 1
local need = 3
local owned = 0
for _, tid in ipairs(actor.ownedTitles) do
if TITLE_RANK[tid] == lowRank then owned = owned + 1 end
end
if owned < need then return false, "低阶称号不足 " .. need .. " 个" end
-- 扣除三个低阶称号
local removed = 0
for i, tid in ipairs(actor.ownedTitles) do
if removed < need and TITLE_RANK[tid] == lowRank then
table.remove(actor.ownedTitles, i)
removed = removed + 1
end
end
Title.grant(actor, highRank)
return true
end
三个同级称号合成一个高阶称号,合成后的高阶称号继承最高的属性加成。合成的失败率为零:材料齐必出成品,确定性降低试错成本。称号的合成链从青铜到王者五级,每级的属性增幅翻倍。
function TitleCompose.inheritBest(actor, lowRank, highRank)
local bestAtk = 0
for _, tid in ipairs(actor.ownedTitles) do
if TITLE_RANK[tid] == lowRank then
bestAtk = math.max(bestAtk, TITLE_DEF[tid].atk)
end
end
TITLE_DEF[highRank].atk = math.max(TITLE_DEF[highRank].atk, bestAtk * 3)
end
高阶称号的属性不低于三个低阶称号中最好的那个的三倍,合成的收益确定。称号的合成在称号图鉴中标注配方,玩家能清楚看到合成链的路径。合成的确认弹窗列出消耗的称号与产出,信息的完整减少误操作。
合成链的各级称号产出与消耗的周对账,合成的数量分布反映玩家的养成阶段。
合成时称号的移除曾经按数组索引移除,移除一个后后续的索引偏移导致多删,倒序遍历或按值查找移除修复。合成的属性继承曾经取平均而不是取最高,玩家合成后的属性不升反降引发投诉,取最高的规则更符合直觉。
合成链的配方在称号图鉴中标注,玩家能看到从青铜到王者的完整路径。合成的金币消耗按等级递增,金币的消耗是合成的经济门槛。称号合成的播报只发王者级别,低级别的合成静默完成。
本文由 996 技术组基于 996 引擎官方知识库与浮生梦老师课程体系整理。团队长期从事传奇类引擎 Lua 后端逻辑、客户端界面与商业版本交付,内容以官方知识库与真实项目为出处,按版本持续修订。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
实战应用:用在哪里 行会福利只有加成和宝库,缺少可成长的实体。行会技能塔给行会一座可以逐层点亮的塔:全行会捐献建材升级塔层,…
实战应用:用在哪里 新手玩家的第一次长途旅行总在比奇到沃玛的路上迷路或被怪打死。新手护送教学线把这段路变成有老玩家护航的成人…
实战应用:用在哪里 行会招新全靠世界频道刷屏,招募信息水贴一样沉底。行会招募接口给招新一个正式渠道:行会发布结构化招募信息(…
实战应用:用在哪里 拍卖行商品上万件,翻页找裁决之杖像大海捞针。商城搜索给拍卖行装上联想与筛选:输入前两个字即时联想候选关键…
实战应用:用在哪里 桃源之门是传奇最有韵味的隐藏地图:条件不明、入口隐秘,找到即是传说。隐藏地图的触发设计要把开启条件做成可…
实战应用:用在哪里 行会年度战报打包后仍有五百 KB,分包下发到第九包时玩家掉线,前功尽弃重来。分包进阶方案叠加断点续传与压…