当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

很多人都在找的星星合成师完整传奇脚本:NPC合成、失败率、材料回收与进度条参考示例

热度:
“星星合成师”属于传奇服务端常见NPC玩法,核心是把若干低阶材料或装备合成更高阶星星装备。脚本本身没有统一官方版本,HERO、GOM、GEE、BLUE、996等引擎写法差异很大,下面只按通用传奇NPC脚本结构给出学习参考示例,物品名、变量名、地图名、概率都要按实际版本替换。

NPC主界面

NPC脚本放在Market_Def或对应引擎NPC目录下,主入口使用[@main]。

[@main]
IF
SAY
\
将低阶装备与星辰材料合成高阶星星装备。\
当前合成等级:>星\
\
\
\
\
\
<关闭/@exit>

U0用于记录玩家当前装备合成星级,这里使用可保存的私人变量,避免小退后星级丢失。

合成规则说明

[@rule]
IF
SAY
\
合成需要基础装备和星辰材料。\
合成成功则星级提升1级。\
合成失败可能扣除1星或保持原星级。\
合成材料不可返还。\
<返回/@main>

单段合成脚本

每段合成先检测材料,再扣除材料,最后按概率判断成功或失败。

[@syn1]
IF
CHECKITEM基础武器1
CHECKITEM星辰碎片10
ACT
TAKE基础武器1
TAKE星辰碎片10
MOVN01
MOVN1100
MOVN290
CALL[@SynResult]
ELSESAY

[@syn2]
IF
EQUALU01
CHECKITEM星辰碎片20
ACT
TAKE星辰碎片20
MOVN02
MOVN1100
MOVN275
CALL[@SynResult]
ELSESAY

[@syn3]
IF
EQUALU02
CHECKITEM星辰碎片40
CHECKITEM星辰精华5
ACT
TAKE星辰碎片40
TAKE星辰精华5
MOVN03
MOVN1100
MOVN260
CALL[@SynResult]
ELSESAY

成功率判定

N1设为100,N2为成功概率。通过随机数判断是否成功。

[@SynResult]
IF
ACT
MOVN3<RANDOM(100)>
LARGEN2N3
CALL[@SynSuccess]
ELSEACT
CALL[@SynFail]

这里<RANDOM(100)>生成0到99的随机数,若成功概率大于随机数则判定成功。不同引擎随机数写法可能不同,需要按当前引擎文档确认。

合成成功处理

[@SynSuccess]
IF
ACT
MOVU0N0
GIVE星星装备<STR(N0)>1
SENDMSG6合成成功,获得<STR(N0)>星装备。
CALL[@Main]

如果版本采用属性叠加方式,也可以不发放新装备,而是直接给原装备增加属性。

合成失败处理

失败时可以选择降星、保星或返还部分材料。

[@SynFail]
IF
SMALLU01
ACT
SENDMSG6合成失败,星级未变化。
CALL[@Main]
ELSEACT
DECU01
SENDMSG6合成失败,星级下降1级。
CALL[@Main]

如果想增加保星道具,可以再加一段判断。

[@SynFail]
IF
CHECKITEM保星符1
ACT
TAKE保星符1
SENDMSG6使用保星符,星级未下降。
CALL[@Main]
ELSEACT
DECU01
SENDMSG6合成失败,星级下降1级。
CALL[@Main]

进度条展示

如果引擎支持客户端进度条,可以在合成前显示进度。

[@syn1]
IF
CHECKITEM基础武器1
CHECKITEM星辰碎片10
ACT
CliProgBar2000正在合成1星装备
TAKE基础武器1
TAKE星辰碎片10
DELAYGOTO2000@SynCheck1
ELSESAY

[@SynCheck1]
IF
ACT
MOVN3<RANDOM(100)>
LARGE90N3
CALL[@SynSuccess1]
ELSEACT
CALL[@SynFail1]

不是所有引擎都支持CliProgBar,不支持时可用DELAYGOTO延迟后直接给出结果。

材料回收配合

合成系统常会积累低阶材料或失败装备,可以配合回收脚本。

[@RecycleStar]
IF
CHECKITEM失败星石10
ACT
TAKE失败星石10
GIVE星辰碎片5
SENDMSG6回收失败星石,获得星辰碎片5个。

背包检测

发放合成奖励前建议检测背包空间。

[@SynSuccess]
IF
CHECKBAGSPACE1
ACT
MOVU0N0
GIVE星星装备<STR(N0)>1
SENDMSG6合成成功,获得<$STR(N0)>星装备。
ELSEACT
SENDMSG6背包已满,合成奖励无法发放。
GIVE基础武器1
GIVE星辰碎片10

这里失败后返还材料只是参考,实际是否返还要看版本设定。

变量规划

U0:玩家当前装备合成星级,可保存。
N0:本次合成目标星级。
N1:随机上限。
N2:成功概率。
N3:随机结果。

GOM/GEE引擎中U变量可保存到人物数据库,适合记录玩家星级;N变量小退可能归零,不适合单独保存星级。

常见问题排查

合成后星级不变化,检查是否使用了可保存变量。材料扣除但奖励未发放,检查背包空间检测。成功率始终为100%,检查随机数与概率比较方向是否写反。进度条不显示,确认引擎是否支持对应进度条命令。脚本修改后不生效,需要重载NPC或重启服务端相关脚本。

星星合成师脚本的重点不在单个合成按钮,而在于材料检测、概率判定、星级记录、失败处理、背包检测和材料回收形成闭环。不同引擎在变量类型、随机数、进度条和物品发放命令上会有差异,正式使用前应先在小地图或测试号上验证。
[顶部]