七月 22, 2008
» 給我五分鐘,教你用中文腳本寫一個 RPG (使用 TextRPG)

TextRPG 是我最近找到的一個好玩 python 模組,由德國人開發。
作用就是用來寫一個純文字的冒險遊戲。
目前的版本已包含了 RPG 中常見的對話、戰鬥等元素,整個遊戲可以完全由一個 python 腳本來構成。

因為實在太簡單了,所以來個五分鐘上手文好了:)

1. 安裝軟體

安裝好 Python 與 easy_install 模組後,接著安裝周蟒與 TextRPG


$ easy_install zhpy
$ easy_install textrpg


如此安裝好後就可以開始寫 RPG 了。

2. 準備環境

新建一個檔案夾,首先,用文字編輯器新增一個 rpg.ini 檔案,裡面內容如下:


[charactor]
角色=Char
樣板=template
名字=name
姓名=name
說=say
詢問=ask
動作=act
行動=act
比較技能=compete_skill
取得經驗值=get_exp
生命力=bTP
生命值==TP
攻擊力=attack
武器=weapon
防具=armor
傷害=wounds
活著=active
[story]
故事=story
儲存=save
給予經驗值=give_exp
戰鬥=battle
對話=diag
將這個檔案儲存起來。接著開啟適當的 python 程式編輯器新建一個任意檔名的檔案 (範例裡將檔案取名為 HelloRPG.twpy)

在檔案開頭加入三行敘述:

#!/usr/bin/env python
# encoding: utf-8

from rpg_lib.textrpg import *

好了,我們環境已經準備好了。

3. 撰寫故事

因為用 TextRPG 寫故事太容易了,這就編一個大雄大戰小叮噹的故事:

#!/usr/bin/env python
# encoding: utf-8

from rpg_lib.textrpg import *

大雄 = 角色()
大雄.名字="大雄"

小叮噹 = 角色()
小叮噹.名字="小叮噹"

故事("""大雄哭著跑進房間""")

大雄.說("""嗚嗚~~小叮噹,技安跟阿福欺負我""")
小叮噹.說("""口胡,大雄我受夠你了,來戰吧!""")

大雄.攻擊力 = 3
小叮噹.攻擊力 = 90

大雄.動作("""大驚失色,狼狽逃竄""")
大雄.說("""小叮噹,你發什麼瘋!""")

勝利 = 小叮噹.戰鬥(大雄)
如果 勝利:
____故事("""小叮噹打敗了大雄,從此過上清靜的日子""")
否則:
____大雄.動作("從如廢墟般的房間中爬起")
____大雄.說("""呼呼,我還是贏了""")
____故事("""大雄打敗了小叮噹,從此作者掰不下去封筆了。""")


註: 上面程式範例中的 "____" 代表4個空格。用空格來表示程式邏輯區塊是 python 的語法。

好了,我們寫好了故事,接著就是將這個檔案儲存起來。
檔案儲存好之後,我們打開 command line 程式,開始執行這個遊戲:

$ zhpy HelloRPG.twpy
大雄哭著跑進房間
大雄: 嗚嗚~~小叮噹,技安跟阿福欺負我
小叮噹: 口胡,大雄我受夠你了,來戰吧!
大雄 大驚失色,狼狽逃竄
大雄: 小叮噹,你發什麼瘋!

---battle-stats for 小叮噹---
....
---/battle-stats---

大雄 comes closer.
小叮噹: Do you want to attack 大雄? (Yes, no) Yes
You attack 大雄.
小叮噹: How do you want to fight? (Usual, defensive, target head) Usual

You won this round.
大雄 took 80 points of damage and a critical wound.

小叮噹打敗了大雄,從此過上清靜的日子

十二月 21, 2007
» wiifit 與瘦身

有種最簡單的瘦身(減肥)法,就是每天紀錄你的體重曲線。

這個瘦身法的理論依據應該是這樣子:只要在潛意識裡,我們有在意體重這件事,就自然會節制飲食、注意運動。表現出的結果,自然就是會慢慢趨近理想體重了。

要實施這個瘦身法,首先要有一台體重計,再來就是準備一個紀錄體重變化的工具。簡單的工具比如紙跟筆、電腦化的工具如 Excel、或線上工具如 Google 15
你所要做的,就是持之以恆:每天量完體重後,將數值紀錄到這些工具上,然後在意數據(或圖表曲線)的變化。

當然,現在還有個更簡單的選擇-- wiifit。

只要站上 wiifit 測量一下,wiifit 就會將你當天的體重與 BMI 值等資訊一起存成圖表。每次打開 wii 玩遊戲前,只要順便打開 wiifit 頻道測一下,持之以恆下來,估計也會有相同的瘦身效果。同時這也是一種從沒有遊戲嘗試過的新體驗。

在台灣,wiifit 並沒辦法取代健身房,因為 wiifit 只有附日文教練 XD (男女各一喔) 。但是別忘了,許多人想運動卻不想花一筆健身房錢。wiifit 正好讓我圓了請私人運動教練的夢想(還是外國貨 XD)。

我曾經有段時間會到宿舍附近的大湖公園跑步。
跑了一個月,覺得一個人在台北公園跑步無趣的很,出門跑步還要吸廢氣,跑完全身黏黏的還得走一段路回家,相當麻煩。於是我也漸漸停止了慢跑這項運動。

wiifit 的慢跑運動中,全程配有一個 Mii 教練帶著你跑,每次跑的路線都不盡相同,與平常在外跑步一般都只有固定路線不同。而且 Mii 教練也會根據你跑步的狀態做出一些互動,如我跑步時只要一直保持相同的步調,螢幕下就會出現意思為"現在你的步調很不錯喔"的簡單互動訊息。也許這樣的互動準確度有限,不過確實提供了額外趣味與前進的動力。跑著跑著,路上有各種熟悉的 Mii (上 Mii 投票頻道抓的)迎面跟我打招呼,或在旁舉起手來打氣加油。供慢跑的小島風景怡人,各種不同的地形、坡度,帶來了視覺上的不同刺激,保持了新鮮感;踩到草皮、海水的不同踏步音效,也都帶來了相當的樂趣。

昨天買到(<3.7k),剛才終於跑完慢跑小島一圈模式,開啟了可選跑步時間的模式(10,20,30分)。感覺跑步功能很簡單也很有潛力,希望透過 wiiware 的推出,哪天除了慢跑小島外,還有其他場景可以探索。也許有一天,我也能在馬力歐銀河的場景裡跑步,那一定是個有趣的經驗 :D

PS: 在原地跑步又沒穿鞋襪的情況,反作用力可能會對腳踝造成較大的負擔。到底能不能持續靠著 wiifit 達到運動效果,我大概還要自己觀察一陣囉。

12/21 用 2 周活體實驗證明, 人只要胖到一個程度, 雖然有 wiifit 每天運動 30 min , 還是瘦不了 Orz

A Feedjack powered Planet
A Django site.