[討論]實現讓英雄增加任意數值能力的方法

各類的進階專題研究、WE Bug討論等。

版主: crassorz, tv580025

[討論]實現讓英雄增加任意數值能力的方法

文章a15752468 » 2010年03月13日 10:25 am

標題我修改了一下,這樣比較容易搜尋到 (Edit by tv580025 2010/03/14)

以下觸發內容為簡化表達的觸發,非正式版

物品Bug1 - 賣出後的隱物品
事件 - A部隊賣出物品
動作 - 移除被賣出的物品
   - 創造物品( 被賣出的物品類型, 點x, 點y )
   - 把( 最後創造的物品 )給( 買物品的部隊B )

測試 - B部隊向A部隊買物品
   - B部隊將物品移動至第二格物品欄( 右上角 )
   - 使用該物品

Bug - 該物品技能被使用兩次

詳情請下載BUG地圖
PS:詳細BUG過程..應該沒人有興趣..所以不多說..
最後由 a15752468 於 2010年03月13日 6:30 pm 編輯,總共編輯了 1 次。
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月13日 10:30 am

a15752468 寫:物品Bug2 - 撿地上的物品
事件 - B部隊獲得物品
動作 - 移除被獲得的物品
   - 創造物品( 被獲得的物品類型, 點x, 點y )
   - 把( 最後創造的物品 )給( 部隊B )

其它 - B部隊將地上的物品撿起

Bug - 魔獸跳掉 + 沒出現錯誤訊息

詳情請下載BUG地圖

會掛掉很正常啊

給予部隊的只是空殼子
代碼: 選擇全部
set udg_i=GetManipulatedItem()
set udg_id=GetItemTypeId(udg_i)
call RemoveItem(udg_i)
call CreateItemLoc(udg_id,Location(0,0))
call UnitAddItem(GetManipulatingUnit(),GetLastCreatedItem())
看看你的地圖UI幫你做了什麼事...

整個問題就很大,完全跟魔獸BUG無關...

再來就是沒有UI的話,會沒辦法開你這張圖ˊ3ˋ
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月13日 4:50 pm

不懂...
這樣有什麼問題嗎@@?
代碼: 選擇全部
set udg_i=GetManipulatedItem()
set udg_id=GetItemTypeId(udg_i)
call RemoveItem(udg_i)
call CreateItemLoc(udg_id,Location(0,0))
call UnitAddItem(GetManipulatingUnit(),GetLastCreatedItem())


UI的話...我用的是NewGen+蘋果UI..

不過那些觸發函數都是魔獸內建的吧@@?
應該沒差吧@@?
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章crassorz » 2010年03月13日 5:31 pm

[C]都是蘋果自製的
基本上不會更新GetLastCreatedItem()這類的變數


所謂的內建在蘋果UI裡大部分是[B]不然就是沒加屬性框
圖檔
我決定不再對伸手牌起反應
除非很有趣
頭像
crassorz
死亡騎士
死亡騎士
 
文章: 2338
註冊時間: 2008年04月06日 5:40 pm
來自: 什麼都有的雜物間

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月13日 6:02 pm

可是CreateItemLoc()是魔獸內建的
代碼: 選擇全部
function CreateItemLoc takes integer itemId, location loc returns item
    set bj_lastCreatedItem = CreateItem(itemId, GetLocationX(loc), GetLocationY(loc))
    return bj_lastCreatedItem
endfunction


有設定最後創造的物品沒錯
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章crassorz » 2010年03月13日 6:18 pm

事件 - B部隊獲得物品
動作 - 移除被獲得的物品
   - 創造物品( 被獲得的物品類型, 點x, 點y )
   - 把( 最後創造的物品 )給( 部隊B ) → 觸發事件 - B部隊獲得物品

迴圈形成
圖檔
我決定不再對伸手牌起反應
除非很有趣
頭像
crassorz
死亡騎士
死亡騎士
 
文章: 2338
註冊時間: 2008年04月06日 5:40 pm
來自: 什麼都有的雜物間

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月13日 6:29 pm

喔@@
SOGA..

沒發現.....

那第一個應該就算BUG了吧@@...
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 2:02 am

a15752468 寫:喔@@
SOGA..

沒發現.....

那第一個應該就算BUG了吧@@...

代碼: 選擇全部
    local unit    u = GetBuyingUnit()
    local item    t = GetSoldItem()
    local integer i = GetItemTypeId(t)
    call RemoveItem(t)
    call TriggerSleepAction(0.01) // 其實只要加個wait就沒事了
    call UnitAddItemById(u,i)
    set u = null
    set t = null

當觸發 UNIT_SELL_ITEM 事件的時候

物品並還沒有真正放在單位身上

而 RemoveItem 移除的是物品本身

但是物品技能已經給予在單位身上了


所以當一使用物品時

單位身上同類型的物品技能便同時被使用

這跟坦克大戰的吃物品得技能的BUG原理一樣 ˊˇˋ
 
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月14日 9:32 am

原來是這樣

可是不是同類醒的物品會被使用耶@@
假設

測試 - B部隊向A部隊買物品
   - B部隊將物品移動至第二格物品欄( 右上角 )
   - 使用該物品

第二條改成B部隊把物品移動置第三格物品欄...就不會同時啟動..
另外如果這樣子

測試 - B部隊向A部隊買物品
   - B部隊將物品丟到地上,B部隊向A部隊買另一種物品
   - 將剛買的物品放到第二格
   - 使用該物品

這樣依然會啟動第一種物品的效果,然後啟動第二種物品的效果...
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 10:54 am

a15752468 寫:原來是這樣

可是不是同類醒的物品會被使用耶@@
假設

測試 - B部隊向A部隊買物品
   - B部隊將物品移動至第二格物品欄( 右上角 )
   - 使用該物品

第二條改成B部隊把物品移動置第三格物品欄...就不會同時啟動..
另外如果這樣子

測試 - B部隊向A部隊買物品
   - B部隊將物品丟到地上,B部隊向A部隊買另一種物品
   - 將剛買的物品放到第二格
   - 使用該物品

這樣依然會啟動第一種物品的效果,然後啟動第二種物品的效果...

單位因為BUG得到物品技能時

啟動條件不再是orderid

而是以發動的物品欄位為準


像是假如物品是在第四欄消失的

你只要把任意可以使用的物品

丟到第四欄發動後就會變成

消失的物品技能+現在的物品效果


當然這種BUG還可以堆能力

像是把可以召喚單位的物品

不斷讓物品在同欄位消失後

一次使用就可以得到之前消失的所有效果

而且之前消失的物品技能是無CD

也沒有使用限制,可以無限使用
 
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月14日 11:05 am

可是
測試 - B部隊向A部隊買物品
   - B部隊將物品移動至第二格物品欄( 右上角 )
   - 使用該物品

物品應該是在第一欄消失的...
但是後來的物品必須放在第二欄使用
才會使用到剛剛消失的物品技能..
如果放在第一欄..或是其他欄..都不會有此效果..

而且..
我記得物品技能的orderID如果跟英雄技能的orderID一樣
好像也會錯亂@@?
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 11:24 am

OK~

剛剛實測好像發動是 欄位+1 的樣子

點六發動五,點五發動四,到點一就沒了~

我上面的帖子說錯了 Sorry

附上測試地圖

一次把物品全部買滿

然後在從最後面的點回來

就能看出規則了ˊˇˋ
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月14日 3:58 pm

恩..
這確實是這樣..
能力也可以累加...

不過暫時還想不到可以用在哪XD
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 4:53 pm

a15752468 寫:恩..
這確實是這樣..
能力也可以累加...

不過暫時還想不到可以用在哪XD

這個簡單,這個方法可以用在被動技能上面

像是加三圍or攻防血魔之類的


舉個例子

一個加1攻擊的攻擊之爪

可以用這個方法能把玩家的攻擊加到100點

最後把物品移除掉,就能輕鬆的加能力了


假如要做一個能加攻擊力的回魔光環

或是一個能加敏捷的加速光環等等

用這個BUG來做可以省掉很多沒必要的技能

只要事先把各種加1的物品準備好就可以了

畢竟是可以重複使用且無限累加的效果
 
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月14日 6:42 pm

恩..不錯用..
可是應該是不能移除吧...
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 6:54 pm

a15752468 寫:恩..不錯用..
可是應該是不能移除吧...

添加後不能移除又沒差ˊ3ˋ

有英雄學了技能又忘了的嗎?
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章a15752468 » 2010年03月14日 7:08 pm

喔也是..
應該是用不到移除吧...
a15752468
村民
村民
 
文章: 48
註冊時間: 2009年08月29日 4:20 pm

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 9:58 pm

我發覺可以刪技能耶...

只是加幾次就得刪幾次

但可以用迴圈加/迴圈刪

所以基本上不影響就是

可以實現讓英雄增加任意數值的能力了

HP/MP上限、攻防、力敏智

其實這個BUG很實用呢ˊˇˋ

做技能的方法可以大量翻新了
 
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章crassorz » 2010年03月14日 10:03 pm

真是神奇的魔術啊
圖檔
我決定不再對伸手牌起反應
除非很有趣
頭像
crassorz
死亡騎士
死亡騎士
 
文章: 2338
註冊時間: 2008年04月06日 5:40 pm
來自: 什麼都有的雜物間

Re: [討論]物品BUG?!雖然應該沒人會這樣用..

文章tv580025 » 2010年03月14日 10:04 pm

我決定加入精華區XD
圖檔
http://weo.sabi.tw/blog <= 這是我的部落格
http://plurk.com/Neo_Yang <= 噗浪請按我


圖檔  凡事不經思索便行動 一條腸子直通到底的笨蛋
頭像
tv580025
冰霜翼龍
冰霜翼龍
 
文章: 1644
註冊時間: 2006年02月09日 12:29 pm
來自: Matrix


回到 專題討論區

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron