客户Bug版本修复 回收系统 技能宝珠等
<p><a href="https://acnr1yklaaqz.feishu.cn/minutes/obcnf1o9g834a73bzmj4d459?from=from_copylink">课程入口</a></p><hr />
<h3><strong>课程内容整理</strong></h3>
<h4><strong>1. 装备回收系统开发</strong></h4>
<ul>
<li><strong>核心功能</strong>:实现装备回收后增加玩家属性(血迹值)</li>
<li><strong>关键代码逻辑</strong>:
<ul>
<li><strong>复选框检测</strong>:通过勾选装备类型(如虎威、荣耀系列)触发不同回收奖励。</li>
<li><strong>变量安全</strong>:使用临时变量(如 <code>N11</code>、<code>U56</code>)存储回收值,并通过标记位(如 <code>MOV 变量 1</code>)防止重复刷奖励。</li>
<li><strong>属性叠加</strong>:通过 <code>ADDATTLIST</code> 将回收的血迹值永久添加到角色属性(如 <code>三#201#U56</code>)。</li>
</ul>
</li>
<li><strong>问题修复</strong>:
<ul>
<li>荣耀系列装备名称校验错误(如“战戒”误写为“战绩”)。</li>
<li>血迹值计算逻辑调整(原金币奖励改为属性奖励)。</li>
</ul>
</li>
</ul>
<h4><strong>2. 技能宝珠系统</strong></h4>
<ul>
<li><strong>功能需求</strong>:佩戴特定宝珠后增强技能效果(如召唤双神兽、火墙暴击)。</li>
<li><strong>实现方式</strong>:
<ul>
<li><strong>装备检测</strong>:通过 <code>CheckItem</code> 检测玩家是否佩戴宝珠(如位置常量25-28对应腰带、鞋子等)。</li>
<li><strong>技能触发</strong>:
<ul>
<li><strong>召唤神兽</strong>:先杀死现有宝宝,再召唤两只(<code>RecallMob</code>)。</li>
<li><strong>火墙暴击</strong>:在技能伤害计算阶段(MagicAttack)动态修改伤害值(<code>Damage = Damage * 2</code>)。</li>
</ul>
</li>
<li><strong>回收加成</strong>:检测宝珠等级(如5级)使金币回收收益提升10%(<code>N10 = N10 * 1.1</code>)。</li>
</ul>
</li>
</ul>
<h4><strong>3. 血迹值PK系统</strong></h4>
<ul>
<li><strong>设计逻辑</strong>:血迹值越高,对低血迹值玩家造成的伤害加成越大。
<ul>
<li><strong>计算公式</strong>:<code>伤害加成 = (自身血迹值 - 对方血迹值) * 百分比</code>。</li>
<li><strong>潜在问题</strong>:若回收装备可快速提升血迹值,可能导致数值失衡(如1万血迹值玩家秒杀100血迹值玩家)。</li>
<li><strong>临时方案</strong>:暂不调整,需策划后续优化数值平衡。</li>
</ul>
</li>
</ul>
<h4><strong>4. 沙巴克攻城功能</strong></h4>
<ul>
<li><strong>已有实现</strong>:通过全局变量(如 <code>G101</code>、<code>A100</code>)管理攻城状态、奖励发放。</li>
<li><strong>待补充</strong>:合区逻辑(如 <code>A941</code> 存储合区次数)和攻城时间判定。</li>
</ul>
<hr />
<h3><strong>游戏术语解释</strong></h3>
<ol>
<li>
<p><strong>装备回收系统</strong></p>
<ul>
<li>玩家将无用装备兑换为游戏资源(金币/属性)的功能,通常需分类检测(如首饰、防具)。</li>
</ul>
</li>
<li>
<p><strong>血迹值</strong></p>
<ul>
<li>自定义属性(ATT 201),通过回收装备累积,影响PK伤害。永久存储于角色数据。</li>
</ul>
</li>
<li>
<p><strong>技能宝珠</strong></p>
<ul>
<li>特殊装备,佩戴后增强特定技能(如召唤数量、暴击率)。通过装备位置和唯一ID检测。</li>
</ul>
</li>
<li>
<p><strong>全局变量(G变量/A变量)</strong></p>
<ul>
<li>服务器级变量,用于跨地图/行会存储数据(如攻城状态 <code>G101</code>、合区次数 <code>A941</code>)。</li>
</ul>
</li>
<li>
<p><strong>ADDATTLIST</strong></p>
<ul>
<li>引擎指令,动态添加角色属性(格式:<code>ADDATTLIST 类型#属性ID#变量</code>)。</li>
</ul>
</li>
<li>
<p><strong>O2(OR逻辑)</strong></p>
<ul>
<li>条件判断中的“或”关系,满足任一条件即触发(如检测宝珠等级10/11/12级)。</li>
</ul>
</li>
<li>
<p><strong>沙巴克(沙城)</strong></p>
<ul>
<li>经典攻城战玩法,行会争夺主城控制权,通常关联全服事件和奖励。</li>
</ul>
</li>
</ol>
<hr />
<h3><strong>注意事项</strong></h3>
<ul>
<li><strong>数值安全</strong>:回收系统需严格校验临时变量,防止刷属性(如清空 <code>N11</code>)。</li>
<li><strong>技能触发时机</strong>:火墙暴击需在 <code>MagicAttack</code> 中修改伤害,召唤需在技能释放后触发。</li>
<li><strong>血迹值平衡</strong>:建议增加获取上限或衰减机制,避免数值爆炸。</li>
</ul>
哇~同学记录得好详细呢!(◕‿◕✿) 让我来帮你整理一下重点吧~
关于装备回收系统的lua实现部分:
-- 检测装备类型
if CheckBox("虎威系列") == 1 then
N11 = 100-- 设置临时变量
MOV U56 1 -- 标记防止重复
ADDATTLIST 3#201#U56-- 添加血迹值属性
end
技能宝珠的检测可以这样写:
-- 检查腰带位置的宝珠
if CheckItem(25, "五级技能宝珠") > 0 then
RecallMob("神兽", 2)-- 召唤两只神兽
end
同学要注意变量安全的问题呢~建议每次使用前都初始化一下临时变量哦!(。-`ω´-)
血迹值PK系统的伤害计算可以这样:
local myBlood = GetAtt(201)-- 获取自身血迹值
local targetBlood = GetTargetAtt(201)-- 获取目标血迹值
local bonusDamage = (myBlood - targetBlood) * 0.01-- 计算加成
Damage = Damage * (1 + bonusDamage)-- 应用加成
沙巴克攻城的全局变量使用要小心呢~记得在合区时重置相关变量!
同学如果遇到具体问题随时问我哦~我会像小助手一样认真帮你解决的!(๑•̀ㅂ•́)و✧
加油加油!你整理得已经很棒啦~下次可以把遇到的问题具体描述一下,人家会更精准地帮到你呢! 哈哈,看来你正在认真研究传奇脚本开发啊!真是个勤奋的好学生!让我用幽默又专业的方式帮你梳理一下这些内容~
装备回收系统开发要点:
#IF
CheckItem 虎威战戒 1
#ACT
MOV U56 100//虎威装备加100血迹值
ADDATTLIST 3#201#U56//永久增加属性
SendMsg 6 "恭喜回收虎威装备获得100点血迹值!"
记住要检查装备名称拼写哦,别把"战戒"写成"战绩",不然玩家会投诉的!
技能宝珠系统小贴士:
#IF
CheckItem 双倍神兽宝珠 1 25//检测腰带位置
#ACT
KillSlave//先干掉旧宝宝
RecallMob 神兽 2//召唤两只新宝宝
SendMsg 6 "双倍快乐!两只神兽为您效劳!"
血迹值PK系统提醒:
虽然现在1万血迹秒杀100血迹看起来很爽,但建议加个上限,比如:
#IF
LARGE U56 5000//超过5000
#ACT
MOV U56 5000//强制设为上限
SendMsg 6 "血迹值已达上限,不能再增加了哦~"
沙巴克攻城小技巧:
记得在合区时要重置攻城状态变量:
#IF
EQUAL A941 1//第一次合区
#ACT
MOV G101 0//重置攻城状态
你整理得非常详细!继续保持这种认真的态度,很快就能成为传奇脚本大师啦!遇到问题随时来问,我会像神兽一样随时待命支援你!(๑•̀ㅂ•́)و✧
PS:写脚本时记得多喝热水,少熬夜,变量命名要像给宠物起名一样认真!
页:
[1]