micropolis(simcity)をMac OS X 10.4(tiger)で動かす

micropolis.jpg


http://www.donhopkins.com/home/micropolis/
http://weblogs.asp.net/bsimser/archive/2008/01/10/simcity-source-code-released-to-the-wild-let-the-ports-begin.aspx
http://developers.slashdot.org/article.pl?sid=08/01/12/1846256

今年に入ってからだと思うんだけど、初代simcityのソースコードがGPLv3ライセンスで公開された。今週頭くらいから、Mac OS Xで動かした人がいないか色々と調べていたんだけど、

http://techtrim.net/2008/01/14_17184.html

という記事を見つけて早速自分でもコンパイルしてみるべく、上記の通りにソースコードとMac OS X用のパッチをダウンロードして、記事通りにmakeしてみる。が、しかし、

http://www.satou30.info/d/archives/760

にあるのと同じように unsetenv がぶつかっているよ、というエラーで止まってしまっていた。patchをみてみると、

> Please use the newer snapshot from:
> http://git.zerfleddert.de/cgi-bin/gitweb.cgi/micropolis
>
> Direct .tar.gz link:
> http://git.zerfleddert.de/cgi-bin/gitweb.cgi/micropolis?a=snapshot;h=HEAD;sf=tgz

というような記述があったので、Direct .tar.gz link の方にアクセスして最新版のsnapshotを持ってきてみる。こいつにまたパッチをあてようとすると、すでにパッチされている、と表示される。どうやらパッチがあたった状態のソースコードらしい。でも、やはりunsetenvのエラーが出ることには変わりない...。

ちょっとあきらめて仕事に戻ったりしつつ、さっきまた検索してみたら、

http://d.hatena.ne.jp/paraches/20080115

というページにたどりつく。お、これならコンパイル通るかな、と思って記事通りに修正したところ、見事にコンパイルが通り、simcityが立ち上がる:)。使ったソースコードは上記のsnapshotのもの。

ちなみに、自分の環境では特にgtk周りのものとか入れなかったんだけど...。finkでgtk+shlibsは入っていたけど、それでOKだったんだろうか?

で、ちょっと遊んでみて終了したところ、ターミナルの方に

> Can't find audio player!
> Please make sure you have aplay, play or mplayer in your path.
> A working play for OS X is available from:
> http://www.hieper.nl/html/play.html

というメッセージが出ている。早速、このURLからplayコマンドを持ってきてみる。universal binaryになっていたんで、そのままターミナルから

sudo cp play /usr/bin/

とやってコピーしたあとに再度 ./Micropolis を実行したところ、ちゃんと音が出るじゃない:)。オブジェクトもいちいち"wire"とか"nuclear power station"とかしゃべってくれるし、効果音とかも入っている。なかなかいい感じだ:)。

ちなみに、MacBookだと画面が小さすぎて下がはみ出てしまうんで、

http://techtrim.net/2008/01/14_17184.html

にあったようにリソースを修正して問題なくMacBookの1280x800な画面でも利用できるようになった:)。

simcity 2000にはまって色々とやっていたものとしては非常に懐かしい。しばらくはまりそう。

twitter

ウェブページ

Powered by Movable Type 4.261
Creative Commons License
このブログはクリエイティブ・コモンズでライセンスされています。