模擬人生3殺人的bug
模擬人生3游戲設(shè)計有程序瑕疵,正如筆者以前曾提到的關(guān)于一直躺在床上的人燒不死的理論,模擬人生的任何死亡,都需要小人執(zhí)行一個死亡動作才得以完成,而這個動作,其優(yōu)先級并不高于上廁所、吃飯這一類玩家命令動作。如果你能控制這個人,會發(fā)現(xiàn)死亡動作排程在左上角,就像其他吃飯睡覺一般。
雖然你不能手動用鼠標叉掉這個死亡動作,但是一旦整個動作排程被物理切斷,比如用柜子將正在睡覺的小人圍起來,讓他無法下地,這樣任何餓死、燒死,都無法在這個小人身上完成,因為他的第一個動作:“下床”,無法進行。
鎖門燒人試驗中,一些其他的現(xiàn)象,比如身上著火這個過程,也被證明和動作排程有著相同屬性。也就是說,如果這個小人前一個動作在喝水,那么即便他四周全是火,想讓他身上著火,也必須在他喝完水以后才會開始,這些現(xiàn)象的確是非常荒唐、無法用常理解釋的。
更糟糕的是,一旦小人身上著火,程序默認操作是讓他邊跑邊叫,并尋找游泳池等撲滅身上的火焰。雖然使用液體撲滅身上的火已經(jīng)是模擬人生游戲難得的進步,但不幸的是,一旦束縛了小人的逃跑路線,就如同今天例子中所講的,將門鎖住,這樣不但物理切斷了小人逃跑的動作排程,更是切斷了火苗在身上蔓延的的物理動作排程,你所看到的,是火苗在小人屁股上燃起,隨后突然熄滅,接著重新燃起,如此不停往復(fù),讓你不斷擔(dān)心到底能不能把他燒死——只要小人無處可跑,火苗遍無法燒遍全身。
其實這還不是最糟糕的。計算機程序認為,小人在燒死之前,應(yīng)該是邊跑邊叫,如果跑不起來,那他就燒不死。(我也不知道EA的程序員怎么會有這樣的邏輯,但如果你親自做實驗,也會發(fā)現(xiàn)這個現(xiàn)象)在我本人所作的同類實驗中,曾創(chuàng)下了連續(xù)三天三夜屁股著火,可是被囚禁的小人仍然一邊抱怨著無處可走,同時屁股上的火苗一會兒熄滅,一會兒又燒起來。
更為奇特的是,只要你燃燒足夠時間,隨后把消防員叫來,火被撲滅的一瞬間竟然是小人被燒死的一瞬間。注意,不但是或被撲滅,就算是他自己滅掉,也同樣如此?磥,在EA程序員的眼里,生命之火會和大火同時被撲滅,真是讓人摸不到頭腦。如果自己做實驗,看到的自然是,屁股著火,狠狠燒了好幾個小時,等到火自然滅掉的時候,那個屁股著火的小人立刻一命嗚呼了。
如此混亂的現(xiàn)象……我現(xiàn)在語言思維已經(jīng)混亂了,我還是希望大家自己多做這類實驗,自己觀察,或許能在這些bug里面找到利用的地方。
死人復(fù)活的方法
使用“resetSim”命令可以復(fù)活死人。