免费高清视频日韩_高清av一区二区三区_久久久久9999亚洲精品_先锋影音资源综合在线播放av_色视频在线观看福利_色综合久久中文综合久久97_男同在线观看_色诱亚洲精品久久久久久_在线宅男视频_99re免费视频精品全部_999视频在线免费观看_在线一区视频观看

打印 上一主題 下一主題

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

[復制鏈接]
跳轉到指定樓層
樓主
查看3288 | 回復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的文件名,例如你要
創建一個超級商人的npc要他出現在比奇省330:330的坐標。首先你要在.\market_def\文件夾中創建一個文本文件命名為“超級商人-0“(這里你可以使用英文,也可以使用中文,但后面的數字必須要是這個npc出現的地圖代碼!),然后把你寫好的腳本粘貼在里面。再打開merchant.txt文件,添加以下信息:;調用的文件 地圖 坐標x 坐標y 范圍 人物代碼 刷新時間超級商人 0 330 330 0 5 0相信大家可以看懂吧,這里面的空格不要緊,沒有規定信息之間必須空幾格。人物代碼自己換吧,現在的npc有46種模樣。和腳本的規則一樣,這兩個文件里面以;開頭的行就當作注釋部分不做編譯。
第2節

現在步入正題,談談腳本的制作。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>
----------------------------
這就是一個極其簡單的傳送腳本。我們下一節講稍微復雜的段落腳本。

第三節

這一節我們來講段落腳本。
復雜的腳本需要有數個[@main][@main-1]等等組成,從[@main]到[@main-1]之間稱為一個段落,他們之間是由goto命令來銜接的,#if滿足條件的話,#act就執行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 弓箭守衛 10 10
mapmove T131
;T131這個地圖是賭場的審判間,20*20的房間內有10個弓箭手。50級的紅名進去也是死...
-----------------------------
這個腳本如果不是紅名的話就會得到一個回城卷,是紅名的話就會有上述對話,選“相信”就關閉窗口離開,選“不信”就被傳送到t131地圖,受到10個弓箭手的優待,HOHO~~~這一節我們接觸了“<>”和“\”符號, 如果是“<選擇/@xuanze>”定義了要指向的段落,在游戲中就顯示黃色可點選的“選擇”字樣,如果“<選擇>”沒有定義要指向的段落,在游戲中就顯示紅色的“選擇”字樣。“\”是換行符號,文本文件和可以在游戲對話框中顯示的信息都可以用“\”符號來換行。不可以用回車來代替。

第四節

這一節我們來研究一下設置函數的屬性和概率問題我覺得腳本里面最難的也就是這個啦,其實我也沒有真正搞清其中的奧秘,只知道其中的一些使用的方法。現在如果想制作腳本最主要的也就是做任務了吧,我看了盛大的命運之刃和制作煉獄的任務,其中都要定義一些函數值,就拿肉店任務來說,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>沙巴克城門的狀態等等...另外還有現實不同玩家信息的命令<$USERNAME>,你手中的兵器<$USERWEAPON>。這些都用于加載在文本信息當中顯示。

第五節

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


第六節

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

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

[@main]
#if
check [099] 1
#say
<$USERNAME>如果你剛才已經下過線了,\那請到監獄長那里重新登記吧!\要不你是出不去的!<好的/@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
監獄長-0128.txt內容如下:
[@main]
#if
check [099] 0
#say
<$USERNAME>你將被重新送往監獄!\時間將重新開始計算!誰叫你中途下線的呀,活該!<好的/@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里加入兩行:
監獄長 0 0128 3 5 0 8
地牢看管員 0 0162 6 15 0 15


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

使用道具 舉報

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

使用道具 舉報

本版積分規則

樱桃视频在线观看一区| 亚洲男人电影天堂| 国产精品99一区| 欧美大胆a人体大胆做受| 久久影院电视剧免费观看| 神马影院午夜我不卡| 日韩在线欧美| 国内偷自视频区视频综合 | 亚洲精品国产综合久久| 加勒比一区二区三区在线| 一区二区三区成人| 第四色亚洲色图| 国产欧美精品区一区二区三区| 成人手机在线播放| 免费高清在线视频一区·| 亚洲伊人久久大香线蕉av| 精品国产91| 国产91精品网站| 国内视频在线精品| 俺去啦;欧美日韩| 懂色aⅴ精品一区二区三区| 亚洲欧美国产高清va在线播| 色网站在线看| 日韩欧美国产一二三区| 免费网站成人| 精品不卡在线视频| 国产免费不卡| 中国人与牲禽动交精品| 日韩一区二区三区在线免费观看| 亚洲欧美中文字幕在线一区| 日韩av中字| 超碰91人人草人人干| 国产精品777777在线播放| 欧美精品免费在线| 国产区精品视频在线观看豆花| 97在线观看视频| 日韩欧美视频| 99视频在线免费观看| 欧美aa国产视频| 欧美日韩喷水| 国产精品456露脸| 黑森林精品导航| 亚洲成人自拍一区| а天堂8中文最新版在线官网| 欧美系列亚洲系列| 在线观看福利电影| 精品国偷自产在线视频99| 粉嫩av一区二区| 91系列在线播放| 国产偷自视频区视频一区二区| 色狠狠久久av五月综合| 成人18精品视频| 石原莉奈一区二区三区高清在线| 欧美日韩精品在线视频| av在线免费网站| x99av成人免费| 精品一区二区三区在线| 久久国产精品久久| 丁香六月久久综合狠狠色| 亚洲an天堂an在线观看| 在线视频欧美精品| 精品成人av| 国产日韩欧美另类| 日本在线不卡视频| 国产羞羞视频| 5566中文字幕一区二区电影| 日韩经典一区| 国产一区红桃视频| 国产乱人伦精品一区二区在线观看| www黄色在线| 欧美日韩一区二区三区不卡| 日本黄色一区| 操人视频欧美| 久久久三级国产网站| 国产尤物视频在线| 色哟哟网站入口亚洲精品| 久久国产精品亚洲人一区二区三区 | 丝袜美女写真福利视频| 成人aaaa| 日韩精品 欧美| 色偷偷综合社区| 久久久久久久久久久妇女 | 依依成人在线| 亚洲国产日韩a在线播放性色| 婷婷综合一区| 91最新在线观看| 久久久久国产视频| 国产一区二区三区日韩| 成人短视频在线看| 成人三级在线视频| 香蕉视频在线网站| 亚洲变态欧美另类捆绑| 久久久精品综合| 成人免费va视频| 久久久久久99精品| 国产欧美一区二区精品秋霞影院| 久久中文在线| 精品一区二区三区免费毛片爱| 精品久久一区| 亚洲欧美精品在线观看| 一本色道久久| 含羞草久久爱69一区| 国产欧美日韩精品一区| 国产麻花豆剧传媒精品mv在线| 青青草视频一区| 久久青草免费| 91在线视频精品| 国产精品视频你懂的| 青草在线视频在线观看| 国产精品毛片a∨一区二区三区|国 | jizzjizzxxxx| 欧美成人vps| 91精品国产视频| 男女视频在线看| 亚洲视频精品在线| 亚洲黄色影片| 中文字幕在线观| 性欧美xxxx交| 91啦中文在线观看| 精品丝袜在线| 日韩电影在线播放| 欧美丝袜丝交足nylons图片| 网友自拍区视频精品| avav在线看| 中文字幕在线精品| 免费成人美女在线观看.| 黄色大片在线免费观看| 国产不卡一区二区在线播放| 久久综合av免费| 久久久加勒比| 亚洲精品天堂成人片av在线播放| 日韩欧美一区二区在线视频| 亚洲视频中文| 国产女主播在线直播| 国产免费一区视频观看免费| 亚洲三级电影网站| 亚洲影院天堂中文av色| free性亚洲| 国产成人精品综合| 一区二区久久久久久| 要久久电视剧全集免费| 国产视频三区| 国产在线久久久| 欧美性猛交xxxx黑人| 91精品亚洲| 成人jjav| 久久精品国产理论片免费| 91精品国产综合久久久蜜臀粉嫩 | 亚洲欧美视频一区| 成人福利一区| 国产黄色网页| 国产精品大陆在线观看| 午夜欧美在线一二页| 93在线视频精品免费观看| 欧美偷拍视频| 免费h精品视频在线播放| 日韩精品综合一本久道在线视频| 奇米四色…亚洲| 人人鲁人人莫人人爱精品| 国产深夜男女无套内射| 久久久久久国产免费| 亚洲精品久久久久久国产精华液 | 一区二区亚洲精品国产| 成人精品免费看| 亚洲国产天堂| 国产精品一区二区羞羞答答| 国产91精品最新在线播放| 黄色一区二区在线观看| 亚洲欧美久久久| 日韩一区二区三区在线免费观看| 黄在线观看网站| 国产91精品网站| 欧美日韩一区二区三区四区五区| 日韩亚洲国产精品| av高清一区| 成人免费在线观看网站| 成人妇女免费播放久久久| 欧美精品久久一区二区三区| 青青草成人在线观看| 韩国一区二区三区视频| 意大利激情丛林无删减版dvd| 国产福利久久精品| 亚洲精品在线91| 日韩一区在线免费观看| 亚洲小说欧美另类婷婷| 手机av免费在线| 丰满少妇在线观看| 97在线资源站| 综合网中文字幕| 福利一区视频在线观看| 国产在线精品一区二区不卡了| 精品国产导航| 91社区在线观看播放| 日韩精品在线中文字幕| 国产aaa精品| 亚洲第一视频网| 亚洲国产一区二区三区| 国产精品性做久久久久久| 欧美日韩老妇| 久久91导航|