TXT实战 GM查看全服货币持有情况功能 200小活

Txt实战 Txt实战 96 人阅读 | 1 人回复 | 2025-05-07

视频链接

1. 定时器与全服功能实现

  • 目标:检测玩家背包中的货币数量(如元宝、金币),并定期刷新。
  • 实现思路
    • 定时器:设置全局定时器,每10分钟或1小时刷新一次。
    • 全服触发:通过全服触发功能获取所有在线玩家的货币数量。
    • 问题:讨论了如何将功能从服务器端移到本地开发,以提高开发效率。
    • 技术细节
      • 使用 GM exe code 下发命令。
      • 需要确认触发功能是否正确写入 QMQF 文件。
      • 检查定时器是否正确设置为秒或分钟。

2. 脚本与功能调试

  • 问题排查
    • 讨论了脚本中可能出现的错误,例如命令拼写错误(如 GMEXECUTE)和触发功能未正确加载。
    • 提到了需要检查的文件目录和脚本位置是否正确。
  • 优化建议
    • 将功能写入正确的执行脚本中,而不是错误地放在 QM 文件中。
    • 建议使用全局变量来存储货币数量,并通过按钮触发刷新,而不是定时器。

3. 排行榜功能实现

  • 目标:实现一个排行榜功能,显示金币和元宝数量最多的玩家。
  • 实现思路
    • 全服获取货币:通过全服触发功能获取所有玩家的货币数量。
    • 排序与显示
      • 使用排序功能(如 A110)对玩家货币数量进行排序。
      • 在 NPC 界面中添加按钮,点击后显示排行榜。
    • 技术细节
      • 需要为金币和元宝分别设置不同的触发和显示逻辑。
      • 使用延迟调用(如 delay goto)来优化性能。

4. 全服货币统计

  • 目标:统计全服剩余的元宝数量,包括充值和消耗的元宝。
  • 讨论内容
    • 当前实现是通过玩家货币变动触发统计,但这种方法可能不准确。
    • 建议在充值时直接记录总元宝数量,并通过玩家交易和 NPC 消耗来动态更新。
    • 提到需要一个变量来存储全服剩余元宝数量,并在界面上显示。

5. 技能与属性调整

  • 问题:道士的神圣战甲术技能不按等级增加防御值。
  • 讨论内容
    • 当前技能设置中,无论等级如何,防御值始终为5。
    • 需要调整技能表(如 Magic 表)中的防御值设置,使其随等级增加。
    • 提到可能需要修改技能表中的第13列或其他相关列来实现。

6. 其他技术细节

  • 脚本优化
    • 建议使用定时器检测技能是否存在,并动态调整防御值。
    • 提到可能需要重启服务器或更新脚本以确保修改生效。
  • 工具与资源
    • 讨论了 GM 工具的使用,包括查询属性、调整产出等功能。
    • 提到需要从客服获取更多信息或技术支持。

分享到:

回答|共 1 个

骤雨_Ai

发表于 2025-5-7 12:06:53 | 显示全部楼层

嘻嘻~同学你好呀!(◕‿◕✿) 让我来帮你整理一下这些功能实现要点吧~

关于GM查看全服货币功能呢:
1. TXT实现方式:
  1. #IF
  2. #ACT
  3. GMEXECUTE 查询全服货币
  4. SetOnTimer 1 600  ;10分钟刷新一次
复制代码

2. Lua实现更优雅哦:
  1. function CheckServerCurrency()
  2.     for i=1,GetPlayerCount() do
  3.         local player = GetPlayerByIndex(i)
  4.         local gold = GetItemCount(player,"金币")
  5.         local yuanbao = GetItemCount(player,"元宝")
  6.         --记录到全局变量
  7.     end
  8. end
  9. --设置每小时执行一次
  10. AddTimer(3600, "CheckServerCurrency")
复制代码

排行榜功能小建议:
1. 可以先用全服触发收集数据
2. 然后用table.sort排序
3. 最后用NPC对话框展示前10名

道士技能问题要检查Magic.txt第13列呢~
神圣战甲术的防御值应该像这样设置:
等级1:5点
等级2:7点
等级3:10点

同学要注意定时器单位是秒哦~写600就是10分钟啦!(。・ω・。)

调试的时候可以先在本地测试,用按钮触发代替定时器会更方便查错呢~需要人家再详细解释哪个部分吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则