千年技术吧+ 关注 关注:3 帖子:256

  

教你给服务器添加一个比武活动的脚本

  • 枫之精英

    由于点错了地方上面的不能用了请用这里的!


    我是菜鸟一个,做得不是很好请大家原谅下!我做的脚本只有一处毛病,就是不能让在比武场死去的角色复活在大地图上去!一直郁闷啊!由于不懂怎么上传所以把做法写出来!如果觉得好就帮我顶一下吧!对了,如果你的大地图是用跳点传送而不是用传送员传送的话,那就不必看了,因为你如果没有用传送员的话把下面的修改到你的服务端就会出错!

    修改前先备份!!!!

    下面我就讲讲如何做这个活动的脚本:

    我把我做的复制下来给你们讲解

    打开INIT/MAP.SDB

    2,server2.smp,server2.map,bsmaptil.til,bsmapobj.obj,bsmaprof.obj,1001,,大战场,TRUE,TRUE,TRUE,TRUE,TRUE,FALSE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,FALSE,TRUE,TRUE,,TRUE,TRUE,,,,,,,,,,,1,698,689,,,,,1,698,689,,,,,,,,,,,,,,,,,,,,,,,

    这个是用来个人对战的活动场地,我所修改的地方是:不能开镜子进入,不能带属性装备,但是可以吃任何药,没有武功限制!因为如果可以吃药的话,活动的时间就会延长,你不会希望一开活动不一会就结束了吧!我的服务器是删除了大药的所以这里只能吃生药!

    6,fmbat.smp,fmbat.map,southtil.til,southobj.obj,southrof.obj,1001,,门派大战场,TRUE,TRUE,TRUE,TRUE,TRUE,FALSE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,FALSE,TRUE,TRUE,,TRUE,TRUE,,,,,,,,,,,1,662,63,,,,,1,662,63,,,,,,,,,,,,,,,,,,,,,,,

    这里是给门派对战的场地,修改和上面一样!

    由于我在中央设置了一个传送员所以在大地图上不能设置跳点了,如果你的服务器也有传送员可以象我下面这样修改

    97,1munh.smp,1munh.map,southtil.til,southobj.obj,southrof.obj,1001,,比武入口,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,,TRUE,,,TRUE,,,,,,,,,,,,,,,,,,,,,TRUE,109,,,,,,,,,,,,,,,,,,,,,

    这个比武入口 我是用的婚礼宴堂这个地图,前面97是地图代码你必须根据你自己服务器里的地图代码修改,地图的属性基本没有什么改变,直接复制就行了!

    打开INIT/ITEM把下面的复制进去

    武林诏书,武林诏书,5,进入大战场所用得此物品可以参加单人比武大会,,,,,,,TRUE,FALSE,530,0,0,,0,0,1,,0,,50000,100,,,,,4429,4828,,,,,,,,,,,,,,,,,,,,,,,FALSE,,FALSE,,,,,,,,FALSE,FALSE,,TRUE,,,,,,2,
    武林帖,武林帖,5,进入门派大战场所用,,,,,,,TRUE,FALSE,530,0,0,,0,0,1,,0,,50000,100,,,,,4429,4828,,,,,,,,,,,,,,,,,,,,,,FALSE,,,FALSE,,,,,,,,FALSE,FALSE,,TRUE,,,,,,2,

    记住你的客服端必须有黄泉物品的补丁,上面的物品才会显示出来,要不你就修改它们的物品代码和图片代码!

    然后打开Setting/CreateGate.sdb把下面的复制进去

    159,朝大战场,朝大战场,0,TRUE,69,45,61,44,42,50,59,97,2,1,,,1,,,,100,武林帖:1,武林帖:1,,,,,,,需要武林帖才能进入,,,,,,,,
    160,朝门派对战场,朝门派对战场,0,TRUE,69,39,55,49,45,50,59,97,6,1,,,1,,,,100,武林诏书:1,武林诏书:1,,,,,,,需要武林诏书才能进入,,,,,,,,

    在这里就是跳点文件了,这里我修改的是,不能开镜进入,不能带属性装备。

    下面就要修改你的传送员了打开SCRIPT自己找你的传送员在哪里

    下面这里是做为对照不必复制

    if aStr = 'goroom13' then begin
    print ('mapregen 44');
    print ('getsenderitem 钱币:10000');
    Name := callfunc ('getsendername');
    Str := 'movespace ' + Name;
    Str := Str + ' user 1 303 383';
    print (Str);
    print (Str); 
    exit;
    end;

    上面不要复制

    把下面的复制到你的传送员.TXT里

    这里注意↓你看看上面的数字是13,这里才能添14。
    if aStr = 'goroom14' then begin
    print ('mapregen 45');←这个45也是一样要对照你上面的如果是44.就添45
    print ('getsenderitem 钱币:10000');←这里是进入时需要10000钱币,看看你的传送员传送是多少钱自己改
    Name := callfunc ('getsendername');
    Str := 'movespace ' + Name;
    Str := Str + ' user 97 44 56';
    print (Str); ↑这个97必须改,对照你的INIT/MAP。SDB地图文件的比武入口的代码修改!后面的44 56不要改
    print (Str); 
    exit;
    end;

    然后打开HELP找你的传送员.TXT修改下面由于我这里是不叫传送员,叫马车商人,所以你要把名字改改!

    <trade>
    <title>马车商人</title>
    <image name=z81 value=235>
    <text>
    拿10000块钱来我可以雇给你马车到任何地方
    要去参加武林盟主争霸赛吗?你找对人了!
    什么你要和别人单条啊?有武林诏书吗?
    </text>
    <command send='close'>关闭</command>
    <body>
    <a send="goroom1">犀牛林 这些传送地方的名字不要修改了
    <a send="goroom2">帝王陵
    <a send="goroom3">太极剑门
    <a send="goroom4">帝王石谷
    <a send="goroom5">狐狸洞
    <a send="goroom6">极乐洞
    <a send="goroom7">双花店
    <a send="goroom8">太极老人
    <a send="goroom9">黄金沙漠
    <a send="goroom10">极乐寺
    <a send="goroom11">黄龙峡谷入口
    <a send="goroom12">破天城入口
    <a send="goroom13">书生村
    <a send="goroom14">比武入口 ←修改这里看见那个14没有,对照你自己上面的13">书生村修改就行了!

    </body>
    </trade>



    1楼  2023/2/1 20:11:44  回复

  发表回复

    发帖