傳奇幸運大轉盤腳本
『壹』 傳奇抽獎腳本怎麼寫的
腳本說明:這個核心代碼只有兩行 呵呵
首先在\MirServer\Mir200\Envir\QuestDiary\狂神科技\抽獎.txt
內添加代碼2
然後是在\MirServer\Mir200\Envir\QuestDiary\狂神科技\
裡面新建一個 聖戰.txt
寫上如:
聖戰項鏈
聖戰戒指
祝福油
再然後是在\MirServer\Mir200\Envir\QuestDiary\狂神科技\
裡面新建一個 雷霆.txt
寫上如:
雷霆項鏈
雷霆戒指
然後自己新建一個NPC
[@main]
<抽獎/@抽獎>
[@抽獎]
;#if 可以讀作 漢字 如果
#IF
;RANDOM 是隨即 2表示幾率 數字畢歲越打幾率越小
RANDOM 2
;#ACT 是說下面的內容當作腳本來執行 相對的是
;#SAY (下面的當作字元來執行,就是顯示出來)
;不寫 #ACT #SAY 默認的是#SAY 這個可以參照@MAIN那個函數
#ACT
;MOV 傳遞 把後面這個數字或字元或變數 傳遞給前面這個變數
;這里 S2 這里代表的是路徑 就是你儲存 裝備列表的路徑
MOV S2 .\QuestDiary\狂神科技\消數搏雷霆.txt
;下面#CALL 是調用 就是調用 代碼2那一部分 剛才第一步讓你保存了的
#CALL [\狂神科技\抽獎.txt] @抽獎
;GuildNoticeMsg 是提示框內顯示的文字 255是字的顏色0-255都可以
;241是背景色0-255都可以 下面就是你要提示的文字了
GuildNoticeMsg 255 241 玩家[%s]使用狂神科技抽獎腳本抽取了<$STR(S1)>
;BREAK 是結束 跳出來的意思 如果第一個#IF 如果條件成立 那麼到這里結束
;下面的代碼不執行
BREAK
;下面的代碼可以參照上面的注釋 都是一樣的
#IF
#ACT
MOV S2 .\QuestDiary\狂拿祥神科技\聖戰.txt
#CALL [\狂神科技\抽獎.txt] @抽獎
GuildNoticeMsg 255 241 玩家[%s]使用狂神科技抽獎腳本抽取了<$STR(S1)>
BREAK
;代碼2
[@抽獎]
{
#ACT
GetRandomText <$STR(S2)> S1
GIVE <$STR(S1)> 1
}
『貳』 傳奇抽獎腳本問題
根據你的說法,我估計是你的腳本里有錯誤,有錯誤的獎勵物品,而您的物品資料庫里又沒,或者寫錯了,請仔細查一下腳本
『叄』 傳奇私服抽獎腳本的問題
Gmexecute 出來 時乘六龍ゞ盔 Self
這句話就相當於你在游戲中輸入了 @出來 時乘六龍ゞ盔 (你的角色名),並且假定你的許可權為最高許可權(即GM許可權)
但是命令配置中可能沒有@出來這個命令,它的原型可能是@make即製造命令,你可以用
Gmexecute make 時乘六龍ゞ盔 Self
試試看。
當然,這個語句的用處是給你裝備,NPC腳本有專門的命令是
give 時乘六龍ゞ盔 1
推薦你使用下面的這句話,無論是從效率還是通用性還是安全性的角度。
『肆』 《傳奇》腳本該如何執行
不知道你是什麼引擎,有的引擎執行這個腳本要麻煩一些,有的就非常簡單。
-------------------------HERO引擎實現攻擊目標觸發--------------------------------
首先在地圖配置文件MapInfo.txt裡面添加 @Attack
比如 [3 盟重土城] HITMON(@Attack ) 這個就代表在盟重土城攻擊目標時才觸發,其他地圖則不觸發,如果想在其他地圖觸發,那就在相應的地圖後面加上這個參數。
然後在 QFunction-0.txt 這個系統固定腳本文件中添加一段執行腳本
[@Attack]
#IF
checkitemw 開天 1 ;檢測手上必須拿的是開天,才觸發腳本
CHECKHITMONNAME <$STR(S0)> ;檢測攻擊的目標取得目標名稱
#ACT
SendMsg 0 提示:<$STR(S0)>被<$USERNAME>手中的"開天"擊中
break
我們可以參考砍豬的腳本,大致跟這個一樣!
---------------------------D3D引擎實現攻擊目標觸發--------------------------------
這個引擎的就簡單了多,直接在 QFunction-0.txt 這個系統固定腳本文件中添加一段執行腳本
下面這是個範例,根據你自己的需要修改都可以。
;所有觸發只有攻擊到怪物才會觸發,有些魔法不會觸發,如魔法盾
;======================魔法攻擊觸發==========================
[@MagicStruck]
#IF
CHECKCURRTARGETRACE
= 0
#ACT
SENDMSG 6 你被人物【<$CURRRTARGETNAME>】攻擊了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
#IF
#ACT
SENDMSG 6 你被怪物【<$CURRRTARGETNAME>】攻擊了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
[@MagicAttack]
#IF
CHECKCURRTARGETRACE = 0
#ACT
SENDMSG 6 你攻擊了人物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
#IF
#ACT
SENDMSG 6 你攻擊了怪物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
;======================物理攻擊觸發==========================
[@Struck]
#IF
CHECKCURRTARGETRACE
= 0
#ACT
SENDMSG 6 你被人物【<$CURRRTARGETNAME>】攻擊了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
#IF
#ACT
SENDMSG 6 你被怪物【<$CURRRTARGETNAME>】攻擊了。使用魔法ID=<$CURRRUSEMAGICID> 255
253
BREAK
[@Attack]
#IF
CHECKCURRTARGETRACE = 0
#ACT
SENDMSG 6 你攻擊了人物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
#IF
#ACT
SENDMSG 6 你攻擊了怪物【<$CURRRTARGETNAME>】。使用魔法ID=<$CURRRUSEMAGICID>
255 249
BREAK
『伍』 我想做一個傳奇腳本 武器攻擊+7 幸運+7 也就是雙7觸發1.2倍攻擊! 怎麼寫!
需要使用CHECKITEMADDVALUE腳本命令,檢查物品的附加屬性。
例如武器:
[@main]
#IF
CheckItemAddValue 1 0 > 6 ;檢測武器附加攻擊是不是大於6點
#ACT
goto @main1
#elseact
messagebox 你的武器附加攻擊沒有到7點
[@main1]
#IF
CheckItemAddValue 1 3 > 6 ;檢測武器附加幸運是不是大於6點
#ACT
goto @main2
#elseact
messagebox 你的武器附加幸運沒有到7點
[@main2]
#ACT
POWERRATE 120 600 ;POWERRATE 倍率 有效時間
具體NPC怎麼引導根據自己需要修改即可,我就不給你寫了。
另外> 6這里我現在不清楚是不是包括6,如果包括可以改為> 7
最後,這是HERO引擎的腳本命令,比較通用,下次提問的時候請把使用的引擎說一下,方便回答。
物品位置及屬性查詢
CHECKITEMADDVALUE 物品位置(0-12) 屬性位置(0-14) (符號 < > =) 值
物品位置:
0 盔甲
1 武器
2 照明物(蠟燭,此物品屬性升級無效)
3 項鏈
4 頭盔
5 右手鐲
6 左手鐲
7 右戒指
8 右戒指
9 無(放護身符位置)
10 腰帶
11 鞋子
12 寶石
盔甲
0 防禦
1 魔御
2 攻擊
3 魔法
4 道術
5-13 無效果
14 持久
武器
0 DC2
1 MC2
2 SC2
3 幸運
4 詛咒
5 准確
6 攻擊速度
7 強度
8-9 暫不知道
10 需開封
11-13 暫不知道
14 持久
頭盔
0 防禦
1 魔御
2 攻擊
3 魔法
4 道術
5 佩帶需求
6 佩帶級別
7-13 無效果
14 持久
項鏈
0 AC2
1 MAC2
2 DC2
3 MC2
4 SC2
6 佩帶需求
7 佩帶級別
8 reserved
9-13 暫不知道
14 持久
手鐲
0 AC2
1 MAC2
2 DC2
3 MC2
4 SC2
6 佩帶需求
7 佩帶級別
8-13 無效果
14 持久
戒指
0 AC2
1 MAC2
2 DC2
3 MC2
4 SC2
6 佩帶需求
7 佩帶級別
8-13 無效果
14 持久
『陸』 傳奇腳本製作命令
分類: 游戲 >> 游戲工具
問題描述:
我想知道一些傳奇腳本製作命令,就是NPC的例如給東西 檢測結婚 師徒,傳送到那些地方,給寶寶什麼的。多多益善 越詳細越好謝謝。
解析:
傳奇腳本命令大全
命令與函數:
checkjob (Warr, Wizard, Taos) ;測試職業
checkgold (金幣數) ;測試金幣
checklevel (等級) ;測試等級
checkitem (物品名) (數量) ;測試物品及數量
give gold (金幣數) ;給錢
give (物品名) (數量) ;給物及數量
take gold (金幣數) ;拿走錢
take (物品名) (數量) ;拿走物及數量
checkpkpoint (pk值) ;測試PK值
checkluckypoint (幸運值) ;幸運值正值為好,負值為差
checkraeva (物品名) (數值) ;一般測試礦物等物品的品質
checkhum (地圖名) (數值) ;測試這個地圖的人數
checkmonmap (地圖名) (數值) ;測試這個地圖的怪物數
map (地圖名) ;移動到這個地圖
mapmove (地圖名) (坐標A) (坐標B) ;移動到這個地圖指定坐標
monclear 地圖清除
close 關閉對話框
TimeRecall (設定時間值) ;分鍾,一般指進入地圖時間限制
BreakTimeRecall ;中斷設定時間
ExchangeMap (地圖名) ;與指定地圖里的人交換位置
daytime sunset ;一天時間
checkbaggage ;測試背包滿沒
*** all (變數) (數值) ;測試變數是不是小於指定數值
large (變數) (數值) ;測試變數是不是大於指定數值
equal (變數) (數值) ;測試變數是不是等於指定數值
mov (變數) (數值) ;讓變數等於指定數值
sum (變數A) (變數B) ;A+B 注意,如果還要家第3個數直接換行寫sum (變數C)
注:關於SUM的詳解
首先有MOV (變數X) 0 ;(變數X)清0
sum (變數A) (變數B) ;X=A+B
sum (變數C) ;X=X+C
movr (變數) (數值) ;隨機把指定數值以下的數(正數)給變數
inc (變數) (數值) ;讓變數自動加指定數值到變數
playdice (骰子數) @xxx ;玩骰子,跳轉到標簽[@xxx]
random (隨機數) ;一般用在#IF語句中作為觸發#IF機率,有時隨機數=並列#IF語句數用於隨機多項選擇,既:
#IF RANDOM 3 #SAY() #ELSEACT
#IF RANDOM 3 #SAY() #ELSEACT
#IF RANDOM 3 #SAY() #ELSEACT
Check [條件數] 1 ;測試[條件數]觸發與否 1(觸發)
SET [條件數] 1 ;設置[條件數]觸發
batchDelay (暫停時間) ;一般為1
addbatch (地圖名1)
addbatch (地圖名2)
addbatch (地圖名3)
addbatch (地圖名4)
addbatch (地圖名5)
batchmove ;一步步到下一個地圖直到5
param1 01141 ;01141=(地圖名)
param2 10
param3 10
mongen 火焰沃瑪2(怪物名) 30 10
;玩骰子腳本解析
#IF
equal p9 1 ;測試 p9是不是等於1
#ACT
goto @cube ;是的,到@cube
BreakTimeRecall (中斷設定時間)
break
#IF
equal p9 9 ;測試 p9是不是等於9
#ACT
goto @quit ;是的,到@quit 退出
BreakTimeRecall (中斷設定時間)
break
[@main-1]
#IF
#ACT
mov p9 0 ;測試 p9是不是等於0
#SAY
say ;歡迎詞
<下一步/@pre_cube>
[@pre_cube]
#IF
checkitem 籌碼 1 ;測試有沒有籌碼
#ACT
mov p9 1 ;有,讓p9=1
take 籌碼 1 ;給出一個籌碼
movr d0 6 ;;隨機把6以下的數(正數)給d0
inc d0 1 ;讓d0自動加1到d0
playdice 1 @cube ;玩骰子,點擊到標簽[@cube]
#SAY
正在投骰子. \ <下一個/@cube>
#ELSESAY
quit
<退出/@Quit>
#ELSEACT
mov p9 9 ;轉到標簽@quit並讓P9等於9
[@Quit]
#IF
#ACT
map B011 ;退出到B011地圖
[@cube]
#IF
#SAY
骰子的點數 <$STR(D0)> \ ;<$STR(D0)>是變數,把D0數值型轉字元型
你可以前進 <$STR(D0)> \ <移動/@next_cube>
[@next_cube]
#IF
equal d0 1 ;如果 d0=1
#ACT
goto @posi1 ;到POSI1
break
#IF
equal d0 2
#ACT
goto @posi2
break
#IF
equal d0 3
#ACT
goto @posi3
break
#IF
equal d0 4
#ACT
goto @posi4
break
#IF
equal d0 5
#ACT
goto @posi5
break
#IF
equal d0 6
#ACT
goto @posi6
break
[@Posi1]
#IF
#ACT
batchDelay 1 ;一般為1(暫停時間)
addbatch B102 ;步進地圖名1
batchmove ;移動到最後一個步進地圖
[@Posi2]
#IF
#ACT
batchDelay 1
addbatch B102
addbatch B103
batchmove
[@Posi3]
#IF
#ACT
batchDelay 1
addbatch B102
addbatch B103
addbatch B104
batchmove
[@Posi4]
#IF
#ACT
batchDelay 1
addbatch B102
addbatch B103
addbatch B104
addbatch B105
batchmove
[@Posi5]
#IF
#ACT
batchDelay 1
addbatch B102
addbatch B103
addbatch B104
addbatch B105
addbatch B106
batchmove
[@Posi6]
#IF
#ACT
batchDelay 1 ;一般為1(暫停時間)
addbatch B102 ;步進地圖名1
addbatch B103 ;步進地圖名2
addbatch B104 ;步進地圖名3
addbatch B105 ;步進地圖名4
addbatch B106 ;步進地圖名5
addbatch B107 ;步進地圖名6
batchmove ;移動到最後一個步進地圖(這里是6)
;結束
SET
語句:
#IF
……
#ACT(SAY)
……
#ELSESAY(ACT) ;ELSE的兩句是並列的,都是IF<>(條件)的動作
……
#ELSEACT(SAY)
……
goto (標簽名)
break (中斷)
\ ;換行
變數:
<$USERNAME> 當前用戶名
<$GUILDWARFEE>行會戰金幣數
<$LORD>沙巴克行會頭名
<$OWNERGUILD>沙巴克行會名
<$UPGRADEWEAPONFEE>升級武器價格
<$USERWEAPON> 放在對話框里的武器名字
<$STR(變數)> 把變數轉換為字元型
網風傳奇腳本編輯器V1.0.1
wfyl/sfrj/sfrj/200603/20060314224115