« 2008年01月 | メイン | 2008年03月 »

2008年02月28日

落書御礼

こくばん.inをリリースして4日経ちますが、はてなブックマークが679件、ノーマル黒板の投稿数が約8300件、共有黒板の投稿数が約3100件と予想を大きく上回る盛況ぶりに驚きを隠せません。
ブログで紹介していただいた方々、取り上げてくださったメディアの方々、そして何よりも懐かしさを感じ取ってくれた多くの方々に感謝の気持ちでいっぱいです。


さて、リリース当初はここまで多くの投稿が集まることを全く想定していなかったためレンタルサーバ上でサービスを運用している現状、早くも容量が危うくなってきました。
一応ヘテムルには伺いを立てているものの、対応してもらう前に容量オーバーする可能性が非常に高くなっています。
計算上はあと2日といったところですが、現在データ圧縮方法その他見直しを図っています。
こんなことなら専用サーバにしておけばよかったというやつですが、ひとまず画像や描画ログなどの静的データを順次別のサーバに移す予定です。
その際は一度メンテ状態に入りますのでご協力よろしくお願いいたします。

[追記]ヘテムルから返事が来て、容量オーバー気にしなくてもよくなりました。さすが太っ腹!


タグやコメントなど追加したい機能は山ほどあるのですが、容量のことがあるので慎重になっています。


ちなみに面白い現象。
リリースは24日の昼、リリースの告知エントリを書いたのが25日(間違えたのか表示が23日になってた)なのに、告知エントリの方のはてなブックマーク数が一桁w
最近はTwitterで告知→はてブという流れがあるため、あえて告知エントリを後ろにずらしてみたのですが順序逆にしてたらおそらく分散してたと思います。
今後なんらかの新しいサービスをリリースする際も告知エントリは後発の方がいいかもしれませんね。

2008年02月25日

こくばん.in β版リリース

先日のコリン・ムック迎撃イベントの発表資料で小ネタとして用いた黒板手書きエフェクトをサービスとして昇華リリースしました。


こくばん.in


見ての通り、黒板です。

チョークは6色のみ。
学校の先生もそれでやりくりしてるわけで、不便なんて言わせません。
一応マウスホイールor上下カーソルでチョークのサイズを変えられますが、エッジを使って細く書いたりするのを代用してるつもりで。

この手のサービスにありがちな、一手戻るだとか初期化とかも一切ありません。
リアルの黒板にそんな機能ないですよね。
ミスっても黒板消しで地道に消しましょう。
意外と楽しいかもしれないですよ?


β版ということで最低限の機能しかありませんが、ユーザ登録やコメントなどできれば追加していきたいなと思います。

2008年02月16日

バレンタインネタゲームのソース公開

すっかり忘れていたんですが、先日のバレンタインゲームのソース公開します。

valentine.zip

ああいう突貫で作ったネタゲームなんかは技術抱え込んでもしょうがないというか大したことやってないので、as3初心者が勉強する取っ掛かりにはいいかなと思います。
コード自体は全部asファイルに書いてあります。
FlashCS3 がないとパブリッシュできないのであしからず。


ごくごく簡単な説明。
今回ほとんどのオブジェクトが画面の右から左へスクロールするので、一定速度の移動を制御する Movable クラスを作って各々継承。
クラス生成時に速度渡せば勝手にスクロールしていきます。
ものによっては衝突判定が入ってくるので、必要に応じて移動処理をオーバーライド。
そのへんの追加処理を抽象メソッドにしておいてもよかったけど、適当なのでパスパス。
効果音再生や衝突判定はイベント駆動させるのが面倒くさかったので、各クラスにドキュメントクラスへの参照を持たせておいて必要時に直接メソッド呼ぶようにしてます。
手抜きプログラミング万歳。


衝突判定を領域分割するとか破片をビットマップに描画するとか最適化の余地はいくらでもあるんですが、実際そういうこと一切やってなくて超富豪プログラミング。
Flashゲーム作る時は何よりもまず遊べるようにするところに注力すべきです。
最適化なんて完成してからでいいじゃない。

こういうミニゲームを仕様書くだけで簡単に構築できるライブラリは作ってみたいですなあ。

2008年02月14日

バレンタインネタゲーム作ってみた

クリスマスネタゲーム作ってみたに引き続き、ネタゲームです。
見ての通り、ほとんど使い回しです。

バレンタインの惨劇!?


カップルをスナイプしたり、チョコレートをスナイプで弾き飛ばしたり、弾き飛ばされたチョコレートをスナイプで破壊したり。
クリスマスと違って、バレンタインにはテーマ曲らしいテーマ曲がないので無音の中もくもくとスナイプする地味なゲームになってしまいました。

例のごとくクリアやゲームオーバーなど全くありませんが、バレンタインなんてなくなればいいと思ってるそこの貴方、思う存分スナイプしませう。

2008年02月13日

アイコンファイルのデコーダクラス作った

flash で favicon.ico を直接読み込みたいなと思ったので作りました。


ICODecoder


マスクデータとかRLE圧縮とか全部対応してますが、クロスドメイン制約のせいでURLを直接指定して読み込むのはほとんど無理という罠。
実際に読み込むにあたっては面倒ですがサーバ介しましょう。
サーバサイドで画像変換しちゃえばいいじゃないかという本末転倒な解決策はこの際無視です。


以下サンプルコード。
デコード結果が配列なのは、ICOファイルに複数のアイコンデータが格納されているため。


var decoder:ICODecoder = new ICODecoder();
var arr:Array = decoder.decode( bytes );

for ( var i:int = 0; i < arr.length; i++ ) {
var data:ICOImageData = arr[i] as ICOImageData;

if ( ( data.info.width == 16 ) && ( data.info.height == 16 ) ) {
// 16x16だったら
addChild( new Bitmap( data.image ) );
}
}

関連エントリ:
外部BMPファイルを読み込むためのデコーダクラス作った
PSDParser リリース

2008年02月12日

アウトプットしたいなら

溜め込んだ知識や技術を作品としてアウトプットしようと思い立ったものの実行に移せない、あるいは完成まで至らないという人が結構いると思うのですが、そんな時は以下を心がけてはどうでしょうか。


これからやることについて宣言しない


「これができなければ会社辞める!」だとか本当にシャレにならないレベルの条件を課す場合は別ですが、こと趣味レベルで「今年こそは**してみる」といった抱負の場合はかえって逆効果になるなあと感じることが多々あります。
自分はもちろん、周りを見回してもその傾向が多く見られるので理由について少し考えてみました。


1. 達成感と安心感

なんとか宣言までこぎつけたという達成感が得られると、そこから先に進むモチベーションが下がるだけでなく安心感めいたものが生じるので、タスク消化の優先度まで下がります。
「こないだブログで宣言したから明日でいいや」なんて考えたことはないですか?
そんなことを繰り返している内に、手をつけるのがどんどん億劫になっていきます。


2. 競合相手

これから作るものを宣言することで他者が同じものを作らないよう抑制できなくもないですが、それがかえって余裕に繋がってはいませんか?
完成度が多少低くてもリリースすることが大事だと思っているならなおさらで、同じものを今まさに誰かが作ってるかもしれないと日々恐れながら開発に打ち込むのが肝要です。

実際、リリースされているサービスって事前告知されてないものが多いわけで「自分もこれ作ろうと思っていたのに」なんてよくありますね。
宣言していた時間があれば作れたなんてもっと最悪です。


3. プレッシャー

「期待されているので完成度を高くしなければ」という変な義務感を自分の中で勝手に作り出してはいませんか?
多少のプレッシャーは必要ですが、自分が思うほどには期待されていないものです。
宣言しなければ期待されることもありません。



家族や身近な友人であればアドバイスといった形で開発に協力してくれたり、リリースが遅れると尻を叩いてくれたりとメリットもあるので宣言するのもいいでしょう。
それでも実際にモノを作り始めてからの方がいいとは思いますが。。。


ダイエットや禁煙を宣言した人ほど長続きしなかったり、ネットゲーで引退宣言した人ほど舞い戻ってくることが多いのと同じようなものだと考えればいいと思います。

昨日よりほんの少しだけ進んだ。
1週間続けたらずいぶん変わっていた。
気が付いたら目標を達成していた。

はじめのうちは、それくらいの意識でちょうどいいのではないでしょうか。
もちろん最低限のモチベーションは必要ですが、宣言するのはアウトプットに慣れてきてからでいいと思います。

2008年02月06日

召喚呪文メーカー作ったよ

二つ名メーカーにインスパイアされて、ジェネレータ系サービス作りました。


召喚呪文メーカー


召喚命令だけだと「出でよ」とかで終わって味気ないので、さらに攻撃命令めいた文章を追加しています。
普通に攻撃魔法の呪文詠唱メーカーとして作ってもよかったんですが、自分の名前を入れる都合上どうしても召喚は外せなかったという裏事情。
ヴァルキリープロファイルのとかすごくアレなので、そのうち大魔法詠唱メーカー作ってみたい。

ちなみに最初は中二病くさいワードだけで構成していたものの、作ってて面白くないのでネタに走ってしまいました。
モチベーションも維持できたし結果的にはよかった……かな?



[munegonの召喚呪文]
汝、得体の知れない下僕に選ばれし者。
その希少なる千里眼を以って、立ちはだかりしコンビニ店長に
亡びの猫だましをぶちかませ!

かなり意味不明www