Orfeon Blog
読んだ本の要約、感想など。 他にも日々思ったことをつれづれと書き連ねます。
算数力トレーナー
次々と出てくる算数問題を解いて算数力を鍛えるブログパーツです。
「遊び方」
「START」ボタンを押すとゲームを開始します。ゲームを開始すると算数問題が出題されます。出題された問題の回答を下の3つのボタンから選択してクリックしていきます。制限時間内に正答すると次の問題が出題されます。制限時間は画面右上の灰色のバーで表され徐々に短くなるバーが消える前に回答します。出題される問題は全10問で、10問全て正答するとクリアとなります。
問題の難易度は下のLv.から選択できます。難易度はユーザのランク(左上に表示)まで選択できます。ユーザのランクと同じ難易度のゲームをクリアするとランクが上がります(最初はランク0からスタート)。
ユーザのこれまでの成績は左下の「成績」ボタンをクリックすることで確認できます。成績画面ではこれまでの難易度ごとのクリアに要した最短時間と1秒以内に正答できた問題数(Coolの数)を確認できます。また正答時に音を鳴らすかどうかも成績画面の右下のボタンをクリックすることで設定できます。「音ON」が正答時に音を鳴らし、「音OFF」が音を鳴らさない設定になります。
「ブログパーツの貼り付け方」
ブログパーツとして利用されたい方は下のHTMLをコピーしてプラグインエリアやフリーエリアに貼り付けてください。FC2ブログの方であれば「共有プラグイン」から簡単にダウンロードできます。楽天ブログやYahoo!ブログ、はてなDiary、gooブログなどの外部ブログパーツの利用を禁止しているブログサービス以外のメジャーなブログサービスならおおよそ動くかと思います。ブログ以外のホームページなどでも利用できます。
もし上のHTMLを貼り付けても動かなかった場合はこちらのHTMLを貼り付けてみてください。
17
Flashリバーシ
「遊び方」
"黒"、"白"ボタンを押すとゲームが開始します。黒が先行で白が後攻になっています。コンピュータのレベルは0~2まであって、0が簡単、1が普通、2が難しい、となっています。遊びたいレベルの数字のLvボタンを押して"黒"、"白"ボタンを押してゲームを開始すると難易度が切り替わります。Lvボタンを押すだけでは難易度は切り替わらないので要注意です。
上の"成績"ボタンを押すと今までのコンピュータとの対戦成績を見ることができます。記録に残るのは、各レベルの黒と白ごとの、勝ち数、負け数、勝ったときの最大石差、勝率、となっています。右下の"消す"ボタンを押すと記録を消すことができます(一度消すと記録は元に戻らないので要注意です)。この対戦記録はあくまでプレイした人のコンピュータに残る記録なので、ブログを見ている複数の人で記録を共有することはできません。
あと、プレイヤーが石を打てるところが無い場合は、コンピュータが勝手にプレイヤーを飛ばして、続けて打ってきます。逆にコンピュータが打てるところがないときはコンピュータは何もしないのでそのまま打ち続けてください。
「仕様」
プログラムはFlashのActionScript3.0で作っていて、Flash Player9以降でないと動作しません。動かない人はAdobeのサイトからFlash Player最新バージョンにアップグレードできます(もちろん無料です)。
今回のFlash版は前回のJavaScript版に比べると難易度が高くなりました。レベル0では5手先の自分の石数が最大になるように、レベル1は5手先の局面を簡単な評価テーブルを用いて一番有利になるように(前回のJavaScript版のレベル2に相当します)、レベル2では5手先の局面を、開放度、取得可能手数、確定石数、危険手数、を基に一番有利になるように、それぞれ手を打ちます。レベル2はさらに終局11手前から完全読みを行います。このレベル2はちょっと難しくてリバーシ経験者じゃないと楽しめないかもしれませんが、リバーシ上達を目指してたまにでも挑戦していただければ幸いです。
あと、対戦記録はPCのFlashの共有オブジェクトとして記憶されますが、共有オブジェクトのスペースがいっぱいになったり、ユーザが設定で共有オブジェクトへの書き込みを禁止していた場合などは記録はできないこともあります。
「ブログパーツの貼り付け方」
ブログパーツとして利用されたい方は下のHTMLをコピーしてプラグインエリアやフリーエリアに貼り付けてください。FC2ブログの方であれば「共有プラグイン」から簡単にダウンロードできます。「iframe」の利用を禁止している楽天とYahoo!ブログ以外のメジャーなブログサービスならおおよそ動くかと思います。ブログ以外のホームページなどでも利用できます。
もし上のHTMLを貼り付けても動かなかった場合はこちらのHTMLを貼り付けてみてください。
「参考図書」
今回は初めてのFlashプログラミングということと、もう少し強いリバーシプログラムを作ってみたいということで、以下の2図書を参考にしました。
![]() | ActionScript 3.0ゲームプログラミングブック 布留川 英一 毎日コミュニケーションズ 2006-11 売り上げランキング : 77548 Amazonで詳しく見る by G-Tools |
![]() | リバーシのアルゴリズム Seal Software 工学社 2003-06 売り上げランキング : 133421 Amazonで詳しく見る by G-Tools |
10
暗算トレーナーを公開して
時事ネタとかもっといろいろなこと書くつもりだったはずのつれづれ日記が、
自作プログラム関連に侵食されてきたような…
ブログパーツ公開第二弾となった暗算トレーニングですが、オセロと比べるとダウンロード数はだいぶ緩やかなものの、fcブログの共有プラグインからは今現在900件近くダウンロードしていただいてうれしい限りです。
ただ最近はプラグインを公開するユーザが増えてきて競争が激しくなってきました。管理画面トップ下の3つの新着プラグインに表示されるかされないかでダウンロード数がまったく違ってくるので、今後はますます短期勝負になりそうです。
今回は設置したブログを見に来てくれる人のため、というよりは、設置した人が自分のブログで楽しむ(鍛える)ためという目的にかなり絞ったものになりました。
他の暗算フラッシュ系のものに比べて違う点は、たいした違いではないものの以下の2点
(1) ボタン入力式インタフェース
(2) ユーザにレベル導入
ボタン入力式は他のものを使っていてマウスとキーボードを乗り換えるのがめんどくさかったのがあって、まして気軽に触れるブログパーツですからこれは結構重要かなと思っています。
レベル方式ですが、他の暗算フラッシュでは桁数や間隔時間を手入力する形式だったのですが、確かにこっちの方が自分のペースで調整できるため本気で取り組むのであれば適切だと思うのですが、ブログパーツとしては気軽に始められる方がいいかな、と思ったことと、前のオセロの時のように、コメント欄で話のタネになるようにと、簡単な指標にすることで競い合い易くすることを考えました。本人が取り組む際にもレベルだと目標としてもわかり易いかなと。レベルに関しては次のレベルにいかないと次のレベルの問題に取り組めないのですが、そっちの方が次の問題を見たいというモチベーションになるかなあなどと考えました。ちょうどJavaScriptの本を読んでいたらクッキーという便利なものがあって、すぐに実装できそうだから付けてしまおう、という勢いもありましたけど。
因みに作る際に一番悩んだのはこのレベル調整でしょうか。長く使ってもらうには、プレイヤーがやっていて常に上達を実感できるような上達曲線を描く設定をする必要があるのですが、これはかなり難しいです。そもそも暗算自体が線形に上達するものでもないかもしれませんし、そもそも人によって上達の度合いは異なってきますし。あるレベルからは自分でもクリアできなくなるために調整しようが無かったので適当になってしまいました。一流のゲームクリエーターの方も難易度設定はゲームの要といっておられますし、かなり取り組み甲斐のあるテーマだと思います(自分にはちょっと荷が重過ぎますが…)。
ブログ検索で付けてもらった人のブログを見させてもらったところ、友達同士でレベルを競い合うことなんかを期待していたのですが、そういう話題でコメント欄で盛り上がっている様子を見かけることはあまりありませんでした。やっぱりトレーニング形式というとっつきの悪さが原因でしょうか。あとダウンロードしてもらった方のブログを見てみると、現在難易度はレベル20まで用意しているのですが、ソロバン経験者の方は苦も無くクリアしてしまうようでとても驚きました。
作ったあとに後悔したことに、今回は表示形式はdivタグで行っていたのですがifram式にすればよかったということがあります(共有プラグインからのダウンロード後にゲームの内容は変えることはできても表示形式は変えられないので)。これは見栄え的にもテンプレートに依存しないので、結構ユーザの方は頻繁にテンプレートを替える様なので長く置いてもらうには有利だったでしょう。それと今回に限ればiframだとクッキーを他のブログにあるものと共有できるということもあります。クッキーを覚えたてだったので有効ドメインとか全然知らないで公開してしまって後で気がつきました。もっとも、今回のゲームは設置者がやるのがメインなのでレベル情報の流通性はそんなに重要では無いかもしれませんが、自分のレベルが他のところでも使えるとなるとほんのちょびっとレベルに対するモチベーションが上がるかなと思ったり。ちなみにこのクライアント側に情報を保存できるクッキーという仕組みは使い方によってはかなり面白い仕組みが作れそうです。一つのコンテンツで得た情報を他のコンテンツで違った形でも共有できたりすれば流通性を持った情報の可能性など、かなりあやふやなアイデアの状態ですが、いろいろと特性を活かしたものを作っていきたいです。
あとブログパーツとしてのコンテンツは、利便性やゲーム性等も大切ですが、デザインが何よりも一番大切そうです。最近は"クリスマスまでのカウントダウン"が流行っていますが、これとほとんど同じ内容のものでもデザインによってダウンロード数が10倍以上違っていますし。見栄えが最重要となると、表現力からするとJavaScriptは限界がありそうです。自分も早くお金貯めてFlash使えるようになりたいものです…。もっともそれ以前に自分はどうも美的センスは疎い方なのでなかなか苦戦しそうですが(汗
自作プログラム関連に侵食されてきたような…
ブログパーツ公開第二弾となった暗算トレーニングですが、オセロと比べるとダウンロード数はだいぶ緩やかなものの、fcブログの共有プラグインからは今現在900件近くダウンロードしていただいてうれしい限りです。
ただ最近はプラグインを公開するユーザが増えてきて競争が激しくなってきました。管理画面トップ下の3つの新着プラグインに表示されるかされないかでダウンロード数がまったく違ってくるので、今後はますます短期勝負になりそうです。
今回は設置したブログを見に来てくれる人のため、というよりは、設置した人が自分のブログで楽しむ(鍛える)ためという目的にかなり絞ったものになりました。
他の暗算フラッシュ系のものに比べて違う点は、たいした違いではないものの以下の2点
(1) ボタン入力式インタフェース
(2) ユーザにレベル導入
ボタン入力式は他のものを使っていてマウスとキーボードを乗り換えるのがめんどくさかったのがあって、まして気軽に触れるブログパーツですからこれは結構重要かなと思っています。
レベル方式ですが、他の暗算フラッシュでは桁数や間隔時間を手入力する形式だったのですが、確かにこっちの方が自分のペースで調整できるため本気で取り組むのであれば適切だと思うのですが、ブログパーツとしては気軽に始められる方がいいかな、と思ったことと、前のオセロの時のように、コメント欄で話のタネになるようにと、簡単な指標にすることで競い合い易くすることを考えました。本人が取り組む際にもレベルだと目標としてもわかり易いかなと。レベルに関しては次のレベルにいかないと次のレベルの問題に取り組めないのですが、そっちの方が次の問題を見たいというモチベーションになるかなあなどと考えました。ちょうどJavaScriptの本を読んでいたらクッキーという便利なものがあって、すぐに実装できそうだから付けてしまおう、という勢いもありましたけど。
因みに作る際に一番悩んだのはこのレベル調整でしょうか。長く使ってもらうには、プレイヤーがやっていて常に上達を実感できるような上達曲線を描く設定をする必要があるのですが、これはかなり難しいです。そもそも暗算自体が線形に上達するものでもないかもしれませんし、そもそも人によって上達の度合いは異なってきますし。あるレベルからは自分でもクリアできなくなるために調整しようが無かったので適当になってしまいました。一流のゲームクリエーターの方も難易度設定はゲームの要といっておられますし、かなり取り組み甲斐のあるテーマだと思います(自分にはちょっと荷が重過ぎますが…)。
ブログ検索で付けてもらった人のブログを見させてもらったところ、友達同士でレベルを競い合うことなんかを期待していたのですが、そういう話題でコメント欄で盛り上がっている様子を見かけることはあまりありませんでした。やっぱりトレーニング形式というとっつきの悪さが原因でしょうか。あとダウンロードしてもらった方のブログを見てみると、現在難易度はレベル20まで用意しているのですが、ソロバン経験者の方は苦も無くクリアしてしまうようでとても驚きました。
作ったあとに後悔したことに、今回は表示形式はdivタグで行っていたのですがifram式にすればよかったということがあります(共有プラグインからのダウンロード後にゲームの内容は変えることはできても表示形式は変えられないので)。これは見栄え的にもテンプレートに依存しないので、結構ユーザの方は頻繁にテンプレートを替える様なので長く置いてもらうには有利だったでしょう。それと今回に限ればiframだとクッキーを他のブログにあるものと共有できるということもあります。クッキーを覚えたてだったので有効ドメインとか全然知らないで公開してしまって後で気がつきました。もっとも、今回のゲームは設置者がやるのがメインなのでレベル情報の流通性はそんなに重要では無いかもしれませんが、自分のレベルが他のところでも使えるとなるとほんのちょびっとレベルに対するモチベーションが上がるかなと思ったり。ちなみにこのクライアント側に情報を保存できるクッキーという仕組みは使い方によってはかなり面白い仕組みが作れそうです。一つのコンテンツで得た情報を他のコンテンツで違った形でも共有できたりすれば流通性を持った情報の可能性など、かなりあやふやなアイデアの状態ですが、いろいろと特性を活かしたものを作っていきたいです。
あとブログパーツとしてのコンテンツは、利便性やゲーム性等も大切ですが、デザインが何よりも一番大切そうです。最近は"クリスマスまでのカウントダウン"が流行っていますが、これとほとんど同じ内容のものでもデザインによってダウンロード数が10倍以上違っていますし。見栄えが最重要となると、表現力からするとJavaScriptは限界がありそうです。自分も早くお金貯めてFlash使えるようになりたいものです…。もっともそれ以前に自分はどうも美的センスは疎い方なのでなかなか苦戦しそうですが(汗
14
暗算トレーニング(JavaScript)
脳トレブームにちょっと乗って暗算ゲームを作ってみました。たまたまテレビで暗算大会があって、画面に次々と数字を出てくる装置を見て、JavaScriptで作れるかな~と思ったのがきっかけです。 でもこういうのはFlashで作ったほうが見栄えが良くなりそうなので、今度Flash作成ソフトを買うことができたら勉強がてらにそっちでも作ってみようかと思います。
実際、ネット上で見かける暗算物はFlashが多かったのですが(しかも有料ソフトだったり)、基本的には入力をキーボードで打ち込む形式で、マウスとキーボードの手の移動がめんどくさいのでブログパーツということもあって、気軽にマウスでボタン入力できるようにしました。
使い方ですが、"START"ボタンを押して画面に次々と出てくる数字を足し合わせたものを入力して"Check"ボタンで確かめます。 答えの入力は簡易電卓の要領でマウスで数字をクリックして入力してください。"C"ボタンは入力クリアです。 最初はランク0からスタートしていって徐々に難しい問題を解いていきます。 現在の自分のランクの問題を3つ連続でクリアすると次のランクにレベルアップします。一つクリアすると自動的に次の問題に移るので途中で"START"ボタンは押さないでください(押すとまた3つの最初からになってしまいます)。クリアすると出てくる上の"+"マークは3つ中何個クリアしたかを示しています。
"START"ボタンの隣のフォームでは自分のランクまでの問題レベルを自由に選べます。 自分のランクはクッキーに保存され、パソコンの電源を切っても残ります。 このランクはあくまでプレーした本人のものなので、同じブログにあるゲームでも人によってランクは異なります。 (クッキーを消すか60日間ゲームをやらないとこのランクは0に戻ってしまいます)
また、コンピュータの計算負荷が大きいとテンポ良く表示されない時もありますのでご理解の程よろしくお願いします。
ちょっと回りくどいシステムになっていますが、なるべくやればやるほど上達できるようにといろいろ考えてみた結果こうなりました。自分でデバックしながらやってみた主観なのですが毎日やり続ければ結構暗算が速くなりそうです。 レベルはとりあえず10まで用意しましたが、随時不定期に追加していく予定です。(といっても作者もまだまだそこまで到達できそうにありません…)。入力ボタンに引き算があるように将来的には足し算だけでなく引き算もできるようにしたいと思います。
ちょっとした工夫があればいろいろとこの手の脳トレ系は面白いものが作れそうなので、DSのゲームとかを参考にいろいろ作っていきたいと思います(修論が順調にいけばの話ですが…)。
ブログパーツとして利用されたい方は下のソースを所定の場所に貼り付けてください。
「iframe用」
「divタグ用」
上のでうまく表示されなかったらこちらを使ってください。
逆に、こちらはfc2ブログの共有プラグインで公開している方のソースなので、
fc2ブログの共有プラグインでうまく表示されなかった人は上のものを貼り付けてみてください。
開発後記
09
リバーシを公開してみて
つれづれ日記と銘打ちながら、ずっとこのカテゴリを放置し続けていたものの、さすがにそろそろ何か書かねばということで、思いの他多くのダウンロードをしていただいてうれしい限りだったオセロについて今日は遅まきながらもその感想などを。
プラグインを公開した後、プラグインを公開するのが初めてといこともあって利用してくれた人の反応がとても気になったので、ブログ検索などで見てユーザの方にどう使われているのかいろいろと覗かせてもらったりしました。オセロゲームをプラグインとして設置する理由はいろいろとあると思いますが、基本的には、自分が楽しむため、自分のブログを見に来てくれる人を楽しませるため、の2つだと思うのですが、自分が楽しむため、の観点から使ってくれたユーザの方の反応を見てみると、初期のオセロプラグインは難易度の調整ができなかったため、設置したものの難しくて悔しい。とりあえず勝つまでは付けとくけど勝ったら外す、というケースが結構見受けられました。自分がアップする以前にもfc2のオセロのプラグインがあって、手前味噌ながらもそれよりは強いものを作れたと思うのですが、自分が公開して以降も以前のオセロのプラグインの方をダウンロードしている方もおられたようで、上手く表示されないなどデザインの関係で採用されなかったことも考えられますが、ちょこっとやって気持ちよく勝つ、という気晴らし的な使われ方の需要も結構多いのかもしれません。自分もたまにレベル0で何個差つけて勝てるかやったりしてます(ちなみに最高は64差!)。
自分のブログの閲覧者に楽しんでもらうという観点からの使われ方を見てみると、多かったのが、友達同士で誰が最初に勝ったか、どれだけ差をつけて勝ったか、などでコメント欄などで話が盛り上がっているケースでしょうか。勝った証拠のスナップショットまで掲載されているものも結構ありました。(中にはコンピュータが全部石を取られて負けるという開発者としてはかなり恥ずかしい負け方もありました(汗 )。こういう自分の作ったプラグインで話が盛り上がっているのを見るのはうれしいものでまさに開発者冥利。そういう使われ方としては難易度は結構ちょうど良い感じだったかもしれません。
友人同士でコミュニケーションして楽しむというのはゲームとしては一番楽しい部類に入るものでしょう。やっぱりオセロも一人でやるよりは他の人間や特に友達と対戦する時の方が真剣になれて楽しいでしょうし。Yahoo!なんかではネットでオセロで対戦するゲームもあるみたいです。ただYahoo!とかだとエントリーするのにログインしたりするのが面倒で、オセロやるためにわざわざログインしてやろうと思う人は限られてくるかもしれませんが、同じネット対戦オセロでもブログパーツとしての入り口があって、チャットとかとおんなじノリで参加できると気軽にやってみようと思う人も結構いるのでは?などと考えています(チャットと違って2人対戦なのでマッチングの手間はかかりますが)。
もっとも、本気でやろうとするとサーバサイドでもいろいろやる必要があったり、そもそも参加者が多くないと対戦が成り立たない等の問題があるので、とりあえずはゲーム単体でも友達同士での会話を誘えるようなものを作っていけたらなあ、と思います。
最後に、プラグインの下のリンクですが本来は見栄え的にも邪魔になるため付けないほうがユーザの方達のためなのですが、fc2ブログ以外では共有プラグインのような機能がなく、他に存在を知ってもらう機会も少ないということもあって、できるだけ多くの人に使ってもらいたいという想いからつけさせていただいております。ただ"~つれづれ日記~"はちょっと助長だったかなと反省しておりまして、次からは"by Orfeon"のみの表示にさせていただきたいと思います。
プラグインを公開した後、プラグインを公開するのが初めてといこともあって利用してくれた人の反応がとても気になったので、ブログ検索などで見てユーザの方にどう使われているのかいろいろと覗かせてもらったりしました。オセロゲームをプラグインとして設置する理由はいろいろとあると思いますが、基本的には、自分が楽しむため、自分のブログを見に来てくれる人を楽しませるため、の2つだと思うのですが、自分が楽しむため、の観点から使ってくれたユーザの方の反応を見てみると、初期のオセロプラグインは難易度の調整ができなかったため、設置したものの難しくて悔しい。とりあえず勝つまでは付けとくけど勝ったら外す、というケースが結構見受けられました。自分がアップする以前にもfc2のオセロのプラグインがあって、手前味噌ながらもそれよりは強いものを作れたと思うのですが、自分が公開して以降も以前のオセロのプラグインの方をダウンロードしている方もおられたようで、上手く表示されないなどデザインの関係で採用されなかったことも考えられますが、ちょこっとやって気持ちよく勝つ、という気晴らし的な使われ方の需要も結構多いのかもしれません。自分もたまにレベル0で何個差つけて勝てるかやったりしてます(ちなみに最高は64差!)。
自分のブログの閲覧者に楽しんでもらうという観点からの使われ方を見てみると、多かったのが、友達同士で誰が最初に勝ったか、どれだけ差をつけて勝ったか、などでコメント欄などで話が盛り上がっているケースでしょうか。勝った証拠のスナップショットまで掲載されているものも結構ありました。(中にはコンピュータが全部石を取られて負けるという開発者としてはかなり恥ずかしい負け方もありました(汗 )。こういう自分の作ったプラグインで話が盛り上がっているのを見るのはうれしいものでまさに開発者冥利。そういう使われ方としては難易度は結構ちょうど良い感じだったかもしれません。
友人同士でコミュニケーションして楽しむというのはゲームとしては一番楽しい部類に入るものでしょう。やっぱりオセロも一人でやるよりは他の人間や特に友達と対戦する時の方が真剣になれて楽しいでしょうし。Yahoo!なんかではネットでオセロで対戦するゲームもあるみたいです。ただYahoo!とかだとエントリーするのにログインしたりするのが面倒で、オセロやるためにわざわざログインしてやろうと思う人は限られてくるかもしれませんが、同じネット対戦オセロでもブログパーツとしての入り口があって、チャットとかとおんなじノリで参加できると気軽にやってみようと思う人も結構いるのでは?などと考えています(チャットと違って2人対戦なのでマッチングの手間はかかりますが)。
もっとも、本気でやろうとするとサーバサイドでもいろいろやる必要があったり、そもそも参加者が多くないと対戦が成り立たない等の問題があるので、とりあえずはゲーム単体でも友達同士での会話を誘えるようなものを作っていけたらなあ、と思います。
最後に、プラグインの下のリンクですが本来は見栄え的にも邪魔になるため付けないほうがユーザの方達のためなのですが、fc2ブログ以外では共有プラグインのような機能がなく、他に存在を知ってもらう機会も少ないということもあって、できるだけ多くの人に使ってもらいたいという想いからつけさせていただいております。ただ"~つれづれ日記~"はちょっと助長だったかなと反省しておりまして、次からは"by Orfeon"のみの表示にさせていただきたいと思います。
30