北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 666|回复: 7

【Paotin++】入门系列之三: 最常用内置变量,别名。

[复制链接]
发表于 2024-8-20 17:30:12 | 显示全部楼层 |阅读模式
本帖最后由 doumimi 于 2024-8-21 10:53 AM 编辑

【Paotin++】入门系列之一: 客户端基础 - 技术园地 - 北大侠客行MUD论坛 - Powered by Discuz! (pkuxkx.com)

paotin 本身内置了很多好用的变量, 比如 char、 gMapRoom 等。这篇文章和大家一起看一下 最常用的变量都有哪些本篇文章并不是讲解每个变量和函数该怎么用, 因为 PT的文档非常的完善,大部分看了文档都差不多知道是什么功能,该怎么用, 看文档就用HELP xxx 。  PT本身内置的变量和别名特别多, 那这篇文章的最主要的作用就是告诉各位同学,哪些可能最常用,能加速萌新的入门。  

ps: 北侠是我第一个玩的mud游戏, 好在我本身是个三流的程序员,很多东西接受的稍微快一些。 在学习怎么写机器的过程中,发现了PaoTin++ 客户端是个大宝藏, 但是这个大宝藏目前没有入口的指引,需要各位玩家自己去发掘, 比如看到超新手打坐教程,同学们可能惊奇的发现有个 char[HP][内力百分比] , 哇塞,这是个什么玩意儿,这么好用。 那除了这个,还有哪些好用的变量呢?  我个人当时是非常有这个疑问的, 但是并没有人介绍到这一块。 我是结合着源码,也看了很多变量、别名的HELP说明,再加上自己写机器的经验, 想分享给大家可能最常用的 变量和别名, 也是这个系列贴的目标,介绍最重要的20%的内容, 让大家能写至少80%的机器。




一、 内置变量的概述

pt内置的这些变量,大多数都是通过触发、 gmcp 获取的。 相当于框架已经做了很多前置工作, 你只需要会用就行。
如果你还发现什么比较需要的变量, 也不用自己抓, 直接给炮爷提需求!炮爷非常乐意看到客户端更加完善,也很希望能帮助更多人轻松游玩北侠


1、有时候你发现char[HP] 有时候没有内力上限, 没有char[锦囊], 或者缺失一些其他属性,那就是因为没有触发抓取到, 所以此时,只需要执行一下 hp -neili 或者 jiancha jin nang 这些内容就有了。
2、pt内置的这些变量和普通的变量没有任何区别, 你也可以自己去修改这些变量,或者给某些变量去增加一些字段。 比如我想有一系列变量,控制是否发送pfm,或者血量低于多少执行recover,或者逃跑。 完全可以 #var char[autopfm][太极剑.缠] 1; 或者#var char[autopfm][recover] 60;   这里仅仅是举例,实际用另外一个变量可能更好。
3、pt变量聚合在一起的这种写法我个人比较推荐, 就是将一系列相关的变量通过 table这种数据结构组合起来。 比如将某个任务过程中的所有变量都聚合在一起, 这个任务finish的时候,直接#unvar 都全部清空了。






















北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2024-8-20 18:40:57 | 显示全部楼层
本帖最后由 doumimi 于 2024-8-23 10:12 AM 编辑

二、 常用变量

首先大家可以执行 VARS 来看到当前一共都有哪些变量。 这里只说最常用的。

#var char[HP]
这里面的变量,用来进行 打坐、吐纳、学习、领悟 的判断非常方便, 气势也可以用来 进行战斗的自动pfm判断。  
  1. #VARIABLE {char[HP]}
  2. {
  3.     {内力上限} {5990}
  4.     {内力百分比} {96}
  5.     {加力} {0}
  6.     {口渴} {缺水}
  7.     {当前内力} {11124}
  8.     {当前气血} {9035}
  9.     {当前真元} {100}
  10.     {当前真气} {0}
  11.     {当前精力} {9067}
  12.     {当前精神} {2048}
  13.     {忙} {true}
  14.     {战斗中} {false}
  15.     {最大内力} {5762}
  16.     {最大气血} {9035}
  17.     {最大真气} {0}
  18.     {最大精力} {5166}
  19.     {最大精神} {2048}
  20.     {最大食物} {410}
  21.     {最大饮水} {410}
  22.     {有效气血} {9035}
  23.     {有效精神} {2048}
  24.     {毒} {}
  25.     {气势} {0}
  26.     {气血健康度} {100}
  27.     {气血百分比} {100}
  28.     {潜能} {1065676}
  29.     {潜能显示} {1065676}
  30.     {状态} {健康;极度疲倦}
  31.     {真元} {0}
  32.     {真气减伤} {0}
  33.     {精力百分比} {87}
  34.     {精神健康度} {100}
  35.     {精神百分比} {100}
  36.     {经验} {7250000.00}
  37.     {经验显示} {7.25M}
  38.     {走火入魔} {0.00}
  39.     {食物} {0}
  40.     {饥饿} {缺食}
  41. }
复制代码


#var char[Skills]

所有技能相关的内容都在这里了,包括 level 、limit 、jifa-level、是否enabled 等属性比较重要,可以在领悟、练习、读书的时候,用来判断。
  1. #VARIABLE {char[Skills]}
  2. {
  3.     {叫化绝活}
  4.     {
  5.         {code} {begging}
  6.         {enabled} {false}
  7.         {level} {7.37}
  8.         {limit} {0}
  9.         {name} {叫化绝活}
  10.         {rank} {新学乍用}
  11.         {type} {基本知识}
  12.     }
  13.     {基本内功}
  14.     {
  15.         {code} {force}
  16.         {enabled} {false}
  17.         {jifa-level} {306}
  18.         {jifa-to} {混天气功}
  19.         {jifa-type} {基本功夫}
  20.         {level} {198.03}
  21.         {limit} {198}
  22.         {name} {基本内功}
  23.         {rank} {初出茅庐}
  24.         {type} {基本功夫}
  25.     }
  26.     {降龙十八掌}
  27.     {
  28.         {code} {xianglong-zhang}
  29.         {enabled} {true}
  30.         {jifa-level} {302}
  31.         {jifa-to} {基本招架;基本掌法}
  32.         {level} {195.00}
  33.         {limit} {198}
  34.         {name} {降龙十八掌}
  35.         {rank} {初出茅庐}
  36.         {type} {特殊功夫}
  37.     }
  38. }
复制代码

#var char[锦囊]

在执行了 jiancha nang 之后,char[锦囊]里面就会有所有的宝石信息, 包括宝石序号、 种类、宝石等级、宝石数量、阴阳等, 有了这些信息,可以很方便的写出来一个宝石合成的机器。

  1. #VARIABLE {char[锦囊]}
  2. {
  3.     {B3A}
  4.     {
  5.         {序号} {B3A}
  6.         {数量} {1}
  7.         {种类} {玄冰}
  8.         {等级} {水}
  9.         {阴阳} {☆}
  10.     }
  11.     {B4A}
  12.     {
  13.         {序号} {B4A}
  14.         {数量} {1}
  15.         {种类} {玄冰}
  16.         {等级} {风}
  17.         {阴阳} {☆}
  18.     }
  19.     {B5A}
  20.     {
  21.         {序号} {B5A}
  22.         {数量} {1}
  23.         {种类} {玄冰}
  24.         {等级} {雷}
  25.         {阴阳} {☆}
  26.     }
  27.     {B6A}
  28.     {
  29.         {序号} {B6A}
  30.         {数量} {1}
  31.         {种类} {玄冰}
  32.         {等级} {火}
  33.         {阴阳} {☆}
  34.     }
  35. }
复制代码

背包管理相关的


这几个变量都是跟背包有关的,可以通过这个变量判断所有跟背包物品有关的逻辑, 比如是否有钱,是否穿了装备,是否携带武器,右手和左手的武器是什么。
注意,这几个变量要想获得准确的值, 请先执行 i2。 并且通过sync.Wait确保 命令被顺利的执行完毕后,再通过变量判断.


  1.     #var char.Item      {};
  2.     #var char.Cash      {};
  3.     #var char.Wear      {};
  4.     #var char.Wield     {};
  5.     #var char.Equip     {};
  6.     #var char.Autoload  {};
  7.     #var char.ItemID    {};

  8. #VARIABLE {char.Cash}
  9. {
  10.     {铜板/coin}
  11.     {
  12.         {amount} {47}
  13.         {id} {coin}
  14.         {name} {铜板}
  15.     }
  16.     {黄金/gold}
  17.     {
  18.         {amount} {1}
  19.         {id} {gold}
  20.         {name} {黄金}
  21.     }
  22. }


  23. #VARIABLE {char.Wield}
  24. {
  25.     {熟铜棍/右手/shutong gun}
  26.     {
  27.         {hand} {右手}
  28.         {id} {shutong gun}
  29.         {item} {熟铜棍}
  30.     }
  31.     {百战之盾/左手/shield}
  32.     {
  33.         {hand} {左手}
  34.         {id} {shield}
  35.         {item} {百战之盾}
  36.     }
  37. }
复制代码




#var gMapRoom

这个变量抓取了look能知道的信息, 也非常重要, 其中最重要的是 name desc  exits , 还有objs也挺重要的, npc,玩家,一些物品信息都会抓到 objs里面。   将来长大了自己需要画地图的时候,就不需要再自己抓取这些内容。
  1. #VARIABLE {gMapRoom}
  2. {
  3.     {desc} {这里是扬州城的中心,一个很宽阔的广场,地面由青石铺就。一些游手好闲的人在这里溜溜达达,经常有艺人在这里表演。中央有一棵大榕树,盘根错节,据传已有千年的树龄,见证了这座城市的历史。树干底部有一个很大的洞 (shudon
  4. g)。你可以看到北边有来自各地的行人来来往往,南面人声鼎沸,一派繁华景象,东边不时地传来朗朗的读书声,西边则见不到几个行人,一片肃静。}
  5.     {exits} {down;east;north;south;up;west}
  6.     {map} {|                    北大街||                      |||          西大街---中央广场---东大街||                      |||                    南大街|}
  7.     {name} {中央广场}
  8.     {nation} {大宋}
  9.     {node} {扬州}
  10.     {objs}
  11.     {
  12.         {5}
  13.         {
  14.             {id} {huo tong}
  15.             {name} {四块火铜}
  16.         }
  17.         {8}
  18.         {
  19.             {id} {marsflyer}
  20.             {name} {大葱战将}
  21.             {nick} {朱雀刺客}
  22.             {title} {武学大家;华山派;剑宗传人}
  23.         }
  24.     }
  25.     {terrain} {城市}
  26.     {weather} {东方的天空布满了灰蒙蒙的云层。}
  27. }
复制代码

#var gGMCP[Move]



gmcp 大家可以搜一下,我个人理解就是mud服务推送过来的消息。 pt框架解析了这些消息,封装到变量里面。
通过这个gGMCP[Move] 可以更加准确的获取到当前房间的名称,上一次走路是否成功,以及出口有哪些。

  1.     {Move}
  2.     {
  3.         {出口信息}
  4.         {
  5.             {1} {east}
  6.             {2} {northwest}
  7.         }
  8.         {成功} {true}
  9.         {房间名} {比武场}
  10.     }
复制代码


#var gGMCP[Combat] gGMCP[Status]


这两个都是战斗相关的,就一起说了, 可以最快速度的了解 战斗中敌我属性的变化, 以及技能信息,技能cd也都会有。

  1. #VARIABLE {gGMCP}
  2. {
  3.     {Combat}
  4.     {
  5.         {id} {mu zhuangzi#44678}
  6.         {姓名} {木桩子}
  7.         {有效气血百分比} {98}
  8.         {有效精血百分比} {100}
  9.         {气血伤害} {300}
  10.         {气血受损} {100}
  11.         {气血比率} {97}
  12.         {精血伤害} {0}
  13.         {精血受损} {0}
  14.         {精血百分比} {100}
  15.     }
  16.     {Status}
  17.     {
  18.         {id} {mu zhuangzi#44678}
  19.         {姓名} {木桩子}
  20.         {有效气血} {3196695}
  21.         {气血} {3101123}
  22.     }
  23.     {Combat}
  24.     {
  25.         {CD时长} {30}
  26.         {绝招ID} {xianglong-zhang.xiao}
  27.         {绝招名称} {降龙啸}
  28.     }
  29. }
复制代码



#var gJobState

想要使用这个变量,需要 LM basic/cmds/jobquery;  然后执行一下 jq 就有了。
主要作用是查看任务CD的, 一旦CD好了,立马接任务,不用再一直查询npc了,可以有效减少服务器压力!

  1. #VARIABLE {gJobState}
  2. {
  3.     {万安塔}
  4.     {
  5.         {CD} {23}
  6.         {ID} {13}
  7.         {名称} {万安塔}
  8.         {成功率} {}
  9.         {次数} {}
  10.         {类型} {主}
  11.         {附加信息} {经验必须达到1000000。}
  12.     }
  13.     {偷学}
  14.     {
  15.         {CD} {58}
  16.         {ID} {16}
  17.         {名称} {偷学}
  18.         {成功率} {}
  19.         {次数} {}
  20.         {类型} {主}
  21.         {附加信息} {前置慕容任务需完成至少1000次。}
  22.     }
  23. }
复制代码


#var gLoyalty

门忠任务相关的信息。 机器里面使用的话, 可以更加准确的伪造 以及交付给NPC。

  1. #VARIABLE {gLoyalty}
  2. {
  3.     {1}
  4.     {
  5.         {ID} {jinchuang yao}
  6.         {NPC} {guan jia}
  7.         {姓名} {女管家}
  8.         {序号} {1}
  9.         {房间} {北京鳌府后院}
  10.         {描述} {这是一件中等(三尺至六尺)大小形状为不规则形态的金创药,其材质为其他类物质,实心、不导热。}
  11.         {时间} {8月8日 11时26分}
  12.         {物品} {金创药}
  13.         {积分} {15}
  14.         {类型} {找到}
  15.     }
  16.     {2}
  17.     {
  18.         {ID} {jinxian yu}
  19.         {NPC} {zhao yishang}
  20.         {姓名} {赵一伤}
  21.         {序号} {2}
  22.         {房间} {明教正厅}
  23.         {描述} {这是一件细微(一寸至三寸)大小形状为长条形的金线鱼,其材质为肉质,实心、不导热。}
  24.         {时间} {8月8日 17时18分}
  25.         {物品} {金线鱼}
  26.         {积分} {15}
  27.         {类型} {找到}
  28.     }
  29. }
复制代码









本帖子中包含更多资源

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

x
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2024-8-20 18:41:42 | 显示全部楼层
本帖最后由 doumimi 于 2024-8-30 03:20 PM 编辑

三、常用别名

这部分也不会讲的特别细, 本篇文章的主旨还是给大家科普一下有哪些很好用的内置功能, 如果有不理解的,可以用HELP来看文档,PT的文档十分的详细。输入ALIS 查看全部的别名

背包管理

char.backpack.SellAll   把身上的低价值物品全部卖掉
char.backpack.DropAll   把身上的不能卖的低价值物品全部扔掉。

打出来一堆,金戒指,青蛙腿,碎肉屑,蝙蝠血甲, 你想一键卖掉,然后卖不了的一键drop掉吗? 试试这个别名吧。  关于自动买的东西是可以配置的, 可以在var/etc/loots.extra.tin 里面决定哪些东西卖,哪些东西drop,哪些东西保留.

  1. #var gLootPool[蓝马褂/cloth] {{kind}{衣服}   {unit}{件}  {value}{drop}};
  2. #var gLootPool[紫蟒袍/cloth]  {{kind}{衣服}   {unit}{件}  {value}{drop}};
  3. #var gLootPool[明黄锦袍/cloth]  {{kind}{衣服}   {unit}{件}  {value}{drop}};
  4. #var gLootPool[粉红绸衫/pink cloth]  {{kind}{衣服}   {unit}{件}  {value}{sell}};
  5. #var gLootPool[绣花小鞋/flower shoes] {{kind}{衣服}   {unit}{双}  {value}{sell}};
  6. #var gLootPool[蝙蝠血甲/bianfuxue jia] {{kind}{衣服}   {unit}{件}  {value}{sell}};
  7. #var gLootPool[黑色披风/heise pifeng] {{kind}{衣服}   {unit}{件}  {value}{sell}};

  8. #var gLootPool[玄铁剑/xuantie sword]  {{kind}{兵器}   {unit}{把}  {value}{reserve}};
  9. #var gLootPool[武士刀/wushi dao]  {{kind}{兵器}   {unit}{把}  {value}{reserve}};
  10. #var gLootPool[铁轮/iron falun] {{kind}{兵器}   {unit}{只}  {value}{drop}};
  11. #var gLootPool[钢杖/gangzhang] {{kind}{兵器}   {unit}{把}  {value}{drop}};
  12. #var gLootPool[绣花绷架/xiuhua bengjia] {{kind}{兵器}   {unit}{柄}  {value}{drop}};

  13. #var gLootPool[绣花针/xiuhua zhen] {{kind}{兵器}   {unit}{串}  {value}{sell}};

  14. #var gLootPool[牛皮酒袋/jiudai]  {{kind}{饮料}   {unit}{个}  {value}{reserve}};
  15. #var gLootPool[酸梅汤/suanmei tang] {{kind}{饮料}   {unit}{杯}  {value}{reserve}};
  16. #var gLootPool[青蛙腿/qingwa tui] {{kind}{食物}   {unit}{块}  {value}{sell}};
  17. #var gLootPool[碎肉屑/sui rouxie] {{kind}{食物}   {unit}{块}  {value}{sell}};
  18. #var gLootPool[嫩草/nen cao] {{kind}{食物}   {unit}{片}  {value}{sell}};
  19. #var gLootPool[草籽/cao zi] {{kind}{饮料}   {unit}{把}  {value}{sell}};

  20. #var gLootPool[金项链/golden necklace] {{kind}{兵器}   {unit}{串}  {value}{sell}};
  21. #var gLootPool[金戒指/golden ring] {{kind}{兵器}   {unit}{串}  {value}{sell}};
复制代码

你想一键捡起来 地图里面所有尸体、骨架、地上的 钱和宝石吗 ??
  1. look;sync.Wait {get-all}
复制代码






busy检查
这两个用来处理busy的情况,绝大部分机器都离不开这两个检查。
  1. ## 别名 busy.Wait <回调代码>
  2.     检查角色是否处于 busy 状态,如果是,则等待 busy 状态结束后执行回调代码。
  3.     否则立即执行回调代码。

  4. ## 别名 busy.Halt <回调代码>
  5.     检查角色是否处于 busy 状态,如果是,则用 halt 解除 busy,解除成功后,执行回调代码。
  6.     否则立即执行回调代码。
复制代码




逍遥行


xiaoyao.GotoThen  
xiaoyao.Query  简写  xyq
xiaoyao.Goto  简写  xy

这几个我想着就不用多说了,用PT的应该第一天都用上了逍遥行。





千里通
path.Walk  WalkSteps  Trace  List Finish  BotStep

千里通大家应该也会经常用, 走路必备的神器!关于BotStep  的使用, 可以参考这两篇攻略:
分享一个10w经验的明教小萌新PaoTin++成长之路 - 技术园地 - 北大侠客行MUD论坛 - Powered by Discuz! (pkuxkx.com)
Paotin++ 关于BotStep的应用于类似华山巡山任务场景的说明 - 技术园地 - 北大侠客行MUD论坛 - Powered by Discuz! (pkuxkx.com)




事件驱动
event.Handle
event.Emit
event.Define

事件很好用,本身逻辑不难, 只是定义有一点点复杂, 是用PT的进阶的内容了, 掌握了事件,你就已经脱离了萌新阶段了,已经能写出很厉害的机器了。  
【Paotin++】入门系列之五: 事件驱动编程 - 技术园地 - 北大侠客行MUD论坛 - Powered by Discuz! (pkuxkx.com)





地图相关

map.FocusNPC 非常好用,大家看一下他的用法自动的找家贼,自动找任务物品、NPC 就用这个就行
  1. ## 别名 map.FocusNPC <行为类型> <行为>
  2.     关注指定特征的 NPC,并当发现它时,呼叫相应的行为。
  3.     特征由一系列字段来描述,目前支持的字段有:
  4.       - id:     ID
  5.       - name:   名字
  6.       - title:  称号
  7.       - nick:   昵称
  8.     行为有两种类型:
  9.       - command: 指明行为是一个命令,例如 follow 或者 kill 之类,那么将以 NPC ID 为参数调用它。
  10.       - alias:   指明行为是一个别名,表明要做的事情比较复杂,那么将以 NPC 对象为参数调用它。

  11. ## 函数 map.Room.GetObjByName <名称> [<头衔>]
  12.     根据名称提取房间中的物品信息。
  13.     由于有时候无法正确区分 NPC、玩家和物品,因此本函数也可以用来查询 NPC 或玩家,
  14.     此时如果同时提供了头衔,则也会判断头衔是否匹配。
  15.     当然,你也可以只通过头衔来查询,只要保持名称留空即可。

  16. ## 函数 map.Room.GetObjByID
  17.     根据 ID 提取房间中的物品信息。
  18.     由于有时候无法正确区分 NPC、玩家和物品,因此本函数也可以用来查询 NPC 或玩家。
复制代码






存储

如何退出了游戏,但是变量依然存在呢? 就可以用这个功能把变量存在文件里面, 比如每周南国围猎的图, 就可以dump到文件里面,然后每次在比对的时候,可以再load出来,通过机器来比对。
  1. ## 别名 storage.Save <文件名> <变量名1> [...]
  2.     将由变量名列表所指定的变量及其值存储到指定的存储文件中。

  3. ## 别名 storage.Load <文件名> <变量名1> [...]
  4.     从指定的存储文件中加载变量。
  5.     存储文件中实际存储的变量可能更多一些,但本函数可以只加载其中一部分变量。
复制代码





服务器同步

如果想要保证前面的所有命令都已经被服务器正确的执行完, 那么就可以用这个命令,比如 要用pt提供的背包查询功能时候,可能就需要在i2 完之后,加上sync.Wait, 确保之前的命令都被系统处理完成并返回,此时背包的信息才是准确的
  1. ## 别名 sync.Wait <回调代码> [<同步符号>]
  2.     用来和服务器进行同步,参数说明如下:
  3.     1. 回调代码
  4.        回调代码会在与服务器同步之后执行。
  5.     2. 同步符号(可选)
  6.        同步符号参数用来对本次同步进行唯一标识,只能由大小写字母、数字、连字符、
  7.        下划线、小数点、斜线构成。
  8.        本参数为可选值,如果省略,则无法通过 sync.Ignore 取消回调
复制代码





UI
prompt.Set  可以修改UI,增加一些信息。 大家直接试一试下面的命令就知道了。
  1. prompt.Set {{job}{<169> 慕容仆人}{area}{铜官山}{room}{酒铺}{type}{<119> 红人}{stage}{线索 (50)}}
复制代码





计算

对变量进行加减运算,如果想要扣减,就用  math.Inc  abc  -3  就行。
  1. ## 别名 math.Inc <变量名> [<增量值>]
  2.     将增量值叠加到变量原来的值之上。若变量值为空,则视同为 0。如增量值省略,则视同为 1。
复制代码





定时器

如果有个定时器是每隔12小时执行一次,那么如何写完就测试效果呢? 就用 xtt.Tick 就行, 这个定时器和普通的区别就是会立即执行一次

  1. ## 别名 xtt.Tick <代码> <间隔时间> [<触发次数>]
  2.     跟 #tick 功能类似,但是会立即执行一次代码对于间隔时间比较长的定时器来说尤其有用
  3.     可选的触发次数会导致定时器在次数达到限制后自动销毁。省略此参数时将不限制触发次数。
  4.     你也可以通过 Tick 别名来使用本别名。
复制代码











北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2024-8-20 22:24:40 | 显示全部楼层
这篇写的有点敷衍,后面都没有详细说明
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2024-8-21 10:44:44 | 显示全部楼层
case 发表于 2024-8-20 10:24 PM
这篇写的有点敷衍,后面都没有详细说明

看来哥们是看过我之前的帖子哈, 非常感谢捧场。

然后还想说的是这篇文章并没有任何敷衍。 Pt本身是个大宝藏,内置了非常多的好用的变量和别名, 但是也有一些是平时很少用到,或者根本用不到的。

这篇文章就是 把哪些我最常用的给大家展示出来, 大家有个概念,知道有这个东西就行了。 原理的东西其他的文章已经讲过, 这篇是应用层, 只要知道有这个玩意儿就行。 Pt的文档本身非常的完善, 用法可以直接HELP来查看。  这个也符合这个系列的初心, 介绍PT最常用的20%的内容, 让各位同学能写出来80%的机器。

然后这个意见我还是虚心接受的, 有些内容我还是会再继续补充,比如再补充一下 我个人的使用的经验。
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2024-8-23 08:33:54 | 显示全部楼层
豆米兄,这个函数找不到呢,要手动载入哪个文件吗
#VARIABLE {gJobState}
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2024-8-23 10:11:38 | 显示全部楼层
yua 发表于 2024-8-23 08:33 AM
豆米兄,这个函数找不到呢,要手动载入哪个文件吗
#VARIABLE {gJobState}

LM basic/cmds/jobquery;

执行完就有了

点评

yua
收到,感谢!  发表于 2024-8-23 11:30 AM
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-17 03:40 AM , Processed in 0.014127 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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