北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
楼主: jarlyyn

一步一步在北侠做机器人

[复制链接]
 楼主| 发表于 2021-9-16 22:04:44 | 显示全部楼层
代码调整


将队列功能从send模块移到任务模块

https://github.com/hellclient-sc ... script/core/task.js

  • 任务模块是只当前正在执行的工作
  • 同时只能执行一个工作,不然会报错
  • 任务需要注册到App的全局空间

Task 可以Start,有Finish和Fail两种结算方式,可以通过Avaliable方法判断是否可开始
https://github.com/hellclient-sc ... t/core/task/task.js

代码整合了一下,分割符号改为了 ||,以减少冲突,

https://github.com/hellclient-sc ... /core/task/queue.js
支持指令为
  • #to 前往某个地点
  • #delay 等待XXX毫秒后执行后去的
  • #afterbusy 等待忙结束后执行后续
  • #do 执行命令
  • #loop,新加,重头执行命令

于是,去做药的命令变成了

  1. #to yzyp||ask ping yizhi about 工作||n||peiyao||#afterbusy||#delay 5000||s||give cheng yao to ping yizhi||#loop
复制代码


就会不停的去做药

效果很好,好到我无法贴图了,因为……经验超了



北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-18 00:16:49 | 显示全部楼层
暂停更新,要先搞个有技能的id...
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2021-9-18 21:26:40 | 显示全部楼层
mobai
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-19 17:19:52 | 显示全部楼层
对地点进行重新命名,规则为

  1. ## 地区
  2. 扬州 yz
  3. 泉州 quan
  4. 苏州 sz
  5. 洛阳 ly
  6. 张家口 zjk
  7. 昆明 km
  8. 江州 jz
  9. 镇江 zj
  10. 成都 cd
  11. 嘉兴 jx
  12. 信阳 xin
  13. 灵州 lz
  14. 中原 zy
  15. 襄阳 xy
  16. 北京 bj
  17. 大理城 dl
  18. 福州 fz
  19. 岳阳 yy
  20. 南昌 nc
  21. 建康府 jkf
  22. 临安府 laf
  23. 南阳 ny
  24. 曲阜 qf
  25. 长安 ca
  26. 兰州 lan
  27. 晋阳 jy
  28. 许昌 xc
  29. 海底捞 dyd
  30. 平西王府 px
  31. 凌霄城 lxc
  32. 归云庄 gy
  33. 侠客岛 xkd
  34. 湟中 huang
  35. 泰山 ts
  36. 少林 sl
  37. 华山 hs
  38. 灵鹫 lj
  39. 桃花岛 thd
  40. 武当 wd
  41. 明教 mj
  42. 天龙 tls
  43. 星宿 xx
  44. 峨嵋 em
  45. 全真 qz
  46. 白驼山 bt
  47. 古墓 gm
  48. 丐帮 gb
  49. 日月 ry
  50. 往生堂 pker
  51. 慕容 mr
  52. 大轮寺 dls
  53. 神龙岛 sld
  54. 五毒教 wdj

  55. ## 常用地点后缀
  56. 地图中心
  57. 客店 kd
  58. 当铺 dp
  59. 药铺 yp
  60. 马车行 mc
  61. 庙 sm
  62. 铁匠 tj
  63. 茶馆 cg
  64. 睡觉处 sj
  65. 钱庄 qz
  66. 书院 sy

  67. ### 常用地点楼层
  68. 向上为 2f 3f 4f 5f 6f
  69. 向下为 b1 b2 b3 b4 b5

  70. ## 其他位置明明规则
  71. 减号跟拼音首字母
  72. 有重复,按先北后南,先西后东的方式编号,数字编号
  73. 后期添加的位置编在更后面
复制代码

将地点和路径调整后放在了单独的文件里

分别为

  1. yz||扬州广场||||Landmark||Rong shu
  2. yzqz||扬州钱庄||||Station||扬州钱庄
  3. yzdp||扬州当铺||||Landmark||Tang nan
  4. yztj||扬州铁匠||||Landmark||Wang tiejiang
  5. yzjl||扬州醉仙楼||||Station||醉仙楼
  6. yzcg||春来茶馆||||Station||春来茶馆
  7. yzyp||扬州药铺||||Landmark||Ping yizhi
  8. yzsy||扬州书院||||Landmark||Fu zi
  9. yzkd||扬州客店||||Landmark||Tianshen suicong
  10. yz-dtpns||扬州打铁铺内室||||Station||打铁铺内室
  11. qfsm||曲阜孔庙||||Station||孔庙
  12. xin-zhq||信阳镇淮桥||||Station||镇淮桥
  13. zy-xcc||许昌城||||Station||许昌城
  14. zy-nyc||南阳城||||Station||南阳城
  15. xydp||襄阳当铺||||Station||襄阳当铺
  16. jz||荆州||||Station||荆州
  17. zy-rzc||汝州城||||Station||汝州城
  18. qf-sms||石门寺||||Station||石门寺
  19. ts-sjy||石经峪||||Station||石经峪
  20. ly||洛阳中心广场||||Station||洛阳中心广场
  21. cakd||长安三秦客栈||||Station||三秦客栈
  22. cayp||长安千金堂||||Station||千金堂
  23. ca-hz||汉中||||Station||汉中
  24. cdkd||成都悦来客店||||Station||悦来客店
  25. yy-yyl||岳阳楼||||Station||岳阳楼
  26. jz-xyl||浔阳楼||||Station||浔阳楼
  27. xin-xcz||小池镇||||Station||小池镇
  28. jzkd||盈月客栈||||Station||盈月客栈
  29. gb-sdnb||树洞内部||||Station||树洞内部
  30. gb-sdx||树洞下||||Station||树洞下
复制代码

  1. yz||yzqz||n;w||e;s
  2. yz||yzdp||s;e||w;n
  3. yz||yztj||e;e;s||n;w;w
  4. yz||yzjl||n;n;e||w;s;s
  5. yz||yzcg||s;s;w||e;n;n
  6. yz||yzyp||e;e;n||s;w;w
  7. yz||yzsy||e;e;n||s;w;w
  8. yz||yzkd||n;e||w;s
  9. yztj||yz-dtpns||s||n
  10. yz||qfsm||n;n;n;n;n;n;n;n;n;w||e;s;s;s;s;s;s;s;s;s
  11. yz||xin-zhq||w;w;w;w;nw;w;w;w;w;w;n||s;e;e;e;e;e;se;e;e;e;e
  12. xin-zhq||zy-xcc||n;n;n;n;n||s;s;s;s;s
  13. zy-xcc||zy-nyc||sw;sw;w;s;sw;sw||ne;ne;n;e;ne;ne
  14. zy-nyc||xydp||sw;s;s;s;s;s;s;w;w;n||s;e;e;n;n;n;n;n;n;bo xiaolu&&ne
  15. xydp||xy-jz||s;e;e;s;s;s;s;s;s;s;s;s;s;s||n;n;n;n;n;n;n;n;n;n;n;w;w;n
  16. zy-xcc||zy-rzc||nw;nw||se;se
  17. qfsm||qf-sms||e;e;ne;eu;enter||out;wd;sw;w;w
  18. qfsm||ts-sjy||e;n;n;n;n;ne;e;ne;n;n;nu;nu;nu;eu||wd;sd;sd;sd;s;s;sw;w;sw;s;s;s;s;w
  19. zy-nyc||ly||n;n;n;n;n;n;n||s;s;s;s;s;s;s
  20. ly||cakd||w;w;w;wu;w;w;w;w;w;nw;w;w;w;w;s;s;s;s;w||e;n;n;n;n;e;e;e;e;se;e;e;e;e;e;ed;e;e;e
  21. cakd||cayp||e;s;s;w;w;n;n;w||e;s;s;e;e;n;n;w
  22. cayp||ca-hz||e;n;n;n;w;w;w;w;sw;su;sd;se||nw;nu;nd;ne;e;e;e;e;s;s;s;w
  23. ca-hz||cdkd||su;.sw;.se;.su;sd;s;s;e||w;n;n;nu;nd;.nw;.ne;.nd
  24. cdkd||yy-yyl||w;s;s;se;se;e;e;ne;.ne;.nw;.nw;.ne;ed;e;n||s;w;wu;sw;.se;.se;.sw;.sw;w;w;nw;nw;n;n;e
  25. xin-zhq||xin-xcz||s;s;s;s;sd;se||nw;nu;n;n;n;n
  26. xin-xcz||jz-xyl||[rich]s;ask shao gong about 过江&&enter;#sail;se;se;s||[rich]n;nw;nw;ask shao gong about 过江&&enter;#sail;n
  27. jz-xyl||jzkd||sw;sw;nw||se;ne;ne
  28. yy-yyl||jzkd||e;e;e;e;e;e;ed;se;ed;e;ne;ne;ne;ne;ne;nw||se;sw;sw;sw;sw;sw;w;wu;nw;wu;w;w;w;w;w;w
  29. yz||gb-sdnb||enter shudong||out
  30. gb-sdnb||gb-sdx||say 天堂有路你不走呀&&d||u
复制代码




北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-21 19:28:26 | 显示全部楼层
这两天过节带娃,外加需要进行一个数据储存大大架构规划,没啥更新,加了个行走的助理功能,效果如图




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-24 10:53:31 | 显示全部楼层
修改客户端,加入带过滤和分页的crud组件,用于提供一个维护数据的工具




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-24 13:55:10 | 显示全部楼层
本帖最后由 jarlyyn 于 2021-9-24 01:56 PM 编辑

调整onBuffer代码,将提示行的分页转换为输出的行,进行触发,实现自动下一页
代码
  1. onBuffer=function(data){
  2.     if (data.length==2){
  3.         return data=="> "
  4.     }
  5.     if (data.length>20){
  6.         if (data.substr(0,7)=="== 未完继续" && data.substr(-6,6)=="继续下一页)"){
  7.             return true
  8.         }
  9.     }
  10.     return false
  11. }
复制代码


触发

  1. [[Triggers]]
  2.   ID = "more"
  3.   Name = "more"
  4.   Enabled = true
  5.   Match = "^== 未完继续 \\d*% == \\(q 离开,b 前一页,其他继续下一页\\)[        DISCUZ_CODE_1        ]quot;
  6.   Send = "next"
  7.   ColourChangeType = 0
  8.   Colour = 0
  9.   Wildcard = 0
  10.   SoundFileName = ""
  11.   SoundIfInactive = false
  12.   Script = ""
  13.   SendTo = 0
  14.   Sequence = 200
  15.   ExpandVariables = false
  16.   Temporary = false
  17.   OneShot = false
  18.   Regexp = true
  19.   Repeat = false
  20.   MultiLine = false
  21.   LinesToMatch = 0
  22.   WildcardLowerCase = false
  23.   Group = "system"
  24.   IgnoreCase = false
  25.   KeepEvaluating = false
  26.   OmitFromLog = true
  27.   OmitFromOutput = true
  28.   Inverse = false
  29.   Italic = false
  30.   Variable = ""
复制代码

效果


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-27 15:19:38 | 显示全部楼层
这两天为了能够在客户端里现实fullme图片在做http扩展,进度停滞。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2021-9-27 15:49:59 | 显示全部楼层
虽然技术水平跟不上但还是看得津津有味, 感谢楼主, 加油更新
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2021-9-28 02:35:57 | 显示全部楼层
加入授权模块

作为一个2021年开发的客户端,基本的安全意识还是要有的。

lua的dll扩展肯定不准备直接开放。

http请求和能请求的域名肯定是需要最终用户授权才能访问的。

不然谁能知道脚本在干啥呢……

总不能一行一行审查代码吧?

请求授权的代码如下

  1. (function(app){
  2.     app.Auth=function(success,script){
  3.         if (!script){
  4.             script=""
  5.         }
  6.         if (!success){
  7.             success=""
  8.         }
  9.         if (!world.CheckPermissions(["http"])){
  10.             world.RequestPermissions(["http"],"申请HTTP权限用于显示验证码",script)
  11.             return
  12.         }
  13.         if (!world.CheckTrustedDomains(["fullme.pkuxkx.net"])){
  14.             world.RequestTrustDomains(["fullme.pkuxkx.net"],"申请信任Fulleme网址用于显示验证码",script)
  15.             return
  16.         }
  17.         app.ExecuteCallback(success)
  18.     }
  19. })(App)
复制代码

效果图




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-4-20 11:13 PM , Processed in 0.012267 second(s), 13 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表