吾爱尚玩资源基地

标题: 千年宝宝脚本+神武年龄限制的修改方法 [打印本页]

作者: admin    时间: 2019-3-19 10:15
标题: 千年宝宝脚本+神武年龄限制的修改方法
   内容介绍

神武年龄限制的修改方法:用UltraEdit 打开tgs1000.exe
找到 000cd450h 这个地址 下面的这个数值是原版的
a1 0f 00=表示40.01岁的才能学
如果想改成小于40岁就能学,参阅下面的改法

  1. <font color="#006400">把a1 0f 00改成ad 0d 00 = 35.01岁能学
  2. 把a1 0f 00改成b9 0b 00 = 25.01岁能学
  3. 把a1 0f 00改成c5 09 00 = 25.01岁能学
  4. 把a1 0f 00改成d1 07 00 = 20.01岁能学
  5. 把a1 0f 00改成dd 05 00 = 15.01岁能学
  6. 把a1 0f 00改成e9 03 00 = 10.01岁能学
  7. 把a1 0f 00改成00 00 00 =就取消了年龄限制了</font>
复制代码

注意上面的英文字母用大写的字母书写就可以了

宝宝脚本:
NPC的名称和NPC判断的名称自己改。
NPC名称是’老胡的儿子‘
自己改,所有的

  1. if namea <> '老胡' then begin
复制代码
把老胡改成自己的名称


可以输入命令攻击的宝宝。杀怪路上不在独单。人物要自己加,只是脚本,不会加的看了白看。
记住命令”号不输入。

  1. “攻击+空格+玩家名称”
  2. “停止攻击”
  3. ”跟我来“
复制代码
首先在script文件夹内新建一个文档文件,名字随意,最好使用你将给宝宝取的名字做为文件名。然后把下面代码复制到内:
  1. unit 老泊;

  2. interface

  3. function  GetToken (aStr, aToken, aSep : String) : String;
  4. function  CompareStr (aStr1, aStr2 : String) : Boolean;
  5. function  callfunc (aText: string): string;
  6. procedure print (aText: string);
  7. function  Random (aScope: integer): integer;
  8. function  Length (aText: string): integer;
  9. procedure Inc (aInt: integer);
  10. procedure Dec (aInt: integer);
  11. function  StrToInt (astr: string): integer;
  12. function  IntToStr (aInt: integer): string;
  13. procedure exit;

  14. procedure OnDblClick(aStr : String);
  15. procedure OnGetResult (aStr : String);
  16. procedure OnHear (aStr : String);
  17. procedure OnDie (aStr : String);
  18. procedure OnAway (aStr : String);

  19. var
  20. yidong :string;
  21. name :string;
  22. implementation

  23. procedure OnHear (aStr : String);
  24. var
  25.   namea, pstr, Str, rdStr, xStr, yStr : String;
  26.    x, y, xx, yy : Integer;
  27.    Race : Integer;
  28.    cuan, detu : String;
  29.    detua : Integer;
  30. begin
  31. namea := callfunc ('getsendername');
  32. if namea <> 'GM玫瑰小姐' then begin
  33. exit;
  34. end;
  35. if astr = '停止攻击' then begin
  36. str := 'say ' + 'Yes-老大!停止攻击〔';
  37. str := str + pstr;
  38. str := str + '〕';
  39. print (str);
  40. print ('attack 狗日')
  41. yidong := '停';
  42. exit;
  43. end;

  44. rdstr := GetToken (astr, yStr, '_');
  45. if ystr = '攻击' then begin
  46. rdstr := 'say ' + astr;
  47. print (rdstr);
  48. pstr := GetToken (astr, xStr, '_');
  49. str := 'say ' + 'Yes-老大!攻击〔';
  50. str := str + pstr;
  51. str := str + '〕';
  52. print (str);
  53. str :='findobjectbyname '+ pstr;
  54. str := callfunc (str) ;
  55. str := 'attack ' + str;
  56. print (str);
  57. yidong := '停';
  58. exit;
  59. end;

  60. if astr = '跟我来' then begin
  61. yidong := '走';

  62. print ('attack 狗日');
  63. detu := callfunc ('getsenderserverid');
  64. str := callfunc ('getsenderposition');

  65.    Str := GetToken (Str, xStr, '_');
  66.    x := StrToInt (xStr);
  67.    Str := GetToken (Str, yStr, '_');
  68.    y := StrToInt (yStr);

  69.    rdStr := 'getnearxy ' + xStr;
  70.    rdStr := rdStr + ' ';
  71.    rdStr := rdStr  + yStr;
  72.    Str := callfunc (rdStr);


  73.    Str := GetToken (Str, xStr, '_');
  74.    xx := StrToInt (xStr);
  75.    Str := GetToken (Str, yStr, '_');
  76.    yy := StrToInt (yStr);

  77.    if x = xx then begin
  78.       if y = yy then begin
  79.          exit;
  80.       end;
  81.    end;

  82. if yidong <> '走' then exit;
  83. cuan := 'directmovespace 老泊 npc ';
  84. str :=cuan + detu;
  85. str :=str + ' ';
  86. str :=str + xstr;
  87. str :=str + ' ';
  88. str :=str + ystr;
  89. print (str);
  90. str := 'say ' + '老大抱我! 100';
  91. print (str);
  92. exit;
  93. end;
  94. end;

  95. end;


  96. procedure OnAway (aStr : String);
  97. var
  98.    namea, Str, rdStr, xStr, yStr : String;
  99.    x, y, xx, yy : Integer;
  100.    cuan, detu : String;
  101.    detua : Integer;
  102. begin
  103. name := 'GM玫瑰小姐';
  104. namea := callfunc ('getsendername');
  105. if namea = name then begin
  106.    Str := callfunc ('getsenderrace');
  107.    if Str <> '1' then exit;
  108.    print ('say 哈哈...');

  109. detu := callfunc ('getsenderserverid');
  110. str := callfunc ('getsenderposition');

  111.    Str := GetToken (Str, xStr, '_');
  112.    x := StrToInt (xStr);
  113.    Str := GetToken (Str, yStr, '_');
  114.    y := StrToInt (yStr);

  115.    rdStr := 'getnearxy ' + xStr;
  116.    rdStr := rdStr + ' ';
  117.    rdStr := rdStr  + yStr;
  118.    Str := callfunc (rdStr);


  119.    Str := GetToken (Str, xStr, '_');
  120.    xx := StrToInt (xStr);
  121.    Str := GetToken (Str, yStr, '_');
  122.    yy := StrToInt (yStr);

  123.    if x = xx then begin
  124.       if y = yy then begin
  125.          exit;
  126.       end;
  127.    end;

  128. if yidong <> '走' then exit;
  129. cuan := 'directmovespace 老泊 npc ';
  130. str :=cuan + detu;
  131. str :=str + ' ';
  132. str :=str + xstr;
  133. str :=str + ' ';
  134. str :=str + ystr;
  135. print (str);
  136. end;
  137. exit;
  138. end;
  139. end;
  140. procedure OnDblClick (aStr : String);
  141. var
  142.    name, namea, Str, rdStr, xStr, yStr : String;
  143.    x, y, xx, yy : Integer;
  144.    cuan, detu : String;
  145.    detua : Integer;
  146. begin
  147. print ('attack 狗日');
  148. detu := callfunc ('getsenderserverid');
  149. str := callfunc ('getsenderposition');

  150.    Str := GetToken (Str, xStr, '_');
  151.    x := StrToInt (xStr);
  152.    Str := GetToken (Str, yStr, '_');
  153.    y := StrToInt (yStr);

  154.    rdStr := 'getnearxy ' + xStr;
  155.    rdStr := rdStr + ' ';
  156.    rdStr := rdStr  + yStr;
  157.    Str := callfunc (rdStr);


  158.    Str := GetToken (Str, xStr, '_');
  159.    xx := StrToInt (xStr);
  160.    Str := GetToken (Str, yStr, '_');
  161.    yy := StrToInt (yStr);

  162.    if x = xx then begin
  163.       if y = yy then begin
  164.          exit;
  165.       end;
  166.    end;
  167. cuan := 'directmovespace 老泊 npc ';
  168. str :=cuan + detu;
  169. str :=str + ' ';
  170. str :=str + xstr;
  171. str :=str + ' ';
  172. str :=str + ystr;
  173.    if x = xx then begin
  174.       if y = yy then begin
  175.          exit;
  176.       end;
  177.    end;
  178. print (str);

  179. end;

  180. end.
复制代码

注意:使用宝宝的命令不需要使用@

第二
我们在相同的文件夹中找到Script.SDB
在文件内加入
  1. XXX(这里是排列顺序号),老泊.txt,,
复制代码


第三步

在init文件夹内找到NPC.SDB
在里面编写宝宝(其实就是一个NPC)属性代码


第四步
打开setting文件夹找到刷出NPC的文件。根据地图添加,例如长城以南刷个宝宝在中央,就找到CreateNpc1.sdb在里面添加宝宝NPC
  1. 102(这里是我的排列号改为你自己的),老泊,533,475,1,2,XXX
复制代码
(对应上面Script.SDB的号码)




这样就添加完成了,可以上你的服务器到中央市场位置 533 475找到你的宝宝 键入口令“跟我来”这样狗狗就听你的话了,


   内容截图


   附件下载   (如果本资源侵犯到您的权益,请联系在线管理员QQ:1589479632处理!)




作者: gameuser    时间: 2019-4-24 10:05
学习下  谢谢分享
作者: xnliuling    时间: 2019-5-20 14:56
很好的解释,谢谢!!
作者: xinxiaer    时间: 2020-3-1 12:34
额特特特让他
作者: parody    时间: 2020-3-11 23:51
感谢分享,楼主辛苦~!!!
作者: fangzhiye    时间: 2020-7-2 12:45
感谢分享,学习了。
作者: a85815186    时间: 2020-11-26 22:02
新手来学习了谢谢
作者: haoyu386    时间: 2021-3-13 22:49
哒哒哒哒哒哒多多多多多多多多多多多多多
作者: akeboss    时间: 2021-4-1 17:03
好东西 正好需要

作者: V878875    时间: 2021-11-10 10:18
非常棒的脚本啊!
作者: rugal05    时间: 2022-1-3 22:03
学习下  谢谢分享
作者: wlhhsm    时间: 2022-4-30 16:03
谢谢分享!!!!
作者: chuanzi147    时间: 2022-6-24 19:03
学习,希望不要坑
作者: fb9691    时间: 2022-6-25 05:59
规划和空间




欢迎光临 吾爱尚玩资源基地 (http://bbs.523play.com/) Powered by Discuz! X3.4