作者laechan (小太保)
看板mud_sanc
標題Re: [問題] 關於 reborn 的問題
時間Wed Mar 25 17:04:40 2015
之前貼的 running code 有些問題所以重貼
obs=objects();
foreach(ob in obs)
{
if(!ob) continue;
if(living(ob)) continue;
if(!ob->query("exits")) continue;
if(ob->query("instance_names")) continue;
if(ob->query("pre_clean"))
tmp+=ob->query("short")+" "+base_name(ob)+"\n";
}
me->more(explode(tmp,"\n"),1,1);
以上針對的是「有設出口的房間」,沒設出口的目前就暫時先不篩選,
「理論上」問題還是沒解決,但是這段程式碼可找出線上有 pre_clean
的房間,搭配 more 就能知道哪些房間不該被設 pre_clean 卻被設了
,然後再搭配 shout,玩家若有在線上看到類似底下訊息:
pre_clean set: 房間(/cmds/wiz/_update) 房間(/u/l/laechan/workroom)
pre_clean set: 玩家(laechan /std/user) 房間(/u/l/laechan/workroom)
pre_clean set: 房間(/cmds/deep/_call) 房間(/u/l/laechan/workroom)
pre_clean set: 玩家(laechan /std/user) 房間(/u/l/laechan/workroom)
有看到再回報一下。
Laechan
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.157.53
※ 文章網址: https://webptt.com/m.aspx?n=bbs/mud_sanc/M.1427274283.A.75B.html
shutdown 後
pre_clean set: 房間(/adm/obj/simul_efun) 房間(/u/b/bdlen/area/seaquest/room/1)
pre_clean set: 玩家(helper /std/user) 房間(/u/b/bdlen/area/seaquest/room/1)
這應該就是 justin 所提到的與任務有關的,比方上面似乎是海船的。
skyroom、skyfarm 的部份則都可以跳過。
pre_clean set: 房間(/adm/obj/simul_efun) 房間(/u/l/laechan/area/hole/room/250)
pre_clean set: 玩家(thisisabook /std/user) 房間(/u/l/laechan/area/hole/room/250)
這個應該就是關鍵了,初步 grep 的結果是 /adm/simul_efun 下也沒
有 set("pre_clean 相關,那就剩下一個可能就是 quest 系統。
晚上我再看看。
※ 編輯: laechan (210.61.157.53), 03/25/2015 17:55:22
1F:推 longhairpan : 怎麼好像都是我中鏢.... 03/26 00:43
早上看到的情況
========== 程式執行區 ==========
銀行內部 /d/event/bank/room/1
試鍊窟地下六層 /u/l/laechan/area/hole/room/250
[ Pyq 的家 ] /u/l/laechan/skycastle/room/p/pyq-main
海邊 /u/b/bdlen/area/seaquest/room/1
菲斯迪爾船 目前狀態: 停靠在蘭卡大陸,下一站迪菲爾大陸。
/d/ppl/justinj/cicero/boat/fesdill
--鐵達尼號-- 目前狀態: 停靠在布里斯小港,下一站敦煌港。
/d/ludun/east/room/titanic
聖殿大樂透彩投注站(look note)
/u/l/laechan/special/room/sanc_bet
法師公會圖書室 /d/nmap/klon/room/runes_practice
========== 程式執行區 ==========
目前看是沒什麼問題,上面那幾個地方都是會設定 pre_clean
的,不該設的地方就不會設,那就剩下檢查定期 clean_up 有
沒有問題,我今天會加訊息上去。
Laechan
※ 編輯: laechan (61.224.79.11), 03/26/2015 07:33:23
2F:→ longhairpan : 今天大概十二點多的那次rb,善見,試煉窟沒reset 03/30 18:27
3F:→ laechan : 試鍊窟不rb很正常(250那格),善見原因不明 03/30 20:34
目前有 pre_clean 的
========== 程式執行區 ==========
海邊--海船迷宮練習場 /u/b/bdlen/area/seaquest/room/1p
銀行內部 /d/event/bank/room/4
金庫旁 /d/event/bank/room/3
銀行內部 /d/event/bank/room/2
︿。︿ 砲 兵 俱 樂 部 ︿。︿ /d/ppl/norr/west-wind/room/037
︿。︿ 砲 兵 俱 樂 部 ︿。︿ /d/map/lodoos/room/club
祭壇 /d/ppl/quest/memory/room/ruby3
銀行內部 /d/event/bank/room/1
試鍊窟地下六層 /u/l/laechan/area/hole/room/250
[ Pyq 的家 ] /u/l/laechan/skycastle/room/p/pyq-main
海邊 /u/b/bdlen/area/seaquest/room/1
北海探險號 目前狀態: 停靠在北極大陸。 /d/break/brk/boat
幽靈船 目前狀態: 停靠在蠻荒の地。 /d/ppl/szsa/japan/room/002
小漁船 目前狀態: 停靠在奧瑪村。 /d/aty/bird/room/boat1
聖殿大樂透彩投注站(look note)
/u/l/laechan/special/room/sanc_bet
法師公會圖書室 /d/nmap/klon/room/runes_practice
========== 程式執行區 ==========
以上均正常。
之前說過了,會阻礙正常 reset 的只有 pre_clean 的因素,
若這項因素排除,那剩下的就是
foreach(object inv in tt)
if( interactive(inv) || userp(inv)) return 1;
房間若有玩家待著,那該房間也不會被 reset。
Laechan
※ 編輯: laechan (125.224.234.173), 03/30/2015 20:37:38
4F:→ laechan : 然後理論上它可以技術性 reset...看有沒有必要這樣 03/30 20:38
5F:→ longhairpan : 試煉沒reset是第7層蚩尤那格,似乎不是pre_clean造成 03/31 08:42
6F:→ laechan : 有調整了, 再觀察看看, 下午做細部調整 03/31 12:17