Skip to main content

· 3 min read

你可能沒有想過,在有蘋果麥金塔電腦和單色視窗之前,電腦遊戲就以文字冒險遊戲 (Interactive Fiction, IF) 的形式存在了.

玩這種文字冒險遊戲就像看小說一樣,所有的場景,人物,動作,怪物,全都以文字敘述來表示. (比較老一點的玩家可能想起另一種叫 MUD 的網路遊戲。在 MUD 裡 "砍" 怪物掉血,是以 "史萊姆被玩家小 G 砍中失血 10 點" 這樣的文字敘述來表示。沒錯,MUD 就是從文字冒險遊戲進化來的)

要設計這種古老的遊戲,需要一些寫程式的技術,好來設計文字冒險遊戲中出現的場景,角色,房間 (D&D)

這種古老的 "技藝" 在 2006 年產生了驚奇的改變. inform 7 (之前當然有 inform 6, 5, 4...) 是第一個使用接近普通英語語法寫作,提供整合式開發工具 (IDE) 讓開發可以互動進行的文字冒險遊戲開發工具.

例如 "設定" 冒險小說的標題與作者,可以直接寫作如下:

"Harry Potter" by J.K Rowling. The story headline is "Harry Potter and the Goblet of Fire".

要建立一個場景,在 Inform 裡就等於建立一個 "房間"

Hogwarts School is a room

用 inform 7 寫文字冒險遊戲根本不像在寫程式,一個括弧或是一個判斷語句都沒有! 在 IDE 中每寫完一段,可以按下左上角那個長得像瀏覽器圖示的 "Go" 按鈕,右邊的視窗中立即顯示可以玩的文字冒險遊戲!

inform 7 對於文字冒險遊戲愛好者而言,真是讓人瞳孔放大的改變呀.

更新:如今 Inform 7 發佈剛屆滿兩年,也有更好的教學可看囉 Write a Text Adventure With Inform 7

· One min read

Google App Engine for developers http://www.niallkennedy.com/blog/2008/04/google-app-engine.html

Google App Engine 大量使用了 django 的架構與功能 http://code.google.com/appengine/articles/djangoforms.html

Google App Engine 使用的 Model Types 和 Property Classes http://code.google.com/appengine/docs/datastore/typesandpropertyclasses.html

直接可用的 Google App Engine 範例 http://code.google.com/p/google-app-engine-django-guestbook/

讓 Django 使用者更容易遷移到 app engine http://code.google.com/p/google-app-engine-django/

app engine group http://groups.google.com/group/google-appengine

Python 性能調優 ppt http://www.haokanbu.com/story/17930/

· One min read

Wireshark 一直是我工作中不可或缺的軟體,現在終於出 1.0 啦!

更棒的是 1.0 版同時提供了 intel mac 版!有圖有真相。

看的出來不是 Native Cocoa,而是透過 X 來支援的,所以應該看不到 iphone 版?XD

· One min read

Sphinx 是 Python 2.6 新採用的 rst 文件生成系統.

要開始玩首先得下載 Python 原始碼

svn co http://svn.python.org/projects/doctools/trunk/ python

下載完後進入 Doc 目錄,輸入

make html

則會自動下載 sphinx 與相關程式,然後自動編譯 rst 檔案.

如果輸入

make web

的話則是產生一個可執行的線上網頁文件程式。此網站程式甚至還支援搜尋,真是強悍到有點扯 @@

Update:

Sphinx 產生的首頁原來是從 template 中 render 的。看來拿到其他地方重用的彈性並沒想像中的高. 一般使用 rst 時還是繼續用自己寫的 mopowg 吧.