一、修改竞价与消费逻辑
此脚本核心是行会竞价系统,原逻辑消耗元宝(GAMEGOLD)。需修改为消耗金币(GOLD),并设置每次消耗10万。
1. 修改描述文本
在 [@main] 段落中,找到涉及“元宝”的描述文本,将其改为“金币”:
<您支付比目前竞价多100元宝,即可让你建的行会成为[天下第一行会]/AUTOCOLOR=250,253,254,241>
修改为:
<您支付比目前竞价多100金币,即可让你建的行会成为[天下第一行会]/AUTOCOLOR=250,253,254,241>
2. 修改核心触发段落 [@cyjj]
此段落是竞价扣费的执行段,需要将检测元宝 CHECKGAMEGOLD 和扣元宝 GAMEGOLD - 分别替换为检测金币 CHECKGOLD 和扣金币 GOLD -,并将固定增减数值100改为100000。
原段落关键行:
[@cyjj]
#IF
HAVEGUILD
ISGUILDMASTER
CHECKGAMEGOLD > <$STR(G56)> ; 检测元宝是否大于当前价格
#ACT
INC G56 100 ; 价格增加100
GAMEGOLD - <$STR(G56)> ; 扣除元宝
修改后:
[@cyjj]
#IF
HAVEGUILD
ISGUILDMASTER
CHECKGOLD > <$STR(G56)> ; 检测金币是否大于当前价格
#ACT
INC G56 100000 ; 每次竞价,价格增加10万金币
GOLD - <$STR(G56)> ; 扣除对应的金币
3. 修改提示信息
同段落中的提示信息也应从“元宝”改为“金币”,保持上下文一致。
修改提示文本行:
Messagebox [成功]:您在行会竞价板上花了【<$STR(G56)>】个元宝竞得。
改为:
Messagebox [成功]:您在行会竞价板上花了【<$STR(G56)>】个金币竞得。
二、修改失败提示
在 [@cyjj] 段落的最后一行,修改错误提示:
#ELSEACT
Messagebox [失败]:您的金币不足或者您没有行会
(此行已符合“金币”描述,无需再改。但如果原版是“元宝不足”,则应同步修改。)
三、清理功能检查
脚本开头有管理员清理功能 [@清理],其中 mov G56 表示将竞价变量 G56 清空为0,这同样适用于金币竞价,无需修改。
四、修改后完整脚本段落示例
以下是修改完成的 [@cyjj] 段落示例,修改处已用注释标出:
[@cyjj]
#IF
HAVEGUILD
ISGUILDMASTER
CHECKGOLD > <$STR(G56)> ; 将CHECKGAMEGOLD改为CHECKGOLD
#ACT
INC G56 100000 ; 将100改为100000
GOLD - <$STR(G56)> ; 将GAMEGOLD改为GOLD
mov A30 <$GUILDNAME>
mov A31 <$USERNAME>
Messagebox [成功]:您在行会竞价板上花了【<$STR(G56)>】个金币竞得。 ; 修改文本
SendCenterMsg 250 0 【<$USERNAME>】在行会竞价板为行会【<$STR(A30)>】竞得,大家赶快来加入这个有实力的行会吧!
GuildNoticeMsg 250 0 【<$USERNAME>】在行会竞价板为行会【<$STR(A30)>】竞得,大家赶快来加入这个有实力的行会吧!
GuildNoticeMsg 250 0 【<$USERNAME>】在行会竞价板为行会【<$STR(A30)>】竞得,大家赶快来加入这个有实力的行会吧!
GuildNoticeMsg 250 0 【<$USERNAME>】在行会竞价板为行会【<$STR(A30)>】竞得,大家赶快来加入这个有实力的行会吧!
GOTO @main
BREAK
#ELSEACT
Messagebox [失败]:您的金币不足或者您没有行会
操作要点:
1. 使用 Notepad++ 等专业文本编辑器修改脚本,确保编码为 ANSI。
2. 修改完成后,在 M2Server 控制台依次点击“控制”->“重新加载”->“NPC脚本”,或直接重启服务端使改动生效。
3. 测试时,先用小号创建行会,并确保背包有足够金币(大于变量 G56 的初始值)进行竞价测试。

