國科會專題研究計畫結案報告
計畫名稱:2000 兒童資訊月─電腦三維四子棋軟體研發與其教育功能之評估研究 計畫編號:NSC 89-2515-S-011-001
計畫主持人:國立台灣科技大學工商業設計系副教授 孫春望 執行期限:88.08.01~89.08.31
這個計畫的原始構想是做一個立體的五子棋。五子棋是大家都很熟悉的遊戲,如果能夠將原 本二度空間的遊戲拓展成為三度空間,想像中應該會很吸引小朋友,而且在市場上似乎還沒 有類似構想的產品,於是就藉由兒童資訊月國科會主題館軟體設計的機會試圖將這個想法實 際做出來。
我們首先考慮的是「棋盤」的尺寸問題。如同大家所熟知,五子棋是利用圍棋的棋盤,也就 是 19*19 的方格格線。兩者的不同之處在於圍棋通常由邊角下起,而五子棋從棋盤的中央開 始。下一盤五子棋通常不需要佔滿整個棋盤,大致而言,棋局分出勝負時棋子所佔的面積差 不多是整個棋盤的四分之一至二分之一左右;也就是五子棋的理想棋盤大致需要 225 條 (15*15)格線。這樣的棋盤在電腦 640*480 螢幕上呈現沒有問題,因為每條格線之間大致可以 有 30 個 pixels 的間距,使用者可以清楚的判別兩條不同的格線。但是當整個棋盤立體化之後 問題就變得很嚴重,因為呈現這樣的立體棋盤需要 3375 條(15*15*15)格線,而格線與格線之 間距離變得非常緊密,使用者勢必眼花撩亂,無法判定棋子是在空間中的哪一個位置,而如 果連這個基本要求都無法達到,根本不可能在三度空間中下棋。
經過幾番的嘗試與思考,我們決定減少格線的數目,成為一個 7*7*7 的棋盤,同時提高螢幕 解析度設定至 800*600。這樣的棋盤可以符合識別上的需求,但又衍生出新的問題,就是棋 盤太小,不夠下完一盤五子棋。最後我們決定將五子棋改成四子棋,也就是只要連成四子就 算贏,到此終於算是解決了棋盤的問題。
在後續製作的過程中遇到不少技術上的挑戰,例如將棋盤(連同上面的棋子)繞著 Y 軸旋轉,
好讓下棋的雙方能從各種角度觀察形勢,以及讓棋子下在某個特定位置的操控方法等等。諷 刺的是,一直到整個遊戲的雛形完成之後,我們才發現真正的問題:這個遊戲好玩嗎?
照理說,在設計一個遊戲之前,我們就應該知道這個遊戲到底好玩或不好玩。然而幾年的經 驗告訴我們,所謂的「好玩」是一件非常難以掌握的事情。往往要等到遊戲真正完成實際測 試之後,我們才能親身體驗使用者的感受,而這些感受常常與當初的設想有很大的距離。
所有雙人對奕的棋類遊戲其實都存在著一個共同的問題,就是先下的人勢必會擁有某種程度 的優勢,而這種優勢會影響比賽的公平性。為了彌補這個缺陷,這些遊戲必須制定一些額外 的規定。以圍棋為例,通常持黑子者先下,而黑子在最後結算目數時必須貼還七目半來抵消
先下的優勢;其他諸如西洋棋或象棋在比賽時也都會約定各種方式以維持公平性。只有當公 平性獲得保障時,遊戲的樂趣才能維持。井字遊戲(tic-tac-toe)是一種明顯不公平的比賽,
因為先下者通常一定會搶占中央的位置,除非之後發生嚴重錯誤,否則可說已立於不敗之地。
因為先下後下的差距太大,所以玩井字遊戲的人通常只是年幼的兒童;對於成人而言,這種 遊戲實在並不好玩。
五子棋的概念與規則其實和井字棋很像。之前我們從來不曾想過,為什麼不是三子棋,四子 棋或六子棋?從井字棋的限制我們可以簡單推論,三子棋必然不好玩,因為先下的人一定能 贏(對方根本無法阻擋)。至於六子棋,雖然先手的優勢幾乎已經微不足道,然而下完一盤卻 需要相當久的時間,而且 19*19 的棋盤很可能不夠用。五子棋之所以是五子,應該是前人經 驗累積的結果,剛好適合圍棋棋盤的大小,下一盤所需的時間不長也不短,所謂的先手優勢 也在可以容忍的範圍之內。
那麼四子棋呢?它介於三子棋與五子棋之間,先下的人到底是完全優勢還是只是部份優勢?
如果是後者,四子棋似乎還有發展的空間;如果是前者,四子棋就註定是不好玩的遊戲。不 幸的是,我們好像可以「證明」先下的人一定可以贏。
假設白棋先下在棋盤的中央位置(0,0),黑棋合理的選擇只有白棋周圍的八個點,可以兩點 代表:相鄰的邊(1,0)與對角(1,1)。
針對第一種狀況,後續發展是:白(1,-1),黑(-2,-2),白(-1,1),黑(-2,2),白(-1,-1),
黑(-1,0),白(0,-1),黑(2,-1),白(-2,-1),白勝,而且黑棋完全沒有還手的餘地。
針對第二種狀況,後續發展可能是:白(2,0),黑(1,0),白(1,-1),黑(4,1),白(2,-2),
黑(-2,1),白(4,-4),白勝;或者白(2,0),黑(3,0),白(1,0),黑(-1,0),白(1,-1),
黑(4,1),白(2,-2),黑(-1,1),白(4,-4),同樣是白勝,而且黑棋同樣沒有機會。
如果以上的推演可以證明白棋一定會贏,同時也就證明了四子棋是一種不好玩的遊戲。這個 現象在三度空間仍然存在,因為白棋只需要在任何一個平面上就可以連續攻擊黑棋到勝利為 止;於是我們可以得到一個諷刺的結論:三度空間其實是多餘的。
回顧整個過程,我們的原始構想是三度空間的五子棋,因為 19*19*19 的格線無法在電腦螢幕 清楚顯示,所以只好降低格子的數目;然後又因為格線少,所以只好將五子棋改成四子棋。
當初完全沒有考慮到四子棋是否好玩的問題,在一些關鍵點上的決定似乎也太過武斷,是值 得自我檢討的地方。
這個研究案的目的是為了兒童資訊博覽會的國科會主題館中的軟體展示,遺憾的是,計畫進 行到一大半的時候我們才發覺四子棋不好玩。經過與國科會承辦人員商量之後,我們決定臨
時更改主題為「2000 天旋地轉」。
「2000 天旋地轉」的由來主要是因為我們最近都在探討和相對運動有關的問題,所以想試著 把其中一些概念發展成遊戲。舉例而言,一隻正在直線行進的蟑螂如果走在一個正在旋轉的 pizza 上面會發生什麼事情?如果遊戲者控制蟑螂的運動(前進、靜止、左轉、右轉等等), 想像中如果整個座標系統都在旋轉,應該可以把遊戲者弄得頭昏腦脹,從中製造樂趣。
我們最後一共設計了三個情境:
一、橄欖龜:一個橄欖球和烏龜的混合體,場景是美式足球場。橄欖龜的使命是努力達陣,
而整個球場像是許多條平行的河流,每條河的方向與流速都不相同。橄欖龜的運動會被身處 的區域影響。畫面中有幾個旋轉中的啦啦隊員,如果橄欖龜不小心被她們碰到就會被敲出球 場,如果被打到三次遊戲就會結束。
二、撲滿豬:一個撲滿和豬的混合體,場景是公園。公園的地上有錢,而撲滿豬想要撿錢。
一路上都有旋轉中的球棒阻撓撲滿豬,如果被打到的話就會飛出公園重新開始,如果被打到 三次遊戲就會結束。為了增加難度,撲滿豬還必須通過三個高速旋轉的盤子。
三、飛鏢蟲:一個飛鏢和昆蟲的混合體,場景是標靶。標靶上有許多氣球,飛鏢蟲必須將它 們一一刺破。標靶上同時還有許多旋轉中的鐵鏈錘,如果被打到的話就會飛出標靶重新開始,
如果被打到三次遊戲就會結束。為了增加難度,標靶的每一圈同心圓都會以不同的速度旋轉。
主角的 3D 造型主要是用 MAYA 完成,場景部份則是 PhotoShop 和 Illustrator,串場與整合用 Director,程式控制為 Lingo 語言。
在一個月的展示期間,參觀兒童的現場反應良好,笑聲與驚叫聲不斷,相當符合設計時所料 想之狀況。遊戲設計最困難的部份在於樂趣,在繁複而緊湊的互動過程中掌握玩家的情緒起 伏。歷經無數次的討論與翻案,無止境的解決問題與製造問題,所期待的也不過是看到那些 素不相識兒童臉上的笑容而已。
這三個遊戲可從台灣科技大學網頁取得:
台灣科技大學(www.ntust.edu.tw)->教學單位->工商業設計系->師資介紹->孫春望 副教授->2000 天旋地轉