[wizs] 今年到目前為止遇到的bug

看板mud_sanc (Sanctuary - 聖殿)作者 (黑旋風)時間1年前 (2023/02/21 09:22), 1年前編輯推噓0(0026)
留言26則, 2人參與, 1年前最新討論串1/1
1.亂數排序 int random_sort(int a,int b) { return -1+random(2); } totols = sort_array(totols,"random_sort",this_object()); 發現這樣不會亂數排序(要將-1拿掉才會出現) 因為要將之前寫的遊戲房放出來,但先測一下,但AI出牌根本沒變 這個我應該是看別人的寫法,所以 > findcode random_sort /cmds/std cmd=findcode,str=random_sort /cmds/std 搜尋 random_sort 檔案:/cmds/std/_blarket.c 行號 269:int random_sort_beter(string aa,string bb) 行號 1135: tmps=sort_array(tmps,"random_sort_beter",this_object()); 這個應該也是,沒權限改就列出來(我也只搜尋這個) 2. quest: ({ "j001", 13, 1, "2013/10/21", 1676861204 }) quest leadit about MERC_QUEST_j001 你道:停!你們怎麼都一個模樣,給我好好的回答,不然.... 【提示】你應找的對話目標:山寨-寨主住宅 執行時段錯誤: *Illegal to move or destruct an object (/d/ppl/justinj/bandit/mob/robber#1044152) defining actions from a verb function(quest) in object(/std/user#308605) which returns zero. 程式: 0:0 物件: 0 依我接下來遇到的情況,非常可能是有add_action然後就會出問題 3. quest kenshin about MERC_QUEST_j003 上杉謙信道:這是給你的報酬 【你得到100000影特幣】 【你的道德下降100000點】 執行時段錯誤: *Illegal to move or destruct an object (/d/ppl/justinj/dark/obj/AD#1045102) defining actions from a verb function(quest) in object(/std/user#308605) which returns zero. 程式: 0:0 物件: 0 只要有放程序/d/ppl/justinj/dark/obj/AD.c移除就會發生 4. quest show j005 cmd=quest,str=show j005 ... │23. 最後與燕情(Yanchin)對話,任務結束。 │ ├──────────────────────────────────┤ │任務獎勵:    │ │    │ └──────────────────────────────────┘ 執行時段錯誤: *Illegal to move or destruct an object (/d/book/egingin#1077293) defining actions from a verb function(quest) in object(/std/user#308605) which returns zero. 程式: 0:0 物件: 0 5. ================================================================================= 任務編號 任務名稱 狀態 接取任務NPC或地點 ===================================================================== n005 失蹤人口調查 未完成 神秘的乞丐(Beggar) └0.fail clone n005 /open/cmds/quest/n/n005 fail load 未完成 神秘的乞丐(Beggar) quest: ({ "n005", 0, 3, "2013/08/15", 1676794600 }) ([ ]) 我應該完成了3次 6. 殺怪任務: 『解決魔化樹人首領翠博德(j034)』  【樹人首領】翠博? 0 / 1 ) (1)我應該是命名j034-1 (2)後面的亂掉可能是排版問題 7. 有關這隻/d/ppl/justinj/devil/mob/amethyst.c的問題 因為這隻會吃生命水晶,所以但它在打怪物時就會發生bug,所 以改成下列這樣就ok if(userp(ppl) && ppl->query_vobjs("s001")) 8. > quest shows j004 .... │任務獎勵:    │ │    │ │ step2_msg= │ └──────────────────────────────────┘ 我最後一步寫都會變這樣 step2_npc=/d/ppl/justinj/dark/mob/receptionist## step2_msg=## step2_end= ppl->force_me("finish")## 9. 之前按quest status 大概都會發生這樣 [傭兵行會]注意!獸潮已經開始了 己經改成第1個接任務時才呼叫 step1_end= "/d/ppl/justinj/devil/room/043.c"->merc_init()## -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.221.177.11 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/mud_sanc/M.1676942534.A.FBE.html ※ 編輯: justinj (61.221.177.11 臺灣), 02/21/2023 09:23:05

02/21 10:22, 1年前 , 1F
-1+random(3) 才對, 這樣才會出現 -1,0,1
02/21 10:22, 1F

02/21 10:23, 1年前 , 2F
quest的部份,如果你的quest腳本檔有自創許多東西的
02/21 10:23, 2F

02/21 10:24, 1年前 , 3F
話,建議先檢查腳本檔的寫法有無問題,包括執行時
02/21 10:24, 3F

02/21 10:32, 1年前 , 4F
fail load的部份,有人把 if(!catch 寫成了if(catch
02/21 10:32, 4F

02/21 10:32, 1年前 , 5F
這部份我修正了
02/21 10:32, 5F

02/21 10:33, 1年前 , 6F
至於已完成未完成的判斷,它是以次數[1]做為依據,因
02/21 10:33, 6F

02/21 10:33, 1年前 , 7F
為原則上能超過次數1代表這是一個可完成多次的任務
02/21 10:33, 7F

02/21 10:33, 1年前 , 8F
比方可完成5次,而你只完成3次,那判斷上就是未完成
02/21 10:33, 8F

02/21 10:33, 1年前 , 9F
不過我剛還是把 ==1 改成 >=1,即完成過一次就算完成
02/21 10:33, 9F

02/21 10:41, 1年前 , 10F
_blarket.c 修正為-1+r(3),剛測試是可以 random 的
02/21 10:41, 10F

02/21 10:43, 1年前 , 11F
理論上 -1+r(2) 也會 random, 只是隨機性沒那麼高
02/21 10:43, 11F

02/21 10:43, 1年前 , 12F
以及特殊的數列或字串陣列有可能random無效
02/21 10:43, 12F

02/21 10:47, 1年前 , 13F
robber 的屬性設定我不建議用 set("stat",
02/21 10:47, 13F

02/21 10:48, 1年前 , 14F
robber 缺少了計算 sp 的 int 屬性
02/21 10:48, 14F

02/21 10:49, 1年前 , 15F
腳本內自訂函數時,如果該函數有用到關於 move 物件
02/21 10:49, 15F

02/21 10:50, 1年前 , 16F
的程式段時,請宣告為 int 並且要 return 1以上正數
02/21 10:50, 16F

02/21 10:50, 1年前 , 17F
與move有關的比方:move,move_player,remove,die,..
02/21 10:50, 17F

02/21 10:51, 1年前 , 18F
最後
02/21 10:51, 18F

02/21 10:51, 1年前 , 19F
quest 本身是有問題,但我不想修它了,大致能跑就行了
02/21 10:51, 19F

02/21 10:51, 1年前 , 20F
有可能本來只有放著也不會怎樣的小問題,一但去動了
02/21 10:51, 20F

02/21 10:52, 1年前 , 21F
反而可能不能跑,bug越多,etc..上次動 _wear差點出事
02/21 10:52, 21F

02/21 11:15, 1年前 , 22F
了解
02/21 11:15, 22F

02/21 12:51, 1年前 , 23F
我下午改看看設三種狀態:未完成,已完成,完成過x次
02/21 12:51, 23F

02/21 12:52, 1年前 , 24F
times==1 && finish>=1 ? : finish>=1 ? : 大概可以
02/21 12:52, 24F

02/21 12:53, 1年前 , 25F
times==1 && finish>=1 , times>=1 && finish>=1
02/21 12:53, 25F

02/21 12:53, 1年前 , 26F
以及 finish < 1
02/21 12:53, 26F
文章代碼(AID): #1Zz1p6-- (mud_sanc)
文章代碼(AID): #1Zz1p6-- (mud_sanc)