L2J的任务系统虽然有很大进展,但一直也是令人垢病的地方,很多任务无法圆满完成。尤其是转职任务,所以作者不得不加了一个小猫来实现转职。
经过偶两天的调试,终于对任务系统有了很大的完善,转职任务终于能顺利完成,不用再找小猫了,现将任务脚本的修正方法公布出来,并以精灵巡守的转职任务为例具体说明。
1、准备工作,一份L2J模拟器必不可少,另外请准备好一份解密的NPCNAME-CN.txt,questname-cn.txt和itemname-cn.txt。如果不会解密的请参照文蓝的贴,这里不再作具体说明。
2、打开questname-cn.txt找到成为精灵巡守这一任务,它的任务代码是407,进入模拟器下data\jscript\quest\407-pathtoElfscout\,打开_init_.py文件,最开头的一段是标明导入的JAVA类和执行时的目标位置,可是不理。下面一段请注意:
REORIA_LETTER2_ID = 1207 本文来自织梦
PRIGUNS_TEAR_LETTER1_ID = 1208
PRIGUNS_TEAR_LETTER2_ID = 1209
PRIGUNS_TEAR_LETTER3_ID = 1210
PRIGUNS_TEAR_LETTER4_ID = 1211
MORETTIS_HERB_ID = 1212
MORETTIS_LETTER_ID = 1214
PRIGUNS_LETTER_ID = 1215
HONORARY_GUARD_ID = 1216
REORIA_RECOMMENDATION_ID = 1217
RUSTED_KEY_ID = 1293
这里是任务物品的代码,等号右边数字是物品ID,具体请查itemname-cn.txt文件,我不一一作说明,其中1217是最后一步,大师Reisa的推荐信,GF中有了这件物品,然后找宗师Rains就可以完成转职,但是我们看到这里就差Rains的任务JS。
3、编写Rains的对话脚本,大家可以按照其它脚本的格式写,内容随便,只不过要注意存成utf-8的编码格式,文件名一定要以7228开头,因为查询npcname-cn.txt,Rains的ID是7228。这里我也给一个例子:7228-01.htm
<格式html>
<格式head>
<格式body>
Grand Master Rains:<格式br>
Welcome,hero!Now i'll change your Class to <格式font color="LEVEL">Scout<格式/font>!<格式br>May you good luck! 本文来自织梦
<格式/body>
<格式/html>
因为也有脚本编写,为了让文件内容能显示,所以我在必须要的内容前面都加了“格式”二字,大家写的时候自己去掉。
4、修正_init_.py文件。找到下面内容
elif npcId == 7328 and int(st.get("cond")) and st.getQuestItemsCount(HONORARY_GUARD_ID)>0 :
htmltext = "7328-07.htm"
st.takeItems(HONORARY_GUARD_ID,1)
st.giveItems(REORIA_RECOMMENDATION_ID,1)
st.set("cond","0")
st.setState(COMPLETED)
st.playSound("ItemSound.quest_finish")
return htmltext
我作一个大意解释,这里是说如果npc的id为7328也就是指你跟Reisa对话,此时你任务并没完成,同时又有物品HONORARY_GUARD_ID(名字记不太清楚了,反正是莫雷蒂给你的认证书),那么对话就显示7328-07.htm里的内容,同时把莫雷蒂的认证书收回,给你Reisa的认证书,响任务完成的音乐,任务就此结束。实际上并没有涉及到转职的内容。
copyright dedecms
dedecms.com
内容来自dedecms
copyright dedecms
由于现在大家手中的模拟器各不相同,有许多都是别的作者自己加以编译了的,偶手上的也一样,经过偶自己和几位朋友分别重新编译,增加了一些东西,具体是什么自己都记不清了.
所以也不知道大家手中的模拟器是否有setClassId这个方法,为了使人人都能完成任务,再提供一个修正方法,注意这两种方法偶都测试通过,绝无问题.
在_init_.py文件中找到
elif npcId == 7328 and int(st.get("cond")) and st.getQuestItemsCount(HONORARY_GUARD_ID)>0 :
htmltext = "7328-07.htm"
直到 return htmltext 这一段,将其换为:
elif npcId == 7328 and int(st.get("cond")) and st.getQuestItemsCount(HONORARY_GUARD_ID)>0 :
htmltext = "7328-07.htm"
st.takeItems(HONORARY_GUARD_ID,1)
st.giveItems(REORIA_RECOMMENDATION_ID,1)
st.set("cond","9")
elif npcId == 7228 and int(st.get("cond"))>=0: 织梦好,好织梦
if st.getQuestItemsCount(REORIA_RECOMMENDATION_ID)>0 :
htmltext = "7228-01.htm"
st.takeItems(REORIA_RECOMMENDATION_ID,1)
st.set("cond","0")
st.setState(COMPLETED)
st.playSound("ItemSound.quest_finish")
else:
htmltext = "7228-02.htm"
return htmltext
同样再在下面定义对话人物,加上STARTED.addTalkId(7228)表示任务中有跟7228号npc对话的内容.
然后编辑7228-01.htm为:
<html>
<head>
<body>
Grand Master Rains:<br>
Welcome,hero!I'm now changing your Class to<br><a action="bypass -h npc_%objectId%_change_class 22"><font color="LEVEL"> Scout</font></a>!<br>May you good luck!
</body>
</html>
再编写一个7228-02.htm:
<html>
<head>
<body>
Grand Master Rains:<br>
Greetings,hero!I wonder if you fit for <font color="LEVEL">Scout</font>?<br>Come back when you are ready!
1.76精品传奇_1.76天下毁灭_1.76复古传奇_英雄合击_中变靓装传奇_无忧传奇
传奇花屏补丁,花屏补丁,土城花屏补丁,盟重土城花屏补丁下载,土城花屏补丁下载,沙巴克花屏补丁,传奇土城花屏补丁下载
网站每天发布最新、最好的传奇版本下载和与传奇服务端配套开区传奇模版,网游技术教程全部免费下载!
无忧网络是目前唯一家所有的传奇服务端,传奇私服花屏补丁,盟重花屏补丁和传奇客户端下载都经过站长亲自测试并配有真实测试图!
所有的工具软件和传奇版本在发布之前,都会经过站长亲自测试,保证chuanqisf可以进入游戏,所有软件都无毒无插件!
本站声明:本站所有技术资料与下载资源均为网络搜集整理,并不代表本站的观点与立场,如有侵犯您的权益,请来信指出,本站将立即改正Copyright © 2002-2014 无忧网络 版权所有蜀ICP备09041899号