Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。 Yokohama.rb 発起人。
2008-02-28

花粉は見える

花粉は見えないものと思っている人が多い気がする。 そんなことはない。肉眼ではっきり見える。

例えば、スギの木から煙のようにもくもくと立ち上る花粉の映像を見たことはないだろうか。 この時期なら身近なところで簡単に目視できる。わかりやすいのは自転車のサドルとかハンドル。下地が黒いものなら白っぽい粒が積もっているのがはっきりと見える。半日あればはっきり見えるだけの量が積もる。

さらによく見ると花粉はいろんなところにあって、車のフロントガラスとか、電車の手すりの人の手が届きにくい高さのところに積もってたり、会社のデスクの上だって積もっている。

さらに上級編として、空中を飛んでいる花粉を見ることもできる。 コツとしては、朝の電車の中で、日光を背にして座り、正面に黒いコートを着た人がいるような状況を作る。ほこりと同じように、空中を漂う花粉も直射日光にあたると白く光って見えるから、暗い車内ならそのコントラストで目視できる。ほこりも見えるけど、花粉のサイズと球形はどれも同じなので、感覚をつかめばどれが花粉かわかる。 見るとわかるけど、そんなに多くないので、頑張ればよけられるかも。

2008-02-26

世界樹2

リアルタイムでやりたかったな。

2008-02-23

[プラポケ]削除

削除しました。
2008-02-22

サーバー障害のお知らせ

害があるのはプラポケくらいかと思いますが、一応報告しておきます。

今日の20〜21時くらいの間、回線が落ちてました。原因は長男(5歳)がずっこけて、モデムを繋いでいる電源タップを引きちぎったためです。タップを取り替える間の約1時間ほどネットが不通となっていました。

我が家のサーバートラブルは大体長男が原因です。そんなところにサーバー機材置くなって話ですが、狭い家なのでリビングにマシンやモデムがあるのです。

2008-02-22

世界樹の迷宮II

世界樹の迷宮II 諸王の聖杯(特典無し)

もう発売してたのか。すっかり忘れてた。

2008-02-22

[Ruby]WindowsでRubyを使うときの不便さ

普通、Rubyはシェルから起動する。Windowsだとコマンドプロンプトってことになるんだけど、これが使いにくい。zshとかgrepとか使いたい。というわけで、Windows上にVMでLinux環境を作るわけだけど、Windows依存のプログラムを開発する場合には、VMが使えない。というわけでしぶしぶCygwinを使うんだけど、RubyはActiveScriptRubyを使いたい。例えば、Ruby/SDLとかのバイナリとかCygwinだと入手しにくいから。で、Cygwin上でActiveScriptRubyにパスを通して使うんだけど、パス通すだけだとirb.batとか打たなきゃいけなかったりする。しかもVistaだとCygwinのzshが動かなかったりした。

というわけで、なかなかいい感じにRubyを実行できなくて、結局コマンドプロンプトを使ったりするんだけど。これなんとかならないかなあ。Pythonについてくる専用コンソールみたいのがほしい。

追記:

  • nyacus + rakを使う方法があるようです。あとで試してみます。
  • PoderosaというWindows用高機能ターミナルエミュレータがあることをコメントにて教えていただきました。Cygwinと組み合わせて使うことができるようです。こちらもあとで試してみます。
2008-02-20

[アイデア]Permalinkをつける

その方法の一つが、各ページにきちんとPermalinkをつけて、見出しだけでも見れるようにすること。会員でないとページは見れなくても、少なくともそういうコンテントがあるということは外からわかる。これが非常に重要なのです。たとえばニコニコ動画はそうなっています。

http://blog.livedoor.jp/dankogai/archives/51005330.html

チャットのコメントから始まり、自慢できるような戦闘結果とか、アイテムの精錬結果とかそういう結果すぺてにPermalinkをつけてしまうというのはいいかもしれない。

2008-02-19

[プラポケ]イベント開催のお知らせ

ありがたいことにスポンサーからの広告収入が入りましたので、プラポケにてイベントを開催します。

第1回目となる今回は、Amazonギフト券をプレゼント。

  • 1位……Amazonギフト券5000円をプレゼント
  • 2位……Amazonギフト券2000円をプレゼント
  • 3位……Amazonギフト券500円をプレゼント

成績はステージ11のものを集計します。 今ステージ9(残り9日)で、次のステージ10は8日開催(オープン戦)で行われ、その後にステージ11が20日間開催(たぶん18日後にスタートです)されます。

今からなら新規登録でも十分戦えると思います。 ちなみに現在のアクティブユーザーは約21名です。 中断している方はこのときだけでも是非是非戻ってきてください。

どうぞふるってご参加ください。

追記

  • ちなみに私も参加します。もし入賞すれば賞品を頂きます
2008-02-18

タイトルなし

Yuguiさんの本(別にここまでは秘密じゃないのか。そういえば前も日記に書いてたよな)は、俺の書く本とぜんぜん違う。俺はいろんな人に、とにかく手元でプログラムを動かしてほしくって、そこに立ちはだかる障壁を取り除きたいみたいな衝動があって、それを書いているんだと思う。サンプルコードと動かし方と最低限の仕組みを教えるから、後は察しろみたいな(自分がこういう本が好きだし、そういう本があったからここまで来れた)。詳しく知りたかったら、他の良書を読めばいいというスタンス。Yuguiさんはその良書のほうを書こうとしているんだと思う。

2008-02-18

CodeRepos

そうそう、CodeReposのコミット件をお願いしたら、いただけた。自分のプロジェクトはここに移動させようかと。プロジェクトなんてそんなにないんだけど、MyGame、バカが征く on Railsくらいかな。プラポケはどうしようかな。

あとここのtDiaryに置き換わる予定のブログシステムBilbo(100行以内でブログを実装するプロジェクト(決してゴルフじゃない)。まだ公開してない)というのがあって、これなんかCodeRepos向きかなと思う。

2008-02-18

Rails勉強会@東京第27回

行ってきた。

雑談部屋で星一さんにStar Rubyについてデモを見せてもらいながらあれこれ教えてもらった。イメージがわかったので帰ってから早速Star Rubyを動かしてみた。サンプルは全部ちゃんと動いた。

前半はYuguiさんの某秘密のあれに参加した。どさくさにまぎれてこっちのお願い事を頼んだらOKがもらえた。RubyやRailsに詳しい人を探していたのだけどやっと見つかった。

星さんにもお願いしたらOKしていただけた。自分がいまやっているプロジェクトにずっと不安があったのだけどこれでだいぶ気が楽になった。気分的な安心感重要。

勉強会について。前半のセッションは、「オブジェクト」という言葉を含んだ1行の文章の添削で、楽に1時間話せるメンバーで、そういうことを話して、久々にこういうノリを感じることができた楽しいセッションだった。

後半は舞波先生によるActiveScaffoldの授業。ActiveScaffoldについては何にも知らなかったんだけど、もう大丈夫になった。

2008-02-18

[MyGame]MyGameがVistaにインストールできない件

Windows VistaでRubyを使っているとき、 Ruby/SDLとか、 Star Rubyとか、 MyGameとか、 たぶんMiyakoも、 をインストールしようとするとプログラム領域にファイルをコピーできなくて失敗することがある。 これは「Windows Vista UAC(ユーザーアカウント制御)機能」が有効になっていると、上記ライブラリのインストーラがプログラム領域に対する書き込み権限がなくてライブラリファイルのコピーができないため。 Vistaでは、このUAC機能がデフォルトで有効になっている。

ちなみにRubyGemsのgemコマンドでも同じ現象が起こる。

解決方法は次の通り。

--

UAC機能が有効になっている場合、一時的にUAC機能を無効にした状態でインストール作業を行い、ライブラリのインストールが終わったらUAC機能を有効に戻す、という手順で上記のライブラリをインストールすることが可能です。

追記:Rubyを「C:\Program File」フォルダ以下にインストールせず、たとえばCドライブ直下(C:\ruby-1.8)にインストールすればUAC機能を気にしなくて良い。

2008-02-09

[Firefox]Firemacs

Firemacsを入れた。テキスト編集のキーバインドがEmacs-likeになるアドオン。こんな便利なものがあったとは。

2008-02-08

初心者の件

この人の言うことすごく良くわかる。よく知らなくても、さくっと作れることはオレにとってすごく重要で、ただ目の前の目的を達成したいだけなのに、それまでの障害が大きくて挫折とか、過去に数え切れないほどあった。

でもまつもとさんの言うこともわかる。5年くらい前かな、当時C++に嫌気が差していたころにRubyを知った。C++で覚えたクラス設計の知識はすぐにRubyに流用できたし、記述量の少なさとか動的なゆるさとかが肌に合ったのかな。すぐにRubyにはまった。当時Cを使った開発の業務経験はもうそれなりにあったけど、プログラミングの知識はほとんど持ってなかった。そういう意味では初心者だった。それからずっとRubyを使い続けて、3年くらい経ったときにブロック付きメソッドを理解し、そのあと1年くらい経ってからクロージャーを理解した。そのころになるともう抽象化の技術(発想)が身についていて、C言語を使ったプログラミングスキルも劇的に向上していた。Rubyは(それを使っているうちに自然と)初心者のオレをより高いレベルに引っ張り上げてくれたんだよね。

どの意見が正しいとかはわかんないけど、プログラミングの理解の仕方って人によって違うから、初心者どうこうも一概には言えないと思う。

わかったこと。まつもとさんのプログラムに対する直感的なイメージはオレのそれとだいぶ違う。オレはマシン語を知ってプログラムの本質を理解したと自覚していた。しかし、まつもとさんは初めから高級言語をそういうものとして受け入れることができたのだという。

http://dgames.jp/dan/?date=20040806#p04

たぶんlispだと思うんだけど、それを高校生の頃に資料を読むだけでフツーに理解できたっておっしゃるんですよね。

オレは泥臭く手を動かしていかないと何事も理解できないなタイプ。たぶんオレのようなタイプは少ないと思う、Ruby界には。

あとオレは「整数型には0〜65535の値を格納できます」とか「文字列は最大32768文字まで扱えます」とかの方が理解しやすいだよね。そこからコンピュータってもんがイメージできる。何文字でも扱えるとか言われたら、そのブラックボックスが気になってしょうがない。

あとRubyは初心者が学ぶには悪い言語じゃないと思うけど、情報集めが難しい。対象領域が広すぎたり、初心者には無用な高度な話がたくさん出てきちゃうから、なかなか必要な情報にたどり着けないと思う。HPSとかだとその辺がぜんぜん違うんじゃないかな。

2008-02-07

ここ数日メールを取得できてなかった

Gmailで「別のアカウントからメールを受信」を使ってるんだけど、「前回のメール チェック: 5日前」とかなってた。前もこれで1週間ほどメールに気づかないことがあったんだよな。

2008-02-07

VMware Playerを入れた

Vista環境でcoLinusをネットワークにつなぐやり方がわからなかったので、VMware に挑戦。

VMware Playerというのを使えばよいらしい。この解説を見ながらやったら簡単に入った。ダウンロードしてインストールして、最初に別途ダウンロードしたUbuntuを読み込ませたら、あとはメニューに従うだけ。迷うことなく、特に何もすることなくネットにもつながっていた。あら簡単。さようならcoLiunx。

Ubuntuは初めてだったけど、Debianとの違いがわからないくらい。

Railsの開発環境の構築

以下はRailsの開発環境を作るまでのメモ。

いつものやつを入れる。

sudo apt-get install zsh subversion openssh-server sqlite3

rubyを野良ビルドする前に以下を入れる。

sudo apt-get install libc6-dev libreadline5-dev libssl-dev zlib1g-dev

あとこれも。

sudo apt-get install libsqlite3-dev

zlib1g-dev

これがないとgemコマンド実行したときに以下のエラーが。

/home/dan/local/ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in `gem_original_require': no such file to load -- zlib (LoadError)

libssl-dev

これがないとrailsのgenerateスクリプトでこんなエラー。

/home/dan/local/ruby/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/initializer.rb:159:in  `require_frameworks': no such file to load -- openssl (RuntimeError)

libsqlite3-dev

これがないと、

gem install sqlite3-ruby 

したら…

ERROR:  Error installing sqlite3-ruby:
        ERROR: Failed to build gem native extension.

/home/dan/local/ruby/bin/ruby extconf.rb install sqlite3-ruby
checking for sqlite3.h... no
2008-02-05

身辺の整理

メインのPC(NEC:LavieJ WindowsXPのノート(P3-933))が壊れちゃったのを機に今後の環境を真面目に考えている。この壊れたPCはもうすぐ修理から帰ってくるだろうけど(5年保障のギリギリ期間内だった)、そろそろスペック的に限界を感じている。SP2にするとやけに重くなるから、SP2を入れずに無理やり頑張ってたし。

本当はMacのノートがほしい。でも金銭的な理由で、ちょっと厳しい。ソフトウェア開発者なんだから、本当に必要なんだったらそれくらいの投資を惜しむなよとも思うんだけど、それでもちょっと厳しい。

今修理中のPCはすごくお気に入りで、5年間使い続けた。初めてメインのPCをノートにしたんだけど、これがすごく使いやすかった。でも実際はほとんど外に持ち出すことはなくって、何が便利だったかというと、テーブルの上にスペースをとらずにずっと置きっぱなしにできる点が良かった。テーブルに引くのは電源アダプターのケーブル一本だけだけで良かったし。あとワンスピンドルで小さい点も良かった。CDとかDVDのドライブはいらない。滅多に使わないから。そういう余計なものがないのが気分的に良かった。ほんとはゼロスピンドルが理想だけど(回転軸が増えるほどストレスになる。気分的にね)。

で、考えているうちにひとつのアイデアが浮かんだ。テーブルの私の席は部屋の角にあり、そのすぐ右隣(部屋の角)にLinuxのサーバーPC(P3-350×2)が置いてある(キーボード、マウス、ディスプレイはなし)。そのサーバーの上に夏に買った新しい未使用のサーバー用PCが1台置いてある(DELLの異常な安さに引かれて買ったけど、電気代がかかりそうで使ってなかった)。ここにPCが置けるんだから、液晶ディスプレイをテーブルに置き、ここのPCに接続して、キーボードとマウスは無線の小さいやつを使えば、今までのスペース面での快適さは実現できるんじゃないか。テーブルに引くゲーブルは液晶の電源と映像の2本になるけど、ノートより価格やスペックは圧倒的に有利になるし。というわけで、Vista(1ライセンスあまってた)を空いているPCにインストールし、あまっていた15インチの液晶を持ってきて、無線のマウスとキーボードは買ってきて環境を作ってみた。Vistaに慣れなていないのでアレだけど、ハード的にはそんなに悪くない。

でもVistaがいまいち。やっぱりzshがないと生きていけない。Cygwinは入ったけど、zshが動かない。coLinuxを入れようと思ったら、うまくいかず挫折。VMware使ったことないし、Vistaで動くのか知らない。

開発はシェル上でやるから、端末としてのPCのスペックはそんなに高くなくてもいいんだけど、かといって高速なPCをサーバーにすると、電気代がかかりそうでやりたくない(消費電力は自分で実際に測ってみてみたいのだけど)。あとVistaが気に入らない。Macがほしい。じゃあMac miniを買えばいいんじゃないかとか思ったり。とかまあ決定打を思いつかずいまだ考え中。

まとめ。

  • 省電力、静音が前提でできるだけ性能がいいLinuxサーバーがほしい(帰ってきたノートPCが候補かな)
  • メインのPCはMacにしたい
  • Vistaはまだ開発には使いづらい(いやよく知らないだけかも)

↓今あるPC

  • P3-350×2 …… Linuxサーバー。我が家で常時稼動している
  • P3-933 …… ノートPC。修理中。次期サーバー候補?
  • P4-3G …… 夏に買ったDELLのサーバーPC。今はVista入れてる。めっさ速い。Vistaごと妻にあげてもいい
  • P4-2.4G …… 5年くらい前のPC。妻がXPを入れて使ってる。DELLと比べるとかーなり遅い

Mac miniの騒音と消費電力ってどのくらいなんだろう。あとスペック。それ次第では、Mac miniでサーバーとメインPCを両立できる可能性もあるんじゃないか。

↓知りたいこと

  • Mac miniのスペック
  • 上記DELLのPC(P4-3G)のひと月の電気代
2008-02-01

Vistaのメイリオフォント

なんですかこれ。激しく見づらい。たぶんこういうことだと思う。

今までXPを主に使っていたけど、XPではフォントのエッジがくっきり、ドットがはっきり見える。それに慣れていた。

するとメイリオフォントはにじんで見えちゃう。目のピントが合ってないと錯覚する。でもどうやってもピントは合わない。てなかんじで画面を見てらんないんですが。激しく苦痛。

使ってればそのうちこっちの方が良く見えてくるのかなあ。

追記:

ただ液晶そのものが調整不足でにじんでいるだけだった。