岛国禁片免费看-久久久国产精品无码-日美欧美A片一区二区-国产精品高清无吗人成午小草 -国产又粗又大又长免费麻豆-相泽南一区二区无码流出版

打印 上一主題 下一主題

[技術文章] 新手寫腳本必看腳本教程-傳奇腳本代碼

[復制鏈接]
跳轉到指定樓層
樓主
查看3342 | 回復1 | 2022-9-3 09:03:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
很多人都或多或少的接觸過傳奇服務器端腳本文件,也很想自己制作一點腳本來試試,但又不敢亂碰生怕改壞一點東西造成不能運行服務器端,其實“腳本語言“(我們暫且稱他為一種語言)和C語言等等程序語言比起來那真是不值得一提。看完我給大家寫的這篇文章后,你就自己偷著*吧...可以說傳奇服務器端所有的重點都集中在\mir200\envir\中,這里面記載著所有服務器要在游戲中表現的東西。在游戲中的npc信息也在其中,npcs.txt文件和merchant.txt文件中記載著npc的名稱、出現的地圖、坐標、范圍和形象代碼。你要問兩個記載的npc有什么不同?為什么不和在一起算了?我來告訴你,npcs.txt中記載的npc是對話型npc,在進入游戲后,不能夠使用@reloadnpc刷新信息的npc。而merchant.txt是交易型和任務型npc,可以使用@reloadnpc刷新信息。但我也做過試驗,兩種npc互換后也可以使用,好像沒有太大的限制。npcs.txt對應的文件在.\npc_def\文件夾中merchant.txt對應的文件在.\market_def\文件夾中。你如果要添加npc的時候,要注意npc的文件名,例如你要
創(chuàng)建一個超級商人的npc要他出現在比奇省330:330的坐標。首先你要在.\market_def\文件夾中創(chuàng)建一個文本文件命名為“超級商人-0“(這里你可以使用英文,也可以使用中文,但后面的數字必須要是這個npc出現的地圖代碼!),然后把你寫好的腳本粘貼在里面。再打開merchant.txt文件,添加以下信息:;調用的文件 地圖 坐標x 坐標y 范圍 人物代碼 刷新時間超級商人 0 330 330 0 5 0相信大家可以看懂吧,這里面的空格不要緊,沒有規(guī)定信息之間必須空幾格。人物代碼自己換吧,現在的npc有46種模樣。和腳本的規(guī)則一樣,這兩個文件里面以;開頭的行就當作注釋部分不做編譯。
第2節(jié)

現在步入正題,談談腳本的制作。npc腳本分為兩種,一種是不做交易的npc,一種是與之交易的npc。我們先來講不做交易的npc這類腳本的開頭一般以[@main]開頭,但并不是必須以他開頭,main的英文意思是“主體,主要部分”的意思,所以用他這是個好習慣。接著就是條件語句#if,和他對應的#act,就是說如果...那么...,我在之前的《腳本語言之不完全公略》一文中提到了一系列的測試語句。#if后面可以跟這個測試語句,比如測試金錢checkgold,測試級別checklevel等等,這些測試語句可以連用,挑選滿足這所有值的人。如果你想不要任何條件的話就把他留空,后面直接接#act.接著就是#act,如果有人滿足了上述條件,那么...我們可以使用一些命令應用于他,比如take拿走他身上的什么東西,mapmove把他移動到什么地圖,set賦予他什么函數值等等。這些語句你也可以連著使用。后面也可以跟文字,那么就在傳奇里面顯示為對話。下面是#ELSEACT,如果沒有滿足#if條件的,就不再運行#act后面的指令,直接運行#ELSEACT后面的指令。后面也可以跟文字,那么就在傳奇里面顯示為對話。#say和#elsesay的用法和#act#elsesay的用法相同。
范例:
----------------------------
;傳送豬7的npc腳本
[@main]
#if
checkgold 10000
checklevel 30
#act
take 金幣 10000
map d717
break
#elsesay
你有10000個金幣嗎?要不然就是你沒有30級。我不能把你傳送到豬7了!自己跑吧。
<關 閉/@exit>
----------------------------
這就是一個極其簡單的傳送腳本。我們下一節(jié)講稍微復雜的段落腳本。

第三節(jié)

這一節(jié)我們來講段落腳本。
復雜的腳本需要有數個[@main][@main-1]等等組成,從[@main]到[@main-1]之間稱為一個段落,他們之間是由goto命令來銜接的,#if滿足條件的話,#act就執(zhí)行goto @main-1命令,轉向[@main-1]段落。值得一提的是goto是腳本自動做出轉換段落的命令,還有一種轉換段落的方式,那就是要玩家自己選擇段落。<go to main-1/@main-1>這部分將在游戲中顯示為黃色可以點選的信息,玩家鼠標選擇后轉向main-1段落。
范例:
----------------------------
;贈送回城卷腳本
[@main]
#if
checkpkpoint 2
#act
goto @main-1
#elseact
give 回城卷 1

[@main-1]
你是紅名啊!別想讓我可憐你,你是個十足的惡魔!什么?怒視著我干嗎?信不信我現在就讓你去死?<相信,我很害怕,我現在就走./@exit>
<不信,我殺人不眨眼,還怕你?/@main-2>
[@main-2]
#if
#act
Param1 t131
Param2 10
Param3 10
MonGen 弓箭守衛(wèi) 10 10
mapmove T131
;T131這個地圖是賭場的審判間,20*20的房間內有10個弓箭手。50級的紅名進去也是死...
-----------------------------
這個腳本如果不是紅名的話就會得到一個回城卷,是紅名的話就會有上述對話,選“相信”就關閉窗口離開,選“不信”就被傳送到t131地圖,受到10個弓箭手的優(yōu)待,HOHO~~~這一節(jié)我們接觸了“<>”和“\”符號, 如果是“<選擇/@xuanze>”定義了要指向的段落,在游戲中就顯示黃色可點選的“選擇”字樣,如果“<選擇>”沒有定義要指向的段落,在游戲中就顯示紅色的“選擇”字樣。“\”是換行符號,文本文件和可以在游戲對話框中顯示的信息都可以用“\”符號來換行。不可以用回車來代替。

第四節(jié)

這一節(jié)我們來研究一下設置函數的屬性和概率問題我覺得腳本里面最難的也就是這個啦,其實我也沒有真正搞清其中的奧秘,只知道其中的一些使用的方法。現在如果想制作腳本最主要的也就是做任務了吧,我看了盛大的命運之刃和制作煉獄的任務,其中都要定義一些函數值,就拿肉店任務來說,check [301] 1如果測試到某人[301]函數的值是1的話,那么#act goto @Q301否則#elseact goto @normal,那么如何定義某人[301]函數呢?用set [301] 1命令。但是現在我還沒有弄清楚[]中所能定義的數字到底都有多少個,也不能亂定義數字的值,那樣將會打亂原有任務。而且在盛大取消的賭場腳本里面有equal、mov好像也是檢查函數定義函數的命令,但是只有在玩骰子的npc里面出現,像是專么測試骰子點數的函數,有待研究。還有一種概率命令,那就是random,我們來看一個范例。
范例:
----------------
[@main]
#IF
random 2
#ACT
goto @QUEST
#ELSEACT
goto @normal

[@normal]
你好,歡迎你來自由自在論壇<關 閉/@exit>

[@quest]
我們的網址是:黑鳥網絡<關 閉/@exit>
----------------
這樣一個腳本就牽扯一個概率問題,你在和這個npc對話的時候,看到2種信息的幾率各有百分之50,也就是說每次你看到的信息都是隨機的其中一個。注意這里面是2選1的時候,random的值就取2。在顯示文本的時候,還存在一些隨服務器或不同玩家而自動變換的信息,這里我們就不得不提起沙巴克城。我們知道,沙巴克的npc總要顯示“該城堡的主人是xxx,我們對xxx行會的成員提供20%的折扣”那么不可能在每次沙巴克換主人后更改npc腳本,于是就有了這些隨服務器變換的文本信息,<$LORD>顯示為沙巴克城主的姓名,<$OWNERGUILD>顯示為占領沙巴克的行會名稱,<$CASTLEGOLD>顯示沙巴克城堡的金錢,<$TODAYINCOME>顯示為沙巴克今天的收入,<$CASTLEDOORSTATE>沙巴克城門的狀態(tài)等等...另外還有現實不同玩家信息的命令<$USERNAME>,你手中的兵器<$USERWEAPON>。這些都用于加載在文本信息當中顯示。

第五節(jié)

這一節(jié)我們來介紹交易類型npc
交易類型的npc于普通npc腳本大同小異,但是文件頭部需要定義npc的屬性。拿土城武器店npc做例子。
開頭有個%100的字樣,在石墓陣武器店的開頭是%200,有什么區(qū)別呢?原來這是定義這個npc物價的語句。%200就是普通物價的2倍。那么接下來的+5、+6、+43是什么意思呢?這就定義了這個npc只能和你交易武器,也就是說你在鐵匠那里不能賣手鐲。具體什么數字的組合代表什么npc,我在先前的《腳本語言之不完全公略》一文中有詳解。你要是想要npc萬能的話,可以在開頭把要+的數字都給它+上好了。接下來就是腳本正文,和我們前幾講的差不多,但其中用到了一些固定含義的語言,不能
當作他用。
@s_repair 特殊修理
@buy 購買東西
@sell 出售東西
@repair 普通修理
@makedrug 制作毒藥
@storage 保管物品
@getback 取回物品
@exit 關閉窗口
@upgradenow 升級武器
@getbackupgnow 取回武器
交易型npc的結尾會有[goods]段落,這就是npc庫存物品的顯示欄,下面的寫物品有一定的規(guī)則:
;名稱 數量 時間
木劍 10 10
八荒 10 10
凝霜 10 10
煉獄 10 10
;屠龍 10 10
還是那句話,不想顯示的物品前面你就打上";"號。如果你想讓武器店里面賣藥,不改上面"+數字"的情況下,強行在[goods]里面加強效金創(chuàng)藥 10 10 反正我沒有試過,刷不刷的出來你自己試嘍...
范例:
;武器店,帶特修,帶倉庫
%100
+5
+6
+43
; -------------(這里必須空一行)
[@main]
#if
#act
hello,<$USERNAME>,歡迎光臨自由自在論壇我們將提供給你最優(yōu)惠的服務。
<買/@buy><賣/@sell><修理/@repair><特殊修理/@s_repair><保管/@storage>東西
<找回/@getback>東西<關閉/@exit>

[@buy]
您想買些什么武器?\ \ <返 回/@Main>


[@sell]
給我您要賣的武器.\ \ <返 回/@Main>

[@repair]
您要修理武器嗎?給我您要修理的武器.\ <返 回/@Main>
;物品修理前的對話框

[~@repair]
看起來修好了,歡迎下次再來.\ <返 回/@Main>
;物品修理后的對話框,注意這里的[~@repair]
;特修不需要添加類似對應段落,只在開頭有<特殊修理/@s_repair>就可以,
其對應段落寫在m2server.exe中。
[@storage]
需要保管什么東西?\ \ <返 回/@Main>

[@getback]
請看目錄決定找什么東西。\ \ <返 回/@Main>

[goods]
;名稱 數量 時間
煉獄 10 10
銀蛇 10 10
魔杖 10 10
無極棍 10 10
井中月 10 10
血飲 10 10
命運之刃 10 10
裁決之杖 10 10
龍紋劍 10 10
骨玉權杖 10 10
赤血魔劍 10 10
嗜魂法杖 10 10
屠龍 10 10
超級銀蛇 10 10


第六節(jié)

談到交易類型npc腳本,我們不得不提倉庫捆東西的腳本,看了才知道如此簡單,就是用到了checkitem、take、give這幾個命令。先檢查你的包裹里面是否有這類物品,有了就拿取它們,給你一樣東西。捆金條和現在很多人自己制作的"武器升級"腳本也是這種原理,我看過一些"武器升級"的腳本,她和盛大的武器升級系統(tǒng)相比簡直就是小兒科的玩藝,就是你拿一些東西去換另一種東西的腳本。我們來看個范例。
范例:
------------------
%100
[@main]
你好,歡迎光臨自由自在論壇,我們會竭誠為您服務。您想<捆/@mbind>東西
<關 閉/@exit>

[@mbind]
#if
#say
你具體想捆什么東西?目前我能捆的就這些啦,捆一次手工費100塊。
<捆/@ch_bind1>強效金創(chuàng)藥<返 回/@main>
[@ch_bind1]
#if
checkitem 強效金創(chuàng)藥 6
#act
goto @ch_bind1_1
#elsesay
你沒有帶齊東西啊,我沒有辦法幫你捆。<離 開/@exit>
[@ch_bind1_1]
#if
checkgold 100
checkitem 強效金創(chuàng)藥 6
#ACT
take 金幣 100
take 強效金創(chuàng)藥 6
give 超級金創(chuàng)藥 1
#SAY
已經捆好了... 我的技術不錯吧.. 還有要捆的就拿給我吧..
<繼續(xù)捆/@mbind> <離 開/@exit>
#ELSESAY
你都沒有錢捆東西,還捆什么? 快走吧.... <離 開/@exit>

[@main]
#if
check [099] 1
#say
<$USERNAME>如果你剛才已經下過線了,\那請到監(jiān)獄長那里重新登記吧!\要不你是出不去的!<好的/@cxsz> 我喜歡<呆在這里/@exit> <我沒有下過線/@exit>
#elseact
goto @cd
[@cd]
<$USERNAME>你是來看望你朋友的嗎?你要回去了?<回土城/@yes> <再等會吧/@exit>
[@cxsz]
#act
set [099] 0
mapmove 0128
break
[@yes]
#act
mapmove 3 320 320
break
監(jiān)獄長-0128.txt內容如下:
[@main]
#if
check [099] 0
#say
<$USERNAME>你將被重新送往監(jiān)獄!\時間將重新開始計算!誰叫你中途下線的呀,活該!<好的/@cxsz> 我喜歡<呆在這里/@exit>
[@cxsz]
#act
set [099] 1
timerecall 120
mapmove 0162
break
#elseact
goto @cd
[@cd]
<$USERNAME>希望下次不要再見到你了哦<回土城/@bye> 我還想<再呆會兒/@exit>
[@bye]
#act
set [099] 0
mapmove 3 320 320
break
再在Npcs.txt里加入兩行:
監(jiān)獄長 0 0128 3 5 0 8
地牢看管員 0 0162 6 15 0 15


上一篇:傳奇版本男女衣服互換腳本保持原有屬性思路摘要:男女衣服互換保持原有屬性請在 衣服互換.txt 里修改你 ...
下一篇:DBC怪物數據分解大全傳奇版本數據庫字段說明摘要:下面是DIYGM論壇為您提供的DBC怪物數據分解大全 : mo ...
回復

使用道具 舉報

沙發(fā)
fayard | 2022-11-27 15:34:20 | 只看該作者
寫的很詳細,通俗易懂,感謝分享,學習了
回復

使用道具 舉報

本版積分規(guī)則

日韩精品网站| 成人在线观看免费播放| 亚洲香蕉网站| 三级一区在线视频先锋| 国模视频一区| 国产精品2区| 天堂网av成人| 免费在线欧美视频| 日本不卡在线视频| 超碰精品在线观看| 久久性色av| 日韩精品欧美精品| 欧美日韩一区二区三区在线电影 | 91成人免费| 青青久久精品| 女一区二区三区| 麻豆91精品| 青青草97国产精品免费观看 | 亚洲一区二区三区中文字幕在线观看| 免费久久精品| 成人免费网站www网站高清 | 欧美综合另类| 国模视频一区| 98视频精品全部国产| 日韩av有码| 欧美三级一区| 美女国产一区| 欧美国产亚洲精品| 99香蕉国产精品偷在线观看 | 麻豆视频在线观看免费网站黄| 超碰成人在线观看| 美女高潮久久久| 蜜桃精品视频在线| 国产欧美一级| 香蕉久久99| 亚洲18在线| 色999久久久精品人人澡69| 五月国产精品| 免费在线观看一区二区三区| 国产传媒欧美日韩成人精品大片| 日韩视频在线一区二区三区| 亚洲精品免费观看| 很黄很黄激情成人| 久久亚洲道色| 乱码第一页成人| 日韩福利视频导航| 校园春色亚洲| 91精品久久久久久久蜜月| 日韩成人在线一区| 国产99久久| 日本不卡123| 一本久道综合久久精品| 国产精品免费99久久久| 91亚洲人成网污www| 日韩成人视屏| 成人在线观看免费播放| 国产一区二区三区四区三区四| 日本成人中文字幕在线视频| 亚洲欧美视频| 精品欧美视频| 久久免费影院| 亚洲激情二区| 日韩成人视屏| 久久精品国产网站| 黄色免费成人| 日韩电影在线免费| 青青草国产一区二区三区| 亚洲婷婷在线| 欧美男gay| 午夜欧美巨大性欧美巨大| 欧美一级大片在线视频| 亚洲特色特黄| 国产91在线播放精品| 日本久久一区| aa国产精品| 日韩久久99| 欧美国产日本| 午夜视频一区二区在线观看 | 精品国产不卡| 免费一区视频| 在线精品亚洲| 国产成人亚洲一区二区三区| sm捆绑调教国产免费网站在线观看| 自拍亚洲一区| 群体交乱之放荡娇妻一区二区| 久久久久.com| 久久影院一区二区三区| 偷拍自拍一区| 香蕉免费一区二区三区在线观看| 中文字幕av亚洲精品一部二部| 成午夜精品一区二区三区软件| **爰片久久毛片| 精品高清久久| 一区二区日本视频| 欧美福利在线播放网址导航| 午夜一区在线| 亚洲高清在线| 欧美黄色aaaa| 精品视频在线一区| 99久久这里只有精品| 亚洲午夜在线| 精品国产乱码| 欧美精品一区二区三区精品| 久久久久久久高潮| 日韩国产高清在线| 粉嫩av一区二区三区四区五区| 国产乱码精品一区二区三区亚洲人 | 午夜在线精品偷拍| 欧洲福利电影| 国产欧美二区| 亚洲精品自拍| 日韩精品免费视频一区二区三区 | 久久久91麻豆精品国产一区| 国产精品成人3p一区二区三区 | 欧美一级精品| 中文一区一区三区免费在线观看| 亚洲黑人在线| 国产韩日影视精品| 久久久久99| 中文字幕一区二区三区四区久久 | 亚洲一区视频| 麻豆精品网站| 天堂在线中文网官网| 亚洲午夜黄色| 国产成人精品123区免费视频| 中文精品电影| 欧美亚洲精品在线| 国产经典一区| 欧美福利视频| 国产日产精品一区二区三区四区的观看方式 | 国内精品久久久久久久影视蜜臀 | 日韩免费特黄一二三区| 视频在线观看91| 蜜臀久久久久久久| 日本免费久久| 国产精品久久久久毛片大屁完整版| 亚洲国产日本| 91嫩草精品| 亚洲一区欧美激情| 国产一区二区av在线| 亚洲国产精品一区| 麻豆久久一区| 亚洲免费综合| 久久精品一区| 九九99久久精品在免费线bt| 天天做夜夜做人人爱精品| 免费观看在线综合色| 99精品热6080yy久久| 欧美人与拘性视交免费看| 亚洲第一伊人| 成人深夜福利| 精品理论电影| 国产探花一区二区| 中文字幕一区日韩精品| 日本视频一区二区| 亚洲先锋成人| 黄色网一区二区| 欧美影院在线| 美日韩一级片在线观看| bbw在线视频| 久草精品视频| 欧美色一级片| 国产精品一区2区3区| 欧美日韩综合| 香蕉视频一区| 日韩av在线播放中文字幕| 麻豆免费在线| 欧美精品国产| 亚洲久久在线| 亚洲专区视频| 国产精品嫩草99av在线| 成人黄色免费观看| 免费国产自线拍一欧美视频| 蜜臀av性久久久久蜜臀aⅴ| 性欧美xxxx大乳国产app| av一区二区高清| 91精品秘密在线观看| 亚洲成人99| 久久黄色影院| 免费久久精品| 女人av一区| 精品欧美激情在线观看| 国产精品15p| 精品久久视频| 麻豆一区二区| 免费看亚洲片| 美女一区二区视频| 国产精品毛片视频| 一本久久综合| 久久精品国产在热久久| 激情亚洲另类图片区小说区| 色综合天天色| 激情欧美日韩一区| 欧洲大片精品免费永久看nba| 免费成人在线视频观看| 女一区二区三区| 欧美高清一级片| 久久69成人| 亚洲欧洲自拍| 91精品99|