找回密码
 立即注册
查看: 6430|回复: 2

[技术文章] 石器任务制造全问答

[复制链接]

96

主题

3

回帖

738

积分

超级版主

积分
738
金钱
228
贡献
411
注册时间
2023-11-3
发表于 2023-11-4 09:34:54 | 显示全部楼层 |阅读模式
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:
FREEV>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:
FREEV>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
EVENTV>190&ENDEV=4&ENDEV=72
RequestMsg:小子。看来你不简单~~~
ThanksMsg1:果然,你是否听说过水龙神?\n其实它真的存在的\n
ThanksMsg2:传说在远古时代,光明精灵王和黑暗精灵王大战\n经过千年的战斗后,光明精灵王最终以自己的躯体将黑暗精灵王封印...
ThanksMsg3:其实事实并不是这样,在最后一战的时候,光明精灵王的力量其实在黑暗精灵王之下\n在黑暗精灵王将要使出最后一击把光明精灵王击败的时候...
ThanksMsg4:水龙神突然出现在他们面前。\n光明精灵王为了拯救苍生,恳求水龙神把力量分一些给他...
ThanksMsg5:最终光明精灵王借着水龙神的力量将黑暗精灵王封印/n而作为得到水龙神力量的代价,光明精灵王也要被封印千年...
ThanksMsg6:怎样,现在想见水龙神了吧~那好。我就告诉你它的行踪吧~~\n不过途中会有些麻烦的。现在你先去水龙洞看看吧..
EventEnd


EventNo:-1
TYPE:ACCEPT
EVENTV>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
EVENTV>190&ENDEV=4&ENDEV=72
RequestMsg:小子。看来你不简单~~~
ThanksMsg1:果然,你是否听说过水龙神?\n其实它真的存在的\n
ThanksMsg2:传说在远古时代,光明精灵王和黑暗精灵王大战\n经过千年的战斗后,光明精灵王最终以自己的躯体将黑暗精灵王封印...
ThanksMsg3:其实事实并不是这样,在最后一战的时候,光明精灵王的力量其实在黑暗精灵王之下\n在黑暗精灵王将要使出最后一击把光明精灵王击败的时候...
ThanksMsg4:水龙神突然出现在他们面前。\n光明精灵王为了拯救苍生,恳求水龙神把力量分一些给他...
ThanksMsg5:最终光明精灵王借着水龙神的力量将黑暗精灵王封印/n而作为得到水龙神力量的代价,光明精灵王也要被封印千年...
ThanksMsg6:怎样,现在想见水龙神了吧~那好。我就告诉你它的行踪吧~~\n不过途中会有些麻烦的。现在你先去水龙洞看看吧..
EventEnd

EventNo:-1
TYPE:MESSAGE
EVENTV>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
EVENTV>190&ENDEV=4&ENDEV=72
RequestMsg:小子。看来你不简单~~~
ThanksMsg1:果然,你是否听说过水龙神?\n其实它真的存在的\n
ThanksMsg2:传说在远古时代,光明精灵王和黑暗精灵王大战\n经过千年的战斗后,光明精灵王最终以自己的躯体将黑暗精灵王封印...
ThanksMsg3:其实事实并不是这样,在最后一战的时候,光明精灵王的力量其实在黑暗精灵王之下\n在黑暗精灵王将要使出最后一击把光明精灵王击败的时候...
ThanksMsg4:水龙神突然出现在他们面前。\n光明精灵王为了拯救苍生,恳求水龙神把力量分一些给他...
ThanksMsg5:最终光明精灵王借着水龙神的力量将黑暗精灵王封印/n而作为得到水龙神力量的代价,光明精灵王也要被封印千年...
ThanksMsg6:怎样,现在想见水龙神了吧~那好。我就告诉你它的行踪吧~~\n不过途中会有些麻烦的。现在你先去水龙洞看看吧..
EventEnd

EventNo:-1
TYPE:MESSAGE
EVENTV>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
不要自己编,那样系统不认的.....


8

主题

222

回帖

737

积分

高级会员

积分
737
金钱
397
贡献
105
注册时间
2023-11-10
发表于 2023-12-21 22:28:40 | 显示全部楼层
我是来学习的!

2

主题

71

回帖

501

积分

中级会员

积分
501
金钱
428
贡献
0
注册时间
2024-3-22
发表于 2024-4-1 09:15:16 | 显示全部楼层
谢谢分享万分感谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|EGameol

GMT+8, 2024-11-21 17:50 , Processed in 0.060856 second(s), 21 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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