石器任务制造全问答

2019-07-04 9:12 石器技术 石器时代TV

Q: 

如何设置标旗呢? 


A: 

你自己可以看看已有任务是怎么设置的啊 

比如神秘老人的参数 


EventNo:84 

TYPE:REQUEST 

EVENT:ENDEV=82&ENDEV=83&ENDEV=72&ENDEV=71 

RequestMsg:年轻人,我在你身上看到了魔法的痕迹,你是否去过天空之岛呀~~~ 



其中第3行EVENT:就表示接任务的条件. 

ENDEV=82表示完成动物园任务 

ENDEV=83打完席格 

ENDEV=71表示打完封印之间的精灵王 

ENDEV=72表示打完小黑 

同时具备这些条件,也就是拿了黑羊,且做过动物园的任务,就可以接神秘老人的任务了. 


Q: 

那标旗在哪里设定?还是直接在这里设置? 


A: 

在写NPC脚本时,在EVENT:后面填写所需要的旗标. 

如果是想自己定义旗标的话,可以像第1行EventNo:84的那样,自己编一个,比如300以后的.之后想让人物接过任务后完成相应旗标,就写上EndSetFlg:300 


Q: 

你刚才所说的全部都是解任务需要的标旗,那任务做完之后所给的标旗又在哪里设置? 


A: 

EndSetFlg:300 这个就是了 


Q: 

不太明白~~能给个例子来吗? 


A: 

还以神秘老人做例子吧 


首先是去神秘老人那里接任务 


EventNo:84 

TYPE:REQUEST 

EVENT:ENDEV=82&ENDEV=83&ENDEV=72&ENDEV=71 

RequestMsg:年轻人,我在你身上看到了魔法的痕迹,你是否去过天空之岛呀~~~ 

ThanksMsg1:果然,那你是为什么而去的呀?是什么人送你上去的呀?那里可不是一般人可以去的呢~~ 

ThanksMsg2:什么?原来你是为了化解主人和光明精灵王的误会而去的? 

ThanksMsg3:..呵...\n看来你命中注定和精灵有缘呢..\n我也是来自天空岛的精灵哦~~ 

ThanksMsg4:当年我主人在盛怒下离开了天空岛来到这块大陆,但不知为什么,主人忽然失了踪,我这些年来走遍伊甸,一直都找不到呢... 

ThanksMsg5:如果你有遇到我主人的话,记得通知我一声啊~~~ 

EventEnd 



然后是去找精灵王打架 


EventNo:84 

TYPE:ACCEPT 

EVENT:NOWEV=84 

AcceptMsg:原来这一切都是幻影,想不到我会被困在这里...要不是你的闯入破坏了平衡,这结界可能永远把我困在这了... 

ThanksMsg1:什么?你是为了光明精灵王而来的?我不想提起那不守信诺的家伙... 

ThanksMsg2:..... 

ThanksMsg3:原来事实是这样,看来是我误会他了,\n等我恢复魔力后我就会回去找他的,真是辛苦你啦~~ 

ThanksMsg4:这东西给你,就当是谢谢你的一番奔波吧~ 

GetRandItem:19731,19732 

ItemFullMsg:你身上东西太多了,等你整理一下再来找我吧~~ 

EndSetFlg:84 

EventEnd 


最后找神秘老人要LV2戒指 


EventNo:-1 

TYPE:MESSAGE 

EVENT:ENDEV=82&ENDEV=83&ENDEV=84&ENDEV=72&ENDEV=71&ITEM!=19729&ITEM!=19730 

NomalWindowMsg:真是太感谢你了,一想到这些年来主人受困在幻影之界,而身为属下的人竟未能及时营救,真是令人惭愧啊~~\n这样吧,为了感谢您帮了这个大忙,这东西给你,相信对你一定有相当大的帮助的! 

GetRandItem:19729,19730 

ItemFullMsg:你身上东西太多了,等你整理一下再来找我吧~~ 

EventEnd 


第一次找神秘老人的任务旗标是84,说完后,得到NOWEV:84 

找精灵王打架需要NOWEV=84,正好就是上一个任务结束后得到的旗标 

打完后,84号任务通过EndSetFlg:84完成,就是说以后不能再打精灵王了 

有了ENDEV=84,再去找神秘老人,得到LV2戒指 


Q: 

EventNo:84 

EventEnd 

EndSetFlg:84 

这些分别代表什么意思? 


A: 

EventNo:84是任务编号,EventEnd是结束该任务.2个一起用,就会得到NOWEV=84,表示已经接了84号任务,或正在做84号任务 

如果不想任务结束后获得任务旗标,可以设定成EventNo:-1 

EndSetFlg:84,表示增加结束类的任务旗标,也就是ENDEV=84,表示的当然就是已经做完84号任务 


Q: 

得到了标旗后人物就永远有这个标旗了是吗? 

不是有一些任务只能做一次的吗?例如MM,一生只能做一次,如果得到MM任务的标旗后,不就可以无限打了吗? 

要怎样设计呢? 

又例如天空.第一次打小黑时他给只黑羊你.再回去打一次就什么都没有,这些是怎样设定的? 


A: 

转生的地址找不到,不是很清楚,不过个人猜想,里面应该有清除旗标的参数,不过是只清除特定的参数,或者不清除特定的参数. 

如果抛开转生的问题,只是在一转之内要求只能做一次,倒是可以设置.方法就是对同一个人物设定2个以上的任务,一个是没完成任务的,一个是完成任务的.这样NPC首先会判断你是否有对应的已完成的旗标,有的话,直接就跳到已完成的对话上去;没完成的话,才会去接最开始那个任务. 


以小黑为例吧 


NomalMainMsg:我是黑暗精灵柯黑穆肯。 


#催促玩家回家 

EventNo:-1 

TYPE:MESSAGE 

EVENT:ENDEV=4&ENDEV=69&ENDEV=70&ENDEV=71&ENDEV=72 

NomalWindowMsg:虽然没有见到精灵王大人,不过你的任务已经圆满达成了。 

EventEnd 


#给黑羊 

EventNo:-1 

TYPE:ACCEPT 

EVENT:ENDEV=4&ENDEV=69&ENDEV=70&ENDEV=71&NOWEV=72 

AcceptMsg1:勇敢的年轻人,我柯黑穆肯在此对于你过人的智慧与能力表示敬意!\n四位守护已经和我说明过你的来意了,刚刚的迷宫与战斗只是想再试试你而已。 

AcceptMsg2:如今我已经知道你确实拥有晋见精灵王大人的资格了。如何,你准备好了吗? 

ThanksMsg:果然是个勇者!不过很可惜的,精灵王大人现在并不在天空之岛…\n不过你的心意我柯黑穆肯一定会传达给精灵王大人的。\n为了表示我个人的敬意,送只邦达霍恩和你一起步向未来吧!\n如果想回到尼斯大陆的话,那位小黑精灵可以送你回去。 

PetFullMsg:你身边的宠物太多了,麻烦留个空位给我的随从吧? 

GetPet:484 

EndSetFlg:72 

EventEnd 


#完全未开任务打倒对话 

EventNo:-1 

TYPE:MESSAGE 

EVENT:ENDEV=4&ENDEV=69&ENDEV=70&NOWEV=71 

NomalWindowMsg:没想到我柯黑穆肯竟然会被人类击败,难道光明精灵王的世界改造计划已经成功了吗? 

EventEnd 


事实上,小黑这个NPC一共有3个任务参数 

首先是最下面的打仗,只要满足蓝色那些条件,就可以直接开打,所以打小黑是无限的 

然后是中间那部分送黑羊,得到黑羊后,会附加一个EndSetFlg:72的旗标,也就是ENDEV=72 

这样,在最上面那部分中,由于有了ENDEV=72,所以只会表示"虽然没有见到精灵王大人,不过你的任务已经圆满达成了"这句话,而不会再重复中间送黑羊的步骤了 

也就是说,如果要让一个NPC做多重任务,且任务之间有先后顺序的话,可以把最开始的任务放在最后面,最后完成的任务放在最前面,这样系统就会依次顺序判断接任务的条件. 


Q: 

AcceptMsg1:勇敢的年轻人,我柯黑穆肯在此对于你过人的智慧与能力表示敬意!\n四位守护已经和我说明过你的来意了,刚刚的迷宫与战斗只是想再试试你而已。 

AcceptMsg2:如今我已经知道你确实拥有晋见精灵王大人的资格了。如何,你准备好了吗? 

ThanksMsg:果然是个勇者!不过很可惜的,精灵王大人现在并不在天空之岛…\n不过你的心意我柯黑穆肯一定会传达给精灵王大人的。\n为了表示我个人的敬意,送只邦达霍恩和你一起步向未来吧!\n如果想回到尼斯大陆的话,那位小黑精灵可以送你回去。 




请问这些是对话么?如果是该怎样改?AcceptMsg1和AcceptMsg2有什么区别?ThanksMsg这个又是什么意思?还有\n这又是啥意思? 


A: 

找个简单任务的脚本对照一下就明白了嘛 

AcceptMsg是翻页,比如说NPC的话太多,一页放不下,就可以用AcceptMsg+数字来表示第1页说什么,第2页又说什么. 

ThanksMsg是接到任务后对话.因为AcceptMsg这种任务在最后通常会有让玩家选择确定还是取消的选项,如果选确定表示接任务的话,ThanksMsg这些话才能出来,表示确实接了任务. 

至于说\n,其实就是回车了,也就是换行,重起一行书写. 


Q; 

有些标旗是对话后得到的.就像上面的神秘老人那样 

但有些标棋是战斗后再对话才得到的. 

这些战斗后再对话才得到的标旗又如何设计呢?如果没记错,战斗NPC和对话NPC是不同的 

请教教我~ 


A: 

战斗后再说一次,这个可能有不同的情况.我知道的一种其实非常简单,就是做2个一模一样的NPC,一个是管战斗的,一个是管完成任务的.这样与战斗NPC交战后,WARP跳转至任务NPC的地图,然后再与后者对话.这个任务NPC是在另外一张地图上的,正常情况下到达不能,只能通过战胜前一个NPC后跳转.比如席格 巴克 风城王子都是这样 


Q: 

黑蛙不是这样啊~它也是打完后对话的.不过是在同一个地图..是不是跟标旗有关呢? 


A; 

那只是你自己感觉不到地图换了而已,实际上黑蛙王也是2个,看看下面这个,floorid=后面接的是地图坐标,你可以找个没打过蛙王的人用GM指定瞬移到30607看看 


#战斗里昂蛙王(80级,毒攻击,综合攻击,高敏) 

floorid=30605 

borncorner=7,9,7,9 

time=0 

createnum=1 

dir=4 

ignoreinvincible=1 

graphicname=100886 

name=里昂蛙王 

enemy=event69_5|file:king/event69_5.arg 


#里昂蛙王(蛙洞的守护主,喜爱闪闪发亮的宝物) 

floorid=30607 

borncorner=7,9,7,9 

time=0 

createnum=1 

dir=4 

ignoreinvincible=1 

graphicname=100886 

name=里昂蛙王 

enemy=changeevent|file:king/event69_6 


Q: 

原来是这样`~看来我看漏眼了 

那战后之后的所得的标旗在哪里设计?还是战斗NPC没有标旗的~ 


A; 

黑蛙王的任务因为是很早以前的任务了,所以他的写法跟现在的常用写法有点不一样,看得不是很懂 

战斗蛙王应该是通过道具来判定的,即拿到黑蛙王的金珠后与其交谈发生战斗,没拿不会战斗 

而任务蛙王是通过道具和任务旗标2个条件来判断的,得有金珠,还得在老爷爷那里接过任务,才会得到黑玉 

至于该任务结束的旗标,则要到将黑玉交给新藏才算正式完成 


Q; 

TYPE:XXXXX 这些是什么?我发现每一个任务的这里都不一样哦~有什么用的? 


A: 

只知道MESSAGE是纯粹的面版文字,REQUEST和ACCEPT都有选择项,至于REQUEST和ACCEPT有什么区别,就不清楚 


Q: 

照你这样说.TYPE:XXXXX是没用的啦? 


想问你要个装备NPC脚本 

就是那些可以升级装备的NPC. 

例如 斧头....如有用2个斧头跟NPC交换,就可以得到一个 斧头+1 

你会弄吗? 


A: 

怎么会没用的呢?接任务的时候用REQUEST或ACCEPT来询问是否要接任务,而等任务完成后,就可以用MESSAGE来说一些事后的话 


这个没弄过,不过道理上应该想得明白,先是验证ITEM=XXXX*2,然后是DelItem:XXXX*2,最后Additem:YYYY 


Q: 

ITEM=XXXX*2,然后是DelItem:XXXX*2,最后Additem:YYYY 

这样我明白.不过道理上应该一个NPC只能换一个道具.如何才可以选择性的的换呢? 

还有,我编辑任务的时候发现一个问题 

就是战斗的时候,如何才可以限制条件来战斗呢 

例如:我在做天空.要打小黑,不管你有没有接任务,都可以打(我指的是直接用命令传送到小黑面前) 

不过打完后发现没接任务的不能得到黑羊,要接了任务和打了4界才能得到黑羊 

又如:我正在做某个任务.到了要跟战斗NPC开战.因为事前接了任务,所以可以开打,不过有些人没接任务,跟战斗NPC对话的时候就只能对话,不能开打 

究竟怎样才能限制开打的条件呢? 


A: 

前面介绍小黑时不是说过嘛,一个人物可以有多个参数.你要你用不同的参数来控制他的反应就行了.像EVENT:Item=xxxx*2这种,只要身上存在xxxx*2的道具,他自然会说话,没有就不会说话,或者接其他任务的嘛.至于如果同时符合2个任务的条件怎么办的问题,你可以用MenuHead来制造选项去解决,后面会附上铜制武器的数据,自己琢磨一下吧 


至于小黑,刚刚查了一下发现,战斗NPC和任务NPC也是2个人,战斗NPC没有任何要求,谁去都能打,之后跳转的NPC有3个参数,没接任务是一个,接任务但没拿黑羊是一个,拿了黑羊又是另外一个.想限制战斗NPC的话,可以参考席格的数据,自己加上道具或旗标 



#### 金属防具加工师 #### 


START_MSG:你想加工铜制防具吗??加工一次要一万元喔。铜铠1需要三块铜及其他材料,铜铠2需要铜铠1及七块铜,铜铠3要铜铠2及13块铜。铜兜1需要三块铜及其他材料,铜兜2需要铜兜1及七块铜,铜兜3要铜兜2及13块铜。 


MenuHead:选择你想要的防具 

NeedHead:需要的材料 


#### 铜铠1加工 #### 

CHANGEITEM:20270 

NeedItem:20286,13078 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*3&ITEM=13078&GOLD>=10000&reITEM>=1 

DelGold:10000 

DelItem:20286*3,13078*1 

AddItem:20270 


#### 铜铠2加工 #### 

CHANGEITEM:20271 

NeedItem:20286,20270 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*7&ITEM=20270&GOLD>=10000&reITEM>=1 

DelGold:10000 

DelItem:20286*7,20270*1 

AddItem:20271 


#### 铜铠3加工 #### 

CHANGEITEM:20272 

NeedItem:20286,20271 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*13&ITEM=20271&GOLD>=10000&reITEM>=1 

DelGold:10000 

DelItem:20286*13,20271*1 

AddItem:20272 


#### 铜兜1加工 #### 

CHANGEITEM:20273 

NeedItem:20286,13076 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*3&ITEM=13076&GOLD>=10000&reITEM>=1 

DelGold:10000 

DelItem:20286*3,13076*1 

AddItem:20273 


#### 铜兜2加工 #### 

CHANGEITEM:20274 

NeedItem:20286,20273 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*7&ITEM=20273&GOLD>=10000&reITEM>=1 

DelGold:10000 

DelItem:20286*7,20273*1 

AddItem:20274 


#### 铜兜3加工 #### 

CHANGEITEM:20275 

NeedItem:20286,20274 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*13&ITEM=20274&GOLD>=10000&reITEM>=1 

DelGold:10000 

DelItem:20286*13,20274*1 

AddItem:20275 


Q: 

CHANGEITEM:20270 

NeedItem:20286,13078 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*3&ITEM=13078&GOLD>=10000&reITEM>=1 

这些后面能附中文解释么? 


EVENT:Item=xxxx这里能举个例么? 

任务对话NPC的参数我已经懂了,只是不懂战斗NPC的选择性战斗而已,也就是刚才所说的限制战斗的条件 


A: 

CHANGEITEM:20270 

这项表示这个代码是用来干什么的,不知道有没有实际作用,照着写好了 

NeedItem:20286,13078 

这个表示需要道具铜块和最好的皮 

FREE:ENDEV=4&ENDEV=81&ITEM=20286*3&ITEM=13078&GOLD>=10000&reITEM>=1 

这个是具体的要求 ENDEV=4表示已成人;ENDEV=81表示做完金飞航空;ITEM=20286*3,需要3个铜块;ITEM=13078表示需要1个最好的皮;GOLD>=10000表示金钱要大于10000;reITEM>=1,道具栏至少留1位 



战斗NPC,还是看看席格的吧,不过又多了N多不明参数,这个我还没有测试过,你自己照着规律往下套吧...... 


entype:2 

askbattlemsg1:哦,你能夺得那面旗,表示你已经击败了我的 

askbattlemsg2:弟兄们! 

askbattlemsg3: 

askbattlemsg4:我们潜伏在这地下,秘密训练战士,就是要伺 

askbattlemsg5:机解放可怜的动物们,并且揭穿这伊甸园的黑 

askbattlemsg6:幕! 

startmsg:想带走拉斯基,就拿出实力来吧!-- 

dieact:1 

warpfl:60045 

warpx:6 

warpy:7 

endmsg:唉,我们的准备还是不够充分吗?………… 

item:19718 

steal:1 

enemyno:1791,1789,1789,1789,1789,1787,1787,1787,1787,1787 

deniedmsg:我看你还没有资格跟我较量吧~~先让我的弟兄们陪你玩玩…… 

alreadymsg:马上轮到你,急什么! 

onebattle:1 


Q: 

晕了,在席格那里我根本看不出哪里限制了,连标旗也没看见。。。 

entype和askbattlemsg又不知道什么意思,难道真的找不到限制战斗的窍门?! 


A: 

entype和askbattlemsg不用管他,照着抄下来就行了,前者估计就是和TYPE一样的,既然都是要做战斗NPC,这一项肯定是一样的.后者带着msg字样,一看就知道是显示台词用的,跟任务类NPC的使用方法应该差不多.重要的是item:19718这一项,这是黑旗,打席格必备的道具,但我现在看不出来放到这里的这个道具,究竟是做为任务限制的,还是战斗结束后消除的 


再来一个风城布鲁斯壮的吧,跟席格有些类似,不过还有些不同...... 


NEWNPCENEMY 


#####工头布鲁斯壮战斗型 

entype:2 

askbattlemsg1:怎么?你对钱没兴趣吗?? 

askbattlemsg2:年轻人,可千万不要迷惑呀。在你年轻力壮的时候多赚些钱。 

askbattlemsg3:风精灵??那只是存在于传说和幻想之中的神话而已。 

askbattlemsg4:难道肚子饿的时候,风精灵会给你食物吗? 

askbattlemsg5:那好吧,既然你屡劝不听,我可不能让你在这里蛊惑人心。 

startmsg:让我来秤秤你的斤两吧… 

dieact:1 

warpfl:7453 

warpx:9 

warpy:8 

enemyno:1887,1888,1888,1888,1888 

deniedmsg:你似乎是偷跑进来的… 

alreadymsg:等我先处理一下事情,先去伐木吧 

onebattle:1 

OVER 


NEWEVENT1: 

FREE:ENDEV=4&ENDEV=81&ENDEV=112&ENDEV=113&ENDEV=114&NOWEV=115 

WARP:7453,9,8 

endmsg:我~输~了。 

OVER 


NEWEVENT2: 

FREE:LV>0 

WARP:117,180,99 

endmsg:别想混水摸鱼! 

OVER 


Q: 

这个跟再见精灵王差不多 


NEWNPCENEMY 


entype:2 

askbattlemsg1:可恶呀!为什么你总是阴魂不散? 

askbattlemsg2:这次我一定要打垮你这该死的家伙~~~ 

startmsg:这次我一定要好好的教训你这没信用的家伙! 

dieact:1 

warpfl:60033 

warpx:17 

warpy:12 

enemyno:1786,1772,1773,1772,1773,1690,1782,1783,1784,1785 

deniedmsg:你是什么东西? 

alreadymsg:慢慢来,下一个就轮到你了… 

onebattle:1 

OVER 


NEWEVENT1: 

FREE:ENDEV=69&ENDEV=70&ENDEV=71&ENDEV=72&NOWEV=84 

WARP:60034,17,12 

endmsg:可恶呀~~~为什么又输了~~~ 

OVER 


NEWEVENT2: 

FREE:ENDEV=84 

WARP:60034,17,12 

endmsg:可恶呀~~~为什么又输了~~~ 

OVER 


NEWEVENT3: 

FREE:LV>0 

WARP:117,180,99 

endmsg:别想混水摸鱼! 

OVER 


究竟是什么地方限制战斗了呢?真是奇怪~~ 

我想应该跟 

NEWEVENT1: 

FREE:ENDEV=69&ENDEV=70&ENDEV=71&ENDEV=72&NOWEV=84 

WARP:60034,17,12 

endmsg:可恶呀~~~为什么又输了~~~ 

OVER 

这个有关 

我觉得前者是战斗时的对话和战C 

后者,就是有标旗这个。就决定限制战斗的标旗 

但是再认真看一下。就会发现地图不同 

你觉得呢? 


A: 

刚试过风城的,看来布鲁斯壮和精灵王是一个类型的,并没有所谓的限制,因为地图的问题,只要到达战斗NPC那里,就可以直接开战.至于后面的FREE:ENDEV=,是战胜后再判断的,如果符合条件,就跳转到任务NPC那里,如果不符合条件,比如布鲁斯壮,就会跳转到监狱 WARP:117,180,99就是监狱迷宫的起点. 

而席格是确实的道具限制,我进入60044地图,对话后不会战斗,造了一个黑旗后,就可以战斗了,所以还是要以席格的数据为参照物. 


A: 

刚刚试了下小黑的,只要加入item:xxxx就可以起到限制战斗的作用,具体如下: 


entype:2 

askbattlemsg1:我是黑暗精灵柯黑穆肯。 

askbattlemsg2:四位守护刚告诉我有人类闯入天空之岛的时候,我还不太敢相信呢。 

askbattlemsg3:没想到你还通过了四位守护的考验而来到这圣殿… 

askbattlemsg4:不过,我是不能让你就这么轻易见到精灵王大人的! 

askbattlemsg5:准备好接受我的挑战了吗? 

startmsg:好!那让你知道我柯黑穆肯的恐怖! 

dieact:1 

warpfl:30670 

warpx:15 

warpy:9 

endmsg:以一个人类的力量竟然可以打倒我柯黑穆肯,真是不可思议… 

item:19718 

enemyno:1691,1688,1687,1689,1686,1678,1679,1677,1680 

deniedmsg:我柯黑穆肯不与无名之辈交手。 

alreadymsg:凡事都有先来后到,不要那么想寻死… 

onebattle:1 


19718代表黑旗,当然,你也可以换成其他道具 



再说你那个NPC吧.我用已经做过一些任务的ID试,不是说话后没反应,就是弹出空白面版.但换了个新出生的人,就可以顺利接任务.不过接了任务得不到300的旗标......具体怎么回事我也搞不明白了- - 

你可以考虑将第一条的TYPE:REQUEST换成ACCEPT 

把最后一条的TYPE:ACCEPT和RequestMsg:分别换成TYPE:MESSAGE和NomalWindowMsg: 


Q: 

嗯~我也觉得这样好~ 

不过刚才我弄了个任务对话的NPC,就是接任务那个,到了游戏里就显示不出来了,究竟是什么问题~我把它拿出来,麻烦你帮我看下哪里出毛病了~ 


####接任务#### 


NomalMainMsg:说话~~ 



EventNo:300 

TYPE:REQUEST 

EVENT:LV>190&ENDEV=4&ENDEV=72 

RequestMsg:小子。看来你不简单~~~ 

ThanksMsg1:果然,你是否听说过水龙神?\n其实它真的存在的\n 

ThanksMsg2:传说在远古时代,光明精灵王和黑暗精灵王大战\n经过千年的战斗后,光明精灵王最终以自己的躯体将黑暗精灵王封印... 

ThanksMsg3:其实事实并不是这样,在最后一战的时候,光明精灵王的力量其实在黑暗精灵王之下\n在黑暗精灵王将要使出最后一击把光明精灵王击败的时候... 

ThanksMsg4:水龙神突然出现在他们面前。\n光明精灵王为了拯救苍生,恳求水龙神把力量分一些给他... 

ThanksMsg5:最终光明精灵王借着水龙神的力量将黑暗精灵王封印/n而作为得到水龙神力量的代价,光明精灵王也要被封印千年... 

ThanksMsg6:怎样,现在想见水龙神了吧~那好。我就告诉你它的行踪吧~~\n不过途中会有些麻烦的。现在你先去水龙洞看看吧.. 

EventEnd 



EventNo:-1 

TYPE:ACCEPT 

EVENT:LV>190 

RequestMsg:小子。看来你不简单~~~不过这里不收留未成年的小孩的...滚 

EventEnd 





NPCCREATE 



###### 龙神使者 ###### 

name=龙神使者 

floorid=2000 

borncenter=60,60,1,1 

dir=5 

createnum=1 

enemy=changeevent|file:my/shuilongsheng/shuilongsheng 

graphicname=16610 



哪里出问题了? 


A: 

改了几处,可以正常运行了,如下: 


NomalMainMsg:说话~~ 



EventNo:-1 

TYPE:MESSAGE 

EVENT:ENDEV=4&NOWEV=255 

NomalWindowMsg:快去看看吧 

EventEnd 

EventNo:255 

TYPE:REQUEST 

EVENT:LV>190&ENDEV=4&ENDEV=72 

RequestMsg:小子。看来你不简单~~~ 

ThanksMsg1:果然,你是否听说过水龙神?\n其实它真的存在的\n 

ThanksMsg2:传说在远古时代,光明精灵王和黑暗精灵王大战\n经过千年的战斗后,光明精灵王最终以自己的躯体将黑暗精灵王封印... 

ThanksMsg3:其实事实并不是这样,在最后一战的时候,光明精灵王的力量其实在黑暗精灵王之下\n在黑暗精灵王将要使出最后一击把光明精灵王击败的时候... 

ThanksMsg4:水龙神突然出现在他们面前。\n光明精灵王为了拯救苍生,恳求水龙神把力量分一些给他... 

ThanksMsg5:最终光明精灵王借着水龙神的力量将黑暗精灵王封印/n而作为得到水龙神力量的代价,光明精灵王也要被封印千年... 

ThanksMsg6:怎样,现在想见水龙神了吧~那好。我就告诉你它的行踪吧~~\n不过途中会有些麻烦的。现在你先去水龙洞看看吧.. 

EventEnd 


EventNo:-1 

TYPE:MESSAGE 

EVENT:LV>190 

NomalWindowMsg:小子。看来你不简单~~~不过这里不收留未成年的小孩的...滚 

EventEnd 


蓝色的部分是增加了一个接任务后的对话,不然会重复接任务,导致错误 

红色的部分,之前我举例举错了,旗标最大只能到8位,也就是255 

粉色的部分,因为还没有接任务,感觉用MESSAGE的参数更好些 

以上修改完毕,可以正常接任务,并取得旗标 


Q: 

嗯,好。 

不过你说旗标最大只能到8位。可你后面又接255 

也就是多少? 


A; 

8位是计算机2进制的说法,具体解释起来比较麻烦,反正你就知道添数字,最大只能到255就行了 


Q: 

不可以取消标旗的限制的吗? 


A: 

这个估计要反汇编游戏程序才可能实现吧,不是简单改改数字就行的. 


Q: 

我晕了... 

刚才我发现DATA文件里的一个名为 jobdaily.txt的文件 

里面全都是标旗 

有什么用的? 

还是只是一个说明文件? 


A: 

应该只是一些资料而已吧,没看到服务器运行时有调用这个文件. 

不过通过这个,倒是可以知道那些旗标系统已经使用过了,自己编任务时就可以避免重复 


Q: 

为什么我不能显示去任务NPC的? 

麻烦你帮我检测一下哪里错了 


这个是shuilongshen.create里面的: 



NPCCREATE 



###### 龙神使者 ###### 

name=龙神使者 

floorid=2000 

borncenter=63,64,1,1 

dir=5 

createnum=1 

enemy=shuilongshen|file:my/shuilongshen/shuilongshen1 

graphicname=16994 



###### PK ###### 

name=PK 

floorid=2000 

borncenter=63,65,1,1 

dir=5 

createnum=1 

enemy=shuilongshen|file:my/shuilongshen/shuilongshenpk.arg 

graphicname=16742 




这个是shuilongshenpk.arg里面的: 



entype:2 

askbattlemsg1:我是黑暗精灵柯黑穆肯。 

askbattlemsg2:四位守护刚告诉我有人类闯入天空之岛的时候,我还不太敢相信呢。 

askbattlemsg3:没想到你还通过了四位守护的考验而来到这圣殿… 

askbattlemsg4:不过,我是不能让你就这么轻易见到精灵王大人的! 

askbattlemsg5:准备好接受我的挑战了吗? 

startmsg:好!那让你知道我柯黑穆肯的恐怖! 

dieact:1 

warpfl:2000 

warpx:69 

warpy:64 

endmsg:以一个人类的力量竟然可以打倒我柯黑穆肯,真是不可思议… 

item:21055 

enemyno:1691,1688,1687,1689,1686,1678,1679,1677,1680 

deniedmsg:我柯黑穆肯不与无名之辈交手。 

alreadymsg:凡事都有先来后到,不要那么想寻死… 

onebattle:1 




这个是shuilongshen1里面的: 



####接任务#### 


NomalMainMsg:说话~~ 



EventNo:-1 

TYPE:MESSAGE 

EVENT:ENDEV=4&NOWEV=230 

NomalWindowMsg:快去看看吧 

EventEnd 


EventNo:230 

TYPE:REQUEST 

EVENT:LV>190&ENDEV=4&ENDEV=72 

RequestMsg:小子。看来你不简单~~~ 

ThanksMsg1:果然,你是否听说过水龙神?\n其实它真的存在的\n 

ThanksMsg2:传说在远古时代,光明精灵王和黑暗精灵王大战\n经过千年的战斗后,光明精灵王最终以自己的躯体将黑暗精灵王封印... 

ThanksMsg3:其实事实并不是这样,在最后一战的时候,光明精灵王的力量其实在黑暗精灵王之下\n在黑暗精灵王将要使出最后一击把光明精灵王击败的时候... 

ThanksMsg4:水龙神突然出现在他们面前。\n光明精灵王为了拯救苍生,恳求水龙神把力量分一些给他... 

ThanksMsg5:最终光明精灵王借着水龙神的力量将黑暗精灵王封印/n而作为得到水龙神力量的代价,光明精灵王也要被封印千年... 

ThanksMsg6:怎样,现在想见水龙神了吧~那好。我就告诉你它的行踪吧~~\n不过途中会有些麻烦的。现在你先去水龙洞看看吧.. 

EventEnd 


EventNo:-1 

TYPE:MESSAGE 

EVENT:LV>190 

NomalWindowMsg:小子。看来你不简单~~~不过这里不收留未成年的小孩的...滚 

EventEnd 




哪里出问题了? 


A: 

NPCCREATE 



###### 龙神使者 ###### 

name=龙神使者 

floorid=2000 

borncenter=63,64,1,1 

dir=5 

createnum=1 

enemy=shuilongshen|file:my/shuilongshen/shuilongshen1 

graphicname=16994 



###### PK ###### 

name=PK 

floorid=2000 

borncenter=63,65,1,1 

dir=5 

createnum=1 

enemy=shuilongshen|file:my/shuilongshen/shuilongshenpk.arg 

graphicname=16742 



问题在这里,给你转篇文章吧 


其中NPCCREATE为文件头,凡是create文件必须在文件开头+这个 

{}之间是一个NPC的设置 

floorid为NPC所在地图ID 

borncenter为NPC坐标 

time目前我也不明白为什么 

createnum似乎是创造数目?或者是在同create文件中的同名NPC的编号吧 

ignoreinvincibl似乎所有create中都是1 

graphicname为NPC图档id 

name为NPC名称 

enemy格式为NPC模块|file:所刷NPC的文件目录【是gmsv/data/npc下的绝对路径,如yucunpc/dj.arg的全部路径为gmsv/data/npc/yucunpc/dj.arg】 

NPC模块,模块一般为template文件 

目前常用模块有 

npcgen_warpman 一般用来作传送员 

npcgen_warp 一般是传送点 

devilpk和sb_dou 一般是战斗NPC 

changeevent 一般是任务NPC 

npcgen_shop 一般是商店NPC 

npcgen_man 一般是对话类型NPC··一般无用 


Q; 

这么说就是将shuilongshen改成changeevent就可以啦~~ 

file:my/shuilongshen/shuilongshenpk.arg这个应该没错吧`~~ 


A: 

任务型的改成changeevent,战斗型的sb_dou 

不要自己编,那样系统不认的..... 


发表评论: