build OpenTTD windows binary with FreebSD

[華語, cmn-Hant-TW]

FAILED…

懶得在 Windows 下裝一堆開發工具,所以就動那一堆 FreeBSD 的主意。

首先要裝 mingw,用 ports 裝應該是最方便的。

  • devel/mingw32-gcc
  • devel/mingw32-binutils
  • devel/mingw32-bin-msvcrt

測試方式也很簡單,用 mingw32-gcc 隨便編譯個小程式看能不能動即可。

OpenTTD 的原始碼的部份,要找最新的開發測試板的話直接從 svn 抓是最方便的,去抓一下

svn co svn://svn.openttd.org/trunk openttd

然後參考官網的 wiki 的做法來 make。FreeBSD 要另外裝 devel/gmake,原因不詳述,然而官網裡面說的 Makefile.config 並不會生出來,所以就卡在這邊,等以後有空再來試看看要怎麼調才能動。

Posted in Games. Tags: , , . No Comments »

NBA 2K9 的 sliders

[華語, cmn-Hant-TW]

NBA 2K9 的預設模式打起來太快,分數太好拿,隨便投隨便進,打起來很沒真實感。 網路上有很多好用的 slider 做得調整遊戲的節奏,找了一下看到這個 REALISTIC 12mins HOF slider,照著設定後打起來正經有較真實,儘管我沒像他講的要用 HOF,我用較簡單的 Pro 打起來也有感覺到較真實。

這樣才叫做玩 NBA Game 嘛。

Posted in Games. Tags: . No Comments »

NBA2K9, Steam

[]

買了正版的 NBA2K9。 現在媒體發財經新聞言必稱受到全球金融海嘯的影響,所以我這應該就是替全球拼經濟了。

畫面遊戲性都還不錯,用 3850 跑 1440×900 特效開一開都還算可以接受。不過在可以玩之前到是遇到了一堆鳥事,怎麼會有那麼巧的事情都和 Steam 這個遊戲平台有關,鳥到差點想去找破解板來玩了。

首先是安裝的時候 Steam 一直抱怨空間不足不給安裝,你老師咧我最好是空間會不足啦,結果發現不要用自動安裝,直接手動去執行光碟片上的 Steam 的安裝程式就不會遇到這種問題了。

然後安裝好之後顯示一切 OK,結果要跑就落屎了,無論怎麼弄怎麼重灌都只會吃 “This game is currently unavailable” 的錯誤訊息,光碟片在手還一直噴 unavailable 是怎樣,乾脆吐個連結說 This game is currently available on TPB 算了。後來在 Steam 的官網看到了這篇。

https://support.steampowered.com/kb_article.php?ref=4595-WEXN-6831

詳細的錯誤嘗試這邊就不提了,結論就是 THIRD PARTY GAMES 那段,安裝 Microsoft Visual C++ 2005 Redistributable Package 後問題就解決。

拜託一下,不要讓人玩正版遊戲比破解版還辛苦好不好?

Posted in Games. No Comments »

OpenTTD 的字型問題

[en]

先來抱怨一下,OpenTTD 的多國語系功能有一個很大的麻煩就是:你設定了特定語系又沒有指定該語系的字型的話,在一開始遊戲的時候就會跳出紅視窗哭么一下,然後有文字的地方就會通通顯示成空白了。啊有問題的話為什麼不直接跳回預設的英文語系咧?

回來講字型,這邊講的是主要是台灣漢文的字型。 在 OpenTTD 中有 small、medium 和 large 這三種大小的文字,預設值分別是 6 點,10 點,和 16 點。 當然用非預設大小的字也不是不行,只是說在遊戲中看起來會比較怪就是了,在 OpenTTD 的 Wiki 上有詳細的設定說明 (包括字型、大小及反鋸齒)。

台灣漢文在設定的時候會遇到什麼問題咧? 照預設的情況下,第一眼的給人的感覺就是字太醜,只是說 10 點以下的向量漢字本來就是不可能畫得好看就是了。 不過有開 32bpp 的話那就可以開平滑,效果會好很多。 實測的感覺是 Mac 的預設字型還可接受,但是有點糊糊的;新細明體的話也可接受,但是字太淡,看起來有點吃力,而且一樣是糊糊的。

要清楚的話,那就要找點陣字。不過 OpenTTD 只能吃 TrueType,所以只能找有內嵌點陣字的 TrueType 字型。 fireflysung 的效果不錯,不過 fireflysung 只有內嵌 11-16 點的點陣字,所以只有 large 可以完全符合,效果也不錯,medium 用 11 取代 10,效果也還可以接受,至於 small 的話就沒辦法了,看是要直接用 11 點或是繼續用糊糊的向量字。 另外就是 medium 用 fireflysung 11 的點陣字還會遇到一個問題:字會超出 UI 的框框。 這也不讓人意外,因為本來的介面是設計給 10 點的字用的,用 11 點的字當然會有點塞不下。

壓到框框的上面感覺就比較不舒服一些,好像字浮在那邊一樣。 OpenTTD 主要都是用 medium 大小的字,所以幾乎每個視窗都看得到有字浮在那邊,不舒服感倍增! 既然看不爽那當然就要動手下去修改了,把字通通往下移一格,這樣看起來就好了不少。

有需要的可以下載 odo-openttd-11.ttf ( 由 GPL字型 fireflyR11.bdf 修改後轉換而得,改過的 BDF 檔可在此下載)。

要注意的是這是一個特別針對 11 點字做的「假TTF檔」,所以只有 11 點能用,其他的大小都是空白,也因此只適用於 medium。 small 和 large 就用原來的 fireflysung.ttf 吧。

Posted in Games. Tags: . No Comments »

Saving… please wait

[華語, cmn-Hant-TW]

Test Drive Unlimited 有一個很討人厭的 bug (?) 就是在不預期的當機之後,再重新進遊戲的話可以到家裡面,但是只要把車一開出門之後,馬上就掛掉。 畫面會卡在 “Savingplease wait”,然後就完全不能動卡在那邊。

解決的方式是把一個叫 radial.cdb 的檔案砍掉,這個檔案在 Windows XP 下是放 %SYSTEM_ROOT%\Documents and Settings\All Users\Application Data\Test Drive Unlimited 下面,而在 Vista 則是放在 %SYSTEM_ROOT%\ProgramData,砍掉後重開遊戲應該就可以解決這個問題了。

(圖片來源: 巴哈姆特)

Posted in Games. Tags: , . No Comments »

OOTP 中的台灣資料

[]

有在玩 OOTP 的人應該都知道裡面有台灣的棒球設定,不過資訊都蠻舊的,然後沒有國旗只有奧運會旗,而且縮寫是 TPE…然後產生出來的球員名字又不知道是哪生出來的拼音,看起來完全不像台灣選手的名。

所以我就弄了一個小 patch,有在玩 OOTP 2007 的人可以試看看。

1. 國旗的部份其實在 databases/nation_flags 目錄裡面就已經有放國旗了,不過他的名字是 tai.png。把他改成 twn.png,接著把 databases 下 nations.txt 的台灣那行的 TPE 改成 TWN 就完成了。

2. 姓名的部份因為 OOTP 2007 民族的部份數量是固定的,所以不能再加一個 Taiwanese 了,那只好把 Chinese 中的那些怪拼音挖挖掉,填成台灣人比較常用的拼音。 然後我還把 CPBL 現役的球員的名字都填進去了,所以應該可以看到一些熟悉的名字 (姓可能就不同了)

3. 城市的部份台灣全國鄉鎮市級以上的行政區幾乎都符合 OOTP 千人以上城市的要求所以我幾乎通通塞進去了,然後人口也用內政部最新統計的資料。

相關資料:
直接蓋過去的 Patch,把裡面的三個檔案丟到 database 目錄下即可
http://pighead.cc/~whsyu/downloads/index.php?dir=ootp/&file=PATCHED-1.1.zip

台灣相關部份的原始資料
http://pighead.cc/~whsyu/downloads/index.php?dir=ootp/&file=OOTP-TW-1.1.zip

Posted in OOTP, 地理. No Comments »

處理 dos 格式的文字檔

[]

一些簡單的工作用 sed 處理是很方便的,但是在編輯 OOTP 的 names.txt 的時候遇到了一些小問題,這個檔案是長這樣子的:

Aaron,1,0
Abberley,1,0


如果我要把所有 A 開頭的人名找出來,然後刪掉,那 /^A/d就可滿足我們的需求,而如果要把 0 結尾的人名找出來刪掉的話,理論上用 /0$/d 就收工了。 不過在 freebsd 下試一下發現 sed 不鳥我,後來想了想覺得應該是換行的問題。 Unix 系統的換行是 LF,而 Windows 的換行是 CR+LF,比 Unix 多了一個 CR。 所以說其實從 freebsd 的觀點來看這兩個的行末不只是 0 而已,而是 0 後面再接一個 “CR”。 這樣看來只要稍微改一下,從 /0$/d 換成 /0^M$/d 就解決了。 ( ^M 在 vim 下可以用 ctrl+v 接 ctrl+m 按出來) 試過之後果然這樣就可以用了。

要取代的話用 s// 也是一樣的情況,不過要注意的是如果輸出要維持在原來的 dos 格式,例如把0結尾換成1結尾,那就要 s/0^M$/1^M/ ,要是沒在管的話那就沒差了。

同樣的,在 grep dos 格式的文字檔的時候也要需要注意這個問題,總之就是有要處理/判斷行末的時候就會遇到,之前很少會處理這種 windows 產生的文字檔所以也沒在注意,之後再遇到應該就不會忘記了 :p

Posted in FreeBSD, OOTP. No Comments »

查人口及經緯度

[]

因為OOTP的城市資料的部份有需要經緯度及人口的資料,就找看看網路上有沒有資源了。

台灣人口的資料不難找,人口統計電子報經常性的會有新資料丟出來。不過電子報中每月人口增減這類的部份只有列到縣市級的,因此我們得往更上游去找,也就是內政部的戶役政為民服務公用資料庫啦,雖然說丟出來的是excel檔讓人有點想OOXX,不過後來想想反正拿下來還是會丟到Spreadsheet軟體處理,那也就算了,也許哪天他們會想丟.ods出來也說不定 :p (有夢最美 希望相隨…)

至於經緯度的部份就比較麻煩了,知道經緯度要查位置很容易,Google Maps 就有支援了,反過來就比較麻煩。像是Urmap的話是可以查座標處的經緯度,但是要查指定行政區的話就只能一直查詢加移動了。後來找到有人做了一個地址查地圖的網站,輸入地址後會顯示Google MapsUrmap的地圖出來,然後還會顯示經緯度及二度分帶座標,那這就符合需求了啊,只是說全國有三百多個鄉鎮市級以上的行政區,要花點時間查詢就是了。

Posted in OOTP, 地理. No Comments »