Wizardry 開發史 (2) – Galactic Attack

不同版本的 Galactic Attack 使用手冊。左邊舊版的公司名稱還是 Siro-tech。

Siro-Tech 成立後,Norman 和 Robert 就開始討論在 Info-Tree 之後的第二套產品要做什麼。Robert 在電腦展時注意到,遊戲軟體特別吸引人的目光,於是就提議來做遊戲。Norman 一開始不是很贊成,因為他覺得一台電腦這麼貴,應該沒什麼人會專門拿來玩 game 吧?還是做些商業軟體比較實際。不過最後,Norman 還是接受了 Robert 的意見(這人腦波好像特別弱? XD),讓 Robert 開始開發遊戲軟體。

Siro-tech 的第一套遊戲要做什麼呢?Robert 回想起他在大學時曾經在 PLATO 系統上玩過的遊戲。其中有一套很有名的太空射擊遊戲,叫做 EmpireEmpire 應該是世界上第一個多人線上射擊遊戲…..雖然跟我們現代的「射擊遊戲」意義上完全不同(現在都是指 FPS 了吧?)。

PLATO 系統上的 Empire。想看遊戲畫面的可以直接拉到 7:30 左右。

當然當時家用的 Apple ][ 上是做不到多人連線,不過 Robert 還是保留了 Empire 的精髓,著手開發「精簡」版的「致敬」遊戲:Galactic Attack

Robert Woodhead 所開發的 Galactic Attack

當時智慧財產權的觀念還很薄弱,你可以看到不管是 Empire 還是 Galactic Attack,玩家控制的那艘太空船,實在很難不讓人聯想到 Star Trek 中的企業號… 而且那遊戲中太空船的名字叫做 USS BLAISE PASCAL,hmm…….

Galactic Attack 開發初期,Robert 的開發進度不快。在那之前,一般人想在 Apple ][ 開發程式,要嘛是用內建的 BASIC,要嘛就是直接寫 6502 的組合語言。前者執行起來速度很慢,後者寫起來相當麻煩。Robert 用起來都不順手。直到 Robert 購入了一套神器:Apple Pascal

和 BASIC 比起來,Apple Pascal 有許多優點。首先,Pascal 語言本身就比 BASIC 優秀,結構化的語法對上萬行的中大型專案有顯著的好處。另外有個很重要的功能:Apple Pascal 允許開發者將專案分成數個不同的 「程式區段 (segment)」。程式執行到某個區段時,該區段才會被載入到記憶體中執行;區段用不到時就會被掃出去,不會占用多餘的記憶體。這個功能讓開發人員可以很輕易地設計更加複雜、龐大的程式,對遊戲開發非常有利。當然,BASIC 也不是做不到(像是用 BASIC 開發的 Ultima 就是一例),但就比 Apple Pascal 麻煩許多。最後,因為 Apple Pascal 所使用的磁片格式和當時普遍使用的 Apple DOS 格式是不一樣的,所以多多少少還帶有一點防拷功能。

如此好用的開發工具,Robert 一用就愛不釋手,馬上就改用 Apple Pascal 開發 Galactic Attack

Robert 花了幾個月的時間,把 Galactic Attack 完成了。但現在他遇到了另一個問題:這遊戲沒辦法發行。原因是 Apple Pascal 編譯出來的程式並不能直接在一般的 Apple ][ 上執行,必須要有一套專門的執行環境「執行時期系統 (run-time system)」才行 — 除非你也有一套 Apple Pascal。但不幸的是:這套執行環境還沒有完成。雖然 Apple 宣稱「我們正在努力開發,很快就會出來了!」,但沒有就是沒有。所以雖然遊戲完成了,Siro-Tech 還是沒有辦法發行這個遊戲。

幸好,出錢的 Sirotek 家族口袋夠深。既然 Apple 說很快就會出來了,那就等吧!不急。有錢就是任性。

所以 Robert 就趁著這個時機,投入下一個專案。嗯,對,還是用 Apple Pascal。意外嗎? ^_^


系列文章:

  1. Sir-Tech 的誕生
  2. Galactic Attack(本篇)
  3. Wizardry

參考資料:

One thought on “Wizardry 開發史 (2) – Galactic Attack

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *